《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 设计应用 > 全数字QAM调制射频输出的FPGA实现
全数字QAM调制射频输出的FPGA实现
韩庆喜,刘志军,张淑慧,王小群
(山东大学 信息科学与工程学院,山东 济南250100)
摘要: 一种采用AD9739与FPGA相结合、在FPGA上实现全数字QAM射频一种采用AD9739与FPGA相结合、在FPGA上实现全数字QAM射频调制的方法。阐述了柰奎斯特滤波器、插值滤波器、多相滤波器、多相数字频率合成器的实现方法,并采用多相滤波技术和OSERDES技术解决了射频信号高采样率问题。介绍了AD9739的接口设计,并给出调制器的射频输出信号的实测结果,性能指标符合国家制定的DVB_C标准。
Abstract:
Key words :

摘  要: 一种采用AD9739FPGA相结合、在FPGA上实现全数字QAM射频调制的方法。阐述了柰奎斯特滤波器、插值滤波器、多相滤波器、多相数字频率合成器的实现方法,并采用多相滤波技术和OSERDES技术解决了射频信号高采样率问题。介绍了AD9739的接口设计,并给出调制器的射频输出信号的实测结果,性能指标符合国家制定的DVB_C标准。
关键词: Nyquist滤波器;插值滤波;多相滤波;多相载波;OSERDES

    数字电视要求载波的频率范围为5 MHz~860 MHz,但由于受到FPGA内部资源运算速度的限制,一般只能实现中频调制[1]。传统的射频调制[2]需要在中频调制之后加上变频器,但这样增加了设计的复杂度及成本。本文采用多相滤波器、多相数字频率合成器及OSERDES技术,在FPGA内部通过对基带信号进行288倍插值运算,采用ADI 公司最新推出的AD9739,实现了全数字QAM射频调制。
1 系统构架
    DVB-C的符号率一般为3 Mb/s~7 Mb/s,该TS流先经过信道编码,星图映射后生成I、Q两路,经过柰奎斯特滤波器、一级半带滤波、9倍CIC插值滤波生成中频信号,其速率为108 Mb/s~252 Mb/s。此时I、Q两路数据分别经过相同的多相滤波器,生成8路数据流。该8路数据流之间有连续的相位,DDS的输出也分为8路,每路同样有连续的相位,正弦信号的8路数据分别与I路的8路信号相乘,余弦信号的8路数据分别与Q路的8路信号相乘,然后再分别相加,生成的8路信号送给2路OSERDES,每路OSERDES采用4和1(DDR模式),这样产生2路信号再按一定顺序传输给AD9739。此时的DA的采样率高达1 980 Mb/s,从而实现射频调制,全数字QAM射频调制原理如图1。


2 射频调制
2.1 柰奎斯特滤波器

    在现代无线通信中,由于基带信号的频谱范围比较宽,为了有效利用信道,在信号传出去之前,都要对信号进行频谱压缩,使其在消除码间干扰和达到最佳检测的前提下,大大提高频带的利用率[3]。一般使用柰奎斯特滤波器完成这一变化,参数如下:滚降系数为0.15、WP=0.5、Wc=0.575、Ap=0.01 dB、As=80 dB、95个抽头系数。借助Matlab工具下Fdatool实现上述滤波器,其频率响应如图2。滤波器采用Xilinx ISE内部的IP核,输入数据宽度为5 bit,抽头系数进行14 bit量化,输出数据宽为18 bit,滤波器类型选择2倍内插。


2.2 半带滤波
    要实现数字信号的升采样,一般采用半带滤波与CIC插值滤波联合的方式。为实现不同的升采样可以使用不同的级联方式,常规的做法是2级半带然后加CIC插值滤波,但这样占用的资源比较多,为此提出了一级半带加9倍CIC插值的模式。半带滤波器的设计参数:WP=0.25、Ws=0.75、Ap=0.01 dB、As=80 dB,对系数14 bit量化,在FPGA中实现其频响如图3 所示。


2.3 CIC插值滤波
    CIC插值滤波调用Xilinx ISE的IP核, 采用4级级联积分梳妆滤波器,进行9倍插值,其频响如图4所示。其带外抑制比为50 dB,之前已经做了4倍插值,所以CIC的通带为(1/4×1/9=0.02778),其频谱倾斜小于 DVB-C标准中允许的带内波动小于0.4 dB。因此不必进行CIC滤波补偿。


2.4 多相滤波器[4]
    经过CIC插值后的数据速率为108 Mb/s~252 Mb/s,如果直接进行8倍插值,需要的时钟必须是数据速率的8倍,而Virtex5系列的FPGA,DSP最高运行到550 Mb/s,无法直接实现,采用多相滤波器及OSERDES可巧妙地解决这一问题。传统的8倍插值滤波,是将每2个原始数据中间插入7个0,这样数据的速率就变成原始数据的8倍,然后再进行低通滤波。基于这种算法,将原始抽头系数分成8组,每一组单独成为一个子滤波器,原始数据经这8个子滤波器输出,生成的8路信号经OSERDES并串转化为原始数据速率的8倍,从而实现8倍插值。由于多相滤波器算法的限制,要进行8倍插值,所需的抽头系数必须是8的整数倍,且之前已进行了36倍插值,为节省资源设计了24个抽头系数的多相滤波器,其参数为:Wp=0.028,Ws=0.22,Ap=0.04 dB,As=60dB,其频谱特性如图5。


3 多相直接数字频率合成器
    星图映射之后的数据经基带成型、升采样、多相滤波器之后分成具有连续相位的8路数据,因此与之相乘的载波也应有8路信号。这样,需要设计多相直接数字频率合成器,其原理与普通的DDS没有太大的差异,不同之处就是根据频率控制字生成8路具有特定相位差的信号作为ROM查找表的地址,从而输出8路具有相位连续的数字载波信号,其原理如图6。

    

    在具体的工程应用中,地址位数为11 bit,输出信号为11 bit,为了抑制因相位量化造成的杂散[5],将11 bit数据扩展成18 bit,其中低7位是用的随机数,实际参加运算的18 bit,这样既保证了精度,又节省了资源。
4 输出并串转换器OSERDES[6]
    Virtex-5 OSERDES是专用的并串转换器,具有专门用来实现高速源同步接口的特定时钟控制和逻辑资源,使用CLK和CLKDIV两个时钟进行数据速率转换。CLK是高速串行时钟,CLKDIV是分频并行时钟,CLK和CLKDIV由PLL保证相位对齐。图7是OSERDES的结构框图。


    本设计中OSERDES采用DDR模式,由于后端用到AD9739,所以用到2个OSERDES。8路升采样的数据与8路DDS乘加后生成的8路数据仍然保持着原有的相位关系,前4路数据进入第一个OSERDES,后4路数据进入第二个OSERDES。CLK频率为495 MHz,CLKDIV频率为247.5 Hz,这样每一个OSERDES输出的串行数据速率为990 MHz,然后这2路990 MHz的数据进入AD9739,其内部再进行一次并串转化生成1 980 MHz的数据。
5 FPGA与AD9739的接口设计及系统硬件测试
    AD9739[7]是ADI 公司推出的一款高性能、高频率、14位DAC,取样速率高达2500 MS/s,宽带信号高达1 GHz,AD9739包括SPI接口,双端LVDS接口。针对这种高带宽的数据接口,设计了如图8所示的FPGA与DAC的数据接口。


    AD9739包括2个14 bit复用低压差分信号(LVDS)输入端口,该器件接受1/4 DAC刷新速率的时钟,在时钟上升沿和下降沿均触发转换。输入数据速率为1/2时钟速率。本设计中时钟信号DACLKP/DACLKN为1.98 GHz,由ADF4350时钟芯片提供,其中DCOP/DCON输出作为FPGA的系统时钟,其频率为495 MHz。为保证FPGA生成的数据传输到AD9739接口端与DCIP/DCIN时钟相位对齐, DCIP/DCIN时钟产生方式同数据产生的方式相同,均由OSERDES产生。

    系统硬件测试在XC5VSX35T上进行,测试结果表明,在载波为860 MHz时,符号率为6.875 MS/s,MER值为39.7,纠错后误码率为1.0E-9。符合国家制定的DVB_C标准。
    本文详细介绍了各种滤波器设计方法,应用Virtex5系列高性能DSP模块、OSERDES模块、多相滤波技术解决了在FPGA内部实现高升采样问题;采用高达2.5 GS/s数据分辨率的AD9739,实现了QAM调制5 MHz~860 MHz内任意频率的输出。与传统的射频调制相比,免去对片外混频器和低通滤波器的需求,具有更佳的性能、更低的成本和更好的灵活性,可广泛用于电缆调制解调器系统。其中利用的多相滤波器技术、多相数字频率合成器技术、OSERDES技术对于实现数字信号高升采样具有一定的指导意义。
参考文献
[1] 陈守金,于鸿洋,葛锦环.新型DVB_C信道编码、中频调制的全数字实现[J].电子技术应用,2006(5).
[2] 赵敏笑,赵云,陈文正.数字有线电视前段调制器的设计与实现[J].科技通报,2007(3).
[3] 姜宇柏,黄志强.通信收发机的verilog实现与仿真[M]. 北京:机械工业出版社,2006.
[4] 田耘,徐文波,张延伟.无线通信FPGA设计[M].北京:电子工业出版社,2008.
[5] 姜宇柏,游恩晴.软件无线电原理与工程实现[M].北京:机械工业出版社,2006.
[6] ug190:Virtex-5 FPGA Data Sheet[EB/OL].http://www.xilinx.com.
[7] AD9739 Datasheet.Analog Devices,2009.http://www.analog.com.

此内容为AET网站原创,未经授权禁止转载。