CN112332859B - 低复杂度的多元ldpc码校验节点单元及数字通信设备 - Google Patents
低复杂度的多元ldpc码校验节点单元及数字通信设备 Download PDFInfo
- Publication number
- CN112332859B CN112332859B CN202011255040.2A CN202011255040A CN112332859B CN 112332859 B CN112332859 B CN 112332859B CN 202011255040 A CN202011255040 A CN 202011255040A CN 112332859 B CN112332859 B CN 112332859B
- Authority
- CN
- China
- Prior art keywords
- path
- data
- messages
- message
- min1
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 29
- 238000013507 mapping Methods 0.000 claims description 38
- 101000802640 Homo sapiens Lactosylceramide 4-alpha-galactosyltransferase Proteins 0.000 claims description 6
- 102100035838 Lactosylceramide 4-alpha-galactosyltransferase Human genes 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 description 12
- 238000000034 method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 101100325756 Arabidopsis thaliana BAM5 gene Proteins 0.000 description 2
- 101150046378 RAM1 gene Proteins 0.000 description 2
- 101100476489 Rattus norvegicus Slc20a2 gene Proteins 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种低复杂度的多元LDPC码校验节点单元,包括:查找器,用于从dc个变量节点传递来的一组消息中查找FMS算法定义的四个目标变量节点编号;网格数据生成器,用于基于该组消息和四个目标变量节点编号,通过四个dc选一的数据选择器以及dc‑2个三选一的数据选择器,生成网格数据;路径构造器,用于基于网格数据,计算每个变量节点的候选路径的校验值和路径度量值;输出消息生成器,用于基于候选路径的校验值和路径度量值,通过dc个并串转换器、dc个加法器、dc个判决器以及dc个多选一的数据选择器,生成并输出传递给dc个变量节点的消息。本发明基于FMS算法在实际数字通信系统上实现了多元LDPC码校验节点。
Description
技术领域
本发明属于数字通信系统的纠错编码技术领域,具体涉及一种低复杂度的多元LDPC码校验节点单元及数字通信设备。
背景技术
多元LDPC(Low Density Parity Check)码是一种定义在有限域上的信道编码。相比于二元LDPC码,多元LDPC码在中短码长上具有更高的编码增益和更强的抗突发错误能力,并且非常适宜与高阶调制方案结合。多元LDPC码可应用于高阶调制、MIMO(Multi-InputMulti-Output,多输入多输出)等高吞吐量传输系统,以及可应用于空间通信等功率受限系统。例如,北斗三号卫星导航系统就采用了多元LDPC码。多元LDPC码的经典译码算法是多元和积算法(q-ary sum-product algorithm,QSPA),但QSPA的译码复杂度较高,阻碍了多元LDPC码在实际数字通信系统中的应用。
2017年提出的FMS(fixed paths min-sum)算法,是一种基于网格图进行译码的算法;其中,所谓的网格图包括多列由变量节点传递给校验节点的消息,每列消息对应一个变量节点,每个消息为一个数据对,该数据对包括消息的路径度量值和消息对应的有限域元素。FMS算法因其具有较低的计算复杂度、较低的存储复杂度以及较高的并行度,被认为是一种适于在数字通信系统中应用的多元LDPC码的译码算法。
由于译码器的复杂度主要取决于校验节点的更新过程,故如果能够基于FMS算法实现译码器校验节点的相应功能,则多元LDPC码在实际的数字通信系统中将更实用。
然而,目前对于如何基于FMS算法在实际数字通信系统上实现多元LDPC码校验节点,尚没有切实可行的方案。
发明内容
为了基于FMS算法在实际数字通信系统上实现多元LDPC码校验节点,本发明提供了一种低复杂度的多元LDPC码校验节点单元。
本发明要解决的技术问题通过以下技术方案实现:
第一方面,本发明提供了一种低复杂度的多元LDPC码校验节点单元,包括:查找器、网格数据生成器、路径构造器以及输出消息生成器;其中,
所述查找器,用于通过两个最小次小查找器,从dc个变量节点传递来的一组消息中查找FMS算法定义的四个目标变量节点编号;其中,每个所述变量节点均向所述查找器传递来nm个消息;
所述网格数据生成器,用于基于所述一组消息和所述四个目标变量节点编号,通过四个dc选一的数据选择器以及dc-2个三选一的数据选择器,生成符合FMS算法定义的包含dc+2列消息的网格数据;其中,每个所述数据选择器对应输出所述网格数据中的一列消息;
所述路径构造器,用于基于所述网格数据,计算每个所述变量节点的候选路径的校验值和路径度量值;
所述输出消息生成器,用于基于所述候选路径的校验值和和所述候选路径的路径度量值,通过dc个并串转换器、dc个加法器、dc个判决器以及dc个多选一的数据选择器,生成并输出传递给所述dc个变量节点的消息;其中,所述并串转换器用于将所述候选路径串行输出;所述判决器用于根据预设阈值从串行输出的候选路径中筛选合格路径;所述加法器用于根据合格路径的校验值和零节点的有限域元素,计算传递给变量节点的消息中的有限域元素;所述dc个多选一的数据选择器用于按照变量节点编号顺序并行输出传递给所述dc个变量节点的消息。
优选地,所述四个目标变量节点编号包括:
各个变量节点向所述查找器传递来的第2个消息中,最小的消息度量值所属的变量节点编号lmin1和次小的消息度量值所属的变量节点编号lmin2,以及,各个变量节点向所述查找器传递来的第nm/2个消息中,最小的消息度量值所属的变量节点编号l'min1和次小的消息度量值所属的变量节点编号l'min2;
所述网格数据生成器,具体用于:
基于所述一组消息和所述四个目标变量节点编号,通过所述四个dc选一的数据选择器,分别生成所述网格数据的第一列消息、第二列消息、第dc+1列消息以及第dc+2列消息,并通过所述dc-2个三选一的数据选择器和第一查找表模块,生成所述网格数据的第3至dc列消息;
其中,所述第一查找表模块,用于基于lmin1和lmin2,输出所述dc-2个三选一的数据选择器的数据选择信号;所述四个dc选一的数据选择器的数据选择信号分别与lmin1、lmin2、l'min1、l'min2对应。
优选地,所述第一查找表模块,基于lmin1和lmin2,输出所述dc-2个三选一的数据选择器的数据选择信号,包括:
基于所述变量节点编号与lmin1、lmin2的大小关系,生成第一映射关系;
基于所述第一映射关系,输出所述dc-2个三选一的数据选择器的数据选择信号;
其中,所述第一映射关系是P(k)与k的映射关系;k表示所述网格数据中的第k列消息,k∈[3,dc];P(k)表示所述变量节点编号,且P(k)表征所述网格数据中的第k列消息对应第P(k)个变量节点。
优选地,所述第一映射关系的生成方式,包括:
如果P(k)<lmin1且P(k)<lmin2,则P(k)=k-2;
如果lmin1<P(k)<lmin2或lmin2<P(k)<lmin1,则P(k)=k-1;
如果P(k)>lmin1且P(k)>lmin2,则P(k)=k。
优选地,所述输出消息生成器,具体用于:
针对第j个变量节点,
通过一个并串转换器,将该变量节点的候选路径串行输出;
通过一个判决器,比较串行输出的候选路径的路径度量值与所述预设阈值的大小,并将路径度量值小于所述预设阈值的候选路径作为合格路径;
通过一个加法器,将所述合格路径的校验值与零节点的有限域元素进行相加,得到第j路备选输出消息的有限域元素;并且,将所述合格路径的路径度量值作为第j路备选输出消息的消息度量值;
通过一个多选一的数据选择器和第二查找表模块,从多路备选输出消息中选择并输出传递给该变量节点的消息;
其中,第j个变量节点的多路备选输出消息包括:第1路备选输出消息,第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息以及第j+2路备选输出消息,j∈[1,dc];
所述第二查找表模块,用于基于lmin1和lmin2,输出所述dc个多选一的数据选择器的数据选择信号。
优选地,所述第二查找表模块,基于lmin1和lmin2,输出所述dc个多选一的数据选择器的数据选择信号,包括:
基于所述变量节点编号与lmin1、lmin2的大小关系,生成第二映射关系;
基于所述第二映射关系,输出所述dc个多选一的数据选择器的数据选择信号;
其中,所述第二映射关系是j与p'(j)的映射关系,j代表所述变量节点的编号,j∈[1,dc];p'(j)代表传递给第j个变量节点的消息取自第p'(j)路备选输出消息。
优选地,所述第二映射关系的生成方式,包括:
如果j=lmin1,则p'(j)=1;
如果j=lmin2,则p'(j)=2;
如果j<lmin1且j<lmin2,则p'(j)=j+2;
如果lmin1<j<lmin2或lmin2<j<lmin1,则p'(j)=j+1;
如果j>lmin1且j>lmin2,则p'(j)=j。
第二方面,本发明提供了一种数字通信设备,所述数字通信设备包含于上述任一种低复杂度的多元LDPC码校验节点单元。
本发明提供的低复杂度的多元LDPC码校验节点单元中,通过查找器、网格数据生成器、路构造器以及输出消息生成器,实现了基于FMS算法的多元LDPC码校验节点;其中,通过查找器,可以查找出FMS算法定义的四个目标变量节点编号;通过四个dc选一的数据选择器以及dc-2个三选一的数据选择器,可以生成符合FMS算法定义的网格数据;通过路径构造器,可以为每个变量节点构造FMS算法定义的候选路径;通过dc个并串转换器、dc个加法器、dc个判决器以及dc个多选一的数据选择器,可以并行地生成并输出传递给dc个变量节点的消息。本发明提供的基于FMS算法的多元LDPC码校验节点单元具有较低的复杂度,可以应用于实际的实际数字通信系统;尤其适用于对高行重的多元LDPC码进行译码的译码器中。
以下将结合附图及对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种低复杂度的多元LDPC码校验节点单元的结构示意图;
图2是图1所示多元LDPC码校验节点单元中的网格数据生成器的结构示意图;
图3是图1所示多元LDPC码校验节点单元中的输出消息生成器的结构示意图;
图4是本发明实施例提供的一种数字通信设备的结构示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
为了基于FMS算法在实际数字通信系统上实现多元LDPC码校验节点,本发明实施例提供了一种低复杂度的多元LDPC码校验节点单元;如图1所示,该多元LDPC码校验节点单元可以包括:查找器、网格数据生成器、路径构造器以及输出消息生成器。
查找器,用于通过两个最小次小查找器,从dc个变量节点传递来的一组消息中查找FMS算法定义的四个目标变量节点编号;其中,每个变量节点均向该查找器传递来了nm个消息;可以理解的是,如果将dc个变量节点传递来的消息视为一个消息矩阵M,则该消息矩阵M为一个nm×dc的矩阵。
其中,消息矩阵M中的每个消息为一个数据对(R[l],Rs[l]),l=1,...,nm。其中,R[l]是消息度量值,Rs[l]是消息对应的有限域元素。在FMS算法的定义中,消息的消息度量值越低,代表消息的可靠度越高。
为了便于区分,可以将变量节点传递给校验节点的消息称为V2C消息,将校验节点传递给变量节点的消息称为C2V消息。其中,V2C消息存储在数字通信设备的RAM(RandomAccess Memory,随机存取存储器)中,并按照消息的可靠度从高到低的顺序排列。查找器可以直接从RAM中读取FMS算法定义的四个目标变量节点编号。
其中,FMS算法定义的四个目标变量节点编号包括:各个变量节点向查找器传递来的第2个消息中,最小的消息度量值所属的变量节点编号lmin1和次小的消息度量值所属的变量节点编号lmin2,以及,各个变量节点向所述查找器传递来的第nm/2个消息中,最小的消息度量值所属的变量节点编号l'min1和次小的消息度量值所属的变量节点编号l'min2,nm为偶数。
在实际应用中,为了便于后续生成网格数据,V2C消息可以采用两段存储结构;具体的,将每个V2C消息的nm个消息中,前nn个可靠度最高的消息存储到RAM1中,剩下的nm-nn个低可靠度的消息存储到RAM2中。
网格数据生成器,用于基于dc个变量节点传递来的一组消息和四个目标变量节点编号,通过四个dc选一的数据选择器以及dc-2个三选一的数据选择器,生成符合FMS算法定义的包含dc+2列消息的网格数据;其中,网格数据的第1至dc列由RAM1中存储的第1至dc个变量节点的前nn个可靠度最高的消息映射而来,网格数据的第dc+1列对应RAM2中存储的第l'min1个变量节点的后nm-nn个低可靠度的消息;网格数据的第dc+2列对应RAM2中存储的第l'min2个变量节点的后nm-nn个低可靠度的消息。可以理解的是,网格数据生成器中的每个数据选择器对应输出网格数据中的一列消息。
具体的,该网格数据生成器,基于dc个变量节点传递来的一组消息,通过四个dc选一的数据选择器,生成网格数据的第一列消息、第二列消息、第dc+1列消息以及第dc+2列消息,并通过dc-2个三选一的数据选择器和第一查找表模块,生成网格数据的第3至dc列消息。
其中,该第一查找表模块,用于基于lmin1和lmin2,输出dc-2个三选一的数据选择器的数据选择信号,四个dc选一的数据选择器的数据选择信号,则分别与lmin1、lmin2、l'min1、l'min2对应。具体而言,第1个dc选一的数据选择器的数据选择信号,用于从dc个变量节点传递来的一组消息中,选择第lmin1个变量节点传递来的消息;第2个dc选一的数据选择器的数据选择信号,用于从dc个变量节点传递来的一组消息中,选择第lmin2个变量节点传递来的消息;第dc+1个dc选一的数据选择器的数据选择信号,用于从dc个变量节点传递来的一组消息中,选择第l'min1个变量节点传递来的消息;第dc+2个dc选一的数据选择器的数据选择信号,用于从dc个变量节点传递来的一组消息中,选择第l'min2个变量节点传递来的消息。
该第一查找表模块,基于lmin1和lmin2,输出dc-2个三选一的数据选择器的数据选择信号,包括:
基于变量节点编号与lmin1、lmin2的大小关系,生成第一映射关系;
基于第一映射关系,输出dc-2个三选一的数据选择器的数据选择信号;
其中,第一映射关系是P(k)与k的映射关系;k表征网格数据中的第k列消息,k∈[3,dc];P(k)表示变量节点编号,且P(k)表征网格数据中的第k列消息对应第P(k)个变量节点。
优选地,该第一映射关系的生成方式,可以包括:
如果P(k)<lmin1且P(k)<lmin2,则P(k)=k-2;
如果lmin1<P(k)<lmin2或lmin2<P(k)<lmin1,则P(k)=k-1;
如果P(k)>lmin1且P(k)>lmin2,则P(k)=k。
可以理解的是,该第一映射关系,表征了网格数据中的第3至dc列消息具体对应的是第几个变量节点传递来的消息;根据该第一映射关系,第一查找表模块便可以相应的输出dc-2个三选一的数据选择器的数据选择信号。
关于网格数据的具体生成过程,可以按照FMS算法对网格数据的要求而实现;为了方案布局清晰,后续对网格数据的生产过程进行详细说明。
路径构造器,用于基于网格数据,计算每个所述变量节点的候选路径的校验值和路径度量值,即为每个变量节点构造候选路径。
具体的,网格数据包括dc+2列消息,构建路径是要用到其中的第1至dc列消息。从这dc列消息中的每一列取一个消息作为路径节点,那么由dc个路径节点即可构成一条路径,路径的路径度量值就是这dc个路径节点的消息度量值的和,路径的校验值就是这dc个路径节点有限域元素的和。按照这种基本的路径构建方式,按照FMS算法的要求,即可为每个变量节点构建符合FMS算法定义的候选路径。
输出消息生成器,用于基于候选路径的校验值和和候选路径的路径度量值,通过dc个并串转换器、dc个加法器、dc个判决器以及dc个多选一的数据选择器,生成并输出传递给dc个变量节点的消息;其中,并串转换器用于将候选路径串行输出;判决器用于根据预设阈值从串行输出的候选路径中筛选合格路径;加法器用于根据合格路径的校验值和零节点的有限域元素,计算传递给变量节点的消息中的有限域元素;dc个多选一的数据选择器用于按照变量节点编号顺序并行地输出传递给dc个变量节点的消息。
具体的,针对第j个变量节点,通过一个并串转换器,将该变量节点的候选路径串行输出;通过一个判决器,比较串行输出的候选路径的路径度量值与所述预设阈值的大小,并将路径度量值小于该预设阈值的候选路径作为合格路径;可以理解的是,候选路径的路径度量值等于多个路径节点的消息度量值的和,候选路径的路径度量值越高,代表候选路径越不可靠,故而判决器将路径度量值小于预设阈值的候选路径作为合格路径;然后,通过一个加法器,将合格路径的校验值与零节点的有限域元素进行相加,得到第j路备选输出消息的有限域元素;并且,将合格路径的路径度量值作为第j路备选输出消息的消息度量值;通过一个多选一的数据选择器和第二查找表模块,从多路备选输出消息中选择并输出传递给该变量节点的消息。
其中,第j个变量节点的多路备选输出消息可以包括:第1路备选输出消息,第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息以及第j+2路备选输出消息,j∈[1,dc]。可以理解的是,第j个变量节点的多路备选输出消息,即是第j个变量节点对应的多选一的数据选择器的多路输入数据。而dc个多选一的数据选择器的数据选择信号,则是由第二查找表模块基于lmin1和lmin2所输出的。
该第二查找表模块,基于lmin1和lmin2输出dc个多选一的数据选择器的数据选择信号,可以包括:
基于变量节点编号与lmin1、lmin2的大小关系,生成第二映射关系;
基于第二映射关系,输出dc个多选一的数据选择器的数据选择信号。
其中,第二映射关系是j与p'(j)的映射关系,j代表变量节点的编号,j∈[1,dc];p'(j)代表传递给第j个变量节点的消息取自第p'(j)路备选输出消息。可以理解的是,该第二映射关系,表征了传递给每个变量节点的消息具体对应的是第几路备选消息。相应的,第二查找表模块基于该第二映射关系,便可以相应的输出dc个多选一的数据选择器的数据选择信号。
优选地,该第二映射关系的生成方式,可以包括:
如果j=lmin1,则p'(j)=1;
如果j=lmin2,则p'(j)=2;
如果j<lmin1且j<lmin2,则p'(j)=j+2;
如果lmin1<j<lmin2或lmin2<j<lmin1,则p'(j)=j+1;
如果j>lmin1且j>lmin2,则p'(j)=j。
在实际应用中,第j∈[1,dc]个多选一的数据选择器至多接5路备选输出消息。例如,对于第1个变量节点对应的多选一的数据选择器而言,其输入端要接第1至3路备选输出消息;对于第2个变量节点对应的多选一的数据选择器而言,其输入端要接第1至4路备选输出消息;对于第j∈[3,dc]个变量节点对应的多选一的数据选择器而言,其输入端要接第1路备选输出消息、第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息或第j+2路备选输出消息。另外,如果j+1≥dc,则没有第j+1路备选消息,如果j+2≥dc,则没有第j+2路备选消息。
本发明提供的低复杂度的多元LDPC码校验节点单元中,通过查找器、网格数据生成器、路构造器以及输出消息生成器,实现了基于FMS算法的多元LDPC码校验节点;其中,通过查找器,可以查找出FMS算法定义的四个目标变量节点编号;通过四个dc选一的数据选择器以及dc-2个三选一的数据选择器,可以生成符合FMS算法定义的网格数据;通过路径构造器,可以为每个变量节点构造FMS算法定义的候选路径;通过dc个并串转换器、dc个加法器、dc个判决器以及dc个多选一的数据选择器,可以并行地生成并输出传递给dc个变量节点的消息。本发明提供的基于FMS算法的多元LDPC码校验节点单元具有较低的复杂度,可以应用于实际的实际数字通信系统;尤其适用于对高行重的多元LDPC码进行译码的译码器中。
可以理解的是,上述的四个dc选一的数据选择器、dc-2个三选一的数据选择器以及第一查找表模块,均属于网格数据生成器的内部模块。图2示例性的示出了一个网格数据生成器的结构示意图。其中,标有“dc选一”的梯形模块即代表dc选一的数据选择器,Sel_A为网格数据的第1列消息对应的dc选一的数据选择器的数据选择信号,用于选择第lmin1个变量节点传递来的前nn个消息;Sel_B为网格数据的第2列消息对应的dc选一的数据选择器的数据选择信号,用于选择第lmin2个变量节点传递来的前nn个消息;标有“三选一”的梯形模块即代表三选一的数据选择器,Sel_1至Sel_dc-2为第一查找表模块输出的各个三选一的数据选择器的数据选择信号;Sel_C为网格数据的第dc+1列消息对应的dc选一的数据选择器的数据选择信号,用于选择第l'min1个变量节点传递来的后nm-nn个消息;Sel_D为网格数据的第dc+2列消息对应的dc选一的数据选择器的数据选择信号,用于选择第l'min2个变量节点传递来的后nm-nn个消息。另外,图2中不便示出但可以理解的是,dc个变量节点传递来的一组消息与各个数据选择器的输入端之间实际是一个数据连接网络,由此可以理解网格数据生成器实际上类似于一个数据交换网络。
还可以理解的是,上述的dc个并串转换器、dc个加法器、dc个判决器、dc个多选一的数据选择器以及第二查找表模块,均属于输出消息生成器的内部模块。图3示例性的示出了一个输出消息生成器的结构示意图。其中,带下标的符号z代表零节点的有限域元素。多选一即多选一的数据选择器;集合{S_l,S_2,…,S_j,…,S_dc}包括了第二查找表模块输出的各个多选一的数据选择器的数据选择信号。另外,图3中不便示出但可以理解的是,各个判决器的输出端与各个多选一的数据选择器的输入端之间实际也是一个数据连接网络。
在实际应用中,上述的最小次小查找器、dc选一的数据选择器、三选一的数据选择器、路径构造器、并串转换器、加法器、判决器、多选一的数据选择器、第一查找表模块以及第二查找表模块等,均可以在处理器中实现;该处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
为了方案更为清楚,下面对本发明实施例提供的低复杂度的多元LDPC码校验节点单元进行进一步的详细说明。
首先,对网格数据的具体生成过程进行详细说明,为了便于描述和方便读者理解,将dc个变量节点传递来的一组消息视为消息矩阵M。该生成过程参见如下:
(1)查找器从消息矩阵M中,获取第二行消息的消息度量值,并从这些度量值中找到最大值和次小值,从而确定该最大值所属消息的列号lmin1和次小值所属消息的列号lmin2。
(2)查找器从消息矩阵M中,获取第nm/2行消息的消息度量值,并从这些度量值中找到最大值和次小值,从而确定该最大值所属消息的列号l'min1和次小值所属消息的列号l'min2。
(3)根据FMS算法的定义,网格数据的第一列取消息矩阵M的第lmin1列的前nn个元素;网格数据的第二列取消息矩阵M的第lmin2列的前nn个元素;网格数据的第dc+1列取消息矩阵M的第l'min1列的后nm-nn个元素,网格数据的第dc+2列取消息矩阵M的第l'min2列的后nm-nn个元素;网格数据的第3至dc列,从消息矩阵M的剩余列中选取;具体的,从消息矩阵M的剩余列分别取前nn个元素,共得到dc-2列消息,并按照第一映射关系,将这dc-2列消息排在网格数据的第3至dc列。因此,通过四个dc选一的数据选择器,分别生成网格数据的第一列消息、第二列消息、第dc+1列消息以及第dc+2列消息;并且,通过dc-2个三选一的数据选择器,分别生成网格数据的第3至dc列消息。其中,每个dc选一的数据选择器的输入端均连接dc个变量节点传递来的消息;每个三选一的数据选择器的输入端均连接三个变量节点传递来的消息;具体而言,如果一个三选一的数据选择器对应的是网格数据的第k列,k∈[3,dc],那么这个数据选择器的输入端连接第P(k)=k个变量节传递来的消息、第P(k)=k-1个变量节传递来的消息、以及第P(k)=k-2个变量节传递来的消息。
然后,对路径构造器基于网格数据生成每个变量节点的候选路径的具体实现方式进行详细说明。
假设将网格图前dc列节点称为I类节点,后2列节点称为II类节点。假设将I类节点的第一行节点称为零节点,这是因为这些节点的度量值为零;也就是说,I类节点的第一行节点组成的路径具有最高的可靠度,为最可靠路径。并且,将网格数据中不是零节点的路径节点称为偏移节点。
基于以上设定,根据FMS算法的定义,基于网格数据可以生成的路径分为以下五大类,可细分为七类:
I类路径:即上述的一条最可靠路径。
II类路径:每条路径仅有一个偏移节点,每条路径的偏移节点分别是I类节点的第2行偏移节点,故II类路径一共有dc条。
III类路径:每条路径仅有两个偏移节点,第一个偏移节点为I类节点中第2行偏移节点的第1个节点,第二个偏移节点为I类节点中第2行偏移节点的非第1个偏移节点;由此,III类路径共包含dc-1条路径。
IV类路径:每条路径仅有两个偏移节点,第一个偏移节点为I类节点中第2行偏移节点的第2个偏移节点,第二个偏移节点为I类节点中第2行偏移节点中非第1、2个偏移节点;由此,IV类路径共包含条dc-1路径。
V类路径:每条路径仅有一个偏移节点,该偏移节点来自于I类节点中第3-nn行路径节点,V类路径一共包含dc(nn-2)条路径。
VI类路径:每条路径仅有一个偏移节点,该偏移节点取自网格数据的第dc+1列,VI类路径共有nm-nn条路径。
VII类路径:每条路径仅有一个偏移节点,该偏移节点取自网格数据的第dc+2列,VII类路径共有nm-nn条路径。
综上,路径构造器总共可以生成(dc-2)(nnum+1)+2nm条路径。对于每个变量节点来说,其候选路径从这(dc-2)(nnum+1)+2nm条路径中选取,但根据FMS算法的定义,各变量节点所能够选取的候选路径存在不同。
具体而言,对于每个变量节点来说,其候选路径包括以下五类:
第一类:即上述的I类路径。
第二类:从上述的II类路径中产生,但是对于第j个变量节点来说,其候选路径的偏移节点不能取自于网格数据的第j列。
第三类:从上述的IV类径中产生,第三类路径仅限于第1个变量节点才有,其他变量节点不具有。并且,对于该第1个变量节点来说,其候选路径的偏移节点不能取自于网格数据的第1列。
第四类:从上述的III类路径中产生,但第四类路径仅限于非第1个变量节点才有,第1个变量节点不具有。并且,对于第j个变量节点来说,其候选路径的偏移节点不能取自于网格数据的第j列。
第五类:从上述的IV类路径中产生。并且,对于第j个变量节点来说,其候选路径的偏移节点取自于网格数据的第j列。
第六类:从上述的VII类路或VI类路径中产生;具体而言,如果j=l'min1,则该第j个变量节点的候选路径从上述的VII类路中产生,否则该第j个变量节点的候选路径从上述的VI类路中产生。
然后,利用预设阈值对每个变量节点的候选路径进行筛选。针对筛选出的每个合格路径,将该合格路径的各个路径节点的消息度量值进行求和,便可以得到该合格路径的路径度量值,将该合格路径的各个路径节点的有限域元素进行求和,便可以得到该合格路径的校验值。
基于同一发明构思,本发明实施例还提供了一种数字通信设备,该数字通信设备可以包含有上述的低复杂度的多元LDPC码校验节点单元。
具体的,如图4所示,该设置通信设备可以包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现上述低复杂度的多元LDPC码校验节点单元所对应的功能。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表征,图中仅用一条粗线表征,但并不表征仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
需要说明的是,对于数字通信设备实施例而言,由于其基本相似于多元LDPC码校验节点单元实施例,所以描述的比较简单,相关之处参见多元LDPC码校验节点单元实施例的部分说明即可。
需要说明的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (3)
1.一种低复杂度的多元LDPC码校验节点单元,其特征在于,包括:查找器、网格数据生成器、路径构造器以及输出消息生成器;其中,
所述查找器,用于通过两个最小次小查找器,从dc个变量节点传递来的一组消息中查找FMS算法定义的四个目标变量节点编号;其中,每个所述变量节点均向所述查找器传递来nm个消息;
所述网格数据生成器,用于基于所述一组消息和所述四个目标变量节点编号,通过四个dc选一的数据选择器以及dc-2个三选一的数据选择器,生成符合FMS算法定义的包含dc+2列消息的网格数据;其中,每个所述数据选择器对应输出所述网格数据中的一列消息;
所述路径构造器,用于基于所述网格数据,计算每个所述变量节点的候选路径的校验值和路径度量值;
所述输出消息生成器,用于基于所述候选路径的校验值和所述候选路径的路径度量值,通过dc个并串转换器、dc个加法器、dc个判决器以及dc个多选一的数据选择器,生成并输出传递给所述dc个变量节点的消息;其中,所述并串转换器用于将所述候选路径串行输出;所述判决器用于根据预设阈值从串行输出的候选路径中筛选合格路径;所述加法器用于根据合格路径的校验值和零节点的有限域元素,计算传递给变量节点的消息中的有限域元素;所述dc个多选一的数据选择器用于按照变量节点编号顺序并行输出传递给所述dc个变量节点的消息;
所述四个目标变量节点编号包括:
各个变量节点向所述查找器传递来的第2个消息中,最小的消息度量值所属的变量节点编号lmin1和次小的消息度量值所属的变量节点编号lmin2,以及,各个变量节点向所述查找器传递来的第nm/2个消息中,最小的消息度量值所属的变量节点编号l'min1和次小的消息度量值所属的变量节点编号l'min2;
所述网格数据生成器,具体用于:
基于所述一组消息和所述四个目标变量节点编号,通过所述四个dc选一的数据选择器,分别生成所述网格数据的第一列消息、第二列消息、第dc+1列消息以及第dc+2列消息,并通过所述dc-2个三选一的数据选择器和第一查找表模块,生成所述网格数据的第3至dc列消息;
其中,所述第一查找表模块,用于基于lmin1和lmin2,输出所述dc-2个三选一的数据选择器的数据选择信号;所述四个dc选一的数据选择器的数据选择信号分别与lmin1、lmin2、l'min1、l'min2对应;
所述第一查找表模块,基于lmin1和lmin2,输出所述dc-2个三选一的数据选择器的数据选择信号,包括:
基于所述变量节点编号与lmin1、lmin2的大小关系,生成第一映射关系;
基于所述第一映射关系,输出所述dc-2个三选一的数据选择器的数据选择信号;
其中,所述第一映射关系是P(k)与k的映射关系;k表示所述网格数据中的第k列消息,k∈[3,dc];P(k)表示所述变量节点编号,且P(k)表征所述网格数据中的第k列消息对应第P(k)个变量节点;
所述第一映射关系的生成方式,包括:
如果P(k)<lmin1且P(k)<lmin2,则P(k)=k-2;
如果lmin1<P(k)<lmin2或lmin2<P(k)<lmin1,则P(k)=k-1;
如果P(k)>lmin1且P(k)>lmin2,则P(k)=k;
所述输出消息生成器,具体用于:
针对第j个变量节点,
通过一个并串转换器,将该变量节点的候选路径串行输出;
通过一个判决器,比较串行输出的候选路径的路径度量值与所述预设阈值的大小,并将路径度量值小于所述预设阈值的候选路径作为合格路径;
通过一个加法器,将所述合格路径的校验值与零节点的有限域元素进行相加,得到第j路备选输出消息的有限域元素;并且,将所述合格路径的路径度量值作为第j路备选输出消息的消息度量值;
通过一个多选一的数据选择器和第二查找表模块,从多路备选输出消息中选择并输出传递给该变量节点的消息;
其中,第j个变量节点的多路备选输出消息包括:第1路备选输出消息,第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息以及第j+2路备选输出消息,j∈[1,dc];
所述第二查找表模块,用于基于lmin1和lmin2,输出所述dc个多选一的数据选择器的数据选择信号;
所述第二查找表模块,基于lmin1和lmin2,输出所述dc个多选一的数据选择器的数据选择信号,包括:
基于所述变量节点编号与lmin1、lmin2的大小关系,生成第二映射关系;
基于所述第二映射关系,输出所述dc个多选一的数据选择器的数据选择信号;
其中,所述第二映射关系是j与p'(j)的映射关系,j代表所述变量节点的编号,j∈[1,dc];p'(j)代表传递给第j个变量节点的消息取自第p'(j)路备选输出消息。
2.根据权利要求1所述的多元LDPC码校验节点单元,其特征在于,所述第二映射关系的生成方式,包括:
如果j=lmin1,则p'(j)=1;
如果j=lmin2,则p'(j)=2;
如果j<lmin1且j<lmin2,则p'(j)=j+2;
如果lmin1<j<lmin2或lmin2<j<lmin1,则p'(j)=j+1;
如果j>lmin1且j>lmin2,则p'(j)=j。
3.一种数字通信设备,其特征在于,包括如权利要求1-2任一项所述的低复杂度的多元LDPC码校验节点单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011255040.2A CN112332859B (zh) | 2020-11-11 | 2020-11-11 | 低复杂度的多元ldpc码校验节点单元及数字通信设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011255040.2A CN112332859B (zh) | 2020-11-11 | 2020-11-11 | 低复杂度的多元ldpc码校验节点单元及数字通信设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112332859A CN112332859A (zh) | 2021-02-05 |
CN112332859B true CN112332859B (zh) | 2023-04-18 |
Family
ID=74318517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011255040.2A Active CN112332859B (zh) | 2020-11-11 | 2020-11-11 | 低复杂度的多元ldpc码校验节点单元及数字通信设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112332859B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105024705A (zh) * | 2015-08-19 | 2015-11-04 | 西安电子科技大学 | 一种低复杂度的多元ldpc码译码方法及译码器 |
US9250994B1 (en) * | 2014-02-05 | 2016-02-02 | Western Digital Technologies, Inc. | Non-binary low-density parity check (LDPC) decoding using trellis maximization |
CN106856406A (zh) * | 2016-11-18 | 2017-06-16 | 北京航空航天大学 | 一种译码方法中校验节点的更新方法及译码器 |
CN107659316A (zh) * | 2016-07-26 | 2018-02-02 | 普天信息技术有限公司 | 一种多元LDPC的低复杂度Min‑Max译码方法 |
CN107863972A (zh) * | 2017-11-06 | 2018-03-30 | 山东大学 | 一种低译码复杂度的快速多元ldpc码译码方法 |
WO2018234054A1 (en) * | 2017-06-19 | 2018-12-27 | Universite De Bretagne Sud | EXTENDED MIN-SUM (EMS) DECODING, SIMPLIFIED, PRECEDITED, BASED ON NON-BINARY LDPC CODE SYNDROME |
WO2020145516A1 (ko) * | 2019-01-07 | 2020-07-16 | 엘지전자 주식회사 | 무선 통신 시스템에서 저밀도 패리티 체크 행렬을 이용한 채널 코딩을 수행하는 방법 및 장치 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8566666B2 (en) * | 2011-07-11 | 2013-10-22 | Lsi Corporation | Min-sum based non-binary LDPC decoder |
US20130275827A1 (en) * | 2012-04-12 | 2013-10-17 | Lsi Corporation | Multi-Section Non-Binary LDPC Decoder |
KR102213624B1 (ko) * | 2014-04-14 | 2021-02-08 | 삼성전자주식회사 | 비이진 ldpc 부호를 위한 복호화 방법, 장치 및 알고리즘 |
-
2020
- 2020-11-11 CN CN202011255040.2A patent/CN112332859B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9250994B1 (en) * | 2014-02-05 | 2016-02-02 | Western Digital Technologies, Inc. | Non-binary low-density parity check (LDPC) decoding using trellis maximization |
CN105024705A (zh) * | 2015-08-19 | 2015-11-04 | 西安电子科技大学 | 一种低复杂度的多元ldpc码译码方法及译码器 |
CN107659316A (zh) * | 2016-07-26 | 2018-02-02 | 普天信息技术有限公司 | 一种多元LDPC的低复杂度Min‑Max译码方法 |
CN106856406A (zh) * | 2016-11-18 | 2017-06-16 | 北京航空航天大学 | 一种译码方法中校验节点的更新方法及译码器 |
WO2018234054A1 (en) * | 2017-06-19 | 2018-12-27 | Universite De Bretagne Sud | EXTENDED MIN-SUM (EMS) DECODING, SIMPLIFIED, PRECEDITED, BASED ON NON-BINARY LDPC CODE SYNDROME |
CN107863972A (zh) * | 2017-11-06 | 2018-03-30 | 山东大学 | 一种低译码复杂度的快速多元ldpc码译码方法 |
WO2020145516A1 (ko) * | 2019-01-07 | 2020-07-16 | 엘지전자 주식회사 | 무선 통신 시스템에서 저밀도 패리티 체크 행렬을 이용한 채널 코딩을 수행하는 방법 및 장치 |
Non-Patent Citations (3)
Title |
---|
"Set Message-Passing Decoding Algorithms for Regular Non-Binary LDPC Codes";Qin Huang等;《IEEE Transactions on Communications》;20170829;第65卷(第12期);第1-13页 * |
"基于额外列多元LDPC码网格最小最大译码算法";陈紫强等;《电视技术》;20180228;第42卷(第2期);第45-51页 * |
"构造速率兼容多元LDPC码的扩展方法";穆锡金等;《清华大学学报(自然科学版)》;20180331;第58卷(第03期);第243-248页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112332859A (zh) | 2021-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yuan et al. | Low-latency successive-cancellation list decoders for polar codes with multibit decision | |
US10536169B2 (en) | Encoder and decoder for LDPC code | |
KR101356808B1 (ko) | Ldpc 부호화 방식에 의한 인코더 및 디코더 | |
JP5112468B2 (ja) | 誤り検出訂正回路、メモリコントローラ、および半導体メモリ装置 | |
US20180373902A1 (en) | Analog sub-matrix computing from input matrixes | |
US10804938B2 (en) | Decoding data using decoders and neural networks | |
WO2017113507A1 (zh) | 一种集合译码方法和集合译码器 | |
US9250996B2 (en) | Multicore type error correction processing system and error correction processing apparatus | |
CN103297061A (zh) | 决定同位元检查阵列的方法以及快闪存储器系统 | |
Wang et al. | Processing-task arrangement for a low-complexity full-mode WiMAX LDPC codec | |
EP2533450B1 (en) | Method and device for data check processing | |
CN109802688A (zh) | 一种多进制ldpc译码系统和方法 | |
Krainyk et al. | Hardware-oriented turbo-product codes decoder architecture | |
Xia et al. | An implementation of list successive cancellation decoder with large list size for polar codes | |
CN115037310B (zh) | 一种基于随机计算的5g ldpc译码器性能优化方法及架构 | |
JP7495933B2 (ja) | ソート方法、装置、電子デバイス及びコンピュータプログラム | |
CN112332859B (zh) | 低复杂度的多元ldpc码校验节点单元及数字通信设备 | |
CN108141227B (zh) | 非二进制ldpc解码器的校验节点和对应的方法 | |
CN111710356B (zh) | 编码型闪存装置和编码方法 | |
Deng et al. | Counter random gradient descent bit-flipping decoder for LDPC codes | |
US20210203364A1 (en) | Apparatuses and methods for mapping frozen sets between polar codes and product codes | |
Cui et al. | An efficient post-processor for lowering the error floor of LDPC codes | |
JP2008072247A (ja) | Ldpc復号器の演算制御データ生成方法及びldpc復号器 | |
CN106508094B (zh) | 一种低复杂度的低密度奇偶校验码译码方法及译码器装置 | |
US20240204799A1 (en) | Apparatus and method for checking an error in a bit-flipping decoder |
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 |