CN107612557B - 一种改进型Shuffled BP算法 - Google Patents

一种改进型Shuffled BP算法 Download PDF

Info

Publication number
CN107612557B
CN107612557B CN201710631169.0A CN201710631169A CN107612557B CN 107612557 B CN107612557 B CN 107612557B CN 201710631169 A CN201710631169 A CN 201710631169A CN 107612557 B CN107612557 B CN 107612557B
Authority
CN
China
Prior art keywords
variable
algorithm
node
nodes
variable 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.)
Expired - Fee Related
Application number
CN201710631169.0A
Other languages
English (en)
Other versions
CN107612557A (zh
Inventor
王一歌
吴桂龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201710631169.0A priority Critical patent/CN107612557B/zh
Publication of CN107612557A publication Critical patent/CN107612557A/zh
Application granted granted Critical
Publication of CN107612557B publication Critical patent/CN107612557B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种改进型Shuffled BP算法,包括依次遍历各个变量节点,接着遍历当前变量节点所连接的各个校验节点,将这些校验节点所连接的变量节点的度相加,这样将得到每个变量节点深度为2的度。最后根据深度为2的度从大到小对各变量节点进行排序,然后按照传统Shuffled BP算法的步骤工作,得连接范围广的变量节点得到提前更新,有利于后续积累更多的更新消息,提升收敛速度。在中等信噪比和高信噪比的信道下,该算法较传统的Shuffled BP算法提升了35%‑43%的收敛速度。

Description

一种改进型Shuffled BP算法
技术领域
本发明涉及通信信道编码领域,具体涉及一种改进型Shuffled BP算法。
背景技术
LDPC码因其具有近香农限的误码性能,从而被广泛研究与应用,目前的4G及新制定的5G移动通信系统中都有LDPC码的一席之地。从而对LDPC码的继续深入的研究和性能改善也具有一定的科学和经济价值。
置信度传播(Belief-Propagation,BP)算法是LDPC译码算法中应用较为广泛且性能较为优良的译码算法。而传统的BP算法是一种基于洪水消息传递机制的译码算法,其每次迭代译码都是先并行计算所有校验节点的信息,接着并行计算所有变量节点的信息,虽然这在硬件实现上较为简单,但其收敛速度并未让人满意,且并行计算所消耗的硬件资源是巨大的。为了弥补传统BP算法的不足,诸多学者开始研究串行消息传递机制的译码算法,如Juntan Zhang和Marc Fossorier提出一种Shuffled BP译码算法,其主要思想是在每次迭代中依次更新变量节点和与其相连的校验节点,这使得在一次迭代中刚刚更新过的消息能够参与到本次迭代中的其他消息的更新中去,从而其收敛速度能达到传统BP算法的两倍,同时串行的硬件实现又能节省大量的存储空间。
近年来有学者对LDPC码的Shuffled BP算法进行了不同方向的改进,使得其性能和收敛速度得到进一步的提升。如2015年Ghaudhry Adnan Aslam针对非规则LDPC码提出一种特定的变量节点更新顺序,使得Shuffled BP算法的收敛速度得到进一步的提升。该算法是根据变量节点度的大小来生成这种特定的变量节点更新顺序。为了继续提升ShuffledBP算法的收敛速度,本发明提出了另外一种针对非规则LDPC码的以特定变量节点为更新顺序的Shuffled BP算法。
发明内容
为了克服现有技术存在的缺点与不足,本发明提供一种适用于非规则LDPC码的改进型Shuffled BP算法。
该算法提出在分层译码中对变量节点的更新顺序进行限定,本发明提出的变量节点更新顺序不是简单的根据变量节点度的从大到小进行排序,而是根据每个变量节点进行深度为2的度排序,这使得连接范围广的变量节点得到提前更新,有利于后续积累更多的更新消息,提升收敛速度。在中等信噪比和高信噪比的信道下,该算法较传统的Shuffled BP算法提升了35%-43%的收敛速度。
本发明的目的通过以下技术方案实现:
本发明提出的一种非规则LDPC码的改进Shuffled BP算法首先是针对非规则LDPC码,在传统的Shuffled BP算法中对变量节点的更新顺序进行了限定。其更新顺序主要通过以下方法得到,即依次遍历各个变量节点,接着遍历当前变量节点所连接的各个校验节点,将这些校验节点所连接的变量节点的度相加,这样将得到每个变量节点深度为2的度。最后根据深度为2的度从大到小对各变量节点进行排序,此顺序即为改进Shuffled BP算法中变量节点的更新顺序,其他步骤与传统Shuffled BP算法相同。
一种改进型Shuffled BP算法,包括如下步骤:
S1译码器初始化,定义并初始化变量节点的计数器
Figure BDA0001363888040000021
以n=1的变量节点作为初始节点,对于与该变量节点相连的校验节点执行S2,其中1≤n≤N,N为自然数;
S2遍历与该校验节点相连的各变量节点的度,更新ηn
ηn=ηn+current_degree,current_degree为该校验节点相连的各变量节点的度,
S3重复S1及S2,直到遍历n个变量节点,得到N个ηn,按照ηn从大到小对变量节点n进行排序,将结果存入更新顺序向量S={ν12,...,νN},ν1是重新排序后的变量节点,其中
Figure BDA0001363888040000022
S4初始化变量节点的信息,开始进行迭代;
S5进行第l次迭代,对N个变量节点按照S={ν12,...,νN}的顺序依次更新与变量节点νn所相连的各个校验节点的信息,接着更新变量节点νn的信息;
S6对N个变量节点进行判决;
重复步骤S5至步骤S6,当译码成功或者达到最大迭代次数时停止迭代,并输出译码序列或者输出译码失败信息。
S4中的初始化变量节点的信息方式与Shuffled BP算法相同。
S5中所述的更新变量节点和校验节点的信息所采用的公式与Shuffled BP算法相同。
所述S6中对N个变量节点进行判决的方式为:如果
Figure BDA0001363888040000031
则zn=0;如果
Figure BDA0001363888040000032
则zn=1。
本发明的工作原理:一种非规则LDPC码的改进Shuffled BP算法的工作原理可结合图2的LDPC码的Tanner图进行分析,如图2为经过步骤2之后各个变量节点ηn的大小,从而应用本发明所提出的方法可得到变量节点的更新顺序为ν5→ν7→ν6→ν3→ν1→ν2→ν4。我们知道,BP算法中对变量节点的更新是更新变量节点到与其相连的校验节点的信息。故变量节点的度越大,更新到的信息也就越多。变量节点深度为2的度越大表示更新该变量节点后,更新的消息能传播到越多其他的变量节点,同时更新消息被其他变量节点所利用到的次数也是越多的。故本发明将深度为2的度较大的变量节点优先更新,这使得最终所有变量节点利用到的更新消息总和达到最大,有利于提升收敛速度。
本发明相对于现有技术具有如下的优点及效果:
(1)本发明提出的算法在中等信噪比和高信噪比的信道下,较传统的Shuffled BP算法提升了35%-43%的收敛速度。
(2)本发明在提升收敛速度的同时,只需在第一次的初始化时计算一次变量节点的更新顺序,后续迭代和接收数据无需再计算,所以计算复杂度总体而言基本不变,而且算法实现方式相对简单。
附图说明
图1是本发明的工作流程图;
图2是获取变量节点更新顺序的LDPC码Tanner图;
图3是本发明的仿真验证图,(1008,504)非规则LDPC码在最大迭代次数为5时的归一化平均迭代次数对比示意图;
图4为本发明的仿真验证图,(1008,504)非规则LDPC码在最大迭代次数为10时的归一化平均迭代次数对比示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
本发明属于通信信道编码领域的一种非规则LDPC码的改进Shuffled BP算法,现对该算法的具体实施方式进行说明。
设LDPC码字c={c1,c2,…,cN}在高斯白噪声(AWGN)信道中应用,调制方式为BPSK,被映射为传输序列x={x1,x2,…,xN},其中xn=2cn-1,接收到的码字序列为x+w=y={y1,y2,…,yN},其中yn=xn+wn,wn为独立的高斯白噪声变量。译码后的比特序列为z={z1,z2,…,zN}。
接着定义以下参数:V(c)表示与校验节点c相连的变量节点集合,V(c)\v表示除v之外的其它变量节点;C(v)表示与变量节点v相连的校验节点集合,C(v)\c表示除c之外的其它校验节点。Fn表示变量节点n对应的对数似然比(LLR)消息,通过接收符号值得到,初始化值为(4/N0)yn
Figure BDA0001363888040000041
表示由LDPC码变量节点传递给LDPC码校验节点的第l次迭代的更新信息;
Figure BDA0001363888040000042
由LDPC码校验节点传递给LDPC码变量节点的第l次迭代的更新信息;
Figure BDA0001363888040000043
表示变量节点在第l次迭代收集到的所有信息。
如图1所示,是本发明算法的具体实施方式,本实施例对算法的说明以图2所示的LDPC码为例。下面对一种非规则LDPC码的改进Shuffled BP算法的具体实施方式进行说明:
步骤1:译码器初始化,定义并初始化变量节点的计数器
Figure BDA0001363888040000044
对与变量节点n相连的校验节点执行步骤2,其中1≤n≤N;
步骤2:遍历本次选定的校验节点相连的各变量节点,依次更新ηn
ηn=ηn+current_degree,current_degree表示当前遍历到的变量节点的度;
步骤3:如图2所示得到η1=17,η2=16,η3=20,η4=15,η5=28,η6=26,η7=27,根据ηn从大到小对变量节点n进行排序ν5→ν7→ν6→ν3→ν1→ν2→ν4,将排序结果存入更新顺序向量S={ν12,...,νN},其中
Figure BDA0001363888040000045
步骤4:初始化变量节点的信息,开始进行迭代;
步骤5:进行第l次迭代,对N个变量节点按照S={ν12,...,νN}的顺序依次更新与变量节点νn所相连的各个校验节点的信息,接着更新变量节点νn的信息;
步骤6:对N个变量节点进行判决;
重复步骤5至步骤6,当译码成功或者达到最大迭代次数时停止迭代,并输出译码序列或者输出译码失败信息。
所述的步骤4中的初始化变量节点的信息的方式与Shuffled BP算法相同,对1≤n≤N,
Figure BDA0001363888040000046
所述的步骤5中的更新变量节点和校验节点的信息所采用的公式与Shuffled BP算法相同,其中更新与与变量节点νn所相连的各个校验节点的信息的公式为:
Figure BDA0001363888040000051
更新变量节点νn的信息的公式为:
Figure BDA0001363888040000052
Figure BDA0001363888040000053
所述的步骤6中对N个变量节点进行判决的方式为:如果
Figure BDA0001363888040000054
则zn=0;如果
Figure BDA0001363888040000055
则zn=1;
当信道为高斯白噪声(AWGN)信道,调制方式为BPSK时,采用传统的Shuffled BP算法和本发明的改进算法,对(1008,504)非规则LDPC码分别在最大迭代次数为5和10时进行仿真实验,收集数据绘出表征收敛速度的对比图。在仿真图中,我们定义符号Ishuffled表示传统的Shuffled BP算法的平均迭代次数;Ione-degree表示Ghaudhry Adnan Aslam提出的根据变量节点度的大小来生成特定的变量节点更新顺序算法的平均迭代次数。Itwo-degree表示本发明所提出的一种非规则LDPC码的改进Shuffled BP算法的平均迭代次数。图中对比各个算法的归一化平均迭代次数,即对比改进算法与传统Shuffled BP算法之间平均迭代次数的比值Ione-degree/Ishuffled和Itwo-degree/Ishuffled
如图3所示,是运用不同算法对(1008,504)非规则LDPC码在最大迭代次数为5时的归一化平均迭代次数对比示意图。从图中可以看到本发明提出的改进算法和Ghaudhry提出的算法均随着信噪比的增加,平均迭代次数相比于传统的Shuffled BP算法减少的幅度越来越大,在信噪比大于3.5dB后,平均迭代次数都能减少35%以上。而本发明提出的改进算法相比于Ghaudhry提出的算法平均迭代次数还能减少1%-2.5%,可见本发明提出的改进算法的收敛速度是更快的。
如图4所示,是运用不同算法对(1008,504)非规则LDPC码在最大迭代次数为10时的归一化平均迭代次数对比示意图。同样的,从图中可以看到本发明提出的改进算法和Ghaudhry提出的算法均随着信噪比的增加,平均迭代次数相比于传统的Shuffled BP算法减少的幅度越来越大,在信噪比大于3.5dB后,平均迭代次数都能减少35%以上。而本发明提出的改进算法相比于Ghaudhry提出的算法平均迭代次数还能减少1%-2.5%,可见本发明提出的改进算法的收敛速度是更快的。当最大迭代次数增加到10时,从仿真图可见在低信噪比时(1dB-2dB),两种改进算法相比于传统Shuffled BP算法在平均迭代次数上仍有5%-25%的减少。
需要强调的一点是,本发明的改进Shuffled BP算法在提升收敛速度的同时,只需在第一次的初始化时计算一次变量节点的更新顺序,后续迭代和接收数据无需再计算,所以计算复杂度总体而言基本不变,而且算法实现方式相对简单。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (2)

1.一种改进型Shuffled BP译码方法,其特征在于,包括如下步骤:
S1译码器初始化,定义并初始化变量节点的计数器
Figure FDA0002555338330000011
以n=1的变量节点作为初始节点,对于与该变量节点相连的校验节点执行S2,其中1≤n≤N,N为自然数;
S2遍历与该校验节点相连的各变量节点的度,更新ηn,ηn=ηn+current_degree,current_degree为该校验节点相连的各变量节点的度;
S3重复S1及S2,直到遍历n个变量节点,得到N个ηn,按照ηn从大到小对变量节点n进行排序,将结果存入更新顺序向量S={ν12,...,νN},其中
Figure FDA0002555338330000012
S4初始化变量节点的信息,开始进行迭代;
S5进行第l次迭代,对N个变量节点按照S={ν12,...,νN}的顺序依次更新与变量节点νn所相连的各个校验节点的信息,接着更新变量节点νn的信息;
S6对N个变量节点进行判决;
重复步骤S5至步骤S6,当译码成功或者达到最大迭代次数时停止迭代,并输出译码序列或者输出译码失败信息。
2.根据权利要求1所述的一种改进型Shuffled BP译码方法,其特征在于,所述S6中对N个变量节点进行判决的方式为:如果
Figure FDA0002555338330000013
则zn=0;如果
Figure FDA0002555338330000014
则zn=1,
Figure FDA0002555338330000015
表示变量节点在第l次迭代收集到的所有信息,zn是译码后的比特序列。
CN201710631169.0A 2017-07-28 2017-07-28 一种改进型Shuffled BP算法 Expired - Fee Related CN107612557B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710631169.0A CN107612557B (zh) 2017-07-28 2017-07-28 一种改进型Shuffled BP算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710631169.0A CN107612557B (zh) 2017-07-28 2017-07-28 一种改进型Shuffled BP算法

Publications (2)

Publication Number Publication Date
CN107612557A CN107612557A (zh) 2018-01-19
CN107612557B true CN107612557B (zh) 2020-09-22

Family

ID=61060052

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710631169.0A Expired - Fee Related CN107612557B (zh) 2017-07-28 2017-07-28 一种改进型Shuffled BP算法

Country Status (1)

Country Link
CN (1) CN107612557B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981226A (zh) * 2019-04-16 2019-07-05 厦门大学 一种联合信源信道编码系统的联合调度译码算法
CN110739977B (zh) * 2019-10-30 2023-03-21 华南理工大学 一种基于深度学习的bch码译码方法
CN118473425B (zh) * 2024-07-10 2024-09-27 汉江国家实验室 分层译码方法、装置、设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103220003A (zh) * 2013-03-29 2013-07-24 西安空间无线电技术研究所 提高节点处理并行度的qc-ldpc译码器的实现方法
CN106330201A (zh) * 2016-08-18 2017-01-11 中山大学 基于变量节点可靠性动态选择策略的多进制ldpc码更新方法
CN106899309A (zh) * 2017-01-06 2017-06-27 中山大学 基于变量节点可靠性的低复杂度ldpc动态调度译码更新方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103220003A (zh) * 2013-03-29 2013-07-24 西安空间无线电技术研究所 提高节点处理并行度的qc-ldpc译码器的实现方法
CN106330201A (zh) * 2016-08-18 2017-01-11 中山大学 基于变量节点可靠性动态选择策略的多进制ldpc码更新方法
CN106899309A (zh) * 2017-01-06 2017-06-27 中山大学 基于变量节点可靠性的低复杂度ldpc动态调度译码更新方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Improving the Belief-Propagation Convergence of Irregular LDPC Codes Using Column-Weight Based Scheduling;Chaudhry Adnan Aslam 等;《IEEE Communications Letters》;20150611;第19卷(第8期);全文 *
LDPC码译码算法研究;刘利军;《华南理工大学硕士学位论文》;20111215;全文 *

Also Published As

Publication number Publication date
CN107612557A (zh) 2018-01-19

Similar Documents

Publication Publication Date Title
Vangala et al. A comparative study of polar code constructions for the AWGN channel
CN106803759A (zh) 基于高斯构造的Polar码有效自适应译码方法
RU2450442C2 (ru) Способ и устройство для кодирования и декодирования канала в системе связи с использованием кодов с низкой плотностью проверок на четность
CN107612560B (zh) 基于部分信息比特似然比的极化码早期迭代停止方法
CN107612557B (zh) 一种改进型Shuffled BP算法
CN108039891B (zh) 一种基于多级更新流程的极化码bp译码方法及装置
CN103208995B (zh) 一种低密度奇偶校验码译码的提前终止方法
CN104539296A (zh) 一种基于提前终止迭代策略的极化码改进bp译码方法
CN106941394B (zh) 极化码编码的scma的联合检测译码方法及装置
CN110417512B (zh) 一种用于cpm通信系统的联合迭代译码方法
CN106330199A (zh) 基于因子图的scma和ldpc联合检测译码算法及装置
CN114157309B (zh) 极化码译码方法、装置及系统
CN105356971A (zh) 一种基于概率计算的scma译码器
CN106254030B (zh) 无速率Spinal码的双向编译码方法
CN109981226A (zh) 一种联合信源信道编码系统的联合调度译码算法
CN101577607B (zh) 可提前结束迭代的归一化最小和译码方法
CN112332864A (zh) 一种自适应有序移动剪枝列表的极化码译码方法及系统
CN117014107A (zh) 基于Markov信源的联合信源信道编码方法及系统
CN113556133B (zh) 针对CRC-Polar级联码的混合译码方法及装置
CN109495116A (zh) 极化码的sc-bp混合译码方法及其可调式硬件架构
CN103124181A (zh) 一种基于余弦相似度的Turbo码译码迭代停止方法
CN103501182B (zh) 一种卷积码生成多项式的盲估计方法
CN113114269A (zh) 一种置信传播-信息修正译码方法
CN113131950A (zh) 一种极化码的自适应连续消除优先译码方法
CN101964665B (zh) turbo解码中基于Log-MAP的译码方法及其译码装置

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200922