一种基于比特翻转的极化码置信传播译码方法与流程

文档序号:17817004发布日期:2019-06-05 21:50阅读:224来源:国知局
一种基于比特翻转的极化码置信传播译码方法与流程

本发明涉及无线通信中的信道编码技术领域,特别是一种基于比特翻转的极化码置信传播译码方法。



背景技术:

当码字长度为无穷大时,极化码在串行抵消(successivecancellation,sc)译码方法下的传输速率可以达到二进制输入无记忆对称信道的信道容量。然而,极化码的sc译码方法是序贯译码,必须逐一估计信息比特,译码时延较大。极化码的另一种译码方法是置信传播(beliefpropagation,bp)译码。虽然极化码在bp译码下的传输速率无法达到信道容量,但是bp译码可以并行迭代计算,译码时延显著低于sc译码方法且对码字长度不敏感,因此bp译码适用于对时延敏感的应用场景。但是,极化码传统bp译码方法的误组率性能较差,需要进行改进。现有的基于cs的译码方法存在的试探性译码数量呈指数增长的问题。



技术实现要素:

本发明所要解决的技术问题是克服现有技术的不足而提供一种基于比特翻转的极化码置信传播译码方法,本发明中基于比特翻转的极化码置信传播译码方法改善了极化码传统bp译码方法的误组率性能。

本发明为解决上述技术问题采用以下技术方案:

根据本发明提出的一种基于比特翻转的极化码置信传播译码方法,包括第一步和第二步;具体如下:

第一步、构造ω阶关键集合cs-ω;具体如下:

步骤(1)、构造关键集合cs:关键集合cs的元素由极化码所有码率1节点中的第一个信息比特的索引构成:

其中,m表示极化码中码率1节点的数量且也是cs中元素的数量,ri表示第i个码率1节点,ri(1)表示第i个码率1节点中第一个信息比特的索引,符号u表示集合的并集,csi指cs中的第i个元素,1≤i≤m;获得cs后,转入步骤(2);

步骤(2)、将cs中的元素排序:cs={cs1,...,csm}中每个元素都对应一个信息比特,cs对应的信息比特的集合是其中,是csi对应的信息比特;在极化码中,每一个信息比特u都对应一个错误概率pe(u),则集合u对应的错误概率集合记为表示信息比特的错误概率,将cs中的元素按如下规则排序:

其中,cs0表示经过排序后的关键集合,表示cs中的第ki个元素,ki表示由排序引起的索引的变化,表示信息比特的错误概率;获得cs0后,转入步骤(3);

步骤(3)、初始化索引变量p=1,q=1;初始化ω阶关键集合cs-ω为一个取值为全零的具有m行ω列的矩阵,然后转入步骤(4);

步骤(4)、如果p≤m,令cs-ωp,q=cs0(p),且q=q+1;其中cs-ωp,q表示cs-ω中第p行第q列的元素,cs0(p)表示cs0中的第p个元素,然后转入步骤(5);如果p=m+1,则cs-ω构造完成,不再执行后续步骤,本流程结束;

步骤(5)、如果q≤ω,则将极化码中索引号从1到cs-ωp,q的信息比特均视为冻结比特,然后重新利用式(1)得到一个新的关键集合,记为csnew;将csnew中的元素按如下规则排序:

其中,csnew,0表示排序后的csnew,mnew表示csnew中元素的数量,csnew(kl)表示csnew中的第kl个元素,1≤l≤mnew,表示信息比特对应的错误概率,表示csnew(kl)对应的信息比特;然后令cs-ωp,q=csnew(k1),转入步骤(6);如果q=ω+1,令p=p+1,q=1,然后转入步骤(4);

步骤(6)、令q=q+1,转入步骤(5);

第二步、通过构造cs-ω,对极化码中位于cs-ω内的信息比特进行翻转,比特翻转是将被翻转信息比特的先验对数似然比设置为无穷大,以试探性译码的方式纠正bp译码器中的错误,进行置信传播译码。

作为本发明所述的一种基于比特翻转的极化码置信传播译码方法进一步优化方案,第二步具体过程如下:

步骤1、对接收信号进行极化码的bp译码,其中n是极化码的长度,ys是第s个码字比特的接收信号,1≤s≤n;转入步骤2;

步骤2、记为极化码的bp译码器的输出结果,其中是指对信息比特us的估计,1≤s≤n;如果满足循环冗余校验,则bp译码器译码成功,整个译码流程结束,不再执行后续步骤;如果不满足循环冗余校验,则bp译码器译码失败,进行试探性比特翻转译码,转入步骤3;

步骤3、初始化t=1,用t对试探性比特翻转译码的次数进行计数,转入步骤4;

步骤4、如果t≤m,转入步骤5;如果t=m+1,基于比特翻转的bp译码失败,译码流程结束,不再执行后续步骤;

步骤5、取出cs-ω中的第t行,cs-ω的第t行中的ω个元素构成的集合记为{j1,j2,...,jω},其中jf是第f个被翻转的信息比特的索引,f=1,2,...,ω,{j1,j2,...,jω}代表当前要被翻转的ω个信息比特的索引;转入步骤6;

步骤6、初始化z=0,z用来记录对当前比特翻转索引{j1,j2,...,jω}所进行的比特翻转译码的次数;转入步骤7;

步骤7、如果z≤2ω-1,将z展开为其对应的ω位二进制数(z1,z2,...,zω),其中zf的取值为0或1,f=1,2,...,ω,z1是该二进制展开中的最高位,转入步骤8;如果z=2ω,令t=t+1,转入步骤4;

步骤8、记为被翻转信息比特的先验对数似然比,中的每个元素lf按下式计算:

lf=(1-2zf)×∞,f=1,2,...,ω(4)

其中∞表示无穷,系数1-2zf表示无穷的符号,即如果zf=0,lf取正无穷;如果zf=1,lf取负无穷;

在极化码bp译码中,r是一个大小为n×(1+log2n)的矩阵,r的第一列记为r,r用于存储信息比特的先验对数似然比;得到后,r中位于当前比特翻转索引{j1,j2,...,jω}上的元素按照赋值:

其中表示r中第jf个元素,r中其余元素的值仍按bp译码方法赋值;转入步骤9;

步骤9、使用按照式(5)赋值后的矩阵r进行置信传播译码,得到译码结果表示在cs-ω的第t行指示的比特翻转索引{j1,j2,...,jω}上的第z次试探性译码的译码结果,中的第s个元素,1≤s≤n;如果满足循环冗余校验,则比特翻转译码成功,作为译码器的输出,译码流程结束;如果未通过循环冗余校验,则当前比特翻转译码失败,令z=z+1,转入步骤7。

作为本发明所述的一种基于比特翻转的极化码置信传播译码方法进一步优化方案,步骤(2)中的通过高斯近似方法计算。

作为本发明所述的一种基于比特翻转的极化码置信传播译码方法进一步优化方案,极化码的构造方法为高斯近似。

作为本发明所述的一种基于比特翻转的极化码置信传播译码方法进一步优化方案,ω为关键集合阶数。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:

(1)本发明中基于比特翻转的极化码置信传播译码方法,能够在传统极化码bp译码器译码失败的情况下,通过构造ω阶关键集合识别出不可靠的信息比特判决,置不可靠信息比特的先验对数似然比为无穷值,以试探性译码的方式纠正传统bp译码器中的错误,提高了极化码在bp译码方法下的误组率性能;

(2)在中高信噪比区间内,相比于传统的极化码bp译码器,本发明中的方法能够将误组率改善两个数量级,同时本发明中的译码方法的平均译码时延与传统bp译码方法相似,这说明本发明中的方法能够以较小的译码时延为代价获取误码率性能的增益。

附图说明

图1是基于比特翻转的极化码置信传播译码方法流程图。

图2是关键集合示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。

本发明中基于比特翻转的极化码置信传播译码方法,使用的码字是循环冗余校验(cylicredundancycheck,crc)码和极化码形成的级联码。本发明中提出的ω阶关键集合(criticalsetwithorderω,cs-ω),是在现有的关键集合(criticalset,cs)的概念上进行变换得到的,避免了现有的基于cs的译码方法存在的试探性译码数量呈指数增长的问题。本发明中的方法在传统bp译码器的译码结果未通过crc校验的情况下,通过构造cs-ω,对极化码中位于cs-ω内的信息比特进行翻转(本发明中的比特翻转指的是将被翻转信息比特的先验对数似然比设置为无穷大),能够纠正传统bp译码器中的错误,从而提高bp译码器的误组率性能。

本发明中基于比特翻转的极化码置信传播译码方法,以码长n=32,信息比特数k=8,循环冗余校验码长度r=8,关键集合阶数ω=3为例进行说明。本例中的极化码的构造方法为高斯近似,码字构造信噪比为2.5分贝,循环冗余校验码的生成多项式为g(x)=x8+x6+x3+x2+1。

如图1所示,包括如下步骤:

第一步:构造ω阶关键集合cs-ω(本例中ω=3)。本步骤包括如下流程:

(1)构造关键集合cs(由于cs是已有的概念,本步骤只简述其构造方法)。关键集合cs的元素由极化码所有码率1节点中的第一个信息比特的索引构成:

在上式中m表示极化码中码率1节点的数量(m也是cs中元素的数量),ri表示第i个码率1节点,ri(1)表示第i个码率1节点中第一个信息比特的索引,符号u表示集合的并集,csi,1≤i≤m指cs中的第i个元素。本例中的cs如图2所示,图2中黑色节点表示其所有叶节点都是信息比特,白色节点表示其所有叶节点都是冻结比特,灰色节点表示其叶节点中既包括信息比特也包括冻结比特,图2中有cs={12,14,15,20,22,23,25},m=7。获得cs后,转入步骤(2)。

(2)将cs中的元素排序。cs={cs1,...,csm}中每个元素都对应一个信息比特,cs对应的信息比特的集合是其中1≤i≤m表示csi对应的信息比特。在极化码中,每一个信息比特u都对应一个错误概率pe(u),则集合u对应的错误概率集合记为其中1≤i≤m表示信息比特的错误概率,可以通过高斯近似方法计算。将cs中的元素按如下规则排序:

上式中cs0表示经过排序后的关键集合,表示cs中的第ki个元素,ki表示排序引起的索引变化,表示信息比特的错误率。本例中pe={0.168,0.125,0.092,0.106,0.071,0.049,0.189},cs0={25,12,14,20,15,22,23}。获得cs0后,转入步骤(3)。

(3)初始化。初始化索引变量p=1,q=1。初始化cs-ω为一个取值为全零的具有m行ω列的矩阵(本例中m=7,ω=3),然后转入步骤(4)。

(4)如果p≤m,令cs-ωp,q=cs0(p),且q=q+1。其中cs-ωp,q表示cs-ω中第p行第q列的元素,cs0(p)表示cs0中的第p个元素,然后转入步骤(5)。如果p=m+1,则cs-ω构造完成,本流程结束,不再执行后续步骤。

(5)如果q≤ω,则将极化码中索引号从1到cs-ωp,q的信息比特均视为冻结比特,然后重新利用式(1)得到一个新的关键集合,记为csnew。将csnew中的元素按如下规则排序:

其中csnew,0表示排序后的csnew,mnew表示csnew中元素的数量,csnew(kl)表示csnew中的第kl个元素,1≤l≤mnew,表示信息比特对应的错误概率,表示csnew(kl)对应的信息比特。然后令cs-ωp,q=csnew(k1),转入步骤(6)。在本例中,当p=1,q=1时,有csnew={26,27,29},csnew,0={26,27,29},mnew=3。如果q=ω+1,令p=p+1,q=1,然后转入步骤(4)。

(6)令q=q+1,转入步骤(5)。

本例中的cs-ω是如下的7行3列矩阵:

第二步:进行基于比特翻转的极化码置信传播译码。本步骤包括如下流程:

(1)对接收信号进行极化码bp译码,其中n是极化码的长度,本例中n=32,ys,1≤s≤n是第s个码字比特的接收信号。转入步骤(2)。

(2)记为极化码的bp译码器的输出结果,其中1≤s≤n是指对信息比特us的估计。如果满足循环冗余校验,则bp译码器译码成功,整个译码流程结束,不再执行后续步骤;如果不满足循环冗余校验,则bp译码器译码失败,需要进行试探性比特翻转译码,转入步骤(3)。

(3)初始化t=1,用t对试探性比特翻转译码的次数进行计数,转入步骤(4)。

(4)如果t≤m(m是cs中元素的数量,本例中m=7),转入步骤(5);如果t=m+1,基于比特翻转的bp译码失败,译码流程结束,不再执行后续步骤。

(5)取出cs-ω中的第t行。cs-ω的第t行中的ω个元素构成的集合记为{j1,j2,...,jω},jf,f=1,2,...,ω表示第f个信息比特翻转索引,{j1,j2,...,jω}是当前需要被翻转的ω个信息比特的索引。转入步骤(6)。

(6)初始化z=0,z用来记录对当前比特翻转索引{j1,j2,...,jω}所进行的比特翻转译码的次数。转入步骤(7)。

(7)如果z≤2ω-1,将z展开为其对应的ω位二进制数(z1,z2,...,zω),其中zf,f=1,2,...ω,的取值为0或1,z1是该二进制展开中的最高位,转入步骤(8);如果z=2ω,令t=t+1,转入步骤(4)。

(8)记为被翻转信息比特的先验对数似然比。中的每个元素lf按下式计算:

lf=(1-2zf)×∞,f=1,2,...,ω.(5)

其中∞表示无穷,系数1-2zf表示无穷的符号,即如果zf=0,lf取正无穷;如果zf=1,lf取负无穷。

在极化码bp译码中,r是一个大小为n×(1+log2n)的矩阵,其中n是极化码的长度,在本例中n=32。r的第一列记为r,r用于存储信息比特的先验对数似然比。得到后,r中位于当前比特翻转索引{j1,j2,...,jω}上的元素按照赋值:

其中表示r中第jf个元素,r中其余元素的值仍按bp译码方法赋值。

转入步骤(9)。

(9)使用按照式(6)赋值后的矩阵r进行置信传播译码,得到译码结果表示在cs-ω的第t行指示的比特翻转索引{j1,j2,...,jω}上的第z次试探性译码的译码结果,中的第s个元素。如果满足循环冗余校验,则比特翻转译码成功,作为译码器的输出,译码流程结束;如果未通过循环冗余校验,则当前比特翻转译码失败,令z=z+1,转入步骤(7)。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1