一种记忆信道下利用冻结集的码字最优分布的polar码构造方法与流程

文档序号:11929205阅读:331来源:国知局
一种记忆信道下利用冻结集的码字最优分布的polar码构造方法与流程

本发明属于通信信道编码技术领域,具体涉及一种记忆信道下利用冻结集实现码字最优分布的polar码构造方法。



背景技术:

Polar Codes,即极化码,是2008年由E.Ar1kan提出的一种新型信道编码。极化码基于信道极化(Channel Polarization)进行设计,是第一种能够通过严格的数学方法证明达到信道容量的构造性编码方案。

极化码具有非常规则的构造结构,在提出时就被证明可以达到B-DMC的容量,同时该码具有编译码复杂度低、易于与其它通信技术进行联合设计优化等优点,使得极化码一经提出就受到工业界和学术领域广泛的关注和研究。然而极化码在目前的大多数应用场景中,多是基于无记忆信道的情况下,其信道容量可达。而在实际的通信系统中,由于通信环境的复杂性和信道带宽的限制,在信息传输的过程中,信道难免会出现记忆特性,在记忆信道下,如何构造极化码使其也能够实现信道容量可达仍有待研究。

本领域内公知,Polar码的极化构造使得polar码除B-DMCs外还可以达到多种信道的容量,有理由期待polar码可以用相似的结构在记忆信道下达到记忆信道容量。这样就可以直接针对记忆信道构造编码。

指出理论上有限状态信道W在与非记忆信道同样的递归结构下可以极化,这说明polar码的极化结构对于记忆信道确实有效。但要想达到记忆信道下的信道容量,输出码字需要生成最优序列,使得输入序列和输出序列之间的互信息最大。通常情况下,传统polar码的输入是i.i.d.的均匀分布,在记忆信道该序列不是最优的。为了逼近或达到记忆信道容量,编码输入需要满足能够使输出码字生成最优序列的特定分布。例如,常用的ISI(符号间干扰)信道,最优分布是用Markov(马尔可夫)过程近似的。

综上所述,原始的polar码极化可以应用到有限状态记忆信道,但要达到信道容量,需要生成最优序列,对于polar码一般输入都是满足i.i.d.的均匀分布,在记忆信道下,该分布产生的序列不是最优的。因此,当输入信息为i.i.d.的均匀分布时,需求一种码字序列满足最优分布的码字构造方法。



技术实现要素:

基于上述需求,本发明提出一种能够达到记忆信道容量的码字的构造方法,具体是指一种记忆信道下利用冻结集的码字最优分布的polar码构造方法,实现对输入符合均匀分布的信息序列进行编码构造,使得输出码字符合最优概率分布,从而实现信道容量可达。

本发明的记忆信道下利用冻结集的码字最优分布的polar码构造方法,在进行极化编码之前,根据下面步骤1~3获得编码输入序列,再根据编码输入序列计算输出码字序列。

步骤1:确定编码输入序列的比特位ui,i为比特位的索引值,判断i是否属于冻结集,若是,转步骤2执行;否则,将输入信息序列中当前待输入比特设置为ui的值,然后转至步骤3执行;i为正整数;

步骤2:计算冻结位ui关于编码输入序列已知位置的条件概率表示u1,u2,...,ui-1序列;为ui从随机数列中取出随机数,根据条件概率设置的取值范围,由随机数所属的取值范围,设置ui的值;

步骤3:重复上述步骤1至步骤2,直到编码输入序列的N个位置均被赋值;N为正整数。

本发明的优点与积极效果在于:(1)本发明不改变原有规则的编码结构,仅通过对冻结的比特位设置不同的取值,从而使输入序列符合特定的分布,实现该码字构造过程,因此本发明方法码字构造过程是固定长到固定长的构造,保持了原始编码结构;(2)在记忆信道下,本发明给出的码字构造方法通过软件方法来实现,不改变原始编码结构,便于实际应用。

附图说明

图1是本发明所提出的polar码的输入序列计算过程示意图;

图2是本发明所提出的polar码码字构造步骤的流程图。

具体实施方式

下面将结合附图和实施例对本发明作进一步的详细说明。

本发明提供了一种用于记忆信道下polar码的码字构造方法,输入信息序列满足均匀分布,通过利用冻结集位置,将冻结比特设置为特定的概率分布,使得输出的码字概率分布满足特定的条件,从而实现记忆信道容量可达。

本发明在码字构造过程中,通过对冻结集设置不同的取值来使得输入序列满足特定的概率分布,以获得输入序列与输出序列的最大互信息,并渐近达到信道容量。对于传统的polar码的码字构造方法是直接将信息比特送入信息位,将冻结集位置设置为固定的比特值,得到编码的输入序列,然后通过生成矩阵,得到编码码字。该码字构造方法是基于无记忆信道的,对于信息输入呈现i.i.d的均匀分布时,信道容量可达。但信道如果是记忆信道时,输入信息仍然为一般情况下的独立均匀分布时,采用原来的码字构造方法,只能得到最大互信息,并不能达到信道容量,为了在记忆信道下也能逼近或渐近达到信道容量,编码输入序列需满足特定分布,因此,本发明的码字构造方法就是实现当编码输入序列满足i.i.d的均匀分布时,码字输出序列满足非均匀的特定分布,实现过程如图1,从而实现信道容量可达。

输入信息为K个比特,设待输入信息序列为{v1,v2,...,vK},vj(j=1,2,…K)表示输入信息的第j个比特值。编码输入序列为{u1,u2,...,uN},ui表示编码输入的第i个比特位,i为比特位的索引值,N为编码输入序列的比特总数。输出码字为N个比特,输出码字序列记为{x1,x2,...,xN},xi表示输出码字的第i个比特值,i=1,2,…N。信息位的索引集表示为其中δN表示无穷小量,Z(.)表示Bhattacharyya参数。冻结集记为Ic,Ic表示索引集I的补集。冻结位的条件概率记为表示u1,u2,u3,...,ui-1序列,表示编码输入序列中ui关于的条件概率,随机数序列记为R,记忆信道的信道状态记为S。字符Ui和分别为ui和的向量表示,小写字母代表是标量,是具体实例。Y1N表示接收端收到的信息序列。

本发明实现利用冻结集实现码字最优分布的polar码构造方法,主要流程如图2所示,下面说明各实现步骤。

步骤1:确定编码输入序列的N个比特值。依次取编码输入序列的一个比特位ui,判断索引值i是否属于冻结集,如果是,转步骤2执行,否则,取待输入信息序列中当前待输入的比特值vj作为ui的值,可表示为ui=vj,然后转至步骤4执行。初始时,i取值为1。

步骤2:设置冻结位ui的值。

步骤2.1,计算冻结位ui关于已知位置的条件概率

如果i属于冻结集,则计算输入序列中ui关于的条件概率因此,这里需要分别计算ui=0和ui=1的值,即和根据以下条件,

可以将条件概率转化为联合概率的情况来求解:

表示ui=0时u1,u2,...,ui的联合概率,表示ui=1时u1,u2,...,ui的联合概率。因此可以通过计算关于ui的联合概率来求解

由于在记忆信道下,采用的是SC网格译码算法,因此,在计算关于ui联合概率时需要加入状态变量s。设si表示信道在第i个时刻的状态变量,s0表示信道的初始状态,sN表示信道的终止状态。信道在第i时刻输入比特ui,对应信道状态记为si。Si为标量si的向量表示。

其中,表示u1,u2,...,ui序列,表示输入序列的联合概率,表示输入序列关于信道初始状态的条件概率,表示初始状态s0的先验概率。

这里需要根据初始状态和终止状态的概率进行计算,通常情况下,系统的初始状态是可以确定的,而且只有一个可能的取值。计算中加入终止状态也是为了递归计算的方便。式中

中间参量的定义为:

其中,χN-i表示χ的N-i维向量空间,参数χ∈{0,1}。表示ui+1,ui+2,...,uN序列,表示u1,u2,...,uN序列。表示在加入终止状态后编码输入序列u1,u2,...,ui关于初始状态s0的条件概率。表示在加入终止状态后编码输入序列关于初始状态s0的条件概率。

根据SC的递归结构,的计算也可用递归计算来求解,即:

初始值即给定当前状态si-1时,输出码字xi和下一个状态si的联合概率,这个概率对应了信道的最优分布。

根据下面两个公式(5)和(6)更新,在更新时,由于涉及奇偶和分解问题,将比特总数N表示为2M,即N=2M,M为正整数。

其中,表示异或运算,表示输入序列u1,u2,...,u2i,表示序列中索引为偶数的项,表示序列中索引为奇数的项。

步骤2.2:构造冻结集位的比特信息。根据当前ui在冻结集位置的索引值,从随机数列中取出对应索引位置的随机数r,然后结合步骤1中计算得出的关于ui=0和ui=1的条件概率的结果,设置ui的比特值。随机数列由随机数生成器提前生成,取值范围是1到m的整数,该序列长度与冻结集的序列长度相同。

采用如下公式随机数的取值范围是1到m之间的任意整数,如果当前随机数则ui=0;否则则ui=1。

步骤3:重复步骤1至步骤2,直到当前编码输入序列的N个位置均被赋值。

步骤4:根据生成矩阵G计算得到符合特定分布的输出码字序列即该实现步骤具体流程如图2。

实施举例:输入序列的码长N=8的polar码码字构造实施例;

本实例中信道传输的码率Ra=1/2,冻结集长度为|Ic|=4,信息位长度|I|=4,待传输的信息为{v1,v2,v3,v4}。用蒙特卡罗方法得到冻结集Ic={1,2,3,5}和信息集I={4,6,7,8}。在记忆信道下,本实施例的信道有两种状态,记为s={0,1},初始状态设为s0=0,输出码字的最优分布为:

(px,s′|s″(0,0|0),px,s′|s″(0,0|1),px,s′|s″(1,1|0),px,s′|s″(1,1|1))=(p1,p2,p3,p4)

并且0≤p1,p2,p3,p4≤1,p1+p2+p3+p4=1;此处,x为输入信息比特位,s′表示信道的下一个状态,s″表示信道的当前状态。设定编码码字x和信道的下一个状态s′相等,所以px,s′|s″(0,1|0),px,s′|s″(0,1|1),px,s′|s″(1,0|0),px,s′|s″(1,0|1)这四种情况不存在,可以赋值为0;随机数列r={a,b,c,d};因为冻结集长度为4,所以随机数列长度也为4。

按序从u1到u8赋值:

对于u1,由于序列索引1属于冻结集。因此,首先需要分别计算和下面是具体计算过程:

根据公式(5)和(6)递归计算如下:

其中u1′,u2′,u1″,u2″表示编码过程的中间变量,u1,u2,u3,u4,u5,u6,u7,u8表示编码的输入序列,u2′=u3+u4,u1″=u1+u2+u3+u4,u2″=u5+u6+u7+u8

上面给出了部分递归计算过程,其它递归计算过程也根据公式(5)和(6)计算。

按照上述计算过程,计算出和同时,信道的状态有两种取值且都是随机的,所以所以可以被计算出来。

按照同样的计算过程,的值也可以确定。

由于u1的条件概率和联合概率形式相同,所以至此和计算结束。然后,取随机数列R的第一个值a,如果则u1=0;否则u1=1。

对于u2,由于序列索引2属于冻结集,因此,首先需要分别计算和根据公式(2)将条件概率转换为联合概率来求解,计算联合概率和

这里u1的取值就为上面计算出来的结果,然后按照相同的计算过程就可计算出和进而得到和的结果;然后,取随机数列的第二个值b,如果则u2=0;否则u2=1。

对于u3,由于序列索引3属于冻结集,因此,首先需要分别计算和按照同样的计算过程,可以转化为求和同样利用公式(5)和(6)所示的递推公式,计算得到进而得到和然后,取随机数列的第三个值c,如果则u3=0;否则u3=1。

对于u4,由于序列索引4属于信息集,则直接赋值u4=v1

同理u5—u8按照上述信息集和冻结集的类似计算过程完成赋值。

利用本发明方法得到的编码输入序列满足给定的特定分布,同时由于polar码编码的生成矩阵是确定的,因此,输出序列的码字也就符合特定分布,这样在记忆信道下,就可以逼近或渐近达到信道容量。

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