一种基于高斯近似阈值判断的极化码BP译码方法转让专利

申请号 : CN201811417331.X

文献号 : CN109257148B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 费泽松王璐孙策

申请人 : 北京理工大学

摘要 :

本发明涉及一种基于高斯近似阈值判断的极化码BP译码方法,属于信道编译码技术领域。本发明在传输过程中添加CRC校验模块,在接收端依据高斯近似的原理为各个比特节点设定信息值判断阈值。在每次迭代的过程,通过将各个比特节点的信息值与所对应的判定阈值进行比较,逐步筛选出超过阈值的比特节点并停止更新,未超过阈值的比特节点信息值则继续更新。在每一次迭代结束后,对译码结果进行判定,并进行CRC校验,若通过校验则停止迭代,否则继续迭代直到达到最大迭代次数。本发明在保证译码性能的基础上,降低了译码的计算复杂度,节省了计算资源。

权利要求 :

1.一种基于高斯近似阈值判断的极化码BP译码方法,其特征在于:包括以下步骤:步骤一、发送端对信息比特序列u0,u1,...,uK-1进行CRC校验,得到序列u0′,u1′,...,uK′-1′,再对序列u0′,u1′,...,uK′-1′进行polar编码,得到polar编码后的序列,记为x0,x1,...,xN-1;

polar编码基于X=U'G;X=x0,x1,...,xN-1;U'=u0′,u1′,...,uK′-1′,G为生成矩阵;

步骤二、BP译码基于因子图对接收端解调得到的序列y0,y1,...,yN-1进行译码初始化,具体包括如下子步骤:步骤2.A将最左侧比特节点的信息值设为 并初始化为(1)式;

其中,信息值是指对数似然比值,英文全称为Log Likelihood Ratio,缩写为LLR;

其中,R代表译码过程中存在两类信息中“从左向右传递的信息”,即右信息; 的上标

0表示第0次迭代,下标左边的0表示因子图中第0个状态,右边j表示因子图中第j个比特节点;A表示信息比特的集合;AC表示冻结比特的集合;

步骤2.B将最右侧比特节点的信息值设为 代表信道传递来的消息,初始化为(2)式;

其中,L代表译码过程中存在两类信息中“从右向左传递的信息”,即左信息; 中的上标0表示第0次迭代,下标左边的S表示因子图中第S个状态,右边j表示因子图中第j个比特节点;ln是以e为底的对数;P(yj|xj=0)表示接收端第j个比特节点yj正确判为0的概率;P(yj|xj=1)表示接收端第j个比特节点yj正确判为1的概率;

步骤2.C将因子图中的其余比特节点的信息值初始化为0;

步骤三、为各个比特节点设定信息值的判定阈值Ti,j和最大迭代次数Iter,又具体包括如下子步骤:步骤3.A因子图中与加性校验节点相连的比特节点,其判定阈值的设定基于(3)式递归得到;

其中,下标左侧的数字表示因子图中的状态数,即i表示第i个状态,i+1表示第i+1个状i i态;下标右侧的数字表示因子图中的比特节点数,即j表示第j个比特节点,j+2 表示第j+2个比特节点;

用于迭代的初始阈值为步骤二中所设定的初始化信息值;

函数定义为(4)式;

步骤3.B因子图中与直接相连性校验节点相连的比特节点,其判定阈值的设定基于(5)式进行递归得到;

其中,下标左侧的数字表示因子图中的状态数,即i表示第i个状态,i+1表示第i+1个状态;下标右侧的数字表示因子图中的比特节点数,即j表示第j个比特节点,j+2i表示第j+2i个比特节点;

步骤四、从最右端比特节点向左传递信息值,具体为:

在传递的过程中,将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,按照(6)式进行信息值传递,否则依据(7)式向左更新并传递各比特节点的信息值;

其中,i表示因子图中第i个状态,j表示因子图中第j个比特节点,t表示第t次迭代,g(x,y)=2tanh-1(tanh(x/2)tanh(y/2)),可通过最小和算法将计算简化为:g(x,y)≈0.9sign(x)sign(y)min(|x|,|y|);

步骤五、从最左端比特节点向右传递信息值,具体为:

将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,则按照(6)式进行信息值传递;否则依据(8)式向右更新并传递各比特节点的信息值;

步骤六、从最右端比特节点向左传递信息值,具体为:

将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,则按照(6)式进行信息值传递,否则依据(7)式向左更新并传递各比特节点的信息值;

步骤七、约定信息值从最左端传递到最右端,再从最右端传递到最左端为一次迭代过程,即每完成一次迭代,对应着步骤五和步骤六执行一遍;每执行一次迭代,根据(9)式对最左侧的各比特节点进行译码判定;

表示对因子图中第j个比特节点的译码结果; 中的Iter代表最大迭代次数;

步骤八、判断当前迭代次数是否达到最大迭代次数Iter,如果达到最大迭代次数Iter,则跳至步骤十,否则跳至步骤九;

步骤九、对译码结果进行CRC校验,如果通过校验则终止迭代过程,跳至步骤十;否则跳至步骤五,继续进行下一次迭代过程;

步骤十、输出译码结果。

2.根据权利要求1所述的一种基于高斯近似阈值判断的极化码BP译码方法,其特征在于:步骤三中,判定阈值Ti,j的设定基于高斯近似算法。

3.根据权利要求1所述的一种基于高斯近似阈值判断的极化码BP译码方法,其特征在于:步骤一中,CRC校验采用24比特校验。

4.根据权利要求1所述的一种基于高斯近似阈值判断的极化码BP译码方法,其特征在于:各个比特节点的信息值依据步骤五和步骤六进行往复传递,也即译码过程为各个比特节点的信息值在因子图中相邻的状态之间不断往返传递,即不断重复步骤五和步骤六的过程。

说明书 :

一种基于高斯近似阈值判断的极化码BP译码方法

技术领域

[0001] 本发明涉及一种基于高斯近似阈值判断的极化码BP译码方法,属于信道编译码技术领域。

背景技术

[0002] 第五代移动通信系统(the fifth generation communication system,5G)是为了应对数据流量和设备连接数剧增、超低时延等的需求而产生的。要想实现这些指标需求,5G必须在多方面技术上有所突破。由于无线信道存在干扰和衰落,信号在传输的过程中可能会出错,信道编码技术通过增加信息冗余量来抵抗并纠正恶劣信道带来的错误。高效的编译码方案可以减少系统的业务开销,增加网络的覆盖率和数据传输的可靠性,改善频谱效率。构造可达或逼近系统信道容量的信道编码算法,降低译码算法的复杂度,一直是信道编译码技术中研究的目标。
[0003] 信道编码的发展经历了从2G系统的卷积码到3G、4G系统的Turbo码,不断演进发展的信道编码技术为高效可靠的通信链路提供了有效保证。由于5G对性能指标有着很高的要求,之前的信道编码技术不能再满足要求。国际无线标准化组织(the 3rd Generation Partnership Project,3GPP)确定了5G业务信道的信道编码方案为低密度奇偶校验(low-density parity-check, LDPC)码,控制信道的信道编码方案为极化码(polar)。其中极化码是Erdal Arikan于2007 年首次提出的,它是目前唯一可理论证明达到香农极限的编码方式,其线性复杂度的编译码能力非常实用。
[0004] 极化码的编码基于信道极化现象,通过将独立同性质的信道合并成一个信道,再根据转移概率拆分为相互独立的极化信道,使得各信道的容量呈现极化分布的状态。容量较高的极化信道上传输信息比特,容量较低的极化信道上传输收发双发均已知的冻结比特。
[0005] 对于极化码的译码算法,Arikan在其论文中给出了基于递归结构的串行消除(Successive Cancellation,SC)译码算法,其译码复杂度低,但各个信道传输比特的译码之间相互有关联,会造成错误传递。在后续研究中出现了对SC算法的改进,包括串行消除列表(Successive Cancellation List,SCL)译码算法、CRC辅助的串行消除列表(CRC Aided Successive Cancellation List,CA-SCL)译码算法,均提升了性能。
[0006] SC译码算法及其改进的译码算法具有较好的性能和较低的译码复杂度,但是其译码时延较高。基于此对极化码译码的研究又出现了置信传播(Belief Propagation,BP)算法,其并行的译码结构使得译码延时很低,其大量的迭代次数使得译码过程的计算复杂度高,实现难度较大。

发明内容

[0007] 本发明的目的在于针对现有极化码BP译码算法存在复杂度高的技术缺陷,提出了一种基于高斯近似阈值判断的极化码BP译码方法,在保证译码性能的前提下,降低了BP译码的计算复杂度。
[0008] 本发明的核心思想是:在编码过程中添加CRC校验比特,译码端基于高斯近似设定各比特节点信息值的阈值,在每次迭代的过程中,将各比特节点的信息值与阈值比较,超过阈值则停止更新信息值,否则继续更新;每次迭代后对译码判定结果进行CRC校验,通过则可提前终止迭代,否则继续迭代直到达到最大迭代次数。
[0009] 其中,信息值是指对数似然比值,英文全称为Log Likelihood Ratio,缩写为LLR;
[0010] 规定发送端信息比特序列为u0,u1,...,uK-1;添加CRC校验码得到的序列为u0′,u1′,...,uK′-1′;对u0′,u1′,...,uK′-1′进行polar编码后得到的序列为x0,x1,...,xN-1;接收端解调得到的序列为 y0,y1,...,yN-1;在译码过程中存在两类信息,从左向右传递的信息,即右信息Ri,j;从右向左传递的信息,即左信息Li,j;信息值的判定阈值为Ti,j;译码迭代的最大次数为Iter;
[0011] 一种基于高斯近似阈值判断的极化码BP译码方法,具体包括以下步骤:
[0012] 步骤一、发送端对信息比特序列u0,u1,...,uK-1进行CRC校验,得到序列u0′,u1′,...,uK′-1′,再对序列u0′,u1′,...,uK′-1′进行polar编码,得到polar编码后的序列,记为x0,x1,...,xN-1;
[0013] 其中,CRC校验码采用24比特校验码;
[0014] polar编码基于X=U'G;X=x0,x1,...,xN-1;U'=u0′,u1′,...,uK′-1′,G为生成矩阵;
[0015] 步骤二、BP译码基于因子图对接收端解调得到的序列y0,y1,...,yN-1进行译码初始化,具体包括如下子步骤:
[0016] 步骤2.A将最左侧比特节点的信息值设为 并初始化为(1)式;
[0017]
[0018] 其中,R代表译码过程中存在两类信息中“从左向右传递的信息”,即右信息; 的上标0表示第0次迭代,下标左边的0表示因子图中第0个状态,右边j表示因子图中第j个比特节点;A表示信息比特的集合;AC表示冻结比特的集合;
[0019] 步骤2.B将最右侧比特节点的信息值设为 代表信道传递来的消息,初始化为(2) 式;
[0020]
[0021] 其中,L代表译码过程中存在两类信息中“从右向左传递的信息”,即左信息; 中的上标0表示第0次迭代,下标左边的S表示因子图中第S个状态,右边j表示因子图中第j个比特节点;ln是以e为底的对数;P(yj|xj=0)表示接收端第j个比特节点yj正确判为0的概率;P(yj|xj=1)表示接收端第j个比特节点yj正确判为1的概率;
[0022] 步骤2.C将因子图中的其余比特节点的信息值初始化为0;
[0023] 步骤三、为各个比特节点设定信息值的判定阈值Ti,j和最大迭代次数Iter;
[0024] 其中,判定阈值Ti,j的设定基于高斯近似算法,又具体包括如下子步骤:
[0025] 步骤3.A因子图中与加性校验节点相连的比特节点,其判定阈值的设定基于(3)式递归得到;
[0026]
[0027] 其中,下标左侧的数字表示因子图中的状态数,即i表示第i个状态,i+1表示第i+1个状态;下标右侧的数字表示因子图中的比特节点数,即j表示第j个比特节点,j+2i表示第 j+2i个比特节点;
[0028] 用于迭代的初始阈值为步骤二中所设定的初始化信息值;
[0029] 函数定义为(4)式;
[0030]
[0031] 步骤3.B因子图中与直接相连性校验节点相连的比特节点,其判定阈值的设定基于(5) 式进行递归得到;
[0032]
[0033] 其中,下标左侧的数字表示因子图中的状态数,即i表示第i个状态,i+1表示第i+1个状态;下标右侧的数字表示因子图中的比特节点数,即j表示第j个比特节点,j+2i表示第 ij+2个比特节点;
[0034] 步骤四、从最右端比特节点向左传递信息值,具体为:
[0035] 在传递的过程中,将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,按照(6)式进行信息值传递,否则依据(7)式向左更新并传递各比特节点的信息值;
[0036]
[0037]
[0038] 其中,i表示因子图中第i个状态,j表示因子图中第j个比特节点,t表示第t次迭代, g(x,y)=2tanh-1(tanh(x/2)tanh(y/2)),可通过最小和算法将计算简化为 g(x,y)≈0.9sign(x)sign(y)min(|x|,|y|);
[0039] 步骤五、从最左端比特节点向右传递信息值,具体为:
[0040] 将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,则按照 (6)式进行信息值传递;否则依据(8)式向右更新并传递各比特节点的信息值;
[0041]
[0042] 步骤六、从最右端比特节点向左传递信息值,具体为:
[0043] 将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,则按照 (6)式进行信息值传递,否则依据(7)式向左更新并传递各比特节点的信息值;
[0044] 各个比特节点的信息值依据步骤五和步骤六进行往复传递,也即译码过程为各个比特节点的信息值在因子图中相邻的状态之间不断往返传递,即不断重复步骤五和步骤六的过程;
[0045] 步骤七、约定信息值从最左端传递到最右端,再从最右端传递到最左端为一次迭代过程,即每完成一次迭代,对应着步骤五和步骤六执行一遍;
[0046] 每完成一次迭代过程,根据(9)式对最左侧的各比特节点进行译码判定;
[0047]
[0048] 表示对因子图中第j个比特节点的译码结果; 中的Iter代表最大迭代次数;
[0049] 步骤八、判断当前迭代次数是否达到最大迭代次数Iter,如果达到最大迭代次数Iter,则跳至步骤十,否则跳至步骤九;
[0050] 步骤九、对译码结果进行CRC校验,如果通过校验则终止迭代过程,跳至步骤十;否则跳至步骤五,继续进行下一次迭代过程;
[0051] 步骤十、输出译码结果;
[0052] 至此,经过步骤一到步骤十,实现了基于高斯近似阈值判断的极化码BP译码方法。
[0053] 有益效果
[0054] 本发明提出一种基于高斯近似阈值判断的极化码BP译码方法,与现有技术相比,具有以下有益效果:
[0055] 1、编译码过程添加CRC校验模块,每次迭代结束后都对译码判定结果进行CRC校验,通过校验则可以提前终止迭代,增加了译码的可靠性,节省了计算资源,即降低了译码计算复杂度;
[0056] 2、依据高斯近似算法的原理为各个比特节点设定信息比较阈值,若当前比特节点的信息值大于阈值,则停止该比特节点信息值的迭代更新;此处阈值的设定,在保证译码结果可靠程度的基础上,降低了整个译码过程的计算复杂度。

附图说明

[0057] 图1为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”译码过程中涉及到的因子图示例;
[0058] 图2为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”的整体流程图;
[0059] 图3为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”具体实施例中BLER 与SNR的仿真关系曲线图;
[0060] 图4为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”具体实施例中译码节省的计算复杂度。

具体实施方式

[0061] 下面结合附图和具体实施例子对本发明进行详细说明。
[0062] 实施例1
[0063] 本实施例在发送端对长度为40比特的信息序列u添加24比特的CRC校验码,进行polar 编码和QPSK调制,在AWGN信道中传输,其中码长为128比特。在接收端采用本发明提出的基于高斯近似阈值判断的极化码BP译码方法进行译码。仿真通信链路得到SNR和BLER 的关系曲线以及译码节省的计算复杂度。同时,在相同条件下与传统的极化码BP译码方式仿真得到的BLER进行比较,验证本发明的效果。图1为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”译码过程中涉及到的因子图示例,并是以N=8,K=3为例的因子图。图2为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”的整体流程图;图3 为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”具体实施例中BLER与SNR 的仿真关系曲线图;图4为本发明“一种基于高斯近似阈值判断的极化码BP译码方法”具体实施例中译码节省的计算复杂度。
[0064] 其具体操作流程如下:
[0065] 步骤A、对长度为40比特的信息序列u0,u1,...,u39进行CRC校验,添加24比特的CRC 校验码,得到序列u0′,u1′,...,u63′;
[0066] 步骤B、对序列u0′,u1′,...,u63′进行polar编码,码长为128比特,得到编码后的序列 x0,x1,...,x127;
[0067] 步骤C、对编码后的序列进行QPSK调制,并在AWGN信道中传输;
[0068] 步骤D、接收端解调后得到序列y0,y1,...,y127,送入译码器译码;首先初始化,按照(1) 式初始化最左侧比特节点的信息值 按照(2)式初始化最右侧比特节点的信息值其余比特节点的信息值初始化为0;
[0069] 步骤E、依据(3)、(4)、(5)式为各个比特节点设定信息值判定阈值Ti,j,并设定最大迭代次数Iter为10;
[0070] 步骤F、从右端比特节点向左传递信息值,在传递的过程中,将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,按照(6)式进行信息值传递否则依据(7) 式向左更新并传递各比特节点的信息值;
[0071] 步骤G、从左端比特节点向右传递信息值,在传递的过程中,将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,则按照(6)式进行信息值传递;否则依据(8)式向右更新并传递各比特节点的信息值;
[0072] 步骤H、从最右端比特节点向左传递信息值,在传递的过程中,将当前各个比特节点的信息值与为各节点设定的阈值Ti,j进行比较,若超过阈值,则按照(6)式进行信息值传递,否则依据(7)式向左更新并传递各比特节点的信息值;
[0073] 步骤I、各个比特节点的信息值依据步骤G和步骤H进行往复传递,也即译码过程为各个比特节点的信息值在因子图中相邻的状态之间不断往返传递,即不断重复步骤G和步骤H 的过程;
[0074] 约定信息值从最左端传递到最右端,再从最右端传递到最左端为一次迭代过程,即每完成一次迭代,对应着步骤G和步骤H执行一遍;
[0075] 每完成一次迭代过程,根据(9)式对最左侧的各比特节点进行译码判定;
[0076] 步骤J、判断当前迭代次数是否达到最大迭代次数10,如果达到最大迭代次数10,则跳至步骤L,否则跳至步骤K;
[0077] 步骤K、对译码结果进行CRC校验,如果通过校验则终止迭代过程,跳至步骤L;否则跳至步骤G,继续进行下一次迭代过程;
[0078] 步骤L、输出译码结果。
[0079] 从步骤A到步骤L,完成了本实施例一种基于高斯近似阈值判断的极化码BP译码方法。
[0080] 实施例1的仿真结果如图3、4所示,图3是基于高斯近似阈值判断的极化码BP译码方法(码长为128比特)的BLER与传统极化码BP译码在相同仿真条件下的BLER。图4是基于高斯近似阈值判断的极化码BP译码方法(码长为128比特)译码节省的计算复杂度。
[0081] 从图3可以看出,基于高斯近似阈值判断的极化码BP译码方法的性能与传统极化码BP 译码方法的性能非常接近;从图4可以看出,基于高斯近似阈值判断的极化码BP译码方法较传统极化码BP译码方法节省了计算复杂度。因此,本发明提出的一种基于高斯近似阈值判断的极化码BP译码方法在保证译码性能的基础上,可降低译码的计算复杂度。
[0082] 以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。