디지털 방송용 오디오 디코더의 DSP 최적화 구현

본 논문에서는 디지털 라디오와 지상파 Digital Multimedia Broadcasting (DMB)에서 사용되는 MUSICAM이라 불리는 MPEG-1/2 Layer-Ⅱ와 MPEG-4 ER-BSAC 디코더를 330 ㎒ 클럭수를 가지고 동작하는 고정 소수점 digital signal processor (DSP) TMS320C64x+ 상에 실시간 구현한다. 오디오 디코더의 실시간 구현하기 위해, 다음과 같은 여러 단계의 최적화를 수행한다. 첫째, 메모리 공유, 데이터 타입 재설정 및 루프의 unrolling 과정을 통해, C 코드 레벨에서 최적화를 수행한다. 다음으로, 비트스트림 분석의 재구성, 합성 필터의 변경 및 합성 필터의 윈도우 계수의 재배열을 통해 알고리즘 레벨에서 최적화를 수행한다. 또한, MPEG-1/2 Layer-Ⅱ 디코더의 합성필터 모듈을 linear assembly program 레벨로 치환한다. Linear assembly program 레벨로 치환하는 이유는 MPEG-1/2 Layer-Ⅱ 디코더에서 합성 필터 모듈이 가장 많은 계산량을 차지하기 때문이다. 구현된 오디오 디코더의 성능 평가를 위해, 복호화 처리시간의 비율을 측정하고, 최적화된 MPEG 디코더와 레퍼런스 MPEG 디코더로 처리된 오디오 신호사이의 root mean square (RMS)를 계산한다. 최적화 실시간 구현 결과, MPEG-1/2 Layer-Ⅱ와 MPEG-4 ER-BSAC 디코더는 TMS320C64x+가 동작하는 최대 클럭 수의 3%와 11%의 사용으로 각각 동작하며, 오디오 디코더의 품질은 MPEG standard에 정의된 -77.01 ㏈의 조건을 모두 만족함을 확인할 수 있었다.