CN106888025B - 一种基于极化码的级联纠错编译码方法和系统 - Google Patents
一种基于极化码的级联纠错编译码方法和系统 Download PDFInfo
- Publication number
- CN106888025B CN106888025B CN201710043804.3A CN201710043804A CN106888025B CN 106888025 B CN106888025 B CN 106888025B CN 201710043804 A CN201710043804 A CN 201710043804A CN 106888025 B CN106888025 B CN 106888025B
- Authority
- CN
- China
- Prior art keywords
- code
- outer encoder
- list entries
- encoder
- bit
- 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
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/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/13—Linear codes
-
- 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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种基于极化码的级联纠错编译码方法,属于纠错编译码技术领域。该方法在发送端,外编码器首先对插入了固定比特的信息序列进行编码,得到外码码字;外码码字作为极化码编码器的输入序列,进行极化码编码,并得到级联码码字;接收端译码器采用联合的SCL译码算法进行译码。同时本发明还公开了一种基于极化码的级联纠错编译码系统。本发明技术方案提供的编码方法的误帧率性能显著超越采用SCL译码算法或者CRC‑aided SCL译码算法下的极化码误帧率性能;且本发明的外编码器存储复杂度、运算复杂度极低,编码简单;本发明采用的联合的SCL译码算法相对于原始SCL译码算法以及CRC‑aided SCL译码算法无译码复杂度的提升,有利于工程实现。
Description
技术领域
本发明属于纠错编译码技术领域,更具体地,涉及一种基于极化码的级联纠错编译码方法和系统。
背景技术
极化编码作为一种新型的接近香农限的编码方案,其编译码算法的复杂度较低,有利于工程实现;仿真结果表明极化码SCL(Successive Cancellation List,连续消除列表)译码算法在较低复杂度O(L·Nlog(N))(L为路径数量,N为码长)下,纠错能力可以达到最大似然译码器的纠错能力。但是对于采用SCL译码算法的中短码长非级联极化码,其纠错性能仍然与香农极限存在较大差距,并且这个差距无法单独从增大路径数量进行弥补。
传统的极化码级联方法中,级联LDPC(Low-Density Parity-Check,低密度奇偶校验)码由于得到的级联码的特性不适合SCL译码算法,相对于采用SCL译码算法的极化码而言,其纠错性能无明显提升;级联CRC(Cyclical Redundancy Check,循环冗余校验)码不仅需要额外的CRC校验电路,会带来一定的硬件开销,另外纠错性能也有限;因此,这些传统方案均在某种程度上限制了极化码的工程应用。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于极化码的级联纠错编译码方法和系统,其目的在于仅采用少数逻辑门电路和移位寄存器实现的简单有效的外编码器,以较低的外码编码复杂度,来提升极化码在SCL译码算法下的纠错性能,由此解决传统的极化码级联方法中,采用SCL译码算法或者CRC-aided SCL译码算法下的纠错性能有限或硬件设计复杂的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于极化码的级联纠错编译码方法,该方法包括以下步骤:
(1)信息序列预处理步骤:通过对信息序列插入固定的比特序列,即接收端已知的全0、全1或者其他固定的0和1序列,获得外编码器的输入序列;
(2)外编码器编码步骤:通过对外编码器的输入序列进行编码,获得外码码字,外编码器的码率为1;
(3)外码码字映射步骤:通过将所述外码码字的第一个比特至最后一个比特依次映射为极化码编码器的输入序列的第一个至最后一个比特;
(4)内编码器编码步骤:通过对所述极化码编码器的输入序列进行极化码编码,获得级联码码字;
(5)译码步骤:采用联合的SCL译码算法进行译码,将外编码器输入序列与极化码输入序列进行联合判决,最终从外编码器输入序列的判决结果中得到信息序列的判决结果。
上述编译码方法,外编码器的码率为1是指,外编码器对一个输入比特序列进行编码时,输出码字的比特数量与输入序列的比特数量相等。
上述编译码方法,其步骤(1)信息序列预处理中,预处理得到的外编码器输入序列的子序列sA为信息序列,即子序列为插入的固定序列;其中,N为极化码码长,M为信息序列长度,为1×N行向量,sA={si|i∈A},集合A为外编码器输入序列中信息比特位置序号集合,集合Ac为外编码器输入序列中固定比特位置序号集合,Ac={1,2,3,...,N}\A;{1,2,3,...,N}\A是指求集合{1,2,3,...,N}和A的差,也即
进一步地,所述步骤(2)中外编码器编码步骤过程具体为:
外编码器编码方程为其中,外码码字和输入序列均为1×N行向量,G为外编码器生成矩阵,中任意一个比特ui(1≤i≤N)都只与中的子序列有关;生成矩阵G的特征为上三角矩阵,并且对于任意i∈A,该矩阵的元素gi,i等于1,其中,gi,i表示矩阵G的第i行第i列元素,集合A为外编码器的输入序列中信息比特位置序号集合
进一步地,所述外编码器为系统码编码器或非系统码编码器:为系统码编码器时,外编码器生成矩阵G的特征为,对于任意i∈A,该矩阵第i列的元素中仅gi,i等于1,第i列其它元素为0;为非系统码编码器时,外编码器生成矩阵G的特征为,存在i∈A,第i列的前i-1个元素gj,i(1≤j<i)中至少有1个元素为1,其中,gj,i表示矩阵G的第j行第i列的元素。
进一步地,所述外编码器采用类系统循环码、类非系统循环码、系统递归卷积码、非系统递归卷积码、系统非递归卷积码或非系统非递归卷积码。
进一步地,所述外编码器采用类系统循环码的编码流程具体为:
Step1、判断i是否小于等于N;若是,进入Step2;若否,则进入Step6;其中,i的初始值为1,取值为1到N之间的正整数;
Step2、外编码器输入比特si;判断当前i是否属于集合A;若是,进入Step3;若否,则进入Step4;其中集合A为外编码器输入序列中信息比特的位置序号集合。
Step3、开关E(1)连接C(1)端点,输出比特ui=si,i=i+1,进入Step5;
Step4、开关E(1)连接B(1)端点,输出比特进入Step5;
Step5、更新r个移位寄存器的存储值, 为更新前的取值,返回Step1;
Step6、完成外编码器码字的输出,同时对r个移位寄存器进行清0操作。
进一步地,所述外编码器采用类非系统循环码的编码流程具体为:外编码器编码时,开关E(1)一直连接B(1)端,当完成外编码器码字的输出后,r个移位寄存器需要进行清0操作。
进一步地,所述外编码器采用系统递归卷积码的编码流程具体为:
Step1、判断i是否小于等于N;若是,进入Step2;若否,则进入Step6;其中,i的初始值为1,取值为1到N之间的正整数;
Step2、外编码器输入比特si;判断当前i是否属于集合A;若是,进入Step3;若否,则进入Step4;其中集合A为外编码器输入序列中信息比特的位置序号集合。
Step3、开关E(2)连接C(2)端点,输出比特ui=si,i=i+1,进入Step5;
Step4、开关E(2)连接B(2)端点,输出比特进入Step5;
Step5、更新r个移位寄存器的存储值, 为更新前的取值,返回Step1;
Step6、完成外编码器码字的输出,同时对r个移位寄存器进行清0操作。
进一步地,所述外编码器采用非系统递归卷积码的编码流程具体为:外编码器编码时,开关E(2)一直连接B(2)端,当完成外编码器码字的输出后,r个移位寄存器需要进行清0操作。
进一步地,所述外编码器采用系统非递归卷积码的编码流程具体为:
Step1、判断i是否小于等于N;若是,进入Step2;若否,则进入Step6;其中,i的初始值为1,取值为1到N之间的正整数;
Step2、外编码器输入比特si;判断当前i是否属于集合A;若是,进入Step3;若否,则进入Step4;其中集合A为外编码器输入序列中信息比特的位置序号集合。
Step3、开关E(3)连接C(3)端点,输出比特ui=si,i=i+1,进入Step5;
Step4、开关E(3)连接B(3)端点,输出比特 进入Step5;
Step5、更新r个移位寄存器的存储值, 为更新前的取值,返回Step1;
Step6、完成外编码器码字的输出,同时对r个移位寄存器进行清0操作。
进一步地,所述外编码器采用非系统非递归卷积码的编码流程具体为:外编码器编码时,开关E(3)一直连接B(3)端,当完成外编码器码字的输出后,r个移位寄存器需要进行清0操作。
进一步地,所述步骤(5)包括以下子步骤:
(51)判断i是否小于等于N;若是,进入步骤(52),若否,则进入步骤(55);其中,N是指极化码码长,i是指当前译码第i个比特ui的索引序号,其初始值为1,取值从1到N的正整数;
(52)判断i是否属于集合A,若否,进入步骤(53);若是,则进入步骤(54);其中,集合A为外编码器的输入序列中信息比特位置序号集合;
(53)将当前每条路径上外编码器的输入序列中的固定比特si判决值设为已知的固定比特;将当前每条路径上极化码编码器的输入序列中比特ui的判决值设为并令i=i+1,返回步骤(51);其中为外编码器输入序列的第j个比特sj的判决值;
(54)首先,统计当前路径数量L′,通过将当前每条路径在ui处取值0 或1获得2L′条备选路径;并判断是否满足2L′≤L,若是,保留2L′条路径;若否,则保留L条度量值最大的路径,从而得到每条路径中ui的判决值其次,根据判决每条路径上外编码器的输入序列中信息比特si,si的判决值为最后,令i=i+1,返回步骤(51);其中,2L′条路径的度量值分别为该路径在ui处取值0或1的概率或 为接收端接收向量;L为SCL译码算法的最大路径数量;
(55)从L条路径中输出路径度量值最大的一条路径上对应的外编码器输入序列其中子序列即为译码的信息序列。
按照本发明的另一方面,提供了一种基于极化码的级联纠错编译码系统,该系统包括以下部分:
信息序列预处理模块,用于通过对信息序列插入固定的比特序列,即接收端已知的全0、全1或者其他固定的0和1序列,获得外编码器的输入序列;
外编码器编码模块,用于通过对外编码器的输入序列进行编码,获得外码码字,外编码器的码率为1;
外码码字映射模块,用于通过将所述外码码字的第一个比特至最后一个比特依次映射为极化码编码器的输入序列的第一个至最后一个比特;
内编码器编码模块,用于通过对所述极化码编码器的输入序列进行极化码编码,获得级联码码字;
译码模块,用于采用联合的SCL译码算法进行译码,将外编码器输入序列与极化码输入序列进行联合判决,最终从外编码器输入序列的判决结果中得到信息序列的判决结果。
上述编译码系统中,外编码器的码率为1是指,外编码器对一个输入比特序列进行编码时,输出码字的比特数量与输入序列的比特数量相等。
上述编译码系统中,其步骤(1)信息序列预处理中,预处理得到的外编码器输入序列的子序列sA为信息序列,即子序列为插入的固定序列;其中,N为极化码码长,M为信息序列长度,为1×N行向量,sA={si|i∈A},集合A为外编码器输入序列中信息比特位置序号集合,集合Ac为外编码器输入序列中固定比特位置序号集合,Ac={1,2,3,...,N}\A,{1,2,3,...,N}\A是指求集合{1,2,3,...,N}和A的差,也即
进一步地,所述外编码器编码模块具体用于通过外编码器编码方程进行编码,其中,外码码字和输入序列均为1×N行向量,G为外编码器生成矩阵,中任意一个比特ui(1≤i≤N)都只与中的子序列有关;生成矩阵G的特征为上三角矩阵,并且对于任意i∈A,该矩阵的元素gi,i等于1,其中,gi,i表示矩阵G的第i行第i列元素,集合A为外编码器的输入序列中信息比特位置序号集合
进一步地,所述外编码器为系统码编码器或非系统码编码器:为系统码编码器时,外编码器生成矩阵G的特征为,对于任意i∈A,该矩阵第i列的元素中仅gi,i等于1,第i列其它元素为0;为非系统码编码器时,外编码器生成矩阵G的特征为,存在i∈A,第i列的前i-1个元素gj,i(1≤j<i)中至少有1个元素为1,其中,gj,i表示矩阵G的第j行第i列的元素。
进一步地,所述外编码器采用类系统循环码、类非系统循环码、系统递归卷积码、非系统递归卷积码、系统非递归卷积码或非系统非递归卷积码。
进一步地,所述译码模块包括以下单元:
第一预判单元,用于判断i是否小于等于N;若是,进入第二预判单元,若否,则进入获取译码结果单元;其中,N是指极化码码长,i是指当前译码第i个比特ui的索引序号,其初始值为1,取值从1到N的正整数;
第二预判单元,用于判断i是否属于集合A,若否,进入第一判决单元;若是,则进入第二判决单元;其中,集合A为外编码器的输入序列中信息比特位置序号集合;
第一判决单元,用于将当前每条路径上外编码器的输入序列中的固定比特si判决值设为已知的固定比特;将当前每条路径上极化码编码器的输入序列中比特ui的判决值设为并令i=i+1,返回第一预判单元;其中为外编码器输入序列的第j个比特sj的判决值;
第二判决单元,用于:首先,统计当前路径数量L′,通过将当前每条路径在ui处取值0或1获得2L′条备选路径;并判断是否满足2L′≤L,若是,保留2L′条路径;若否,则保留L条度量值最大的路径,从而得到每条路径中ui的判决值其次,根据判决每条路径上外编码器的输入序列中信息比特si,si的判决值为最后,令i=i+1,返回第一预判单元;其中,2L′条路径的度量值分别为该路径在ui处取值0或1的概率或 为接收端接收向量;L为SCL译码算法的最大路径数量;
获取译码结果单元,用于从L条路径中输出路径度量值最大的一条路径上对应的外编码器输入序列其中子序列即为译码的信息序列。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下技术特征及有益效果:
(1)本发明提供的极化码与码率为1的外编码器级联的纠错编码方法,具有显著提升极化码纠错性能的效果;
现有技术中,采用SCL译码算法的中短码长非级联的极化码,其纠错性能趋近于最大似然译码器译码性能,纠错能力有限,即使增大SCL译码算法路径数量,误帧率性能不会明显改善;而且增大路径数量会线性增大算法存储复杂度和译码复杂度,不利于工程实现;在相同路径数量的SCL译码算下,本发明提供的级联方案与非级联的极化码相比,由于级联的外码可以在SCL译码过程中可以及时有效的纠正译码错误,提高译码列表中正确路径的存活概率,因此具有显著提升纠错性能的效果;其纠错性能可以明显突破CRC-aided SCL(循环冗余校验辅助的连续消除列表)译码算法的纠错性能;
(2)极化码与码率为1的外编码器级联的纠错编码方法,不会增大译码复杂度以及存储复杂度;
由于提出的级联码可以采用少量的移位寄存器和逻辑门电路,即可实现简单有效的外编码器,在保证优良纠错性能的同时,不会增大编码器的存储复杂度和运算复杂度;另外,采用联合的SCL译码算法,相对于原始SCL译码算法而言,其主要区别在于:对于信息比特的判决,除了需要采用SCL译码算法判决极化码编码器输入序列的信息比特之外,还需要根据校验公式判决信息比特,因此也可以采用少量的移位寄存器和逻辑门电路进行实现,本发明的这种联合的SCL译码方法与传统SCL算法相比,无运算复杂度提升;
(3)本发明提供的极化码与码率为1的外编码器级联的纠错编码方法,外编码器可以采用少量的移位寄存器和逻辑门电路即可实现,相对于其它级联复杂外码的方案,采用本发明方法可以使外编码器的硬件电路设计极为简单,有利于工程实现。
附图说明
图1为本发明编译码方法流程示意图;
图2为本发明提供的外编码器采用类系统循环码编码电路实现的示意图;
图3为本发明提供的外编码器采用系统递归卷积码编码电路实现的示意图;
图4为本发明提供的外编码器采用系统非递归卷积码编码电路实现的示意图;
图5为对码长为4的极化码与码率为1的外编码器级联的纠错编码方法的译码示意图;
图6为本发明实施例给出的外编码器采用2个移位寄存器组成的系统递归卷积码的编码电路;
图7为本发明实施例提供的码长为8的外码码字编码示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示为本发明编译码方法包括以下步骤:
(1)信息序列预处理:信息序列预处理是指,已知待编码的M长信息序列为通过信息序列预处理之后得到外编码器的输入序列其中,的子序列sA为信息序列,即子序列为插入的固定比特序列,本专利实施例中,固定比特序列默认为全0序列。
(2)外编码器编码:本发明的外编码器可以采用类系统循环码、类非系统循环码、系统递归卷积码、非系统递归卷积码、系统非递归卷积码以及非系统非递归卷积码。外编码器的输入序列为输出码字为设外编码器的生成矩阵为G时,从而有
如图2所示为类系统循环码编码电路示意图,图中βi (1)(0≤i≤r)的取值为0或1,其中βr (1)=1,r为该电路中移位寄存器的个数,移位寄存器的初始状态为全0。图中,电平值Di (1)(1≤i≤r)取值为当前时刻第i个移位寄存器的存储值,开关E(1)连接B(1)端的输出比特u*为当前输入比特s*与Dr (1)的模二加,开关E(1)连接C(1)端的输出比特u*即为当前输入比特s*。外编码器采用类系统循环码的编码流程具体为:
Step1、判断i是否小于等于N;若是,进入Step2;若否,则进入Step6;其中,i的初始值为1,取值为1到N之间的正整数;
Step2、外编码器输入比特si;判断当前i是否属于集合A;若是,进入Step3;若否,则进入Step4;其中集合A为外编码器输入序列中信息比特的位置序号集合。
Step3、开关E(1)连接C(1)端点,输出比特ui=si,i=i+1,进入Step5;
Step4、开关E(1)连接B(1)端点,输出比特进入Step5;
Step5、更新r个移位寄存器的存储值, 为更新前的取值,返回Step1;
Step6、完成外编码器码字的输出,同时对r个移位寄存器进行清0操作。
如图2虚线框中所示为非系统递归卷积码编码电路示意图,外编码器编码时,开关E(1)一直连接B(1)端,当完成外编码器码字的输出后,r个移位寄存器需要进行清0操作。
如图3所示为系统递归卷积码编码电路示意图,图中βi (2)(1≤i≤r)、αi (2)(0≤i≤r)的取值为0或1,r为该电路中移位寄存器的个数,移位寄存器的初始状态为全0。图3中,电平值Di (2)(1≤i≤r)取值为当前时刻第i个移位寄存器的存储值,设当前输入比特为s*,开关E(2)连接B(2)端的输出比特开关E(2)连接C(2)端的输出比特u*即为当前输入比特s*。外编码器采用系统递归卷积码编码流程具体为:
Step1、判断i是否小于等于N;若是,进入Step2;若否,则进入Step6;其中,i的初始值为1,取值为1到N之间的正整数;
Step2、外编码器输入比特si;判断当前i是否属于集合A;若是,进入Step3;若否,则进入Step4;其中集合A为外编码器输入序列中信息比特的位置序号集合。
Step3、开关E(2)连接C(2)端点,输出比特ui=si,i=i+1,进入Step5;
Step4、开关E(2)连接B(2)端点,输出比特进入Step5;
Step5、更新r个移位寄存器的存储值, 为更新前的取值,返回Step1;
Step6、完成外编码器码字的输出,同时对r个移位寄存器进行清0操作。
如图3虚线框中所示为非系统递归卷积码编码电路示意图,外编码器编码时,开关E(2)一直连接B(2)端,当完成外编码器码字的输出后,r个移位寄存器需要进行清0操作。
如图4所示为系统非递归卷积码编码电路示意图,图中αi (3)(0≤i≤r)的取值为0或1,r为该电路中移位寄存器的个数,移位寄存器的初始状态为全0。图4中,电平值Di (3)(1≤i≤r)取值为当前时刻第i个移位寄存器的存储值,设当前输入比特为s*,开关E(3)连接B(3)端的输出比特开关E(3)连接C(3)端的输出比特u*即为当前输入比特s*。外编码器采用系统非递归卷积码编码流程具体为:
Step1、判断i是否小于等于N;若是,进入Step2;若否,则进入Step6;其中,i的初始值为1,取值为1到N之间的正整数;
Step2、外编码器输入比特si;判断当前i是否属于集合A;若是,进入Step3;若否,则进入Step4;其中集合A为外编码器输入序列中信息比特的位置序号集合。
Step3、开关E(3)连接C(3)端点,输出比特ui=si,i=i+1,进入Step5;
Step4、开关E(3)连接B(3)端点,输出比特 进入Step5;
Step5、更新r个移位寄存器的存储值, 为更新前的取值,返回Step1;
Step6、完成外编码器码字的输出,同时对r个移位寄存器进行清0操作。
如图4虚线框所示的电路为非系统非递归卷积码编码电路示意图,其编码流程为:外编码器编码时,开关E(3)一直连接B(3)端,当完成外编码器码字的输出后,r个移位寄存器需要进行清0操作。
(3)外码码字映射:外码码字映射是将外码码字中的各个比特通过该映射关系作为极化码编码器输入的比特;在本发明中,外码码字的第一个比特至最后一个比特依次映射到极化码输入序列的第一个至最后一个比特来进行外码码字映射,获得极化码编码器的输入序列。因此,外码码字即为极化码编码器的输入序列。
(4)内编码器编码:通过步骤3得到内码极化码编码器的输入序列根据极化码编码公式,获得极化码码字为其中GN为极化码生成矩阵。极化码码字也为级联码码字。
(5)译码步骤:采用联合的SCL译码算法进行译码,译码步骤具体包括以下子步骤:
(51)判断i是否小于等于N;若是,进入步骤(52),若否,则进入步骤(55);
其中,N是指极化码码长,i是指当前译码第i个比特ui的索引序号,其初始值为1,取值从1到N的正整数;
(52)判断i是否属于集合A,若否,进入步骤(53);若是,则进入步骤(54);其中,A为外编码器输入序列中信息比特位置序号集合;
(53)将当前每条路径上外编码器输入序列中的固定比特si判决值设为已知的固定比特;将当前每条路径上极化码编码器输入序列中的比特ui的判决值设为并令i=i+1,返回步骤(51);其中为外编码器输入序列的第j个比特sj的判决值;
(54)首先,统计当前路径数量L′,通过将当前每条路径在ui处取值0或1获得2L′条备选路径;并判断是否满足2L′≤L,若是,保留2L′条路径;若否,则保留L条度量值最大的路径,从而得到每条路径中ui的判决值其次,根据判决每条路径上外编码器输入的信息比特si,si的判决值为最后,令i=i+1,返回步骤(51);
其中,2L′条路径的度量值分别为该路径在ui处取值0或1的概率或 为接收端接收向量;L为SCL译码算法的最大路径数量;gj,i表示外码生成矩阵G的第j行第i列元素。
(55)从L条路径中输出路径度量值最大的一条路径上对应的外编码器输入序列其中子序列即为译码的信息序列。
如图5所示,为对码长为4的级联码采用联合的SCL译码算法译码过程。假设集合A={1,2,4},固定比特s3=0,译码算法的路径总数L=2,外编码器生成矩阵如
i=1时,由于i≤N=4并且i∈A,当前路径取值为0和1之后,路径总数2≤L=2,因此2条路径(实线路径和虚线路径)均保留,此时u1在两条路径中分别被判决为0和1。同时,根据公式判决信息比特也即实线路径处s1被判决为0,虚线路径处s1被判决为1;
i=2时,由于i≤N=4并且i∈A,由于路径总数不能超过L=2,因此实线路径根据度量值判决虚线路径根据度量值判决同时,根据公式判决信息比特也即实线路径判决虚线路径判决
i=3时,由于i≤N=4并且2条路径中,固定比特s3被判决为0,也即实线路径判决虚线路径判决同时,根据也即因此实线路径判决虚线路径判决
i=4时,由于i≤N=4并且i∈A,由于路径总数不能超过L=2,因此实线路径根据度量值判决为1;虚线路径根据度量值判决为0。同时,根据公式判决信息比特也即实线路径判决虚线路径判决
i=5时,由于i>N=4,此时需要从2条路径中输出度量值最大的一条路径(实线)对应的判决序列其中判决的信息比特即为
下面结合实施例来说明本发明方法,具体如下:
实施例中,级联码码长为N=8,信息比特数量为M=2,集合A={2,3},固定比特序列为全0序列,也即(s1,s4,s5,s6,s7,s8)=(0,0,0,0,0,0),接收端译码器采用联合的SCL译码算法,路径数量设置为L;外编码器码率为1的外编码器采用图6所示的系统递归卷积码编码器;给出的实施例步骤如下:
(1)信息序列预处理步骤:如图7所示,信息序列依次插入到序列的子序列sA中,也即s2=v1,s3=v2,的其它比特插入为固定序列(也即全0序列),从而外编码器输入序列
(2)外编码器编码步骤:外编码器采用图6所示的系统递归卷积码编码器,按照其编码过程可得到表1所示的电路工作过程;
表1
如图7所示,得到外码码字另外,也可以得到外编码器的生成矩阵
(3)外码码字映射步骤:外码码字的第一个比特u1至最后一个比特u8依次映射到极化码编码器输入序列的第一个比特至最后一个比特,获得极化码编码器的输入序列。因此,外码码字即为极化码编码器的输入序列;
(4)内编码器编码步骤:通过步骤3得到内码极化码编码器的输入序列根据极化码编码公式,获得极化码码字为其中G8为码长为8的极化码生成矩阵。极化码码字也为级联码码字;
(5)译码步骤:接收端采用联合的SCL译码算法,对于任意i=1,2,3,...,8,当时,当前每条路径si的判决值ui的判决值当i∈A时,当前每条路径ui的判决值按照SCL译码算法进行判决,同时判决信息比特si,si的判决值为
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于极化码的级联纠错编译码方法,其特征在于,该方法包括以下步骤:
(1)信息序列预处理步骤:通过对信息序列插入固定的比特序列,获得外编码器的输入序列
(2)外编码器编码步骤:通过对外编码器的输入序列进行编码,获得外码码字外编码器的码率为1;
(3)外码码字映射步骤:通过将所述外码码字的第一个比特至最后一个比特依次映射为极化码编码器的输入序列的第一个至最后一个比特,因此极化码编码器的输入序列也为
(4)内编码器编码步骤:通过对所述极化码编码器的输入序列进行极化码编码,获得级联码码字;
(5)译码步骤:采用联合的SCL译码算法进行译码,将外编码器输入序列与极化码编码器的输入序列进行联合判决,最终从外编码器输入序列的判决结果中得到信息序列的判决结果
所述步骤(5)包括以下子步骤:
(51)判断i是否小于等于N;若是,进入步骤(52),若否,则进入步骤(55);其中,N是指极化码码长,i是指当前译码第i个比特ui的索引序号,其初始值为1,取值从1到N的正整数;
(52)判断i是否属于集合A,若否,进入步骤(53);若是,则进入步骤(54);其中,集合A为外编码器的输入序列中信息比特位置序号集合;
(53)将当前每条路径上外编码器的输入序列中的固定比特si判决值设为已知的固定比特;将当前每条路径上极化码编码器的输入序列中比特ui的判决值设为并令i=i+1,返回步骤(51);其中为外编码器输入序列的第j个比特sj的判决值;gj,i表示矩阵G的第j行第i列的元素,G为外编码器生成矩阵;
(54)首先,统计当前路径数量L′,通过将当前每条路径在ui处取值0或1获得2L′条备选路径;并判断是否满足2L′≤L,若是,保留2L′条路径;若否,则保留L条度量值最大的路径,从而得到每条路径中ui的判决值其次,根据判决每条路径上外编码器的输入序列中信息比特si,si的判决值为最后,令i=i+1,返回步骤(51);其中,2L′条路径的度量值分别为该路径在ui处取值0或1的概率或 为接收端接收向量;L为SCL译码算法的最大路径数量;
(55)从L条路径中输出路径度量值最大的一条路径上对应的外编码器输入序列的判决结果其中子序列即为译码的信息序列的判决结果。
2.根据权利要求1所述的一种基于极化码的级联纠错编译码方法,其特征在于,所述步骤(2)中外编码器编码步骤过程具体为:
外编码器编码方程为其中,外码码字和外编码器的输入序列均为1×N行向量,G为外编码器生成矩阵,中任意一个比特ui(1≤i≤N)都只与中的子序列有关;生成矩阵G的特征为上三角矩阵,并且对于任意i∈A,该矩阵的元素gi,i等于1,其中,gi,i表示矩阵G的第i行第i列元素,集合A为外编码器的输入序列中信息比特位置序号集合
3.根据权利要求1或2所述的一种基于极化码的级联纠错编译码方法,其特征在于,所述外编码器为系统码编码器或非系统码编码器:为系统码编码器时,外编码器生成矩阵G的特征为,对于任意i∈A,该矩阵第i列的元素中仅gi,i等于1,第i列其它元素为0;为非系统码编码器时,外编码器生成矩阵G的特征为,存在i∈A,第i列的前i-1个元素gj,i(1≤j<i)中至少有1个元素为1,其中,gj,i表示矩阵G的第j行第i列的元素。
4.根据权利要求1或2所述的一种基于极化码的级联纠错编译码方法,其特征在于,所述外编码器的编码电路采用类系统循环码电路、类非系统循环码电路、系统递归卷积码电路、非系统递归卷积码电路、系统非递归卷积码电路或非系统非递归卷积码电路。
5.一种基于极化码的级联纠错编译码系统,其特征在于,该系统包括以下模块:
信息序列预处理模块,用于通过对信息序列插入固定的比特序列,获得外编码器的输入序列
外编码器编码模块,用于通过对外编码器的输入序列进行编码,获得外码码字外编码器的码率为1;
外码码字映射模块,用于通过将所述外码码字的第一个比特至最后一个比特依次映射为极化码编码器的输入序列的第一个至最后一个比特,因此极化码编码器的输入序列也为
内编码器编码模块,用于通过对所述极化码编码器的输入序列进行极化码编码,获得级联码码字;
译码模块,用于采用联合的SCL译码算法进行译码,将外编码器输入序列与极化码编码器的输入序列进行联合判决,最终从外编码器输入序列的判决结果中得到信息序列的判决结果
所述译码模块包括以下单元:
第一预判单元,用于判断i是否小于等于N;若是,进入第二预判单元,若否,则进入获取译码结果单元;其中,N是指极化码码长,i是指当前译码第i个比特ui的索引序号,其初始值为1,取值从1到N的正整数;
第二预判单元,用于判断i是否属于集合A,若否,进入第一判决单元;若是,则进入第二判决单元;其中,集合A为外编码器的输入序列中信息比特位置序号集合;
第一判决单元,用于将当前每条路径上外编码器的输入序列中的固定比特si判决值设为已知的固定比特;将当前每条路径上极化码编码器的输入序列中比特ui的判决值设为并令i=i+1,返回第一预判单元;其中为外编码器输入序列的第j个比特sj的判决值;gj,i表示矩阵G的第j行第i列的元素,G为外编码器生成矩阵;
第二判决单元,用于:首先,统计当前路径数量L′,通过将当前每条路径在ui处取值0或1获得2L′条备选路径;并判断是否满足2L′≤L,若是,保留2L′条路径;若否,则保留L条度量值最大的路径,从而得到每条路径中ui的判决值其次,根据判决每条路径上外编码器的输入序列中信息比特si,si的判决值为最后,令i=i+1,返回第一预判单元;其中,2L′条路径的度量值分别为该路径在ui处取值0或1的概率或 为接收端接收向量;L为SCL译码算法的最大路径数量;
获取译码结果单元,用于从L条路径中输出路径度量值最大的一条路径上对应的外编码器输入序列的判决结果其中子序列即为译码的信息序列的判决结果。
6.根据权利要求5所述的一种基于极化码的级联纠错编译码系统,其特征在于,所述外编码器编码模块具体用于通过外编码器编码方程进行编码,其中,外码码字和外编码器的输入序列均为1×N行向量,G为外编码器生成矩阵,中任意一个比特ui(1≤i≤N)都只与中的子序列有关;生成矩阵G的特征为上三角矩阵,并且对于任意i∈A,该矩阵的元素gi,i等于1,其中,gi,i表示矩阵G的第i行第i列元素,集合A为外编码器的输入序列中信息比特位置序号集合
7.根据权利要求5或6所述的一种基于极化码的级联纠错编译码系统,其特征在于,所述外编码器为系统码编码器或非系统码编码器:为系统码编码器时,外编码器生成矩阵G的特征为,对于任意i∈A,该矩阵第i列的元素中仅gi,i等于1,第i列其它元素为0;为非系统码编码器时,外编码器生成矩阵G的特征为,存在i∈A,第i列的前i-1个元素gj,i(1≤j<i)中至少有1个元素为1,其中,gj,i表示矩阵G的第j行第i列的元素。
8.根据权利要求5或6所述的一种基于极化码的级联纠错编译码系统,其特征在于,所述外编码器的编码电路采用类系统循环码电路、类非系统循环码电路、系统递归卷积码电路、非系统递归卷积码电路、系统非递归卷积码电路或非系统非递归卷积码电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710043804.3A CN106888025B (zh) | 2017-01-19 | 2017-01-19 | 一种基于极化码的级联纠错编译码方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710043804.3A CN106888025B (zh) | 2017-01-19 | 2017-01-19 | 一种基于极化码的级联纠错编译码方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106888025A CN106888025A (zh) | 2017-06-23 |
CN106888025B true CN106888025B (zh) | 2018-03-20 |
Family
ID=59176695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710043804.3A Active CN106888025B (zh) | 2017-01-19 | 2017-01-19 | 一种基于极化码的级联纠错编译码方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106888025B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109981224A (zh) * | 2019-04-04 | 2019-07-05 | 西安电子科技大学 | 一种深空通信信道编译码系统及其方法 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958702B (zh) * | 2017-05-27 | 2021-01-15 | 华为技术有限公司 | 一种排序网络、排序方法及排序装置 |
CN109428672B (zh) * | 2017-08-25 | 2021-06-29 | 中国电信股份有限公司 | 信息编译码方法和装置、信息处理系统 |
CN108092742B (zh) * | 2017-12-17 | 2019-11-22 | 华中科技大学 | 一种基于极化码的通信方法 |
CN108092744B (zh) * | 2017-12-19 | 2020-10-23 | 福建师范大学福清分校 | 极化码码重分布的计算方法 |
CN108494523B (zh) * | 2018-01-31 | 2020-02-14 | 北京航空航天大学 | 一种Polar码的多CRC编码方法 |
US11239949B2 (en) * | 2018-02-23 | 2022-02-01 | Huawei Technologies Co., Ltd. | Apparatus and methods for polar code construction and coding |
CN108462560A (zh) * | 2018-03-26 | 2018-08-28 | 西安电子科技大学 | 一种用于极化码级联的编译码方法 |
CN108880569B (zh) * | 2018-07-24 | 2021-11-09 | 暨南大学 | 一种基于反馈分组马尔科夫叠加编码的速率兼容编码方法 |
CN109245853B (zh) * | 2018-08-06 | 2020-09-08 | 华中科技大学 | 一种基于极化码的免同步通信方法 |
CN109358978B (zh) * | 2018-08-22 | 2022-03-25 | 杭州电子科技大学 | 一种基于极化码和元数据信息的nand flash差错控制方法 |
CN110890894A (zh) * | 2018-09-07 | 2020-03-17 | 华为技术有限公司 | 级联编码的方法和装置 |
CN113196671B (zh) * | 2018-12-13 | 2023-10-13 | 华为技术有限公司 | 用于获得级联码结构的装置和方法及其计算机程序产品 |
WO2020122748A1 (en) * | 2018-12-13 | 2020-06-18 | Huawei Technologies Co., Ltd | Apparatus and method for obtaining concatenated code structures and computer program product therefor |
WO2020247508A1 (en) * | 2019-06-03 | 2020-12-10 | The Regents Of The University Of California | Convolutional precoding and decoding of polar codes |
CN112702141B (zh) * | 2019-10-23 | 2022-05-06 | 哈尔滨工业大学(深圳) | 可调的串行抵消列表极化码译码方法和装置 |
CN113472363B (zh) * | 2020-03-31 | 2024-04-26 | 华为技术有限公司 | 编码方法及装置 |
CN113381771A (zh) * | 2021-06-23 | 2021-09-10 | 华中科技大学 | 一种接收端多码字接收序列的极化码译码方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539393B (zh) * | 2015-01-07 | 2018-01-12 | 北京邮电大学 | 一种基于极化码的信源编码方法 |
CN105680883B (zh) * | 2015-12-23 | 2017-11-14 | 华中科技大学 | 一种极化码和多比特奇偶校验码级联的纠错编码方法 |
-
2017
- 2017-01-19 CN CN201710043804.3A patent/CN106888025B/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109981224A (zh) * | 2019-04-04 | 2019-07-05 | 西安电子科技大学 | 一种深空通信信道编译码系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106888025A (zh) | 2017-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106888025B (zh) | 一种基于极化码的级联纠错编译码方法和系统 | |
CN106452460B (zh) | 一种极化码与重复码级联的纠错编码方法 | |
CN105680883B (zh) | 一种极化码和多比特奇偶校验码级联的纠错编码方法 | |
CN105227189B (zh) | 分段crc辅助的极化码编译码方法 | |
CN107017892B (zh) | 一种校验级联极化码编码方法及系统 | |
CN107026656B (zh) | 一种基于扰动的CRC辅助中短码长Polar码有效译码方法 | |
CN101958720B (zh) | 缩短Turbo乘积码的编译码方法 | |
WO2017107761A1 (zh) | 一种极化码与重复码或多比特偶校验码级联的纠错编码方法 | |
CN106788456A (zh) | 一种极化码编译码方法 | |
CN106877884A (zh) | 一种减少译码路径分裂的极化码译码方法 | |
CN110380819A (zh) | 一种基于llr的分段翻转极化码译码方法和智能终端 | |
CN109936377A (zh) | 一种分段crc辅助的极化码编码和译码方法 | |
CN108566213A (zh) | 极化码的串行抵消列表比特翻转译码方法 | |
CN107248866A (zh) | 一种降低极化码译码时延的方法 | |
CN104025459A (zh) | 译码处理方法及译码器 | |
CN106936446A (zh) | 一种基于多进制ldpc码的高速译码器及其译码方法 | |
CN104242957B (zh) | 译码处理方法及译码器 | |
CN109981112A (zh) | 一种部分循环冗余校验辅助的排序统计译码方法 | |
CN108055044A (zh) | 一种基于ldpc码和极化码的级联系统 | |
CN101373978B (zh) | 一种Turbo码译码方法以及装置 | |
Liu et al. | Parallel concatenated systematic polar code based on soft successive cancellation list decoding | |
Piao et al. | Approaching the normal approximation of the finite blocklength capacity within 0.025 dB by short polar codes | |
CN110830167A (zh) | 基于多比特翻转的极化码Fast-SSC译码算法 | |
CN105610550B (zh) | 一种用于电力线载波通信的Viterbi译码方法 | |
CN111934693B (zh) | 一种基于分段双crc校验的极化码编译码方法 |
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 |