基于低密度奇偶检验编码的信源信道联合编码方法

文档序号:7944197阅读:287来源:国知局
专利名称:基于低密度奇偶检验编码的信源信道联合编码方法
技术领域
基于低密度奇偶校验编码的信源信道联合编码方法属于通信技术领域,特别涉及采用信源信道联合编码技术在无线多媒体通信系统中应用的一种融合隐马尔可夫信源估计和LDPC(低密度奇偶校验)编码的有效而快速的编码方法。
背景技术
在大多数无线多媒体通信系统中,信源编码和信道编码是分开考虑、独立设计的。这一做法的依据是山农理论如果信息传输速率R小于信道容量C,则存在一种信源编码和一种信道编码方法,可以使信息在有噪信道中达到无误传输。然而在实际系统中,由于编码延时和编码复杂度受限,信源编码不可能完全去除信息序列的冗余;而信道编码亦不能达到山农极限的纠错性能。特别是在无线多媒体通信系统中,由于信源编码主要强调帧结构特性而非冗余度压缩,而大量的数据需要在带宽受限并且受到各种突发严重干扰的信道中传输,分离编码所带来的问题愈加严重,造成了无线多媒体通信的传输瓶颈。
信源信道联合编码技术将信源编码和信道编码进行联合优化,一方面可以利用信源编码后的残留冗余帮助信道编码提高纠错性能,另一方面也可以根据信道编码不同码元的不等差错保护特性,使得信道译码后的残余误码对信源解码的影响最小,非常适合无线多媒体信道中的应用。
现有的信源信道联合编码方法主要有两种。方法一是传统的方法,即在进行信源编码时考虑信道编码的特性,使得经过信源编码后的信息序列带有一定的冗余,在信道解码是考虑这部分冗余,使得信道译码后的残留误码引起的误码扩散达到最小。这种方法可以有效抑制信道编码码长有限所带来的误码扩散,但是信源的冗余应用的不充分,因而性能的改进不明显。方法二是将信道编码的最新技术——Turbo编码与隐马尔可夫信源估计相结合,在发送端直接对含有冗余的多媒体信源进行Turbo编码,在接收端把对有噪信源的冗余度估计作为Turbo码的一个成分码,采用反馈式串行迭代的方法进行联合译码。通过这种方法,在每一次联合迭代中,隐马尔可夫估计所得到的信源冗余可以改进信道码的纠错性能,而经过信道码纠错后的信息序列反馈给隐马尔可夫估计作为下一次迭代的输入,可以使对信源的估计做得更加准确,从而可以在下一次迭代中为信道解码提供更多的有用信息。这一正反馈过程在不需事先知道信源冗余特性的前提下,可以使得信源的冗余和信道Turbo码的纠错性能得到充分的利用。从而获得了逼近山农极限的信息传输性能。但是,在联合迭代译码的过程中,由于Turbo码各成份码所采用的都是串行算法,同时迭代过程中需要对信息序列进行多次交织/反交织,使得译码延时和译码复杂度过大,限制了这项技术在实际系统中的应用。

发明内容
本发明的目的在于提出了一种基于LDPC编码的信源信道联合编码以解决现有的技术之不足。
如图1所示,在发送端,含有冗余的信源输出序列不用经过信源压缩编码,直接进行LDPC编码,得到包括信息序列和校验序列的码序列,然后送到下一级调制成适合在无线信道中传输的波形,进行传输。在接收端,接收天线对接收到的信息序列进行解调,得到接收序列。然后对接收序列采用联合信源估计、信道译码的方法进行解码,过程如下首先,对接收序列中的信息序列部分进行隐马尔可夫参数估计,并根据所得参数计算外信息,随后将接收序列和信源估计所得的外信息序列作为信道译码的输入,进行LDPC迭代译码。经过一定次数的迭代后,判断所得的硬判决译码结果是否为一个合法的码序列。如果是,则迭代译码结束,输出该硬判决序列中的信息序列;如果不为一个合法码字,将经过LDPC译码修正后的信息序列反馈给信源译码器,进行再次隐马尔可夫参数估计并计算相应的外信息输出。然后用所得的外信息序列修正接收信息序列,继续进行LDPC迭代。直到所得序列为一个合法码序列,或者迭代次数达到限定值。此时,输出硬判决信息序列,然后开始下一个码矢量的联合译码。
本发明的特征在于,它是一种融合隐马尔可夫信源估计和低密度奇偶校验(LDPC)编码的信源信道联合编码方法,它依次含有如下步骤(1),在发送端,对含有冗余的信源输出序列用LDPC编码器进行LDPC编码,得到包括信息序列和校验序列的码序列,再把它调制后送到无线信道进行传输;(2),在接收端,对接收到的信息序列解调,得到接收序列;(3),对接收序列采用联合信源估计、信道译码的方法进行解码,它依次含有如下步骤(3.1),在信源译码器中对接收序列中的信息序列进行隐马尔可夫参数估计,并根据所得参数计算外信息;(3.2),再把接收序列和信源估计所得的外信息序列作为信道译码的输入,在LDPC译码器中进行和积迭代译码;(3.3),经过一定次数的迭代后,判断所得的硬判决译码结果是否为一个合法的码序列如果是一个合法的码序列,则迭代译码结束,输出该硬判决序列中的信息序列;如果不是一个合法的码序列,经过LDPC译码修正后的信息序列反馈给信源译码器,再次进行隐马尔可夫参数估计并计算相应的外信息输出,然后用所得的外信息序列修正接收信息序列,继续进行LDPC迭代,直到所得序列为一个合法码序列,或者迭代次数达到极限值,输出硬判决信息序列;(4),如果需要,开始下一个码矢量的联合译码。
步骤(3)所述的联合译码方法用软件实现时依次含有如下步骤(a)译码器初始化联合迭代的次数置为零,设置最大的联合迭代次数,同时设置在每一次联合迭代中LDPC码的和积译码迭代次数;
(b)接收序列输入到详码器;(c)译码器计算接收序列的硬判决,判断是否为一个合法码字如果是,输出相应硬判决结果,本次译码过程结束;否则,对接收序列中的信息序列部分进行一次隐马尔可夫估计,并用所得的外信息修正接收序列;计算经过修正后的接收序列的硬判决,并判断得到的结果是否为一个合法的码字如果是,输出相应的硬判决结果,本次译码过程结束;否则,进行规定次数的LDPC和积译码迭代,在结束迭代时联合译码的迭代次数加1,随后判断联合迭代次数是否小于最大允许值如果是,返回到步骤(c),继续执行相应的译码过程;否则,计算并输出所得的硬判决结果;(d)根据输入情况,判断是否需要进行下一次译码过程。
实验证明,它达到了预期目的。


图1.本发明联合编码方法的原理框图。
图2.重复码的译码节点图。
图3.校验码的译码节点图。
图4.LDPC码的译码网格图。
图5.本发明联合估计/译码原理图。
图6.软件实现本发明联合译码算法的流程图。
具体实施例方式
本发明所述方法的原理及采用的算法说明如下一.首先,考虑在接收端采用含有传输差错的接收序列时进行隐马尔可夫信源估计的算法。
考虑一个由转移状态参数为aij(i,j=0,1)的两状态马尔可夫信源产生的二元比特序列{uk,k=1,2,…,K},(式中K为信道码中信息比特的长度)。经过信道传输后,接收到的含有噪声的信息序列为Rk(k=1,2,…,K),其中,Ri1表示从R1到Ri的符号序列。此外,根据信道噪声的特性,在原来的马尔可夫模型中引入传输差错概率P,使原来转移概率为1路径变为以概率1-P转移,而原来转移概率为0的路径则变为以概率p转移。这样,经过噪声信道传输后所得的信息序列可以采用该扩展模型表示。在未知信源参数和信道传输差错概率的条件下,接收端可以采用隐马尔可夫估计的方法,根据该扩展模型和接收序列得到这两个参数,同时计算出相应的外信息。
假设该隐马尔可夫信源的初始参数为λ=p{u,sj|si},π,u∈{0,1},i,j=0,1},其中π为初始状态,同时定义sk为隐马尔可夫信源的第k个状态,ek={sk-1=i;uk;sk=j}为第k个转移路径,P{u,sj|si}为相应的转移概率,则对该模型参数的前后项迭代估计算法为αk(i)=P{sk=i|R1k,λ}]]>=Σsk-1ΣukP{sk-1=j,uk,sk=i,R1k-1,Rk|λ}P{R1k-1|λ}·P{|Rk|R1k-1,λ}]]>=Σsk-1Σukαk-1(j)·P{uk,sk=i|sk-1=j,λ}·P{Rk|uk}P{Rk|R1k-1,λ}-------(1)]]>式中αk(i)为前项方程,并且P{Rk|R1k-1,λ}=Σsk-1ΣukΣskP{sk-1=j,uk,sk=i,Rk|R1k-1,λ}]]>=Σsk-1ΣukΣskαk-1(j)·P{uk,sk=i|sk-1=j,λ}·P{Rk|uk}----(2)]]>同样,后项方程βk(i)由下式给出βk(i)=P{Rk+1K|sk=i,λ}P{Rk+1K|R1k,λ}]]>=Σuk+1Σsk+1P{uk+1,sk+1=j,Rk+1,Rk+2K|sk=i,λ}P{Rk+1|R1k,λ}·P{Rk+2K|R1k+1,λ}]]>=Σuk+1Σsk+1P{uk+1,sk+1=j|sk=i,λ}·P{Rk+1|uk+1}·βk+1(j)P{Rk+1|R1k,λ}-----(3)]]>因而,第k个转移路径的概率可以由下式得到(ek)=P{sk-1=i,uk,sk=j|R1K,λ}]]>=P{sk-1=i,uk,sk=j,R1K|λ}P{R1K|λ}]]>=P{sk-1=i,R1k-1|λ}P{R1k-1|λ}·P{uk,sk=j|sk-1=i,λ}P{Rk|R1k-1,λ}]]>·P{Rk|uk}·P{Rk+1K|sk=j,λ}P{Rk+1K|R1k,λ}]]>=αk-1(i)·P{dk,sk=j|sk-1=i,λ}·P{Rk|uk}·βk(j)P{Rk|R1k-1,λ}-----(4)]]>注意到在隐马尔可夫模型的转移路径中,任意第k个路径ek都是由起始状态si,终止状态sj,及其相应的信源输出u决定。从而,转移路径概率P{si,u,sj|λ}可以通过下式估计
P{si,u,sj|λ}=1KΣk=1KP(ek|λ),si,sj∈{S0,S1},u∈{0,1}----(5)]]>据此,可以得到各路径的概率的修正式P′{u,sj|si,λ}=P{si,u,sj|λ}ΣuΣsjP{si,u,sj|λ}----(6)]]>根据以上各式,噪声条件下隐马尔可夫信源的参数通过迭代修正为λ={p{u,sj|si,λ},π,u∈{0,1},i,j=0,1}.注意到,当信息序列的长度足够长时,初始状态误差所带来的影响非常小,因而本算法去掉了对信源初始状态的估计过程。
通过上面所述的迭代过程,隐马尔可夫模型的转移路径参数可以被精确估计出来。根据这些模型参数,隐含在信源序列的信息冗余可以被有效的提取出来,写成外信息的形式为LLRe(uk)=lnΣsk-1Σskαk-1(i)·P{uk=1,sk=j|sk-1=i,λ′}·βk(j)Σsk-1Σskαk-1(i)·P{uk=0,sk=j|sk-1=i,λ′}·βk(j)----(7)]]>通过这些外信息,接收序列中的传输差错可以被有效的修正。作为一个例子,表1列出了隐马尔可夫估计前后接收信息序列的误比特率。此次仿真的信源比特由一个熵率为0.81比特/符号的二状态马尔可夫信源产生,每个信息序列的长度为5000比特,对每个Eb/No(即每个比特的平均信号功率与噪声功率的比值)下至少进行100万比特的仿真。由表1可见,隐马尔可夫信源估计所得的外信息可以有效降低信道传输产生的差错。
表1.隐马尔可夫估计前后的信息序列的误比特率

二.采用LDPC码进行差错控制的译码方法为1.LDPC码的定义和参数LDPC码是一种二进制分组码,这种码采用超稀疏矩阵作为校验矩阵。矩阵中每行(每列)中非零元素的个数非常稀少,且位置呈随机分布。为了便于描述,定义一行(一列)中非零元素的个数为该行(列)的重量。由于LDPC码的校验矩阵为随机生成的矩阵,各行(列)的重量不确定,因此采用重量分布式来描述这种矩阵。同一类LDPC码校验矩阵的列重量分布可以用分布式表示为
λ(x)=Σi=2dvλixi-1----(8)]]>式中λi表示重量为i的列在矩阵中所占的份量,dv为矩阵中列重量的最大的值。同样,同一类LDPC码校验矩阵的行重量分布采用下式描述ρ(x)=Σj=2dcρjxj-1---(9)]]>式中ρj表示重量为j的行在矩阵中所占的份量,dc为矩阵中行重量的最大值。由于LDPC码是分组码,对于任何合法的码字V,与校验矩阵H的乘积为零,即H·VT=0。由该校验方程可知,校验矩阵中每列的非零元素只对应LDPC码的同一个码元,形成了一个相当于重复码的约束。为了便于译码过程中的描述,定义这种约束关系为一个比特节点,节点的阶数即为该列的重量。而校验矩阵中每行的非零元素,将所对应的LDPC码元映射成一个相当于校验码的约束。同样定义这种校验关系为一个校验节点,节点的阶数即为该行的重量。矩阵中的各个非零元素,既参与了比特节点的约束关系,又参与了校验节点的约束关系,因而可以定义矩阵非零元素所对应的关系为连结这两种节点的“连结线”。在迭代译码过程中,译码器利用矩阵的行和列所对应的校验节点和比特节点的约束关系进行迭代译码。在一次迭代过程中,首先利用比特节点的约束关系进行译码,各比特节点的输入为接收序列对应的对数似然值(即各个元符号取“1”的概率除以取“0”的概率再取自然对数所得的值)以及相关校验节点在上一次迭代的输出;随后,比特节点的输出通过“连结线”送到相应的校验节点,再利用校验节点的约束关系进行译码。在这个过程中,一种节点的输出成为另外一种节点的输入,矩阵中非零元素所对应的“连结线”成为了这两种节点输入输出交换信息的“通道”。对于码长为N比特,列重量分布和行重量分布分别由(8)(9)两式确定的LDPC码,其i阶比特节点的个数为Ni=N·λi/iΣi=2dvλi/i=N·λi/i∫01λ(x)dx,2≤i≤dv---(10)]]>同理,j阶校验节点的个数为Mj=M·ρj/jΣj=2dcρj/j=M·ρj/j∫01ρ(x)dx2≤j≤dc---(11)]]>式中M为一个LDPC码字中校验码元的长度。
2.LDPC码的译码LDPC码的译码充分应用了校验矩阵的超稀疏特性,通过比特节点和校验节点的约束关系计算并输出外信息,并相互反馈,进行迭代译码。(外信息即所有同属于一个码字的其它码元通过码字的约束关系而得到的关于某一个码元取值的信息,采用外信息交互是为了避免迭代过程中出现正反馈。)当前,LDPC码的译码方法主要为和积译码方法。这种方法的输入为接收序列的对数似然值,并在对数空间下通过利用比特节点和校验节点的约束关系进行迭代译码。此时,比特节点的约束关系表现为“和”的形式,即各比特节点的输出是各个输入对数似然值的和;而相应的校验节点则表现为某种“积”的形式,即各校验节点的输出是各个输入对数似然值的某种“连乘积”。由于这个特点,该方法被称之为和积译码方法。
以二元输入加性白高斯噪声信道下的信息传输系统为例,长为N-M比特的二进制信息序列被LDPC编码器编成长度为N比特的LDPC码字。随后,该码字被调制成取值为±1的符号序列在高斯信道中传输。在接收端,接收机经过匹配滤波后得到了一串含噪声干扰的长度为N的实数序列RN1,随后进行信号解调。高斯信道、BPSK调制下,第i个码元为1而经调制和传输后接收机收到信号为R1的概率为P(Ri|vi=1)=12πσ2exp{-12σ2(Ri-1)2},1≤i≤N---(12)]]>其中σ2为信道噪声的标准方差。
同样,第i个码元为0而经调制和传输后接收机收到信号为Ri的概率为P(Ri|vi=0)=12πσ2exp{-12σ2(Ri+1)2},1≤i≤N---(13)]]>由贝叶斯定理,得到P(vi=1|Ri)=P(Ri|vi=1)·P(vi=1)P(Ri)--(14)]]>P(vi=0|Ri)=P(Ri|vi=0)·P(vi=0)P(Ri)--(15)]]>在发送过程中,码元符号取0和1的概率相等。为了便于解调信号的输出,通常采用对数似然比的形式表示接收到的第i个码元取值的最大后验概率LLR(Ri)=lnP(vi=+1|Ri)P(vi=-1|Ri)----(16)]]>由以上各式,得
LLR(Ri)=lnP(vi=+1|Ri)P(vi=-1|Ri)=lnP(Ri|vi=+1)P(Ri|vi=-1)]]>=ln12πσ2exp{-12σ2(Ri-1)2}12πσ2exp{-12σ2(Ri+1)2}=2σ2Ri]]>=sign(Ri)·|2σ2Ri|-----(17)]]>式中Sign(●)为符号函数。上式中,第一项符号函数表示了由接收信号得到的原发送信号取值概率的比较结果。符号函数取正值表示原码元符号为1的概率大于为0的概率;取负值则表示原码元符号为0的概率大于为1的概率。而第二项绝对值的大小则表示了该符号取1的概率与取0的概率之间的差异程度。绝对值越大,则两个概率值的差异越大。因此,(17)式根据每个接收信号提供了两个信息,一个信息为原信号最可能取哪个值,另一个信息则表示了这种判断的可靠程度。接收机的这种解调过程充分保留了原信号的信息,被称为“软解调”,或者“软判决”,相应的软判决输出称为“软信息”。
解调器输出的软信息被送到LDPC译码器进行译码。LDPC译码器的译码充分利用了校验矩阵的超稀疏特性,将校验矩阵的约束关系分解为行的校验码约束关系和列的重复码约束关系,通过利用这两种约束关系的相互反馈,进行迭代译码。为了便于了解在这两种约束关系下的译码过程,下面首先讨论重复码和校验码的译码过程。
1)重复码的约束关系及其译码重复码的编码即是将输入的信息符号进行N-1次重复,从而得到一个长为N的码字VN1。因此,重复码只有两个合法码字全0码字0N1和全1码字1N1。经过调制、传输、解调以后,译码器根据调制器提供的软信息进行译码。在接收到的信号序列为RN1的前提下,根据重复码的约束关系进行译码,得到一个采用对数似然比表示的输出序列UN1。其中,第i个符号最大后验概率取值的对数似然比为LLR(ui)=lnp(vi=1|R1N)p(vi=0|R1N)=lnp(vi=1,R1N)p(vi=0,R1N)]]>=lnΣ1≤i′≤Ni′≠i···Σp(v1,v2,···,vi=1,···,vN,R1N)Σ1≤i′≤Ni′≠i···Σp(v1,v2,···,vi=0,···vN,R1N)]]>=lnΣvi′∈V1Ni′≠i···Σp(v1,v2,···,vi=1,···,vN)·p(R1N|v1,v2,···v1=1,···,vN)Σvi′∈V1Ni′≠i···Σp(v1,v2,···,vi=0,···,vN)·p(R1N|v1,v2,···,vi=0,···,vN)----(18)]]>由于重复码只有全0和全1两个码字,因而上式中分子分母乘积项中的第一项只有在码字分别为全1码字和全0码字时,概率才不为0。从而,(18)式可以继续化简为
LLR(u1)=lnp(R1N|V1N=11N)p(R1N|V1N=01N)=lnΠi′=1Np(Ri′|vi′=1)Πi′=1Np(Ri′|vi′=0)----(19)]]>=Σi′NLLR(vi′)=LLR(vi)+Σi′≠iLLR(vi′)]]>上式中结果的第一部分是码元i接收信号的对数似然比值,为码元本身所具有的信息、,称为“先验信息”;第二部分是码字中其它码元根据码字的约束关系而提供的关于码元i的取值信息,称为“外信息”。由于先验信息为各个码元本身就有,因而在译码过程中译码器只需给每个码元反馈相应的外信息。重复码的译码关系可以采用图2所示的一个节点图来表示。
图2中的节点共有N条连结线,对应N个码元。这些连结线既可以作为输入也可以作为输出,分别对应N个码元的输入和译码输出。在一次译码过程中,接点通过N条连结线收到以对数似然比的形式表示的解调信息序列,随后,通过节点的运算,译码结果也通过这些连结线输出N个码元的外信息。其中,每条连结线的输出为其它各条连结线的输入值的累加和。在对LDPC码译码的描述中,重复码的这种译码节点也被称为“比特节点”。
2)校验码的约束关系及其译码以码率为N-1/N的校验码为例,长为N-1个比特的信息序列经过编码后得到一个码长为N的校验码,码元之间的约束关系可以用如下的关系式表示v1ν2…νN=0 (20)式中表示二进制和,即二进制逻辑中的“异或”。校验码所得的码字VN1经过调制、传输、解调后,得到包含该码字信息的一个软信息序列LLR(RN1)。校验码译码器即根据这个软信息序列进行译码。定义二元符号ei为码字中除了第i个码元vi外其它所有码元的二进制和,则由(20)式可得viei=0 (21)由二进制的异或关系以及(21)式,得码元vi与符号ei取值相同。因而,码元vi与符号ei形成一个相当于重复码的关系。由上面重复码所讨论得到的结果可知,码元vi通过译码后所得的后验信息为LLR(v^i)=LLR(vi)+LLR(ei)---(22)]]>显然,(22)式中的第二项就是在译码过程中译码器根据整个码序列的约束关系反馈给码元νi的外信息。下面,我们以码长为3的校验码为例,推导外信息的表示式。不失一般性,我们讨论第一个码元的外信息表示式。在码长为3比特的情况下,符号ei取值为1的概率为P(e1=1)=P(ν2=1)·P(ν3=0)+P(ν2=0)·P(v3=1)=P(ν2=1)·(1-p(ν3=1))+(1-p(ν2=1))·P(ν3=1) (23)=P(ν2=1)+p(ν3=1)-2p(ν2=1)·p(v3=1)
从而,1-2p(e1=1)=1-2p(ν2=1)-2p(ν3=1)+4p(ν2=1)·P(ν3=1)(24)=(1-2p(ν2=1))·(1-2p(ν3=1))引入一个函数Φ(x)=tanh(-12x)=exp(-12x)-exp(12x)exp(-12x)+exp(12x)=1-exp(x)1+exp(x)---(25)]]>那么,Φ(LLR(e1))=Φ(lnp(e1=1)p(e1=0))=1-exp(lnp(e1=1)p(e1=0))1+exp(lnp(e1=1)p(e1=0))=1-2p(e1=1)---(25)]]>由(24)、(26)式,得码元ν1的外信息表示形式为LLR(e1)=φ-1(φ(LLR(LLR(v2)·φ(LLR(v3))(27)(27)式可以推广到任意一个码元,也可以推广到码长大于3比特的情况。在码长为N比特得情况下,码元i的外信息为LLR(ei)=Φ-1(Π1≤i′≤Ni′≠iΦ(LLR(vi)))---(28)]]>校验码的这种译码运算关系也可以采用一个节点来表示,如图3所示图3中节点具有N个连结线,对应N个码元;每根连结线既是输入也是输出。其中,输入对应于输入到译码器的软信息序列,输出则是译码器通过运算反馈给各个码元符号的外信息。在一次译码中,每根连结线输入该码元解调后得到的软信息到节点,随后节点通过运算,给每个连结线一个外信息输出。注意到,图3中每根连结线的输出是以其它所有连结线的输入值作为输入的运算结果。在后续LDPC码的译码中,校验码的这种译码节点被称为“校验节点”。
3)具体的译码过程信息序列经过LDPC码的编码、调制、传输后,由接收机进行匹配滤波,得到相应的包含LDPC码字信息的接收序列RN1,随后这个序列被送到LDPC码译码器进行纠错译码。在一次译码过程中,译码器首先对接收序列进行解调,把接收序列转化为软信息的形式;随后,利用LDPC码的校验方程H·VT=0进行译码。注意到LDPC码的校验矩阵为超稀疏矩阵,每行/列的非零元素个数非常稀少。由校验方程知,矩阵的每行LDPC码的乘积,实际上是与该行非零元素相乘的码元的二进制和。由校验码的约束方程可知,这些码元构成了一个校验码的约束。由于校验矩阵有M行,因而一共能得到M个校验码。通过采用校验码的译码方法,每个校验码都可以在各自的约束关系下给各个码元一个反映该码元取值情况的外信息输出。而对于校验矩阵的每一列,由于其元素在校验矩阵与码字的乘法中只与同一个码元相乘,而该列的每个非零元素都对应一个校验码对该码元符号取值情况的输出。于是,这些校验码的输出与接收到的码元软信息一起,构成了一个重复码的约束。由于校验矩阵共有N列,因而可以得到N个重复码,分别与LDPC码字的N个码元对应。LDPC码的译码即是通过将校验矩阵的约束关系分解为这M个校验码和N个重复码的约束关系,通过这两种码的译码输出相互反馈为对方的输入,进行并行迭代译码。由以上关于重复码和校验码的讨论,LDPC码的译码网格图可以由图4表示首先,接收序列被译码器转化为软信息后,译码器将所有校验节点的初始输出设为0,随后根据接收序列的软信息和校验节点的初始输出进行N个比特节点的同时译码。这些比特节点对各个码元的外信息输出,被通过连结线送到相应的校验节点,随后M个节点同时进行校验码的译码,每个校验节点的对每个码元符号的译码输出都通过连结线反馈回相关的比特节点。在下一次迭代开始时,每个比特节点都将自己所有的输入累加,得到一个码元的后验信息,随后根据这个后验信息进行硬判决译码。N个比特节点的硬判决译码得到一个码字的估值信息序列。如果校验矩阵与这个估值信息序列的乘积为零,则译码器停止迭代译码并输出这个估值作为译码结果;否则,译码器进行下一次比特节点-校验节点的译码迭代,直到所得估值序列为一个合法LDPC码字或者达到最大迭代次数为止。译码器的输出为最后一次得到的硬判决估值序列。
设rij为从校验节点j输出到比特节点i的外信息,qij为从比特节点i到校验节点j的外信息,该和积译码方法的迭代过程包括如下步骤1)译码初始化对于接收到的实数序列RN1,对应的LDPC码第i个码元的初始接收值被译码器解调成对数似然比的形式LLR(Ri)=2σ2Ri,1≤i≤N---(29)]]>式中LLR表示取值为对数似然比,σ2为信道噪声的标准方差。同时,初始条件下校验节点没有任何关于码字的信息,故设置校验节点j输出到比特节点i的外信息为LLR(rij)=0 (30)2)若所得到的序列的硬判决结果不为一个合法的码字(其中硬判决是指根据序列各个符号的对数似然值决定各个码元符号的比特取值,对数似然值为正数则码元取符号“1”,为负数则码元取符号“0”),执行一次和积译码的迭代过程为a)比特节点的译码在这种节点的约束关系下,输出与输入的关系为“和”的关系,即比特节点i到校验节点j的外信息输出为LLR(qij)=Σj′∈Col[i]j′≠jLLR(rij′)+LLR(Ri)--(31)]]>式中Col[i]表示校验矩阵H第i列非零元素的位置集合。
b)校验节点的译码在校验节点的约束关系下,输出与输入的关系为某利“积”的关系,即校验节点j输出到比特节点i的外信息为LLR(rij)=Φ-1(Πi′∈Row[j]i′≠iΦ(LLR(qi′j)))----(32)]]>式中Row[j]表示校验矩阵H第j行非零元素的位置集合,并且Φ(x)=tanh(-12x)---(33)]]>3)迭代后所得的第i个比特节点的译码结果为该节点所有输入的和LLR(v^i)=Σj′∈Col[i]LLR(rij′)+LLR(Ri)---(34)]]>对所得到的译码结果进行如下的硬判决,然后转移到第二步。其中第i个码元符号的硬判决为 4)如果需要进行下一个码字的译码,跳转到第一步;否则,结束译码。
这种译码方法充分利用了超稀疏矩阵中比特节点和校验节点的性质,以及接收序列的软信息,因而可以以很低的译码复杂度得到了逼近山农极限的译码性能。同时,该算法为并行算法,可以有效降低译码延时。
三.结合以上两个算法,本发明提出了融合隐马尔可夫估计和LDPC编码的联合信源信道译码方法。
本发明基于LDPC码的随机码特性,在发送端去掉了交织器,直接将信源序列与信道编码级联起来。在译码端,该联合译码的结构图如附图5所示。图中上半部分为LDPC码的比特-校验节点,下部分的节点E表示对信源信息比特序列的隐马尔可夫估计。在本发明的迭代译码算法中,对接收序列RK1的隐马尔可夫估计首先进行,利用所得的外信息序列{LLRe(ui),1 ≤i≤K}对接收序列进行修正 随后,将经过修正后的序列送到信道译码器,在比特节点{vi,1≤i≤N}和校验节点{cj,1≤j≤M}之间进行LDPC迭代译码。如图5所示,图中上半部分为LDPC码的比特-校验节点,下部分的节点E表示对信源信息比特序列的隐马尔可夫估计。整个联合译码过程包括以下步骤首先,在隐马尔可夫估计结点5c,对接收信息序列的隐马尔可夫估计首先进行,随后将所得的外信息序列{LLRc(uj),1≤i≤K}输出到比特节点5a。在比特节点5a,对接收序列按照(36)式进行修正,同时按照(30)式进行初始化。然后,根据(34)(35)式计算各比特节5a点的硬判决输出并判断是否为一个合法的LDPC码字。如果是一个合法的码字,则译码结束,输出相应的硬判决结果;否则,执行一次迭代过程比特节点5a根据(31)式计算各节点的输出,通过节点间连线5d送到相应的校验节点5b作为输入;校验节点5b再按照(32)式计算反馈给各比特节点5a的外信息,并把它作为比特节点5a下一次迭代的输入。完成这些运算后,迭代次数加1。在下一次迭代开始时,各比特节点5a再次根据(34)(35)式计算硬判决输出并判决是否为一个合法码字。如果是一个合法码字,则结束译码迭代,输出相应的硬判决序列;否则,再次执行一次迭代过程。经过一定次数的和积译码迭代后,如果得到的硬判决系列不为一个合法码字,则将经过信道译码所得外信息修正的信息序列反馈回信源译码器5c,进行隐马尔可夫估计,随后,将所得的外信息序列输出到比特节点5a,继续进行LDPC译码迭代。直到得到一个合法码字或者迭代次数达到最大。在这种情况下,输出所得的硬判决信息序列作为译码结果。整个联合译码过程可以总结如下1)根据接收序列RK1,执行一次如上所描述的隐马尔可夫估计过程,所得的外信息通过连线传送到相应的信息比特节点;2)采用和积译码算法进行一定次数(可以根据实际计算复杂度和纠错性能的需要选择5,10,20次)的LDPC码的译码迭代,然后计算相应的硬判决输出;3)如果步骤2)所得的硬判决输出不是一个合法的LDPC码字,并且迭代次数小于最大允许的迭代次数,将信道译码所得到的外信息以及接收信息序列反馈给信源译码器,重新进行一次隐马尔可夫迭代-LDPC迭代联合译码过程;否则,推出联合译码过程并输出所得的硬判决序列。
注意到,在本发明的算法中,对信源的冗余度估计先于LDPC码的译码进行,这样获得一定的有用信息,在一定程度上降低接收序列中的差错水平。从而可以使LDPC码的迭代译码更快的收敛到正确的码字上。此外,本发明采用了一次隐马尔可夫迭代和多次LDPC和积迭代译码相结合的联合估计/译码方法,不仅可以使LDPC码的强大纠错性能得以充分发挥,还可以使得后续每次信源估计做得更加准确有效,从而可以给信道译码提供更多的有用信息。同时,该方法还有效降低了译码复杂度和译码延时。
下面,根据附图和实施例来更加详细的解释本发明实施例一本实施例为实现本发明提出的联合编码方法的系统流程,如图1所示,包括以下步骤在发送端,含有冗余的信源11输出序列12,不用经过信源压缩编码,而直接通过LDPC编码器13进行信道编码,得到包括信息序列和校验序列的码序列14,然后送到下一级调制成适合在无线信道15中传输的波形,进行传输。在接收端,接收天线对接收到的信息序列进行解调,得到接收序列16。然后对接收序列采用联合信源估计、信道译码的方法进行解码,过程如下首先,在信源译码器18中对接收序列16中的信息序列17进行隐马尔可夫参数估计,并根据所得参数计算外信息,随后将接收序列16和信源估计所得的外信息序列19作为信道译码的输入,在LDPC译码器1a中进行和积迭代译码。经过一定次数的迭代后,判断所得的硬判决译码结果是否为一个合法的码序列。如果是一个合法的码序列,则迭代译码结束,输出该硬判决序列中的信息序列1b;如果不为一个合法码字,将经过LDPC译码修正后的信息序列1c反馈给信源译码器18,进行再次隐马尔可夫参数估计并计算相应的外信息输出。然后用所得的外信息序列修正接收信息序列,继续进行LDPC迭代。直到所得序列为一个合法码序列,或者迭代次数达到限定值。此时,输出硬判决信息序列1b,然后开始下一个码矢量的联合译码。
实施例二本实施例为采用软件实现本发明提出的联合译码方法的一般流程,如图6所示,译码开始时,译码器从步骤6a转到6b,进行初始化联合迭代的次数置为0,设置最大的联合迭代次数,同时设置在每一次联合迭代中LDPC码的和积译码迭代次数。随后,在步骤6c,接收序列输入到译码器;在步骤6d,译码器计算接收系列的硬判决,并判断是否为一个合法码字。如果是,则跳转到步骤6i,输出相应的硬判决结果,随后结束本次译码过程;否则,译码器转到步骤6e,对接收序列中的信息序列部分进行一次隐马尔可夫估计,并用所得的外信息修正接收序列。完成这些运算后,译码器转到步骤6f,计算经过修正后的接收序列的硬判决,并判断所得的结果是否为一个合法码字。如果是,则跳转到步骤6i,输出相应的硬判决结果,随后结束本次译码过程;否则,译码器转到步骤6g,进行特定次数的LDPC和积译码迭代,在结束迭代时联合译码的迭代次数加1。随后,译码器在步骤6h判断联合迭代次数是否小于最大允许值。如果是,则跳转到步骤6d,继续执行相应的译码过程;否则,译码器转到步骤6i,计算并输出所得的硬判决结果。在步骤6i,译码器根据输入情况判断是否需要进行下一次译码过程。如果是,则跳转到步骤6c,开始下一个接收序列的译码;否则,译码器结束译码状态。
应当指出,本发明的方法还可以推广应用到其它诸如高清晰度有线电视广播系统等高数据率、高可靠性的宽带有线通信系统中去。
本发明的效果是,通过隐马尔可夫信源估计和LDPC码的结合,得到了与方法二同样接近山农极限的信息传输性能;同时,通过利用LDPC码的随机码特性省去联合解码中的交织过程,并且利用LDPC码的迭代译码算法的并行特性,可以得到比方法二小得多的译码复杂度和译码延时。因此,与已有的方法相比,本发明的联合编码方法更适合于无线多媒体通信系统的应用。
权利要求
1.基于低密度奇偶校验编码的信源信道联合编码方法,含有隐马尔可夫信源估计的步骤,其特征在于,它是一种融合隐马尔可夫信源估计和低密度奇偶校验(LDPC)编码的信源信道联合编码方法,它依次含有如下步骤(1),在发送端,对含有冗余的信源输出序列用LDPC编码器进行LDPC编码,得到包括信息序列和校验序列的码序列,再把它调制后送到无线信道进行传输;(2),在接收端,对接收到的信息序列解调,得到接收序列;(3),对接收序列采用联合信源估计、信道译码的方法进行解码,它依次含有如下步骤(3.1),在信源译码器中对接收序列中的信息序列进行隐马尔可夫参数估计,并根据所得参数计算外信息;(3.2),再把接收序列和信源估计所得的外信息序列作为信道译码的输入,在LDPC译码器中进行和积迭代译码;(3.3),经过一定次数的迭代后,判断所得的硬判决译码结果是否为一个合法的码序列如果是一个合法的码序列,则迭代译码结束,输出该硬判决序列中的信息序列;如果不是一个合法的码序列,经过LDPC译码修正后的信息序列反馈给信源译码器,再次进行隐马尔可夫参数估计并计算相应的外信息输出,然后用所得的外信息序列修正接收信息序列,继续进行LDPC迭代,直到所得序列为一个合法码序列,或者迭代次数达到极限值,输出硬判决信息序列;(4),如果需要,开始下一个码矢量的联合译码。
2.根据权利要求1所述的基于低密度奇偶校验编码的信源信道联合编码方法,其特征在于,步骤(3)所述的联合译码方法用软件实现时依次含有如下步骤(d)译码器初始化联合迭代的次数置为零,设置最大的联合迭代次数,同时设置在每一次联合迭代中LDPC码的和积译码迭代次数;(e)接收序列输入到译码器;(f)译码器计算接收序列的硬判决,判断是否为一个合法码字如果是,输出相应硬判决结果,本次译码过程结束;否则,对接收序列中的信息序列部分进行一次隐马尔可夫估计,并用所得的外信息修正接收序列;计算经过修正后的接收序列的硬判决,并判断得到的结果是否为一个合法的码字如果是,输出相应的硬判决结果,本次译码过程结束;否则,进行规定次数的LDPC和积译码迭代,在结束迭代时联合译码的迭代次数加1,随后判断联合迭代次数是否小于最大允许值如果是,返回到步骤(3),继续执行相应的译码过程;否则,计算并输出所得的硬判决结果;(4)根据输入情况,判断是否需要进行下一次译码过程。
全文摘要
基于低密度奇偶校验编码的信源信道联合编码方法属于通信技术领域,其特征在于,它是一种融合隐马尔可夫信源估计和低密度奇偶校验(LDPC)编码的信源信道联合编码方法,在发送端,对含有冗余的信源输出序列进行LDPC编码后调制输出,在接收端,采用联合信源估计和信道译码的解码方法,即先计算接收序列的硬判决,判断其是否为一个合法的码字如果是,就输出硬判决结果,否则,在对信息序列部分进行隐马尔可夫估计后再次硬判决,如果还不是一个合法的码序列便进行规定次数的LDPC和积译码迭代。重复以上联合迭代过程,直至达到最大允许迭代次数为止,输出本次译码硬判决结果。它的信息传输性能接近山农极限,延时小,复杂度低,适合无线多媒体通信中的应用。
文档编号H04L1/00GK1508972SQ02155459
公开日2004年6月30日 申请日期2002年12月13日 优先权日2002年12月13日
发明者殷柳国, 陆建华, 吴佑寿 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1