第32卷第6期 飞行器测控学报 Journal of Spacecraft TT&C Technology Vo1.32 No.6 Dec.2013 2013年12月 CCSDS近地LDPC译码算法研究 李红梅 ,姚秀娟 (1.中国科学院空间科学与应用研究中心・北京・100190;2.中国科学院大学・北京・100190) 摘 要:针对CCSDS(空间数据系统咨询委员会)推荐的近地LDPC(低密度奇偶校验)码技术进行了研究,建立了 和积译码算法、对数似然和积译码算法、最小和译码算法的数学模型,并对上述译码算法的译码复杂度和译码性能 进行了仿真分析。分析结果表明,和积译码算法与对数似然和积译码算法的译码性能距离香农限1.2 dB,最小和 译码算法的译码性能距离香农限1.45 dB。因此,提出基于最小和译码算法的改进算法——偏移最小和译码算法 与归一化最小和译码算法,并分析了这2种译码算法的译码复杂度,同时进行了大量仿真实验。实验结果表明,当 偏移因子口:0.15时,偏移最小和译码算法性能达到最优,译码性能距离香农限1.25 dB;当归一化因子a一 0.741 2时,归一化译码算法的译码性能达到最优,译码性能距离香农限1.2 dB。归一化译码算法具有优异的译码 性能和合理的复杂度,可以遴选作为CCSDS I DPC的译码算法用于工程实现。此外,还研究了迭代次数对译码性 能的影响,结果表明,当迭代次数大于1o次时,译码性能提升不再明显,故工程实现时迭代次数应设置为1O次。 关键词:空间数据系统咨询委员会(CCSDS);低密度奇偶校验(I DPC);最小和译码算法;改进最小和译码算法 中图分类号:TN9l1.22 文献标志码:A 文章编号:1674—5620(2013)06—0524—07 D0I:10.7642/j.issn.1674—5620.2013—06—0524—07 Research on Near—Earth LDPC Decoding Algorithms for CCSDS i.i Hongmei ,YAO Xiuiuan (1.Center for Space Science and Applied Research,Chinese Academy of Sciences,Beijing 100190; 2.University of Chinese Academy of Sciences,Beijing 100190) Abstract:Research is done on LDPC(I ow—Density Parity Check Code)recommendations of CCSDS(Consultative Committee for Space Data Systems)for near earth applications.Mathematical models are constructed for BP deco— thm,and simulation and analysis is done ding algorithm,LI RBP decoding algorithm and rainsum decoding algori—on their complexity and decoding performance.The results show,for rate 7/8 LDPC code,the performance of BP ng algorithm has a threshold within 1.2 dB of the Shannon limit of the binary~input ad— decoding and LI RBP decoding algorithm has a threshold within 1.45 dB ditive white Gaussian noise channel;the performance of minsum decodiof the Shannon limit.Based on min sum decoding algorithm,two improved algorithms offset minsum decoding al thm—are proposed.Decoding complexity of the two decoding algo— gorithm and normalized minsum decoding algoring algorithm reaches rithms are analyzed and simulated。When the offset factor G一0.15,the offset minsum decodi—a threshold within 1.25 dB of the Shannon limit.When the normalized factor Q_-0.741 2,the normalized rainsum decoding algorithm reaches a threshold within 1.2 dB of the Shannon limit.Striking a good balance between deco ding performance and complexity,the normalized decoding algorithm is a good candidate for LDPC of CCSDS for en— gineering implementation.The influence of the number of iterations on decoding performance is also analyzed and the results show that 10 iterations is the best choice for engineering implementation. Keywords:Consultative Committee for Space Data Systems(CCSDS);Low-Density Parity Check Code(LDPC); min-sum decoding algorithm;improved rain-sum decoding algorithm *收稿日期:2013-07—01;修回日期:2013—08—01;网络出版时间:2013—11 l3 15:47:39 网络出版地址;http:∥WWW.cnki.net/kcms/detail/11.4230.TV.20131113.1547.007.html 第一作者简介:李红梅(1987--),女,硕士,主要研究方向为信号与信息处理;E—mail:lihongmei0729@163.corn 第6期 李红梅,等:CCSDS近地LDPC译码算法研究 525 0 引 言 1)定义D一 的某一行元素; LA2l5 ,A1.1。]; 6 J Az1,信道编码技术是制约空间探测技术发展的关键 技术之一,在近地空间通信中,要实现几百Mbyte/s 2)记U一(1 0 … 0)为51l×5ll的单位阵 3)定义z 一(G G ),其中i一(12,…,14) 甚至几千Mbyte/s的数据传输速率需要编译码复 杂度较低且译码收敛速度快的信道编码技术,传统 的RS(里德一所罗门)+卷积码的级联技术已经不能 4)定义Mi=『A ],由ZiH ==:0,得到 LA2J , 满足现代空间通信高码率、低功耗的需求;因此 M U、+D 一0 CCSDS(空间数据系统咨询委员会)推荐了适用于 近地空问通信的7/8码率的I DPC(低密度奇偶校 验)码技术,并于2011年8月将LDPC编码技术写 入了TM(遥测)和AOS(高级在轨系统)的下行信 道编码蓝皮书中,以满足空间通信高速、可靠、低功 耗的需求I】 ]。 LDPC编码技术是迄今最接近香农极限的编码 技术 ,其码字构造灵活,编码算法和译码算法种类 繁多,目前国内外研究的难点是寻找码字性能以及编 译码复杂度之间的平衡,以使算法能应用于工程实践。 本文在对CCSDS推荐的近地7/8 LDPC码编 码原理研究的基础上,对BP(和积)译码算法、LI一一 BP(对数似然和积)译码算法以及最小和译码算法 等3种置信度传播迭代译码算法的性能以及复杂度 进行对比分析研究,并采用长(8176,7154)LDPC码 进行算法的仿真验证,建立译码迭代次数对译码性 能的影响关系模型,遴选出工程上适用的LDPC译 码算法。 1 CCSDS推荐的7/8 LDPC码 CCSDS推荐的7/8 LDPC是一类QC—LDPC (准循环LDPC码),该QC—LDPC码的校验矩阵由 32个511×5ll的循环阵组成Ⅲ3 J H—lFA】 LA,1 Al,2 … A1,l4 A1,1 5 Al,16] A2 l2.1 A2,2 … ,14 A2,1 5 A2,1 6 J 每个A 均是一个511×511的循环阵,矩阵的 行重与列重均为2。循环矩阵是指矩阵的每一行都 是由前一行向右循环一位得到的。该QC—LDPC的 生成矩阵具有如下形式 Gl j D 0 G1,1 G1.2 G2 D J 0 Gl,2 G2,2 G : : : ● ● ● G14 D D J Gl4,l G14.2 其中 I为511×511的单位矩阵,G 是511×511 的循环矩阵。编码过程如下 : 则可求出7/8 LDPC的生成矩阵,从而完成编码。 2 LDPC置信度译码算法 LDPC的译码算法种类繁多,主要包括大数逻 辑、比特翻转、后验概率以及基于置信度传播的迭代 译码算法,其中置信度传播的迭代译码算法利用变 量节点与校验节点之问的消息传递来完成译码,性 能最优且能够接近香农极限_5]。置信度算法包括 BP译码算法、LLR—BP算法以及最小和译码算法, 本文主要对以上3种置信度传播迭代译码算法的性 能以及复杂度进行研究,并提出改进的译码算法。 译码所采用的信道模型如图1所示。 AwGN一加性高斯白噪声 图l信道模型 Fig.1 Communication channel model 2.1 BP译码算法 每个变量节点对应校验矩阵的一列,每个校验 节点对应校验矩阵的一行。假设在AWGN信道 中,U一( 1,U2,“3,…,“^)表示信息序列,v一(口1, 2, 3,…, )表示编码后的序列,X一(z1,z2,lz3, …, )表示经过BPSK(二相相移键控)调制后的序 列,将 加入高斯白噪声信道后,信道输出序列为 Y一( , z,Y。,…,Y ),再将Y送入译码器进行译 码,得到估计序列五一( , 。, 。,…,U )。 1)设R(. )表示与校验节点J相连的所有变量 节点的集合,即R( )={J:H 一1}; 2)设R( )\i表示除i以外与校验节点J相连 的变量节点的集合; 3)设C( )表示与变量节点i相连的所有校验 节点的集合,即C( )一{i:Hi 一1); 4)设C( )\J表示去除J后与变量节点i相连 的校验节点的集合; 526 飞行器测控学报 第32卷 5)设 ,,表示变量节点i传给校验节点 的外 部概率信息,即在得到除J以外的其他校验节点和 信道外部信息后,判断变量节点 一1的概率。 R ===, P( 一1 1 32 k∈c( )\ ) 其中R 是校验节点J传给变量节点i的外部概 率信息,即在给定信息位及其他信息位具有概 率分布条件下,校验方程J满足的概率。 类似地,P 一P,( 一1 J Y )表示接收到Y 后判 断发送比特 一1的后验概率。 假设存在一个二进制序列a:(n ,a ,a。,…, a ),其中P(a^===1)一P 引理:一个的比特序列,其长度为m,假设 第i个比特为1的概率为P ,则整个序列中出现偶 数个1的概率为 专+告Ⅱ(1 1 1—2p ) i一0 出现奇数个1的概率为 1 1 m 专一告Ⅱ(1—2p ) i一0 这是信道编码领域中经常使用的一个定理,可直接 使用。 定理(Gall .o.er定理):对于( ,J, )规则LDPC 码,P 代表第i个校验方程中第z个校验比特的值 为1的概率,则 PL 一0 l Y,s] 丽 其中 P[z =0IY,s]表示在校验方程组为s,接收 序列为Y的条件下,判断发送帧中的第i个比特为0 的概率;P[z 一l l ,S]表示在校验方程组为s,接 收序列为 的条件下,判断发送帧中的第i个比特 为1的概率;P 表示发送序列的第 位为1的先验 概率,则南Gallager定理可知 l== 1Ⅱ(1—2P , ) u i ∈R(J)\ R 一, 告+告Ⅱ(1—2 P , ) i ER( )\z 则 Q , 一P ⅡR , Q 一(1一P )II Ro, 由上可以推出BP算法的译码步骤如下l_9。 : 1)初始化。 计算信道传递给变量节点的初始概率P (1), P (0)一1一P (1),对每个变量节点i和与其相连 的校验节点J的初始信息为 Q: (0)一P (0) Q (1)一P (1) 2)校验节点消息更新。 对所有的校验节点J和与其相邻的变量节点i,P 在第m次迭代时,消息更新如下 R (o)一 1+告lI(1~2Ⅱ Q: ”(1) i ∈R( )\ R (1)一告 Ⅱ(1—21 Q ( —1 1)) i ∈R(j)\i 3)变量节点消息处理。 百 Q (0)一kuP (0)ⅡR; (0)J∈C(i)\ 、 一、 一一 Q (1)一kuP (1)ⅡR (1) JE(、(t) 其中k 是使Q (0)+ ’(1)一1的值。 4)译码判决。 Q ’(o)一kiP (0)II R (o) Ec(z)、7 Q (1)=kiP (1)ⅡR (1) JE(’(z) 其中 志 是使Q (0)+Q (1 一1的值。若 (O)> (1),则判断第i个变量节点 一0,否 则为1。 5)停止译码。 计算伴随式z H 一0则译码成功,否则继续迭 代直到预定的最大迭代次数。 2.2 LLR—BP译码算法 将BP算法从概率域转换到对数域中,定义变 量节点i的先验概率似然比为 L(P )===In 校验节点J传向变量节点i的消息为 ) 瓮 变量节点i传向校验节点J的消息为 ln器 再由 tanh(÷ln( 。/pt))一1—2p1 则校验节点的消息更新式为 L( z)一2 tanh- (、 1 Ri E (J)\z7 t anh(\ 丢L(Qi,j))) 第6期 李红梅,等:CCSDS近地LDPC译码算法研究 LLR—BP译码算法译码步骤如下: 1)初始化。 L(Q )一ln 2)校验节点消息更新。 JL Rm )一2 tanh- ∈I]7R(j tiiI )\ 、anhi( 专L( )) 3)变量节点消息更新。 gm…,)一L(P )+ L(R m) JEc(z)\7 4)译码判决。 L(Q )一L(P )+ L(RZ ) j∈C(f) f 1 L(Q )<0 1 0 L(Qm)≥0 2.3最小和译码算法 最小和译码算法将tanh(-z)做了近似,进一步 降低了译码算法的复杂度,其他步骤不变,则校验节 点消息更新变为 L(Rz )一II sgn(L( ̄ ))・min(I L(Q )1) i ∈R(J)\ 3改进译码算法 3.1偏移最小和译码算法 最小和译码算法在L(R )取近似值时,其近似 值是高于实际信息值的,因此引入一个偏移量因子 』9,当近似值小于J9时,将信息值设置为0;当近似值 大于卢时,将信息值统一减去卢,使其更接近真实值, 校验节点消息更新式为 L(RJ, )一II sgn(L(Q, ))・max{arinl L(Q. )I—fl,o} ∈R( ) 3.2归一化最小和译码算法 归一化最小和算法通过将1个归一化因子,即 1个小于1的正常数a乘以水平运算中的结果,以 使修正后的值更加接近最小和近似前的值。校验节 点消息更新式变为 L(Rj, )一口Ⅱsgn(L(Q ̄. )・mi 胁 1 L(Q, )1 i ∈R(J)\ 4译码算法性能分析 4.1译码复杂度分析 对于一个码率为1/2的(N,),,27)LDPC码(), 为列重,2y为行重)进行译码复杂度分析。表1~5 是针对BP译码算法、LLR—BP译码算法、最小和译 码算法以及最小和译码算法的2种改进算法迭代一 次所需要的运算量,即运算复杂度的分析。 表1 BP算法一次迭代的译码复杂度 Tab.1 Complexity of BP decoding algorithm 操作数 运算次数 R , 2Ny 次加法,2Ny 次乘法 R . Ny次加法 Q . NT(2+y)次乘法,N7次加法 Q . N7(1+y)次乘法 Q? Ny(2+y)次乘法,N次加法 N(2+),)次乘法 表2 LLR—BP译码算法一次迭代的译码复杂度 Tab.2 Complexity of LLRBP decoding algorithm 操作数 运算次数 tanh(z)一鬲eX e x 2N),(2y一1)次加法, Ny(2y一1)次除法 4N7(2),一1)次指数 L(R ) Nr次对数 L(Q ) M 次加法 L(QI) N(1+y)次加法 表3最小和译码算法一次迭代的译码复杂度 Tab.3 Complexity of minsam decoding algorithm ~操作数 运算次数 L(R…) N(23,+l。g 2),一2)次加法 L(Q ) Nr 次加法 L(Q,) N(1十 )次加法 sgn(L(R )) Ny(),一1)次计算符号 表4偏移最小和译码算法一次迭代的译码复杂度 Tab.4 Complexity of offset minsum decoding algorithm 操作数 运算次数 (2y+logz2’,一2)次加法 Nr(7—1)次计算符号 Ny(),一1)次求最小值 N7(),一1)次求最大值 NZ 次加法 N(1+y)次加法 528 飞行器测控学报 第32卷 表5 归一化最小和译码算法一次迭代的译码复杂度 Tab.5 Complexity of normalized minsum decoding algorithm 操作数 运算次数 L(R )  ̄-(2y+1。gz 27—2)次加法 sgn(L(R )) Ny(y一1)次计算符号 。Ⅱsgn(L(Q;,,)) Ny(7—1)次乘法 i ∈R(J)\ L(Q ) N7。次加法 L(Q,) N(1+),)次加法 从上述译码复杂度的表格可以看出,BP译码算 法、LLR—BP译码算法以及最小和译码算法译码复 杂度依次降低;最小和译码算法的改进算法在最小 和译码算法的基础上加人了比较或乘积运算,但译 码复杂度并没有显著上升。 4.2 CCSDS近地LDPC标准数据帧格式 CCSDS近地LDPC码的帧标准数据格式由帧 头1ACFFC1D,7 136 bit信息位,1 022 bit校验位 以及2 bit虚拟填充位组成(如图2所示)。 32 biI帧头 8 160 bit码宁 帧头 I 7 136 biI信息位 。 it校验位 i 虚拟填充位 I I图2 CCSDS近地LDPC标准传输帧格式 Fig.2 Transmission frame of CCSDS near-earth LDPC 4.3译码性能分析 基于对CCSDS推荐的(8176,7154)LDPC码进 行准循环编码,并进行BPSK调制,在AwGN信道 中进行传输,分别采用BP算法、LLR—BP算法、最 小和及其改进译码算法进行译码。分析译码参数对 译码算法性能的影响,并对以上几种译码算法的性 能进行对比,遴选出适用于近地I DPC标准、可用 于工程实现的译码算法。仿真模型及译码流程分别 如图1和图3所示。 4.3.1 迭代次数对译码性能的影响 对(8176,7154)I DPC码采用和积译码算法,最 大迭代次数分别设置为1、2、5、10、100,观察迭代次 数对译码性能的影响(见图4)。 仿真结果表明,在1O次以内增加迭代次数,译 码性能有显著提高;当迭代次数增加到10次以上, 再增加迭代次数,译码性能提升不再显著,而译码复 杂度会随着迭代的次数增加而显著增加。 图3译码流程图 Fig.3 Decoding flow chart 留 信噪 ̄LhiB 图4迭代次数对性能的影响 Fig.4 Influence of iteration times on performance 4.3.2置信度译码算法的性能 采用近地I DPC标准编码数据帧格式,数据量 10 Mbyte,每帧1 024 byte,经过BPSK调制、 AWGN信道传输,迭代次数设置为1o次,分别采用 BP算法,LI R BP算法,最小和译码算法进行译码, 对比这几种译码算法的性能(见图5)。 第6期 李红梅,等:CCSDS近地LDPC译码算法研究 529 图5译码算法的性能对比 Fig.5 Performance of three decoding algorithms 译码结果表明,BP译码算法与LLR—BP译码 算法的译码性能距离香农限相差1.2 dB,最小和译 码算法距香农限相差1.45 dB,最小和译码算法牺 牲译码性能换取译码复杂度的降低。 4.3.3改进译码算法的性能 1)偏移最小和译码性能。 采用与上述相同的数据帧格式,分别用最小和 译码算法及偏移最小和译码算法进行译码,当偏移 因子 ===0.15时,偏移最小和译码算法性能达到最 优,译码结果如图6所示。 图6偏移最小和译码算法性能 Fig.6 Performance of offset minsum decoding algorithm 结果表明,偏移最小和的译码算法距离香农限 1.25 dB,性能比最小和译码算法提高0.2 dB。 2)归一化最小和译码算法。 采用与上述相同的数据帧格式,分别采用BP 译码算法及归一化最小和译码算法进行译码,当归 一化因子a一0.741 2时,归一化译码算法的译码性 能达到最优。译码结果如图7所示。 结果表明,归一化最小和译码算法性能距离香 农限1.2 dB,比最小和译码算法提高0.25 dB。 继 謇 图7 归一化最小和译码算法性能 Fig.7 Performance of normalized min—sum decoding algorithm 5 结 论 本文对BP译码算法、LLR—BP算法以及最小 和译码算法及最小和译码算法的改进算法进行了建 模与仿真分析。BP译码算法、LLR~BP算法以及最 小和译码算法的译码复杂度依次降低,译码性能也 依次降低。LLR—BP译码算法将乘法操作变为了加 法操作,但是引入了指数操作和对数操作,译码复杂 度仍然不适用于工程实现。最小和译码算法将BP 译码算法进行简化,只有实数加法操作,大大降低了 译码复杂度,但是译码性能也较BP译码算法下降 0.25 dB。 偏移最小和译码算法译码性能距离香农限 1.25 dB,译码性能较最小和译码算法提高0.2 dB; 迭代一次,只在最小和译码算法的基础上增加 N7(7--1)次求最大值操作,译码复杂度没有显著 上升。 归一化最小和译码算法译码性能距离香农限 1.2 dB,译码性能较最小和译码算法提高0.25 dB; 迭代一次,只在最小和译码算法的基础上增加 N7(y--1)次乘法操作,译码复杂度也没有显著上 升。 综上,归一化最小和译码算法的译码性能最优, 且具有合理的译码复杂度,适用于CCSDS近地 LDPC译码的工程实现。 参考文献(Re{erences) [1] CCSDS 131.卜O一2 Lowdensity parlty check codes{or use in near-earth and deep—space applications:earth stations and spacecraftIS ̄.Washington D.C.:CCSDS Secretariat,2007. [2]CCSDS 0.0-O-1 Low Density Parity Check Code for Rate 7/8 530 飞行器测控学报 第32卷 [s].Washington D.C.:CCSDS Secretariat,2005. [3] CCSDS 1 30.1-G一2 TM synchronizati0n and channel coding [s].Washington D.C.:CCSDS Secretariat,2012. [4] CCSDS 131.0 13-2 TM synch∞nization and channel coding [s].Washington D.C,:CCSDS Secretariat,2011. [5]Chung Sac Young.On the design of low—density parity check codeswithin 0.0045dB of the Shannon limit[J].IEEE Com— munications I etters,2001.5(2):58-6O. [6]Li Zongwang,Chen Lei,Lin Shu.Efficient encoding of qua— si—cyclic low—density parity—check codes[J].IEEE Transac— tions on CommunicationS,2006,54(1):7卜81. [7] Gallager R G.Low density—parity dheck codes[J].IEEE Transaeti0n on Information Theory,1962,8(1):21-28. [8]Tanner R M,Sridhara D,Sridharan A,et a1.LDPC block and convolutional codes based on eirculant matrices[J].IEEE Trans— actions on Information Theory,2004,50(12):2966—2984. [9]Fossorier M P C.Quasi cyclic low densitY parity check codes from circulant permutation matrices[J].IEEE Transactions on Information Theory,2004,50(8):1788—1793. [1O] L n s,Costello D j.差错控制编码[M].晏坚,何元智,潘亚 汉,等,译.北京:机械工业出版社,2007. Lin Shu,Costello D J Jr.Error control coding[M],Transla— ted by Yan Jian,He Yuanzhi,Pan Yahan,et a1.Beijing: China Machine Press,2007(In Chinese). [11] 贺鹤运.LDPC码基础与应用[M].北京:人民邮电出版社, 2009. He Heyun.LDPC codes fundamentals and applications[M]. Beijing:Post&Telec0m Press.2009(In Chinese). [12] 王新梅,肖国镇.纠错码一原理与方法[M].西安:西安电子 科技大学出版社,2009. Wang Xinmei,Xiao Guozhen.Error correcting code-princi— pies and methods[M].Xi’an:Xidian University Press,2009 (In Chinese). (本文编辑:姚旭)