Polar码译码算法的分析与研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Polar码译码算法的分析与研究
Arikan于2008年提出的Polar码是第一类从理论上被证明能够达到Shannon容量限的码。Polar码具有编译码算法复杂度低、无错误平层及容量可达等特性,使得Polar码一经提出,便成为信道编码领域的研究热点。
Polar码在码长趋于无穷大时性能能达到Shannon容量限,然而对于实际的通信系统,中短码长的Polar码在SC译码算法下的性能却不太理想。并行的BP 译码算法的引入解决了SC译码算法的高延迟性的缺点。
但是译码算法中,降低BP译码算法的复杂度,改善SC译码算法的性能等问题都需要进一步的理论研究。本文对中短码长的Polar码的译码进行了深入的研究,在以下几个方面取得了创新性的研究成果:针对Polar码的BP译码算法的复杂度高的问题,提出了两种新的低复杂度的BP译码算法。
首先,在BP译码算法的更新公式中,利用等间距的线性近似函数来代替算法中的双曲函数,简化了BP译码算法的迭代更新公式,并详细分析比较了改进的算法与BP译码算法的复杂度。改进的算法中的线性近似函数仅仅需要乘法和加法运算,在不损失BP译码算法的性能的情况下有效的降低了算法的计算复杂度。
其次,我们还尝试利用等误差的线性近似函数来代替算法中的双曲函数,提出了基于等误差的BP译码算法,并比较了两种方案的差异,仿真结果表明提出的两种改进的算法在达到同样的性能时,基于等误差的BP译码算法所需的存储空间更少,更适用于存储受限的情况。针对最小和译码算法性能较差的问题,提出了一种修正的最小和译码算法。
相比于最小和译码算法,改进的最小和译码算法增加了少许计算复杂度,但是提高了译码性能,可以更好的逼近BP译码算法。仿真结果表明其译码性能曲线
与BP译码算法的性能曲线基本重合,且优于最小和译码。
而在计算复杂度方面,改进的最小和译码算法的计算复杂度比BP译码算法低。针对BP译码算法提前终止迭代的问题,提出了一种迭代停止准则,即达到设定的迭代次数5次时便利用CRC校验来判定是否终止迭代。
仿真结果表明当信噪比大于2.5dB时,在损失少许性能的情况下,提前终止迭代算法的迭代次数比原始BP译码算法降低了90%。提出的停止准则改善了Polar码的BP译码算法的译码时延问题,降低了算法的复杂度。
此外,为了解决提前终止迭代准则造成的性能损失的问题,在终止策略的基础上,提出了一种增强性能的BP译码算法。在该算法中,当迭代到因子图的最左端时,如果信息位节点的左信息的LLR值大于设定的阈值,则将该节点的右信息的LLR值设置为固定比特的LLR值的大小继续进行迭代,同时符号保持不变。
该算法不但减少了算法的迭代次数,而且增强了BP译码算法的性能。研究了Polar码的CRC-SCL译码算法,根据CRC-SCL算法中候选路径的选取问题,提出了一种改进的CRC-SCL译码算法,在改进的译码算法中,当每层中选出L条保留路径后,同时令其它满足条件的路径也加入保留路径中,增加了正确路径入选的概率。
仿真结果表明改进的CRC-SCL译码算法增加了部分节点的计算量,但是其译码性能优于CRC-SCL译码算法。