CN102130745A - 一种改进的ldpc码的线性规划译码方法 - Google Patents

一种改进的ldpc码的线性规划译码方法 Download PDF

Info

Publication number
CN102130745A
CN102130745A CN201110086722XA CN201110086722A CN102130745A CN 102130745 A CN102130745 A CN 102130745A CN 201110086722X A CN201110086722X A CN 201110086722XA CN 201110086722 A CN201110086722 A CN 201110086722A CN 102130745 A CN102130745 A CN 102130745A
Authority
CN
China
Prior art keywords
matrix
check
variable node
expression
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201110086722XA
Other languages
English (en)
Other versions
CN102130745B (zh
Inventor
马丕明
张娴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong University
Original Assignee
Shandong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong University filed Critical Shandong University
Priority to CN 201110086722 priority Critical patent/CN102130745B/zh
Publication of CN102130745A publication Critical patent/CN102130745A/zh
Application granted granted Critical
Publication of CN102130745B publication Critical patent/CN102130745B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

一种改进的LDPC码的线性规划译码方法,属于通信技术领域。该方法应用于通信系统的译码模块,在原始线性规划译码的基础上,通过自适应添加有效冗余校验来提高译码模块的性能,有效改善整个通信系统的通信质量。在寻找有效冗余校验方面,该方法首先通过对原始校验矩阵进行有目的的初等行变换,得到一个类单位矩阵的等价校验矩阵,再根据等价校验矩阵中的冗余校验方程来自适应产生有效冗余校验不等式,因此具有自适应性。和原始线性规划译码相比,本发明所涉及的改进的线性规划译码,具有自适应提高译码性能的特点。

Description

一种改进的LDPC码的线性规划译码方法
技术领域
本发明涉及一种改进的、应用于LDPC码的线性规划译码方法,属于通信技术领域。
背景技术
低密度奇偶校验码(Low Densty Parity Check Code,LDPC)是一类具有稀疏校验矩阵的线性分组码,由Robert G.Gallager博士于1963年提出的。它不仅有逼近Shannon限的良好性能,而且译码复杂度较低,结构灵活,是近年信道编码领域的研究热点,目前已广泛应用于深空通信、光纤通信、卫星数字视频和音频广播等领域。因此对LDPC码的译码算法的研究也尤为重要。
LDPC码的线性规划(linear programming,LP)译码方法由J.Feldman等人于2005年提出,这种方法建立在线性规划松弛的基础上,是最大似然译码的一种近似。线性规划译码具有最大似然特性,即,一旦线性规划输出为码字,那么肯定是最大似然码字。这个特性使得线性规划译码器在性能分析方面比传统迭代译码要方便很多。并且,一旦译码模型建立,便可利用优化算法来求解线性规划问题。但在译码性能上,原始线性规划译码虽然好过最小和译码,但还是不如置信算法。这是因为原始线性规划译码模型中的可行域多面体是一个经过松弛的多面体,即有整数顶点,又有分数顶点,并且只有整数顶点才和码字一一对应。线性规划的最优解总在其可行多面体的顶点处取得,所以无论整数顶点还是分数顶点都是其可能最优解。当线性规划收敛于分数解的时候,就会出现译码错误。所以,原始线性规划译码虽然操作比较简单,但译码性能不够理想。“Using linear programming to decode binary linear codes”【IEEE Trans.Inf.Theory,vol.51,no.3,Mar.2005.】一文即属于此列。
发明内容
针对原始线性规划译码的译码性能不理想,本发明提出了一种改进的LDPC码的线性规划译码方法。该方法在原始线性规划译码的基础上,采用一种自适应寻找有效冗余校验的算法,利用添加冗余校验对原始线性规划译码输出的错误分数解进行纠正,从而改进译码的性能。
本发明译码方法是由以下方式来实现的:
一种改进的LDPC码的线性规划译码方法,用于通信系统信号接收端的译码模块,以实现从含有噪声及干扰的接收序列中最大化无失真地恢复出信道发端信息的功能;预先设C是一个具有m×n维校验矩阵H={hj,i}的n长二进制LDPC码,I和J分别表示其变量节点的集合和校验节点的集合,其中,I={1,2,......,n},J={1,2,......,m};N(j)表示同校验节点j相连的变量节点的集合,即N(j)={i:i∈I,hi,j=1};V表示N(j)的具有奇数个元素的子集;Cj表示第j个校验节点的本地码,即所有满足第j个校验方程的二进制序列的集合,Pj表示Cj的凸包;假设码C中的码字y经过一个二进制离散无记忆对称信道后,信道收端接收到一个受过噪声和干扰影响的序列y*;该方法步骤如下:
A.初始化
将信道收端收到的第i(i=1,2,......,n)个变量节点的消息初始化为该节点的对数最大似然消息γi;在高斯白噪声信道下,采用二进制相移键控调制时,
γ i = ln ( Pr [ y i * | y i = 0 ] Pr [ y i * | y i = 1 ] ) = 2 y i * 2 σ 2 - - - ( 1 )
其中yi表示信道发送端的符号,σ2为该信道的噪声方差,Pr[·]表示对括号里所表示的事件求概率;
B.建立原始线性规划译码模型,求解线性规划问题
将本地码字凸包的交集P作为原始线性规划的可行域多面体,即可行域多面体其中Pj表示满足第j个校验方程的本地码字的凸包,将
Figure BDA0000054237430000024
作为目标函数,表示将接收序列中第i(i=1,2,......,n)个变量节点的消息比特译为“1”的总代价,其中fi表示原始线性规划可行域中可行点的第i个元素的取值,建立如下原始线性规划译码模型:
最小化:γTf  使得:f∈P,        (2)
其中,γ=[γ1,γ2,......γn]T表示由所有变量节点的初始消息组成的列向量,γT表示γ的转置向量,f=[f1,f2,......,fn]T表示可行域中的可行点,根据奇偶校验方程得可行域多面体P的表达式为:
0≤fi≤1,i=1,2,......,n,                 (3)
Σ i ∈ V f i - Σ i ∈ N ( j ) \ V f i ≤ | V | - 1 , ∀ V ⊆ N ( j ) , j=1,2,......,m,               (4)
其中,fi表示变量节点i在可行点f中的取值,N(j)表示同校验节点j相连的变量节点的集合,V表示N(j)的具有奇数个元素的子集,符号“|·|”表示取集合中元素的个数,
Figure BDA0000054237430000027
表示集合与集合之间的从属关系,即“属于或者等于”,符号“·\·”表示左右两个集合的差集,符号
Figure BDA0000054237430000031
表示对集合中的任何一个取值;不等式(3)将变量节点的集合I中每个变量节点的取值都限制在区间[0,1]上,不等式(4)将不满足任何校验方程的具有坏结构的二进制序列排除出可行域;求解上述原始线性规划问题,其最优解即为可行域多面体P中使目标函数取最小值的点;
C.判决
如果原始线性规划的最优解fΔ全由整数元素组成,即对任意变量节点i(i=1,2,......,n),其在点fΔ中的取值
Figure BDA0000054237430000032
都满足
Figure BDA0000054237430000033
其中fΔ表示原始线性规划可行域中具有最小目标函数值的点,译码终止,译码器将原始最优解作为最大似然码字输出,否则,此解为错误解,进入下一步;
D.添加冗余重新译码
记当前错误解为ferr,从当前错误解中将取值为分数的变量节点提取出来,假设共有L个这样的变量节点,令对原始校验矩阵H进行自适应初等行变换得到其等价校验矩阵
Figure BDA0000054237430000035
对校验节点j(j=1,2,......,min{m,L}),记
Figure BDA0000054237430000036
Figure BDA0000054237430000037
kj=|Kj|,
Figure BDA0000054237430000038
其中
Figure BDA0000054237430000039
表示矩阵
Figure BDA00000542374300000310
中同第j个校验节点相连的变量节点的集合,U表示在当前错误解ferr中取值为分数的变量节点的集合,u表示集合U中的变量节点,
Figure BDA00000542374300000311
表示变量节点u在错误解ferr中的取值,Aj表示矩阵
Figure BDA00000542374300000312
中既与校验节点j相连又在错误解ferr中取值为分数的变量节点的集合,s表示集合Aj中的变量节点,Kj表示矩阵
Figure BDA00000542374300000313
中既与校验节点j相连又在错误ferr中取值为1的变量节点的集合,kj表示集合Kj中元素的个数,K′j表示矩阵中既与校验节点j相连又在错误ferr中取值为0的变量节点的集合,h表示集合Kj中的变量节点,
Figure BDA00000542374300000315
表示变量节点h在错误解ferr中的取值,h′表示集合K′j中的变量节点,
Figure BDA00000542374300000316
表示变量节点h′在错误解ferr中的取值,当|Aj|=1时,即矩阵
Figure BDA00000542374300000317
中与校验节点j相连的变量节点中有且只有一个在错误解ferr中取值为分数,如果kj是奇数,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h - f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j - 1 , - - - ( 5 )
其中fh、fs、fh′分别表示变量节点h、s、h′在可行点f中的取值,如果kj是偶数,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h + f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j , - - - ( 6 )
当|Aj|≥2时,如果kj是奇数并且
Figure BDA0000054237430000042
其中
Figure BDA0000054237430000043
表示变量节点s在错误解ferr中的取值,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h - Σ s ∈ A j f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j - 1 , - - - ( 7 )
如果kj是偶数,记smax为集合Aj中在错误解ferr中取值最大的那个变量节点,记该变量节点在错误解ferr中的取值为
Figure BDA0000054237430000045
那么有
Figure BDA0000054237430000046
如果
Figure BDA0000054237430000047
那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h + f s max - Σ s ∈ A j \ s max f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j ; - - - ( 8 )
其中
Figure BDA0000054237430000049
表示变量节点smax在可行点f中的取值;将得到的所有冗余校验不等式添加至原始线性规划问题中,重新译码;
E.判断结果输出
如果此时的解全由整数元素组成,译码模块输出最大似然码字,否则,译码模块输出错误或者返回步骤D,继续添加冗余,重新译码,直到获得最大似然码字或者达到预期要求;
F.算法结束,译码终止。
上述步骤D中所述的对原始校验矩阵H进行自适应初等行变换得到等价校验矩阵其详细步骤如下:
1)初始化,输入矩阵H,令计数变量l=1;
2)取H矩阵第l列中除第l个元素外其余所有非零元素,设共有D个,记其行标的集合为Tl,即
Figure BDA00000542374300000411
其中t表示集合Tl中的元素,
Figure BDA00000542374300000412
表示矩阵第t行第ul的元素,m表示矩阵的行数;如果l∈Tl,直接进入到4),否则,继续下一步;
3)对H矩阵中第t1与第l行中对应位置的元素进行模二和运算,用得到的结果更新矩阵第l行中的元素,即对矩阵的任意列g(g=1,2,......,n),令
Figure BDA00000542374300000413
其中hl,g表示矩阵第l行第g列的元素,表示矩阵第t1行第g列的元素;
4)将H矩阵第t1,t2,......,tD行中的元素分别与第l行中的对应位置的元素进行模二和运算,用所得结果更新矩阵第t1,t2,......,tD行中的元素;更新变量l=l+1;
5)如果l≤L且l≤m,返回步骤2),其中L表示错误解ferr中取值为分数的变量节点的数目,否则,继续下一步;
6)步骤终止,获得矩阵
Figure BDA0000054237430000051
上述步骤4)中所述的将矩阵H第t1,t2,......,tD行中的元素分别与第l行中的对应位置的元素进行模二和运算并用所得结果更新矩阵第t1,t2,......,tD行中的元素,具体步骤如下:
i、初始化,令d=1,其中d表示集合Tl中元素的下标,d∈{1,2,......,D},D为H矩阵第l列中除第l个元素外其余所有非零元素的个数;
ii、对矩阵的任意列g(g=1,2,......,n),用元素
Figure BDA0000054237430000052
与hl,g的模二和来更新矩阵中第td行第g列的元素即令
Figure BDA0000054237430000054
其中
Figure BDA0000054237430000055
表示矩阵第td行第g列的元素,hl,g表示矩阵第l行第g列的元素;更新集合Tl中元素的下标d=d+1;
iii、如果d≤D,返回步骤ii;否则,进入下一步;
iv、终止。
本发明利用对原始校验矩阵进行初等行变化得到冗余奇偶校验方程,从而得到新的奇偶校验不等式,通过对原始线性规划译码添加这些新的限制条件,在不影响码C的基础上,缩小了可行域范围,减少了可能的分数解,从而提高了译码性能;假设共有W个冗余奇偶校验不等式,改进的线性规划译码模型如下:
最小化:γTf
使得:f∈P且 λ 1 T f ≤ β 1 , λ 2 T f ≤ β 2 , λ W T f ≤ β W ; - - - ( 9 )
其中,对任意的w∈{1,2,......,W},λw表示一个n维列向量,表示λw的转置向量,βw表示一个数值,
Figure BDA00000542374300000510
表示新添加的冗余校验不等式。
这种改进的线性规划译码算法通过添加冗余校验提高了译码模块的译码性能,并且针对不同的错误分数解添加不同的有效冗余校验,因此具有自适应改进译码性能的特点。相比较于原始线性规划译码,这种改进的线性规划译码,有效提高了信道收端译码模块的纠错能力,从而改善了整个通信系统的通信质量。
附图说明
图1是本发明译码方法的流程框图,其中A-F为其各个步骤。
图2是图1中步骤D所示的对原始校验矩阵H进行自适应初等行变换得到等价校验矩阵
Figure BDA0000054237430000061
的流程框图,其中1)-6)为其各个步骤。
图3是图2中步骤4)所示方法的流程图,其中i-iv为其各个步骤。
具体实施方式:
下面结合附图和实施例对本发明作进一步说明,但不限于此。
实施例:
一种改进的LDPC码的线性规划译码方法,用于通信系统信号接收端的译码模块,以实现从含有噪声及干扰的接收序列中最大化无失真地恢复出信道发端信息的功能;预先设C是一个具有m×n维校验矩阵H={hj,i}的n长二进制LDPC码,I和J分别表示其变量节点的集合和校验节点的集合,其中,I={1,2,......,n},J={1,2,......,m};N(j)表示同校验节点j相连的变量节点的集合,即N(j)={i:i∈I,hi,j=1};V表示N(j)的具有奇数个元素的子集;Cj表示第j个校验节点的本地码,即所有满足第j个校验方程的二进制序列的集合,Pi表示Cj的凸包;假设码C中的码字y经过一个二进制离散无记忆对称信道后,信道收端接收到一个受过噪声和干扰影响的序列y*;如图1所示,该方法步骤如下:
A.初始化
将信道收端收到的第i(i=1,2,......,n)个变量节点的消息
Figure BDA0000054237430000062
初始化为该节点的对数最大似然消息γi;在高斯白噪声信道下,采用二进制相移键控调制时,
γ i = ln ( Pr [ y i * | y i = 0 ] Pr [ y i * | y i = 1 ] ) = 2 y i * 2 σ 2 - - - ( 1 )
其中yi表示信道发送端的符号,σ2为该信道的噪声方差,Pr[·]表示对括号里所表示的事件求概率;
B.建立原始线性规划译码模型,求解线性规划问题
将本地码字凸包的交集P作为原始线性规划的可行域多面体,即可行域多面体
Figure BDA0000054237430000064
其中Pj表示满足第j个校验方程的本地码字的凸包,将
Figure BDA0000054237430000065
作为目标函数,表示将接收序列中第i(i=1,2,......,n)个变量节点的消息比特译为“1”的总代价,其中fi表示原始线性规划可行域中可行点的第i个元素的取值,建立如下原始线性规划译码模型:
最小化:γTf  使得:f∈P,          (2)
其中,γ=[γ1,γ2,......γn]T表示由所有变量节点的初始消息组成的列向量,γT表示γ的转置向量,f=[f1,f2,......,fn]T表示可行域中的可行点,根据奇偶校验方程得可行域多面体P的表达式为:
0≤fi≤1,i=1,2,......,n,         (3)
Σ i ∈ V f i - Σ i ∈ N ( j ) \ V f i ≤ | V | - 1 , ∀ V ⊆ N ( j ) , j=1,2,......,m,(4)
其中,fi表示变量节点i在可行点f中的取值,N(j)表示同校验节点j相连的变量节点的集合,V表示N(j)的具有奇数个元素的子集,符号“|·|”表示取集合中元素的个数,
Figure BDA0000054237430000073
表示集合与集合之间的从属关系,即“属于或者等于”,符号“·\·”表示左右两个集合的差集,符号
Figure BDA0000054237430000074
表示对集合中的任何一个取值;不等式(3)将变量节点的集合I中每个变量节点的取值都限制在区间[0,1]上,不等式(4)将不满足任何校验方程的具有坏结构的二进制序列排除出可行域;求解上述原始线性规划问题,其最优解即为可行域多面体P中使目标函数取最小值的点;
C.判决
如果原始线性规划的最优解fΔ全由整数元素组成,即对任意变量节点i(i=1,2,......,n),其在点fΔ中的取值
Figure BDA0000054237430000075
都满足
Figure BDA0000054237430000076
其中fΔ表示原始线性规划可行域中具有最小目标函数值的点,译码终止,译码器将原始最优解作为最大似然码字输出,否则,此解为错误解,进入下一步;
D.添加冗余重新译码
记当前错误解为ferr,从当前错误解中将取值为分数的变量节点提取出来,假设共有L个这样的变量节点,令
Figure BDA0000054237430000077
对原始校验矩阵H进行自适应初等行变换得到其等价校验矩阵
Figure BDA0000054237430000078
对校验节点j(j=1,2,......,min{m,L}),记
Figure BDA0000054237430000079
Figure BDA00000542374300000710
kj=|Kj|,
Figure BDA00000542374300000711
其中
Figure BDA00000542374300000712
表示矩阵中同第j个校验节点相连的变量节点的集合,U表示在当前错误解ferr中取值为分数的变量节点的集合,u表示集合U中的变量节点,
Figure BDA0000054237430000081
表示变量节点u在错误解ferr中的取值,Aj表示矩阵
Figure BDA0000054237430000082
中既与校验节点j相连又在错误解ferr中取值为分数的变量节点的集合,s表示集合Aj中的变量节点,Kj表示矩阵
Figure BDA0000054237430000083
中既与校验节点j相连又在错误ferr中取值为1的变量节点的集合,kj表示集合Kj中元素的个数,K′j表示矩阵
Figure BDA0000054237430000084
中既与校验节点j相连又在错误ferr中取值为0的变量节点的集合,h表示集合Kj中的变量节点,
Figure BDA0000054237430000085
表示变量节点h在错误解ferr中的取值,h′表示集合K′j中的变量节点,表示变量节点h′在错误解ferr中的取值,当|Aj|=1时,即矩阵
Figure BDA0000054237430000087
中与校验节点j相连的变量节点中有且只有一个在错误解ferr中取值为分数,如果kj是奇数,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h - f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j - 1 , - - - ( 5 )
其中fh、fs、fh′分别表示变量节点h、s、h′在可行点f中的取值,如果kj是偶数,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h + f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j , - - - ( 6 )
当|Aj|≥2时,如果kj是奇数并且
Figure BDA00000542374300000810
其中
Figure BDA00000542374300000811
表示变量节点s在错误解ferr中的取值,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h - Σ s ∈ A j f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j - 1 , - - - ( 7 )
如果kj是偶数,记smax为集合Aj中在错误解ferr中取值最大的那个变量节点,记该变量节点在错误解ferr中的取值为
Figure BDA00000542374300000813
那么有
Figure BDA00000542374300000814
如果
Figure BDA00000542374300000815
那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h + f s max - Σ s ∈ A j \ s max f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j ; - - - ( 8 )
其中
Figure BDA00000542374300000817
表示变量节点smax在可行点f中的取值;将得到的所有冗余校验不等式添加至原始线性规划问题中,重新译码;
E.判断结果输出
如果此时的解全由整数元素组成,译码模块输出最大似然码字,否则,译码模块输出错误或者返回步骤D,继续添加冗余,重新译码,直到获得最大似然码字或者达到预期要求;
F.算法结束,译码终止。
上述步骤D中所述的对原始校验矩阵H进行自适应初等行变换得到等价校验矩阵如图2所示,其详细步骤如下:
1)初始化,输入矩阵H,令计数变量l=1;
2)取H矩阵第l列中除第l个元素外其余所有非零元素,设共有D个,记其行标的集合为Tl,即
Figure BDA0000054237430000092
其中t表示集合Tl中的元素,表示矩阵第t行第ul的元素,m表示矩阵的行数;如果l∈Tl,直接进入到4),否则,继续下一步;
3)对H矩阵中第t1与第l行中对应位置的元素进行模二和运算,用得到的结果更新矩阵第l行中的元素,即对矩阵的任意列g(g=1,2,......,n),令
Figure BDA0000054237430000094
其中hl,g表示矩阵第l行第g列的元素,表示矩阵第t1行第g列的元素;
4)将H矩阵第t1,t2,......,tD行中的元素分别与第l行中的对应位置的元素进行模二和运算,用所得结果更新矩阵第t1,t2,......,tD行中的元素;更新变量l=l+1;
5)如果l≤L且l≤m,返回步骤2),其中L表示错误解ferr中取值为分数的变量节点的数目,否则,继续下一步;
6)步骤终止,获得矩阵
Figure BDA0000054237430000096
上述步骤4)中所述的将矩阵H第t1,t2,......,tD行中的元素分别与第l行中的对应位置的元素进行模二和运算并用所得结果更新矩阵第t1,t2,......,tD行中的元素,如图3所示,具体步骤如下:
i、初始化,令d=1,其中d表示集合Tl中元素的下标,d∈{1,2,......,D},D为H矩阵第l列中除第l个元素外其余所有非零元素的个数;
ii、对矩阵的任意列g(g=1,2,......,n),用元素
Figure BDA0000054237430000097
与hl,g的模二和来更新矩阵中第td行第g列的元素
Figure BDA0000054237430000098
即令
Figure BDA0000054237430000099
其中表示矩阵第td行第g列的元素,hl,g表示矩阵第l行第g列的元素;更新集合Tl中元素的下标d=d+1;
iii、如果d≤D,返回步骤ii;否则,进入下一步;
iv、终止。

Claims (3)

1.一种改进的LDPC码的线性规划译码方法,用于通信系统信号接收端的译码模块,以实现从含有噪声及干扰的接收序列中最大化无失真地恢复出信道发端信息的功能;预先设C是一个具有m×n维校验矩阵H={hj,i}的n长二进制LDPC码,I和J分别表示其变量节点的集合和校验节点的集合,其中,I={1,2,......,n},J={1,2,......,m};N(j)表示同校验节点j相连的变量节点的集合,即N(j)={i:i∈I,hi,j=1};V表示N(j)的具有奇数个元素的子集;Cj表示第j个校验节点的本地码,即所有满足第j个校验方程的二进制序列的集合,Pi表示Cj的凸包;假设码C中的码字y经过一个二进制离散无记忆对称信道后,信道收端接收到一个受过噪声和干扰影响的序列y*;该方法步骤如下:
A.初始化
将信道收端收到的第i(i=1,2,......,n)个变量节点的消息
Figure FDA0000054237420000011
初始化为该节点的对数最大似然消息γi;在高斯白噪声信道下,采用二进制相移键控调制时,
γ i = ln ( Pr [ y i * | y i = 0 ] Pr [ y i * | y i = 1 ] ) = 2 y i * 2 σ 2 - - - ( 1 )
其中yi表示信道发送端的符号,σ2为该信道的噪声方差,Pr[·]表示对括号里所表示的事件求概率;
B.建立原始线性规划译码模型,求解线性规划问题
将本地码字凸包的交集P作为原始线性规划的可行域多面体,即可行域多面体
Figure FDA0000054237420000013
其中Pi表示满足第j个校验方程的本地码字的凸包,将
Figure FDA0000054237420000014
作为目标函数,表示将接收序列中第i(i=1,2,......,n)个变量节点的消息比特译为“1”的总代价,其中fi表示原始线性规划可行域中可行点的第i个元素的取值,建立如下原始线性规划译码模型:
最小化:γTf  使得:f∈P,        (2)
其中,γ=[γ1,γ2,......γn]T表示由所有变量节点的初始消息组成的列向量,γT表示γ的转置向量,f=[f1,f2,......,fn]T表示可行域中的可行点,根据奇偶校验方程得可行域多面体P的表达式为:
0≤fi≤1,i=1,2,......,n,     (3)
Σ i ∈ V f i - Σ i ∈ N ( j ) \ V f i ≤ | V | - 1 , ∀ V ⊆ N ( j ) , j=1,2,......,m,(4)
其中,fi表示变量节点i在可行点f中的取值,N(j)表示同校验节点j相连的变量节点的集合,V表示N(j)的具有奇数个元素的子集,符号“|·|”表示取集合中元素的个数,
Figure FDA0000054237420000023
表示集合与集合之间的从属关系,即“属于或者等于”,符号“·\·”表示左右两个集合的差集,符号表示对集合中的任何一个取值;不等式(3)将变量节点的集合I中每个变量节点的取值都限制在区间[0,1]上,不等式(4)将不满足任何校验方程的具有坏结构的二进制序列排除出可行域;求解上述原始线性规划问题,其最优解即为可行域多面体P中使目标函数取最小值的点;
C.判决
如果原始线性规划的最优解fΔ全由整数元素组成,即对任意变量节点i(i=1,2,......,n),其在点fΔ中的取值
Figure FDA0000054237420000025
都满足其中fΔ表示原始线性规划可行域中具有最小目标函数值的点,译码终止,译码器将原始最优解作为最大似然码字输出,否则,此解为错误解,进入下一步;
D.添加冗余重新译码
记当前错误解为ferr,从当前错误解中将取值为分数的变量节点提取出来,假设共有L个这样的变量节点,令对原始校验矩阵H进行自适应初等行变换得到其等价校验矩阵
Figure FDA0000054237420000028
对校验节点j(j=1,2,......,min{m,L}),记
Figure FDA0000054237420000029
Figure FDA00000542374200000210
kj=|Kj|,
Figure FDA00000542374200000211
其中
Figure FDA00000542374200000212
表示矩阵
Figure FDA00000542374200000213
中同第j个校验节点相连的变量节点的集合,U表示在当前错误解ferr中取值为分数的变量节点的集合,u表示集合U中的变量节点,
Figure FDA00000542374200000214
表示变量节点u在错误解ferr中的取值,Aj表示矩阵中既与校验节点j相连又在错误解ferr中取值为分数的变量节点的集合,s表示集合Aj中的变量节点,Kj表示矩阵
Figure FDA00000542374200000216
中既与校验节点j相连又在错误ferr中取值为1的变量节点的集合,kj表示集合Kj中元素的个数,K′j表示矩阵
Figure FDA00000542374200000217
中既与校验节点j相连又在错误ferr中取值为0的变量节点的集合,h表示集合Kj中的变量节点,
Figure FDA00000542374200000218
表示变量节点h在错误解ferr中的取值,h′表示集合K′j中的变量节点,
Figure FDA00000542374200000219
表示变量节点h′在错误解ferr中的取值,当|Aj|=1时,即矩阵
Figure FDA0000054237420000031
中与校验节点j相连的变量节点中有且只有一个在错误解ferr中取值为分数,如果kj是奇数,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h - f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j - 1 , - - - ( 5 )
其中fh、fs、fh′分别表示变量节点h、s、h′在可行点f中的取值,如果kj是偶数,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h + f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j , - - - ( 6 )
当|Aj|≥2时,如果kj是奇数并且
Figure FDA0000054237420000034
其中
Figure FDA0000054237420000035
表示变量节点s在错误解ferr中的取值,那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h - Σ s ∈ A j f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j - 1 , - - - ( 7 )
如果kj是偶数,记smax为集合Aj中在错误解ferr中取值最大的那个变量节点,记该变量节点在错误解ferr中的取值为
Figure FDA0000054237420000037
那么有如果
Figure FDA0000054237420000039
那么关于校验节点j的有效冗余校验为
Σ h ∈ K j f h + f s max - Σ s ∈ A j \ s max f s - Σ h ′ ∈ K j ′ f h ′ ≤ k j ; - - - ( 8 )
其中
Figure FDA00000542374200000311
表示变量节点smax在可行点f中的取值;将得到的所有冗余校验不等式添加至原始线性规划问题中,重新译码;
E.判断结果输出
如果此时的解全由整数元素组成,译码模块输出最大似然码字,否则,译码模块输出错误或者返回步骤D,继续添加冗余,重新译码,直到获得最大似然码字或者达到预期要求;
F.算法结束,译码终止。
2.如权利要求1所述的一种改进的LDPC码的线性规划译码方法上述步骤D中所述的对原始校验矩阵H进行自适应初等行变换得到等价校验矩阵
Figure FDA00000542374200000312
其详细步骤如下:
1)初始化,输入矩阵H,令计数变量l=1;
2)取H矩阵第l列中除第l个元素外其余所有非零元素,设共有D个,记其行标的集合为Tl,即其中t表示集合Tl中的元系,
Figure FDA00000542374200000314
表示矩阵第t行第ul的元素,m表示矩阵的行数;如果l∈Tl,直接进入到4),否则,继续下一步;
3)对H矩阵中第t1与第l行中对应位置的元素进行模二和运算,用得到的结果更新矩阵第l行中的元素,即对矩阵的任意列g(g=1,2,......,n),令
Figure FDA0000054237420000041
其中hl,g表示矩阵第l行第g列的元素,
Figure FDA0000054237420000042
表示矩阵第t1行第g列的元素;
4)将H矩阵第t1,t2,......,tD行中的元素分别与第l行中的对应位置的元素进行模二和运算,用所得结果更新矩阵第t1,t2,......,tD行中的元素;更新变量l=l+1;
5)如果l≤L且l≤m,返回步骤2),其中L表示错误解ferr中取值为分数的变量节点的数目,否则,继续下一步;
6)步骤终止,获得矩阵
Figure FDA0000054237420000043
3.如权利要求2上述步骤4)中所述的将矩阵H第t1,t2,......,tD行中的元素分别与第l行中的对应位置的元素进行模二和运算并用所得结果更新矩阵第t1,t2,......,tD行中的元素,具体步骤如下:
i、初始化,令d=1,其中d表示集合Tl中元素的下标,d∈{1,2,......,D},D为H矩阵第l列中除第l个元素外其余所有非零元素的个数;
ii、对矩阵的任意列g(g=1,2,......,n),用元素
Figure FDA0000054237420000044
与hl,g的模二和来更新矩阵中第td行第g列的元素
Figure FDA0000054237420000045
即令
Figure FDA0000054237420000046
其中
Figure FDA0000054237420000047
表示矩阵第td行第g列的元素,hl,g表示矩阵第l行第g列的元素;更新集合Tl中元素的下标d=d+1;
iii、如果d≤D,返回步骤ii;否则,进入下一步;
iv、终止。
CN 201110086722 2011-04-07 2011-04-07 一种改进的ldpc码的线性规划译码方法 Expired - Fee Related CN102130745B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110086722 CN102130745B (zh) 2011-04-07 2011-04-07 一种改进的ldpc码的线性规划译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110086722 CN102130745B (zh) 2011-04-07 2011-04-07 一种改进的ldpc码的线性规划译码方法

Publications (2)

Publication Number Publication Date
CN102130745A true CN102130745A (zh) 2011-07-20
CN102130745B CN102130745B (zh) 2013-04-17

Family

ID=44268646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110086722 Expired - Fee Related CN102130745B (zh) 2011-04-07 2011-04-07 一种改进的ldpc码的线性规划译码方法

Country Status (1)

Country Link
CN (1) CN102130745B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102780494A (zh) * 2012-07-06 2012-11-14 华南理工大学 一种基于线性规划的ldpc译码器及译码方法
CN104660270A (zh) * 2014-12-25 2015-05-27 西安电子科技大学 多进制线性分组码的线性规划译码方法
CN104682968A (zh) * 2015-03-14 2015-06-03 西安电子科技大学 高速率低密度奇偶检验码的线性规划译码方法
CN106899388A (zh) * 2017-03-14 2017-06-27 重庆邮电大学 Ldpc码在mimo信道下的联合检测与解码方法
CN110995277A (zh) * 2019-12-06 2020-04-10 浙江大学 一种多层神经网络辅助的罚对偶分解信道译码方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996764A (zh) * 2007-01-10 2007-07-11 北京航空航天大学 基于奇偶校验矩阵的ldpc码的译码方法及译码器
US20070260957A1 (en) * 2006-05-03 2007-11-08 Emina Soljanin Encoded transmission
CN101159514A (zh) * 2007-10-31 2008-04-09 中兴通讯股份有限公司 一种传输块循环冗余码的添加方法
US20090034661A1 (en) * 2007-07-31 2009-02-05 Pascal Olivier Vontobel Coordinate-ascent method for linear programming decoding
CN101502002A (zh) * 2006-08-25 2009-08-05 松下电器产业株式会社 无线通信装置及差错检测编码方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070260957A1 (en) * 2006-05-03 2007-11-08 Emina Soljanin Encoded transmission
CN101502002A (zh) * 2006-08-25 2009-08-05 松下电器产业株式会社 无线通信装置及差错检测编码方法
CN1996764A (zh) * 2007-01-10 2007-07-11 北京航空航天大学 基于奇偶校验矩阵的ldpc码的译码方法及译码器
US20090034661A1 (en) * 2007-07-31 2009-02-05 Pascal Olivier Vontobel Coordinate-ascent method for linear programming decoding
CN101159514A (zh) * 2007-10-31 2008-04-09 中兴通讯股份有限公司 一种传输块循环冗余码的添加方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JON FELDMAN等: "Using Linear Programming to Decode Binary Linear Codes", 《IEEE TRANSACTIONS ON TINFORMATION THEORY》, vol. 51, no. 3, 31 March 2005 (2005-03-31), pages 954 - 972, XP011127423, DOI: doi:10.1109/TIT.2004.842696 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102780494A (zh) * 2012-07-06 2012-11-14 华南理工大学 一种基于线性规划的ldpc译码器及译码方法
CN102780494B (zh) * 2012-07-06 2015-09-02 华南理工大学 一种基于线性规划的ldpc译码器及译码方法
CN104660270A (zh) * 2014-12-25 2015-05-27 西安电子科技大学 多进制线性分组码的线性规划译码方法
CN104660270B (zh) * 2014-12-25 2018-03-13 西安电子科技大学 多进制线性分组码的线性规划译码方法
CN104682968A (zh) * 2015-03-14 2015-06-03 西安电子科技大学 高速率低密度奇偶检验码的线性规划译码方法
CN104682968B (zh) * 2015-03-14 2017-11-17 西安电子科技大学 高速率低密度奇偶检验码的线性规划译码方法
CN106899388A (zh) * 2017-03-14 2017-06-27 重庆邮电大学 Ldpc码在mimo信道下的联合检测与解码方法
CN110995277A (zh) * 2019-12-06 2020-04-10 浙江大学 一种多层神经网络辅助的罚对偶分解信道译码方法
WO2021110054A1 (zh) * 2019-12-06 2021-06-10 浙江大学 一种多层神经网络辅助的罚对偶分解信道译码方法

Also Published As

Publication number Publication date
CN102130745B (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
CN102292917B (zh) 利用二元删除替代信道在awgn信道条件下将比特交织器适配于ldpc码和调制的方法和装置
CN105933010A (zh) 一种基于分段校验辅助的低复杂度极化码译码scl算法
CN102130745B (zh) 一种改进的ldpc码的线性规划译码方法
CN103269229A (zh) 一种ldpc-rs二维乘积码的混合迭代译码方法
CN102577134A (zh) 非二元码的解码方法
CN101252606A (zh) 深空通信中基于低密度奇偶校验码-喷泉码的编译方法
CN102158233A (zh) 一种ldpc码的线性规划与最小和级联译码方法
CN113890543B (zh) 基于多层感知神经网络的多进制ldpc码的译码方法
Hof et al. Polar coding for reliable communications over parallel channels
CN109889208A (zh) Navdat中基于归一化最小和算法的ldpc信道译码方法
CN104539295A (zh) 一种基于特征位先验信息的新型ldpc迭代译码的初始化方法
CN102904686B (zh) 用于编码调制的qc-ldpc码的构造方法及编码调制方法
US8190977B2 (en) Decoder of error correction codes
CN108650029B (zh) 一种适用于量子安全直接通信的纠错编译码方法
CN107070586B (zh) 一种基于低密度格码的中继协作编码方法及系统
CN102148619B (zh) 一种应用于ldpc码的自适应线性规划译码算法
CN105811999A (zh) 基于改进的kv算法的矩阵式二维码rs译码纠错方法
CN102075476A (zh) 极低信噪比下的迭代载波同步方法
CN101882972A (zh) 一种Raptor码的解码方法
CN112332866B (zh) 一种基于dvb-s与dvb-s2信号的级联码参数识别方法
CN101431340B (zh) 一种里德-所罗门码的快速自适应置信度传播译码方法
CN101789795B (zh) 基于多码率原模图ldpc码的编码方法及编码器
CN101150377A (zh) 用于低密度奇偶校验编码的32apsk系统的比特映射方案
CN111030704B (zh) 一种基于极化码的免同步通信方法、装置及系统
CN105680882A (zh) 一种平方剩余码的硬判决译码方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130417

Termination date: 20170407