CN104184480B - 一种降低复杂度的ldpc改进译码方法 - Google Patents
一种降低复杂度的ldpc改进译码方法 Download PDFInfo
- Publication number
- CN104184480B CN104184480B CN201410421807.2A CN201410421807A CN104184480B CN 104184480 B CN104184480 B CN 104184480B CN 201410421807 A CN201410421807 A CN 201410421807A CN 104184480 B CN104184480 B CN 104184480B
- Authority
- CN
- China
- Prior art keywords
- represent
- node
- iteration
- check
- variable node
- 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
Abstract
本发明公开了一种降低复杂度的LDPC改进译码方法,所述方法保持基本Log‑BP迭代结构不变,在变量节点译码准确度很高的情况下,采用硬判决算法来增强纠错能力。所述方法利用校验式可信度作为比特翻转准则,并参考校验式的错误个数,可以每次翻转多个比特。仿真结果表明,所述方法在性能损失较小的情况下,加快迭代收敛速度,大大降低译码复杂度。与现有的WFBP算法相比,所述方法复杂度有所改善,迭代次数减少,而且性能明显提高。
Description
技术领域
本发明涉及译码领域,特别涉及一种降低复杂度的LDPC改进译码方法。
背景技术
LDPC码有逼近Shannon限的良好性能,而且译码复杂度较低,结构灵活,目前已经成为DVB-S2,WLAN,WIMAX通信的标准。LDPC码的硬判决译码算法运算量小,复杂度低,常用的是WBF算法,但是纠错能力有限,性能较差。软判决性能十分接近香农限,常用的是Log-BP算法,但是译码中包含tanh(x)和tanh-1(x),复杂度高,硬件实现难。
发明内容
为解决上述技术问题,本发明公开了一种降低复杂度的LDPC改进译码方法RFBP(Reliability Bit Flipping-Belief Propagation Algorithm)算法,当大量变量节点能够准确地译出后,后期采用改进的硬判决译码算法,以校验式的可靠度作为比特翻转原则。对在LDPC的译码过程中经过数次Log-BP译码算法迭代以后仍存在错误的变量节点用硬判决译码算法来译码。
所述的硬判决算法为比特翻转算法。所述方法包括如下步骤:
1)输入:校验矩阵H,接收向量r=(r1,r2,…,rn),最大迭代次数L,信道可靠度Lc;
2)初始化:
对满足H(m,n)=1的(m,n),令迭代次数l=1;
其中,m=1,2,…,M;n=1,2,…N,校验矩阵H为M×N维;表示从检验节点m传递到变量节点n的信息的初始值;表示变量节点n的硬判决概率似然比的初始值;Lc表示信道可靠度;rn表示接收的码字;
3)迭代处理:
3.1)校验节点更新:对满足H(m,n)=1的(m,n)
其中,Nm,n表示除变量节点n外与校验节点m相连的变量节点的集合;表示第l次迭代中校验节点m向变量节点n传递的消息;表示第l-1次迭代中校验节点m向变量节点j传递的消息;表示第l-1次迭代中变量节点j的硬判决概率似然比;
3.2)变量节点更新:对n=1,2,…,N
其中,Mn表示与变量节点n相连的校验节点的集合;表示第l次迭代中变量节点n的硬判决概率似然比;
4)译码判决:设接收向量r经过译码后的序列为若则否则
5)判断是否停止:
若则停止迭代;
若如果l<L/2,从步骤3)继续迭代,如果l≥L/2,继续第6)步骤;
6)RFBP初始化:
其中,σ2表示高斯信道的方差;Ln表示变量节点n的内信息;
7)计算各校验式的可靠度:
统计Nm里边Ln的正负个数,分别记为m、n,若m-n/2=0,则t=1,否则t=-1;
其中,Nm表示与校验节点m相连的变量节点的集合;a为修正因子,取值为1.1~1.5;Re(m)表示第m个校验式的可靠度;
8)对于每一个比特,计算其翻转依据:
其中,Mn表示与变量节点n相连的校验节点的集合;fn表示第n个比特的翻转依据;
9)翻转比特e;
10)若则停止迭代;
若如果l<L,从步骤6)继续迭代,如果l=L,则宣布译码失败。
本发明可以得到比较好的性能,复杂度也大大减低。与现有的WFBP(weighted BitFlipping-Belief Propagation Algorithm)算法相比,在复杂度降低的情况下,RFBP算法的迭代次数减少,而且性能显著提高。
附图说明
图1码长为2304不规则码,50次迭代的三种译码算法比较;
图2码长为2304不规则码,30次迭代的两种算法误码率比较;
图3码长为2304不规则码,30次迭代的两种算法迭代次数比较。
具体实施方式
在一个实施例中,本发明公开了如下技术方案:一种降低复杂度的LDPC改进译码方法,所述方法用于对二进制LDPC码译码,对在LDPC的译码过程中经过数次Log-BP译码算法迭代以后仍存在错误的变量节点用硬判决译码算法来译码。
就该实施例而言,其关键之处在于发明人首次将迭代次数为1/2最大迭代次数时的情况作为临界情况来处理,对于达到或大于1/2最大迭代次数的采用本发明的原理对现有技术方案进行简化:对仍存在错误的变量节点用硬判决译码算法来译码。采用硬判决译码算法引入加权翻转依据,使得迭代后期不需要再计算双曲正切函数tanh(x)和反双曲正切函数tanh-1(x),节省了大量的指数、对数和除法运算,加快译码算法的收敛速度,在保证译码性能的基础上,降低译码算法运行时间,不妨将其称为RFBP(Reliability BitFlipping-Belief Propagation Algorithm)算法。这种算法可以得到比较好的性能,复杂度也大大减低。与现有的WFBP(weighted Bit Flipping-Belief Propagation Algorithm)算法相比,在复杂度降低的情况下,RFBP算法的迭代次数减少,而且性能显著提高。
在另一个具体的实施例中,本发明所述方法包括如下步骤:
1)输入:校验矩阵H,接收向量r=(r1,r2,…,rn),最大迭代次数L,信道可靠度Lc;
2)初始化:
对满足H(m,n)=1的(m,n),令迭代次数l=1;
其中,m=1,2,…,M;n=1,2,…N,校验矩阵H为M×N维;表示从检验节点m传递到变量节点n的信息的初始值;表示变量节点n的硬判决概率似然比的初始值;Lc表示信道可靠度;rn表示接收的码字;
3)迭代处理:
3.1)校验节点更新:对满足H(m,n)=1的(m,n)
其中,Nm,n表示除变量节点n外与校验节点m相连的变量节点的集合;表示第l次迭代中校验节点m向变量节点n传递的消息;表示第l-1次迭代中校验节点m向变量节点j传递的消息;表示第l-1次迭代中变量节点j的硬判决概率似然比;
3.2)变量节点更新:对n=1,2,…,N
其中,Mn表示与变量节点n相连的校验节点的集合;表示第l次迭代中变量节点n的硬判决概率似然比;
4)译码判决:设接收向量r经过译码后的序列为若则否则
5)判断是否停止:
若则停止迭代;
若如果l<L/2,从步骤3)继续迭代,如果l≥L/2,继续下面的第6)步骤;
6)RFBP初始化:n=1,2,3,…N
其中,σ2表示高斯信道的方差;Ln表示变量节点n的内信息;
7)计算各校验式的可靠度:
统计Nm里边Ln的正负个数,分别记为m、n,若m-n/2=0,则t=1,否则t=-1。
其中,Nm表示与校验节点m相连的变量节点的集合;a为修正因子,取值为1.1~1.5;Re(m)表示第m个校验式的可靠度;
8)对于每一个比特,计算其翻转依据:
其中,Mn表示与变量节点n相连的校验节点的集合;fn表示第n个比特的翻转依据;
9)翻转比特e;
10)若则停止迭代;
若如果l<L,从步骤6)继续迭代,如果l=L,则宣布译码失败。
从性能仿真的角度,就本发明而言:
在仿真中采用(N,K)=(2304,1152)的802.16e WIMAX标准的不规则的LDPC码,LDPC码的校验矩阵的最大行重和最大列重分别为7和6,码率R=1/2。假设信道为AWGN,调制方式为BPSK,假设三种译码算法迭代次数都是50,仿真结果如图1所示。
从仿真图1中可以看出,信噪比小于0.9dB时,三种算法的性能相差不大,而在信噪比大于0.9dB的情况下,性能开始出现差异。RFBP算法和Log-BP算法相比,虽然损失0.3dB的增益,但是减少了大量加法、乘法运算,而且没有指数或对数运算,大大降低了复杂度。
从仿真图1、2、3中可以看出,不同的迭代次数下,RFBP算法比WFBP算法的性能都要好。在复杂度明显降低的情况下,当信噪比小于1.5dB时,性能曲线基本吻合,当信噪比大于1.5时,性能差距逐渐增大,RFBP算法与WFBP算法相比,性能可以提高0.1~0.3dB。当信噪比小于1.6dB时,迭代次数基本相同,信噪大于1.6dB时,迭代次数明显减少。
从复杂度的角度,就本发明而言:
FCES算法减少了每次迭代中活动节点的个数,同时减少了平均迭代次数。设LDPC码的码长为N,码率为1/2,列重为dc。现对Log-BP、WFBP、RFBP三种算法中涉及到的运算进行分析,如表1所示:
表1 三种算法之间复杂度的比较
从表1中可以看出,Log-BP算法每进行一次迭代需要次加法运算、次乘法运算和次指数或对数运算。WFBP算法每进行一次迭代需要(4dc+1)N次加法运算,dcN次乘法运算。RFBP算法每进行一次迭代需要(2dc+1)N次加法运算,N+M次乘法运算,没有指数或者对数运算。RFBP算法和Log-BP算法相比,加法次数和乘法次数都明显减少,而且没有复杂的指数或对数运算,复杂度大大降低。RFBP算法和WFBP算法相比,加法和乘法次数也都减少,使得运算量降低。
仿真结果表明,本论文提出的RFBP算法,与Log-BP算法相比,虽然损失了0.3dB性能,但不涉及Log-BP算法中的指数和对数以及除法运算,大大降低了LDPC码译码复杂度,提高了译码效率,硬件实现相对也比较简单。与现有的WFBP算法相比,复杂度明显降低,性能有了很大改善,迭代次数也减少。
综上所述,本文提出的RFBP算法,极大的降低了Log-BP算法的复杂度,并且比原有同类的方法的性能要好。
最后应说明的是:以上实施例仅用以说明本发明而并非限制本发明所描述的技术方案;因此尽管本说明书参照上述的各个实施例对本发明已进行了详细的说明,但是本领域的技术人员应当理解,仍然可以对本发明进行修改或等同替换;而一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围中。
Claims (1)
1.一种降低复杂度的LDPC改进译码方法,所述方法用于对二进制LDPC码译码,其特征在于:对在LDPC的译码过程中经过数次Log-BP译码算法迭代以后仍存在错误的变量节点用硬判决译码算法来译码;
其中,所述的硬判决算法为比特翻转算法;
其中,所述方法包括如下步骤:
1)输入:校验矩阵H,接收向量r=(r1,r2,…,rn),最大迭代次数L,信道可靠度Lc;
2)初始化:
对满足H(m,n)=1的(m,n),令迭代次数l=1;
其中,m=1,2,…,M;n=1,2,…N,校验矩阵H为M×N维;表示从检验节点m传递到变量节点n的信息的初始值;表示变量节点n的硬判决概率似然比的初始值;Lc表示信道可靠度;rn表示接收的码字;
3)迭代处理:
3.1)校验节点更新:对满足H(m,n)=1的(m,n)
其中,Nm,n表示除变量节点n外与校验节点m相连的变量节点的集合;表示第l次迭代中校验节点m向变量节点n传递的消息;表示第l-1次迭代中校验节点m向变量节点j传递的消息;表示第l-1次迭代中变量节点j的硬判决概率似然比;
3.2)变量节点更新:对n=1,2,…,N
其中,Mn表示与变量节点n相连的校验节点的集合;表示第l次迭代中变量节点n的硬判决概率似然比;
4)译码判决:设接收向量r经过译码后的序列为若则否则
5)判断是否停止:
若则停止迭代;
若如果l<L/2,从步骤3)继续迭代,如果l≥L/2,继续下面的6)步骤;
6)RFBP初始化:
其中,σ2表示高斯信道的方差;Ln表示变量节点n的内信息;
7)计算各校验式的可靠度:
统计Nm里边Ln的正负个数,分别记为m、n,若m-n/2=0,则t=1,否则t=-1;
其中,Nm表示与校验节点m相连的变量节点的集合;α为修正因子,取值为1.1~1.5;Re(m)表示第m个校验式的可靠度;
8)对于每一个比特,计算其翻转依据:
其中,Mn表示与变量节点n相连的校验节点的集合;fn表示第n个比特的翻转依据;
9)翻转比特e;
10)若则停止迭代;
若如果l<L,从步骤6)继续迭代,如果l=L,则宣布译码失败。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410421807.2A CN104184480B (zh) | 2014-08-25 | 2014-08-25 | 一种降低复杂度的ldpc改进译码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410421807.2A CN104184480B (zh) | 2014-08-25 | 2014-08-25 | 一种降低复杂度的ldpc改进译码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104184480A CN104184480A (zh) | 2014-12-03 |
CN104184480B true CN104184480B (zh) | 2017-08-01 |
Family
ID=51965265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410421807.2A Active CN104184480B (zh) | 2014-08-25 | 2014-08-25 | 一种降低复杂度的ldpc改进译码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104184480B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106330199B (zh) * | 2016-08-22 | 2019-06-04 | 电子科技大学 | 基于因子图的scma和ldpc联合检测译码算法及装置 |
CN107565978B (zh) * | 2017-08-30 | 2020-10-16 | 桂林电子科技大学 | 基于Tanner图边调度策略的BP译码方法 |
CN108322226A (zh) * | 2017-12-06 | 2018-07-24 | 中国电子科技集团公司电子科学研究院 | 一种加权比特翻转方法、计算机可读介质及计算机设备 |
CN111313911A (zh) * | 2019-11-22 | 2020-06-19 | 南京大学 | 一种适用于5g ldpc码的度自适应定点化译码算法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101232346A (zh) * | 2007-01-25 | 2008-07-30 | 华为技术有限公司 | 低密度奇偶校验码译码方法和译码装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7254769B2 (en) * | 2002-12-24 | 2007-08-07 | Electronics And Telecommunications Research Insitute | Encoding/decoding apparatus using low density parity check code |
-
2014
- 2014-08-25 CN CN201410421807.2A patent/CN104184480B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101232346A (zh) * | 2007-01-25 | 2008-07-30 | 华为技术有限公司 | 低密度奇偶校验码译码方法和译码装置 |
Non-Patent Citations (1)
Title |
---|
一种改进的LDPC码译码算法;刘健余等,;《信阳师范学院学报》;20121030;第25卷(第4期);第543页右栏第1-3段、第544页左栏第1段-第546页右栏 * |
Also Published As
Publication number | Publication date |
---|---|
CN104184480A (zh) | 2014-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI663839B (zh) | 使用硬選取硬解碼模式下的解碼器產生軟資訊的方法 | |
US8095863B2 (en) | Low complexity decoding of low density parity check codes | |
US20030229843A1 (en) | Forward error correction apparatus and method in a high-speed data transmission system | |
WO2021164064A1 (zh) | 一种信道编码和纠错译码方法、设备以及存储介质 | |
EP1777827A1 (en) | Method for updating check node in low density parity check decoder | |
CN104184480B (zh) | 一种降低复杂度的ldpc改进译码方法 | |
CN101707485A (zh) | 混合比特翻转和大数逻辑的ldpc译码方法 | |
CN108092673B (zh) | 一种基于动态调度的bp迭代译码方法及系统 | |
CN107565978B (zh) | 基于Tanner图边调度策略的BP译码方法 | |
CN107689801B (zh) | Ldpc码admm迭代译码的早停止方法 | |
CN101656541A (zh) | Rs码的译码方法和装置 | |
US10892783B2 (en) | Apparatus and method for decoding polar codes | |
CN104009763A (zh) | 一种低复杂度ldpc码加权比特翻转译码算法提前停止方法 | |
CN106330207A (zh) | 基于Turbo‑SCMA系统的联合检测译码算法 | |
CN102412846B (zh) | 一种适用于低密度奇偶校验码的多值修正最小和解码方法 | |
CN105763203A (zh) | 一种基于硬可靠度信息的多元ldpc码译码方法 | |
CN110166171A (zh) | 多元ldpc码基于ems的分段式补偿高性能译码方案 | |
US10972129B2 (en) | Low density parity check code decoder and method for decoding LDPC code | |
CN101577607B (zh) | 可提前结束迭代的归一化最小和译码方法 | |
CN110690906B (zh) | 一种动态自修正最小和译码方法及基于其的译码器 | |
CN103997348A (zh) | 低密度校验码的多门限比特翻转译码方法 | |
CN101707486A (zh) | 单向纠正的多状态置信传播迭代的ldpc译码方法 | |
CN103607208A (zh) | 基于归一化修正因子序列的ldpc最小和译码方法 | |
CN106169935B (zh) | 以可靠度为导向的低密度奇偶校验码信度传播译码方法 | |
US8650459B1 (en) | Soft input, soft ouput mappers and demappers for block codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |