电子工程专辑
UBM China

用FPGA中的专用DSP模块实现音频采样率的转换

上网日期: 2008年05月08日 ?? 我来评论 字号:放大 | 缩小 分享到:sina weibo tencent weibo tencent weibo


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友

关键字:音频算法? 采样率转换? 滤波器?

如今,即使低成本FPGA也能提供远远大于DSP的计算能力。目前的FPGA包含专用乘法器甚至DSP乘法/累加(MAC)模块,能以550MHz以上的时钟速度处理信号。

不过,直到现在,音频信号处理中还很少需要用到这些功能。串行实现千赫级音频算法使用的资源与数百兆赫级信号处理所需的完全相同。

因此,像PLD和FPGA这类可编程逻辑元件很少用来处理低频信号。毕竟,与基于传统DSP的实现相比,用硬件并行处理数??算无益可言;对于如此低的采样率,大多数串行DSP实现都是绰绰有余。其实,音频应用所含乘法运算之多曾使其只能使用很大的FPGA实现。因此,用DSP实现低采样率音频应用曾经比使用大型FPGA更有效――成本较低,而且有成熟的软件支持。

Synplicity公司最近推出的Synplify DSP综合工具可以将具有大量乘法运算和低采样率的算法有效地映射到FPGA中的专用DSP模块上。该工具基于MathWorks公司推出的十分普及的MATLAB和Simulink工具。

算法先用专用模块集或专有的“M”脚本语言描述定义,然后转换成RTL硬件描述语言。该模块集允许单速率和多速率实现。它不仅能生成VHDL和Verilog代码,还可以处理定点量化、流水线和环路展开这类任务,并且能连接到Simulink开发环境中的模块集进行仿真(见图1)。

图1:在MATLAB/Simulink中实现、量化并验证模型。Synplify DSP工具可以将模型转换成RTL代码,并针对空间或速度对这些代码进行优化。
图1:在MATLAB/Simulink中实现、量化并验证模型。Synplify DSP工具可以将模型转换成RTL代码,并针对空间或速度对这些代码进行优化。

应用示例:采样率转换

下面以音频采样率转换器作为实例加以说明。这种转换器可以将信号从一种采样率转换成另一种采样率,而对信号的影响极小。处理具有不同采样率的信号时需要用到这种转换器。

例如,光盘的采样率是44.1kHz,而数字音频磁带的采样率通常是48kHz。由于存在数据格式转换,用新采样率播放源数据就不够了。以数字音频磁带使用的采样率播放光盘资料会引起失真。因此,必须对采样率加以转换。

处理音频信号时使用的采样频率有多种,常见的有44.1kHz、48kHz、96kHz和192kHz。转换过程必须慎重,务必保持0-20kHz可闻频率信号的完整性。应保持信号所含信息的变化最小,以免音质下降(图2)。

图2:用Synplify DSP模块集和Simulink FDA工具提供的模块实现采样率转换器。用Simulink模块集元件进行验证。
图2:用Synplify DSP模块集和Simulink FDA工具提供的模块实现采样率转换器。用Simulink模块集元件进行验证。


1???2?下一页?最后一页





我来评论 - 用FPGA中的专用DSP模块实现音频采样率的转换
评论:
*? 您还能输入[0]字
分享到: 新浪微博 qq空间
验证码:
????????????????
?

关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”

访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码

?

5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。

?
?
有问题请反馈
推荐到论坛,赢取4积分X