CN110708139B - 一种基于并行矢量消息传递算法的ldpc码字扩展方法及系统 - Google Patents
一种基于并行矢量消息传递算法的ldpc码字扩展方法及系统 Download PDFInfo
- Publication number
- CN110708139B CN110708139B CN201910898665.1A CN201910898665A CN110708139B CN 110708139 B CN110708139 B CN 110708139B CN 201910898665 A CN201910898665 A CN 201910898665A CN 110708139 B CN110708139 B CN 110708139B
- Authority
- CN
- China
- Prior art keywords
- matrix
- ldpc code
- tanner graph
- sub
- check
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明提供一种基于并行矢量消息传递算法的LDPC码字扩展方法及系统,本方法引入了一个考虑所有的短环的新的环度量CM,将Tanner图中的所有小于某个长度的短环看作一个整体,用参数CM来评定其对总体性能的影响从而使整体矩阵达到最优。本方法降低了误码率平台,从而得到性能较好的LDPC码。
Description
技术领域
本发明属于通信技术领域,尤其涉及一种基于并行矢量消息传递(PMP)算法的LDPC码字扩展方法及系统。
背景技术
前向纠错(FEC)技术是通信系统中不可或缺的技术。基于稀疏奇偶校验矩阵的线性分组码-低密度奇偶校验码(LDPC)的性能接近香农极限,是目前通信和存储系统,如Wimax和模式化媒体存储的DVB-S2、IEEE802.11、IEEE802.16e标准中最流行的差错控制编码技术之一。近年来,5G移动通信中的一种标准信道码也采用了LDPC码。其中,得益于低复杂度和简单的硬件实现,准循环低密度奇偶校验码(QC-LDPC)是应用最广泛的LDPC码。
由于不同的通信系统对存储空间,误码率等要求不同,我们经常需要不同长度的QC-LDPC码。因此,大量的研究集中在基于给定的QC-LDPC码字基础上得到不同长度的新的QC-LDPC码字,其中,扩展是获得长码的一种经典的方法。传统的QC-LDPC码字扩展方法使用的度量只考虑了Tanner图中最短环的长度和最短环的数量,因此其在衡量码字的性能时有一定的不足,无法满足通信系统日益增长的性能需求。
发明内容
针对上述问题,本发明提出了一种基于并行矢量消息传递算法的LDPC码字扩展方法及系统,其在传统方法只考虑最短环的基础上引入了较短环的长度和个数,并引进了一种新的环度量(CM),有效提高了码字的纠错性能。
一种基于并行矢量消息传递算法的LDPC码扩展方法,所述LDPC码C0,其校验矩阵为H0,子矩阵为一个Z0×Z0的循环移位矩阵,指数矩阵为E(H0)=(aij),扩展后的LDPC码C1,其校验矩阵为H1,子矩阵是一个Z1×Z1的循环移位矩阵,其中Z1=qZ0,扩展倍数为q,指数矩阵为E(H1)=(bij),其步骤包括:
1)使用E(H0)初始化E(H1),并对H0中每一个非零矩阵位置,用代替H1中的相应位置,其中bij在aij,aij+Z0,aij+2Z0,...,aij+(q-1)Z0中取值,且计算所有可能取值对应的Tanner图的参数CM;
进一步地,所述LDPC码为一QC-LDPC码。
进一步地,所述QC-LDPC码为一奇偶校验矩阵,包括零矩阵和循环移位矩阵。
进一步地,所述QC-LDPC码C0与C1的母矩阵具有相同构造。
进一步地,所述QC-LDPC码校验矩阵中循环矩阵为零矩阵的位置对应的母矩阵相应位置为0,其他位置为1。
进一步地,Tanner图的参数CM的计算,其步骤包括:
1)对Tanner图中所有边所代表的矢量信息进行初始化;
2)在迭代过程中,记录从c2v或从v2c的边的信息更新时的不同矢量的数目,并记录相应边矢量的数目,其中c2v为从校验节点ci到变量节点vj,v2c为从变量节点vj到校验节点ci;
3)根据停止时每条边的最后一次c2v的信息计算包括这条边的所有环的数量,得到包括边Ej,i的cycle-2l的数量,其中cycle-2l表示在Tanner图里环长为2l的环,l为迭代次数;
4)根据包括边Ej,i的cycle-2l的数量,计算边Ej,i对应的参数CM;
5)将变量节点vj相连接边Ej,i的CM相加,计算变量节点vj的CM;
6)将Tanner图所有变量节点vj的CM相加,计算出Tanner图的总CM。
进一步地,Tanner图中的边的数目是一个定值,当所述cycle-2l的数目减少时,其他长度的环的数目增加。
一种基于并行矢量消息传递算法的LDPC码扩展系统,所述LDPC码为一QC-LDPC码C0,其校验矩阵为H0,子矩阵为一个Z0×Z0的循环移位矩阵,指数矩阵为E(H0)=(aij),扩展后的LDPC码C1,其校验矩阵为H1,子矩阵是一个Z1×Z1的循环移位矩阵,其中Z1=qZ0,扩展倍数为q,指数矩阵为E(H1)=(bij),其包括:
1)参数CM计算模块,用以使用E(H0)初始化E(H1),并对H0中每一个非零矩阵位置,用代替H1中的相应位置,其中bij在aij,aij+Z0,aij+2Z0,...,aij+(q-1)Z0中取值,且计算所有可能取值对应的Tanner图的参数CM;
进一步地,所述QC-LDPC码C0与C1的母矩阵具有相同构造。
本发明在传统方法只考虑最短环的基础上引入了较短环的长度和个数,引进了一种新的环度量(CM),以提高LDPC码的性能并尽可能降低误码率平台。
附图说明
1、LDPC码的Tanner示例图。
2、基于CM的LDPC码扩展方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清晰,下面通过具体实施例和附图对本发明进行进一步详细阐述。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
一个QC-LDPC码是用一个奇偶校验矩阵来描述的,包括零矩阵和循环移位矩阵,这个奇偶校验矩阵的形式如下:为一个M×N的矩阵,是一个Z×Z的循环移位矩阵,aij取值为{-1,0,1,2,...,Z-1}。当aij=-1时,为零矩阵;当aij=0时,为单位矩阵;当aij为其他值时,为单位矩阵相应向右循环移位aij次。在H矩阵所表示的Tanner图中,N=n×Z为变量节点(VN)数目,M=m×Z为校验节点(CN)数目,记定义H矩阵的对应母矩阵M(H)如下:为一个m×n的二进制矩阵,H矩阵中循环矩阵为零矩阵的位置对应的M(H)相应位置为0,其他位置为1。
众所周知,LDPC码可以用Tanner图表示,请参考附图1,Tanner图中的短环被认为对LDPC码的性能有害。围长越长,短环越少,码字性能越好。设定Ne为一个Tanner图中所有边的数量,vj表示第j个变量节点(j=0,1,...,N-1),ci表示第i个校验节点i=0,1,...M-1,Ej,i表示连接vj和ci的边,cycle-2l表示在Tanner图里环长为2l的环,其中l为迭代次数。
传统的扩展方法以围长和最短环的数量作为判断H矩阵是否最优的度量参数,其关键点在于是使对应的围长最大化,最短环的数量最小化。但这种方法主要用于短码中,而对于较长的码,其围长和最短环的数量变化不大,导致码的性能不能得到有效提升。
本发明提出一种基于PMP算法的LDPC码扩展方法。并行矢量消息传递算法(PMP)是由消息传递算法(MPA)进行了一些优化修改得到的。原始的MPA算法可以计算长度为2l(2≤l≤g-1)的环的数量,其中g是Tanner图的围长。基于围长越小、短环越多,则LDPC码性能越差的理论,目前大多数基于Tanner图的扩展算法都致力于使围长最大化或者在每一条边的建立过程中减少最短环的数量。本发明提出的扩展方法中,引入了一个考虑所有的短环的新的度量CM,来作为评估影响Tanner图整体性能的参数。Tanner图中的边的数目是一个定值,因此,当长度为2l的环的数目减少时,其他长度的环的数目可能增加。然后,将Tanner图中的环长为2l的所有环看作一个整体,用参数CM来评定其对总体性能的影响。为了在环的数量和环的长度之间找到平衡,CM考虑了多种不同长度的短环和其数目。也就是说,使用CM评估LDPC码的性能,将参数CM应用于扩展码字中,可以得到更低的误码率的码字,并且能使误码率平台降低。
首先根据Tanner图,对所有边所代表的矢量信息进行初始化,包括该边所相连的变量节点和校验节点。在消息传递的不断迭代过程中,不断更新从校验节点ci到变量节点vj(c2v)和从变量节点vj到校验节点ci(v2c)的信息,并记录相应边矢量的数目。然后,根据停止时每条边的最后一次c2v的信息计算包括这条边的所有环的数量,这样就可以得到包括边Ej,i的cycle-2l的数量,进而用其计算Ej,i对应的CM。则对应vj的CM等于其相连接边的CM之和。最后,通过将Tanner图所有vj的CM相加可以计算出Tanner图的总CM。
Tanner图的参数CM的具体计算方法如下:
1)初始化从变量节点vj到校验节点ci的信息:
2)更新从校验节点ci到变量节点vj的信息:
3)更新从变量节点vj到校验节点ci的信息:
4)计算包括边Ej,i的cycle-2l数量:
5)计算Ej,i对应的CM值:
其中,β(0<β<1)是一个常数,βl-2代表了长度为2l的环对整个Tanner图的影响权重;
6)计算Tanner图的总CM值:
下面对本发明方法进行具体说明,请参考附图2,一种基于并行矢量消息传递算法的扩展方法的具体步骤如下(取β=0.01):
设定一个已知的QC-LDPC码C0,其校验矩阵为H0(mZ0×nZ0),相应的E(H0)=(aij),基本目标是构造一个QC-LDPC码C1,其校验矩阵为H1(mZ1×nZ1),其中Z1=qZ0,q为扩展倍数,相应的E(H1)=(bij)。假定这两个码字有相同的m×n的母矩阵M(H),那么现在需要的是如何从aij获得bij。
1.计算CM的初始值,用零矩阵初始化E(H1)。
2.计算E(H1)的相应列重wj,其中0<j≤n。
3.从列重最小的列开始,对M(H0)中每一个为1的位置,用来代替H1中的相应位置,其中bij在aij,aij+Z0,aij+2Z0,...,aij+(q-1)Z0中取值,然后计算所有可能取值的对应CM值。
4.在第三步中所有可能的bij的取值,选择使得相应的CM值最小的那一个,之后用被选择的bij和相应的循环移位矩阵在对应的位置更新H1和E(H1)。
5.重复第3、4步直到E(H1)最小列重的代替完成,将H1的每一个非零矩阵位置都已经更新为新的循环移位矩阵。
6.按列重从小到大的顺序重复3、4、5步,直到结束,输出最后的E(H1),再展开所有的循环移位矩阵即可得到最终的校验矩阵H1。
本发明的第3、4步的相应流程图如附图2所示(举例取q=3),其中CM为原H矩阵计算出的CM值,Mtmp1为ai,j+Z0后计算得到的CM值,Mtmp2为ai,j+2Z0后计算得到的CM值。
利用本发明的引入的CM度量,以一个648×486的LDPC码字扩展3倍为例,原H0矩阵的循环移位矩阵如下:
E(H0)=[16,17,22,24,9,3,14,-1,4,2,7,-1,26,-1,2,-1,21,-1,1,0,-1,-1,-1,-1;25,12,12,3,3,26,6,21,-1,15,22,-1,15,-1,4,-1,-1,16,-1,0,0,-1,-1,-1;25,18,26,16,22,23,9,-1,0,-1,4,-1,4,-1,8,23,11,-1,-1,-1,0,0,-1,-1;9,7,0,1,17,-1,-1,7,3,-1,3,23,-1,16,-1,-1,21,-1,0,-1,-1,0,0,-1;24,5,26,7,1,-1,-1,15,24,15,-1,8,-1,13,-1,13,-1,11,-1,-1,-1,-1,0,0;2,2,19,14,24,1,15,19,-1,21,-1,2,-1,24,-1,3,-1,2,1,-1,-1,-1,-1,0]
其中Z0=27,此时初始CM=1790.1,首先计算每列的列重,之后按列重从小到大的顺序依次对每列进行修改;对该列的每个数aij进行+27,+54的操作,得到相应的CM值记为CM,Mtmp1,Mtmp2,取最小者和相应的bij值,直到对该列每个数都进行操作;对所有列均进行操作后得到最终的扩展3倍后的1944×1458的LDPC码的H1矩阵和相应的新CM=887.76,矩阵H1如下所示(Z1=81):
E(H1)=[70,44,22,24,9,57,41,-1,58,56,34,-1,53,-1,56,-1,48,-1,1,0,-1,-1,-1,-1;25,39,12,57,3,53,6,48,-1,15,22,-1,15,-1,31,-1,-1,70,-1,0,0,-1,-1,-1;25,18,53,16,22,23,36,-1,0,-1,4,-1,4,-1,8,50,11,-1,-1,-1,0,0,-1,-1;63,7,0,1,44,-1,-1,34,3,-1,57,50,-1,70,-1,-1,21,-1,0,-1,-1,0,0,-1;24,5,26,7,1,-1,-1,15,24,15,-1,35,-1,67,-1,40,-1,11,-1,-1,-1,-1,0,0;2,2,46,14,24,1,15,19,-1,48,-1,2,-1,24,-1,3,-1,56,1,-1,-1,-1,-1,0]
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。
Claims (10)
1.一种基于并行矢量消息传递算法的LDPC码扩展方法,所述LDPC码C0,其校验矩阵为H0,子矩阵为一个Z0×Z0的循环移位矩阵,指数矩阵为E(H0)=(aij),扩展后的LDPC码C1,其校验矩阵为H1,子矩阵是一个Z1×Z1的循环移位矩阵,其中Z1=qZ0,扩展倍数为q,指数矩阵为E(H1)=(bij),其步骤包括:
1)使用E(H0)初始化E(H1),并对H0中每一个非零矩阵位置,用代替H1中的相应位置,其中bij在aij,aij+Z0,aij+2Z0,...,aij+(q-1)Z0中取值,且计算所有可能取值对应的Tanner图的参数CM;
2.如权利要求1所述的方法,其特征在于,所述LDPC码为QC-LDPC码。
3.如权利要求2所述的方法,其特征在于,所述QC-LDPC码为一奇偶校验矩阵,包括零矩阵和循环移位矩阵。
4.如权利要求2所述的方法,其特征在于,所述QC-LDPC码C0与C1的母矩阵具有相同构造。
5.如权利要求4所述的方法,其特征在于,QC-LDPC码校验矩阵中的循环矩阵为零矩阵的位置对应的所述母矩阵相应位置为0,其他位置为1。
7.如权利要求1所述的方法,其特征在于,Tanner图的参数CM的计算,其步骤包括:
1)对Tanner图中所有边所代表的矢量信息进行初始化;
2)在迭代过程中,记录从c2v或从v2c的边的信息更新时的不同矢量的数目,并记录相应边矢量的数目,其中c2v为从校验节点ci到变量节点vj,v2c为从变量节点vj到校验节点ci;
3)根据停止时每条边的最后一次c2v的信息计算包括这条边的所有环的数量,得到包括边Ej,i的cycle-2l的数量,其中cycle-2l表示在Tanner图里环长为2l的环,l为迭代次数;
4)根据包括边Ej,i的cycle-2l的数量,计算边Ej,i对应的参数CM;
5)将变量节点vj相连接边Ej,i的CM相加,计算变量节点vj的CM;
6)将Tanner图所有变量节点vj的CM相加,计算出Tanner图的总CM。
8.如权利要求7所述的方法,其特征在于,Tanner图中的边的数目是一个定值,当所述cycle-2l的数目减少时,其他长度的环的数目增加。
9.一种基于并行矢量消息传递算法的LDPC码扩展系统,所述LDPC码为一QC-LDPC码C0,其校验矩阵为H0,子矩阵为一Z0×Z0的循环移位矩阵,指数矩阵为E(H0)=(aij),扩展后的QC-LDPC码C1,其校验矩阵为H1,子矩阵是一个Z1×Z1的循环移位矩阵,其中Z1=qZ0,扩展倍数为q,指数矩阵为E(H1)=(bij),其包括:
1)参数CM计算模块,用以使用E(H0)初始化E(H1),并对H0中每一个非零矩阵位置,用代替H1中的相应位置,其中bij在aij,aij+Z0,aij+2Z0,...,aij+(q-1)Z0中取值,且计算所有可能取值对应的Tanner图的参数CM;
10.如权利要求9所述的系统,其特征在于,所述QC-LDPC码C0与C1的母矩阵具有相同构造。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910898665.1A CN110708139B (zh) | 2019-09-23 | 2019-09-23 | 一种基于并行矢量消息传递算法的ldpc码字扩展方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910898665.1A CN110708139B (zh) | 2019-09-23 | 2019-09-23 | 一种基于并行矢量消息传递算法的ldpc码字扩展方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110708139A CN110708139A (zh) | 2020-01-17 |
CN110708139B true CN110708139B (zh) | 2021-01-19 |
Family
ID=69195963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910898665.1A Active CN110708139B (zh) | 2019-09-23 | 2019-09-23 | 一种基于并行矢量消息传递算法的ldpc码字扩展方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110708139B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152058A (zh) * | 2013-03-10 | 2013-06-12 | 清华大学 | 基于ldpc-bch网格的低码率编码方法 |
CN108023673A (zh) * | 2016-11-04 | 2018-05-11 | 清华大学 | 一种多码率多码长ldpc码的构造及编码方法 |
CN108233945A (zh) * | 2017-11-30 | 2018-06-29 | 天津津航计算技术研究所 | 极短码长准循环Ldpc码校验矩阵的构造方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101072035A (zh) * | 2007-05-31 | 2007-11-14 | 复旦大学 | 一种算法复杂度低的准循环ldpc码的构造方法 |
US8392786B2 (en) * | 2008-05-07 | 2013-03-05 | Broadcom Corporation | LDPC coding systems for 60 GHz millimeter wave based physical layer extension |
CN109768801B (zh) * | 2018-12-26 | 2023-02-03 | 深圳市力合微电子股份有限公司 | 一种qc-ldpc码的长短环通用查找方法 |
-
2019
- 2019-09-23 CN CN201910898665.1A patent/CN110708139B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152058A (zh) * | 2013-03-10 | 2013-06-12 | 清华大学 | 基于ldpc-bch网格的低码率编码方法 |
CN108023673A (zh) * | 2016-11-04 | 2018-05-11 | 清华大学 | 一种多码率多码长ldpc码的构造及编码方法 |
CN108233945A (zh) * | 2017-11-30 | 2018-06-29 | 天津津航计算技术研究所 | 极短码长准循环Ldpc码校验矩阵的构造方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110708139A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8185797B2 (en) | Basic matrix, coder/encoder and generation method of the low density parity check codes | |
CN107370490B (zh) | 结构化ldpc的编码、译码方法及装置 | |
US7373581B2 (en) | Device, program, and method for decoding LDPC codes | |
CN110024294B (zh) | 空间耦合准循环ldpc码的生成 | |
WO2017080249A1 (zh) | 生成用于在信道中传输的低密度奇偶校验码的方法及设备 | |
CN105763203B (zh) | 一种基于硬可靠度信息的多元ldpc码译码方法 | |
KR20080033381A (ko) | 검사 행렬 생성 방법, 부호화 방법, 복호 방법, 통신 장치,통신 시스템, 부호화기 및 복호기 | |
WO2013117076A1 (zh) | 一种迭代译码方法及系统 | |
CN109586732B (zh) | 中短码ldpc编解码系统和方法 | |
CN110830050B (zh) | 一种ldpc译码方法、系统、电子设备及存储介质 | |
CN101373976A (zh) | 生成ldpc校验矩阵的方法和设备 | |
CN111565051A (zh) | 一种用于ldpc码的自学习归一化偏置最小和译码方法 | |
CN111279618A (zh) | 通用低密度奇偶校验码 | |
CN113612486A (zh) | 一种构建pbrl ldpc码的基矩阵方法、系统、装置及存储介质 | |
CN112204888A (zh) | 具有高效编码和良好误码平层特性的一类qc-ldpc码 | |
Kang et al. | Generalized mutual information-maximizing quantized decoding of LDPC codes with layered scheduling | |
JP2008526086A (ja) | チャネルコードを用いた復号化装置及び方法 | |
KR101657912B1 (ko) | 비이진 저밀도 패리티 검사 코드의 복호화 방법 | |
CN105871385B (zh) | 一种ldpc卷积码构造方法 | |
CN110719108B (zh) | 基于环的连通性的qc-ldpc码字扩展方法及系统 | |
KR101307733B1 (ko) | 블록 레이어 기반의 비 이진 qc-ldpc 부호의 복호 장치 및 그 방법 | |
CN110708139B (zh) | 一种基于并行矢量消息传递算法的ldpc码字扩展方法及系统 | |
JP5523064B2 (ja) | 復号装置及び方法 | |
KR100632268B1 (ko) | Ldpc 부호 부호화 및 복호화 방법, 및 ldpc패러티 검사 행렬 형성 방법. | |
CN110190856B (zh) | 一种ldpc码的解码方法和解码装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |