杜飞飞
摘要:文章研究了在System Generator搭建LDPC编码器模型的方法,针对IEEE802.16e标准设计实现了RU编码算法,并在此基础上对结构进行优化,减小了编码延时,降低了设计复杂度。
关键词:LDPC;编码器;System Generator;RU编码算法;编码延时 文献标识码:A
中图分类号:TN911 文章编号:1009-2374(2015)17-0019-02 DOI:10.13535/j.cnki.11-4406/n.2015.17.009
LDPC编码算法已经比较成熟,但是设计复杂度和系统数据速率的折中是在硬件实现时面临的最主要的问题,而System Generator是基于模块的设计平台,加快了算法的实现。在System Generator下设计了一种LDPC编码器,并对其结构进行改进,降低了硬件设计复杂度,减小了编码延时。
1 LDPC算法
1.1 IEEE802.16e中的LDPC码
IEEE802.16e定义的LDPC码是一种准循环码,编码长度为576~2304bit,每种码长相差96bit,共19种编码长度,码率分为1/2、2/3A、2/3B、3/4A、3/4B和5/6共
6种。
1.2 LDPC的编码算法——RU算法
IEEE802.16e标准中LDPC码校验矩阵具有准循环特性,RU算法利用这一特性通过校验矩阵H进行快速编码。在保持矩阵稀疏性的同时,对校验矩阵的行、列重排,从而得到近似的下三角矩阵。如图2所示,校验矩阵分成了六个稀疏矩阵,其中T是对角线元素全为1的下三角矩阵。
IEEE802.16e标准的LDPC码为系统码,原始信息位s有1152bit,编码后校验位、共1152bit,最终的编码流有2304bit。图3为编码器整体结构,包括串并模块,计算模块,计算模块和输出模块,其中、计算模块为核心处理模块,也是复杂度最高的部分。
串并模块:将原始信息位分成12组,每组96bit,组内串行输出,组间并行输出,便于并行处理。
核心处理模块:、计算模块将原始信息位s通过计算获得校验比特、,它的速度和复杂度决定了整个编码器的速度和复杂度。其硬件结构如图4所示:
输出模块:将s、、延时相应的时间单位并按序输出。根据LDPC码的准循环特性,存储结构可采用循环移位寄存器。矩阵乘法模块主要采用循环移位器和模二加法器。根据FPGA的并行特点以及LDPC校验矩阵的准循环特性,矩阵乘法可按行并行操作。A的第二行与s相乘,由于A第二行第2、6、7、8、12列均为单位循环矩阵,将对应的原始码流、、、、与循环单位阵相乘,然后把五组乘积异或,就得到A第二行与原始码流的乘积。通过此并行操作,能够求出A中每一行与原始码流的乘积。
3 性能分析
通过仿真得出,本文设计的编码器编码延时为2个采样时钟,延时比较少,可以实时传输数据。LDPC编码器采用的FPGA型号为XC4VSX55。最高工作频率为71.656MHz,工作频率比较高,能满足一般无线通信系统的需求。该编码器综合资源使用报告如表1。从表1可以看出,硬件利用率不高,即编码器的硬件实现复杂度可以通过一定的结构优化来降低。
参考文献
[1] 俞华梁,毛志刚,张函隽.IEEE802.16e标准的LDPC编码器设计及硬件实现[J].信息技术,2008,32(4).
[2] 简冲.LDPC码及其在压缩图像传输中应用的研究
[D].电子科技大学,2010.
[3] 李超,石磊.基于IEEE802.16e标准的LDPC编码器设计与实现[J],电子科技,2011,24(6).
(责任编辑:周 琼)