CN112865812B - 一种多元ldpc译码方法、计算机存储介质及计算机 - Google Patents
一种多元ldpc译码方法、计算机存储介质及计算机 Download PDFInfo
- Publication number
- CN112865812B CN112865812B CN202110061136.3A CN202110061136A CN112865812B CN 112865812 B CN112865812 B CN 112865812B CN 202110061136 A CN202110061136 A CN 202110061136A CN 112865812 B CN112865812 B CN 112865812B
- Authority
- CN
- China
- Prior art keywords
- check
- node
- finite field
- confidence
- variable 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明涉及一种多元LDPC译码方法、计算机存储介质及计算机,其方法包括,S1初始化变量结点置信度向量;S2进行本次迭代校验,判断是否成功;若否则执行S3;若是则执行S7;S3记录校验结点失败的总个数和连续迭代校验的失败次数;S4若校验结点失败的总个数大于第一阈值,则将连续迭代校验的失败次数加一,然后执行S5;否则将连续迭代校验的失败次数清零,然后执行S6;S5若连续迭代检验的失败次数大于第二阈值,并且当前迭代校验的次数大于第三阈值则执行S7;否则执行S6;S6更新变量结点置信度向量且反馈至S2;S7停止迭代校验。通过比较连续若干次迭代校验过程中校验结点失败个数情况来提前停止迭代减少计算量,改善译码性能。
Description
技术领域
本发明涉及到GNSS系统领域多元LDPC信道译码,尤其涉及到在保证 性能要求的情况下如何减少多元LDPC译码计算量的方法、计算机存储介质 及计算机。
背景技术
北斗导航B-CNAV1电文在B1C信号中播发,该电文的子帧2的编码格式 为64元有限域LDPC(n=200,k=100),其中信息长度k=100个码字符号即600 个比特,校验位为n-k=100个码字同样为600个比特,其有限域为GF(26), 对应的本原多项式为p(x)=1+x+x6,每个编码输出的码字由6个比特构成。 多元LDPC编码生成的码字c=(c0,c1,...,cn-1),cn∈GF(q),q=2r,r=6,经过无 线信道传输后,接收端得到的接收序列y=(y0,y1,...,yn-1),其中yn=(yn,0,yn,1,...,yn,r-1),r=6为码字符号cn对应的接收符号信 息。
校验矩阵HM*N,其中元素为hi,j,若hi,j≠0,则校验结点CN与变量结点VN 之间相连并可以相互传递置信度信息,校验矩阵是规则矩阵,其行重为4, 列重为2。HM*N中的每一行对应一个校验结点CN,每一列对应一个变量结 点VN。由变量结点VNj传递给相连校验结点CNi (i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N)的置信度向量表示为V2Cj,i,可 用于计算校验结点CNi的校验和;由校验结点CNi传递给相连的变量结点VNj (j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M)的置信度向量表示为C2Vi,j,可用 于估算变量结点VNj的符号值。采用置信度传播译码算法,根据HM*N来逐次 迭代更新V2Cj,i和C2Vi,j,并通过逐次校验来判断校正后的估计信息是否正 确,从而实现对传输码字c的估计。
LDPC译码算法常见的是扩展最小和算法(EMS),是一种基于置信度传播 的迭代译码算法。其算法流程如下:
第一步:根据每个码字符号对应的接收向量yj计算置信度向量 Lj(0≤j<n),其中Lj=(x,LLR(x)),x∈GF(q),q=2r,LLR(x)为有限域元素的对 数似然比;利用Lj初始化各变量结点VNj的所有V2Cj,i向量。
其中*hi,j -1为与hi,j的乘法逆元的有限域乘法。
若s=0,则将判决值序列作为译码输出并终止译码,否则执行第三步。
第三步:对各变量结点VNj(0≤j<n),根据校验矩阵和更新规则更新置 信度向量V2Cj,i。
3.1.若当前迭代次数itr_num=0,对每个码字q个有限域元素的LLR 值进行升序排序,取前nm个元素输出,然后对V2Cj,i进行初始化;
3.2.若当前迭代次数itr_num≠0,利用VNj收到的所有置信度向量, 计算VNj传递给CNi的置信度向量V2Cj,i。
C2Vf,j(f∈Mj,f≠i);
上式中的加和运算仅对相同域元素的LLR值进行相加。
第四步:对各校验结点CNi(0≤i<M),根据校验结点更新规则计算置信 度向量C2Vi,j;
设输入两个置信度向量分别为(Us,U)和(Qs,Q),输出置信度向量为 (Vs,V),其中U,Q,V为升序排列的nm长的LLR向量,Us,Qs和Vs为对应的 有限域元素向量。首先构建大小为nm*nm的置信度矩阵M和有限域元素矩阵 Ms;再将所有LLR值升序排序,截取前nm个最小的LLR值及其有限域元素 作为输出,并且这nm个有限域元素不能相同。
第五步:itr_num=itr_num+1,若itr_num=itr_max,则终止译码并声明 失败,否则转至第二步。
在实际应用过程中,若校验失败的校验结点数连续若干次递增,继续增 加迭代次数并不能改善译码性能,反而加大计算量;另一方面发现计算量和 存储空间都随着校验结点从与其连接的变量结点处接收到的变量结点置信 度向量的长度nm的变化呈剧烈正比增加,尤其是大量的排序运算,增加计算 量,降低译码效率。
发明内容
本发明所要解决的技术问题是提供一种多元LDPC译码方法、计算机存 储介质及计算机,可以降低计算量,改善译码性能。
本发明解决上述技术问题的技术方案如下:一种多元LDPC译码方法, 包括以下步骤,
S1,根据多元LDPC编码生成的码字中每个码字符号对应的接收符号, 初始化校验矩阵的变量结点的变量结点置信度向量;
S2,根据变量结点置信度向量进行本次迭代校验,并判断本次迭代校验 是否成功;若否,则执行S3;若是,则执行S7;
S3,记录本次迭代校验中校验矩阵的校验结点失败的总个数,同时记录 连续迭代校验的失败次数;
S4,若本次迭代校验中校验结点失败的总个数大于预先设定的第一阈值, 则将连续迭代校验的失败次数加一,然后执行S5;否则将连续迭代校验的失 败次数清零,然后执行S6;
S5,若连续迭代检验的失败次数大于预先设定的第二阈值,并且当前迭 代校验的次数大于预先设定的第三阈值,则执行S7;否则执行S6;
S6,根据变量结点置信度向量更新本次迭代校验中校验结点的校验结点 置信度向量,并根据更新后的校验结点置信度向量更新本次迭代校验中变量 结点置信度向量,且将更新后的变量结点置信度向量反馈至S2,执行下一次 迭代校验;
S7,停止迭代校验,结束LDPC译码,并设置相应的译码成功与否标志。
本发明的有益效果是:在本发明的方法中,当迭代校验失败时,记录每 次校验结点校验失败情况,通过比较连续若干次迭代校验过程中校验结点失 败个数情况来提前停止迭代减少计算量,改善译码效率。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,令所述校验矩阵的行重为a,列重为b;
则在S6中,根据变量结点置信度向量更新本次迭代校验中校验结点的 校验结点置信度向量,具体包括如下步骤,
S61,对于任一校验结点,将校验结点从与其连接的a个变量结点处接 收到的变量结点置信度向量的长度均设置为nm;
S62,根据变量结点置信度向量中第二个有限域元素的对数似然比,对a 个变量结点置信度向量进行升序排序;
S63,在a个变量结点置信度向量中任选取一个变量结点置信度向量, 并在升序排序后的a个变量结点置信度向量中排除选取的一个变量结点置 信度向量,对剩下a-1个排序好的变量结点置信度向量进行处理,对应得到 校验结点的且包含2*nm个有限域元素的一个校验结点置信度向量;
S64,将校验结点的且包含2*nm个有限域元素的一个校验结点置信度向 量中重复的有限域元素去掉,并保留对数似然比最小的重复的有限域元素;
S65,根据有限域元素的对数似然比,对校验结点的一个校验结点置信 度向量中去除重复的有限域元素后剩余的有限域元素进行升序排列,对应得 到校验结点的一个有限域元素升序队列;在校验结点的一个有限域元素升序 队列中截取前nm个有限域元素和对应的对数似然比,并将截取的前nm个有限 域元素和对应的对数似然比进行组合,对应得到校验结点更新后的一个校验 结点置信度向量;
S66,遍历a个变量结点置信度向量中的每一个变量结点置信度向量, 并依次重复执行S63至S65,得到校验结点更新后的a个校验结点置信度向 量。
采用上述进一步方案的有益效果是:在校验结点更新过程中,调整变量 结点传递给较验结点的置信度矢量长度nm,用固定路径算法来更新校验结 点,可以减少相关计算量,进一步改善了译码性能。
进一步,在所述S65中,若校验结点的一个有限域元素升序队列中不够 nm个有限域元素,则将截取的最后一个有限域元素及对应的对数似然比进行 重复,直至满足nm个有限域元素为止。
进一步,所述校验矩阵的行重a=4,列重b=2。
进一步,在所述S6中,根据更新后的校验结点置信度向量更新本次迭 代校验中变量结点置信度向量,具体包括,
S67,将校验结点更新后的a个校验结点置信度向量传递给对应的变量 结点;
S68,利用变量结点收到的更新后的a个校验结点置信度向量,更新变 量结点传递给校验结点的变量结点置信度向量;
具体的,更新变量结点置信度向量的公式为,
其中,V2Cj,i为由变量结点VNj传递给校验结点CNi的变量结点置信度向 量;在校验结点CNi中,i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N;在变量结 点VNj中,j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M;M为校验矩阵的行数,N 为校验矩阵的列数;hi,j为校验矩阵中第i行第j列的元素,C2Vf,j为由校验结 点CNf传递给变量结点VNj的校验结点置信度向量,*表示有限域乘法运算, *hf,j -1为与hf,j的乘法逆元的有限域乘法,hf,j为校验矩阵中第f行第j列的元 素,Lj为第j个接收符号的接收符号置信度向量,表示根据有限域元素 的对数似然比对所有有限域元素进行升序排序并截取前nm个不相同的有限 域元素。
进一步,所述S1具体为,
S11,根据多元LDPC编码生成的码字中码字符号对应的接收符号计算接 收符号置信度向量;
具体的,所述接收符号置信度向量的计算公式为,
Lj=(x,LLR(x)),x∈GF(q),q=2r;
其中,Lj为第j个接收符号的接收符号置信度向量,0≤j<n,n为多元 LDPC编码生成的码字中码字符号的总个数;x为接收符号的有限域元素, LLR(x)为接收符号的有限域元素的对数似然比,GF(q)为有限域,r为码字 符号的比特数;
S12,利用所述接收符号置信度向量初始化校验矩阵的变量结点的变量 结点置信度向量;
具体的,变量结点置信度向量的初始化公式为,
其中,V2Cj,i为由变量结点VNj传递给校验结点CNi的变量结点置信度向 量;在校验结点CNi中,i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N;在变量结 点VNj中,j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M;M为校验矩阵的行数,N 为校验矩阵的列数;为根据有限域元素的对数似然比对接收符号置信度 向量Lj中的所有有限域元素进行升序排序后,截取前nm个有限域元素以及对 应的对数似然比所组成的向量,且 表示根据有限 域元素的对数似然比对所有有限域元素进行升序排序并截取前nm个不相同的有限域元素,为根据有限域元素的对数似然比,对接收符号置信度向 量Lj中的所有有限域元素进行升序排序后,截取的前nm个不相同的有限域元 素,为有限域元素的对数似然比,hi,j为校验矩阵中第i行第j列 的元素,*表示有限域乘法运算。
进一步,在所述S2中,根据变量结点置信度向量进行本次迭代校验, 并判断本次迭代校验是否成功,具体包括,
S21,遍历每个变量结点,根据变量结点置信度向量进行一次判决,并 选择变量结点的最小对数似然比对应的有限域元素作为判决值,且所述判决 值表示为,
S22,根据所述判决值和所述校验矩阵计算校验和;
S23,判断所述校验和是否等于0,若所述校验和等于0,则判定本次迭 代校验成功,否则判定本次迭代校验失败。
基于上述一种多元LDPC译码方法,本发明还提供一种计算机存储介质。
一种计算机存储介质,包括存储器以及存储在所述存储器内的至少一个 指令,在所述指令被执行时实现如上述所述的多元LDPC译码方法的步骤。
基于上述一种多元LDPC译码方法,本发明还提供一种计算机。
一种计算机,包括处理器、存储器以及存储在所述存储器内的至少一个 指令,当所述指令在所述处理器中执行时,实现如上述所述的多元LDPC译 码方法的步骤。
附图说明
图1为本发明一种多元LDPC译码方法的流程图;
图2为本发明一种多元LDPC译码方法中更新本次迭代校验中校验结点 的校验结点置信度向量的流程图;
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本 发明,并非用于限定本发明的范围。
如图1所示,一种多元LDPC译码方法,包括以下步骤,
S1,根据多元LDPC编码生成的码字中每个码字符号对应的接收符号, 初始化校验矩阵的变量结点的变量结点置信度向量;
S2,根据变量结点置信度向量进行本次迭代校验,并判断本次迭代校验 是否成功;若否,则执行S3;若是,则执行S7;
S3,记录本次迭代校验中校验矩阵的校验结点失败的总个数,同时记录 连续迭代校验的失败次数;
S4,若本次迭代校验中校验结点失败的总个数大于预先设定的第一阈值, 则将连续迭代校验的失败次数加一,然后执行S5;否则将连续迭代校验的失 败次数清零,然后执行S6;
S5,若连续迭代检验的失败次数大于预先设定的第二阈值,并且当前迭 代校验的次数大于预先设定的第三阈值,则执行S7;否则执行S6;
S6,根据变量结点置信度向量更新本次迭代校验中校验结点的校验结点 置信度向量,并根据更新后的校验结点置信度向量更新本次迭代校验中变量 结点置信度向量,且将更新后的变量结点置信度向量反馈至S2,执行下一次 迭代校验;
S7,停止迭代校验,结束LDPC译码,并设置相应的译码成功与否标志。
在本发明的方法中,当迭代校验失败时,记录每次校验结点校验失败情 况,通过比较连续若干次迭代校验过程中校验结点失败个数情况来提前停止 迭代减少计算量,改善译码性能。
在本具体实施例中:
进一步,令所述校验矩阵的行重为a,列重为b;具体的,所述校验矩 阵的行重a=4,列重b=2;
则在S6中,根据变量结点置信度向量更新本次迭代校验中校验结点的 校验结点置信度向量,具体包括如下步骤,如图2所示:
S61,对于任一校验结点,将校验结点从与其连接的a个变量结点处接 收到的变量结点置信度向量的长度均设置为nm;
S62,根据变量结点置信度向量中第二个有限域元素的对数似然比,对a 个变量结点置信度向量进行升序排序;
S63,在a个变量结点置信度向量中任选取一个变量结点置信度向量, 并在升序排序后的a个变量结点置信度向量中排除选取的一个变量结点置 信度向量,对剩下a-1个排序好的变量结点置信度向量进行处理,对应得到 校验结点的且包含2*nm个有限域元素的一个校验结点置信度向量;
对剩下a-1个排序好的变量结点置信度向量进行处理的具体过程如下:
%path 1
DeltaRs(1)=GFAdd(X1_1,X2_1,X3_1);
DeltaR(1)=0;
%path 2,3,4
DeltaRs(2)=GFAdd(X1_2,X2_1,X3_1);
DeltaR(2)=L1_2;
DeltaRs(3)=GFAdd(X1_1,X2_2,X3_1);
DeltaR(3)=L2_2;
DeltaRs(4)=GFAdd(X1_1,X2_1,X3_2);
DeltaR(4)=L3_2;
%path 5,6
DeltaRs(5)=GFAdd(X1_2,X2_2,X3_1);
DeltaR(5)=L1_2+L2_2;
DeltaRs(6)=GFAdd(X1_2,X2_1,X3_2);
DeltaR(6)=L1_2+L3_2;
%path 7,8,9
DeltaRs(7)=GFAdd(X1_3,X2_1,X3_1);
DeltaR(7)=L1_3;
DeltaRs(8)=GFAdd(X1_1,X2_3,X3_1);
DeltaR(8)=L2_3;
DeltaRs(9)=GFAdd(X1_1,X2_1,X3_3);
DeltaR(9)=L3_3;
%path 10,11,12
[value1,index]=sort(L1_4,L2_4,L3_4);
n0=index(1);n1=index(2);n2=index(3);
DeltaRs(10)=GFAdd(Xn0_4,Xn1_1,Xn2_1);
DeltaR(10)=Ln0_4;
DeltaRs(11)=GFAdd(Xn0_5,Xn1_1,Xn2_1);
DeltaR(11)=Ln0_5;
DeltaRs(12)=GFAdd(Xn0_6,Xn1_1,Xn2_1);
DeltaR(12)=Ln0_6;
其中,X1_1表示第一个置信度向量的第一个元素,其它依次类推;
其中,L1_2表示第一个置信度向量的第二个元素的LLR值,其它依次类 推;
其中,DeltaRs表示输出的校正结点置信度向量C2V的有限域元素,DeltaR 表示输出的校正结点置信度向量C2V的有限域元素的LLR值;
其中,GFAdd表示伽罗华域加法;
其中,index是一种函数,用于返回表或区域中的值或值的引用;
[value1,index]=sort(L1_4,L2_4,L3_4)表示升序排列;
n0=index(1);n1=index(2);n2=index(3)表示获取排序后的序号。
S64,将校验结点的且包含2*nm个有限域元素的一个校验结点置信度向 量中重复的有限域元素去掉,并保留对数似然比最小的重复的有限域元素;
S65,根据有限域元素的对数似然比,对校验结点的一个校验结点置信 度向量中去除重复的有限域元素后剩余的有限域元素进行升序排列,对应得 到校验结点的一个有限域元素升序队列;在校验结点的一个有限域元素升序 队列中截取前nm个有限域元素和对应的对数似然比(若校验结点的一个有限 域元素升序队列中不够nm个有限域元素,则将截取的最后一个有限域元素及 对应的对数似然比进行重复,直至满足nm个有限域元素为止),并将截取的 前nm个有限域元素和对应的对数似然比进行组合,对应得到校验结点更新后 的一个校验结点置信度向量;
S66,遍历a个变量结点置信度向量中的每一个变量结点置信度向量, 并依次重复执行S63至S65,得到校验结点更新后的a个校验结点置信度向 量。
在校验结点更新过程中,调整变量结点传递给较验结点的置信度矢量长 度nm,用固定路径算法来更新校验结点,可以减少相关计算量,进一步改善 了译码性能。
在本具体实施例中:在所述S6中,根据更新后的校验结点置信度向量 更新本次迭代校验中变量结点置信度向量,具体包括,
S67,将校验结点更新后的a个校验结点置信度向量传递给对应的变量 结点;
S68,利用变量结点收到的更新后的a个校验结点置信度向量,更新变 量结点传递给校验结点的变量结点置信度向量;
具体的,更新变量结点置信度向量的公式为,
其中,V2Cj,i为由变量结点VNj传递给校验结点CNi的变量结点置信度向 量;在校验结点CNi中,i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N;在变量结 点VNj中,j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M;M为校验矩阵的行数,N 为校验矩阵的列数;hi,j为校验矩阵中第i行第j列的元素,C2Vf,j为由校验结 点CNf传递给变量结点VNj的校验结点置信度向量,*表示有限域乘法运算, *hf,j -1为与hf,j的乘法逆元的有限域乘法,hf,j为校验矩阵中第f行第j列的元 素,Lj为第j个接收符号的接收符号置信度向量,表示根据有限域元素 的对数似然比对所有有限域元素进行升序排序并截取前nm个不相同的有限 域元素。
在本具体实施例中:所述S1具体为,
S11,根据多元LDPC编码生成的码字中码字符号对应的接收符号计算接 收符号置信度向量;
具体的,所述接收符号置信度向量的计算公式为,
Lj=(x,LLR(x)),x∈GF(q),q=2r;
其中,Lj为第j个接收符号的接收符号置信度向量,0≤j<n,n为多元 LDPC编码生成的码字中码字符号的总个数;x为接收符号的有限域元素, LLR(x)为接收符号的有限域元素的对数似然比,GF(q)为有限域,r为码字 符号的比特数;
S12,利用所述接收符号置信度向量初始化校验矩阵的变量结点的变量 结点置信度向量;
具体的,变量结点置信度向量的初始化公式为,
其中,V2Cj,i为由变量结点VNj传递给校验结点CNi的变量结点置信度向 量;在校验结点CNi中,i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N;在变量结 点VNj中,j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M;M为校验矩阵的行数,N 为校验矩阵的列数;为根据有限域元素的对数似然比对接收符号置信度 向量Lj中的所有有限域元素进行升序排序后,截取前nm个有限域元素以及对 应的对数似然比所组成的向量,且 表示根据有限 域元素的对数似然比对所有有限域元素进行升序排序并截取前nm个不相同的有限域元素,为根据有限域元素的对数似然比,对接收符号置信度向 量Lj中的所有有限域元素进行升序排序后,截取的前nm个不相同的有限域元 素,为有限域元素的对数似然比,hi,j为校验矩阵中第i行第j列 的元素,*表示有限域乘法运算。
在本具体实施例中:在所述S2中,根据变量结点置信度向量进行本次 迭代校验,并判断本次迭代校验是否成功,具体包括,
S21,遍历每个变量结点,根据变量结点置信度向量进行一次判决,并 选择变量结点的最小对数似然比对应的有限域元素作为判决值,且所述判决 值表示为,
S22,根据所述判决值和所述校验矩阵计算校验和;
S23,判断所述校验和是否等于0,若所述校验和等于0,则判定本次迭 代校验成功,否则判定本次迭代校验失败。
基于上述一种多元LDPC译码方法,本发明还提供一种计算机存储介质。
一种计算机存储介质,包括存储器以及存储在所述存储器内的至少一个 指令,在所述指令被执行时实现如上述所述的多元LDPC译码方法的步骤。
基于上述一种多元LDPC译码方法,本发明还提供一种计算机。
一种计算机,包括处理器、存储器以及存储在所述存储器内的至少一个 指令,当所述指令在所述处理器中执行时,实现如上述所述的多元LDPC译 码方法的步骤。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明 的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发 明的保护范围之内。
Claims (8)
1.一种多元LDPC译码方法,其特征在于:包括以下步骤,
S1,根据多元LDPC编码生成的码字中每个码字符号对应的接收符号,初始化校验矩阵的变量结点的变量结点置信度向量;
S2,根据变量结点置信度向量进行本次迭代校验,并判断本次迭代校验是否成功;若否,则执行S3;若是,则执行S7;
S3,记录本次迭代校验中校验矩阵的校验结点失败的总个数,同时记录连续迭代校验的失败次数;
S4,若本次迭代校验中校验结点失败的总个数大于预先设定的第一阈值,则将连续迭代校验的失败次数加一,然后执行S5;否则将连续迭代校验的失败次数清零,然后执行S6;
S5,若连续迭代检验的失败次数大于预先设定的第二阈值,并且当前迭代校验的次数大于预先设定的第三阈值,则执行S7;否则执行S6;
S6,根据变量结点置信度向量更新本次迭代校验中校验结点的校验结点置信度向量,并根据更新后的校验结点置信度向量更新本次迭代校验中变量结点置信度向量,且将更新后的变量结点置信度向量反馈至S2,执行下一次迭代校验;
S7,停止迭代校验,结束LDPC译码,并设置相应的译码成功与否标志。
2.根据权利要求1所述的多元LDPC译码方法,其特征在于:令所述校验矩阵的行重为a,列重为b;
则在S6中,根据变量结点置信度向量更新本次迭代校验中校验结点的校验结点置信度向量,具体包括如下步骤,
S61,对于任一校验结点,将校验结点从与其连接的a个变量结点处接收到的变量结点置信度向量的长度均设置为nm;
S62,根据变量结点置信度向量中第二个有限域元素的对数似然比,对a个变量结点置信度向量进行升序排序;
S63,在a个变量结点置信度向量中任选取一个变量结点置信度向量,并在升序排序后的a个变量结点置信度向量中排除选取的一个变量结点置信度向量,对剩下a-1个排序好的变量结点置信度向量进行处理,对应得到校验结点的且包含2*nm个有限域元素的一个校验结点置信度向量;
S64,将校验结点的且包含2*nm个有限域元素的一个校验结点置信度向量中重复的有限域元素去掉,并保留对数似然比最小的重复的有限域元素;
S65,根据有限域元素的对数似然比,对校验结点的一个校验结点置信度向量中去除重复的有限域元素后剩余的有限域元素进行升序排列,对应得到校验结点的一个有限域元素升序队列;在校验结点的一个有限域元素升序队列中截取前nm个有限域元素和对应的对数似然比,并将截取的前nm个有限域元素和对应的对数似然比进行组合,对应得到校验结点更新后的一个校验结点置信度向量;
S66,遍历a个变量结点置信度向量中的每一个变量结点置信度向量,并依次重复执行S63至S65,得到校验结点更新后的a个校验结点置信度向量;
所述校验矩阵的行重a=4,列重b=2。
3.根据权利要求2所述的多元LDPC译码方法,其特征在于:在所述S65中,若校验结点的一个有限域元素升序队列中不够nm个有限域元素,则将截取的最后一个有限域元素及对应的对数似然比进行重复,直至满足nm个有限域元素为止。
4.根据权利要求2所述的多元LDPC译码方法,其特征在于:在所述S6中,根据更新后的校验结点置信度向量更新本次迭代校验中变量结点置信度向量,具体包括,
S67,将校验结点更新后的a个校验结点置信度向量传递给对应的变量结点;
S68,利用变量结点收到的更新后的a个校验结点置信度向量,更新变量结点传递给校验结点的变量结点置信度向量;
具体的,更新变量结点置信度向量的公式为,
其中,V2Cj,i为由变量结点VNj传递给校验结点CNi的变量结点置信度向量;在校验结点CNi中,i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N;在变量结点VNj中,j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M;M为校验矩阵的行数,N为校验矩阵的列数;hi,j为校验矩阵中第i行第j列的元素,C2Vf,j为由校验结点CNf传递给变量结点VNj的校验结点置信度向量,*表示有限域乘法运算,*hf,j -1为与hf,j的乘法逆元的有限域乘法,hf,j为校验矩阵中第f行第j列的元素,Lj为第j个接收符号的接收符号置信度向量,表示根据有限域元素的对数似然比对所有有限域元素进行升序排序并截取前nm个不相同的有限域元素。
5.根据权利要求1至4任一项所述的多元LDPC译码方法,其特征在于:所述S1具体为,
S11,根据多元LDPC编码生成的码字中码字符号对应的接收符号计算接收符号置信度向量;
具体的,所述接收符号置信度向量的计算公式为,
Lj=(x,LLR(x)),x∈GF(q),q=2r;
其中,Lj为第j个接收符号的接收符号置信度向量,0≤j<n,n为多元LDPC编码生成的码字中码字符号的总个数;x为接收符号的有限域元素,LLR(x)为接收符号的有限域元素的对数似然比,GF(q)为有限域,r为码字符号的比特数;
S12,利用所述接收符号置信度向量初始化校验矩阵的变量结点的变量结点置信度向量;
具体的,变量结点置信度向量的初始化公式为,
其中,V2Cj,i为由变量结点VNj传递给校验结点CNi的变量结点置信度向量;在校验结点CNi中,i∈Mj,Mj={i:0≤i<M,hi,j≠0},0≤j<N;在变量结点VNj中,j∈Ni,Ni={j:0≤j<N,hi,j≠0},0≤i<M;M为校验矩阵的行数,N为校验矩阵的列数;为根据有限域元素的对数似然比对接收符号置信度向量Lj中的所有有限域元素进行升序排序后,截取前nm个有限域元素以及对应的对数似然比所组成的向量,且 表示根据有限域元素的对数似然比对所有有限域元素进行升序排序并截取前nm个不相同的有限域元素,为根据有限域元素的对数似然比,对接收符号置信度向量Lj中的所有有限域元素进行升序排序后,截取的前nm个不相同的有限域元素,为有限域元素的对数似然比,hi,j为校验矩阵中第i行第j列的元素,*表示有限域乘法运算。
6.根据权利要求5所述的多元LDPC译码方法,其特征在于:在所述S2中,根据变量结点置信度向量进行本次迭代校验,并判断本次迭代校验是否成功,具体包括,
S21,遍历每个变量结点,根据变量结点置信度向量进行一次判决,并选择变量结点的最小对数似然比对应的有限域元素作为判决值,且所述判决值表示为,
S22,根据所述判决值和所述校验矩阵计算校验和;
S23,判断所述校验和是否等于0,若所述校验和等于0,则判定本次迭代校验成功,否则判定本次迭代校验失败。
7.一种计算机存储介质,其特征在于:包括存储器以及存储在所述存储器内的至少一个指令,在所述指令被执行时实现如权利要求1至6任一项所述的多元LDPC译码方法的步骤。
8.一种计算机,其特征在于:包括处理器、存储器以及存储在所述存储器内的至少一个指令,当所述指令在所述处理器中执行时,实现如权利要求1至6任一项所述的多元LDPC译码方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110061136.3A CN112865812B (zh) | 2021-01-18 | 2021-01-18 | 一种多元ldpc译码方法、计算机存储介质及计算机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110061136.3A CN112865812B (zh) | 2021-01-18 | 2021-01-18 | 一种多元ldpc译码方法、计算机存储介质及计算机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112865812A CN112865812A (zh) | 2021-05-28 |
CN112865812B true CN112865812B (zh) | 2022-09-30 |
Family
ID=76006252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110061136.3A Active CN112865812B (zh) | 2021-01-18 | 2021-01-18 | 一种多元ldpc译码方法、计算机存储介质及计算机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112865812B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113411087B (zh) * | 2021-06-30 | 2023-05-09 | 展讯半导体(成都)有限公司 | 解码q元LDPC的方法、电路及包括其的接收机 |
CN113746599B (zh) * | 2021-08-24 | 2024-03-22 | 湖南遥昇通信技术有限公司 | 编码方法、译码方法、终端、电子设备和存储介质 |
CN116192166B (zh) * | 2023-04-28 | 2023-08-01 | 南京创芯慧联技术有限公司 | 迭代译码方法、装置、存储介质和电子设备 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101577607B (zh) * | 2008-05-07 | 2012-05-23 | 中国科学院微电子研究所 | 可提前结束迭代的归一化最小和译码方法 |
KR101418466B1 (ko) * | 2008-08-15 | 2014-07-10 | 엘에스아이 코포레이션 | 니어 코드워드들의 rom 리스트 디코딩 |
CN101345602B (zh) * | 2008-08-21 | 2013-01-16 | 上海交通大学 | 低密度校验码迭代译码的提前中止方法 |
CN101841338B (zh) * | 2009-03-18 | 2012-10-31 | 中国科学院微电子研究所 | 一种低密度奇偶校验码提前结束迭代译码的方法 |
CN102111241B (zh) * | 2011-03-04 | 2013-07-03 | 四川虹微技术有限公司 | 低密度奇偶校验迭代译码提前终止的方法 |
GB2533639B (en) * | 2014-12-24 | 2017-11-22 | Imagination Tech Ltd | Low density parity check decoder |
US10419024B2 (en) * | 2017-05-26 | 2019-09-17 | SK Hynix Inc. | Early termination of low-density parity-check (LDPC) decoding |
CN105763203B (zh) * | 2016-02-14 | 2020-04-24 | 广西大学 | 一种基于硬可靠度信息的多元ldpc码译码方法 |
EP3293885B1 (en) * | 2016-09-09 | 2024-01-03 | Université de Bretagne Sud | Check node processing for syndrome computation in the decoding of non-binary codes, in particular non-binary ldpc codes |
KR102045438B1 (ko) * | 2018-10-15 | 2019-11-15 | 고려대학교 산학협력단 | Ldpc 부호의 복호를 위한 방법 및 장치 |
CN109889208A (zh) * | 2019-01-04 | 2019-06-14 | 浙江大学 | Navdat中基于归一化最小和算法的ldpc信道译码方法 |
-
2021
- 2021-01-18 CN CN202110061136.3A patent/CN112865812B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112865812A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112865812B (zh) | 一种多元ldpc译码方法、计算机存储介质及计算机 | |
US6751770B2 (en) | Decoder for iterative decoding of binary cyclic codes | |
US7539920B2 (en) | LDPC decoding apparatus and method with low computational complexity algorithm | |
US7373581B2 (en) | Device, program, and method for decoding LDPC codes | |
JP4627317B2 (ja) | 通信装置および復号方法 | |
CN105763203B (zh) | 一种基于硬可靠度信息的多元ldpc码译码方法 | |
US11115051B2 (en) | Systems and methods for decoding error correcting codes | |
CN109586731B (zh) | 用于解码纠错码的系统和方法 | |
CN106936444B (zh) | 一种集合译码方法和集合译码器 | |
US10637510B2 (en) | Methods and devices for error correcting codes decoding | |
CN112953554B (zh) | 一种基于分层置信度传播的ldpc译码方法、系统和介质 | |
KR20070039353A (ko) | 저밀도 패러티 검사 복호기에서의 검사 노드 갱신 방법 | |
CN110545162B (zh) | 基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 | |
US20070083802A1 (en) | Broadcast message passing decoding of low density parity check codes | |
CN106856406B (zh) | 一种译码方法中校验节点的更新方法及译码器 | |
CN112953553B (zh) | 一种gnss系统中改进的多进制ldpc译码方法、装置和介质 | |
KR101657912B1 (ko) | 비이진 저밀도 패리티 검사 코드의 복호화 방법 | |
US11545998B2 (en) | Offset value determination in a check node processing unit for message-passing decoding of non-binary codes | |
CN111835363B (zh) | 基于交替方向乘子法的ldpc码译码方法 | |
CN113612485A (zh) | 一种译码方法、译码装置、设备及存储装置 | |
CN112470405A (zh) | 非二进制码的消息传递解码的可变节点处理方法和设备 | |
CN109586844B (zh) | 一种基于集合的非均等保护译码方法及系统 | |
CN113285723B (zh) | 一种ldpc译码过程中校验节点更新方法、系统及存储介质 | |
KR102635444B1 (ko) | 비이진 저밀도 패리티 검사 코드 디코더, 그것의 동작방법 및 메모리 시스템 | |
KR101267756B1 (ko) | 가변 부호화율 불규칙 반복 다상 누산 부호화 및 복호화 방법과 이를 위한 장치 |
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 |