多速率数字信号处理
许多系统都希望使用高速模数转换器(ADC)以速率fs(每秒百万次采样,或称MSPS)来进行过采样。该速率超过奈奎斯特定义的最低采样率,或两倍信号带宽fb。举例来说,用于长期演进(LTE)无线通信的数字接收器的模拟信号采样率为122.88MSPS,而基带采样率则可低至7.68MSPS。过采样可将采样过程中固有的量化噪声均匀地分散在更宽的带宽上,从而降低目标信号带宽上的噪声功率(见图1)。随后通过数字滤波器对带外噪声进行衰减,产生了比临界采样信号更优的信噪比。
一旦信号被ADC完成过采样并捕获到FPGA中,就进入数字域。从此刻起直至提取信号信息内容之前,应尽量降低采样率。降低数字信号的采样率被称为抽取,这样做的好处是能够降低FPGA资源占用、计算率及功耗,并且有助于简化设计的时序收敛。然而,仅采用抽取会使量化噪声混入目标信号中,劣化信噪比,因此无法体现出过采样带来的优势。为了找到能够体现过采样的处理优势的有效办法,让我们首先来了解一下抽取的基本原理。
抽取原理
图2和图3显示了无预滤波的离散时间抽取信号的输入频谱和输出频谱之间的关系图。
请注意抽取会使原始频谱经D倍抽取后的频谱复制产生混叠效应,原始频谱会按D倍展开,并每个采样按2π弧度的间隔移相。除非抽取器前插入一个低通滤波器,用来衰减任何超出π/D(弧度/采样)的频谱内容,否则会导致混叠,进而造成无法修复的失真。
为了保持过采样带来的信噪比优势,必须将抽取与数字滤波相结合以衰减带外噪声,即所谓的抽取滤波器。
多相滤波器
虽然将滤波器和抽取器按照图4所示进行简单串行级联在功能上是正确的,但还有一种更高效的基于多相分解的抽取滤波器拓扑。
多相抽取器由D子滤波器Hd(z-1)组成,且每个子滤波器均包含系数总集的一个子集(见图5)。与简单串行级联的滤波器和抽取器相比,多相抽取器是一种并行处理器,其优势在于每个子滤波器都能以较低的采样率运行,从而简化了设计的时序收敛。
对于一个传统的4倍速多相抽取器来说,抽取操作先把高速输入的采样顺序分配给各个子滤波器,随后通常由换向器将阶次不断增大的延迟组合在一起,如图6所示。这里假定来自ADC的输入采样可顺序到达多相抽取器的输入端。
此外,还可以用串-并转换器将输入采样按长度D分组串联起来,然后以较低的速率并以模块的方式将其提交至多相结构输入端(见图7)。这种原理虽然在功能上相当于将延迟和抽取器相结合,但由于采用了专用的串-并转换器,因此可以大幅提高Virtex-6和Spartan-6 FPGA中多相滤波器的性能。
借助ISERDES、DSP48 Slice
赛灵思Virtex-6和Spartan-6 FPGA在每个I/O模块中内置了专用的ISERDES串-并转换器。这种ISERDES可以避免在FPGA架构中构建解串器时增加时序复杂性问题。ISERDES专为高速源同步应用设计,能够通过连接来自高速ADC的输入采样以支持超过1Gsps的采样率,从而实现一种高效的多相取样器。否则采用基于FPGA架构的解串器实现的抽取滤波器将无法胜任如此高的数据速率。
此外,Virtex-6和Spartan-6 FPGA内置的DSP48E1/A1 Slice专用硬件专门针对高性能数字信号处理进行了优化,不仅能够避免在FPGA架构中实现数字信号处理功能时增加时序复杂性,而且还非常节能。DSP48 Slice是多相子滤波器的理想构建块。
最佳设计往往采用DSP48 Slice来接近其最高性能速率(DSP48E1最高频率为600MHz,速度等级为1;DSP48A1最高频率为390MHz,速度等级为4)。举例来说,Virtex-6中用于1GSPS ADC的第一个抽取级可能会使用一个2倍速多相取样器,其中每个子滤波器以500MSPS的速率运行(见图8)。
同样1GSPS ADC可以通过Spartan-6中的4倍速多相取样器来处理,每个子滤波器以250MSPS的速率运行(见图9)。
更快的ADC能够通过利用每个子滤波器中更高的并行处理能力和更慢的吞吐能力实现更快的抽取率。赛灵思的FIR Compiler IP能够协助设计人员对多相子滤波器进行最佳权衡取舍,可提供适用于不同硬件架构的按钮式操作实现,比如可以以时分多路复用方式让DSP48 Slice超频处理多项系数。
多相内插器
有的时候需要提高采样率,通常称为内插。举例来说,电缆调制解调器一般会采用基于FPGA的数字上变频器将基带数据内插到更高的采样率,以驱动高速数模转换器(DAC)。其原理在于,DAC采样率越高,DAC输出端频谱图像之间的频域分离度越高。这样可以简化DAC后的模拟滤波工作,从而提升信噪比。
与抽取的情况一样,基于多相结构的内插滤波器与简单串行级联的内插器和滤波器相比,具有多种优势。这是因为每个子滤波器都可在较低的计算速率下工作,简化了时序收敛。当与每个Virtex-6或Spartan-6 I/O模块中的专用并-串转换器(OSERDES)相结合时,就可以构建出高性能内插滤波器,且FPGA架构占用最小。图10显示了在Spartan-6中驱动1GSPS DAC的4倍速多相内插器。