CN116614142A - 一种基于bpl译码和osd译码的联合译码方法 - Google Patents
一种基于bpl译码和osd译码的联合译码方法 Download PDFInfo
- Publication number
- CN116614142A CN116614142A CN202310627010.7A CN202310627010A CN116614142A CN 116614142 A CN116614142 A CN 116614142A CN 202310627010 A CN202310627010 A CN 202310627010A CN 116614142 A CN116614142 A CN 116614142A
- Authority
- CN
- China
- Prior art keywords
- decoding
- osd
- bpl
- crc
- matrix
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 239000011159 matrix material Substances 0.000 claims abstract description 38
- 230000010287 polarization Effects 0.000 claims abstract description 19
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000007704 transition Effects 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 15
- 238000004088 simulation Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/45—Soft decoding, i.e. using symbol reliability information
- H03M13/451—Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
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
本发明公开了一种基于BPL译码和OSD译码的联合译码方法,包括以下步骤:步骤10,初始化译码参数;步骤20,对每个因子图进行初始化,得到L个初始化因子图;步骤30,基于所述L个初始化因子图进行BPL译码,得到第一译码结果;步骤40,根据所述第一译码结果和信道输出的原始LLR接收序列计算目标接收序列;步骤50,根据CRC生成矩阵和极化码的原始生成矩阵计算用于OSD译码的生成矩阵;步骤60,根据所述目标接收序列和所述用于OSD译码的生成矩阵进行OSD译码,得到第二译码结果。本发明通过使用BPL译码后的结果处理后作为OSD译码的输入序列,能够使OSD译码器获得更加可靠的接收序列,有效提升了OSD译码误码性能。
Description
技术领域
本发明属于信道编码技术领域,具体涉及一种基于BPL译码和OSD译码的联合译码方法。
背景技术
极化码作为第一个能够严格证明达到容量限的编码方案,除了具有优异的误码性能外,其编译码的复杂度也较低,并因此入选了5G标准中eMBB场景下控制信道的编码方案。
目前极化码的译码算法主要分为两类:串行译码算法和并行译码算法。串行译码算法主要包括SC译码算法及其增强型译码SCL译码等。并行译码算法主要有置信度传播(Belief Propagation,BP)译码算法以及置信传播列表(Belief Propagation List,BPL)译码算法,置信传播列表(Belief Propagation List,BPL)译码算法得益于其并行译码的结构,具有较高的并行度,能够实现高吞吐、低时延。此外,排序统计译码(OrderedStatistic Decoding,OSD)也是一种软判决译码算法,其译码性能接近ML性能,并且能够行并行译码。在码长较短的情况下(N≤64),OSD译码的性能接近ML译码,在码长较长的情况下,OSD译码的复杂度较高,一般只适用于短码译码。
BP译码算法能够并行译码,但是其高信噪比下的误码性能较差,且存在错误平层。BPL译码能够一定程度上改善BP译码的误码性能,但是其性能相比于SCL译码仍有一定的差距。OSD译码的性能与其阶数相关,高阶OSD译码能够获得较好的误码性能,但是其复杂度较高,不适合码长较长的情况,而低阶OSD译码的性能较差。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种基于BPL译码和OSD译码的联合译码方法。本发明要解决的技术问题通过以下技术方案实现:
一种基于BPL译码和OSD译码的联合译码方法,包括以下步骤:
步骤10,初始化译码参数;
步骤20,对每个因子图进行初始化,得到L个初始化因子图;L表示BPL译码的列表数;
步骤30,基于所述L个初始化因子图进行BPL译码,得到第一译码结果;
步骤40,根据所述第一译码结果和信道输出的原始LLR接收序列计算目标接收序列;
步骤50,根据CRC生成矩阵和极化码的原始生成矩阵计算用于OSD译码的生成矩阵;
步骤60,根据所述目标接收序列和所述用于OSD译码的生成矩阵进行OSD译码,得到第二译码结果。
在本发明的一个实施例中,所述译码参数包括:极化码的码长N、CRC的长度、CRC生成多项式、BPL译码的列表数L、最大迭代次数Tmax和OSD译码的阶数l。
在本发明的一个实施例中,所述步骤20包括:
步骤21,对任意一个因子图,将因子图最右侧的节点的向左传递的软信息的值进行初始化;
步骤22,对任意一个因子图,将因子图最左侧冻结位对应的节点的向右传递的软信息的值进行初始化;
步骤23,对任意一个因子图的其他节点的向左传递的软信息的值和向右传递的软信息的值初始化为0;
步骤24,初始化完成得到L个初始化因子图。
在本发明的一个实施例中,所述步骤21中初始化后的因子图最右侧的节点的向左传递的软信息的值为:
其中,因子图中的任一个节点为(i,j),i表示节点所在的列序号,1≤i≤n+1,n=log2(N),j表示节点所在的行序号,yj表示第j个比特,W表示转移概率。
在本发明的一个实施例中,所述步骤22中初始化后的因子图最左侧冻结位对应的节点的向右传递的软信息的值为:
其中,为信息比特索引的集合,/>表示冻结位索引集合。
在本发明的一个实施例中,所述目标接收序列的计算公式为:
其中,L表示BPL译码的列表数量,l表示OSD译码的阶数,LLRbp[l][i]表示第一译码结果,LLR[i]表示信道输出的原始LLR接收序列。
在本发明的一个实施例中,所述用于OSD译码的生成矩阵的计算公式为:
GCRC-Polar=GCRC·GPolar;
其中,GCRC表示CRC生成矩阵,GCRC=[I P],I表示单位矩阵,矩阵P的第i行通过对单位矩阵I中的第i行进行CRC编码生成,GPolar由极化码的原始生成矩阵GN中信息位对应的行组成。
本发明的有益效果:
本发明通过使用BPL译码后的结果处理后作为OSD译码的输入序列,能够使OSD译码器获得更加可靠的接收序列,有效提升了低阶OSD译码误码性能,因此,在码长较长时使用低阶的OSD译码能够达到更佳的译码性能,提升了OSD译码的性能。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1为本发明实施例提供的一种基于BPL译码和OSD译码的联合译码方法的流程示意图;
图2为本发明实施例提供的一个因子图的示意图;
图3为本发明实施例提供的基本蝶形运算单元的示意图;
图4为本发明实施例提供的一种基于BPL译码和OSD译码的联合译码方法的译码过程示意图;
图5为仿真一的现有技术和本发明方法的仿真结果性能对比图;
图6为仿真二的现有技术和本发明方法的仿真结果性能对比图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
如图1所示,一种基于BPL译码和OSD译码的联合译码方法,包括以下步骤:
步骤10,初始化译码参数;译码参数包括:极化码的码长N、CRC的长度、CRC生成多项式、BPL译码的列表数L、最大迭代次数Tmax和OSD译码的阶数l。
步骤20,对L个因子图的每个因子图进行初始化,得到L个初始化因子图。因子图为极化码BPL译码时所采用的排列因子图,对于码长为N的极化码,其节点数为N(n+1),其中n=log2N。以N=8时的一个因子图为例,因子图如图2所示。对于因子图中的每一个基本蝶形运算单元,都包含一个变量节点和一个校验节点,用来完成软信息的计算和传递,如图3所示。其中Li,j和Ri,j分别表示节点(i,j)向左传递的软信息和向右传递的软信息,i表示节点所在的列序号,1≤i≤n+1,n=log2(N),j表示节点所在的行序号,0≤j≤N-1。具体地,步骤20包括步骤21-步骤24:
步骤21,对任意一个因子图,将因子图最右侧的节点的向左传递的软信息的值进行初始化为信道输出的原始LLR(Log Likelihood Ratio,对数似然比)接收序列对应的值,初始化后的因子图最右侧的节点的向左传递的软信息的值为:
其中,yj表示第j个比特,W表示转移概率。
步骤22,对任意一个因子图,将因子图最左侧冻结位对应的节点的向右传递的软信息的值进行初始化,初始化后的因子图最左侧冻结位对应的节点的向右传递的软信息的值为:
其中,为信息比特索引的集合,/>表示冻结位索引集合。
步骤23,对任意一个因子图的其他节点的向左传递的软信息的值和向右传递的软信息的值初始化为0;
步骤24,初始化完成得到L个初始化因子图。
步骤30,基于L个初始化因子图进行BPL译码,得到第一译码结果;
步骤40,根据第一译码结果和信道输出的原始LLR接收序列计算目标接收序列,具体地,目标接收序列的计算公式为:
其中,LLRbp[l][i]表示第一译码结果,LLR[i]表示信道输出的原始LLR接收序列。LLR[i]的计算公式为
本步骤中,将L个BP译码结果整合成一个最优的结果作为OSD译码的输入序列(目标接收序列),为了获得该最优的输入序列,尽可能地筛选出BPL译码结果中可靠的软信息,同时要过滤掉不可靠的软信息,即对BPL译码结果与接收序列LLR逐位取均值得到目标接收序列。目标接收序列作为OSD译码的输入序列,使OSD译码器获得更加可靠的接收序列。
步骤50,根据CRC(Cyclic Redundancy Check,循环冗余校验码)生成矩阵和极化码的原始生成矩阵计算用于OSD译码的生成矩阵;根据级联CRC的极化码码字生成关系可得用于OSD译码的生成矩阵GCRC-Polar的计算公式为:
GCRC-Polar=GCRC·GPolar;
其中,GCRC表示CRC生成矩阵,GCRC=[I P],I表示单位矩阵,矩阵P的第i行通过对单位矩阵I中的第i行进行CRC编码生成,GPolar由极化码的原始生成矩阵GN中信息位对应的行组成。
示例的,若码字长度为3,使用的CRC长度为2,生成多项式为g(x)=x2+x+1,则CRC生成矩阵为:
GPolar由极化码的原始生成矩阵GN中信息位对应的行组成。极化码可以由四元组确定,其中,N是码长,/>为信息位长度,也是编码子空间的维数,N/K为编码码率,/>为信息比特索引的集合,也称信息集合,/>为冻结比特。原始生成矩阵GN可以由/>核矩阵/>通过Kronecker积递归获得。
以(8,4,{4,5,6,7,8},{0,0,0})的极化码为例,此时极化码的原始生成矩阵为
则
此时GCRC-Polar为:
步骤60,根据目标接收序列和用于OSD译码的生成矩阵进行OSD译码,得到第二译码结果。
示例的,本实施例的联合译码方法的译码过程如图4所示,且联合译码方法的代码如下所示:
本实施例中,通过使用BPL译码后的结果处理后作为OSD译码的输入序列,能够使OSD译码器获得更加可靠的接收序列,在码长较长时能够有效提升低阶OSD译码误码性能,因此,在码长较长时低阶的OSD译码能够达到更佳的译码性能,提升了OSD译码的性能。
为验证本算法的有效性和优越性,进行了仿真实验,同时给出了传统的BPL译码算法和OSD译码算法单独进行译码的仿真性能用以对比。
仿真一:
在仿真中:信道为AWGN信道,调制方式为BPSK调制。使用的极化码码长N=128,K=64,CRC长度为6,构造方式为5G构造。BPL译码中列表数L=32,最大迭代次数Tmax=200。仿真结果如图5所示,通过BPL译码与OSD译码联合译码,相比于两者单独进行译码误块率明显下降,性能有较大提升。
仿真二
考虑到码长更长的情况,在AWGN信道,采用BPSK调制,使用码长N=256,K=128,CRC长度为10,构造方式为5G构造进行了仿真。BPL译码中列表数L=32,最大迭代次数Tmax=200。仿真结果如图6所示,在码长更长时,采用本发明的联合译码方法同样能够带来较大的性能提升。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (7)
1.一种基于BPL译码和OSD译码的联合译码方法,其特征在于,包括以下步骤:
步骤10,初始化译码参数;
步骤20,对每个因子图进行初始化,得到L个初始化因子图;L表示BPL译码的列表数;
步骤30,基于所述L个初始化因子图进行BPL译码,得到第一译码结果;
步骤40,根据所述第一译码结果和信道输出的原始LLR接收序列计算目标接收序列;
步骤50,根据CRC生成矩阵和极化码的原始生成矩阵计算用于OSD译码的生成矩阵;
步骤60,根据所述目标接收序列和所述用于OSD译码的生成矩阵进行OSD译码,得到第二译码结果。
2.根据权利要求1所述的一种基于BPL译码和OSD译码的联合译码方法,其特征在于,所述译码参数包括:极化码的码长N、CRC的长度、CRC生成多项式、BPL译码的列表数L、最大迭代次数Tmax和OSD译码的阶数l。
3.根据权利要求2所述的一种基于BPL译码和OSD译码的联合译码方法,其特征在于,所述步骤20包括:
步骤21,对任意一个因子图,将因子图最右侧的节点的向左传递的软信息的值进行初始化;
步骤22,对任意一个因子图,将因子图最左侧冻结位对应的节点的向右传递的软信息的值进行初始化;
步骤23,对任意一个因子图的其他节点的向左传递的软信息的值和向右传递的软信息的值初始化为0;
步骤24,初始化完成得到L个初始化因子图。
4.根据权利要求3所述的一种基于BPL译码和OSD译码的联合译码方法,其特征在于,所述步骤21中初始化后的因子图最右侧的节点的向左传递的软信息的值为:
其中,因子图中的任一个节点为(i,j),i表示节点所在的列序号,1≤i≤n+1,n=log2(N),j表示节点所在的行序号,yj表示第j个比特,W表示转移概率。
5.根据权利要求3所述的一种基于BPL译码和OSD译码的联合译码方法,其特征在于,所述步骤22中初始化后的因子图最左侧冻结位对应的节点的向右传递的软信息的值为:
其中,为信息比特索引的集合,/>表示冻结位索引集合。
6.根据权利要求2所述的一种基于BPL译码和OSD译码的联合译码方法,其特征在于,所述目标接收序列的计算公式为:
其中,L表示BPL译码的列表数量,l表示OSD译码的阶数,LLRbp[l][i]表示第一译码结果,LLR[i]表示信道输出的原始LLR接收序列。
7.根据权利要求2所述的一种基于BPL译码和OSD译码的联合译码方法,其特征在于,所述用于OSD译码的生成矩阵的计算公式为:
GCRC-Polar=GCRC·GPolar;
其中,GCRC表示CRC生成矩阵,GCRC=[I P],I表示单位矩阵,矩阵P的第i行通过对单位矩阵I中的第i行进行CRC编码生成,GPolar由极化码的原始生成矩阵GN中信息位对应的行组成。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310330926 | 2023-03-30 | ||
CN2023103309266 | 2023-03-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116614142A true CN116614142A (zh) | 2023-08-18 |
Family
ID=87681570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310627010.7A Pending CN116614142A (zh) | 2023-03-30 | 2023-05-30 | 一种基于bpl译码和osd译码的联合译码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116614142A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116505958A (zh) * | 2023-05-08 | 2023-07-28 | 江西财经大学 | 一种噪声辅助bpl级联osd的极化码译码方法、系统、设备及介质 |
-
2023
- 2023-05-30 CN CN202310627010.7A patent/CN116614142A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116505958A (zh) * | 2023-05-08 | 2023-07-28 | 江西财经大学 | 一种噪声辅助bpl级联osd的极化码译码方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108566213B (zh) | 极化码的串行抵消列表比特翻转译码方法 | |
CN107026656B (zh) | 一种基于扰动的CRC辅助中短码长Polar码有效译码方法 | |
CN109257148B (zh) | 一种基于高斯近似阈值判断的极化码bp译码方法 | |
CN109286405B (zh) | 一种低复杂度的极化码递进式比特翻转sc译码方法 | |
JP2010511337A (ja) | ガロア体gf(q)におけるldpc符号を復号する方法および機器 | |
CN110233628B (zh) | 极化码的自适应置信传播列表译码方法 | |
CN112332864B (zh) | 一种自适应有序移动剪枝列表的极化码译码方法及系统 | |
TW202145723A (zh) | 基於信度傳播之極化碼解碼方法 | |
CN110661533B (zh) | 优化译码器存储极化码译码性能的方法 | |
CN116614142A (zh) | 一种基于bpl译码和osd译码的联合译码方法 | |
Yang et al. | Nonlinear programming approaches to decoding low-density parity-check codes | |
CN114157309A (zh) | 极化码译码方法、装置及系统 | |
CN112803954B (zh) | 一种基于CRC分段处理的改进BP List译码算法 | |
CN111726202B (zh) | 一种极化码置信传播译码的提前终止迭代方法 | |
CN113114269A (zh) | 一种置信传播-信息修正译码方法 | |
Fang et al. | Improved segmented SC-flip decoding of polar codes based on gaussian approximation | |
CN112929035A (zh) | 一种非二进制极化码的编码与译码方法 | |
CN111654291A (zh) | 一种基于比特翻转的极化码快速串行抵消列表译码算法 | |
CN116760425A (zh) | 一种ldpc码的crc辅助osd译码方法 | |
Jamali et al. | Low-complexity decoding of a class of Reed-Muller subcodes for low-capacity channels | |
CN113556135B (zh) | 基于冻结翻转列表的极化码置信传播比特翻转译码方法 | |
CN113014271B (zh) | 一种缩小翻转集的极化码bp译码方法 | |
CN114598334A (zh) | 一种分段crc辅助的卷积极化码编译码方案 | |
CN114696953A (zh) | 一种自由空间光通信的信道编码和译码方法 | |
CN114374397A (zh) | 一种三维Turbo乘积码译码结构并优化迭代权重因子的方法 |
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 |