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)에서 안정적으로 동작할 수 있었다.