适于OBP卫星的Turbo码自适应部分迭代译码
李航 1,3 , 高镇 2 , 赵明 1,3 , 王京 1,3     
1. 清华大学 电子工程系, 北京 100084 ;
2. 天津大学 电子信息工程学院, 天津 300072 ;
3. 清华信息科学与技术国家实验室, 北京 100084
摘要:为解决卫星星上处理平台星上资源有限与Turbo码译码复杂度高的矛盾,该文提出了一种适于卫星星上处理平台的自适应部分译码转发算法,通过降低迭代次数达到减少Turbo码译码器占用资源的目的。该算法的自适应包含2个层面:外层根据信道质量状态动态设定迭代次数范围;内层根据一种新的迭代停止准则提前停止迭代,该停止准则具有计算量小的优点。通过这2个层面的联合自适应,有效地降低了平均迭代次数,相比固定次数的部分迭代译码提高了算法的性能。
关键词星上处理     Turbo码     迭代译码     自适应译码    
Adaptive partial decode-and-forward of Turbo codes for OBP satellites
LI Hang1,3 , GAO Zhen2 , ZHAO Ming1,3 , WANG Jing1,3     
1. Department of Electronic Engineering, Tsinghua University, Beijing 100084, China ;
2. School of Electronic Information Engineering, Tianjin University, Tianjin 300072, China ;
3. Tsinghua National Laboratory for Information Science and Technology, Beijing 100084, China
Abstract:An adaptive partial decode-and-forward (APDF) algorithm was developed for on-board processing (OBP) for the high processing complexity Turbo decoder with limited processing resources. This algorithm reduces the number of iterations to lower the resource consumption. The adaptive algorithm contains an upper level where the range of iterations is determined by the link quality and an inner level using an early stopping criterion to reduce computations. The two levels of adaption are combined to decreases the average number of iterations while the performance is improved compared with the partial iterative decode method with fixed iterations.
Key words: on board processing     Turbo codes     iterative decode     adaptive decode    

星上处理(on-board processing,OBP)具有获得解调增益、降低传输差错率的优点,是未来卫星移动通信系统的发展方向[1]。与弯管转发不同,星上处理在卫星上进行译码转发(decode-and-forward,DF),有效地隔离了上下行链路噪声,不仅对功率受限的卫星平台有着重要的意义,而且可以降低终端的解调门限,有利于终端的小型化。Turbo码作为一种逼近Shannon极限的编码,已成为移动通信系统的主流编码方式,分别被WCDMA、 LTE/LTE-A[2]、 WiMax等地面移动通信系统和IMT-Advanced系统中的卫星通信部分采用[3]。然而由于Turbo码的译码采用迭代译码,复杂度较高,因此Turbo译码器会消耗大量的星上资源,对星载平台造成了很大的负担。

部分译码转发(partial decode-and-forward,PDF)可以有效地解决星上处理复杂度高和星上资源有限的矛盾。这种方法结合了有限次迭代[4]和软编码[5-6]的思想,卫星通过有限次迭代译码得到了信息位的软信息,再通过软编码得到校验位的软信息,然后将软信息作限幅和归一化,并转发给接收端[7]。然而,在Turbo码的部分迭代译码算法中,不同信噪比下迭代次数对误码性能的影响是不同的。若对不同信噪比均采用固定迭代次数,会在低信噪比时造成资源浪费,在高信噪比时造成性能损失。因此,迭代次数应随信道质量自适应变化。

对于OBP卫星,目前还没有自适应部分迭代译码的相关工作,但可以借鉴地面移动通信中Turbo码的自适应译码转发(adaptive decode-and-forward,ADF)算法。这些算法主要考虑2个方面: 一是迭代次数随链路质量变化; 二是设计迭代终止准则。文[8]提出了一种根据信噪比变化和误码率需求确定迭代次数的自适应译码算法,但该算法仅针对单链路的场景,需要针对卫星场景改进。常见的迭代终止准则包括循环冗余检验(cyclic redundancy check,CRC)、 符号改变率(sign change ratio,SCR)、 符号差别率(sign difference ratio,SDR)、 LLR方差和交叉熵最小化(cross entropy,CE)等方法。已有大量研究对这些准则进行改进,或考虑同时使用多种迭代终止准则。考虑到LDPC码的译码算法中各次迭代后均进行硬判决校验,Turbo码也可以相应地采用校验的方式停止迭代。文[9]提出了利用硬判决是否满足收尾特性作为Turbo码校验的方法,文[10]提出了每当分量码译码器完成译码时即进行收尾特性校验的方法。然而这些算法均采用完全迭代译码,文[9]中的校验判断仅进行1次,这使得若在最小迭代次数时不满足校验,则仍需按最大迭代次数进行译码。文[10]虽然对此问题进行了改进,但没有考虑来自同一译码器译码判决的相关性,译码性能还可以进一步提高。

本文针对星上处理平台,提出了一种Turbo码的自适应部分译码转发(adaptive partial decode-and-forward,APDF)算法,实现了部分迭代译码算法中迭代次数的动态变化。在该算法中首先根据信道质量不同,确定迭代次数的范围; 其次,迭代停止准则采用收尾特性校验,但对达到最小迭代次数后的每一次分量译码器的输出均进行判定,且硬判决和收尾比特来自不同的分量码译码器; 迭代停止后卫星平台将软信息经过限幅和归一化后转发给接收端[7]。仿真结果验证了所提出的自适应部分迭代译码算法的有效性。

1 算法的总体思想

在APDF中,迭代次数是动态变化的,这种变化包含2个层面。在译码器外部,通过信道估计,根据当前时刻的信道状况及系统的误码率需求,动态确定最大迭代次数Imax和最小迭代次数Imin作为译码器的输入参数。在译码器内部,当超过Imin后,采用迭代停止准则,通过对迭代停止算法进行设计,进一步减少迭代次数。这样,通过这2个层面的联合自适应,降低了星上译码的平均迭代次数,提高了部分迭代译码的灵活性。自适应部分迭代译码如图 1所示。

图 1 自适应部分迭代译码

2 外层自适应

外层自适应即确定ImaxImin。其中,设定Imin有2方面作用: 1) 超过Imin次迭代后才进行迭代停止准则判断,降低误判率; 2) 减少判断次数,降低计算量。

随着信噪比逐渐增大,Turbo译码曲线分别位于夹止区、瓶颈区和开阔区。在这3个区域中,迭代次数对译码性能的影响不同,因此可根据信道质量对Imin采用不同的设置方法。在夹止区中,增加迭代次数对改善译码性能意义不大,故Imin取值尽可能小如Imin=1。对于瓶颈区和开阔区,前2次迭代往往能获得较大增益,因此Imin可取为2或3。

Imax同样根据信道质量采用不同方法选取。对于夹止区,因为增大迭代次数不能获得迭代增益,所以Imax取一个较小的数,以减少不必要的迭代。对于瓶颈区和开阔区,通过预先仿真得到误码率曲线图,然后在仿真曲线图中找到为达到要求的误码率所需的Imax。将上行链路的信噪比划分为

$\begin{align} & -\infty \text{ },{{\left( {{E}_{b}}/{{N}_{0}} \right)}_{U,1}},\left[ {{\left( {{E}_{b}}/{{N}_{0}} \right)}_{U,1}},{{\left( {{E}_{b}}/{{N}_{0}} \right)}_{U,2}} \right),\ldots , \\ & \left[ {{\left( {{E}_{b}}/{{N}_{0}} \right)}_{U,n}},+\infty \right), \\ \end{align}$

并将下行链路的信噪比划分为

$\begin{align} & -\infty \text{ },{{\left( {{E}_{b}}/{{N}_{0}} \right)}_{D,1}},\left[ {{\left( {{E}_{b}}/{{N}_{0}} \right)}_{D,1}},{{\left( {{E}_{b}}/{{N}_{0}} \right)}_{D,2}} \right),\ldots , \\ & \left[ {{\left( {{E}_{b}}/{{N}_{0}} \right)}_{D,n}},+\infty \right), \\ \end{align}$

当前上行链路信噪比为 (Eb/N0)U,下行链路信噪比为 (Eb/N0)D,分别判定上下行链路信噪比所属的区间,该区间左侧端点分别为Eb/N0U,p和(Eb/N0)D,q(p,q=0,1,…,n且(Eb/N0)U,0=(Eb/N0)D,0=-∞)。那么,Imax为上下行信噪比分别为(Eb/N0)U,p和(Eb/N0)D,q时对应的迭代次数。

外层自适应中,IminImax的取值可以利用外信息转移图(extrinsic information transfer chart,EXIT图)直观地解释。EXIT图是迭代特性确定迭代次数的有效方法。记IA为信息比特和先验似然值的互信息,IE为信息比特和外信息(后验似然值)之间的互信息。EXIT图表示的是IEIA的相互关系,

Eb/N0一定时,IEIA单调增加,0≤IA≤1。越大的IA意味着越多的信息比特被译码器以高置信度作为先验信息。然而,要得到正确译码,必须输出比IA更大的IE,否则会造成2个分量码译码器EXIT曲线相交。当2条EXIT曲线形成的开口越大,迭代对误码率的改善就越大,反之若2条曲线相交,通过迭代将无法改善误码性能。随着信噪比的增大,2条曲线由相交到逐渐开口增大,其中2条信息转移曲线相交的临界Eb/N0值对应瓶颈区。因此,迭代次数应随信噪比动态变化,迭代次数的设定应满足在迭代过程中能获得尽可能多的增益。

图 2给出了不同Eb/N0下Turbo码的EXIT曲线。其中,IA1IA2分别表示2个分量码译码器的IAIE1IE2分别表示2个分量码译码器的IE。Turbo码的分量码多项式为(1+D+D3)/(1+D2+D3),其中D表示移位寄存器。对于2个译码器EXIT图相交的情况,由于迭代收敛于相交点,故仅画出了相交之前的轨迹。相邻曲线的Eb/N0相差0.4 dB。 1) 当Eb/N0较大时,2条曲线的张口较大,此时不存在瓶颈区。 2) 随着Eb/N0的减小,2条曲线的中部逐渐形成瓶颈区。图中虚线示出了码长为6 144的Turbo码在Eb/N0为0.2 dB时1次译码的迭代轨迹。可以看出,经过12次迭代得到了正确的译码。最初的几次迭代可以获得较大增益; 然后进入瓶颈区,每次迭代获得的增益减小; 通过瓶颈区后通过足够多次的迭代总能实现正确译码。 3) 当Eb/N0继续减小时,2条曲线的开口逐渐收缩,直至相交,此时迭代译码收敛于错误的比特,由交点的位置可以估计出误码率。以上3种情况依次对应于Turbo码性能曲线中开阔区、瓶颈区和夹止区。

图 2 不同信道质量下Turbo码的EXIT图

3 内层自适应

在通过外层自适应确定了迭代次数范围以后,下面讨论内层自适应即利用译码终止准则进一步减小译码次数。对于原有方法,CRC算法若要获得较好性能,需引入大量的冗余比特,降低了传输效率。SCR、 SDR算法和LLR方差算法相比CRC运算量较大,且需要存储上一次迭代的信息,增加了存储单元的开销。CE算法包含乘方和指数运算,复杂度较高,且性能较差。因此,需对译码终止准则进行改进。

Turbo码的分量码译码器在每次迭代结束后并未像LDPC译码器那样计算硬判决是否满足校验和,以提前终止迭代。但注意到在实际应用中Turbo码的2个分量递归系统卷积码通常为收尾码,可利用该收尾特性作为提前终止迭代的判定准则。例如,在LTE/LTE-A中分量码编码器分别使用了3个归零尾比特[2],正确的译码结果必然使得寄存器状态归零[9]。假设Turbo码由对称的分量码编码器产生,卷积码的递归多项式均为G2(D),寄存器个数为N,两个编码器不含收尾位的硬判决输出分别记为Si(D)(i=1,2),收尾比特的硬判决输出记为Ti(D)(i=1,2),I(·)和I-1(·)分别表示交织和解交织,那么迭代终止条件为

$\left[ {{I}^{2i-3}}{{S}_{3-i}}\left( D \right)+{{T}_{i}}\left( D \right){{D}^{N}} \right]mod{{G}_{2}}\left( D \right)=0.$ (1)

信息位的硬判决输出和收尾位的硬判决输出来自不同的译码器,这是为了减少信息位和收尾位的相关性。若采用来自相同译码器的硬判决输出,会因为相关性较大造成性能损失[9]。然而在文[9]中,归零比特的判断仅在迭代次数为Imin时进行,若Imin次迭代不能满足终止条件,则需迭代Imax次,这使得迭代次数依旧较大。

4 算法流程

对于外层自适应算法,为进一步增强了算法的灵活性,需根据不同的Eb/N0确定不同的迭代次数范围; 对于内层自适应算法,需改进迭代次数过多的问题。首先,2个分量译码器只要有任何一个满足迭代终止条件即停止译码; 其次,当迭代达到一定次数后,对于每次分量码译码器输出(即每0.5次迭代)都进行迭代终止条件判定; 从而降低迭代次数。基于上述改进,本文提出的Turbo码自适应部分迭代译码算法如下:

步骤1 根据信道质量确定ImaxImin,并将迭代次数I初始化为1。

步骤2 Turbo迭代译码,其中2个分量码SISO译码器使用BCJR算法(如Max-log-MAP算法)或SOVA(soft output viterbi algorithm)译码。当完成一次完整的迭代时,I的值增加1。

步骤3 判断IImin的大小关系。若IImin,转步骤4,并将分量码译码器序号i初始化为1; 若IImin,转步骤2。

步骤4 Turbo的分量码译码器DECi进行译码。译码完成时,迭代次数I增加0.5,i赋值为(3-i)。

步骤5 判断I与Imax的大小关系。若I>Imax,停止迭代; 若IImax,转步骤6。

步骤6 根据式(1)判定收尾条件是否满足。判定另一个译码器的硬判决结果与当前译码器的收尾比特组成的信息序列是否能使寄存器达到0状态。若收尾条件不满足,转步骤4; 若满足,停止迭代。

卫星在停止迭代后,对软信息进行处理,并对信息位和校验位的软信息作限幅和归一化,然后转发给接收端,由接收端完成剩余的迭代译码。

5 仿真结果

仿真采用LTE标准中码长为6 144、 码率为 1/3 的Turbo码[2],调制方式为BPSK,并假设上下行链路的Eb/N0相等。上下行链路不对称的情况同样可以采用本方法。仿真中将本文提出的 APDF 算法与DF,PDF和ADF算法[9]的性能和迭代次数进行比较。算法参数设置如下: DF迭代次数为10; PDF迭代次数为4; ADF的Imin=2,Imax=10; 对于APDF,当Eb/N0<0.6 dBImin=1且Imax=2,当0.6 dBEb/N0<1.2 dBImin=3且Imax=6,当Eb/N0≥1.2 dBImin=2且Imax=4。其中Eb/N0对应单跳链路的信噪比。

图 3给出了4种方法的平均迭代次数。DF和PDF不具有自适应特征,迭代次数保持恒定,ADF和APDF算法迭代次数随Eb/N0变化。相比ADF算法,APDF的迭代次数得到了明显降低,尤其是低信噪比时迭代次数仅为ADF的1/4。

图 3 平均迭代次数的仿真结果

图 4为这4种方法的误码率(BER)曲线图。可以看到,虽然迭代次数大幅度降低,但APDF算法的性能与其他3种方法的大致相当。

图 4 误码率性能的仿真结果

APDF算法可以在获得大部分译码增益的前提下,有效降低迭代次数。迭代次数的降低使译码器对星上处理平台的占用资源减小,减轻了卫星的星上处理负担。

6 结 论

本文提出了一种适于卫星平台的APDF算法。算法根据信道质量设定迭代次数,并包含一种新的迭代停止准则。该停止准则具有易于判断、运算量小的优点。仿真结果表明: 该算法在中低信噪比区域,平均迭代次数比ADF的下降了50%以上,但误码性能几乎与ADF和DF的一致,且优于PDF的; 在高信噪比区域,误码性能比ADF的下降了0.2 dB。 下一步将研究考虑衰落信道和多卫星场景下的自适应部分迭代译码。

参考文献
[1] 易克初, 李怡, 孙晨华, 等. 卫星通信的近期发展与前景展望[J]. 通信学报 , 2015, 36 (6) : 157–172. YI Kechu, LI Yi, SUN Chenhua, et al. Recent development and its prospect of satellite communications[J]. Journal on Communications , 2015, 36 (6) : 157–172. (in Chinese)
[2] 3GPP Technical Specifications 36.212. Multiplexing and channel coding (Release 13) [S]. Gothenburg, Sweden: 3GPP, 2016.
[3] HE Yizhou, LIU Siyang, GAO Zhen, et al. Evaluation of system performance for the BMSat[J]. International Journal of Satellite Communications and Networking , 2015, 33 (4) : 315–328. DOI:10.1002/sat.v33.4
[4] Ahmed P S, Maunder R G, Hanzo L. Partial soft decode and forward [C]//Vehicular Technology Conference (VTC Fall). San Francisco, CA, USA: IEEE VTS, 2011, 16: 1-5.
[5] LU Xuanxuan, LI Jing, LIU Yang. Soft parallel wireless relay via Z-forward[J]. IEEE Transactions on Wireless Communications [J] , 2015, 14 (11) : 6339–6352. DOI:10.1109/TWC.2015.2452917
[6] LU Xuanxuan, LI Jing, LIU Yang. New soft-encoding relay (SoER) mechanisms for wireless relay systems: convolutional and Turbo constructions[J]. IEEE Transactions on Wireless Communications , 2015 .
[7] LI Hang, GAO Zhen, ZHAO Ming, et al. Partial iterative decode of Turbo codes for on-board processing satellite platform[J]. China Communications , 2015, 12 (11) : 104–111.
[8] 王萍, 宋荣方. 一种Turbo迭代译码的联合自适应方案[J]. 南京邮电大学学报: 自然科学版 , 2012, 32 (4) : 14–18. WANG Ping, SONG Rongfang. A joint adaptive scheme for iterative Turbo decoding[J]. Journal of Nanjing University of Posts and Telecommunications (Natural Science) , 2012, 32 (4) : 14–18. (in Chinese)
[9] GU Jian, ZHANG Yi, YANG Dacheng, et al. Adaptive iterative Turbo decoding algorithm [C]//IEEE Vehicular Technology Conference, 2006, 3(3): 1472-1476.
[10] 张振川, 王建英. 改进的Turbo码自适应迭代译码算法及其性能仿真[J]. 东北大学学报(自然科学版) , 2008, 29 (2) : 205–208. ZHANG Zhenchuan, WANG Jianying. Performance and simulations of improved adaptive iterative decoding algorithm of Turbo codes[J]. Journal of Northeastern University (Natural Science) , 2008, 29 (2) : 205–208. (in Chinese)