数字电视要求载波的频率范围为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 多相滤波器
经过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
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的接口设计及系统硬件测试
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。
AD9739是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技术对于实现数字信号高升采样具有一定的指导意义。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。