LDPC编码

2024-08-28

LDPC编码(通用7篇)

LDPC编码 篇1

摘要:为了提高无线通信系统的可靠性,将协作通信技术和空间分集技术都引入到传统的信道编码系统中,提出了更高质量的无线传输方法。采用全盲瑞利信道来模拟实际的无线通信环境,用自适应算法LMS和RLS分别对信道进行估计,并比较2种算法的收敛特性。理论分析和仿真均表明,在原有的仅采用信道编码技术的基础上,提出的新传输方法能使无线通信系统获得更高的可靠性。

关键词:LDPC码,协作通信,空间分集,信道估计

0 引言

先进的信道编码技术(Turbo码、LDPC码)是未来宽带无线通信传输中必须采用的关键技术之一。LDPC码是迄今为止试验中最为接近Shannon极限的信道编码。

协作通信作为一种有效提高无线链路可靠性的技术受到广泛的关注,它利用无线通信的广播特性,一次发送使得多个协作节点接收信号并进行中继转发,从而获得虚拟的空间分集。

空间分集技术能抵抗多径衰落。最常使用的分集合并技术有:切换合并、选择式合并、等增益合并和极大比合并。在这4种合并方式中,极大比合并的性能最好。

现有的研究工作一般都是将信道编码技术、协作通信和空间分集技术分开或者将其二联合运用到无线通信系统中,例如文献[6]就是将信道编码技术和协作通信联合运用。本文将三者统一运用到无线传输系统中,在全盲瑞利信道下对提出的系统进行误码率性能的仿真,相比文献[6]中的LDPC编码协作系统,本系统能获得更高的传输可靠性。

1 LDPC系统码

LDPC码是一类特殊的(n,k)线性分组码,其校验矩阵Η中绝大多数元素为0,只有少部分为1。LDPC码分为正规码和非正规码。其中有一类特殊的非正规码叫做系统码,其校验矩阵满足以下形式:

ΗΜ×Ν=[AΙ]=[h1,1h1,2h1,Ν-Μ100h2,1011110hΜ,1hΜ,Ν-Μ001](1)

式中,矩阵A的每一行和每一列的1的个数是常数。用A(M,N,dv,dc)表示一个系统码,MN分别表示校验矩阵H的行数和列数,dv和dc分别为矩阵A的列重和行重。

所谓系统码是指编码后的码字当中包含信息序列,系统码的一个优点是译码完毕后直接就得到了信息位,而非系统码译码后还需要根据码字找出相应的信息序列。因此,为了译码时更加简单方便,采用非正规LDPC系统码来对信道进行编码。

2 协作通信

首先将协作通信引入到信道编码后,得到如图1所示的LDPC系统码编码协作通信系统模型。由于系统码的特殊性,在中继节点处,编码器2从译码器1的输出序列中取出信息位进行编码,得到码字LDPC2并向目的节点发送其校验位。而不是将译码器1得到的整个码字作为信息序列进行编码,然后将经编码器2编码得到的码字发送给目的节点。

该系统中只有1个中继节点,是最简单的中继信道。中继节点有3种转发方式:放大转发、检测转发和编码协作转发,其中第3种转发方式具有比前2种更优越的性能,它是信道编码技术和协作通信技术有机融合的产物。本文即采用第3种性能最优越的转发方式,先解码再转发。

协作通信系统的LDPC联合迭代译码是基于双层Tanner图的,具体译码过程可参考文献[6]。为了清晰地表示出系统添加后续的空间分集技术后,初始化将如何变化,此处将协作编码系统的第1、2层的初始化信息写出来:

f1n(i)=Ρr(dn=i|rl|l=1Ν)=11+exp(2arn/σ2), (2)

f2n(i)=Ρr(dn=i|rn|l=Ν+1Ν+Μ2)=11+exp(2arn/σ2), (3)

式中,a是发送符号,i=0时a=1,i=1时a=-1,rn是第n时刻接收器接收到的信号,σ2和σ″2分别是S-D信道和R-D信道的加性高斯白噪声的方差。

3 空间分集

空间分集就是采用多根接收天线来接收信号,然后进行合并。为保证接收信号的不相关性,要求天线之间的距离足够大,这样做的目的是保证了接收到的多径信号的衰落特性不同。在理想情况下,接收天线之间的距离只要波长λ的一半就可以了。

接收端采用分集技术的无线传输系统如图2所示,它的发送端包含1根天线,接收端包含m根天线。它其实是1种特殊的多输入多输出(MIMO)信道模型,即SIMO模型:

r=ah+n, (4)

式中,a是发送符号,它通过瑞利信道h=[h1,,hm]Τhi(i=1,2,,m)表示各个子信道的增益,服从复高斯分布,n是信道的加性高斯白噪声。

本文采用性能最好的极大比合并方式,它其实是无记忆SIMO信道的MMF滤波的另一种名称。合并之后的信息y表达为如下:

y=∑ih*iri=h*r。 (5)

将式(4)代入上式,得到:

y=h*r=h2a+n˜, (6)

其中,n˜=h*n是满足E[|n˜|2]=Ν0h2的复高斯随机变量。

因此,将极大比合并运用到编码协作通信系统后,初始化的式(2)、式(3)应作如下变化:

f1n(i)=Ρr(dn=i|rl|l=1Ν)=11+exp(2arn/(σ2h2)), (7)

f2n(i)=Ρr(dn=i|rn|l=Ν+1Ν+Μ2)=11+exp(2arn/(σ2h2))。 (8)

4 信道估计

4.1 采用信道估计的框架模型

以上部分的分析都是基于信道已知的条件下进行的,而实际情况中瑞利信道一般都是未知的,即是盲信道。此时,接收端就不能采用匹配滤波器(MF)来滤波,必须采用自适应滤波的方法来对信道先进行估计再滤波。下面详细介绍2种自适应算法。

4.2 最小均方(LMS)算法

接收端的LMS自适应滤波器如图3所示。

定义k时刻的误差矢量:

Ek=Ak-cTrk。 (9)

k时刻滤波器的平方误差的模为:

|Ek|2=|Ak|2-2Re{Ak(c*r¯k)}+c*(r¯krkΤ)c。 (10)

对上式求c(k)方向的梯度为:

|Ek|2=2(r¯krkΤ)c-2Akr¯k=2r¯k(rkΤc)-2r¯kAk=-2r¯k(Ak-r¯kΤc)=-2Ekr¯k(11)

根据自适应滤波的LMS算法原理,滤波器的滤波系数按下面的式子迭代:

c(k+1)=c(k)-β2c(k)|Ek|2=c(k)-β2(-2)Ekr¯k=c(k)+β(Ak-cΤrk)r¯k=c(k)+βAkr¯k-β(r¯krkΤ)c(k)=[Ι-β(r¯krkΤ)]c(k)+βAkr¯k(12)

LMS算法步骤总结如下:

① 输入长度为N的训练序列;

② 初始化滤波器系数c(0)=0;

③ 利用迭代公式(12)迭代N次求出c(Ν+1),将之作为最优的滤波器系数;

④ 利用已计算得到的c(Ν+1)来估计后面的M个进入滤波器的信号。

y(k)=(c(Ν+1))Τrk,k=Ν+1,Ν+2,,Ν+Μ。 (13)

4.3 递归最小二乘(RLS)算法

LMS算法在迭代过程中采用瞬时梯度估计统计梯度,虽然在平均意义上收敛于统计梯度,但由于调整过程中的瞬时偏差较大,导致收敛较慢。为了克服这一缺点,可采用递归最小二乘算法(RLS),使一段序列长度内期望信号与滤波器输出信号之间的误差信号的功率和最小。

定义k时刻的代价函数为:

ζk=i=0kλk-iei2=i=0kλk-i(Ai-riΤck)2, (14)

式中,λ为遗忘因子,取值范围在(0,1],随着时间的增加,越早的信息被忽略程度越大。

上式对ck进行求导,得到:

dζkdck=-2i=0kλk-ir¯i(Ai-riΤck)。 (15)

dζkdck=0,得到:

ckopt=[i=0kλk-ir¯iriΤ]-1i=0kλk-ir¯iAi=RD-1(k)pD(k), (16)

式中,RD(k)=i=0kλk-ir¯iriΤpD(k)=i=0kλk-ir¯iAi

根据矩阵求逆引理:

[A+BCD]-1=A-1-A-1B[DA-1B+C-1]DA-1。 (17)

分别令A=RD(k-1)B=r¯kC=1λD=rkΤ,可得到:

RD-1(k)=1λ[RD-1(k-1)-RD-1(k-1)r¯krkΤRD-1(k-1)λ+rkΤRD-1(k-1)r¯k], (18)

再将pD(k)=i=0kλk-ir¯iAi变换成:

pD(k)=λpD(k-1)+Akr¯k。 (19)

RLS迭代过程可以总结如下:

① 初始化,令pD(0)=0RD-1(0)=δ-1Ιδ是个很小的数;

② 根据式(19)更新RD-1(k)pD(k),达到训练长度后根据式(17)得ckopt;

③ 利用已计算得到的ckopt来估计后面的M个进入滤波器的信号:

y(k)=(ckopt)Τrk,k=Ν+1,Ν+2,,Ν+Μ。 (20)

5 仿真结果及分析

本节通过数值模拟研究2种不同自适应算法下的编码协作系统的误比特性能,比较2种算法的收敛特性。然后,研究分集数目对系统性能的影响。最后,将提出的采用分集技术的LDPC编码协作系统和传统的信道编码系统进行性能比较,得出结论。

假定协作通信系统中的信道相互独立且均为平坦瑞利慢衰落信道,由于信号的衰减和传播的距离成正比,S-D信道的距离大于R-D信道的距离。仿真中,设S-D信道的信噪比SNRS-D比R-D信道的信噪比SNRR-D小2 dB,即SNRS-D=SNRR-D-2 dB。仿真图中横坐标为SΝRS-D=10lg(1σS-D2),单位为dB,信号平均功率为1 W。纵坐标为误比特率,它是错误比特数与传输比特数之商。协作通信分为理想协作和非理想协作,区别在于前者中继节点对源节点发送的码字译码正确,而后者不然。在不失仿真结论的一般性下,为了模拟的方便,采用理想协作通信。

5.1 收敛特性的比较

在采用LMS算法和RLS算法的系统中,源节点和中继节点都采用系统码(2 160,720,3,6)和系统码(1 920,480,2,6),分集数目m=2。针对2种算法,保持其他条件的不变,只改变迭代次数,得到如图4所示。

观察上图,随着迭代次数的增加,系统的性能得到改善。很显然,下半部分图中曲线的收敛速度快于上半部分图中的曲线。因此,RLS算法的收敛特性优于LMS算法的收敛特性。

5.2 分集数目对系统的影响

沿用上面部分的码字,采用性能最好的极大比合并,保持其他条件不变,只改变分集数目,分别对LMS算法和RLS算法进行模拟,得到的模拟结果如图5所示。

从图5中可以看出,不管采用何种自适应算法,随着接收天线数目的增加,系统的性能都会获得提高。进一步可以看出,从采用1根天线到采用2根天线时系统的性能改善最明显,随着天线数目的不断增加,性能的改善会逐渐饱和。

5.3 与信道编码系统的性能比较

最后,将完整的采用分集技术的编码协作系统与信道编码系统进行对比。信道编码系统中采用的LDPC码校验矩阵与联合校验矩阵一致,接收端分集数目都是m=2,仿真结果如图6所示。

从图6中可以看出,当分集数目和自适应迭代次数相同情况下,采用文中结构框架的通信系统误码率性能比仅采用信道编码的系统好。信噪比越高,性能改善越明显。

6 结束语

提出了采用空间分集的基于LDPC信道编码的协作通信方案,并且研究了不同的分集数目和自适应算法对系统的性能影响。提出的系统框架能较大地提高通信系统在全盲瑞利衰落信道下的误比特率性能。

参考文献

[1]袁东风,张海刚.LDPC码理论与应用[M].北京:人民邮电出版社,2008:72-77.

[2]BERNARD W,STEARNS S D著.自适应信号处理[M].王永德,龙宪惠译.北京:机械工业出版社,2008:69-79.

[3]HU Jun,DUMAN T M.Low Density Parity Check Codes Over Wireless Relay Channels[J].IEEE Transaction on Wireless Communications,2006,24(11):2040-2050.

[4]PROKIS J G.Digital Communication(Third Editon)[M].American:McGRAw-HILL International Edition,1995:538-544.

[5]HUNTER T E,NOSRATINIA A.Cooperation Diversity through Coding[J].Information Throry,2002,7:220-225.

[6]ZHANG Shun-wai,YANG Feng-fan,PENG Zong.LDPC-coded Cooperative System Based on Joint Iterative Decoding[J].Journal of Southwest Jiaotong University,2011,46(3):469-487.

[7]CHEN Jing-wen,YANG Feng-fan,LUO Lin.Accelarating BP-based Iterative Low-density Parity-check Decoding by Modified Vertical and Horizontal[J].Journal of Southwest Jiaotong University:English Edition,2009,17(4):275-282.

LDPC编码 篇2

关键词:LDPC码,快速跳频,分集合并,部分频带干扰

一、引言

快速跳频通信系统通过分集和接收端采用不同的合并方法来抗部分频带干扰,但是单纯的分集合并并不能达到数据通信10-5的误码率要求,而且由于系统存在非相干合并损失,随着分集数L的增大误码性能下降,甚至达不到10-3的语音通信的误码率要求。人们经常采用分集和纠错码联合编码的方法来进一步提高快速跳频通信系统的抗干扰性能。

LDPC(Low Density Check Codes)码是继Turbo码之后信道编码界的又一研究热点,最初是由Gallager[1]在1962年时提出的,但是由于当时计算机能力和相关理论的限制,使人们认为LDPC码是一种不实用的码,一度被人遗忘。随着1993年Turbo码的提出,人们发现应用迭代译码的Turbo码表现出优秀的性能,科学家们开始重新重视LDPC码,发现它可以比Turbo码更接近香农限。不规则的LDPC码甚至可以距离香农限只有0.0045d B。LDPC码是目前发现的最好的码。

本文分析了采用LDPC纠错编码的快速跳频通信系统的实现方法,通过仿真说明采用LDPC纠错编码的快速跳频通信系统能获得良好的误码性能,而且LDPC码和分集联合编码时存在一个最佳的组合。

二、LDPC码的编码[2,3]

LDPC码是一种由稀疏校验矩阵H来表示的线性分组码,也可以用二部图(Bipartite Graphs)来表示,其二者之间是一一对应的。假设稀疏校验矩阵H为M×N的矩阵,那么相应的二部图是由N个变量节点,M个校验节点以及一定数量的连接变量节点和校验节点的边组成的。其变量节点和校验节点是分别处在二部图中两边。图1和图2分别是长度为10的(3,6)规则的校验矩阵和所对应的二部图。

图2中圆圈表示变量节点,方框表示校验节点。从图中可以看出,M×N的校验矩阵H中的第m行第n列的元素Hmn为1时,对应于二部图中第n个变量节点与第m个校验节点相连。一个有效的码字向量(x1,x2,……,x N)表示在二部图中与每个校验节点相连的变量节点的校验和为零。由二部图定义的LDPC码就是所有使H.xT=0成立的向量x=(x1,x 2,……,x N)的集合。一个节点的度定义为图中与它相连的边的数目。一个(dv,dc)规则的LDPC码表示二部图中所有变量节点的度为dv,校验节点的度为dc,相应的校验矩阵H中所有的列重dv为所有的行重为dc,码率为1-dv/dc。

总的来说,LDPC码的编码关键在于校验矩阵H,无论采用怎样的方法来构造校验矩阵,都要求必须避免下面两种情况的出现:一是要避免长为4的环;二是要避免变量节点连接的校验方程过于集中。

三、LDPC码的译码方法[2,3]

LDPC码是基于二部图的和积译码算法(SPA,Sum Product Algorithm)或者置信度传播算法(BPA,Blief Propagation Algorithm),利用贝叶斯定理来迭代计算二部图中每条边上的后验概率或者置信。

为了描述译码算法,假设校验矩阵为H,则参与第m个校验方程的的信息比特集合表示为N(m)={n:Hmn=1};同样地,把第n个信息比特所参与的校验方程的集合表示为M(n)={m:Hmn=1};N(m)中除去比特m的集合表示为N(m)m;M(n)中除去校验方程m的集合表示为M(n)m。那么,假设在AWGN信道中,采用BPSK调制时的译码的过程如下[2]:

第一步:初始化

把第n时刻信道输出值xn的似然值分别赋给每一个满足Hmn=1的(m,n),q1mn和q0mn分别初始化为

第二步:从校验节点到变量节点的更新过程

第三步:从变量节点到校验节点的更新过程

利用第2部计算得到的r0mn和r1mn值来更新q0mn和q1mn值:

其中,mn为归一化参数,使得。这样每一次迭代后,就可以得到第n时刻的比特xn取值为0和1的后验概率值:

最后:判决

时,判决第n时刻比特xn=1。

时,判决第n时刻比特xn=0。

这样一直到所有的校验子都为0,即X·HT=0时译码成功,停止迭代;否则,此次译码失败,但是,当迭代次数小于最大迭代次数时,转到第2部继续开始迭代。如果上面的反复迭代次数达到了最大的迭代次数还没有译码成功,那么译码失败。

四、LDPC码和快速跳频系统的结合

当跳频通信系统中每个码元经历了多个频率跳变(L>1)时就是快速跳频通信,从信道纠错编码的角度来说就相当于采用了(L,1)重复编码,图4中我们把体现快速跳频特点的分集和分集合并两个模块单独表示出来。在仿真的时候假设信息传输速率为Rb,信息比特能量为Eb,Rb和Eb在系统中是恒定的。LDPC码的码率为Rc,那么编码后的码元能量Es=Eb*Rc,码元速率Rs=Rb/Rc,那么随着分集数L的增大,系统的跳速Rh就不断增大Rh=L*Rs,每一个码片的能量Eh=Es/L。当干扰因子为ρ时,那么实际信道中每一跳的综合信噪比为。

我们发现,采用对数域的LDPC码译码的初始值就是信道接收值的对数似然比1n(p(1)/p(0)),通过软值前面的符号是正还是负来体现出是发“1”概率大还是发“0”的概率大,软值的符号是关键。采用LDPC纠错编码的FFH/BFSK系统为了获得LDPC码译码的初始软值,可以有两种近似的处理方法:一是把上下两个支路分集合并后判决变量直接相减[4],二是把上下两个支路合并后的判决变量值相比后取对数[5,6]。通过这样的简化处理来得到带符号的软值形式,并把这样处理后的数值直接作为LDPC码的初始值进行迭代译码。采用这样的办法给LDPC译码赋初始软值时,LDPC码译码就不需要任何的信道信息,而且初始软值只和解调后的实际抽样值以及合并方法的选择有关,不需要进行任何的概率推导,系统实现的复杂度完全决定于合并方法和LDPC码译码的复杂度。通过仿真分析,这样近似处理后是完全可以进行正确的LDPC译码。

图5是两种软值处理方法比较。可见,采用平方率检测时,两支路合并后判决变量相除再取对数的办法系统的误码性能明显要好于采用两支路合并后判决变量直接相减的办法。所以,LDPC纠错编码的FFH/BFSK系统接收端采用平方率检测时应该选择取对数的初始软值处理方法,以后的仿真中我们也采用取对数的办法。

图6是码率为0.5的(3,6)规则LDPC码,码长N=256时,不同迭代次数时系统性能比较。可见,跳频系统采用短帧的LDPC码时,刚开始时随着迭代次数的增大,系统误码性能得到改善,但是当迭代次数大于一定次数之后(如图50次之后),再增大迭代次数已经不能明显改善其误码性能。因此,FFH/BFSK采用短帧LDPC码时其迭代次数设置为50次比较合适。

五、抗干扰性能仿真

图7和图8都是在码率为0.5的(3,6)规则LDPC码下,N=720,分集数L=2,采用不同的分集合并方法时,在干扰因子分别为0.7和1.0时的系统误码性能比较。从图中可以看出,系统采用乘积合并(PDC)[7]时误码性能最好,比值统计合并(RSC)[8]系统误码性能最差。当干扰因子为1时,采用自动增益控制合并(AGC)[9]和线性合并(EGA)[10]系统的误码性能是一样的,这是因为当所有的频带都受到干扰时,采用AGC加权和采用等增益加权(线性合并)是一样的。

可见,当快速跳频系统采用LDPC纠错编码时,系统的整体性能不再是完全由分集合并方法所决定,这是因为不同的分集合并方法下LDPC码所得到的初始软值是不一样的,乘积合并所得到的软值是最适合于LDPC译码的初始软值。其它情况下,线性合并生成的软值比自归一化合并(SNOR M)[11]生成的软值更适合于LDPC译码。因此,综合误码性能和复杂度考虑,采用LDPC纠错编码的FFH/BFSK系统较好的合并方法是乘积合并或者线性合并。

图9是LDPC码和分集联合编码的系统在总码率分别为0.4和0.25,干扰因子为0.7时系统抗部分频带干扰性能比较。结果表明,快速跳频通信系统采用低码率的LDPC编码时的误码性能要比采用高码率的LDPC码和分集联合编码时的系统误码性能好,有更强的抗干扰能力。这是因为,分集数L越大非相干合并损失的性能越多,快速跳频的重复编码不会带来编码增益[12],所以快速跳频通信系统采用单级的低码率的纠错码,末端采用一码一跳的形式会有更好的抗干扰性能。

图10比较了分集L=1,干扰因子为0.7,采用自归一化合并,系统在不同码率的LDPC编码下抗部分频带干扰性能。仿真结果表明了,采用LDPC纠错编码快速跳频通信系统,最好的码率是0.5。

图11是分集数L=2,线性合并,在不同的干扰因子条件下的误码性能比较。可见,采用LDPC纠错编码的快速跳频系统,当干扰因子小于0.1时对系统性能几乎没有影响。当干扰因子在0.1~0.3内变化时,系统误码性能变化较大,当干扰因子大于0.5之后系统性能几乎不会受到干扰因子变化的影响,有较好的适应性。

六、小结

本文分析了LDPC编码的快速跳频系统的具体实现方法,通过仿真分析说明了采用LDPC纠错编码的快速跳频系统,前一级采用乘积合并时有最好的抗干扰性能。在相同的系统总码率的基础上,采用单级的低码率的LDPC编码的系统要比采用高码率的LDPC码级联分集编码的系统有更好的误码性能。LDPC码应用于快速跳频系统应选择码率为0.5时有最好的性能,系统不宜采用过低的码率。仿真结果表明采用LDPC编码的快跳系统的干扰因子大于0.5之后系统性能就不会随着干扰因子的增大而出现较大的变化。

参考文献

[1]R.G.Gallager,“Low-Density parity-check codes”,IRE Trans.Inform.Theory,1962.

[2]曹海燕,李君,韦岗.低密度校验码(LDPC码)[J].电路与系统学报,第13卷第2期,2008.4.

[3]王琳,徐位凯.高效信道编译码技术及其应用[M].北京:人民邮电出版社,2007.4

[4]Xiao-Yu Hu,Evangelos Eleftheriou,and D.M.Arnold.Regular and Irregular progressive Edge-Growth Tanner graphs[J].IEEE Transactions on information theory,VOL.51,NO.1,JAN.,2005.

[5]Li-Der Jeng,Shun-Sheng Lee,Chung-Hsuan Wang,and Fang-Biau Ueng.Low Density Parity Check codes for FFH/BFSK systems with partial band noise jamming[J].IWCMC’06,July2006.

[6]Li-Der Jeng,Jen-Hou Huang,and Chung-Hsuan Wang.Performance of Low Density Parity Check coded FFH/BFSK systems under band multione jamming[J].IWCMC’07,AUG.12-16,2007,Hawaii,USA.

[7]Ye-Shun Shen and Szu-Lin Su,Performance analysis of an FFH/BFSK receiver with product combining in a fading channel under multitone interference.IEEE Trans.On Wireless COMMU.VOL.3,NO.6,NOV.2004.

[8]Ye-Shun Shen and Szu-Lin Su,Performance analysis of an FFH/BFSK reciever with ratio statistic combining in a fading channel with multione interference.IEEE Trans.COMMU.VOL.51,NO.10,OCT.2003.

[9]Jhongs.LEE,Leonard.E.Miler,Young K.KIM.Probability of error analyses of a BFSK frequency Hopping system with diversity under partial-band jamming interference partⅡ:performance of square-law nonlinear combining soft decision receivers[J].IEEE Trans.On COMMU.,VOL.12,DEC.1984.

[10]Jhongs LEE,Robert.H.FRENCH,Leonard.E.Miller.Probability of error analyses of a BFSK Frequency-hopping system with diversity under partial-band jamming interference-partⅠ:performance of square-law linear combining soft decision receiver[J].IEEE Trans.On COMMU.,VOL.32,NO.6,JUN.1984.

[11]Leonard.E.Miller,Jhongs.LEE,Arman P.Kadrichu.Probability of error analyses of a BFSK frequency hopping system with diversity under partial-band jamming interference partⅢ:Performance of a square-law self-normalizing soft decision reciever[J].IEEE Trans.On COMMU.,VOL.34,NO.7,JULY1984.

LDPC编码 篇3

关键词:无线通信,密度进化,高阶调制,非均等保护

0引言

LDPC码及其逼近香农限的性能和低复杂度的并行译码结构[1],成为当前信道编码领域最受瞩目的研究热点之一。目前,下一代卫星数字视频广播标准DVB-S2[2]、移动通信和深空通信[3]等领域均采用了基于LDPC码的编码方案。

与文字信息不同,图像信息的存储和传输需要较大的容量和宽的传输信道,因此为了实现无线通信系统中功率和频谱的高效应用,LDPC码和高阶调制的联合成为一种趋势。各种LDPC码联合高阶调制的方案被提了出来,如Lu等提出了分层( Mul- tilayer) 方案[4],Tan等提出了差分调制方案[5],Ahn等提出了自适应调制编码方案[6],裴中威等提出了比特交织( BICM) 改进方案[7],Smith等提出了根状( Root-Like) 比特映射方案[8]等。然而,在这些方案中,均假设迭代译码的初始消息为信道平均信噪比, 没有结合高阶调制符号中并行比特子信道特点,所以这些方案的理论信道容量和实际信道容量存在差距,尤其在高阶或短码的情况下。本文将高阶调制符号经历信道等效为一组并行比特子信道,并推导了并行子信道条件下的高斯近似密度进化算法。

对于LDPC码编译码的研究,一般都设定所有输入信息比特具有相同的重要性。然而,在实际通信系统中,由于不同的数据重要性是不同的,因此需要加以不等差错保护[9]。例如本文中图像经SPIHT编码形成的码流的重要性是不相同的,码流前面的比特流对错误敏感且对图像重构起非常重要的作用,需要作重点保护[10,11]。非规则LDPC码各节点的度并不相同,度数高的节点可以从相邻校验节点获得更多的信息,从而可以更加准确地译码,所以非规则LDPC码本身具有不等保护特性。本文提出了一种信源信道联合编码方法,利用密度进化方法对非规则LDPC码的度分布进行优化,设定要达到的目标错误概率Pe,同时重要比特信息满足某一个错误概率P。

1 LDPC码的编码调制系统

1.1系统描述

由于无线通信中广泛采用Gray映射矩形多进制正交幅度调制( MQAM) 星座图。因此,本文以Gray映射矩形MQAM调制为例。 假设信息序列u = { u1,u2,…,uM} 经过LDPC编码后生成码序列c = { c1,c2,…,cM} 。在进行MQAM调制时,先将码序列进行成组,每组包含q比特,再对每组进行格雷映射,映射到Q维星座b = { b1I,b1Q,b2I,b2Q,…,bIq / 2, bqQ/ 2} 的某一点上。本文设定为高斯信道,经过信道传输,接收值为y =x+n,x为发送的经过LDPC编码和MQAM调制后的符号; n表示均值为0、方差为 σ2的复高斯白噪声。

1.2并行比特子信道模型

由于格雷映射可以分为I和Q两路,并且I、Q两路是独立映射的,所以只考虑I路的情况。设接收到的MQAM信号为r = x + jy ,解调产生的软判决信息为比特对数似然比( LLR) ,它代表了比特的软判决可靠性,映射到I路的比特bkI,k = 1,2,…, ( log2M) / 2的LLR定义为:

式中,{ xm1,xm2,…,xmq / 2} 和{ xn1,xn2,…,xnq / 2} 分别为I路映射中,符号第k位为0和为1对应的坐标值。以64QAM为例,得到LLR值简化计算公式[12,13]:

式中,i = { ±1,±3,±5,±7} 表示I路星座点坐标值; K = 1 /2σ2。由于高斯近似( GA) 算法分析所需的只是绝对值的统计平均,计算平均值得到mb1= 16K = 8 / σ2、mb1= 8K = 4 / σ2和mb1= 4K = 2 / σ2。

64QAM的平均符号能量Es= 42,每个符号对应的比特数M = 6,所以平均比特能量Es= Eb/ M = 7。 得到平均比特等效LLR BP译码的初始消息为:

上式表明,MQAM符号中不同比特的软判决可靠性不同。本文将调制符号中不同比特所经历的信道等效为一组并行比特子信道。为了提高系统的整体误码性能,将编码调制视为一个整体,接收端联合调制和译码框图如图1所示。Cxyq表示信源S与接收端Y之间的信道增益,Cbi表示MQAM的第i比特与Y之间的比特子信道,dvi( 2 ≤ i ≤ L) 表示变量点度。MQAM解调输出信号作为LDPC码译码器的初始输入信息,采用置信传递译码算法可恢复信息序列。

2基于MQAM调制的LDPC码高斯近似分析

设总的边数为E,变量节点数为n,dv表示为最大变量节点的度数,cv表示为抗噪声性能最好的子信道,ai,j表示分配到第j个子信道且度数为i的变量节点占总变量节点的比例,λi,j表示与分配到第j个子信道且度等于i的变量点相连的边占总边的百分比,mul- 1表示第l-1次迭代从校验节点传递到变量节点消息的均值,mi,jl表示在第l次迭代时,分配到第j个子信道且度等于i的变量节点传递到校验节点的消息均值。下面推导并行比特子信道下高斯近似密度进化算法。

2.1计算变量节点到校验节点对数似然比( LLR) 消息的均值

第l轮迭代时,度( i,j) 变量点传递到校验点消息均值为:

式中,mi表示MQAM符号中第i比特所经历信道的初始对数似然比均值

2.2计算校验节点到变量节点消息的均值

第l轮迭代时,度( i,j) 校验节点消息均值的进化为:

式中,

在译码过程中,消息概率密度在变量点和校验点之间反复迭代。第l次迭代后,译码器输出消息的错误概率为:

每个变量点输出消息的错误概率为:

变量节点排列示意图如图2所示。

将变量节点按照图2的方式排列得到比率为t对应的错误概率,

定义一个噪声门限值 σ*,当 σ*>σ 时,迭代一定次数后,mvl将趋于一个稳定值; 当 σ*<σ 时,迭代一定次数后,mvl将趋于无穷大,此时pml的值趋于零,所以通过GA找到 σ*。使用上面的算法,不仅可以确定LDPC码的门限,而且可以找出高斯信道条件下好的度数分布。

3 LDPC码的信源信道联合编码

SPIHT算法和基于LDPC码不等差错保护相结合的联合编码方法流程如图3所示。

LDPC码的信源信道联合编码方法的具体步骤如下:

1信源编码部分采用小波SPIHT编码算法, SPIHT的编码码率为0.4 bpp,小波分解参数为3级。 由于SPIHT编码算法编码出来的比特的重要性沿码流呈递减的趋势,即越靠前的比特越重要,从而为与信道编码结合实施不等差错保护提供了良好的先天条件。编码时将重要的信息比特对应度数高的节点,非重要信息比特对应度数低的节点,以提高通信的可靠性。 SPIHT编码的初始阈值n0= ? log2( max( abs( ci,j) ) ) 」,其中ci,j为小波系数。选定阈值n = 6时编码出来的比特为重要比特,它所占的比例为t= 0.235 8。

2给定总的信道编码码率R = 0.5,设置变量节点度的个数为5,它的最小值和最大值分别为dmin= 2和dmax= 20。最大迭代次数lmax= 100,信道参数的初始值 σ = 4,要达到的目标错误概率为Pe= 1. 0 × 10-6,重要比特部分满足错误概率为P = 1.0×10-50, 给定以上条件,采用文献[14,15]所给方法实现编码调制系统下LDPC码的度分布优化。

3假设长度为N的LDPC码字c被映射到N /6个64QAM符号上,将这些符号的比特位置排列为b = { b1I,b1Q,b2I,b2Q,b3I,b3Q} ,c中变量节点重新排列后逐比特映射到b,然后将它分为k = 3个通信子信道, 它们的初始译码BP对数似然比值为m1、m2和m3。

4仿真结果分析

方法1: 未进行比特子信道划分,迭代译码时初始译码BP对数似然比值采用平均信噪比,利用密度进化对LDPC码的度分布进行优化设计时,针对SPIHT码流的特点,使重要比特部分误码率达到某一要求; 方法2: 对比特子信道进行了划分,每个子信道对应不同的初始消息对数似然比; 方法3: 进行了比特子信道划分,并且重要比特部分误码率满足某一要求。64QAM调制下的各个变量节点度分布如表1所示。

仿真中采用的LDPC码的码率为1 /2,校验矩阵的大小为( 504,100 8) ,选取了信噪比为6.5 d B时,3种方法图像重构以后的效果图如图4所示。

由图4可以得出,在信道的信噪比为6. 5 d B时,方法1图像重构完全失败,这是因为方法一进行迭代译码时,初始消息采用的是平均信噪比,利用密度进化方法设计LDPC码度分布时,理论信道容量和实际信道容量存在差距,从而导致它的性能下降。 方法2能够重构出来,但是较方法3重构出的图像效果差,这是因为方法2并没有加强对重要信息的保护。

为了对算法性能作进一步研究,定义

式中,M、N分别表示图像的大小; xi,j、yi,j分别表示2个图像的像素值。本文中M = N = 512。PSNR反映了2个图像的相似程度,值越大,2个图像的区别就越小。为了使实验数据平稳,在每个信噪比点将实验重复50次并取平均值。信噪比与峰值信噪比均值之间的关系图如图5所示。

为了进一步比较3种方法的性能,在表2中对信噪比SNR分别为6.5 d B和7.25 d B两点处的图像重建质量进行了定量分析,并设定PSNR>20 d B时视为解码成功,可以重建原始图像。

由表2可知,50次试验中,在SNR = 6.5 d B时, 采用方法3就能够基本重建原始图像,这是因为方法3对前端的重要信息加强了保护,即使非重要信息发生较多的误码,仍能够获得图像的基本信息; 而采用方法2,50次试验中能重建原始图像的次数较方法3少,因为方法2在干扰噪声大、信噪比较低时,易损失重要信息而导致无法重建图像。方法1基本上不能重建原始图像,因为在LDPC码度分布设计时,实际容量和理论容量存在较大的误差。在信噪比SNR = 7.25 d B时,方法2重构出来的图像效果比方法3略好,因为在大信噪比情况下,解码基本上没有错误,而方法3进行密度进化设计度分布时, 对重要比特的误码率进行了约束,所以性能要比方法2略差。

综合以上仿真结果可知,无线通信在干扰严重、 信道带宽受限的情况下,采用方法3来重建图像优于方法1和方法2。

5结束语

LDPC编码 篇4

网络编码自从2000年提出之后就得到了广泛的关注,它融合了编码和路由的概念,通过允许对来自不同链路的信息进行编码组合,使得网络节点既实现路由功能又实现编码功能。LDPC码是一种线性分组码,它于1962年由Gallager提出,是当今信道编码领域最受瞩目的研究热点。为提高编码调制系统的整体增益,文献[1]提出了一种分布优化方法,从而改善误码性能; 文献[2]考虑在半双工系统下,实现了单源、单中继、单宿系统的LDPC码设计; 文献[3]针对上述系统设计出双层LDPC码,这样设计的原因是为了保证达到系统的最大容量,并针对复杂模型设计了多层LDPC码,将LDPC码与协作系统完美地结合在一起; 文献[4]将多层LDPC码应用到多源多中继多宿系统中,提出了针对复杂系统的改良方案,采用的速率兼容LDPC码是一类嵌套LDPC码,其最大的优点就是只需一个解码器就可以将所有不同速率的LDPC码正确译出。

Zhang等人在双向中继模型中提出了物理层网络编码方案[5],利用无线电波的广播特性,将电磁波信号在空间的叠加映射到调制符号集合中,从而实现网络编码的思想。文献[6]研究了随机网络编码与协作中继传输的结合,即使网络部分节点或链路失效,最终在目的节点仍然能恢复原始数据,增强网络的容错性和鲁棒性。利用信道编码可以为网络编码提供一个良好可靠的通信环境,有助于信道编码的成功应用。但是如何在通信节点同时实施网络与信道联合编码,使二者得以相辅相成,但目前的研究还处于起步阶段。

1 问题的提出

考虑一个多用户、多中继的协作系统上行链路,如图1所示。小区内N个用户终端( S1,S2,…,SN) 通过M个用户中继向基站D发送数据,通信过程可以分为两个阶段: 第一阶段,N个用户向中继和基站广播消息; 第二个阶段,中继节点将用户数据处理后发送到基站。基站最终根据用户数据和中继节点数据获取用户信息。

假定每个用户均采用LDPC信道编码方式( 多层LDPC码或速率兼容LDPC码) ,中继与用户采用相同的信道编码方式,中继收到用户数据后先进行解码,获得用户信息,并按照需求重新对所选择的数据进行LDPC信道编码,随后各个中继再分别进行网络编码( 线性网络编码、物理层网络编码或随机网络编码) ,在基站设计最优联合译码方式,针对不同的网络编码方式和LDPC信道编码,最终译出用户信息。

2 设计方案

总体研究思路: 1) 依据中继协作方式,建立系统模型,如图1所示; 2) 采用统一LDPC码,中继处实现网络编码和LDPC的联合编码; 3 ) 基站接收数据,并进行联合译码,计算误码率。

1) 中继协作网络中,LDPC码的速率可以逼近系统的容量极限,如果要达到这一要求需要将一部分校验码由中继发出,将校验码分为不同的子集,分别由不同的中继发出或在不同的时隙发出,通过信源、中继和信宿的协同合作,最终成功解码,然而多层LDPC码与速率兼容LDPC码的构造方法是不一样的,如图2和图3所示。

双层LDPC码应用在单源、单宿、单中继网络中,单源首先广播信息,中继收到数据后,首先进行解码,然后针对部分信号重新进行LDPC编码,得到k2个校验码,然后将k2个校验码发送到信宿,并协助信宿解码在信源广播时隙中收到的数据。信源发送数据( LDPC码) ,在这个过程中,校验码被分成了两个子集φ( 1) 和φ( 2) ,分别代表了两层数据,所以被称为双层LDPC码。对于多中继网络来说,就需要将校验码分成更多的子集,形成多层LDPC码,如图4所示,对于多源、多宿、多中继模型,每个信源发出的LDPC码都被分成了两层,外层校验码是根据S—R之间的信道速率优化的,而内层则是根据整个中继网络的容量极限优化的,内层校验码用来帮助基站反方向译码,获得信源发出信号中包含的全部信息。

速率兼容LDPC的构造方式有别于多层LDPC码,如图3所示,二者设计理念相似,但前者将需要重传的校验码子集附在矩阵末端,通过单一解码器反方向译码,子集的个数与中继个数和需要重传的次数有关。

2) 中继处对LDPC成功解码后,按照需求对需要中继传输的数据进行网络编码,再将得到的数据重新进行LDPC信道编码,发送到基站。

3) 基站接收到数据后,反方向联合译码,首先解码LDPC,然后对解码后的接收码字进行网络解码,得到原始信号,最后计算误码率。

3 实验仿真

针对两源两宿一中继模型,采取MATLAB和C++ 混合编程的方法,研究了LDPC码与网络编码的联合编解码设计,如图5所示。仿真条件: 用户1和用户2的上行信道条件相同,分别发送长度为512的原始码字,经过LDPC编码和BPSK调制后通过AWGN信道,中继节点通过线性网络编码后,将编码后的码字经过调制之后再次发送出去,用户1和用户2通过解调、解码得到相互的估计数据。

仿真过程如图6所示。实验结果显示,应用联合编解码的系统与传统的中继协作系统具有更低的误码率,如图7所示。再者,如果假设两种方案的误码率近似一致,那么在传输时间上,采用联合编解码所需的时隙数也就越少,因此该方案比传统传输模式具有更高的网络吞吐量。将LDPC码与网络编码的联合技术应用到无线中继协作系统中,将会大大提高网络的性能。

4 小结

LDPC编码 篇5

关键词:低密度奇偶校验码,矩阵压缩,编码器,数字信号处理器

近年来,低密度奇偶校验码因其优异的性能已经逐渐在实际的工程中应用,编解码器的优化设计是LDPC码得以工程应用的前提[1]。LDPC码最简单直接的传统编码方法是基于生成矩阵的编码方式,但以往的研究通常认为该方法复杂度高,在码长较长时消耗硬件资源量大而难以在工程上实现,尤其是基于DSP平台实现的LDPC编码器速率并不高[2,3]。同时,在编码器设计中,校验矩阵的存储一般采用一维数组存放矩阵“1”元素列标的方法(以下简称存储列标法),该方法能一定程度上减少矩阵所需的存储空间,但列标索引增加了其后对矩阵使用的复杂度,且该方法一般只适用于规则的LDPC码,难以普遍适用。

DSP平台具有编程简单,工程上易于调试,且很多廉价的DSP芯片已经具备优异的性能等优点。本文研究国际空间数据系统咨询委员会(CCSDS)公布的一类准循环LDPC码的DSP快速编码实现:验证了该码的优异性能;对“贪婪算法”进行了复杂度简化;提出了一种新的矩阵存储方法,在减小矩阵存储空间的同时较大的提高了编码速率;基于TMS320C6416 DSP平台,分别在两种编码算法下设计了快速编码器。

1 特点及性能

文献[4]提出一类准循环LDPC(QC-LDPC)删余码[5],其校验矩阵H是基于原模图[6]构造的。本文以信息位长度k=1 024,码率1/2的码字为例进行研究。该码字的H阵形式为

Η1/2=[0Μ0ΜΙΜ0ΜΙΜΠ1ΙΜΙΜ0ΜΙΜΠ2Π3Π4ΙΜΠ5Π60ΜΠ7Π8ΙΜ](1)

式中:k=1 024时,M=512;0M为512×512的零矩阵;IM为512×512的单位阵;Πi(i=1,2,…,8)为512×512的矩阵[7]。

从图1中可以看出,该码具有较好的性能。因此,对其编码器进行设计研究具有工程应用价值。

2 两种常用的编码方法分析及改进

LDPC码传统的编码方法是其理论研究中常用的一种编码方式[8],原理是采用高斯消元的方法,由校验矩阵H得出生成矩阵G。假设待编码信息流为m,编码生成的码字为m′,则基于传统编码方式的公式为

m′=m×G (2)

由于生成矩阵G已经不具有稀疏性,以往的研究认为,该方法虽然简单,但矩阵存储量大,编码运算量大,不易硬件实现。因此,通常认为该方法常只用于理论研究。下文介绍了一种新的矩阵存储方法,降低了该方法的硬件资源消耗,实现了快速编码,证明其工程上完全可以实现[9],如图2所示。

为降低其编码复杂度为O(N+g2),而参数g一定时,该方法由于涉及较多的矩阵运算和存储,仍具有较高的复杂度,否则在编码结束后还须进行列变换,还原原始比特位置,从而增加了编码复杂度。

鉴于此,本文对“贪婪算法”做一定的改进,不经行列置换完成近似线性复杂度的编码。将本文采用的H阵模块化如图3所示。

即有

Η1/2=[AΤBCED](3)

将式(3)变形

[ΙΜ0-EΤ-1ΙΜ][AΤBCED]=[AΤB-EΤ-1AC0-EΤ-1BD](4)

经验证,可得

{AsΤΤp1ΤBp2Τ=0(-EΤ-1AC)sΤ(-EΤ-1BD)p2Τ=0(5)

由(5)式推得两部分校验比特

{p2Τ=(-EΤ-1BD)-1(-EΤ-1AC)sΤp1Τ=-Τ-1(AsΤBp2Τ)(6)

式(6)的计算过程可分以下两个步骤进行:

1)由图3可知T为1 024×1 024的单位阵,故式(6)中的(-ET-1BD)-1(-ET-1AC)=(-EBD)-1(-EAC),在以后用到的过程中,直接调取使用,减少了编码的计算量。

2)计算出pT2后,由于A矩阵为循环阵,B矩阵为准循环阵,易计算出pT1=-T-1(AsT⊕BpT2)=AsT⊕BpT2。从而得出原始的码字x=(s,p1,p2),删除后512位即为最终需发射的码字。

可以发现,编码过程中无须对H阵进行存储,只需存储步骤1)中的固定矩阵。原“贪婪算法”与本文改进的“贪婪算法”的计算过程分别如表1所示。

由表1可以看出,为相对减少运算复杂度,原“贪婪算法”除了对H阵存储列标,还应直接存储维数为512×512的逆矩阵-(EBD)-1,因而所需存储空间仍较大,复杂度也较高。而改进的“贪婪算法”因为直接存储了[(-EBD)-1(-EAC)]阵,计算过程较原“贪婪算法”简单,降低了运算复杂度,但[(-EBD)-1(-EAC)]阵为512×1 024矩阵,其存储仍占用较大的空间,需设计一种好的矩阵存储方法,如下文所述。

3 矩阵存储设计

以往的文献中,针对矩阵的存储设计,常采用的方法是定义较小的数组来存储校验矩阵的列标,由于校验矩阵的稀疏性,这种方法可以大大减小矩阵的存储空间,但该方法通常只局限于规则的LDPC码[3],且在后面调用校验矩阵时,需按列标索引,运算复杂度仍较高,制约了编码器速率。

一般情况下,DSP平台上可定义的最小数组类型为char型,在TI C6000系列平台上[10],该数据类型为8 bit数,在C5000平台上,该数据类型为16 bit数,而LDPC码的校验矩阵或生成矩阵元素仅有“0”或“1”组成,每个元素只占用1 bit空间,因此若直接存储矩阵会造成较大的空间浪费。

为减小矩阵的存储空间,本文提出一种新的矩阵存储方法,即直接将矩阵元素逐行按顺序每8位(基于C6000平台)或每16位(C5000平台)串接为一个数据,然后存储在char型数组中,也可将每32位串接为1个数据存储在int型数组中(基于C6000平台),这样可较大减小矩阵的存储空间,相对于直接存储H阵,存储量减少在95%以上。需要注意的是,在编码过程中须对待编码信息流做如上变换,即将信息位按顺序进行相应位数的串接,再进行一定的编码计算。该存储方法可较大减少矩阵存储空间,降低编码复杂度。

4 快速编码器的DSP实现及仿真分析

仿真中采用TI的C6416平台,该芯片具有甚长指令字处理能力,最高主频可达1.1 GHz,EMIF接口速率可达数百兆比特/秒,且TI为配合C6000系列推出了效率可达80%左右的汇编级C编译器。本仿真采用C语言,代码优化方法如下:

1) 采用新的矩阵存储方法。根据本文上一小节中的编码算法思想,需要对校验比特pT2计算过程中-ET-1BD)-1(-ET-1AC)=(-EBD)-1(-EAC)的结果进行存储。由于该结果为一固定矩阵,且其中的元素只含有“0”和“1”,因此,基于C6416平台,可将该矩阵的每32位合为1个32 bit数据,存储在一维数组unsigned int n[8192]中,有效减少了矩阵存储空间。

2) 减小存储器相关性。关键字const指定存储单元保持不变,有助于编译器确定指令的不相关性,提高指令的并行执行度,因此可将一维数组unsigned int n[8192]定义为const unsigned int n[8192]。

3) 使用内联(intrinsic)函数。对应(1)中的矩阵存储方法,将信息流s的每32位结合为1个32 bit数,再计算[(-EBD)-1(-EAC)]sT,结果用int型数组存储。注意到,只含有“0”、“1”的乘法运算用“&”运算代替,可减少指令周期的消耗量。同时使用内联函数_dotpu4(Uint src1& Uint src2,16843009)&1来实现矩阵乘法,完成编码。

此外,在优化C代码的过程中,还采取了合理选择编译器自动优化选项、对循环体进行适度的展开等方法。通过优化,编码所需的指令周期大大缩短。

同时,为验证本文提出的矩阵存储方法的普遍适用性,采用传统的编码算法,即对所采用的校验矩阵,直接求出生成矩阵,然后采用新的矩阵存储方法进行存储、编码。对于本文采用的信息位长度k=1 024,码率1/2的码字,经CCS 3.1 Simulator仿真,得到两种编码算法与原“贪婪算法”下的编码性能比较如表2所示。

由表2可以看出,在改进的“贪婪算法”下,相对于存储列标法,本文提出的矩阵存储方法兼顾了减小矩阵存储空间与提高编码速率,且基于传统的编码算法,也能获得较小的矩阵存储和较高的编码速率。经硬件测试,基于主频1 GHz的DSP C6416平台,采用本文提出的矩阵存储方法,在改进的“贪婪算法”下编码速率达到100 Mbit/s;在传统的编码算法下,编码速率达到60 Mbit/s。由于传统编码方法适用于所有类型的LDPC码,因此本文的矩阵压缩存储方法具有通用性。

5 结束语

本文提出了一种新的矩阵存储算法,有效地减小了矩阵存储空间,提高了编码速率。并基于码进行快速编码研究,对“贪婪算法”进行改进,并通过运算技巧与C6416功能的结合,设计了适合于该类码C6416平台快速实现的编码器。仿真表明,本文提出的矩阵存储方法能够兼顾减小矩阵存储空间与提高编码速率,且具有普遍适用性。

参考文献

[1]林竞力,敬龙江,陈涛.CDTTB标准中LDPC码的编码结构设计[J].电子科技大学学报,2009,38(3):341-344.

[2]李寰宇,柏鹏,彭卫东.基于快速编译码的LDPC-CPM系统设计[J].航天控制,2011,29(5):53-57.

[3]陈蓉,汪一鸣.一种高效的LDPC编码器的DSP设计与实现[J].通信技术,2008,41(7):44-46.

[4]CCSDS.Low-density parity-check codes LDPC for use in near-earthand deep space applications[S].2007.

[5]PISHRO N H.Results on punctured LDPC codes[C]//Proc.Informa-tion Theory Workshop 2004.[S.l.]:IEEE Press,2004:215-219.

[6]THORPE J.Low-density parity-check(LDPC)codes constructed fromprotographs[EB/OL].[2012-08-15].http://ipnpr.jpl.nasa.gov/progress_report/42-154/154C.pdf.

[7]LIU Yuanhua,WANG Xinmei,WEI Ru.Generalized combining methodfor design of quasi-cyclic LDPC codes[C]//Proc.CommunicationsLetters.[S.l.]:IEEE Press,2008:392-394.

[8]雷维嘉,谢显中,李广军.一种基于LDPC编码的协作通信方式[J].电子学报,2007,35(4):712-715.

[9]王加庆,于晓燕,吴乐南.数字调幅广播中基于LDPC码的多级编码方案[J].通信学报,2006,27(1):85-90.

LDPC编码 篇6

1 水声通信中使用LDPC存在的问题

1.1 突发错误严重

在水池实验中,突发错误的现象很普遍。图1所示的是水池信道通信中每一帧的错误比特统计图。此例中我们使用了码长为1 024,码率为0.5的规则LDPC码,总数据量为102 400个二进制数,分为100帧。从图中可以看出,第40帧附近各帧的错误数都大于150个,单帧的BER(比特差错率)超过150/1 024=0.146 5,甚至有的帧有将近一半的数据突然出错,超出了LDPC的译码极限,虽然该组数据译码前通过硬判决得到的BER是0.050 039,但是由于错误集中,所以译码的收效甚微,仅使BER降到了0.028 867。

增加码长至4 096,硬判决误码线如图2所示,由于数据总量不变,所以共分为25帧,该图所示接收数据的硬判决后BER为0.027 666,但由于第21帧错误数量接近1 000,帧内BER=1 000/4 096=0.2 441,超出LDPC的译码能力,所以译码后BER仅降至0.010 068。对抗突发错误的一种方法就是增加码长,当总体误码率较低时,可以使短码长情况下低误码的帧和偶然的高误码帧合并为长码情况下的一帧,从而达到误码平均化的目的。但是通过观察图2可以发现,即便码长增加一倍至8 192,使图中的两帧合为一帧,此时第21帧将与第22帧合并,其一帧的BER仍将超过1 000/8 192=0.122 1,这样的误码LDPC仍较难译出,必使码长在104量级时或能抵御水池突发错误的影响。

1.2 接收信号特征多变

LDPC编码的译码方法一般采用Belief-Propagation(BP)迭代译码方法。在译码之初,须根据信道规律进行迭代的初始化。由于水声信道受时间、地域等诸多因素影响,信道性质波动较大,一直以来都是研究的难点,加之水声统一模型的缺乏,使得初始化的方法难以选定,只能根据接收到的数据特征分别使用高斯、瑞利等成熟信道模型来模拟水声信道。在水池实验中这样的方法效果时好时坏,难以得到一个稳定的译码结果。

2 分析与实验

2.1 码长的设定及对交织特性的影响

在水声通信中,误码率水平较高的情况下,应尽量提高译码器的译码性能,所以我们延用经典的LLR-BP译码,这种情况下考虑到时间开销,就只能使用码长较短的码字,文献[2、3]等涉及水下LDPC编码的研究亦采用小于104量级的码长。由于我们使用的CI/OFDM系统的一个OFDM符号长度为1 024,为避免错误集中在一个符号的情况,遂选取1 024的倍数作为码长,综合时间开销和效果等因素,码长定为2 048较为合适。

上述长码字可以容忍更多错误同时发生的性质可以看作是一种交织特性。由于LDPC校验矩阵的稀疏性,使得一帧内不同位置的码字建立起错综复杂的相互关系,从而可使连片的错误为分散的正确码字所解出。在LDPC经典理论中,码长无限的情况下,整个传输信息可以看成是一帧,此时,不论发生的错误是分散还是集中,只要误码总量还在LDPC的解码范围之内,译码初始化符合信道统计特性,译码就能成功,因而LDPC的典型构架中并不存在有交织器。但是由于我们在通信中使用短码(小于104),抵抗突发错误的能力受到一帧内译码能力的限制,所以实验系统中须加入一个交织环节。交织的方法,可以直接将角度进行交织,也可以先对二进制数据流进行伪随机交织或随机交织,然后再进行基带映射,以获得更好的交织深度。

在水池实验中,我们以码率为0.5的(2 048,3,6)规则码进行编码,校验矩阵采用随机生成方式,配合Girth Conditioning方法[4]将长度为4和6的Girth全部消去,但规则码的度数分布有些许离散。编码方法采用近似下三角形矩阵快速编码Greedy算法A[5]。

在使用交织器后,水池明显的突发错误被完全平均化了。从表1可以看出使用交织器后译码效果明显改善。

2.2 译码初始化概率的选取

在CI/OFDM系统中,接收到的信号在解调过程中会经过两次FFT,噪声信号的分布有所改变且不易得出,因此文献[6]绕过信道的具体特性,提出在调相方式下,用接收信号与映射相位的欧氏距离的平方作为初始化依据的方法。

其中,C是信号常数,X(k)是解调得到的复数信号,sm是星座图上的标准符号。公式(1)计算的是收到X(k)而判断为sm的后验概率,说明接收相位与标准相位之间的欧氏距离越大,判决为该标准相位的概率越小。文献[7]则提出一种基于高斯分布规律的相位初始化算法,如下:

其中J表示对应码字为1时的符号集合,Q表示对应码字为0时的符号集合。在这里,我们设定解调信号的均值作为x,并认为解调信号的方差就是噪声方差。

公式(2)是将接收到的信号的相位分布默认为是以各标准相位为中心的高斯分布,根据大数定理,这样的假设是成立的。

在实际水池实验中,我们采用了与2.1节相似的实验系统(码长有所改变),比较了这两种软判决初始化方法的译码效果,并对水池信道的分布规律做了相应研究。表2给出了4组数据分别用以上两种方法的判决效果。实验结果显示,在大多数情况下按照高斯分布规律进行的初始化算法效果要优于二次欧氏距离的初始化方法,但表2第4组数据却得出了相反的结论。

为了找出问题的症结,我们先假设接收相位的实部x和虚部y都满足标准正态分布,则相位的模的平方x2+y2将满足字2(2)分布,其均值是2,方差为4,概率密度函数为

其方差为

若实部和虚部的均值仍保持在0,而方差同时变为啄2,则模均值将为原来的啄倍,而模方差将为原来的啄2倍。从表3中可以看出,接收相位的实部和虚部均值都是0,而方差的大小也基本相同,可以认为是上述情况,根据公式(5)、(6)推导出的模在高斯情况下的理论值和实际值亦给出。根据实验数据可以看出,水池信道与高斯信道的差异在模的方差上表现明显,但模的实际方差小于高斯情况下方差时,使用高斯分布的初始化算法一般仍然适用,而且效果上优于二次或四次欧氏距离的算法,但如果情况相反,则高斯分布初始化的效果将会陡然下降,而二次欧氏距离初始化方法,其表现则较为稳定。对于较高误码率的情况,须采用欧氏距离的更高次数进行初始化,而在某些极限情况下可以将初始化过程中欧氏距离的幂函数改为以e为底的指数形式效果会好些。

3 结束语

在水池等突发错误较严重的水声通信环境下,使用交织器与LDPC联合的方法,能够使LDPC的译码效果明显改善。

对于译码的初始化方法,可以将接收信号的各数学特征计算出来,对照其在高斯分布下的理论值,从而确定最佳的初始化方式。

参考文献

[1]Richardson T J,Shockrollahi M A,Urbanke R L.Design of capacity-approaching irregular low-density parity-check codes.IEEE Transactions on Information Theory,February2001,47(2):619~637

[2]Huang J,Zhou S L,Willett P.Nonbinary LDPC coding for multicarrier underwater acoustic communication.IEEE Journal on Se-lected Areas in Communications,December2008,26(9):1684~1696

[3]Kang T,Iltis R A.Iterative carrier frequency offset and channel estimation for underwater acoustic OFDM systems.IEEE Journal on Selected Areas in Communications,2008,26(9):1650~1661

[4]Mao Y Y,Banihashemi A H.A heuristic search for good low-density parity-check codes at short block lengths.IEEE International Conference,Jun2001.Vol.1:41~44

[5]Richardson T J,Urbanke R L.Efficient encoding of low-density parity-check codes.IEEE Transactions on Information Theory,2001,47(2):638~656

[6]马丕明,袁东风,杨秀梅等.基于IEEE802.11a标准的LDPC编码的OFDM无线通信系统.系统工程与电子技术,2005,27(1):163~166

LDPC编码 篇7

关键词:多边类型低密度奇偶校验码,多码率编码,交织,现场可编程门阵列

0 引言

多边类型低密奇偶校验码(MET-LDPC)码是在2004年由Tom Richardson首次提出[1],因为码型结构包容近年来涌现出的众多新码型,如RA码、IRA码和CT码等,在各种短帧和码率下都有很好的纠错性能,错误地板很低,同时兼有编、译码实现复杂度低的特点。

在无线传输系统中,通信系统为了保证服务质量,提高吞吐量,需要多码率编码来进行传输信息比特的纠错编码。现有的基于LDPC多码率编码方式研究中,常见的编码码率调整方式是设计几种不同码率的LDPC编码方案[2,3,4],尽管保证了多码率的LDPC在接收端均有良好的译码性能,但各自对应的生成矩阵不一样,在硬件实现中增加了发送方和接收方的硬件资源开销。当编码方案越多,需要同时存储的生成矩阵越多,这对于资源的占用是非常巨大的。为此,在LDPC的编码实现中,结合硬件资源占用,提出了新的自适应编码方式——删余[5,6,7]。编码首先以低码率进行编码,当需要使用较高码率进行编码时,则对编码产生的校验比特进行删余,传输未被删除的比特,使得码率动态发生变化。

笔者在删余的基础上,设计了多边类型LDPC多码率编码方案,并硬件实现,与传统方案相比具有如下优点:1)编码方式简单,仅需要删余产生的校验比特来构造不同码率;2)资源占用少,各种码率均采用唯一编码矩阵进行编码,在FPGA实现中,仅需要存储这一编码方案;3)在不占用RAM资源的情况下,采用一种新的交织实现方法,节省了系统资源。

1 MET-LDPC码

MET-LDPC码是近年来提出的一种更为广义的LD-PC码[1],具有优秀的性能,极低的错误地板。MET-LDPC码的形式包括很多结构。近年来涌现的众多类LDPC码,如不规则LDPC码、规则/不规则重复积累码(RA/IRA码)、级联数码(CT码)、准循环LDPC码(QC-LDPC码)等,都可以认为是MET-LDPC码的特例。

多边类型的LDPC码变量点和校验点表示为

式中:d=d1,d2,⋯,dn,表示多边类型的度,其中n为边类型的数量;x=x1,x2,⋯,xn,表示变量点;xd=∏in=1xidi;b=b1,b2,⋯,bt,表示接收的度;r=r1,r2,⋯,rt,表示与变量点相应的接收分配的度,其中t为不同接收分配类型的数量;rb=∏it=1xibi。假设多边类型的LDPC码的码长为N,因此,变量点类型的数量为v(b,d)N,同理校验点类型的数量为μdN。

2 易于硬件实现的MET-LDPC多码率

编码方案

在文献[7]中,提到了一种采用随机删余来构造自适应编码的方案,该方案采用了简化的分组和排序法(GS算法)对MET-LDPC进行自适应编码,尽管取得良好的性能,但是在实现过程中却面临诸多难题:1)根据删余算法的规则,编码处的删余在译码处就会在相应的删余点补零进行译码恢复过程。由于是随机删余,在硬件实现中难以实现,会占用大量的资源。2)随机删余在每一次的删余过程中都需要进行计算,提高了复杂度。

因此,提出一种易于硬件实现的间隔删余算法,并通过实现分析了间隔删余算法与GS算法的资源消耗。利用多边类型LDPC码良好的码型结构进行删余来构造自适应多边类型LDPC编码方案。以码长为640 bit,码率为1/2的MET-LDPC码作为母码来进行自适应编码。

为了更好地介绍易于硬件实现的间隔删余算法,先介绍删余比特的划分(见图1)。

1步可恢复节点(1SR):如果1个删余变量点至少与1个幸存校验节点相连接,则称这个删余变量点为1步可恢复节点。

k步可恢复节点(k SR):如果1个删余变量点与1个校验节点相连,同时与这个校验节点相连的其余变量点中有m SR节点(0

在译码过程中,为能更快更准地译码,尽量先删余度为1的校验点,因为度为1的校验点与1个校验节点相连,同时这个校验节点又与3个信息比特相连,因此在迭代过程中,1步就可以更新度为1的校验点的软信息。而度为2的校验点连接2个校验节点,在迭代过程中,根据校验方程,能够使信息比特更新来自于度为2的校验点的软信息,在删余度为2的校验点时,应间隔删余,这样在迭代过程中,删余的校验点就可以得到来自前向和后向的似然信息,使得删余的校验点的似然信息能够尽快更新,提高了信息恢复的准确度。

具体删余流程如下:

1)计算码率自适应方案中需被删余的比特数Npunc

2)根据Npunc来确定对None_punc的删余个数,如果Npunc≥None_leng th,则None_punc=None_leng th,否则None_punc=Npunc。

3)由None_punc与None_leng th的关系来决定Ntwo_punc,如果Npunc≥None_leng th,则Ntwo_punc=Npunc-None_leng th。

4)根据None_punc对度为1的校验比特进行连续删余,因此度为1的校验比特中删余的比特位置为

5)根据Ntwo_punc对度为2的校验节点进行间隔删余,且第1个比特不删余,即2个删余比特之间有1个不删余比特,因此在IRA中删余的比特位置为

上述流程中:K为编码器输入的信息比特个数;N为当编码码率是0.5时,编码器输出的比特个数;R1为所要求达到的码率;Npunc为所需要删余的比特数;None_punc为所要删余的度为1的校验比特个数;None_leng th为度为1的校验比特总个数;Ntwo_punc为所要删余的度为2的校验比特个数。

为了更好地对比两种算法,采用WET-LDPC编码码率为0.5,输入信息比特个数为640来进行仿真,删余性能比较如图2所示。

由图2可见,采用本方法的规则删余和随机删余在译码性能上不相上下。同时,多码率MET-LDPC与其他LDPC相比,尤其是在低信噪比的情况下,性能有所提升(见图3)。

为了更好地比较两种删余算法的资源消耗,选用了Xilinx公司的Virtex4 xc4vlx15芯片,仿真环境为modelsim SE6.5E。表1给出了两种删余算法的资源对比情况,可见间隔删余算法简单,且硬件实现时资源占用较少。流进行保存,并和Matlab中编码的结果比较,多边类型LDPC编码器的输出与Matlab计算所得到的结果是完全一致的。同理,可以验证在其他码率的情况下,自适应多边类型LDPC编码器的编码结果也一样。同时,仿真结果表明,该编码器的吞吐量能达到100 Mbit/s。

5 小结

现代通信系统为了提高吞吐量以及利用率,通常需要在不同的信噪比情况下对信息比特采用不同的编码方案进行编码,因而自适应编码器的实现尤为重要。笔者应用一种特殊的易于硬件实现的交织方法和移位累加模块实现了自适应MET-LDPC的编码器,通过不同的删余方法可以得到不同的码率。综合结果表明:在占用资源适中的情况下,编码器可以达到较高的数据吞吐量,同时也能实现不同码率下的编码,为MET-LDPC的实际应用奠定了基础。

参考文献

[1]RICHARDSON T J,URBANKE R L.Multi-edge type LDPC codes[C]//Proc.Workshop honoring professor Bob McEliece on his60th birthday.P asadena,California:[s.n.],2002:24-25.

[2]李胜利,汪洋溢.DVB-S2及其相关技术[J].无线电通信技术,2009(2):9-11.

[3]施玉海,余方毅.LDPC在DVB-S2中的应用[J].电视技术,2006,30(5):91-94.

[4]YANG M,RYAN W E,LI Y.Design of efficiently encodable moderate-l ength high-rate irregular LDPC codes[J].IEEE Trans.Comm.,2004,52(4):564-571.

[5]KIM J,RAMAMOORTHY A,MCLAUGHLIN S W.The designo fefficiently-encodable rate-compatible LDPC codes[J].IEEE Trans.C omm.,2006,57:365-375.

[6]DAMMER U,NAROSKA E,SCHMERMBECK S,et al.A datap uncturing IR-scheme for type-II hybrid ARQ protocols using LDPCc odes[C]//Proc.Global Telecommunications Conference,2004.[S.l.]:I EEE Press,2004:3012-3016.

[7]YOU Ying,XIAO Min,WANG Lin.The rate-compatible multi-edget ype LDPC codes with short block length[C]//Proc.5th InternationalC onference on Wireless Communications,Networking and MobileC omputing.[S.l.]:IEEE Press,2009:1-4.

[8]武学彬,薛永林.用于DVB-S2的LDPC编码器设计[J].电视技术,2007,31(S1):114-116.

上一篇:特发性鼻出血下一篇:5-羟甲基胞嘧啶