Implementation of MPEG-4 BSAC Audio Decoder using ARM926EJ-S Processors

ARM926EJ-S 프로세서를 이용한 MPEG-4 BSAC 오디오 복호화기의 구현

  • Published : 2008.09.30

Abstract

Domestic standard for Korean T-DMB includes MPEG-4 BSAC (Bit Sliced Arithmetic Coding) audio coding that has been established in 2003. This paper presents an implementation and optimization of MPEG-4 BSAC Audio Decoder on ARM926EJ-S processor. Tools and modules of the BSAC audio decoder were implemented with 32-bit fixed point operations. Further optimization was accomplished using ARM926EJ-S Inline Assembly. The optimization was based on the total number of multiplications and MAC (Multiply and Accumulation) operations causing most of core cycles of ARM926EJ-S, and also based on analysis of ARMv5 instructions. The result of optimization was evaluated on the basis of MIPS (Million Instruction per second). Implementation results show that BSAC bitstream at 96kbps can be decoded in real-time at 65MHz CPU clocks.

국내 지상파 DMB방송 표준에서는 2003년 말 국제 표준으로 제정한 MPEG-4 BSAC(Bit Sliced Arithmetic Coding) 오디오 복호화 방식를 표준으로 채택하였다. 본 논문에서는 MPEG-4 BSAC 오디오 복호화기의 주요 도구 및 모듈에 대해 32비트 고정소수점 연산으로 구현하고 ARM926EJ-S 프로세서에 인라인 어셈블리(Inline Assembly)를 적용하여 최적화 한다. 최적화에 대해 본 논문에서는 RISC프로세서인 ARM926EJ-S의 Core Cycle을 가장 높게 발생시키는 곱셈 및 MAC(Multiply And Accumulation)연산에 집중한다. 그리고 각 모듈 및 도구에서 빈번히 발생하는 곱셈 연산과 MAC연산의 처리를 효율적으로 하기 위하여 대상 프로세서인 ARM926EJ-S에서 사용 가능한 ARMv5용 어셈블리 명령어를 분석하여 사용한다. 최적화된 결과는 MIPS(Million Instruction Per Second)를 기준으로 평가한다. 구현 결과는 96kbps BSAC bitstream을 65MHz CPU clock에서 실시간으로 디코딩할 수 있음을 보여준다.

Keywords