FPGA Design of Turbo Code based on MAP

MAP 기반 터보코드의 FPGA 설계

  • 서영호 (한성대학교 정보통신공학과)
  • Published : 2007.03.31

Abstract

In this paper, we efficiently implemented turbo code algorithm in FPGA H/W(hardware) resource. The used turbo code algorithm has the characteristics; the size of constraint is 3, encoder type is 1/3, the size of random interleaver is 2048. The proposed H/W consists of MAP block for calculating alpha and delta using delta value, storing buffer for each value, multiplier for calculating lamda, and lamda buffer. The proposed algorithm and H/W architecture was verified by C++ language and was designed by VHDL. Finally the designed H/W was programmed into FPGA and tested in wireless communication environment for field availability. The target FPGA of the implemented H/W is VERTEX4 XC4VFX12-12-SF363 and it is stably operated in 131.533MHz clock frequency (7.603ns).

본 논문에서는 높은 에러정정 효율을 보이는 터보코드 알고리즘을 FPGA H/W(hardware) 자원 내에 효율적으로 구현하였다. 본 논문은 구속장의 크기가 3, 1/3 인코더, 2048 사이즈의 랜덤 인터리버에 기반한 터보코드 알고리즘을 사용한다. 제안된 H/W는 델타를 이용하여 알파와 베타를 연산하는 MAP 블록과 각 값들을 저장하는 버퍼 및 람다의 계산을 위한 곱셈기와 람다를 저장하는 버퍼로 구성된다. 제안된 알고리즘과 하드웨어 구조는 C++ 언어를 이용하여 검증하였고, VHDL을 이용하여 하드웨어 구현한 후 FPGA에 적용하여 무선통신 환경에서 성능에 대한 유효성을 보였다. 구현된 H/W는 VERTEX4 XC4VFX12-12-SF363의 FPGA를 타겟으로 하였고 최대 131.533MHz (7.603ns)에서 안정적으로 동작할 수 있었다.

Keywords

References

  1. C. Shannon, 'A Mathematical Theory of Information,' Bell SYstem Technical Journal, Vol. 27, pp.379-423, July 1948 https://doi.org/10.1002/j.1538-7305.1948.tb01338.x
  2. S. Lin, Error Control Coding, Prentice-Hall, pp.3-9, 1983
  3. C. Berrou, A. Glavieux, and P. Thitimajshima, 'Near Shannon Limit Error Correcting Coding and Decoding : Turbo Code', Proc. IEEE ICC, pp.1064-1070, May 1993
  4. P. Jason and H. Lajos, 'Comparative Study of Turbo Decoding Techniques: An Overview,' IEEE Trans. on Vehicular Technology, Vol. 49, No. 6, pp.2208-2238, Nov. 2000 https://doi.org/10.1109/25.901892
  5. D. Divsalar and F. Pollara, 'Turbo Codes for PCS Applications', Proc. of IEEE ICC'95, Seattle, Washington, pp.54-59, Jun. 1995
  6. L. Bahl, J. Cocke, F. Jelinek, and J. Raviv, 'Optimal decoding of linear codes for minimizing symbol error rate', IEEE Trans. Inform. Theory, vol. IT-20, pp.284-287, Mar. 1975
  7. S. Barbulescu and S. Piebrobon, 'Turbo Codes: A Tutorial on a New Class of Powerful Error Correcting Coding Schemes, Part 2: Decoder Design and Performance,' IEEE Journal of Electrical and Electronics Engineering, Vol. 19, No. 3, pp.143-152, Sept. 1999
  8. L. Papke, P. Robertson, and E. Villebrun, 'Improved decoding with the SOVA in a parallel concatenated (turbo-code) scheme', Proc. of ICC'96, Dallas, TX, USA, pp.102-106, Jun. 1996
  9. Viterbi, 'An Intuitive Justification and a Simplified Implementation of the MAP Decoder for Convolutional Codes,' IEEE Journal on Selected Areas in Communications, Vol. 16, No. 2, pp. 260-264, Feb. 1998 https://doi.org/10.1109/49.661114
  10. G. Park, S. Yoon, I. Jin, and C. Kang, 'A Bock-wise MAP Decoder Using a Probability Ratio for Branch Metric' in Proc. of VTC'99, Amsterdam, Netherlands, pp.1610-1614, Sept. 1999
  11. S. Donilar and D. Divsalar, 'Weight Distributions for Turbo Codes Using Random and Non-random Interleaving,' JPL TDA Progress Report 42-122, pp.56-65, 1995
  12. P. Robertson, E. Villebrun and P. Hoeher, 'A Comparison of optimal and Sub-optimal MAP Decoding Algorithms Operating in the Log Domain,' in Proc. ICC' 95, pp.1009-1013, Sattle, June 1995
  13. Z. Wang, H. Suzuki, and K. Parhi, 'VLSI Implementation Issues of Turbo Decoder Design for Wireless Applications,' in Proc. IEEE Wrkshop on Signal Processing Systems, Taipei, Taiwan, pp.503-512, Oct. 1999