Xilinx FPGA 通过不断地将集成度低、复杂且昂贵的ASSP芯片功能组合在一起,来满足客户对于集成度的需求。利用像 DSP48E 和 block RAM这样用来 实现复杂的滤波功能的芯片特性。ASRC作为一种ASSP芯片实现的功能,可以被集成到 Xilinx FPGA 中。
同样,免费提供的Xilinx 应用指南和参考设计,同样可以满足客户对集成复杂算法的需求。ASRC 参考设计正确地处理了同步采样率转换和大多数音/视频产品所需要的更复杂的ASRC。
许多ASSP芯片和FPGA IP供应商提供较简单的“仅使用同步的”方法,每条音频通道的资源利用率较小;但是,当应用于异步应用时,这些方法会产生下面这些问题:
延迟的积累导致输入到输出延迟的变化
音频中会产生噪声,例如漏采样或重复采样两种情况都表现出不希望出现的失真。
理解采样率转换
在深入了解数字采样率转换理论之前,先来看一看音/视频工程师正在试图解决的基本问题。在少量的应用中,可以使用速率固定的同步转换,例如使用同样的时钟源,或由输入时钟产生的输出时钟来将 48kHz 的输入转换为 44.1kHz的输出。但是,更可能出现的情况是异步转换,输入和输出时钟是完全独立的,例如在两块电路板之间的音频通信。不同的时钟振荡器可以有相同的标称频率,但存在着百万分之几的差别。 Xilinx ASRC 参考设计对于具有独立输入和输出时钟的异步应用,提供了两项重要的而且困难的设计功能:
自动准确地监视输入到输出的采样率之比和采样率的变化
在线动态调节滤波器函数(滤波器系数),从而实现性能最大化
使用FPGA来支持数字音频ASRC,意味着能够极大地降低系统中每个SDI 接口的成本,并且,在很多系统中,存在许多通道。
Xilinx ASRC IP具有很高的性能,其最差情况下的输入到输出信噪比为?125dB。它还能支持多个音频输入频率到多个音频输出频率的转换。采样率转换算法能够在线动态进行调节,以保持最高性能,这样,设计人员就无需特别关注输入和输出时钟。可以使用运行在如图1所示的 Xilinx ML571 串行数字视频演示板上的 IP 来验证所有这些功能。而且,这些广泛的功能和高性能的 ASRC IP 都是免费的。
图1 ML571板和帧同步演示板使用ASRC来匹配输出数字音频采样率和输出数字视频采样率