CN111010196B - 一种极化码BP List译码方法 - Google Patents

一种极化码BP List译码方法 Download PDF

Info

Publication number
CN111010196B
CN111010196B CN201911410856.5A CN201911410856A CN111010196B CN 111010196 B CN111010196 B CN 111010196B CN 201911410856 A CN201911410856 A CN 201911410856A CN 111010196 B CN111010196 B CN 111010196B
Authority
CN
China
Prior art keywords
decoding
factor graph
unreliable
selecting
factor
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
Application number
CN201911410856.5A
Other languages
English (en)
Other versions
CN111010196A (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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN201911410856.5A priority Critical patent/CN111010196B/zh
Publication of CN111010196A publication Critical patent/CN111010196A/zh
Application granted granted Critical
Publication of CN111010196B publication Critical patent/CN111010196B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1108Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开一种极化码BP List译码方法,步骤1:根据因子图错误概率的方法,选择因子图集合;步骤2:按顺序从因子图集合Z中选择一个因子图进行BP译码;步骤3:如果译码正确,则结束译码;否则,执行步骤4;步骤4:如果是最后一个因子图,则译码失败,结束译码;否则执行步骤5;步骤5:根据当前的因子图中译码结果,选择x端中可靠性最低的两个位置,即选择不可靠位置;步骤6:选择不可靠位置符号;步骤7:更新信道初始信息,然后转至步骤2执行。本发明方法不仅可以实现BP译码的性能与CASCL8接近的性能,达到工程应用的需求,同时本发明的并行化实现也可以有效降低算法的延时,满足延时的要求。

Description

一种极化码BP List译码方法
技术领域
本发明涉及一种高性能低复杂度的BP List译码方法,尤其是一种改进的极化码BP List译码方法,属于通信技术领域。
背景技术
BP算法作为polar码的一类主要的译码算法,已经被广泛的研究。其关键的优点主要有两个:(1)BP译码算法可并行化实现,使其克服了polar码SC译码算法的串行译码导致的延时长的不足,可以作为低延时译码的主要译码算法;(2)BP译码算法可以输出软信息,可以与迭代接收机联合使用。但目前polar码的BP译码算法有一个关键的不足就是译码的性能比较差,BP译码算法的性能只能实现与SC算法的性能可比,这使得其在实际应用中受到很大的限制。
目前关于BP译码算法的性能改进也有许多的研究,其中关于BP List的相关改进算法有效提升了BP算法的性能,并且在一定条件下可以实现与SCL算法的性能可比。在文献[1](A.Elkelesh,M.Ebada,S.Cammerer and S.ten Brink,“BP List decoding of polarcodes,”IEEE Commun.Letters,vol.22,no.8,pp.1536–1539,Aug 2018.“极化码BP List译码”,期刊:IEEE Communication Letters第22卷第8期)中,首次提出BP List的译码算法,我们知道polar码的BP译码算法是通过编码结构的因子图来实现信息的更新、传递和迭代,同时,文献[2](N.Hussami,S.B.Korada,R.Urbanke,“Performance of Polar Codes forChannel and Source Coding,”IEEE ISIT,Aug.2009.“极化码用于信源编码和信道编码的性能”;会议:IEEE 2009 ISIT)在09年就提出了不同的因子图结构可能会产生不同的译码性能。因此,BP List算法首先通过改变因子图的调度顺序来产生不同因子图结构,并生成因子图的List集合,然后利用集合中的所有因子图去进行译码,这样,从多个因子图的译码结果中选择正确的译码结果。由于使用了多个因子图进行译码,BP的译码性能得到了改进。文献[1]中因子图是随机选择的,在文献[3](N.Doan,S.A.Hashemi,M.Mondelli,andW.J.Gross,“On the Decoding of Polar Codes on Permuted Factor Graphs,”IEEEGLOBECOM 2018.“基于重排因子图的极化码译码”;会议:IEEE 2018 GLOBECOM)中提出通过因子图的错误概率来选择因子图的方法,即通过仿真来获得每个因子图的译码的错误概率,然后再选择部分错误概率比较小的因子图来作为List的集合,进而改进了随机选择因子图方法的性能。
但是,我们知道目前polar码最优的译码性能是通过CA-SCL译码算法得到的。虽然现在BP List算法的性能得到改进,但是相比于CA-SCL算法来说一方面BP List算法的性能仍然具有很大的性能差异,另一方面与SCL可比的性能也是通过比较大List集合来实现的,这对于实际应用来说明显是不实际的。因此对于实际应用来说,BP List算法的性能需要进一步改进,使其达到与CA-SCL接近的性能,同时需要降低List集合的大小来减少硬件实现的复杂度。因此,一种高性能低复杂度的BP List译码算法是一种需求。
发明内容
基于上述需求,本发明提出了一种极化码BP List译码方法,来进一步提高BPList算法的性能,同时,本发明方法有效降低了List集合大小,使其具有了很好的应用潜力。本发明方法实现因子图集合大小M=32时,BP算法的性能可以达到与CASCL8接近的性能,同时,我们也提出了改进方法的并行化实现算法,并行化的实现有效减少了译码时延同时对译码的性能没有影响。
本发明一种极化码BP List译码方法,该方法通过前一个因子的译码结果来修正下一个因子图译码的信道初始信息,该方法为串行的BP List译码方法,称该算法为算法一,具体实现方案如下:
算法一:
步骤11:根据文献[3]方法即因子图错误概率的方法,选择BP List算法的因子图集合Z={z1,z2,…,zM},并根据错误概率递增顺序排列,集合大小为M;zi表示第i个因子图结构;并对BP因子图的左信息与右信息进行初始化,初始化与现有方法相同。
步骤12:按顺序从因子图集合Z中选择一个因子图进行BP译码;在BP译码过程中,通过设置一个迭代收敛的限制次数T(所述的T为极化码BP译码的一个平均迭代次数,例如T取值为15或者10),当迭代次数超过T后,算法开始检测BP计算过程中前后两次迭代译码的结果有没有发生变号:如果没有变号,则说明当前译码已趋于收敛,但译码过程仍然没有被提前停止,说明该帧很可能译码错误,因此,需要对当前译码信息进行更新,所述的对当前译码信息进行更新包括:选择不可靠位置、选择不可靠位置符号及更新信道初始信息并重新赋值;如果前后两次迭代结果发生变号,则说明算法还没有收敛,因此BP算法继续迭代译码。
步骤13:如果译码正确,则结束译码;否则,执行步骤14;
步骤14:如果是最后一个因子图,则译码失败,结束译码;否则执行步骤15;
步骤15:根据当前的因子图中译码结果,选择x端中可靠性最低的两个位置,即选择不可靠位置;
步骤16:选择不可靠位置符号,具体过程如下:
步骤17:更新信道初始信息,然后转至步骤12执行;
其中,步骤12及步骤15所述的选择不可靠位置,具体为:具体实现步骤如下:根据迭代计算的结果,计算因子图x端的软信息,即Ln,i+Rn,i,Ln,i表示BP译码中因子图第n列第i个位置的左信息,Rn,i表示BP译码中因子图第n列第i个位置的右信息,然后选择|Ln,i+Rn,i|中最小的t个值所对应的位置,(t的取值可以为0<t<=5),作为不可靠位置m1,m2
其中,步骤12及步骤16所述的选择不可靠位置符号,具体为:如果Ln,i+Rn,i>0,则该不可靠位置i的符号为flag=-1;否则为flag=1;即如果
Figure GDA0003087114370000031
则m1位置的符号设置为flag=-1,否则为flag=1;位置m2用同样方法设置,即如果
Figure GDA0003087114370000032
则m2位置的符号设置为flag=-1,否则为flag=1;
其中,步骤12及步骤17所述的更新信道初始信息,具体实现步骤为:根据不可靠位置m1,m2,更新信道初始信息中与m1,m2对应位置的软信息,也就是Ln,i,如果不可靠位置的符号为flag=-1,则将对应位置的初始信息更新为-mValue,即
Figure GDA0003087114370000033
如果不可靠位置的符号为flag=1,则将对应位置的初始信息更新为
Figure GDA0003087114370000041
mValue的值可以提前给定,为经验值,主要是通过仿真中的对于译码性能的影响来确定,例如设置mValue=10;位置m1,m2的软信息都用上述方法更新。
在上述算法步骤中,每次译码时所使用的信道接收信息都需要根据前一个因子图的译码结果进行软信息更新,其中第一个因子图直接用信道接收信息,因此,上述实现方法是一个串行的BP List的译码算法。该算法用一个因子图架构就能完成译码,资源开销小,但具有串行延时的不足。
在资源满足的情况下,为了降低串行译码的延时,本发明一种改进的极化码BPList译码方法,进一步提出一个并行化的BP List译码方法,即在译码过程每次不再只对一个因子图进行译码,可以并行的对P个因子图同时译码,由于因子图集合大小M不变,这样译码延迟最多也就只有原来的
Figure GDA0003087114370000042
所述并行化的BP List译码方法实现如下,称为算法二:
算法二:
步骤21:根据因子图错误概率的方法选择因子图集合,并根据错误概率递增顺序排列,集合大小为M,并按按顺序分为P组,每组集合大小为M/P;
步骤22:按顺序从因子图集合中选择P个因子图同时进行BP译码;在BP译码过程中,通过设置一个迭代收敛的限制次数T(所述的T为极化码BP译码的一个平均迭代次数,例如T取值为15或者10),当迭代次数超过T后,算法开始检测BP计算过程中前后两次迭代译码的结果有没有发生变号:如果没有变号,则说明当前译码已趋于收敛,但译码过程仍然没有被提前停止,说明该帧很可能译码错误,因此,需要对当前译码信息进行更新,所述的对当前译码信息进行更新包括:选择P组不可靠位置、选择P组不可靠位置符号及更新P组信道初始信息并重新赋值;如果前后两次迭代结果发生变号,则说明算法还没有收敛,因此BP算法继续迭代译码。
步骤23:如果这P个译码结果中,有译码正确的结果,则译码结束;否则,执行步骤24;
步骤24:如果是最后一组因子图,则译码失败,结束译码;否则执行步骤25;
步骤25:根据这P个因子图的译码结果,分别选择出P组不可靠位置和对应的不可靠位置的符号;
步骤26:用步骤25所得到的P组的不可靠位置和符号结果更新并生成P组新的信道初始信息,更新方法与算法一中方法相同,然后转至步骤22继续进行译码,新生成的译码初始信息将用于下一组因子图的译码过程中。因子图的对应关系按因子图的排列顺序分配,即根据第q个因子图的译码结果生成第
Figure GDA0003087114370000051
个因子图的译码初始信息。
其中,步骤22及步骤25所述的选择P组不可靠位置,具体过程为:根据迭代计算的结果,计算因子图x端的软信息,即Ln,i+Rn,i,Ln,i表示BP译码中因子图第n列第i个位置的左信息,Rn,i表示BP译码中因子图第n列第i个位置的右信息,然后选择|Ln,i+Rn,i|中最小的t个值所对应的位置,(t的取值可以为0<t<=5),作为不可靠位置m1,m2
其中,步骤22及步骤25所述的选择P组不可靠位置符号,具体过程为:如果Ln,i+Rn,i>0,则该不可靠位置i的符号为flag=-1;否则为flag=1;即如果
Figure GDA0003087114370000052
则m1位置的符号设置为flag=-1,否则为flag=1;位置m2用同样方法设置,即如果
Figure GDA0003087114370000053
则m2位置的符号设置为flag=-1,否则为flag=1;
其中,步骤22及步骤26所述的更新P组信道初始信息,具体过程为:根据步骤15选择出来的不可靠位置m1,m2,更新信道初始信息中与m1,m2对应位置的软信息,也就是Ln,i,如果不可靠位置的符号为flag=-1,则将对应位置的初始信息更新为-mValue,即
Figure GDA0003087114370000054
如果不可靠位置的符号为flag=1,则将对应位置的初始信息更新为
Figure GDA0003087114370000055
mValue的值可以提前给定,为经验值,主要是通过仿真中的对于译码性能的影响来确定,例如设置mValue=10;位置m1,m2的软信息都用上述方法更新。
其中,步骤11及步骤21所述的因子图错误概率的方法选择因子图集合,对于实际应用来说,存在多种码长和码率,如果对于每一种码长和码率均构建不同的因子图错误概率集合,显然是不可能的。在算法仿真中,我们采用不同码率的情况,只构建一种情况的因子图错误概率集合,即码率为1/2的因子图错误概率集合,这样只需对不同码长构建不同的因子图错误概率集合即可,我们在N=256时,当码率为1/4时,我们采用码率为1/2的因子图错误概率集合去仿真,仿真结果显示,算法也可以达到比较好的性能。仿真结果见图6。从而,我们也给出了一种构建不同码长码率下,因子图错误概率集合的方法。
本发明一种极化码BP List译码方法,其优点及功效在于:本发明方法不仅可以实现BP译码的性能与CASCL8接近的性能,达到工程应用的需求,同时本发明的并行化实现也可以有效降低算法的延时,满足延时的要求。
附图说明
图1所示为本发明实施例1因子图切换过程。
图2所示为本发明实施例2因子图切换过程。
图3所示为本发明方法中串行的BP List译码方法流程图。
图4所示为因子图集合大小M=32/48时,本发明所述串行算法与CASCL8和文献[4]的性能比较。
图5所示为因子图集合大小M=32/48时,本发明所述并行算法与CASCL8和文献[4]的性能比较。
图6所示为基于1/2码率构建的因子图集合用于1/4码率进行译码的性能。
图7所示为本发明方法中并行的BP List译码方法流程图。
具体实施方式
下面结合附图和实施例,对本发明的技术方案作进一步的说明。
实施例1(即算法一):
码长N=8,因子图集合大小|Z|=4,实施过程如图1所示;
步骤11:构建因子图集合Z,|Z|=4,Z={z1,z2,z3,z4},信道接收信息S={s1,s2,s3,s4,s5,s6,s7,s8},BP译码信息初始化,L3,i=si,Lj,i=0,j={0,1,2},i={1,2,3,4,5,6,7,8},Rk,i=0,k={0,1,2,3},R0,t=∞,t∈F,F是冻结集。
步骤12:选择因子图z1进行BP迭代译码,如果译码正确,则结束;
步骤13:对于因子图z1,当达到最大迭代次数后,仍然译码失败;
步骤14:根据译码结束后的译码结果,选择两个最不可靠的位置和对应位置的更新符号,即选择|L3,i+R3,i|,i={1,2,…,8},最小的两个位置作为不可靠位置,假设不可靠位置是3和7,所确定的更新符号为+,-;
步骤15:更新译码选择的因子图为z2
L3={s1,s2,mValue,s4,s5,s6,-mValue,s8},然后继续进行BP译码;
步骤16:如果对于因子图z2,译码仍然失败,则继续根据译码结果,选择不可靠位置和对应符号,假设不可靠位置为2和5,对应符号为+,+;
步骤17:更新译码所选择的因子图为z3
L3={s1,mValue,s3,s4,mValue,s6,s7,s8},然后继续进行BP译码;
步骤18:直到遍历所有的因子图,则译码结束。
实施例2(即算法二)
码长N=8,因子图集合大小|Z|=4;并行度P=2;实施过程如图7所示。
步骤21:构建因子图集合Z,|Z|=4,Z={z1,z2,z3,z4},信道接收信息S={s1,s2,s3,s4,s5,s6,s7,s8},初始化与算法实施例1相同;
步骤22:选择因子图z1,z2进行BP迭代译码,L3,i=si,如果两路译码中只要有一个能够译码正确,则结束;
步骤23:如果均译码失败,则根据译码结果,分别选择各自所对应的不可靠位置和对应符号,假设z1对应的不可靠位置为2和4,对应符号为-,+,z2对应的不可靠位置为2和5,对应符号为+,+;
步骤24:则对于P1译码,用因子图z3更新,
L3={s1,-mValue,s3,mValue,s5,s6,s7,s8};
步骤4:则对于P2译码,用因子图z4更新,
L3={s1,mValue,s3,s4,mValue,s6,s7,s8};
步骤25:然后继续进行BP译码,直到遍历所有的因子图,则译码结束。
性能评估
根据本发明方法,分别仿真了不同参数下算法的性能,并与算法CASCL8和文献[4](A.C.Arli and Orhan Gazi,“Noise-Aided Belief Propagation List Decoding ofPolar Codes”,IEEE Commun.Letters.,vol.23,no.8,Aug.2019.“极化码的噪声辅助的BPList译码算法”;期刊:IEEE Communication Letters 23卷第8期)的算法的性能进行了比较,比较结果如下:
仿真参数:编码:5G(1024,512)Polar Code和(256,128)Polar Code;
译码算法:本发明BP及其改进算法,BP最大迭代次数为100,译码过程采用CRC24校验进行提前停止;性能比较如图4、5所示。
误码性能分析:
在图4中,比较了本发明所述的串行算法,CASCL8以及Noise-aid BP List[4]算法的性能,本发明方法分别仿真M=32和M=48的性能;首先本发明方法相比较CASCL8,对于N=1024来说,当误码率达到10^(-4),M=32时,性能退化不超过0.1dB,M=48时,几乎和CASCL8达到相同的性能;对于N=256来说,较CASCL8来说,在误码率达到10^(-4),M=32/48,性能退化最多也不超过0.15dB;其次,也比较了Noise-aid BP List的性能,从仿真结果可以看出Noise-aid BP List方法与CASCL8仍然有较大的性能退化。
在图5中,比较了本发明所述并行算法在并行度为4时的性能与其它算法的性能比较,可以看出串行和并行算法几乎可以保持相同的性能。

Claims (7)

1.一种极化码BP List译码方法,其特征在于:该方法通过前一个因子的译码结果来修正下一个因子图译码的信道初始信息,该方法为串行的BP List译码方法,具体如下:
步骤11:根据因子图错误概率,选择因子图集合Z={z1,z2,…,zM},并根据错误概率递增顺序排列,集合大小为M;zi表示第i个因子图结构;并对因子图的左信息与右信息进行初始化;其中,i=1…M;
步骤12:按顺序从因子图集合Z中选择一个因子图进行BP译码;在BP译码过程中,通过设置一个迭代收敛的限制次数T,当迭代次数超过T后,开始检测BP计算过程中前后两次迭代译码的结果有没有发生变号:如果没有变号,需要对当前译码信息进行更新,如果发生变号,则继续迭代译码;所述的对当前译码信息进行更新包括:选择不可靠位置、选择不可靠位置符号及更新信道初始信息并重新赋值;
步骤13:如果译码正确,则结束译码;否则,执行步骤14;
步骤14:如果是最后一个因子图,则译码失败,结束译码;否则执行步骤15;
步骤15:根据当前的因子图中译码结果,选择x端中可靠性最低的两个位置,即选择不可靠位置;
步骤16:选择不可靠位置符号,具体过程如下:如果Ln,i+Rn,i>0,则该不可靠位置i的符号为flag=-1;否则为flag=1;即如果
Figure FDA0003087114360000011
则m1位置的符号设置为flag=-1,否则为flag=1;位置m2用同样方法设置,即如果
Figure FDA0003087114360000012
则m2位置的符号设置为flag=-1,否则为flag=1;
步骤17:更新信道初始信息,然后转至步骤12执行;
其中,步骤12及步骤15所述的选择不可靠位置,具体为:具体实现步骤如下:根据迭代计算的结果,计算因子图x端的软信息,即Ln,i+Rn,i,Ln,i表示BP 译码中因子图第n列第i个位置的左信息,Rn,i表示BP译码中因子图第n列第i个位置的右信息,然后选择|Ln,i+Rn,i|中最小的t个值所对应的位置,作为不可靠位置m1,m2
2.根据权利要求1所述的一种极化码BP List译码方法,其特征在于:所述的t的取值为0<t<=5。
3.根据权利要求1所述的一种极化码BP List译码方法,其特征在于:步骤12及步骤17所述的更新信道初始信息,具体实现步骤为:根据不可靠位置m1,m2,更新信道初始信息中与m1,m2对应位置的软信息,也就是Ln,i,如果不可靠位置的符号为flag=-1,则将对应位置的初始信息更新为-mValue,即
Figure FDA0003087114360000021
如果不可靠位置的符号为flag=1,则将对应位置的初始信息更新为
Figure FDA0003087114360000022
4.一种极化码BP List译码方法,其特征在于:该译码方法为一个并行化的BP List译码方法,即在译码过程每次不只对一个因子图进行译码,可以并行的对P个因子图同时译码,由于因子图集合大小M不变,这样译码延迟最多也就只有原来的
Figure FDA0003087114360000023
所述并行化的BPList译码方法实现如下:
步骤21:根据因子图错误概率选择因子图集合,并根据错误概率递增顺序排列,集合大小为M,并按顺序分为P组,每组集合大小为M/P;
步骤22:按顺序从因子图集合中选择P个因子图同时进行BP译码;在BP译码过程中,通过设置一个迭代收敛的限制次数T,当迭代次数超过T后,算法开始检测BP计算过程中前后两次迭代译码的结果有没有发生变号:如果没有变号,需要对当前译码信息进行更新,所述的对当前译码信息进行更新包括:选择P组不可靠位置、选择P组不可靠位置符号及更新P组信道初始信息并重新赋值;如果前后两次迭代结果发生变号,则继续迭代译码;
步骤23:如果这P个译码结果中,有译码正确的结果,则译码结束;否则,执行步骤24;
步骤24:如果是最后一组因子图,则译码失败,结束译码;否则执行步骤25;
步骤25:根据这P个因子图的译码结果,分别选择出P组不可靠位置和对应的不可靠位置的符号;
步骤26:用步骤25所得到的P组的不可靠位置和符号结果更新并生成P组新的信道初始信息,然后转至步骤22继续进行译码,新生成的译码初始信息将用于下一组因子图的译码过程中;因子图的对应关系按因子图的排列顺序分配,即根据P组因子图中的第q个的译码结果生成第
Figure FDA0003087114360000031
个因子图的译码初始信息;
其中,步骤22及步骤25所述的选择P组不可靠位置,具体过程为:根据迭代计算的结果,计算因子图x端的软信息,即Ln,i+Rn,i,Ln,i表示BP译码中因子图第n列第i个位置的左信息,Rn,i表示BP译码中因子图第n列第i个位置的右信息,然后选择|Ln,i+Rn,i|中最小的t个值所对应的位置,作为不可靠位置m1,m2
5.根据权利要求4所述的一种极化码BP List译码方法,其特征在于:步骤22及步骤25所述的选择P组不可靠位置符号,具体过程为:如果Ln,i+Rn,i>0,则该不可靠位置i的符号为flag=-1;否则为flag=1;即如果
Figure FDA0003087114360000032
则m1位置的符号设置为flag=-1,否则为flag=1;位置m2用同样方法设置,即如果
Figure FDA0003087114360000033
则m2位置的符号设置为flag=-1,否则为flag=1。
6.根据权利要求4所述的一种极化码BP List译码方法,其特征在于:步骤22及步骤26所述的更新并生成P组新的信道初始信息,具体过程为:根据不可靠位置m1,m2,更新信道初始信息中与m1,m2对应位置的软信息,也就是Ln,i,如果不可靠位置的符号为flag=-1,则将对应位置的初始信息更新为-mValue,即
Figure FDA0003087114360000034
如果不可靠位置的符号为flag=1,则将对应位置的初始信息更新为
Figure FDA0003087114360000035
7.根据权利要求1或权利要求4所述的一种极化码BP List译码方法,其特征在于:所述的根据因子图错误概率选择因子图集合,不同码率的情况,只构建一种情况的因子图错误概率集合,即码率为1/2的因子图错误概率集合。
CN201911410856.5A 2019-12-31 2019-12-31 一种极化码BP List译码方法 Active CN111010196B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911410856.5A CN111010196B (zh) 2019-12-31 2019-12-31 一种极化码BP List译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911410856.5A CN111010196B (zh) 2019-12-31 2019-12-31 一种极化码BP List译码方法

Publications (2)

Publication Number Publication Date
CN111010196A CN111010196A (zh) 2020-04-14
CN111010196B true CN111010196B (zh) 2021-09-03

Family

ID=70119993

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911410856.5A Active CN111010196B (zh) 2019-12-31 2019-12-31 一种极化码BP List译码方法

Country Status (1)

Country Link
CN (1) CN111010196B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111541517B (zh) * 2020-04-17 2022-03-25 北京交通大学 一种列表极化码传播译码方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539296A (zh) * 2015-01-21 2015-04-22 西安电子科技大学 一种基于提前终止迭代策略的极化码改进bp译码方法
CN109586730A (zh) * 2018-12-06 2019-04-05 电子科技大学 一种基于智能后处理的极化码bp译码算法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539296A (zh) * 2015-01-21 2015-04-22 西安电子科技大学 一种基于提前终止迭代策略的极化码改进bp译码方法
CN109586730A (zh) * 2018-12-06 2019-04-05 电子科技大学 一种基于智能后处理的极化码bp译码算法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Belief Propagation List Decoding of Polar Codes;A. Elkelesh, M. Ebada, S. Cammerer and S. ten Brink;《IEEE Communications Letters》;20180831;第22卷(第8期);全文 *
On the Decoding of Polar Codes on Permuted Factor Graphs;N. Doan, S. A. Hashemi, M. Mondelli and W. J. Gross;《2018 IEEE Global Communications Conference》;20181231;全文 *

Also Published As

Publication number Publication date
CN111010196A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
CN105634507B (zh) 极化码置信传播译码器的流水线***
CN107517095B (zh) 一种非均匀分段校验的极化码编译码方法
CN107612560B (zh) 基于部分信息比特似然比的极化码早期迭代停止方法
CN109586730B (zh) 一种基于智能后处理的极化码bp译码算法
CN110784232B (zh) 一种空间耦合ldpc码滑窗译码方法
JP2012151839A (ja) ユークリッド空間リード−マラー符号の軟判定復号を実行する方法
TW202145723A (zh) 基於信度傳播之極化碼解碼方法
CN106254030B (zh) 无速率Spinal码的双向编译码方法
CN110113057A (zh) 一种利用深度学习的极化码译码器
CN111010196B (zh) 一种极化码BP List译码方法
CN102811065A (zh) 基于线性最小均方误差估计的修正最小和解码方法
Deng et al. Reduced-complexity deep neural network-aided channel code decoder: A case study for BCH decoder
WO2016015288A1 (zh) 译码方法和译码器
US9083385B2 (en) Channel decoding method and decoder for tail-biting codes
CN109495116B (zh) 极化码的sc-bp混合译码方法及其可调式硬件架构
WO2021073338A1 (zh) 译码方法和译码器
KR20090012189A (ko) Ldpc 부호의 성능 개선을 위한 스케일링 기반의 개선된min-sum 반복복호알고리즘을 이용한 복호 장치 및그 방법
US20200162111A1 (en) Construction of a polar code based on a distance criterion and a reliability criterion, in particular of a multi-kernel polar code
WO2019075988A1 (zh) 译码方法和装置
CN116614142A (zh) 一种基于bpl译码和osd译码的联合译码方法
KR20210099388A (ko) Ldpc 복호 방법 및 ldpc 복호 장치
CN108566211B (zh) 基于H矩阵层处理顺序动态变化的layered LDPC译码方法
CN108092672B (zh) 一种基于折叠调度的bp译码方法
CN113285722B (zh) 一种短极化码的多偏差分段冗余校验辅助统计译码方法
CN110855298B (zh) 基于子信道冻结条件的低迭代次数极化码bp译码方法

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