低复杂度的多元LDPC码校验节点单元及数字通信设备的制作方法

文档序号:23866525发布日期:2021-02-05 17:00阅读:67来源:国知局
低复杂度的多元LDPC码校验节点单元及数字通信设备的制作方法
低复杂度的多元ldpc码校验节点单元及数字通信设备
技术领域
[0001]
本发明属于数字通信系统的纠错编码技术领域,具体涉及一种低复杂度的多元ldpc码校验节点单元及数字通信设备。


背景技术:

[0002]
多元ldpc(low density parity check)码是一种定义在有限域上的信道编码。相比于二元ldpc码,多元ldpc码在中短码长上具有更高的编码增益和更强的抗突发错误能力,并且非常适宜与高阶调制方案结合。多元ldpc码可应用于高阶调制、mimo(multi-input multi-output,多输入多输出)等高吞吐量传输系统,以及可应用于空间通信等功率受限系统。例如,北斗三号卫星导航系统就采用了多元ldpc码。多元ldpc码的经典译码算法是多元和积算法(q-ary sum-product algorithm,qspa),但qspa的译码复杂度较高,阻碍了多元ldpc码在实际数字通信系统中的应用。
[0003]
2017年提出的fms(fixed paths min-sum)算法,是一种基于网格图进行译码的算法;其中,所谓的网格图包括多列由变量节点传递给校验节点的消息,每列消息对应一个变量节点,每个消息为一个数据对,该数据对包括消息的路径度量值和消息对应的有限域元素。fms算法因其具有较低的计算复杂度、较低的存储复杂度以及较高的并行度,被认为是一种适于在数字通信系统中应用的多元ldpc码的译码算法。
[0004]
由于译码器的复杂度主要取决于校验节点的更新过程,故如果能够基于fms算法实现译码器校验节点的相应功能,则多元ldpc码在实际的数字通信系统中将更实用。
[0005]
然而,目前对于如何基于fms算法在实际数字通信系统上实现多元ldpc码校验节点,尚没有切实可行的方案。


技术实现要素:

[0006]
为了基于fms算法在实际数字通信系统上实现多元ldpc码校验节点,本发明提供了一种低复杂度的多元ldpc码校验节点单元。
[0007]
本发明要解决的技术问题通过以下技术方案实现:
[0008]
第一方面,本发明提供了一种低复杂度的多元ldpc码校验节点单元,包括:查找器、网格数据生成器、路径构造器以及输出消息生成器;其中,
[0009]
所述查找器,用于通过两个最小次小查找器,从d
c
个变量节点传递来的一组消息中查找fms算法定义的四个目标变量节点编号;其中,每个所述变量节点均向所述查找器传递来n
m
个消息;
[0010]
所述网格数据生成器,用于基于所述一组消息和所述四个目标变量节点编号,通过四个d
c
选一的数据选择器以及d
c-2个三选一的数据选择器,生成符合fms算法定义的包含d
c
+2列消息的网格数据;其中,每个所述数据选择器对应输出所述网格数据中的一列消息;
[0011]
所述路径构造器,用于基于所述网格数据,计算每个所述变量节点的候选路径的校验值和路径度量值;
[0012]
所述输出消息生成器,用于基于所述候选路径的校验值和和所述候选路径的路径度量值,通过d
c
个并串转换器、d
c
个加法器、d
c
个判决器以及d
c
个多选一的数据选择器,生成并输出传递给所述d
c
个变量节点的消息;其中,所述并串转换器用于将所述候选路径串行输出;所述判决器用于根据预设阈值从串行输出的候选路径中筛选合格路径;所述加法器用于根据合格路径的校验值和零节点的有限域元素,计算传递给变量节点的消息中的有限域元素;所述d
c
个多选一的数据选择器用于按照变量节点编号顺序并行输出传递给所述d
c
个变量节点的消息。
[0013]
优选地,所述四个目标变量节点编号包括:
[0014]
各个变量节点向所述查找器传递来的第2个消息中,最小的消息度量值所属的变量节点编号l
min1
和次小的消息度量值所属的变量节点编号l
min2
,以及,各个变量节点向所述查找器传递来的第n
m
/2个消息中,最小的消息度量值所属的变量节点编号l'
min1
和次小的消息度量值所属的变量节点编号l'
min2

[0015]
所述网格数据生成器,具体用于:
[0016]
基于所述一组消息和所述四个目标变量节点编号,通过所述四个d
c
选一的数据选择器,分别生成所述网格数据的第一列消息、第二列消息、第d
c
+1列消息以及第d
c
+2列消息,并通过所述d
c-2个三选一的数据选择器和第一查找表模块,生成所述网格数据的第3至d
c
列消息;
[0017]
其中,所述第一查找表模块,用于基于l
min1
和l
min2
,输出所述d
c-2个三选一的数据选择器的数据选择信号;所述四个d
c
选一的数据选择器的数据选择信号分别与l
min1
、l
min2
、l'
min1
、l'
min2
对应。
[0018]
优选地,所述第一查找表模块,基于l
min1
和l
min2
,输出所述d
c-2个三选一的数据选择器的数据选择信号,包括:
[0019]
基于所述变量节点编号与l
min1
、l
min2
的大小关系,生成第一映射关系;
[0020]
基于所述第一映射关系,输出所述d
c-2个三选一的数据选择器的数据选择信号;
[0021]
其中,所述第一映射关系是p(k)与k的映射关系;k表示所述网格数据中的第k列消息,k∈[3,d
c
];p(k)表示所述变量节点编号,且p(k)表征所述网格数据中的第k列消息对应第p(k)个变量节点。
[0022]
优选地,所述第一映射关系的生成方式,包括:
[0023]
如果p(k)<l
min1
且p(k)<l
min2
,则p(k)=k-2;
[0024]
如果l
min1
<p(k)<l
min2
或l
min2
<p(k)<l
min1
,则p(k)=k-1;
[0025]
如果p(k)>l
min1
且p(k)>l
min2
,则p(k)=k。
[0026]
优选地,所述输出消息生成器,具体用于:
[0027]
针对第j个变量节点,
[0028]
通过一个并串转换器,将该变量节点的候选路径串行输出;
[0029]
通过一个判决器,比较串行输出的候选路径的路径度量值与所述预设阈值的大小,并将路径度量值小于所述预设阈值的候选路径作为合格路径;
[0030]
通过一个加法器,将所述合格路径的校验值与零节点的有限域元素进行相加,得到第j路备选输出消息的有限域元素;并且,将所述合格路径的路径度量值作为第j路备选输出消息的消息度量值;
[0031]
通过一个多选一的数据选择器和第二查找表模块,从多路备选输出消息中选择并输出传递给该变量节点的消息;
[0032]
其中,第j个变量节点的多路备选输出消息包括:第1路备选输出消息,第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息以及第j+2路备选输出消息,j∈[1,d
c
];
[0033]
所述第二查找表模块,用于基于l
min1
和l
min2
,输出所述d
c
个多选一的数据选择器的数据选择信号。
[0034]
优选地,所述第二查找表模块,基于l
min1
和l
min2
,输出所述d
c
个多选一的数据选择器的数据选择信号,包括:
[0035]
基于所述变量节点编号与l
min1
、l
min2
的大小关系,生成第二映射关系;
[0036]
基于所述第二映射关系,输出所述d
c
个多选一的数据选择器的数据选择信号;
[0037]
其中,所述第二映射关系是j与p'(j)的映射关系,j代表所述变量节点的编号,j∈[1,d
c
];p'(j)代表传递给第j个变量节点的消息取自第p'(j)路备选输出消息。
[0038]
优选地,所述第二映射关系的生成方式,包括:
[0039]
如果j=l
min1
,则p'(j)=1;
[0040]
如果j=l
min2
,则p'(j)=2;
[0041]
如果j<l
min1
且j<l
min2
,则p'(j)=j+2;
[0042]
如果l
min1
<j<l
min2
或l
min2
<j<l
min1
,则p'(j)=j+1;
[0043]
如果j>l
min1
且j>l
min2
,则p'(j)=j。
[0044]
第二方面,本发明提供了一种数字通信设备,所述数字通信设备包含于上述任一种低复杂度的多元ldpc码校验节点单元。
[0045]
本发明提供的低复杂度的多元ldpc码校验节点单元中,通过查找器、网格数据生成器、路构造器以及输出消息生成器,实现了基于fms算法的多元ldpc码校验节点;其中,通过查找器,可以查找出fms算法定义的四个目标变量节点编号;通过四个d
c
选一的数据选择器以及d
c-2个三选一的数据选择器,可以生成符合fms算法定义的网格数据;通过路径构造器,可以为每个变量节点构造fms算法定义的候选路径;通过d
c
个并串转换器、d
c
个加法器、d
c
个判决器以及d
c
个多选一的数据选择器,可以并行地生成并输出传递给d
c
个变量节点的消息。本发明提供的基于fms算法的多元ldpc码校验节点单元具有较低的复杂度,可以应用于实际的实际数字通信系统;尤其适用于对高行重的多元ldpc码进行译码的译码器中。
[0046]
以下将结合附图及对本发明做进一步详细说明。
附图说明
[0047]
图1是本发明实施例提供的一种低复杂度的多元ldpc码校验节点单元的结构示意图;
[0048]
图2是图1所示多元ldpc码校验节点单元中的网格数据生成器的结构示意图;
[0049]
图3是图1所示多元ldpc码校验节点单元中的输出消息生成器的结构示意图;
[0050]
图4是本发明实施例提供的一种数字通信设备的结构示意图。
具体实施方式
[0051]
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
[0052]
为了基于fms算法在实际数字通信系统上实现多元ldpc码校验节点,本发明实施例提供了一种低复杂度的多元ldpc码校验节点单元;如图1所示,该多元ldpc码校验节点单元可以包括:查找器、网格数据生成器、路径构造器以及输出消息生成器。
[0053]
查找器,用于通过两个最小次小查找器,从d
c
个变量节点传递来的一组消息中查找fms算法定义的四个目标变量节点编号;其中,每个变量节点均向该查找器传递来了n
m
个消息;可以理解的是,如果将d
c
个变量节点传递来的消息视为一个消息矩阵m,则该消息矩阵m为一个n
m
×
d
c
的矩阵。
[0054]
其中,消息矩阵m中的每个消息为一个数据对(r[l],rs[l]),l=1,...,n
m
。其中,r[l]是消息度量值,rs[l]是消息对应的有限域元素。在fms算法的定义中,消息的消息度量值越低,代表消息的可靠度越高。
[0055]
为了便于区分,可以将变量节点传递给校验节点的消息称为v2c消息,将校验节点传递给变量节点的消息称为c2v消息。其中,v2c消息存储在数字通信设备的ram(random access memory,随机存取存储器)中,并按照消息的可靠度从高到低的顺序排列。查找器可以直接从ram中读取fms算法定义的四个目标变量节点编号。
[0056]
其中,fms算法定义的四个目标变量节点编号包括:各个变量节点向查找器传递来的第2个消息中,最小的消息度量值所属的变量节点编号l
min1
和次小的消息度量值所属的变量节点编号l
min2
,以及,各个变量节点向所述查找器传递来的第n
m
/2个消息中,最小的消息度量值所属的变量节点编号l'
min1
和次小的消息度量值所属的变量节点编号l'
min2
,n
m
为偶数。
[0057]
在实际应用中,为了便于后续生成网格数据,v2c消息可以采用两段存储结构;具体的,将每个v2c消息的n
m
个消息中,前n
n
个可靠度最高的消息存储到ram1中,剩下的n
m-n
n
个低可靠度的消息存储到ram2中。
[0058]
网格数据生成器,用于基于d
c
个变量节点传递来的一组消息和四个目标变量节点编号,通过四个d
c
选一的数据选择器以及d
c-2个三选一的数据选择器,生成符合fms算法定义的包含d
c
+2列消息的网格数据;其中,网格数据的第1至d
c
列由ram1中存储的第1至d
c
个变量节点的前n
n
个可靠度最高的消息映射而来,网格数据的第d
c
+1列对应ram2中存储的第l'
min1
个变量节点的后n
m-n
n
个低可靠度的消息;网格数据的第d
c
+2列对应ram2中存储的第l'
min2
个变量节点的后n
m-n
n
个低可靠度的消息。可以理解的是,网格数据生成器中的每个数据选择器对应输出网格数据中的一列消息。
[0059]
具体的,该网格数据生成器,基于d
c
个变量节点传递来的一组消息,通过四个d
c
选一的数据选择器,生成网格数据的第一列消息、第二列消息、第d
c
+1列消息以及第d
c
+2列消息,并通过d
c-2个三选一的数据选择器和第一查找表模块,生成网格数据的第3至d
c
列消息。
[0060]
其中,该第一查找表模块,用于基于l
min1
和l
min2
,输出d
c-2个三选一的数据选择器的数据选择信号,四个d
c
选一的数据选择器的数据选择信号,则分别与l
min1
、l
min2
、l'
min1
、l'
min2
对应。具体而言,第1个d
c
选一的数据选择器的数据选择信号,用于从d
c
个变量节点传递来的一组消息中,选择第l
min1
个变量节点传递来的消息;第2个d
c
选一的数据选择器的数
据选择信号,用于从d
c
个变量节点传递来的一组消息中,选择第l
min2
个变量节点传递来的消息;第d
c
+1个d
c
选一的数据选择器的数据选择信号,用于从d
c
个变量节点传递来的一组消息中,选择第l'
min1
个变量节点传递来的消息;第d
c
+2个d
c
选一的数据选择器的数据选择信号,用于从d
c
个变量节点传递来的一组消息中,选择第l'
min2
个变量节点传递来的消息。
[0061]
该第一查找表模块,基于l
min1
和l
min2
,输出d
c-2个三选一的数据选择器的数据选择信号,包括:
[0062]
基于变量节点编号与l
min1
、l
min2
的大小关系,生成第一映射关系;
[0063]
基于第一映射关系,输出d
c-2个三选一的数据选择器的数据选择信号;
[0064]
其中,第一映射关系是p(k)与k的映射关系;k表征网格数据中的第k列消息,k∈[3,d
c
];p(k)表示变量节点编号,且p(k)表征网格数据中的第k列消息对应第p(k)个变量节点。
[0065]
优选地,该第一映射关系的生成方式,可以包括:
[0066]
如果p(k)<l
min1
且p(k)<l
min2
,则p(k)=k-2;
[0067]
如果l
min1
<p(k)<l
min2
或l
min2
<p(k)<l
min1
,则p(k)=k-1;
[0068]
如果p(k)>l
min1
且p(k)>l
min2
,则p(k)=k。
[0069]
可以理解的是,该第一映射关系,表征了网格数据中的第3至d
c
列消息具体对应的是第几个变量节点传递来的消息;根据该第一映射关系,第一查找表模块便可以相应的输出d
c-2个三选一的数据选择器的数据选择信号。
[0070]
关于网格数据的具体生成过程,可以按照fms算法对网格数据的要求而实现;为了方案布局清晰,后续对网格数据的生产过程进行详细说明。
[0071]
路径构造器,用于基于网格数据,计算每个所述变量节点的候选路径的校验值和路径度量值,即为每个变量节点构造候选路径。
[0072]
具体的,网格数据包括d
c
+2列消息,构建路径是要用到其中的第1至d
c
列消息。从这d
c
列消息中的每一列取一个消息作为路径节点,那么由d
c
个路径节点即可构成一条路径,路径的路径度量值就是这d
c
个路径节点的消息度量值的和,路径的校验值就是这d
c
个路径节点有限域元素的和。按照这种基本的路径构建方式,按照fms算法的要求,即可为每个变量节点构建符合fms算法定义的候选路径。
[0073]
输出消息生成器,用于基于候选路径的校验值和和候选路径的路径度量值,通过d
c
个并串转换器、d
c
个加法器、d
c
个判决器以及d
c
个多选一的数据选择器,生成并输出传递给d
c
个变量节点的消息;其中,并串转换器用于将候选路径串行输出;判决器用于根据预设阈值从串行输出的候选路径中筛选合格路径;加法器用于根据合格路径的校验值和零节点的有限域元素,计算传递给变量节点的消息中的有限域元素;d
c
个多选一的数据选择器用于按照变量节点编号顺序并行地输出传递给d
c
个变量节点的消息。
[0074]
具体的,针对第j个变量节点,通过一个并串转换器,将该变量节点的候选路径串行输出;通过一个判决器,比较串行输出的候选路径的路径度量值与所述预设阈值的大小,并将路径度量值小于该预设阈值的候选路径作为合格路径;可以理解的是,候选路径的路径度量值等于多个路径节点的消息度量值的和,候选路径的路径度量值越高,代表候选路径越不可靠,故而判决器将路径度量值小于预设阈值的候选路径作为合格路径;然后,通过一个加法器,将合格路径的校验值与零节点的有限域元素进行相加,得到第j路备选输出消
息的有限域元素;并且,将合格路径的路径度量值作为第j路备选输出消息的消息度量值;通过一个多选一的数据选择器和第二查找表模块,从多路备选输出消息中选择并输出传递给该变量节点的消息。
[0075]
其中,第j个变量节点的多路备选输出消息可以包括:第1路备选输出消息,第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息以及第j+2路备选输出消息,j∈[1,d
c
]。可以理解的是,第j个变量节点的多路备选输出消息,即是第j个变量节点对应的多选一的数据选择器的多路输入数据。而d
c
个多选一的数据选择器的数据选择信号,则是由第二查找表模块基于l
min1
和l
min2
所输出的。
[0076]
该第二查找表模块,基于l
min1
和l
min2
输出d
c
个多选一的数据选择器的数据选择信号,可以包括:
[0077]
基于变量节点编号与l
min1
、l
min2
的大小关系,生成第二映射关系;
[0078]
基于第二映射关系,输出d
c
个多选一的数据选择器的数据选择信号。
[0079]
其中,第二映射关系是j与p'(j)的映射关系,j代表变量节点的编号,j∈[1,d
c
];p'(j)代表传递给第j个变量节点的消息取自第p'(j)路备选输出消息。可以理解的是,该第二映射关系,表征了传递给每个变量节点的消息具体对应的是第几路备选消息。相应的,第二查找表模块基于该第二映射关系,便可以相应的输出d
c
个多选一的数据选择器的数据选择信号。
[0080]
优选地,该第二映射关系的生成方式,可以包括:
[0081]
如果j=l
min1
,则p'(j)=1;
[0082]
如果j=l
min2
,则p'(j)=2;
[0083]
如果j<l
min1
且j<l
min2
,则p'(j)=j+2;
[0084]
如果l
min1
<j<l
min2
或l
min2
<j<l
min1
,则p'(j)=j+1;
[0085]
如果j>l
min1
且j>l
min2
,则p'(j)=j。
[0086]
在实际应用中,第j∈[1,d
c
]个多选一的数据选择器至多接5路备选输出消息。例如,对于第1个变量节点对应的多选一的数据选择器而言,其输入端要接第1至3路备选输出消息;对于第2个变量节点对应的多选一的数据选择器而言,其输入端要接第1至4路备选输出消息;对于第j∈[3,d
c
]个变量节点对应的多选一的数据选择器而言,其输入端要接第1路备选输出消息、第2路备选输出消息、第j路备选输出消息、第j+1路备选输出消息或第j+2路备选输出消息。另外,如果j+1≥d
c
,则没有第j+1路备选消息,如果j+2≥d
c
,则没有第j+2路备选消息。
[0087]
本发明提供的低复杂度的多元ldpc码校验节点单元中,通过查找器、网格数据生成器、路构造器以及输出消息生成器,实现了基于fms算法的多元ldpc码校验节点;其中,通过查找器,可以查找出fms算法定义的四个目标变量节点编号;通过四个d
c
选一的数据选择器以及d
c-2个三选一的数据选择器,可以生成符合fms算法定义的网格数据;通过路径构造器,可以为每个变量节点构造fms算法定义的候选路径;通过d
c
个并串转换器、d
c
个加法器、d
c
个判决器以及d
c
个多选一的数据选择器,可以并行地生成并输出传递给d
c
个变量节点的消息。本发明提供的基于fms算法的多元ldpc码校验节点单元具有较低的复杂度,可以应用于实际的实际数字通信系统;尤其适用于对高行重的多元ldpc码进行译码的译码器中。
[0088]
可以理解的是,上述的四个d
c
选一的数据选择器、d
c-2个三选一的数据选择器以及
第一查找表模块,均属于网格数据生成器的内部模块。图2示例性的示出了一个网格数据生成器的结构示意图。其中,标有“d
c
选一”的梯形模块即代表d
c
选一的数据选择器,sel_a为网格数据的第1列消息对应的d
c
选一的数据选择器的数据选择信号,用于选择第l
min1
个变量节点传递来的前n
n
个消息;sel_b为网格数据的第2列消息对应的d
c
选一的数据选择器的数据选择信号,用于选择第l
min2
个变量节点传递来的前n
n
个消息;标有“三选一”的梯形模块即代表三选一的数据选择器,sel_1至sel_d
c-2为第一查找表模块输出的各个三选一的数据选择器的数据选择信号;sel_c为网格数据的第d
c
+1列消息对应的d
c
选一的数据选择器的数据选择信号,用于选择第l'
min1
个变量节点传递来的后n
m-n
n
个消息;sel_d为网格数据的第d
c
+2列消息对应的d
c
选一的数据选择器的数据选择信号,用于选择第l'
min2
个变量节点传递来的后n
m-n
n
个消息。另外,图2中不便示出但可以理解的是,d
c
个变量节点传递来的一组消息与各个数据选择器的输入端之间实际是一个数据连接网络,由此可以理解网格数据生成器实际上类似于一个数据交换网络。
[0089]
还可以理解的是,上述的d
c
个并串转换器、d
c
个加法器、d
c
个判决器、d
c
个多选一的数据选择器以及第二查找表模块,均属于输出消息生成器的内部模块。图3示例性的示出了一个输出消息生成器的结构示意图。其中,带下标的符号z代表零节点的有限域元素。多选一即多选一的数据选择器;集合{s_l,s_2,

,s_j,

,s_d
c
}包括了第二查找表模块输出的各个多选一的数据选择器的数据选择信号。另外,图3中不便示出但可以理解的是,各个判决器的输出端与各个多选一的数据选择器的输入端之间实际也是一个数据连接网络。
[0090]
在实际应用中,上述的最小次小查找器、d
c
选一的数据选择器、三选一的数据选择器、路径构造器、并串转换器、加法器、判决器、多选一的数据选择器、第一查找表模块以及第二查找表模块等,均可以在处理器中实现;该处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0091]
为了方案更为清楚,下面对本发明实施例提供的低复杂度的多元ldpc码校验节点单元进行进一步的详细说明。
[0092]
首先,对网格数据的具体生成过程进行详细说明,为了便于描述和方便读者理解,将d
c
个变量节点传递来的一组消息视为消息矩阵m。该生成过程参见如下:
[0093]
(1)查找器从消息矩阵m中,获取第二行消息的消息度量值,并从这些度量值中找到最大值和次小值,从而确定该最大值所属消息的列号l
min1
和次小值所属消息的列号l
min2

[0094]
(2)查找器从消息矩阵m中,获取第n
m
/2行消息的消息度量值,并从这些度量值中找到最大值和次小值,从而确定该最大值所属消息的列号l'
min1
和次小值所属消息的列号l'
min2

[0095]
(3)根据fms算法的定义,网格数据的第一列取消息矩阵m的第l
min1
列的前n
n
个元素;网格数据的第二列取消息矩阵m的第l
min2
列的前n
n
个元素;网格数据的第d
c
+1列取消息矩阵m的第l'
min1
列的后n
m-n
n
个元素,网格数据的第d
c
+2列取消息矩阵m的第l'
min2
列的后n
m-n
n
个元素;网格数据的第3至d
c
列,从消息矩阵m的剩余列中选取;具体的,从消息矩阵m的剩余列分别取前n
n
个元素,共得到d
c-2列消息,并按照第一映射关系,将这d
c-2列消息排在网
格数据的第3至d
c
列。因此,通过四个d
c
选一的数据选择器,分别生成网格数据的第一列消息、第二列消息、第d
c
+1列消息以及第d
c
+2列消息;并且,通过d
c-2个三选一的数据选择器,分别生成网格数据的第3至d
c
列消息。其中,每个d
c
选一的数据选择器的输入端均连接d
c
个变量节点传递来的消息;每个三选一的数据选择器的输入端均连接三个变量节点传递来的消息;具体而言,如果一个三选一的数据选择器对应的是网格数据的第k列,k∈[3,d
c
],那么这个数据选择器的输入端连接第p(k)=k个变量节传递来的消息、第p(k)=k-1个变量节传递来的消息、以及第p(k)=k-2个变量节传递来的消息。
[0096]
然后,对路径构造器基于网格数据生成每个变量节点的候选路径的具体实现方式进行详细说明。
[0097]
假设将网格图前d
c
列节点称为i类节点,后2列节点称为ii类节点。假设将i类节点的第一行节点称为零节点,这是因为这些节点的度量值为零;也就是说,i类节点的第一行节点组成的路径具有最高的可靠度,为最可靠路径。并且,将网格数据中不是零节点的路径节点称为偏移节点。
[0098]
基于以上设定,根据fms算法的定义,基于网格数据可以生成的路径分为以下五大类,可细分为七类:
[0099]
i类路径:即上述的一条最可靠路径。
[0100]
ii类路径:每条路径仅有一个偏移节点,每条路径的偏移节点分别是i类节点的第2行偏移节点,故ii类路径一共有d
c
条。
[0101]
iii类路径:每条路径仅有两个偏移节点,第一个偏移节点为i类节点中第2行偏移节点的第1个节点,第二个偏移节点为i类节点中第2行偏移节点的非第1个偏移节点;由此,iii类路径共包含d
c-1条路径。
[0102]
iv类路径:每条路径仅有两个偏移节点,第一个偏移节点为i类节点中第2行偏移节点的第2个偏移节点,第二个偏移节点为i类节点中第2行偏移节点中非第1、2个偏移节点;由此,iv类路径共包含条d
c-1路径。
[0103]
v类路径:每条路径仅有一个偏移节点,该偏移节点来自于i类节点中第3-n
n
行路径节点,v类路径一共包含d
c
(n
n-2)条路径。
[0104]
vi类路径:每条路径仅有一个偏移节点,该偏移节点取自网格数据的第d
c
+1列,vi类路径共有n
m-n
n
条路径。
[0105]
vii类路径:每条路径仅有一个偏移节点,该偏移节点取自网格数据的第d
c
+2列,vii类路径共有n
m-n
n
条路径。
[0106]
综上,路径构造器总共可以生成(d
c-2)(n
num
+1)+2n
m
条路径。对于每个变量节点来说,其候选路径从这(d
c-2)(n
num
+1)+2n
m
条路径中选取,但根据fms算法的定义,各变量节点所能够选取的候选路径存在不同。
[0107]
具体而言,对于每个变量节点来说,其候选路径包括以下五类:
[0108]
第一类:即上述的i类路径。
[0109]
第二类:从上述的ii类路径中产生,但是对于第j个变量节点来说,其候选路径的偏移节点不能取自于网格数据的第j列。
[0110]
第三类:从上述的iv类径中产生,第三类路径仅限于第1个变量节点才有,其他变量节点不具有。并且,对于该第1个变量节点来说,其候选路径的偏移节点不能取自于网格
数据的第1列。
[0111]
第四类:从上述的iii类路径中产生,但第四类路径仅限于非第1个变量节点才有,第1个变量节点不具有。并且,对于第j个变量节点来说,其候选路径的偏移节点不能取自于网格数据的第j列。
[0112]
第五类:从上述的iv类路径中产生。并且,对于第j个变量节点来说,其候选路径的偏移节点取自于网格数据的第j列。
[0113]
第六类:从上述的vii类路或vi类路径中产生;具体而言,如果j=l'
min1
,则该第j个变量节点的候选路径从上述的vii类路中产生,否则该第j个变量节点的候选路径从上述的vi类路中产生。
[0114]
然后,利用预设阈值对每个变量节点的候选路径进行筛选。针对筛选出的每个合格路径,将该合格路径的各个路径节点的消息度量值进行求和,便可以得到该合格路径的路径度量值,将该合格路径的各个路径节点的有限域元素进行求和,便可以得到该合格路径的校验值。
[0115]
基于同一发明构思,本发明实施例还提供了一种数字通信设备,该数字通信设备可以包含有上述的低复杂度的多元ldpc码校验节点单元。
[0116]
具体的,如图4所示,该设置通信设备可以包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
[0117]
存储器603,用于存放计算机程序;
[0118]
处理器601,用于执行存储器603上所存放的程序时,实现上述低复杂度的多元ldpc码校验节点单元所对应的功能。
[0119]
上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表征,图中仅用一条粗线表征,但并不表征仅有一根总线或一种类型的总线。
[0120]
通信接口用于上述电子设备与其他设备之间的通信。
[0121]
存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0122]
需要说明的是,对于数字通信设备实施例而言,由于其基本相似于多元ldpc码校验节点单元实施例,所以描述的比较简单,相关之处参见多元ldpc码校验节点单元实施例的部分说明即可。
[0123]
需要说明的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0124]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的
是相同的实施例或示例。而且,描述的具体特征或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
[0125]
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。
[0126]
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1