一种基于反馈位的系统码缩短方法

2021-07-14 00:22黄誉霆张梅香周玲霞
无线电工程 2021年7期
关键词:译码极化比特

黄誉霆,张梅香,窦 寅,周玲霞

(扬州大学 信息工程学院,江苏 扬州 225000)

0 引言

为了满足第五代通信系统(5G)的增强型移动宽带、超可靠和低延迟通信以及大规模的机器类型通信的要求[1],极化码作为一种新兴技术,被作为未来的研究重点和方向。

极化码由Arikan教授提出,它是一种纠错码[2],也被划分为线性分组码。极化码通过信道极化现象进行编码,通过将全部的信道合并和拆分来极化信道以获得可靠性最高的信道。通过该过程可以证明其在二进制输入离散无记忆信道(B-DMC)中能够获得全部信道容量的同时逼近香农界限。此外,极化码还可以通过简单的编码器和简单的连续消除(SC)译码器来实现极化码的编码和译码,其译码复杂度仅为O(NlbN)。

极化码具有较高的研究价值和使用意义,但受到其核心矩阵的限制,码长被限定在N=2n(n=1,2,…),所以为了使极化码可以实现任意码长,使极化码的编码速率可变,需要对现有极化码编码方式进行改进。

第1类方法是通过改变极化码的核心矩阵来改变极化码的码长[3],然而使用该方法得到的极化码码长依然被限制为核心矩阵维度的幂次。第2类方法是通过级联的方式,重新构造编码方式,例如使用极化码和LDPC码进行级联来得到级联码[4-5],然而该方法需要重新研究新的译码方式,使得编译码的难度大大增加。第3类方法对极化码编码后的码字进行删余来改变码长。该方法不改变原始极化码的编码和译码结构,大大减少了重新研究的成本,也没有增加复杂度。

尽管第3类方法不改变原有的编码和译码结构,但由于对传输码字的删余,导致了译码的对数似然比(LLR)信息的丢失,使得译码性能下降。针对这个问题,文献[6]提出了通过穷搜的方法来选择凿孔位置的方法,保证了极化码极化效果的最大化,同时使得译码性能优于文献[7]中提出的随机凿孔方法,但增加了算法的复杂度,使得难以在实践中得到应用。文献[8]通过信道的可靠性来进行凿孔,但是忽略了凿孔后剩余信道可靠性的改变。文献[9]通过重新计算信道可靠性来进行凿孔,减少了小容量信道所占的比例来提高译码性能。文献[10]提出了一种复杂度较低的凿孔算法,该算法也会导致极化码性能降低。文献[11]提出了一种性能优于Turbo码的准均匀凿孔算法(QUP),但是由于该算法的译码端依然没有凿孔位置的LLR信息,所以会导致译码能力的下降,并且这种影响会随着码率的增大而增大。文献[12]提出了一种新的凿孔方式,即末端位反转置换缩短极化码。根据极化码生成矩阵GN确定凿孔位置。GN的特征是存在一些列权重和为1的列,删去了列权重和为1的位同时,删除该位所对应的行,再次计算列权重。重复上述操作,直到达到所需的代码长度,可以发现,这些列权重为1的位置都处于末端。尽管该方法解决了QUP算法中LLR信息丢失的问题,使得该算法也能适用于大码率的极化码,然而依旧难以达到原始极化码的性能。

以上方法都是基于非系统极化码的。同时,极化码支持系统编码,原始输入数据在编码器输出中能够原样出现[13]。就误码率(BER)而言,系统极化码的性能可能优于原始非系统极化码[14]。

文献[15]通过将极化码的QUP算法应用到系统极化码,提高了系统极化码的BER性能。该方法在低码率情况下,BER性能良好;但在高码率情况下,BER性能变差。文献[16]提出将文献[10]的方法应用到系统码中,该方法提高了极化码BER的性能,然而依然低于原始的系统极化码。本文提出了一种基于反馈位的系统极化码的缩短方法,通过选取一些特定的位置作为反馈位,将反馈值填入反馈位并再次编码的方式使得可靠性较差的位置成为凿孔位并且使得编码后的LLR信息为译码端可知,该方法能进一步提高系统极化码的BER性能。

1 极化码及缩短极化码

1.1 系统极化码

随着极化码码长的增加,极化码可以达到全部信道容量。极化码依靠信道极化技术进行编码,按照可靠性将信道分为Ai,Ac,分别放置信息比特和冻结比特。通过在Ai中传递信息并冻结Ac中的位,可以获得更好的结果。码长为N时,极化码的编码方式可以表示为:

(1)

(2)

(3)

当然也可以将编码过程表示为:

(4)

式中,uAi为传输比特中的信息比特;uAc为传输比特中的冻结比特;GAi,GAc分别为生成矩阵GN的子矩阵,分别由行集合Ai,Ac组成。

xB=uAiGAiB+uAcGAcB,

(5)

(6)

式中,GAB是G的子矩阵,表示由A的行集合和B的列集合组成的矩阵。

根据式(5)和式(6),可以推出:

(7)

在文献[17-19]中得到结论:

GAiB=(GAiB)-1,

(8)

所以,

(9)

通过上述公式,可以得到系统极化码的两步编码方案。编码因子图如图1所示。由图1可以看出,由于系统极化码在第1次编码后强制将编码后相同冻结位的位置码字归零,所以在译码后需要再次进行编码以得到最后的结果,并且系统极化码依然可以使用非系统极化码所使用的SC译码来进行译码。

图1 系统码编码因子图

1.2 基于位反转的极化码的缩短方法

常规的凿孔方法通过将不确定的“0”值填入译码端来进行译码操作,会导致译码性能的大幅度下降。文献[10]通过在发送端和接收端共享固定的凿孔位,并且通过特定的算法使得凿孔位的码字为“0”来让接收端知道凿孔位的比特值,因此可以将凿孔位的LLR设置为无穷大。基于位反转的极化码缩短方法的具体步骤如下:

基于位反转的极化码缩短方法给定码长为N,凿孔后剩余码长M,信息长度K发送端:初始化Ai=∅,Ac=∅,设定初始的凿孔比特位为P={M+1,M+2,...,N}使用极化权重算法来确定极化码的可靠性排序RN通过比特算法更新凿孔比特位为P0通过信道可靠性排序RN选择剩余的冻结位与信息位,随后进行编码接收端:将凿孔位对应的比特位填入与“0”相对的无穷大,进行译码

位反转的缩短方法的编码因子图如图2所示,展示(6,4)缩短码。当极化码码长N=8,M=6,K=4时,进行位反转缩短算法的过程如下。

图2 位反转的缩短方法的编码因子图

在发送端首先设定初始的凿孔比特位P={7,8},随后通过极化权重算法来确定其可靠性排序,RN={1,2,3,5,4,6,7,8},然后通过位反转计算方法得到反转后的凿孔比特位P0={4,8},将信息位{3,5,6,7}、冻结位{1,2}和凿孔比特位{4,8}填入,进行编码。在接收端通过在凿孔比特位填入与“0”对应的无穷大LLR信息来进行译码。

2 基于反馈值的系统极化码的缩短方法

常规的缩短算法虽然已经解决了删余位置LLR信息缺失的问题,但是造成了可靠性较高信道的大量缺失。为了解决这个问题,提出了一种针对系统极化码的基于反馈值的缩短方式,通过填入反馈值的方式使一些不能作为凿孔比特位的位置变得可以凿孔。

(10)

与常规缩短算法不同的是本文需要将反馈值填入定义的反馈位中,所以定义Bp={p+N/4,p+2N/4,p+3N/4,p∈P}为最优信道位,即可以从其中挑选反馈位的位置。

下面给出基于反馈值的系统极化码缩短方式的具体步骤:

基于反馈值的系统极化码缩短方式给定码长为N,凿孔后剩余码长M,信息长度K(K为初始信息长度加上反馈长度),反馈值长度N-M发送端:初始化Ai=∅,Ac=∅,设定初始的凿孔比特位为P={1,2,...,N-M}使用极化权重算法来确定极化码的可靠性排序RN,并且选择前K+N-M个可靠性最高的信道更新Ai检查P的最优信道位在Ai中是否存在,如果不是全部存在,则更新P为P={s+1,s+2,....,s+N-M|s+N-M≤N/4},其中s为顶部的不存在Ai中的比特位的数量选定{max(δp)|δp∈Bp∩Ai,p∈P}作为反馈位将信息u填入Ai中除最优信道位的信道,其余位置填入“0”,进行第一次系统码编码计算反馈值u'=x'F n2[s+1,s+2,...,s+N-M]将反馈值填入反馈位进行系统码第二次编码接收端:将与“0”相对应的无穷大LLR信息作为译码信息进行译码得到译码结果后将信息位的译码信息填入,其余位填入“0”,进行再次编码以得到原始信息u

基于反馈值的缩短方法的编码因子图如图3所示,再编码因子图如图4所示,展示(6,4)缩短码。

图3 基于反馈值的缩短方法的编码因子图

图4 再编码因子图

当极化码码长N=8,M=6,K=4(此时K的信息长度为初始信息长度加上反馈值的长度),N-M=2时,进行基于反馈位的缩短算法过程如下。

在发送端首先设定初始的凿孔比特位P={1,2},随后通过极化权重算法来确定其可靠性排序,RN={1,2,3,5,4,6,7,8},然后选定可靠性最高的信道Ai={4,6,7,8},并判定P的最优信道{7,8}存在于Ai中,将{7,8}作为反馈位;开始进行系统码第一次编码,计算反馈值u′为{0,1};最后填入反馈值,并将除信息位的其余比特位置“0”,进行系统码第二次编码。在接收端将凿孔位的LLR信息更新与“0”相对应的无穷大,进行译码,得到信息位的译码信息{1,0},随后进行再次编码以得到原始的传输信息。

3 仿真结果和分析

3.1 仿真参数

通过仿真研究来验证提出方法的有效性。为了比较提出方案与原始系统极化码以及非系统极化码的BER与误帧率(FER)的性能,提出了4种方案。一种是无缩短的非系统极化码,一种是无缩短的系统极化码,另外则是文献[16]中基于位反转置换的缩短系统极化码方案与提出的基于反馈值的缩短系统极化码。对于未凿孔的非系统极化码和系统极化码,码长皆为256,而传输的信息长度为了与缩短方案保持一致,设置为50和100,此时码率分别为50/256和100/256。而对于缩短系统极化码,码长与未凿孔极化码相似为256。由于反馈值的参与会导致码率的改变,此时位反转缩短极化码的码率为50/200,100/200,而提出的方法的码率则为106/200,156/200。发送端调制方法为二进制相移键控,信道模型则是二进制输入的加性高斯白噪声通道,信道估计算法则为华为提出的极化权重算法,而译码方法则选择连续删除算法,最大的模拟帧数为106。

3.2 仿真结果

不同信息数下非系统极化码和系统极化码的BER性能和FER性能如图5和图6所示。

图5 不同信息数下系统码与非系统码BER比较

图6 不同信息数下系统码与非系统码FER比较

由图5可以看出,在相同码率下,系统码的BER均优于非系统码的BER,当码率为100/256,系统码的BER相比于非系统码有0.3 dB的提升,当码率为50/256时,系统码的BER有0.25 dB的提升。

由图6可以看出,在不同的码率下,系统码与非系统码的FER相似。

不同信息数下文献[14]、文献[16]与本文所提出方法的BER性能比较如图7和图8所示。

图7 3种方法的BER比较(实际传输信息长度为100 bit)

图8 3种方法的BER比较(实际传输信息长度为50 bit)

由图7和图8可以看出,文献[16]提出的缩短方法性能均低于原始的系统极化码,当实际传输的信息长度为100 bit时,本文提出方法与原始的系统极化码相比有1.5 dB的增益。当实际传输的信息长度为50 bit时,本文提出方法与原始的系统极化码相比有2.5 dB的增益。

传输信息长度为100 bit时3种方法的FER性能比较如图9所示。

图9 3种方法的FER比较(实际传输信息长度为100 bit)

由图9可以看出,当实际传输的信息长度为100 bit时,提出的方法与原始的系统极化码相比FER有1.5 dB的增益。

4 结束语

本文提出了带有反馈值的系统极化码缩短算法的选择,将带有反馈值的缩短算法应用到系统极化码中。通过对极化码进行删余,解决了极化码码长不能改变的问题,并且改变了极化码的编码率,提高了性能。仿真结果表明,在系统极化码的方式比原始极化码可以获得更高的性能,而在传输信息相同的情况下,在低码率与低删余数下,基于反馈位的缩短极化码的性能也优于传统的系统极化码。

猜你喜欢
译码极化比特
认知能力、技术进步与就业极化
极化雷达导引头干扰技术研究
基于干扰重构和盲源分离的混合极化抗SMSP干扰
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
非理想极化敏感阵列测向性能分析
比特币还能投资吗
比特币分裂
比特币一年涨135%重回5530元
从霍尔的编码译码理论看弹幕的译码