第三代移动通信中卷积码解码方法研究及应用摘要:本文研究了移动通信系统中比较重要的一种前向纠错码——卷积码,并提出了采用FPGA实现卷积码解码的Viterbi算法实时实现,给出了硬件实现的逻辑框图,并提供了该实现在W-CDMA系统中的计算机性能仿真结果。关键词W-CDMA,卷积码,Viterbi算法,FPGAInvestigationandApplicationofConvolutionalDecodingin3GCommunicationSystemAbstract:Thearticleisfocusonconvolutionalcoding,oneofthemostimportantforwarderrorcorrectcode.Inthearticle,weproposeareal-timeViterbialgorithmimplementforconvolutionaldecoding,designedinFPGAlogiccircuit.Numericalsimulationsarepresentedforspecificexamplesoftwomobilecommunicationsystems(i.e.narrow-bandCDMAsystemandW-CDMAsystem).KeyWords:W-CDMA,ConvolutionalCode,Viterbialgorithm,FPGA1.引言近年来,信息技术和通信技术的突出成就和急剧发展,集中表现在个人通信,多媒体信息业务,互联网络(Internet)应用三个方面.把信息送给个人,使移动通信走向个人通信,在任何地方和任何状态都可打通电话的移动通信给人们带来了极大的方便.移动通信用户以每年30%--50%的速度增长,网络的用户容量要求大量增加,成为当今通信发展的主流和最大市场。由于社会信息化进程越来越快,仅仅通话已不能满足人们对信息交流的需要,除话音外,数据,图形,图象等各种信息都希望能随时获取和彼此相通,多媒体信息业务和服务就变得越来越有必要,将成为必不可少的通信业务和通信服务.互联网络(Internet)的兴起和运用,给信息的生成,传递,交换和应用带来了极大的便利和广泛普及,它已经开始并最终成为除国际电信网络之外的又一世界性网络,给通信的发展和进步带来不可估量的变革.从GSM系统、基于IS-95的窄带CDMA系统到W-CDMA系统,卷积编码做为一种有效的前向纠错码得到广泛的应用。但是卷积码解码[1]由于其算法复杂度随约束长度的增加而指数增长,增加了在具体系统实现中的难度。本文提出了一种采用现场可编程逻辑器件(FPGA)[2]实现卷积码解码的实现方法,并应用于W-CDMA实验系统中。本文的第二、三部分将对采用的FPGA芯片、卷积码编码器作简单的描述;第四部分详细介绍FPGA的内部逻辑设计实现卷积码解码器的功能;解码器的计算机仿真结果将在第五部分中给出;最后是全文的总结。2.FPGA芯片介绍我们采用的FPGA芯片是美国Altera公司推出的FLEX系列芯片FLEX10K20。它具有高集成度,内有丰富寄存器等优点。由用户在工作现场定义其逻辑功能,可降低风险,适用于开发周期短,高性能,高集成度的各种电路设计。FLEX10K系列芯片[3]都具有以下特点:1.可在线重新配置;2.快速、可预测连线延时的快速通道FastTrack连续式布线结构;3.实现快速加法器和记数器的专用进位链;4.高效实现高速、多输入逻辑函数的专用级联链;5.为减小开关噪声的可编程的输出电压摆率控制;6.遵守全PCI总线规定;7.工作在PC机、SUNSPARC工作站等多种平台的强大的AletraMAX+PLUS软件支持设计和自动布局、布线。我们选用的EPF10K20TC144电源电压为5V,总管脚为144根,可用的I/O管脚有102根,逻辑单元LE共1,152个,内部自带的RAM为12,288Bits,完全达到了卷积码解码所需要的内部存储器和逻辑单元的要求。3.卷积码的描述卷积码是一种对付突发错码的有效编码方法。通常记作(n,k,N),它将k个信息比特编为n个比特,即编码效率为Rc=k/n,N为约束长度,也就是说该编码器有Nk个移位寄存器,n个模2加法器,n个移位寄存器为输出。其编码器的结构如图1所示:12...k12...k12...k12...k12N......输入序列M++++...输出序列X12...n图1(k,n,N)卷积码编码器但是它与分组码不同的是编码后的n个码元不但与当前段的k个信息有关,而且与前面(N-1)段的信息有关,编码过程中相互关联的码元为Nn个。它的纠错能力随着N的增加而增大,而差错率随着N的增加而指数下降。在编码器复杂度相同的情况下,卷积码的性能优于分组码。故在GSM、窄带CDMA系统、第三代移动通信系统中都采用了卷积编码作为前向纠错码。4.FPGA实现卷积码解码过程我们采用的卷积码解码算法是基于最大似然序列估计的Viterbi译码算法[4],关键技术就是“加-比-选”。如图2的网格子图所示,网格图中从前级每个节点上都有2条支路延伸到下一级上,而下一级上的每2条支路又都汇聚在一个节点上。把汇聚在每一个节点上的两条路径的对数似然函数累加值进行比较,选择一条具有较大对数似然累加值的路径保存下来,而丢弃另外一条路径,使每一级留存下来的路径数保持常数(为编码约束长度的指数次幂)。该处理过程可简称为“加-比-选”。(0,m6,m5,m4,m3,m2,m1,m0)(m6,m5,m4,m3,m2,m1,m0,0)(1,m6,m5,m4,m3,m2,m1,m0)(m6,m5,m4,m3,m2,m1,m0,1)0101图2网格子图表示对于W-CDMA系统中K=9的特定卷积码,解码器内部逻辑设计如图3所示:p0_inp0_outDPRAMBp1_inp1_outACSACSshift&insertshift&insertp0_inp0_outDPRAMAp1_inp1_outp0_inp0_outDPRAMCp1_inp1_outp0_inp0_outDPRAMDp1_inp1_outmin解码输出控制信号数据输入、时钟图3解码器内部逻辑设计框图用128个时钟(CLK)周期解一个数据比特,即在一个数据比特时钟(DCLK)周期内,以CLK=128DCLK的时钟驱动一个七位计数器,产生(m6,m5,m4,m3,m2,m1,m0)从(0,0,0,0,0,0,0)到(1,1,1,1,1,1,1)的状态变化。运用两个双口RAM(FPGA内部自带的存储器),从一个DPRAM(记为A)同时读取第K-1个比特时存放的两个路径量度值,两端口的读地址分别为Rf1=(0,m6,m5,m4,m3,m2,m1,m0),Rf2=(1,m6,m5,m4,m3,m2,m1,m0),分别对应两状态节点。读出的结果并行地送入两个加—比—选电路(ACS),选出进入节点的最小路径量度(PM)并行写入另一DPRAM(记为B),写地址分别为Wf1=(m6,m5,m4,m3,m2,m1,m0,0),Wf2=(m6,m5,m4,m3,m2,m1,m0,1)。在下一比特周期,控制DPRAM输入输出端的切换开关,使得从RAMB读,结果写入RAMA,重复切换操作。该方法的好处是降低了时钟速率,设计清晰,代价是增加了硬件量。译码深度取为16已足够,所以另外两个DPRAM(C和D)存放信息序列,执行与上述同步的类似操作。所不同的就是ACS部分换成了shift&insert模块,功能是每接受一组新的支路信息,信息序列移位,并将假象信息比特作为最低位存入。Min模块比较得到各状态中最小PM,输出控制信号,以控制使对应最小PM的信息序列最高位输出,即为该数据比特的解码输出。ACS中,因为K=9,所以在对一个数据块的前8个数据时钟DCLK周期内,加—比—选结构要做改动,即对到达同一节点的两条支路,只选择上面的支路,即假想信息比特为0的支路,存入存储器,不须进行比较—选择操作。该功能可用数据选择器简单实现。我们在“关于W—CDMA关键技术研究”的项目中,根据协议规定的对于8K的话音业务,采用K=9,R=1/3的卷积码作为信道编码。采用一块FPGA10K20实现了卷积码的Viterbi解码,其中该芯片的存储器使用率为98%,门电路的使用率为35%。5.实现的性能模拟结果我们在信道噪声为加性高斯白噪声(AWGN)[5]情况下,对于W-CDMA系统下的(3,1,9)码(编码多项式的八进制表示为:(557)8、(663)8和(711)8)的解码性能进行计算机仿真,同时对比基于IS-95的窄带CDMA系统中采用的(2,1,9)码(编码多项式的八进制表示为:(753)8和(561)8)的性能进行比较,模拟时采用的解码器的解码深度与实际系统中采用的一致,即解码深度为16,得到以下解码器输入误码率(BERin)和输出误码率(BERout)的关系,在一定程度上达到了在无线信道下干扰情况下提高系统性能的目的。10-310-210-110010-610-510-410-310-210-1100InputBEROutputBER(3,1,9)code(2,1,9)code图4解码器输入误码率和输出误码率曲线6.结束语本文提出了在W-CDMA系统下一种卷积码解码的硬件实现方法,该方法也可推广到其他涉及到Viterbi算法(VA)应用方面的领域。与传统的硬件逻辑电路的设计相比,采用FPGA芯片实现硬件逻辑电路的设计,降低了开发研究过程中设计电路成本,短的开发周期和修改的方便都是传统的硬件逻辑设计方法所不能比拟的。随着支持FPGA硬件设计的硬件描述语言的逐步完善,利用FPGA芯片硬件实现各种信号处理的算法,在今后的研究中不失为一种有效的解决实际问题的方法。【参考文献】[1]M.R.Karim,MohsenSarraf(著).粟欣译.3G移动网W-CDMA和cdma2000[M].北京:人民邮电出版社,2003.9[2]AndreasF.Molisch(著),许希斌等译.宽带无线数字通信[M].北京:电子工业出版社,2001.9[3]曹志刚,钱亚生.现代通信原理[M],北京:清华大学出版社,2000[4]TeroOjanpe(著).WCDMA:面向IP移动与移动因特网.北京:人民邮电出版社.2003.9[5]杨峰义等编著.WCDMA无线网络工程.北京:人民邮电出版社.2004.5