基于FPGA的极化码的SC译码算法结构的改进方法

基于FPGA的极化码的SC译码算法结构的改进方法,第1张

在二进制离散无记忆信道中极化码可以达到其信道极限容量,并且实现的复杂度较低,这在通信领域无疑是一个重大突破,因此在FPGA中实现极化码的译码有着非常重要的研究意义。首先介绍了SC(Successive CancellaTIon)译码算法,并将该算法的蝶形结构改进为线形结构从而提高了译码效率;接着对译码算法做了包括最小和译码、定点量化和资源共享的改进,以便于在硬件中更容易实现;最后在FPGA中实现了极化码的译码并给出了测试波形以及对不同编码块长度的综合资源进行了对比。实验结果表明,译码的最高频率可达145 MHz,吞吐率可达36.4 Mbps。

0 引言

最近几年极化码在编解码领域中有突破性的进展,从而激起了极化码理论研究[1]的快速发展。Arikan Erdal于2008年提出极化码[1],并在对称的二进制无记忆信道及任意的连续无记忆信道中证明了极化码相较于Turbo码[2]和LDPC码[3]更能达到香农极限[4],并且用极化码实现的通信系统能达到更高的通信带宽,所以极化码是目前公认的“最好”的码。

目前,极化码的译码实现方式主要有软件和硬件两种方式,软件的实现方式因CPU串行工作模式限制了译码速度的提升,而FPGA因其具有快速并行计算的能力能弥补这一缺陷。此外,极化码的递归结构能够实现资源共享并简化计算过程,这一特点表明极化码易于FPGA实现[5-6]。

目前,关于极化码的译码算法主要有置信度传播(Brief PropagaTIon,BP)算法[7]、最大似然比(Maximum Likelyhood,ML)算法[8]、连续消除(Successive CancellaTIon,SC)算法[9]。这3种算法中,BP和ML算法由于在运算过程中涉及到较多的乘除法运算,因此不利于FPGA实现,而SC算法在译码过程中主要是通过加减和位运算实现,所以SC算法适用于FPGA实现。

基于极化码、FPGA、SC译码算法3方面的优点,本文的重点工作是采用极化码、运用SC译码算法设计一种新型的译码器并在Xilinx XC5VFX70T上实现该译码器。

1 极化码的SC译码算法

1.1 SC译码算法

SC译码算法的核心就是连续地估计每个比特的似然比值,Arikan表示这些似然比值[9]可以通过数据流图采用递归的方式被有效地执行,这个数据流图类似于快速傅里叶变换结构,一般是通过蝶形结构的数据流图来计算似然比值,N=8的蝶形SC译码结构图如图1所示,y0到y7是信道的输出值,通过如下结构可得到译出码字

基于FPGA的极化码的SC译码算法结构的改进方法,基于FPGA的极化码的SC译码算法结构的改进方法,第2张


基于FPGA的极化码的SC译码算法结构的改进方法,基于FPGA的极化码的SC译码算法结构的改进方法,第3张


基于FPGA的极化码的SC译码算法结构的改进方法,基于FPGA的极化码的SC译码算法结构的改进方法,第4张

 

2 极化码译码的算法改进

2.1 SC译码算法结构的改进

由图1可知由于数据之间的较强依赖性使得译码的效率不高,例如图1中l2阶段的所有节点,当输入数据y0到y7准备完毕时允许节点执行相应的 *** 作,而事实上在第一个译码时钟周期内只有前4个节点执行了相应的 *** 作。为了比较译码效率,这里定义α表示使用率,表达式如式(4)所示:

基于FPGA的极化码的SC译码算法结构的改进方法,基于FPGA的极化码的SC译码算法结构的改进方法,第5张

 

随着码长的增加,使用率逐渐趋近于0,因此有很大的空间提升使用率。为了提升使用率,本文采用了线性的译码结构来改进蝶形译码结构。N=8的SC线性译码结构图如图3所示。

基于FPGA的极化码的SC译码算法结构的改进方法,基于FPGA的极化码的SC译码算法结构的改进方法,第6张


基于FPGA的极化码的SC译码算法结构的改进方法,基于FPGA的极化码的SC译码算法结构的改进方法,第7张

 

在线性译码结构中,函数f和g一半码长的计算量都是在一个时钟周期完成的,用来存储部分计算结果和信道输出似然比的内存单元总共为2N-1个,在整个译码过程中的处理单元为N/2个。由式(4)可计算出线性结构译码算法的使用率如式(6)所示:

可以看出相比于蝶形译码结构而言,采用线性译码结构的译码算法其使用率有一定的提升,并且这种结构编写的代码在硬件实现上更有利于综合布线。

2.2 SC译码算法在FPGA中实现的改进

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2599009.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-09
下一篇 2022-08-09

发表评论

登录后才能评论

评论列表(0条)

保存