CN110545162B - 基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 - Google Patents
基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 Download PDFInfo
- Publication number
- CN110545162B CN110545162B CN201910777240.5A CN201910777240A CN110545162B CN 110545162 B CN110545162 B CN 110545162B CN 201910777240 A CN201910777240 A CN 201910777240A CN 110545162 B CN110545162 B CN 110545162B
- Authority
- CN
- China
- Prior art keywords
- node
- information
- check
- decoding
- nodes
- 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/1148—Structural properties of the code parity-check or generator matrix
- H03M13/1171—Parity-check or generator matrices with non-binary elements, e.g. for non-binary LDPC codes
-
- 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
-
- 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
- H03M13/1117—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
- H03M13/112—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule with correction functions for the min-sum rule, e.g. using an offset or a scaling factor
-
- 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
- H03M13/1125—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
-
- 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/1131—Scheduling of bit node or check node processing
-
- 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
-
- 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6583—Normalization other than scaling, e.g. by subtraction
-
- 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6591—Truncation, saturation and clamping
-
- 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
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0052—Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
-
- 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
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明提出一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,包括:S1:计算初始化信息,并对初始化信息进行信息截断;S2:判断当前迭代次数与最大迭代次数大小,若当前迭代次数等于最大迭代次数,则退出迭代译码,否则进入步骤S3;S3:对处于处理子集M(l)中的校验节点进行信息更新,计算其外信息并对其进行信息截断;S4:对校验节点的外信息进行信息置换;S5:计算后验概率信息和信息向量并对进行置换;S6:根据对每一个变量节点进行判决译码;S7:对判决译码的结果进行检验,若则译码结束,否则进入步骤S8;S8:将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,跳到步骤S2进行下一次迭代译码。
Description
技术领域
本发明属于信道编码领域,具体涉及一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法。
背景技术
多元LDPC码由于其拥有相较于二元LDPC码更加优异的译码性能和在高阶调制信道上的天生优势,受到了信道编码领域学者们的广泛关注。多元LDPC码最初由Davey和MacKay提出,他们提出了一种定义在有限域GF(q)上的LDPC码,并相应的提出了适用于此多元LDPC码的译码方法,通常称为Q-ary sum-product算法(QSPA)。多元LDPC码还因其能够避免错误平层问题,所以其在中短码长领域具有更加优秀的性能,但是由于直接实现QSPA算法的计算复杂度过高,这使得LDPC码很难在实际中进行应用。
为了降低多元LDPC码的计算复杂度,Declercq等人在2007年提出了一种extendedmin-sum(EMS)算法,该算法通过对输入至校验节点的信息向量进行截短来减少校验节点的计算量。2012年,Ma等人用Trellis图对EMS算法进行重新描述(称为M-EMS算法),同时还提出了两种M-EMS算法的改进算法,称为T-EMS算法和D-EMS算法,2013年,Zhao等人提出了一种μ-EMS算法。这些算法都是通过使用截断准则减少参与校验节点更新计算的向量长度来降低计算复杂度。除此之外,划分节点非处理子集也是一种降低算法计算复杂度的有效方法,相关工作包括Han等人在2013年提出一种改进的信息传递译码算法和Sun等人在2015年提出的一种基于自适应判决机制的可靠度迭代比例逻辑译码算法。2017年,孙友明等人提出了一种融合了节点子集和k阶信息截断两种截断机制的多元LDPC算法,该算法提出了一种新的节点子集划分准则,其利用与校验节点相邻的变量节点所判决符号的可靠度来划分校验节点子集,对于如何界定子集门限和如何进行子集划分还有待进一步研究。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法及装置。
为实现上述目的及其他相关目的,本发明提供一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,用于信道编码,包括:
S1:根据信道接收值y和给定的尺度因子ξ、量化比特数b、量化间隔Δ,计算初始化信息并使用信息截断准则对初始化信息进行信息截断;设置当前迭代次数iter=0;首次迭代译码时,令所有的校验节点都处于检验节点处理子集M(l)中;
S2:判断当前迭代次数iter与最大迭代次数itermax大小,若当前迭代次数iter等于最大迭代次数itermax,则退出迭代译码,输出译码结果,若当前次迭代次数iter小于最大迭代次数itermax则进入步骤S3;
S8:根据校验节点子集划分准则,将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,跳到步骤S2进行下一次迭代译码。
可选地,对于一个给定的信道接收值y,通过以下方式来计算初始化信息的值;
式中,s(i)表示此有限域符号向量表示形式的第i个比特,Fq表示q阶有限域;
根据量化间隔Δ>0和量化比特数b>1以及下列规则将对数域的似然信息量化成整数信息;
式中,[x]为取整运算,表示取最接近x的整数。
可选地,所述变量节点的更新规则为:
可选地,所述信息截断准则为:
分别定义两个向量αt=(αt(0),αt(1),...,αt(q-1))和βt=(βt(0),βt(1),...,βt(q-1))为前向迭代向量和后向迭代向量,其计算过程如下所示:
前向迭代过程:
后向迭代过程:
外信息提取:
信息后处理:
对于0≤t≤dc-1,计算:
式中,ξ为一个尺度因子。
可选地,所述中间节点的置换规则为:
变量节点Vj的信息通过中间节点Hij传递给校验节点Ci的信息按照下式的进行置换:
校验节点Ci的信息通过中间节点Hij传递给变量节点Vj的信息按照下式的进行置换:
可选地,基于可靠优势度的校验节点子集划分准则对校验节点进行划分。
所述校验节点划分为处理节点子集和非处理节点子集,处理节点子集中的校验节点具有的特
点为其校验和不为零,或者其校验和为零,但是与之相邻的变量节点中有两个以上的变
量节点的码元可靠优势度小于门限值Tc。
为实现上述目的及其他相关目的,本发明提供一种基于码元可靠优势度节点子集划分准则的多元LDPC译码装置,用于信道编码,包括:
初始化模块,用于根据信道接收值y和给定的尺度因子ξ、量化比特数b、量化间隔Δ,计算初始化信息并使用信息截断准则对初始化信息进行信息截断;设置当前迭代次数iter=0;首次迭代译码时,所有的校验节点都处于检验节点处理子集M(l)中;
判断模块,用于判断当前迭代次数iter与最大迭代次数itermax大小,若当前迭代次数iter等于最大迭代次数itermax,则退出迭代译码,输出译码结果,若当前次迭代次数iter小于最大迭代次数itermax则进入迭代译码过程;
校验节点划分模块,用于根据校验节点子集划分准则,将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,进行下一次迭代译码。
如上所述,本发明的一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,具有以下有益效果:
本发明一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法提出了一种新的节点子集划分准则,该准则在对校验节点进行处理/非处理子集划分时,对于校验和不为零的校验节点,利用码元可靠优势度来对变量节点的判决符号的可靠程度进行判断,只有在某一符号的可靠度相比于其他符号的可靠度大于某一门限值Tc时,才认为此译码符号是可靠的,并根据校验节点中可靠变量节点的数量将其划分至处理或者非处理子集,同时本发明也给出了一种确定该门限值的计算方法。相较于采用其他子集划分准则而言的EMS算法而言,能够在更低的计算复杂度下取得更加良好的纠错性能。
附图说明
为了进一步阐述本发明所描述的内容,下面结合附图对本发明的具体实施方式作进一步详细的说明。应当理解,这些附图仅作为典型示例,而不应看作是对本发明的范围的限定。
图1为本发明一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法的流程图;
图2为多元LDPC码的Normal图;
图3为实验一中各算法的BER数据;
图4为实验一中各算法的复杂度比率。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
为了更加清楚的描述技术方案,本发明的具体实施方式如下:
令Fq表示q阶有限域,一个基于有限域Fq上的多元LDPC码ζq=[n,k]可以定义为其稀疏校验矩阵H=[hij]m×n的零空间,其中hij∈Fq。消息向量v=(v0,v1,…,vn-1)只有满足HvT=0时才为此LDPC码的一个合法码字。
首先定义两个引索集:
Ni={j:0≤j≤n-1,hi,j≠0}
其中的元素表示校验矩阵H的第i行中,不为零的元素所在的列的序号;
Mj={i:0≤i≤m-1,hi,j≠0}
其中的元素表示在校验矩阵H的第j列中,不为零的元素所在的行的序号。
对于一个给定的校验矩阵H,可以用如图2所示的Normal图来描述LDPC码的译码过程。在Normal图中,边代表的是变量,而顶点则代表的是某种约束条件。在多元LDPC码的Normal图中共有三种节点,变量节点(V节点)代表校验矩阵中的每一列,校验节点(C节点)代表着校验矩阵中的每一行,对于校验矩阵中不为零的元素,即hij≠0,用中间节点表示。在Normal图中,所有与第j个变量节点相邻的边都必须为相同的变量,所有与第i个校验节点相邻的边所代表的相连之和必须为零。
如图1所示,本发明提供一种基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,包括:
S1:根据信道接收值y和给定的尺度因子ξ、量化比特数b、量化间隔Δ,计算初始化信息并使用信息截断准则对初始化信息进行信息截断;设置当前迭代次数iter=0;首次迭代译码时,令所有的校验节点都处于检验节点处理子集M(l)中;
S2:判断当前迭代次数iter与最大迭代次数itermax大小,若当前迭代次数iter等于最大迭代次数itermax,则退出迭代译码,输出译码结果,若当前次迭代次数iter小于最大迭代次数itermax则进入步骤S3;
S8:根据校验节点子集划分准则,将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,跳到步骤S2进行下一次迭代译码。
现在将基于Normal图对EMS算法的具体步骤进行描述,主要包括信息初始化、信息截断准则、变量节点、校验节点和中间节点之间的信息的传递和处理。
在步骤S1中对于一个给定的信道接收值y,可以通过以下方式来计算初始化信息的值。
式中,s(i)表示此有限域符号向量表示形式的第i个比特。
设量化间隔Δ>0和量化比特数b>1为两个需要被设计的参数,利用这两个参数,能够依据下列规则将对数域的似然信息量化成整数信息,需要注意的是在量化过程中2bΔ应足够大,以确保信道接收值能够被更多的包括进来:
式中,[x]为取整运算,表示取最接近x的整数。
在本实施例中,基于可靠优势度的校验节点子集划分准则对校验节点进行划分。
对于校验节点Ci而言,它所代表的约束条件为所有与第i个校验节点相邻的边所代表的变量之和必须为零。设为第l次迭代更新时,与校验节点Ci相连的变量节点的判决码元集合,这些码元集合参与第i个校验方程的校验和计算:
在一次迭代中,校验和存在以下两种情况:
2)校验和时,此时的判决码元集同样存在两种情况:(a)中所有的判决码元符号都为正确的码元符号;(b)判决码元集中存在两个及以上的错误符号,这些错误判决符号也可以使得校验和为零。对于(a)情况,由于所有的判决码元都是正确的码字符号,所以在下次迭代更新时,该校验节点可以不用进行信息的更新;而对于(b)情况而言,由于判决符号中存在错误,所以需要在下次迭代时对此校验节点进行信息更新。
首先给出变量节点判决码元可靠优势度的定义:
码元可靠优势度表示对于某个变量节点而言,可靠度最大的码元符号相较于可靠度次大的码元符号在可能性上的优势程度。
基于本发明所提出的校验节点子集划分准则,对校验和的校验节点进行划分,将其划分为处理/非处理节点,其中非处理节点存在的一个共性为:与此校验节点相邻的变量节点的判决码元的可靠度优势都足够大,即相较于其他符号而言,此有限域符号作为正确判决译码结果的可能性更大。
其中0≤j≤n-1,门限值Tc下式来确定:
式中δ为一个修正因子,用仿真的方式对其加以确定。
其中,0≤i≤m-1。
对外信息进行信息截断:
对于一个给定的对数域信息向量LV(s),s∈Fq,现依照某种准则将其有限域分为F和Fq-F两个部分,对于M-EMS算法而言,其划分依据如下:
FM={s∈Fq|LV(s)是M个最大值之一} (10)
根据子集FM,可以定义对向量LV(s),s∈Fq的信息截断准则如下:
在步骤S4中,中间节点的置换规则为:
变量节点Vj的信息通过中间节点Hij传递给校验节点Ci的信息按照下式的进行置换:
校验节点Ci的信息通过中间节点Hij传递给变量节点Vj的信息按照下式的进行置换:
在步骤S5中,变量节点的更新规则为:
多元LDPC码校验节点的更新使用在Trellis图上的前向后向迭代过程来计算。首先分别定义如下两个向量αt=(αt(0),αt(1),…,αt(q-1))和βt=(βt(0),βt(1),…,βt(q-1))为前向迭代向量和后向迭代向量,其计算过程如下所示:
前向迭代过程
后向迭代过程
外信息提取
信息后处理
对于0≤t≤dc-1,计算:
式中,ξ为一个尺度因子。
本文考虑使用一个建立在有限域F64上的,其参数为m=44,n=88的规则校验矩阵Hb进行实验,此校验矩阵的行重和列重分别为dr=4,dc=2。
算法的译码性能使用误码率(BER)来进行衡量,同时为了横向比较各译码算法之间的计算复杂度,考虑使用不同算法相较于不采用子集划分的M-EMS算法,在平均每一次完整的译码过程进行了信息更新的校验节点的总个数之比(复杂度比率)来衡量:
实验一:定义在有限域F64上,校验矩阵参数为m=44,n=88的规则多元LDPC码。
本发明考虑对比不使用节点子集划分准则的M-EMS算法,采用现有的子集划分准则的M-EMS算法(简称为kM-EMS)和采用本文提出的基于码元可靠优势度的节点划分准则的M-EMS算法(简称为advM-EMS)在不同信噪比下的性能与计算复杂度。对于M-EMS算法,令其参数M=32;对于kM-EMS算法,令其参数M=32,Tc=150,对于advM-EMS算法,其修正系数δ=0.9。对于所有的译码算法而言,相关参数的设定为ξ=0.9,b=8,Δ=1/64。
图3显示了各算法在不同的信道信噪比环境下的误码率(BER),从中可以看出,采用本发明所提出的划分准则的advM-EMS算法在所有的信噪比条件下,都具有比kM-EMS算法所提出的校验节点子集划分准则更优异的纠错性能,同时相比于不采用节点子集划分准则的M-EMS算法,其性能大约有0.4dB的损失。
图4中各算法的复杂度比例显示,advM-EMS算法相比于M-EMS算法的复杂度比率在信噪比Eb/N0=1/2.2/2.6/3.0(dB)时只有0.7左右。同时在所有信噪比条件下,advM-EMS算法相较于kM-EMS算法都能够在更低的计算复杂度情况下获得更强的纠错性能。
基于码元可靠优势度节点子集划分准则的多元LDPC译码装置,用于信道编码,该装置包括:
初始化模块,用于根据信道接收值y和给定的尺度因子ξ、量化比特数b、量化间隔Δ,计算初始化信息并使用信息截断准则对初始化信息进行信息截断;设置当前迭代次数iter=0;首次迭代译码时,所有的校验节点都处于检验节点处理子集M(l)中;
判断模块,用于判断当前迭代次数iter与最大迭代次数itermax大小,若当前迭代次数iter等于最大迭代次数itermax,则退出迭代译码,输出译码结果,若当前次迭代次数iter小于最大迭代次数itermax则进入迭代译码过程;
校验节点划分模块,用于根据校验节点子集划分准则,将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,进行下一次迭代译码。
于一实施例中,对于一个给定的信道接收值y,通过以下方式来计算初始化信息的值;
式中,s(i)表示此有限域符号向量表示形式的第i个比特,Fq表示q阶有限域;
根据量化间隔Δ>0和量化比特数b>1以及下列规则将对数域的似然信息量化成整数信息;
式中,[x]为取整运算,表示取最接近x的整数。
于一实施例中,所述变量节点的更新规则为:
于一实施例中,所述信息截断准则为:
于一实施例中,对校验节点进行更新,包括:
分别定义两个向量αt=(αt(0),αt(1),...,αt(q-1))和βt=(βt(0),βt(1),...,βt(q-1))为前向迭代向量和后向迭代向量,其计算过程如下所示:
前向迭代过程:
后向迭代过程:
外信息提取:
信息后处理:
对于0≤t≤dc-1,计算:
式中,ξ为一个尺度因子。
于一实施例中,所述中间节点的置换规则为:
变量节点Vj的信息通过中间节点Hij传递给校验节点Ci的信息按照下式的进行置换:
校验节点Ci的信息通过中间节点Hij传递给变量节点Vj的信息按照下式的进行置换:
于一实施例中,基于可靠优势度的校验节点子集划分准则对校验节点进行划分。
所述校验节点划分为处理节点子集和非处理节点子集,处理节点子集中的校验节点具有的特点为其校验和不为零,或者其校验和为零,但是与之相邻的变量节点中有两个以上的变量节点的码元可靠优势度小于门限值Tc。
需要说明的是,由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例的内容请参见方法部分的实施例的描述,这里暂不赘述。
本发明还提供一种存储介质,存储计算机程序,所述计算机程序被处理器运行时执行前述的方法。
本发明还提供一种电子终端,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器存储的计算机程序,以使所述设备执行前述的方法。
所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器((RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质等。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可以是内部存储单元或外部存储设备,例如插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字卡(Secure Digital,SD),闪存卡(Flash Card)等。进一步地,所述存储器还可以既包括内部存储单元,也包括外部存储设备。所述存储器用于存储所述计算机程序以及其他程序和数据。所述存储器还可以用于暂时地存储己经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,用于信道编码,其特征在于,包括:
S1:根据信道接收值y和给定的尺度因子ξ、量化比特数b、量化间隔Δ,计算初始化信息并使用信息截断准则对初始化信息进行信息截断;设置当前迭代次数iter=0;首次迭代译码时,令所有的校验节点都处于检验节点处理子集M(l)中;
S2:判断当前迭代次数iter与最大迭代次数itermax大小,若当前迭代次数iter等于最大迭代次数itermax,则退出迭代译码,输出译码结果,若当前次迭代次数iter小于最大迭代次数itermax则进入步骤S3;
其中,对满足校验和的校验节点进行划分的具体步骤包括:首先给出变量节点判决码元可靠优势度的定义:
码元可靠优势度表示对于某个变量节点而言,可靠度最大的码元符号相较于可靠度次大的码元符号在可能性上的优势程度;
其中0≤j≤n-1,门限值Tc下式来确定:
式中δ为一个修正因子;
其中,0≤i≤m-1;
S8:根据校验节点子集划分准则,将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,跳到步骤S2进行下一次迭代译码。
5.根据权利要求1所述的基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,其特征在于,对校验节点进行更新,包括:
分别定义两个向量αt=(αt(0),αt(1),...,αt(q-1))和βt=(βt(0),βt(1),...,βt(q-1))为前向迭代向量和后向迭代向量,其计算过程如下所示:
前向迭代过程:
后向迭代过程:
外信息提取:
信息后处理:
对于0≤t≤dc-1,计算:
式中,ξ为一个尺度因子。
7.根据权利要求1所述的基于码元可靠优势度节点子集划分准则的多元LDPC译码方法,其特征在于,基于可靠优势度的校验节点子集划分准则对校验节点进行划分。
10.基于码元可靠优势度节点子集划分准则的多元LDPC译码装置,用于信道编码,其特征在于,包括:
初始化模块,用于根据信道接收值y和给定的尺度因子ξ、量化比特数b、量化间隔Δ,计算初始化信息并使用信息截断准则对初始化信息进行信息截断;设置当前迭代次数iter=0;首次迭代译码时,所有的校验节点都处于检验节点处理子集M(l)中;
判断模块,用于判断当前迭代次数iter与最大迭代次数itermax大小,若当前迭代次数iter等于最大迭代次数itermax,则退出迭代译码,输出译码结果,若当前次迭代次数iter小于最大迭代次数itermax则进入迭代译码过程;
其中,对满足校验和的校验节点进行划分的具体步骤包括:首先给出变量节点判决码元可靠优势度的定义:
码元可靠优势度表示对于某个变量节点而言,可靠度最大的码元符号相较于可靠度次大的码元符号在可能性上的优势程度;
其中0≤j≤n-1,门限值Tc下式来确定:
式中δ为一个修正因子;
其中,0≤i≤m-1;
校验节点划分模块,用于根据校验节点子集划分准则,将在下一次迭代中需要进行信息更新的校验节点划分至子集M(l)中,同时迭代次数iter=iter+1,进行下一次迭代译码。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910777240.5A CN110545162B (zh) | 2019-08-22 | 2019-08-22 | 基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 |
NL2026064A NL2026064B1 (en) | 2019-08-22 | 2020-07-15 | Multiple LDPC Decoding Method and Device Based on Code Element Reliability Dominance Nodes Subset Partition Criterion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910777240.5A CN110545162B (zh) | 2019-08-22 | 2019-08-22 | 基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110545162A CN110545162A (zh) | 2019-12-06 |
CN110545162B true CN110545162B (zh) | 2022-01-07 |
Family
ID=68711866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910777240.5A Active CN110545162B (zh) | 2019-08-22 | 2019-08-22 | 基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110545162B (zh) |
NL (1) | NL2026064B1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111510162B (zh) * | 2020-05-20 | 2023-08-29 | 桂林电子科技大学 | 一种基于节点刷新机制的低复杂度多元ldpc译码方法 |
CN112953557A (zh) * | 2021-03-23 | 2021-06-11 | 西南大学 | 基于扩展最小和算法的nb-ldpc码加权因子优化译码器和方法 |
CN113595564B (zh) * | 2021-08-10 | 2023-09-01 | 天津大学 | 基于信息截断的低复杂度多进制ldpc码译码器装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534129A (zh) * | 2009-04-21 | 2009-09-16 | 北京邮电大学 | 基于不对等消息更新的置信传播ldpc译码方法 |
CN105024705A (zh) * | 2015-08-19 | 2015-11-04 | 西安电子科技大学 | 一种低复杂度的多元ldpc码译码方法及译码器 |
CN106330201A (zh) * | 2016-08-18 | 2017-01-11 | 中山大学 | 基于变量节点可靠性动态选择策略的多进制ldpc码更新方法 |
CN108429605A (zh) * | 2018-03-09 | 2018-08-21 | 西安电子科技大学 | 基于可靠度分级的置信传播译码方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484158B2 (en) * | 2003-12-03 | 2009-01-27 | Infineon Technologies Ag | Method for decoding a low-density parity check (LDPC) codeword |
-
2019
- 2019-08-22 CN CN201910777240.5A patent/CN110545162B/zh active Active
-
2020
- 2020-07-15 NL NL2026064A patent/NL2026064B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534129A (zh) * | 2009-04-21 | 2009-09-16 | 北京邮电大学 | 基于不对等消息更新的置信传播ldpc译码方法 |
CN105024705A (zh) * | 2015-08-19 | 2015-11-04 | 西安电子科技大学 | 一种低复杂度的多元ldpc码译码方法及译码器 |
CN106330201A (zh) * | 2016-08-18 | 2017-01-11 | 中山大学 | 基于变量节点可靠性动态选择策略的多进制ldpc码更新方法 |
CN108429605A (zh) * | 2018-03-09 | 2018-08-21 | 西安电子科技大学 | 基于可靠度分级的置信传播译码方法 |
Non-Patent Citations (1)
Title |
---|
Efficient Check-Node-Stopped LDPC Decoder Design;Tzu-Hsuan Huang;《IEEE Xplore》;20140828;全文 * |
Also Published As
Publication number | Publication date |
---|---|
NL2026064B1 (en) | 2021-06-04 |
CN110545162A (zh) | 2019-12-06 |
NL2026064A (en) | 2021-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110545162B (zh) | 基于码元可靠优势度节点子集划分准则的多元ldpc译码方法及装置 | |
US7373581B2 (en) | Device, program, and method for decoding LDPC codes | |
US8095863B2 (en) | Low complexity decoding of low density parity check codes | |
CN101079638B (zh) | 用于降低复杂度的低密度奇偶校验解码的系统和方法 | |
US7590914B2 (en) | Decoding apparatus for low-density parity-check codes using sequential decoding, and method thereof | |
US7587659B2 (en) | Efficient front end memory arrangement to support parallel bit node and check node processing in LDPC (Low Density Parity Check) decoders | |
US7395487B2 (en) | Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder | |
US20070043998A1 (en) | Systems and methods for a turbo low-density parity-check decoder | |
CN105763203B (zh) | 一种基于硬可靠度信息的多元ldpc码译码方法 | |
CN106936444B (zh) | 一种集合译码方法和集合译码器 | |
CN106998208B (zh) | 一种可变长Polar码的码字构造方法 | |
CN107404321B (zh) | 用于纠错码解码的方法和设备 | |
CN109586732B (zh) | 中短码ldpc编解码系统和方法 | |
CN112865812B (zh) | 一种多元ldpc译码方法、计算机存储介质及计算机 | |
CN109120374B (zh) | 准循环低密度奇偶校验编码设计方法及装置 | |
US7757149B2 (en) | Broadcast message passing decoding of low density parity check codes | |
CN109983705B (zh) | 用于生成极化码的装置和方法 | |
CN115664899A (zh) | 一种基于图神经网络的信道解码方法及系统 | |
CN110166171A (zh) | 多元ldpc码基于ems的分段式补偿高性能译码方案 | |
CN110730008A (zh) | 一种基于深度学习的rs码置信传播译码方法 | |
KR102092634B1 (ko) | Ldpc 부호 복호기 및 복호 방법 | |
CN111835363B (zh) | 基于交替方向乘子法的ldpc码译码方法 | |
CN113612485A (zh) | 一种译码方法、译码装置、设备及存储装置 | |
CN104767536B (zh) | 基于ofdm电力线通信系统的qc-ldpc译码方法和译码器 | |
CN110708077B (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 |