基于FPGA的宽带数字接收机变带宽数字下变频器
2 窄带滤波器组模块
窄带滤波器组模块基于传统数字下变频结构,其内部框图如图3所示。为了实现滤波器组处理带宽可变,HB及FIR滤波器的滤波器系数均可变,并且CIC滤波器的抽取因子可以在2~32范围内灵活选择,FIR滤波器输出后也可选择直接输出至下级或者2倍抽取后输出至下级。这样窄带滤波器组总的抽取因子可在4~128范围内变化,即可根据信号处理带宽使输出数据率在25 MS/s~0.781 25 MS/s之间灵活改变,实现窄带VB-DDC的功能。
3 多相滤波结构的宽带滤波器
在本设计中,当信号带宽大于1 MHz时,由宽带滤波器处理。AD采样率100 MS/s时,设计宽带滤波器:通带0.5 MHz,阻带起始频率1.8 MHz,通带波纹0.1 dB,阻带抑制比为84 dB,调用MATLAB中函数firpm设计滤波器,计算所需的滤波器阶数为266。
为了实现266阶的FIR滤波器,采用基于多相滤波的乘法器时分复用结构。多相因子取38,抽取因子取7。
数据排序分组原理如图4所示,其中FIFO1~FIFO38的38个独立的存储器用38个深度为7、位宽为18的FIFO实现。FIFO的个数由多相因子决定,为了实现处理带宽可变,输出信号数据率可变,抽取因子可在1~7之间选择,FIFO的深度由抽取因子决定,可在1~7之间配置。由L1~L38输出的数据应乘以对应的滤波器系数,然后将这38个乘积累加,则可得到多相滤波的输出,如图5所示。
MATLAB产生266阶原型低通滤波器系数,通过参数配置模块在DDC开始工作前存入RAM中,在参数配置模块中有专门的RAM写操作控制逻辑。由于抽取因子可在1~7之间灵活配置,则滤波器总的阶数可在138~738,即38~266之间变化,所以RAM中预存的滤波器系数应根据滤波器实际阶数灵活配置,多余的RAM存储空间置零。
评论