基于FPGA的短帧Turbo译码器的实现
Turbo码虽然具有优异的译码性能,但是由于其译码复杂度高,译码延时大等问题,严重制约了Turbo码在高速通信系统中的应用。因此,如何设计一个简单有效的译码器是目前Turbo码实用化研究的重点。本文主要介绍了短帧Turbo译码器的FPGA实现,并对相关参数和译码结构进行了描述。1 几种译码算法比较
由MAX-LOG-MAP算法的MATLAB浮点与FPGA定点的性能比较仿真结果可知,采用F(9,3)的定点量化标准,FPGA定点实现译码性能和理论的浮点仿真性能基本相近,并具有较好的译码性能。
综上所述,在短帧情况下,MAX-LOG-MAP算法具有较好的译码性能,相对于MAP,LOG-MAP算法具有最低的硬件实现复杂度,并且Turbo码译码延时也较小。所以,在特定的短帧通信系统中,如果采用Turbo码作为信道编码方案,MAX-LOG-MAP译码算法是硬件实现的最佳选择。
Turbo码常见的几种译码算法中,MAP算法具有最优的译码性能。但因其运算过程中有较多的乘法和指数运算,硬件实现很困难。简化的MAP译码算法是LOG-MAP算法和MAX-LOG-MAP算法,它们将大量的乘法和指数运算转化成了加减、比较运算,大幅度降低了译码的复杂度,便于硬件实现。简化算法中,LOG-MAP算法性能最接近MAP算法,MAX-LOG-MAP算法次之,但由于LOG-MAP算法后面的修正项需要一个查找表,增加了存储器的使用。所以,大多数硬件实现时,在满足系统性能要求的情况下,MAX-LOG-MAP算法是硬件实现的首选。通过仿真发现,采用3GPP的编码和交织方案,在短帧情况下,MAX-LOG-MAP算法同样具有较好的译码性能。
如图1所示,帧长为128,迭代6次,BER=10-5的数量级时, MAX-LOG-MAP算法的译码性能比MAP算法差大约0.6dB,比LOG-MAP算法差0.2dB左右。所以,本文采用3GPP的交织和(13,15)编码方案,MAX-LOG-MAP译码算法进行短帧Turbo码译码器的FPGA实现与设计。 楼主,能把你做的VHDL译码代码传来看看么,谢了! 看起来很不错阿 基于FPGA的短帧Turbo译码器的实现
页:
[1]