基于校验成功PM值的ADSCL译码方法

文档序号:31125883发布日期:2022-08-13 03:24阅读:115来源:国知局
基于校验成功PM值的ADSCL译码方法
基于校验成功pm值的adscl译码方法
技术领域
1.本发明涉及极化码的译码技术,具体涉及一种基于校验成功pm值的adscl译码方法,可以在不牺牲复杂度的前提下优化adscl译码方法的纠错性能。


背景技术:

2.极化码的性能随着码长的无限增加可以逼近香农极限,被广泛应用于5g移动通信系统。但是在码长有限长的情况下,串行消除(sc)解码器的纠错性能不如turbo码和低密度奇偶校验码(ldpc)。因此将研究方向锁定在极化码的中短码条件下进行深入研究十分重要。
3.scl译码算法为解决串行消除(sc)算法错误传播导致的极化码纠错性能下降的问题,改变sc译码算法单条路径译码的方法,对信息位保留了0和1的两种结果,译码过程中会累计2l条候选路径再通过路径度量值(pm)的排序选择出最后的l条路径。串行消除列表(scl)算法很大程度的提高了极化码的性能,但是多条路径的存在同时也牺牲了复杂度和延迟。后续提出了自适应串行消除列表译码(adaptive successive cancellation list,adscl)算法,该算法针对scl列表使用问题进行优化,从最小的列表数l=2开始译码,当译码结果不能通过crc校验时,认为当前路径的译码结果失败,需要将列表数变为原来的2倍重新译码,直到译码成功或译码的最大列表数都未通过crc校验译码结束。虽然adscl译码算法大大降低译码的复杂度,但是单靠crc校验来判断译码是否成功是不可靠的,所以纠错性能仍存在改善空间。
4.根据大量仿真发现:自适应adscl算法在列表较小时,即l≤4时存在通过crc校验的情况,并且占比比较高;同时根据大量仿真数据发现,l≤4时存在通过crc但是不小的译码失败占比。所以本发明认为极化码只有单一的crc校验方案是不可靠的,为提高单一crc校验给极化码带来的影响,提出要判断两次极化码译码结果的可靠性,即在crc校验判断结束后增加对路径度量值pm的判断;本发明提出在l很小译码成功时有必要继续译码,降低l较小时译码通过crc校验的出错占比,来改善极化码的误码性能。后续根据此思路将情况扩展到一般情况,将pm阈值当作译码结果通过crc校验后是否继续译码的判决条件。通过对极化码译码过程中增加阈值判断,来达到提高adscl译码纠错性能目的,同时不牺牲极化码的复杂度。以码长n=1024,crc=8,l
max
=32为例,本发明在crc校验后增设pm阈值的判断提高了自适应译码算法对l=2,4,8的使用频率,降低对l=16,32的使用频率,所以不会牺牲极化码的复杂度,并且在低snr还可以降低最多4%的复杂度。
5.在snr=0.5db、l=2的条件下通过仿真,将通过crc校验的pm值取均值作为公式计算pm阈值的基础数据,再通过公式计算其他条件下的pm阈值;当crc校验结束后根据公式求得阈值进行比较,改善极化码的纠错性能;pm值代表路径正确的概率大小,pm值越小代表路径正确概率越大,路径越可靠;pm值越大代表路径正确概率越小,路径相对不可靠。均值代表数据的平均水平,根据数据发现通过crc校验的pm最大值和最小值差距很大,说明译码校验成功的路径可靠性存在很大差异,所以存在通过crc校验仍译码失败的情况。pm阈值的选
取就是选择通过crc校验的pm值取均值,比均值小的路径认为相对可靠,可以结束译码;反之相对不可靠,l增加继续scl译码。


技术实现要素:

6.adscl初始化列表数l=2,如果通过crc校验则增加一部分pm阈值的判断,小于pm阈值则译码结束;反之列表数增加为l=2l,继续scl译码,再通过crc的校验;通过crc的校验后再进行一次pm阈值的判断,如果小于阈值则译码结束;反之继续scl译码,直到列表数达到l
max
结束译码。大多数算法都是在crc校验成功后译码结束,但是译码失败的占比比较高。考虑到crc校验后译码失败而结束译码对adscl译码算法误码性能的影响,提出在通过crc校验后增加一个决策条件来改善adscl译码算法的bler。
7.为达到上述目的,本发明提供的主要内容分为4部分:
8.1.本发明采用码长n=1024,码率r=0.5,l
max
=32,crc=8,awgn信道的bpsk调制系统;统计极化码在snr=0.5db,1.0db,1.5db,2.0db,2.5db,3.0db,l=2,4,8,16条件下通过crc校验的24组pm数据;观察这24组数据发现通过crc校验的pm最大值和最小值相差很大,并且每组的数据大小不稳定且存在很大波动;pm值越大则路径越不可靠,所以即使通过crc校验仍存在不小的失败占比,本发明认为有必要在路径通过crc校验后增设判决路径可靠性的条件;增加的pm阈值首先是通过以下方法获得:统计不同信噪比、不同列表数条件下通过crc校验的pm值,将统计的pm值数据取均值当作极化码通过crc校验后是否继续译码的判决条件;将均值当作crc校验后pm值比较的阈值,来判断crc校验后的路径是否可靠,若大于阈值则增加列表数继续scl译码,反之译码结束。
9.由于数据统计方案需要大量的仿真,一旦改变极化码的限制条件如码率等,就需要重新统计不同信噪比、不同列表数下极化码通过crc校验的24组pm值数据,所以数据统计方案操作过程复杂且存在局限性;针对数据统计方案的缺点本发明进一步提出公式计算阈值方案;根据大量仿真数据发现pm均值的大小随信噪比和列表数的改变而改变,根据pm阈值的变化规律总结出不同信噪比不同列表数的阈值计算公式来代替大量仿真数据的统计结果,当极化码译码结果通过一次crc校验判断后,再将路径的pm值与公式计算的pm阈值进行比较,对路径的可靠性进行第二次判断,将均值当作crc校验后pm值比较的阈值,若大于pm阈值则认为当前路径不可靠,路径增加继续scl译码;反之则认为当前路径相对可靠,译码结束。
10.2.pm值决定路径的可靠性,对于awgn信道下的bpsk调制系统pm值为由pm值的计算公式可知pm值的大小主要由译码输入端的llr值决定;译码输入端的llr值为其特征在于,llr值大小受标准差δ的影响,在bpsk调制后加噪声,噪声方差计算公式为从而推导出标准差计算公式为其中信噪比为所以标准差δ大小主要由snr决定;
以l=2不同信噪比下的pm均值为基础数据,观察到l=4,8,16的pm均值大小随列表数的增加而增加,并且根据仿真数据发现增加的数值大小与l、n有关;总结影响pm阈值大小的主要因素为snr、n、l。
11.统计在snr=0.5db,1.0db,1.5db,2.0db,2.5db,3.0db,l=2的条件下通过crc校验的pm值数据并取均值,将pm均值数据记作pm1,作为公式计算pm阈值的基础数据;根据pm值的相关计算公式知道snr、n、l是影响pm阈值的主要因素,所以基于这些影响因素观察pm均值数据的变化关系,分析总结pm阈值计算公式;下述说明的pm阈值的计算公式pm
l
、pmh只有数值大小没有单位限制,根据仿真数据可以发现snr对pm阈值的影响主要分两种情况:
12.情况一:snr≤1.0db时pm阈值会随信噪比、列表数的增加而增加;在l=4,8,16时pm阈值是在初始列表数l=2的均值pm1基础上,随着l的增加成4的倍数增加,小数部分的数值增加与n、l有关,对于awgn信道下的bpsk调制系统,snr≤1.0db时pm阈值的计算公式pm
l
如下,其中n代表正整数,由公式n=log2
l
获得,n代表码长;
[0013][0014]
情况二:snr>1.0db时pm阈值会随信噪比的增加而减少,随着列表数的增加而增加;在l=4,8,16时pm阈值是在初始列表数l=2的均值pm1基础上,增加snr数值大小的10倍,以及当前l的一半;对于awgn信道下的bpsk调制系统,当snr>1.0db时pm阈值计算公式pmh的数值大小为:
[0015][0016]
3.由于数据统计存在操作复杂、局限性等缺点,进而根据仿真数据提出公式替代数据统计的方案;公式计算阈值方案可以大大简化仿真数据统计的过程,节约实验时间成本还可以改善数据统计方案的局限性;将极化码译码时通过crc校验的pm值与公式计算的pm阈值进行比较来判断是否继续译码,具体步骤如下:
[0017]
步骤1:在不同snr和l大小的条件下,根据公式计算得到pm阈值;
[0018]
步骤2:设置初始列表数l=2;
[0019]
步骤3:采用scl译码,将译码结果进行crc校验,若通过crc校验执行步骤4,否则令l=2l,执行步骤5;
[0020]
步骤4:将通过crc校验的pm值与信噪比和列表数相同条件下的pm阈值比较,若pm值小于阈值,译码成功,退出译码;否则列表数增加,令l=2l,执行步骤5;
[0021]
步骤5:判断列表数是否大于l
max
,若大于l
max
,译码结束;否则继续执行步骤4。
[0022]
4.在码长n=1024,码率r=0.5,l
max
=32,crc=8,awgn信道的bpsk调制系统下,仿真snr为0.5db,1.0db,1.5db,2.0db,2.5db,3.0db,初始列表数l=2条件下通过crc校验阈值pm1的统计数据如表1所示:
[0023]
表1
[0024]
l/snr0.5db1.0db1.5db2.0db2.5db3.0dbl=2142.5083812145.6044033136.1762656129.8965588112.4623006100.6572631
[0025]
根据仿真不同snr不同l下pm阈值的数据可以发现,在低snr时,同一snr下l=4,8,16的pm阈值随着列表数的增加而增加,增量大小是4的倍数,小数部分的增量也与n和当前l
有关,总结出低snr时通过crc校验的pm阈值计算公式pm
l
;在高snr时,同一snr下l=4,8,16的pm阈值随着列表数的增加而增加,基础增量大小是snr的10倍,不同的l还要继续增加l的一半;根据计算pm阈值计算公式pm
l
、pmh计算l为4,8,16,snr分别为0.5db,1.0db,1.5db,2.0db,2.5db,3.0db时,阈值pm2,pm3,pm4的计算数据如表2所示分别为:
[0026]
表2
[0027]
l/snr0.5db1.0db1.5db2.0db2.5db3.0dbl=4150.6107812153.7068033153.1762656151.8965588139.4623006132.6572631l=8154.7131812157.8092033155.1762656153.8965588141.4623006134.6572631l=16158.8155812161.9116033159.1762656157.8965588145.4623006138.6572631
[0028]
将公式计算得到的阈值pm2,pm3,pm4与仿真数据在相同条件下统计的数据进行对比,发现两者误差在允许的范围内,证明了公式的可靠性,仿真l为4,8,16,snr为0.5db,1.0db,1.5db,2.0db,2.5db,3.0db时的pm值,然后将统计数据取均值,统计阈值pm2,pm3,pm4如表3所示分别为:
[0029]
表3
[0030]
l/snr0.5db1.0db1.5db2.0db2.5db3.0dbl=4150.9125752155.1310192155.4986602145.5690115141.9139419131.3181425l=8154.979409158.1650541154.7236605149.6058145.6891513135.4796465l=16157.7464379154.5492674158.5456053153.7717544151.6851781134.3188448
[0031]
本发明的有益效果在于:该方法可以有效降低adscl译码方法的误块率,改变码率后仍然可以达到降低误块率的效果,印证了公式的可靠性,低snr时复杂度最多可降低4%。
附图说明
[0032]
为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如图进行说明:
[0033]
图1为本发明提出的基于校验成功pm值的adscl译码方法流程示意图。
具体实施方式
[0034]
下面将结合本发明实施例中的附图,对本发明实施的技术方案进行清楚的、完整的描述,以下给出基于校验成功pm值的adscl译码方法的具体实现步骤。采用极化码码长n=1024,码率r=0.5,最大列表数l
max
=32,crc=8,awgn信道的bpsk调制系统,来说明本发明的具体实施方案。
[0035]
1.本发明的主要核心内容就是pm阈值,阈值主要通过公式计算阈值方案获得,具体实施步骤如下:
[0036]
公式计算阈值方案pm阈值的获取具体步骤如下:
[0037]
步骤一:在码长n=1024,码率r=0.5,l
max
=32,crc=8,awgn信道的bpsk调制系统下,仿真得到在初始列表数l=2,snr=0.5db,1.0db,1.5db,2.0db,2.5db,3.0db的条件下,通过crc校验的6组pm值;
[0038]
步骤二:将仿真统计得到的初始列表数l=2条件下,通过crc校验的6组pm值分别取均值记作pm1,得到一共6个pm阈值,当作计算pm阈值公式pm
l
、pmh的基础数据;
[0039]
步骤三:将低信噪比snr=0.5db,1.0db,初始列表数l=2的pm阈值pm1,带入低信
噪比的阈值计算公式pm
l
中,计算l=4的pm阈值pm2,l=8的pm阈值pm3,l=16的pm阈值pm4,得到一共6个阈值;
[0040]
步骤四:将高信噪比snr=1.5db,2.0db,2.5db,3.0db,初始列表数l=2的pm阈值pm1,带入高信噪比的阈值计算公式pmh中,计算l=4的pm阈值pm2,l=8的pm阈值pm3,l=16的pm阈值pm4,得到一共12个阈值;
[0041]
举例说明基于校验成功pm值的adscl译码方法的过程:
[0042]
采用码长n=1024,码率r=0.5,l
max
=32,crc=8,awgn信道的bpsk调制系统。接收端在snr=0.5,3.0时,通过仿真统计得到l=2时的阈值pm1分别为:142.5083812、100.6572631,相同条件下通过crc校验的pm值分别为:153.1734642、132.6426873,若在通过crc校验后直接结束译码,则极化码依旧译码失败;反之在通过crc校验后,将通过crc校验的pm值再与阈值pm1比较,pm值大于pm1,列表数增加令l=4继续译码;在l=4时接收端snr=0.5,3.0通过公式计算得到l=4时的阈值pm2分别为:150.6107812、132.6572631,相同条件下通过crc校验的pm值分别为:133.1711558、117.5994957,将通过crc校验的pm值与阈值pm2比较,发现小于pm2,结束译码,译码成功。
[0043]
2.结合附图1说明基于校验成功pm值的adscl译码方法译码流程如下:
[0044]
adscl从初始化列表数l=2开始scl译码,将译码结果进行crc验,若通过crc校验,储存当前路径下的pm值,再将储存的pm值与l=2时仿真数据统计的通过crc校验的阈值pm1进行比较,若pm值小于pm1则译码成功,退出译码;反之列表数增加,令l=4继续scl译码,通过crc校验后,将当前路径下的pm值与l=4的阈值pm2比较,若pm值小于pm2则译码成功,退出译码;反之列表数增加,令l=8继续scl译码,通过crc校验后,将当前路径下的pm值与l=8的阈值pm3比较,若pm值小于pm3则译码成功,退出译码;反之列表数增加,令l=16继续scl译码,通过crc校验,将当前路径下的pm值与与l=16的阈值pm4比较,若pm值小于pm4则译码成功,退出译码;反之列表数增加,令l=32继续译码,若通过crc校验则译码成功,反之译码结束。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1