基于FPGA的DVB-T COFDM调制模块的设计
2010-08-10吴国铖严云祥
吴国铖,郭 庆,严云祥
(1.桂林电子科技大学 电子工程学院,广西 桂林 541004;2.南京邮电大学 通信与信息工程学院,江苏 南京 210003)
1 引言
OFDM(正交频分复用)是多载波传输方案的实现方式之一[1]。COFDM是由信道编码和OFDM结合起来的一种数字调制方式,提供了强大的编码纠错能力,在数字音视频广播和高速无线局域网等多个领域中得到广泛应用。欧洲广播机构为DVB-T(地面数字视频广播标准)选择了COFDM为调制方式。
本文以DVB-T标准为背景,选用FPGA为硬件平台研究并仿真了COFDM各编码调制模块。
2 FPGA实现OFDM的基本思想
OFDM是一种对多载波调制技术改进后的传输方案。在传统频分复用系统的基础上,其基本思想是将高速数据流经串并转换,分配到给定频域内的若干正交子信道上,各子信道载波之间虽有重叠,但子载波频率是互相正交的,每个载波频谱最大值都和相邻载波的零点重叠。因此OFDM的信道利用率高于传统的频分复用系统。同时使信道衰落引起的突发误码分散到不相关的子信道上,变为随机误码,有效地减少了码间干扰。
实现OFDM调制需要使用离散傅立叶反变换(IDFT),在OFDM系统的实际应用中,可以采用方便快捷的IFFT来实现调制模块。
对于DVB-T的核心模块FFT计算,随着应用需求的增加,算法复杂度也提高了[1-2]。系统需要较高的工作速率及复杂的计算处理能力。FPGA作为并行处理系统,可采用并行计算完成复杂的设计。对多点的FFT计算来说,集成了DSP核的FPGA方案整体性能和计算速度均优于基于指令系统的DSP。
笔者选用Xilinx Virtex-5 SX50T FPGA作为开发平台,时钟高达550 MHz,同时有288个DSP48E硬件资源和4 752 Kbyte的BlockRAM资源[3],可满足DVB-T基带处理系统开发的硬件要求。
3 DVB-T COFDM系统及实现
欧洲地面数字标准DVB-T[4]主要规范了发送端的系统结构和编码调制方式。一般的发送端功能结构由信道编码、OFDM调制、上变频等部分组成。图1为DVB-T标准V1.6.1中给出的发送端结构框图。
输入端采用MPEG-2压缩的音视频作为资源(TS码流)。每个TS包由188 byte组成,在最终形成射频信号发送到信道中之前,将主要经过以下过程:
图1 DVB-T标准V1.6.1发送端结构框图
1)能量扩散:在实际应用中,常用一组伪随机序列对经信源编码的一组TS码流按比特异或进行随机化处理,用以保证在任何时刻进入传输系统的“0”与“1”的概率基本相等,提高输入数据码流的统计特性,拓展了数字信号的功率谱。
2)两层纠错编码
(1)RS码。DVB-T中规定外码纠错部分采用RS(208,188,t=8)编码。 在传输流 188 byte 之中,加入 16 byte的冗余纠错码,生成一个误码保护包。这种编码可以纠正 8 byte 的突发错误。 码生成多项式 g(x)=(x+λ0)(x+λ1)(x+λ2)…(x+λ15),其中 λ=02HEX。编码电路定义 clk 为输入字节时钟。编码电路主要由有限域乘法器、有限域加法器、选择器、线性反馈移位寄存器等组成。
(2)卷积码。内码采用Viterbi卷积码。采用移位器实现的主卷积码率为1/2。然后可以进行收缩删余,产生2/3,3/4,5/6,7/8等多种卷积码率。图 2为卷积编码的具体结构。对于多时钟,可采用FPGA内部的锁相环资源。删余模块通过不同状态控制标志来实现不同码率。
图2 卷积编码结构示意图
3)交织。交织是一种时间/频率扩展技术,使信道错误的相关度减小,在交织度足够大时,把突发错误离散成随机错误。DVB-T系统中为避免RS产生误码,在两层纠错码之间加入了数据交织环节。对误码保护包采用交织深度I=204/17=12 byte,M=17的卷积交织,将连续的错误打散,以提高外码的纠错效率。针对FPGA内嵌RAM,外交织采用开一双口RAM的方式来代替各个支路的FIFO移位寄存器。通过控制读写地址来实现卷积交织,数据操作在与输入输出是严格同步的。在DVB-T系统中还有一层内交织。内交织包括比特交织及符号交织两部分。
4)帧形成。经幅度相位映射后的有效子载波数据和连续导频、分散导频、TPS(传输参数信令)信号等组成OFDM符号。其中,TPS描述了DVB-T系统的主要参数。导频信号的插入是为了方便接收机对接收信号进行估算,提高接收质量。图3为插入导频的结构图。在具体实现中,通过编写RAM的初始化文件,在RAM的固定位置插入固定值来实现导频插入。
图3 插入导频系统结构图
5)信道OFDM调制的实现。
频域中的OFDM符号,通常采用IFFT来代替OFDM调制中的多子载波调制,得到时域OFDM符号。
Xilinx公司提供了 Pipelined,Streaming I/O、Radix-4,Burst I/O和Radix-2,Minimum Resources等 3种结构的FFT/IFFT核。直接调用可以合理利用Xilinx FPGA的结构,优化排局布线,缩短设计的周期。笔者综合考虑了所需资源和处理延时,采用了基于基四算法,将1帧数据存起来,然后进行计算,最后输出数据的第二种结构:Radix-4,Burst I/O。
实现时,Radix-4,Burst I/O有数据装载与输出、数据计算这两个过程,两个过程不能同时进行。当IFFT开始时,数据装载,当一帧数据装载完毕,IP核开始计算,计算完毕后进行数据的输出。
4 系统仿真及结论
4.1 系统仿真设计方案
本系统基于DVB-T的2K模式进行设计。COFDM参数如下:带宽为8 MHz;符号有序持续时间为224 μs;保护间隔 Tg=56 μs;载波数为 1 705。
由以上参数可以得到:1)符号总的持续时间为280 μs;2)符号速率 fs=3.57×103字符/秒。
系统采用Xilinx公司的Virtex-5 SX50T FPGA,开发环境 ISE10.1,Modelsim SE6.2b,程序语言采用 Verilog HDL,系统实现了各编码调制子模块,完成对标准中2K模式的XST综合后的Modelsim仿真。图4所示为系统流程图。
图4 COFDM编码调制端仿真流程图
4.2 时序仿真结果分析
图5是插入导频的时序图。Dual_RAM_out_I_2和Dual_RAM_out_Q_2是前端经QPSK映射之后的数据,Polit_ROM_out是导频数据。按照DVB-T标准,进行插入导频。符号0的导频位置为0号子载波,12号子载波,24号子载波……导频的功率与数据的功率比为16∶9。所以数据的幅值为64,导频的幅值为121。由图5可以看出,在输入数据中成功地插入了导频信息。
图5 插入导频时序图
图6所示为IFFT仿真时序图。fwd_inv为低表明进行IFFT运算;rfd信号为高时表明此时正在装载数据;busy信号为高时表明正在进行数据计算;dv信号为高时表明数据输出有效。xn_re,xn_im是输入IFFT模块中的数据信号,xk_re,xk_im是IFFT模块数据的数据的输出信号。从仿真图中可以看出,1次完整的IFFT计算所用的时间比1个COFDM符号持续时间(280 μs)要小,所以IFFT模块的设计是满足时序要求的。
图6 IFFT仿真时序图
4.3 COFDM基带信号频谱图
将COFDM基带调制程序在Virtex-5 SX50T芯片上调试,通过ChipScope软件将调试数据截取下来,然后导入Matlab观察调制信号的频谱图,如图7所示。由图可以看出,调制信号的实际带宽为7.61 MHz,符合DVB-T标准。
图7 调制信号的频谱图
5 基于FPGA的COFDM在地面数字视频广播开发中的优势
COFDM和FPGA在地面数字视频广播中的优势有:
1)COFDM采用有效的信道编码解决了由部分信道受损严重带来的失真问题,提高了系统的纠错能力。同时采用多载波的调制技术,提高了频谱利用率和抗码间干扰能力。在无线传播中,地面信道具有自身的特性,DVB-T标准选择COFDM作为地面数字视频广播的物理层标准,适用于解决地面信道中常见的多径失真和移动接收因多普勒频移引起的衰落现象,也利于单频网络的实现。
2)系统选用FPGA作为开发平台,功耗低,速率高,成本低,突出了集成DSP核的FPGA在处理高速数字信号处理上并行计算的优势,以及FPGA开发周期短、半定制的特点。随着无线通信包括数字电视传输技术和大规模集成电路的发展,FPGA将成为未来技术开发的趋势。
[1]ATHAUDAGE C R N,ANGIRAS R R V.Sensitivity of FFT-equalised zero-padded OFDM systems to time and frequency synchronisation errors[J].IEEE Proceeding Communication,2005,152(6):945-951.
[2]吴进,华涛.DVB-T系统中TCM调制解调器的设计与实现[J].电视技术,2009,33(2):6-7.
[3]田耕.无线通信FPGA设计[M].北京:电子工业出版社,2007.
[4]王闯.DVB-T编码调制的仿真和FPGA实现[D].南京:南京理工大学,2008.