掌桥专利:专业的专利平台
掌桥专利
首页

基于扩展最小和算法的NB-LDPC码加权因子优化译码器和方法

文献发布时间:2023-06-19 11:21:00


基于扩展最小和算法的NB-LDPC码加权因子优化译码器和方法

技术领域

本发明涉及译码优化技术领域,特别涉及一种基于扩展最小和算法的NB-LDPC码加权因子优化译码器和方法。

背景技术

近年来,LDPC码具有良好的纠错性能和接近Shannon极限的译码性能,开始被越来越多的学者所注意研究。多进制LDPC码兼具了二进制LDPC码的特性,能够高效的传输信息及译码性能优良。在无线通信应用中,提升译码的各项数据传输的指标一直是研究学者们的目标。

多进制低密度奇偶校验码是一种信道码。与普通的二进制LDPC相比,NB-LDPC具有更强的纠错能力。此功能使NB-LDPC更适合现代通信系统。NB-LDPC具有很高的可靠性,其解码性能更接近于Shannon的容量极限。尽管NB-LDPC具有许多优点,但其解码和实现复杂度相对较高。NB-LDPC的解码算法包括置信度传播(BP),快速傅立叶变换(FFT),扩展最小和(EMS)等。其中EMS解码算法具有最低的复杂度。因此,EMS解码更容易在硬件上实现。尽管与其他解码相比,EMS解码具有较低的解码复杂度,但仍有改进的空间。另外,停止规则适用NB-LDPC。它减少了数据包的平均迭代次数,但需要提高解码性能。

发明内容

本发明针对现有技术的缺陷,提供了一种基于扩展最小和算法的NB-LDPC码加权因子优化译码器和方法,解决了现有技术中存在的缺陷。

为了实现以上发明目的,本发明采取的技术方案如下:

一种基于扩展最小和算法的NB-LDPC码加权因子优化译码器,包括:判断译码条件模块、更新信息截断长度模块、校验节点更新模块、加权因子优化算法模块、变量节点更新模块、判决模块。

判断译码条件模块:用于判断是否需要进行译码流程。通过判断译码次数和上次译码是否成功决定是否需要继续译码。如果译码成功,那么将不进行译码。否则,在迭代次数小于最大次数条件下进行译码。

更新信息截断长度模块:用于更新需要截断的译码长度,确定信息在译码过程中的长度。

校验节点更新模块:用于更新校验节点到变量节点的输出消息向量。通过对本校验节点除与之直接相连的变量节点以外的所有变量节点的输出信息和信道进行运算得到的。

加权因子优化算法模块:用于减小震荡导致的比特错误。

变量节点更新模块:用于更新变量节点间输出的信息向量。

判决模块:尝试译码,根据约束条件进行计算译码结果是否成功。如果成功将输出译码结果,否则将回到判断译码条件模块。

本发明还公开了一种基于扩展最小和算法的NB-LDPC码加权因子优化方法,包括如下步骤:

(I)初始化:根据收到的消息计算向量的对数似然比(LLR),将其表示为LR[k],(0≤k≤q-1)。向量按降序排序到向量中LR。

(II)置换:校验节点采用前向-后向操作更新验证节点。根据以下公式计算向量U,其中是h校验矩阵H的元素的取值、j是H对应位置的值是列数及a是元素h和列数j的乘积。

(III)校验节点更新:校检节点更新是搜索最大值的过程。假设两个输入消息变量为V和I,则两个向量按降序排列。对应于运算结果的有限域为Vq,Iq和VIq。输出结果向量VI按降序排列。

(IV)逆置换:执行公式2。此步骤的操作是除法。

其中i是H对应位置的值是行数、h校验矩阵H的元素的取值及a是矩阵对应位置的行数i和矩阵元素取值h相除。

(V)变量节点更新:假设输入消息为A和B,相应的索引元素为Aq和Bq,输出消息为T。对应的有限域元素为Tq。然后,矢量T按降序排列。相应的域元素是单步操作的结果。

(VI)译码判决:输出变量将确定消息符号索引向量的第一项。如果译码成功,将输出数据。否则,请返回步骤(II)。

进一步地,当变量节点振荡时,比较当前节点和上一个节点,如果不同,则修改当前值同时进行了相关的MATLAB仿真验证,公式如下:

其中,i为迭代次数,

进一步地,通过公式4,去设置截断长度。只要选择适当的ε值,就可以根据公式计算截断长度N

其中q为LDPC有限域进制的数值,ε为根据译码需要设定的值,取值范围0<ε≤q以及N

与现有技术相比,本发明的优点在于:

1.译码的可靠性更好。权重因子的添加减小了变量节点更新抑制了震荡错误,加速了译码的收敛。

2.译码的复杂度下降。在译码过程中自适应截断规则的使用使得译码的平均的迭代次数下降,而迭代次数与LDPC-CC译码复杂度的大小成正比,故而译码的复杂度降低。

3.译码的延时下降。在译码过程中复杂度下降,存储器处理信息的时间更短。因而在译码时能够更快的得到译码结果,提升译码的实效性。

附图说明

图1是本发明实施例NB-LDPC译码器结构图;

图2是本发明实施例改进对译码BER性能的影响曲线图;

图3是本发明实施例不同截断长度对译码BER性能的影响曲线图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下根据附图并列举实施例,对本发明做进一步详细说明。

如图1所示,译码开始,先进行判断译码条件模块。对迭代次数和上次译码是否成功进行判断,如果满足条件将进行译码,否则将直接输出结果。在信息进行译码过程中,为了减小译码的复杂度和降低译码时延,对截断长度进行计算。校验节点的更新主要是通过对本校验节点除与之直接相连的变量节点以外的所有变量节点的输出信息和信道进行运算得到的。变量节点更新变量节点之间的信息向量。在变量节点更新模块上添加了加权因子优化算法,主要是因为在检查节点和变量的更新过程中信息序列可能会振荡。如果正确符号消息的权重得到优化,正确符号的变量节点的置信度可以增加。同时,正确的信息通过减少权重可以更快地获得序列错误符号消息。相反,不准确变量节点消息以迭代方式传播过程中不增加加权因子,这将会引起后面译码结果。当严重时,多次解码后的解码效果包含比以前更多的错误。NB-LDPC的振荡意味着在第i次之后迭代,尝试将变量节点的值解码判断与的判断结果不同上一次迭代。为了消除解码过程对性能的影响变量节点,我们重新计算了变量的概率节点。最后,是对译码结果尝试判决,根据约束条件进行计算译码结果是否成功。如果成功将输出译码结果,否则将回到判断译码条件模块。

具体译码实现过程如下:

(I)初始化:根据收到的消息计算向量的对数似然比(LLR),将其表示为LR[k],(0≤k≤q-1)。向量按降序排序到向量中LR。

(II)置换:校验节点采用前向-后向操作更新验证节点。根据以下公式计算向量U,其中是h校验矩阵H的元素的取值及j是H对应位置的值是列数及a是元素h和列数j的乘积。。

(III)校验节点更新:校检节点更新是搜索最大值的过程。假设两个输入消息变量为V和I,则两个向量按降序排列。对应于运算结果的有限域为Vq,Iq和VIq。输出结果向量VI按降序排列。

(IV)逆置换:乘法和除法运算都是在Galois有限域上计算。在公式中,行数为。此步骤的操作是除法,与(II)乘法相反。

其中i是H对应位置的值是行数、h校验矩阵H的元素的取值及a是矩阵对应位置的行数i和矩阵元素取值h相除。

(V)变量节点更新:假设输入消息为A和B,相应的索引元素为Aq和Bq,输出消息为T。对应的有限域元素为Tq。然后,矢量T按降序排列。相应的域元素是单步操作的结果。

(VI)译码判决:输出变量将确定消息符号索引向量的第一项。如果译码成功,将输出数据。否则,请返回步骤(II)。

由上面的变量节点更新的公式可看出它与NB-LDPC码的最小和算法的校验节点更新步骤非常像,最小和算法是为了适合硬件实现从BP算法上做的改进,但却给译码过程带来了误差,造成了译码性能的下降,从而引出了归一化偏移最小和两种改进措施。所提出的算法与EMS解码之间的最大区别在于,它考虑了先前迭代中变量节点的输出信息。当变量节点振荡时,比较当前节点和上一个节点。如果它们不同,则修改当前值的同时进行了相关的MATLAB仿真验证,公式如下:

其中,i为迭代次数,

NB-LDPC的振荡意味着在第i次迭代后,尝试对判决进行解码的变量节点的值与上一次迭代的判决结果不同。换句话说,与迭代的最大后验概率相对应的值不同

截断长度不同的情况下,对译码效果也是不一样的。因此我们可以通过公式4,去设置截断长度。译码程序会根据情况,自动算出进行译码的长度。消息向量被截断后,值的选择将直接影响保留消息的值。只要选择适当的ε值,就可以根据公式计算解码中的值。q是NB-LDPC的进制数的值,也是有限域GF(q)中的值。

其中q为LDPC有限域进制的数值,ε为我们设定的值,取值范围0<ε≤q以及N

为了测量解码性能,进行仿真,最大迭代次数为10。通过观察BER和FER的值,可以比较所提算法和EMS算法的解码性能。从仿真图中可以明显的看出本发明改进的算法比EMS算法译码性能要好的多。在误码率BER为10

图3是对截断长度的不同,进行EMS译码。可以发现截断长度Nm长度不同,译码性能和复杂度也会发生变化。因此需要根据信息序列的长度去选择适当的长度,平衡复杂度和性能之间的关系。因此可以通过公式去设置截断的长度。

本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的实施方法,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

相关技术
  • 基于扩展最小和算法的NB-LDPC码加权因子优化译码器和方法
  • 基于并行级联系统极化码的迭代译码缩放因子优化方法
技术分类

06120112896057