一种用于LTE的提前终止Turbo码算法仿真

2017-03-29 10:07郝亚男杜克明冯昊轩
无线电工程 2017年4期
关键词:译码器交织译码

郝亚男,杜克明,冯昊轩

(中国电子科技集团公司第五十四研究所,河北 石家庄 050081)

一种用于LTE的提前终止Turbo码算法仿真

郝亚男,杜克明,冯昊轩

(中国电子科技集团公司第五十四研究所,河北 石家庄 050081)

Turbo编码是Long Time Evolution(LTE)定义的信道编码形式,可以获得逼近香香农理论极限的译码性能,目前广泛应用于第3代和第4代移动通信系统中。为了解决Turbo译码时延长和计算复杂度的问题,研究了一种可以应用于LTE系统中的基于循环冗余校验的改进Turbo译码算法,在Turbo译码器中增加循环冗余校验(Cyclic Redundancy Check,CRC)提前终止准则,在译码迭代结束时检验是否存在错误比特码,在无CRC校验错误时提前终止迭代译码,在不影响译码性能的同时降低译码复杂度。Matlab仿真结果表明,与固定迭代次数的Turbo码算法相比,译码延迟得到了显著改善。

Turbo;LTE;CRC;提前终止准则

0 引言

1993年的IEEE国际通信会议上,法国人C.Berrou等提出了一种新的编码Turbo码[1],码率1/2,交织长度65 536的Turbo码采用二进制移相键控(Binary Phase Shift Key,BPSK)调制,在加性高斯白噪声(Additive White Gaussian Noise,AWGN)信道进行18次迭代译码,在Eb/N0=0.7 dB时,误码率已低于10-5,距香农限仅有0.7 dB,表明其性能优异,逼近香农理论极限。Turbo码在无线通信中具有优异的误码率性能和码率兼容性,能够与自适应调制编码及混合自动重传等技术很好的结合,被广泛用于以UMTS、WiMAX、LTE为代表的第3代和第4代蜂窝移动通信系统中[2-4]。

LTE系统依靠迭代信道编解码结构来获得低延迟和高吞吐率,迭代信道编解码结构是指Turbo码译码器要设置一个最大迭代次数以求达到最佳译码性能,即必须达到最大迭代次数才结束译码。然而,研究发现在一定范围内,Turbo码的译码性能随着迭代次数的增加而稳定提升,但迭代次数越多,意味着译码时延和计算复杂度的增加,以及吞吐率的降低。而且迭代次数达到某个数值后,Turbo码的译码性能基本保持不变,不再随着迭代次数的增加而改善。所以采用预设迭代次数的Turbo译码算法,没有考虑译码过程中的性能变化和收敛性,存在译码速度低和译码延时大等问题。

为了解决译码延迟和译码计算复杂度的问题,本文研究了基于CRC的提前终止Turbo码译码算法的实现方案和性能仿真,在LTE信道编码中增加了CRC停止迭代判决准则来实现提前终止Turbo码迭代译码[5-6],采用停止迭代判决准则来灵活决定译码需要的迭代次数,从而实现兼顾译码性能的情况下有效的降低迭代次数,提高译码速度。

1 LTE中的Turbo编码器

图1 LTE Turbo编码器结构

交织器在Turbo编码器中有重要的作用,因为交织器的存在才能实现近似随机编码从而达到香农理论极限。交织器的重要作用主要体现在:① 在进行编码的时候,交织器能够使编码器中的2个RSC码子码以较大的概率得到较大的码间距离;② 在译码的时候,交织器能够把分量译码器1中产生的突发错误转化为随机错误,并且使译码器译码输出序列之间的相关性变小。

二次置换多项式序列(Quadratic Permutation Polynomial,QPP)交织器的输出与输入关系如下:

(1)

式中,K为输入块的长度,也称为交织深度;f1和f2是与K值相关的常数。LTE支持188个不同的K值[11],最小为40,最大为6 144。因此在对传输的数据进行信道编码之前,需要对大于6 144的传输块进行分块处理,如果分块后的数据块长不满足QPP交织表中的交织深度,需要在每个分块后的序列前面添加填充比特。

LTE系统中的Turbo编码器就是基于QPP交织的无竞争编码器,通过在交织过程中流水线式访问内存提高编码性能。2个分组卷积编码器的公式为:

(2)

(3)

式(2)为反馈多项式,式(3)为前向多项式。因此,Turbo编码器的传输方程为:

(4)

2 Turbo迭代译码器

Turbo迭代译码器结构如图2所示[12-13],图2中2个SISO(Soft-In-Soft-Out,SISO)分量译码器记为SISO-DEC1和SISO-DEC2。如果2个分量编码器是相同的,那么这2个SISO译码器也是相同的,其中的交织器也是基于QPP结构的,与Turbo编码器中使用的交织器是相同的。

图2 Turbo译码器结构

3 基于CRC的提前终止译码机制

Turbo译码器的精度和性能与迭代次数直接相关,迭代次数越大,精度越高,但是译码器的计算复杂度随着迭代次数的增加而呈指数级增长。为了实现有效的折中,将提前终止机制引入Turbo译码中。提前终止准则要满足3个要求:① 与固定迭代次数的译码相比,性能下降在可接收的范围内;② 降低迭代次数的同时保证误码率性能;③ 引入提前终止准则后的译码计算复杂度要小于固定迭代次数的计算复杂度。目前,常用的Turbo译码器提前终止迭代准则可以分为3类[14]:

① 基于软位判决的终止迭代准则:基于交叉熵准则(Cross-Entropy based)、绝对对数似然比估计(Absolute log-likelihood ratio (LLR) measurement、均值估计(Mean Estimation,ME)、优先对数似然比估计(Priori LLR measurement)等;

② 基于硬位判决的终止迭代准则:硬判决辅助(Hard Decision Aided,HDA)准则、可靠性度量(measurement of reliability,MOR)准则、符号改变率(Sign Change Ratio,SCR)准则、符号差异率(Sign Difference Ratio,SDR)准则;

③ 基于额外的检查策略的迭代终止准则:有效码字检查(Valid Codeword Check,VCW)准则和循环冗余校验( Cyclic Redundancy Check,CRC)准则。

本文对基于CRC的提前终止Turbo译码进行了研究,基于CRC的提前终止准则非常适于信道条件良好,即高信噪比的情况。在CRC准则下,信息序列在发送端进行Turbo码编码前,首先进行CRC编码,然后将生成的CRC校验码与信息码一并送入编码器,进行Turbo码编码,相当于Turbo码与CRC码之间进行串联。在接收端,每次迭代后通过译码器对数据序列的Turbo码部分进行临时译码生成硬判决值,然后利用CRC校验码对接收到的信息序列进行校验。若校验结果显示信息序列完全正确,则停止迭代。否则继续迭代译码,直至达到最大迭代次数为止。

LTE标准中,采用双层24位CRC实现Turbo编码译码,以充分利用CRC提前终止迭代准则实现对Turbo译码性能的改进。如图3所示,将LTE中Turbo编码的数据,添加了码块(Code Block,CB)和传输块(Transport Block,TB)的循环冗余校验,即CB CRC和TB CRC两层CRC[15]。当TB长度(不包含TB CRC)大于6 120 bit,则传输块会被等分成多个码块,每个码块都附有24 bitCRC,2层CRC都会添加;当TB长度小于等于6 120时,只添加TB CRC。每一个码块都附加了24位的循环冗余校验(CRC)码,因此码块最大长度是6 144,多个码块组成了一个传输块,组成的2级Turbo译码迭代终止准则,可实现更低的漏检概率。其中,CB CRC和TB CRC生成多项式分别为[24,23,6,5,1,0]和[24,23,18,17,14,11,10,7,6,5,4,3,1,0]。

图3 LTE系统中Turbo编码双层CRC示意

首先,Turbo译码器在对每个码块译码,每完成一次迭代,要进行CRC校验,如果校验通过,则表示该码块译码完毕,译码成功,则该码块的迭代译码终止;若校验不通过,则进行下一次迭代和CRC校验,如此反复,直至达到最大迭代次数,若校验仍然不通过,则说明译码失败,该码块译码失败意味整个TB传输失败,则构成该TB的其余码块也无需再进行译码,TB的迭代译码终止,可以直接向上反馈,进行重传。

其次,如果传输块的所有码块都译码成功,则进行传输块的CRC校验,CRC校验通过,则说明传输块译码成功,正确接收;如果校验失败,则反馈需要重传。有研究表明,使用2级CRC校验Turbo译码迭代终止准则,通过使用8并行度并行译码算法,迭代次数一般在4~6次。而且在使用Radix-4算法和滑动窗算法后的Turbo译码器,码长为6 144,译码器最高工作频率200 MHz,滑动窗长为24,平均迭代次数为4,吞吐率可达356 Mbps,完全满足LTE的要求[16]。

4 仿真与性能分析

本文采用Matlab R2012b仿真,在AWGN信道下,采用单载波正交移相键控(Quadrature Phase Shift Key,QPSK)方式调制进行信息传输,只对传输块不分块的情况进行仿真。采用的帧长分别为256、512、1 024和2 342,编码器由2个并联的成员编码器组成,编码器约束长度为4,生成多项式为[13,15],反馈多项式迭代次数为13,中间以一个QPP交织器隔开,2个成员编码器均采用8状态系统递归卷积码RSC,Turbo码率为1/3,译码算法采用MAP,调制方式为QPSK调制。

首先对基于固定迭代次数的Turbo译码性能进行仿真,分析迭代次数1、2、3、5对Turbo译码性能的影响,仿真结果如图4所示。

图4 不同帧长下迭代次数对Turbo译码性能的影响

可以看出在其他参数一定的情况下(帧长、码率等参数不变),随着迭代次数的增加,系统的BER都在不断下降。同时,从不同帧长的仿真图形中可以看出来,帧长度越小,迭代收敛的速度越快,达到稳定性能所需的迭代次数越少。比如帧长度为256的Turbo码迭代3次和5次迭代译码的性能差异较小,但帧长为2 432的Turbo码,迭代3次和迭代5次之间的性能差异较大。而且,对于不同的信噪比,迭代次数对性能改善是不同的,在低信噪比时改善比较小,当信噪比增加到一定程度时,性能改善更加明显。而且迭代次数小的时候,每次迭代带来性能的改善要大一些,迭代次数增加到一定数值之后,Turbo译码性能已经稳定到一个范围之内,基本不会带来性能提升。

基于CRC校验的提前终止机制与常规Turbo译码(固有迭代次数)性能对比如图5所示,分别给出了常规的固定迭代次数为6和8的Turbo译码,最大迭代次数为6和8的CRC提前终止Turbo译码性能比较曲线,可以看出在一定SNR范围内,引入CRC提前终止机制的Turbo译码器不会影响BER的性能。

图5 Frame=2 432两种Turbo码译码性能比较

在相同长度信息系列,在不同的帧长512、1 024和2 432下,采用常规的基于固定迭代次数(设置为6)的Turbo译码和基于CRC提前终止的译码程序运行时间对比如表1所示,可以看出译码运行时间得到了显著改善。

表1 译码运行时间的对比

5 结束语

Turbo码的出现为信道编码理论和实践带来了一场革命,特别是它在高速率数据传输中有着传统信道编码无可比拟的优势,但由于译码延迟很大,通常的迭代译码算法难以实现实时数据传输。因此本文研究了一种适于LTE的基于CRC提前终止迭代的Turbo译码算法,对信息系列采用双层CRC结构,可以充分降低漏检概率,同时利用CRC校验来判断是否停止迭代译码,可以实现在不降低译码性能和不增加系统复杂度的情况下,有效地降低译码延时,非常适于在高信噪比下传输环境。通过仿真分析了帧长和迭代次数等因素对Turbo码译码性能的影响,为Turbo码在实际LTE工程中的应用提供了一定的参考。

[1] BERROU C,GLAVIEUX A,THITIMAJSHIMA P.Near Shannon Limit Error-correcting Coding and Decoding:Turbo-codes[C]∥In Proc.ICC’93,Geneva,Switzerland,1993:1 064-1 074.

[2] 胡东伟.极低码率Turbo码及其应用研究[J].无线电工程,2014,44(12):1-3.

[3] 魏岳军.3GPP UMTS和LTE系统中的信道译码算法研究[D].上海:上海交通大学,2013.

[4] 白 林,张一琼.OFDM系统中基于软干扰抵消的Turbo均衡算法研究[J].无线电通信技术,2015,41(4):61-63.

[5] REID A C,GULLIVER T A,TAYLOR D P.Convergence and Errors in Turbo Decoding[J].IEEE Transactions on Communications,2001,49(12):2 045-2 051.

[6] 曾 军.基于可靠值度量的Turbo码算法改进[D].武汉:湖北大学,2014.

[7] 殷 实.基于LTE的Turbo码技术研究及其FPGA实现[D].西安:西安电子科技大学,2014.

[8] 姚 安,陈自力.Turbo均衡中迭代停止准则的研究[J].无线电通信技术,2014,41(1):37-40.

[9] 刘东华,梁光明.Turbo码设计与应用[M].北京:电子工业出版社,2011.

[10] PROAKIS J G,SALEHI M.Digital Communications(5thEdition) [M].北京:电子工业出版社,2009.

[11] 3GPP TS 36.212 v10.0.0 (2010-12),Sec.5.1.3.2.3GPP Technical Specification Group Radio Access Network;Evolved Universal Terrestrial Radio Access (E-UTRA);Multiplexing and Channel Coding (Release 10)[S].

[12] 韩丹丹.LTE系统的Turbo码译码技术的研究[D].天津:河北工业大学,2014.

[13] 吴臻志.多标准高性能前向纠错码处理器[D].北京:北京理工大学,2015.

[14] LI F,WU A.On the New Stopping Criteria of Iterative Turbo Decoding by Using Decoding Threshold[J].IEEE Transactions on Signal Processing,2007,55(11):5 506-5 516.

[15] CHENG J S.Two-Level Early Stopping Algorithm for LTE Turbo Decoding[J].Vehicular Technology Conference,2008:1-9.

[16] 刘钊元.迭代接收技术在LTE中的应用[D].上海:上海交通大学,2011.

郝亚男 女,(1983—),博士,工程师。主要研究方向:通信系统仿真及SOC电路设计等。

杜克明 男,(1967—),硕士,高级工程师。主要研究方向:集成电路设计。

Performance Simulation of an Early Termination Turbo Code Algorithm for LTE

HAO Ya-nan,DU Ke-ming,FENG Hao-xuan

(The54thResearchInstituteofCETC,ShijiazhuangHebei050081,China)

Turbo code is the channel coding standard of Long Time Evolution (LTE),which provides good performance close to Shannon limit.It is widely adopted by the 3rdand 4thGeneration mobile communication systems.An improved Turbo decoding algorithm based on Cyclic Redundancy Check (CRC) is proposed to decrease the complexity and decoding latency.According to CRC early stopping decoding criteria,it checks whether there is error bit after each iteration decoding.Then the iteration can be terminated when there is no CRC error.Therefore the proposed algorithm would decrease the average decoder iteration without or with very little performance degradation.The Matlab experiment shows the significant reduction in decoding delay.

Turbo;LTE;CRC;early termination criteria

10.3969/j.issn.1003-3106.2017.04.06

郝亚男,杜克明,冯昊轩.一种用于LTE的提前终止Turbo码算法仿真[J].无线电工程,2017,47(4):24-27,64.

2017-01-07

国家科技重大专项基金资助项目(2013ZX03006004)。

TN911

A

1003-3106(2017)04-0024-04

猜你喜欢
译码器交织译码
“新”与“旧”的交织 碰撞出的魅力“夜上海”
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
交织冷暖
高速码率兼容DVB-S2的LDPC译码器的FPGA实现
编码器和译码器综合实现数字显示
跟踪导练(一)5
金融骗局虚实交织
从霍尔的编码译码理论看弹幕的译码
奥运梦与中国梦交织延展