적응형 다중 비트 (AMR: adaptive multi-rate)은 ETSI (European Telecommunications Standards Institute)에서 채택한 광대역 코드분할 다중화(W-CDMA: wideband cadedivision multiple access)용 음성 부호화표준방식으로서 채널 상태의 변화에 따라 가변적인 전송률을 가진다. 본 논문에서는 적응형 다중 비트 음성 부호화 알고리즘을 분석하고 C프로그램 최적화 과정을 거친 후OakDSPCore/sup R/를 기반으로 설계된 C&S Technology사의 CSD17C00A칩을 이용하여 전과정을 어셈블리어로 실시간 구현하였다. 구현된 코덱은 최대의 계산량을 요구하는6.7 kbps 모드일때 인코더부분이 최대 20.6MIPS이며 디코더부분은 약2.7MIPS의 복잡도를 나타낸다. 사용된 메모리는 약 21.33 kwords, 데이터 RAM메모리는 약 4.25 kwords를 가지며 데이터 ROM메모리는 약 15.1kwords 이다. 구현된 코덱은 최대 약 23.29MIPS의 복잡도를 가지고 있으므로 40MIPS의 성능을 가지는 CSD17C00A를 이용한 보드상에서 실시간 동작이 가능함을 확인하였다. 구현된 프로그램은 ETSI에서 제공하는 21개의 테스트 (test) 벡터를 통하여 bit-exact함을 확인하였다. 그리고 마이크와 스피커를 이용한 실시간 음성 입출력이 음질의 왜곡이나 지연없이 실시간으로 동작함을 확인하였다.
적응형 다중 비트 (AMR: adaptive multi-rate)은 ETSI (European Telecommunications Standards Institute)에서 채택한 광대역 코드분할 다중화(W-CDMA: wideband cadedivision multiple access)용 음성 부호화표준방식으로서 채널 상태의 변화에 따라 가변적인 전송률을 가진다. 본 논문에서는 적응형 다중 비트 음성 부호화 알고리즘을 분석하고 C프로그램 최적화 과정을 거친 후OakDSPCore/sup R/를 기반으로 설계된 C&S Technology사의 CSD17C00A칩을 이용하여 전과정을 어셈블리어로 실시간 구현하였다. 구현된 코덱은 최대의 계산량을 요구하는6.7 kbps 모드일때 인코더부분이 최대 20.6MIPS이며 디코더부분은 약2.7MIPS의 복잡도를 나타낸다. 사용된 메모리는 약 21.33 kwords, 데이터 RAM메모리는 약 4.25 kwords를 가지며 데이터 ROM메모리는 약 15.1kwords 이다. 구현된 코덱은 최대 약 23.29MIPS의 복잡도를 가지고 있으므로 40MIPS의 성능을 가지는 CSD17C00A를 이용한 보드상에서 실시간 동작이 가능함을 확인하였다. 구현된 프로그램은 ETSI에서 제공하는 21개의 테스트 (test) 벡터를 통하여 bit-exact함을 확인하였다. 그리고 마이크와 스피커를 이용한 실시간 음성 입출력이 음질의 왜곡이나 지연없이 실시간으로 동작함을 확인하였다.
An adaptive multi-rate (AMR) speech coder was adopted as a standard of W-CDMA by 3GPP and ETSI. The AMR coder is based on the CELP algorithm operating at rates ranging from 12.2 kbps down to 4.75 kbps, and it is a source controlled codec according to the channel error conditions and the traffic load...
An adaptive multi-rate (AMR) speech coder was adopted as a standard of W-CDMA by 3GPP and ETSI. The AMR coder is based on the CELP algorithm operating at rates ranging from 12.2 kbps down to 4.75 kbps, and it is a source controlled codec according to the channel error conditions and the traffic loading. In this paper, we implement the DSP S/W of the AMR coder using OakDSPCore. The implementation is based on the CSD17C00A chip developed by C&S Technology, and it is tested using test vectors, for the AMR speech codec, provided by ETSI for the bit exact implementation. The DSP B/W requires 20.6 MIPS for the encoder and 2.7 MIPS for the decoder. Memories required by the Am coder were 21.97 kwords, 6.64 kwords and 15.1 kwords for code, data sections and data ROM, respectively. Also, actual sound input/output test using microphone and speaker demonstrates its proper real-time operation without distortions or delays.
An adaptive multi-rate (AMR) speech coder was adopted as a standard of W-CDMA by 3GPP and ETSI. The AMR coder is based on the CELP algorithm operating at rates ranging from 12.2 kbps down to 4.75 kbps, and it is a source controlled codec according to the channel error conditions and the traffic loading. In this paper, we implement the DSP S/W of the AMR coder using OakDSPCore. The implementation is based on the CSD17C00A chip developed by C&S Technology, and it is tested using test vectors, for the AMR speech codec, provided by ETSI for the bit exact implementation. The DSP B/W requires 20.6 MIPS for the encoder and 2.7 MIPS for the decoder. Memories required by the Am coder were 21.97 kwords, 6.64 kwords and 15.1 kwords for code, data sections and data ROM, respectively. Also, actual sound input/output test using microphone and speaker demonstrates its proper real-time operation without distortions or delays.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
제안 방법
본 논문에서 다중형 적응 비트 (AMR) 알고리즘을 분석 및 최적화하고 C&S Technology 사의 CSD17C00A 칩을 이용하여 전과정을 어셈블리어로 실시간 구현하였다. 본 논문에서 사용한 CSD17C00A 칩은 DSP 그룹사에서 개발된 저전력 소비형 16비트 고정 소수점 DSPcore인 OakDSPCore®를 기반으로miscell-aneous로직, 직렬포트 compander, 호스트 인터페이스 및 타이머의 5가지 주변장치와범용 I/O 포트로 설계되었고, 최대 40MIPS의 처리 용량을 갖는다.
본 논문에서 다중형 적응 비트 (AMR) 알고리즘을 분석 및 최적화하고 C&S Technology 사의 CSD17C00A 칩을 이용하여 전과정을 어셈블리어로 실시간 구현하였다. 본 논문에서 사용한 CSD17C00A 칩은 DSP 그룹사에서 개발된 저전력 소비형 16비트 고정 소수점 DSPcore인 OakDSPCore®를 기반으로miscell-aneous로직, 직렬포트 compander, 호스트 인터페이스 및 타이머의 5가지 주변장치와범용 I/O 포트로 설계되었고, 최대 40MIPS의 처리 용량을 갖는다.
본 논문에서 다중형 적응 비트 (AMR) 알고리즘을 분석 및 최적화하고 C&S Technology 사의 CSD17C00A 칩을 이용하여 전과정을 어셈블리어로 실시간 구현하였다. 본 논문에서 사용한 CSD17C00A 칩은 DSP 그룹사에서 개발된 저전력 소비형 16비트 고정 소수점 DSPcore인 OakDSPCore®를 기반으로miscell-aneous로직, 직렬포트 compander, 호스트 인터페이스 및 타이머의 5가지 주변장치와범용 I/O 포트로 설계되었고, 최대 40MIPS의 처리 용량을 갖는다.
본 논문에서는 광대 역 코드분할 다중화 (W-CDMA)용 음성부호화 방식 표준인 적응형 다중 비트 음성 코덱을 고정 소수점 DSP인 OakDSPCore®를 기반으로 설계된 C&S Technology사의 CSD17C00A 칩을 이용하여 실시간 구현하였다. 구현된 어셈블리 프로그램은 최대의 계산량을 갖는 6.
본 논문에서는 광대 역 코드분할 다중화 (W-CDMA)용 음성부호화 방식 표준인 적응형 다중 비트 음성 코덱을 고정 소수점 DSP인 OakDSPCore®를 기반으로 설계된 C&S Technology사의 CSD17C00A 칩을 이용하여 실시간 구현하였다. 구현된 어셈블리 프로그램은 최대의 계산량을 갖는 6.
부호화 과정시 음질에 영향을 미칠 수 있는 음성 신호의 저주파성분을 제거하기 위해 차단 주파수가 80 Hz인 고대역 통과 필터를 전처리 과정으로 사용하였다. 또한 입력 신호를 2로 나누어 줌으로써 fixed-point 구현시 overflow의 위험을 방지한다.
부호화 과정시 음질에 영향을 미칠 수 있는 음성 신호의 저주파성분을 제거하기 위해 차단 주파수가 80 田인고 대역 통과 필터를 전처리 과정으로 사용하였다.
개발 환경 구축 단계에서는 적응형 다중 비트 알고리즘을 분석하고 C 소스를 검토하여 call tree를 작성하고 부호화기 및 복호화기에 필요한 메모리를 조사한다. 실제 구현 이전의 알고리즘 분석을 통하여 계산량 감소 방안을 모색하였다. 계산량 감소를 위해서 dual-operation을 사용하였는데 이를 위해서는 연산자가 각각 X-머모리와 y-메모리에 위치하여야 한다.
여기서 계산량의 많은 부분을 차지하는 고정 코드북 팀색 및 피치 분석 부분에 많은 비중을 두었다. 어셈블러 코딩과정에서 각 모듈의 계산량 및 메모리를 분석하고 알고리즘을 재구성하여 최적화를 수행하였다. 어셈블러 코딩후 overflow, 프로그램 작성 과정의 오류 등을 찾아내어 수정하였으며 초기에 설정된 메모리를 전체 코덱에 적합하게 재배치하였다.
어셈블러 코딩과정에서 각 모듈의 계산량 및 메모리를 분석하고 알고리즘을 재구성하여 최적화를 수행하였다. 어셈블러 코딩후 overflow, 프로그램 작성 과정의 오류 등을 찾아내어 수정하였으며 초기에 설정된 메모리를 전체 코덱에 적합하게 재배치하였다. 구현된 DSP 소프트웨어를 검증하기 위해 ETSI와 3GPP에서 제공하는 21개의 테스트 벡터를 이용하였으며 모두 bit-exact하게 통과하였다[4].
CSD17C00A칩은 4kwords의 데이터 RAM과9kwords의 데이터 ROM이 내장되어 있고 “ Taw / A-law linear converter가 지원되는 2개의 직렬 포트와 소프트웨어 볼륨 조절 등의 기능이 내장되어 음성 압축/재생용으로 아주 적합하다. DSP프로그램의 개발은 개발환경 구축。프로그램 최적화, 어셈블리 코딩 및 최적화, bit-exactness 검증의4 단계로 구별되어 수행되었다. 실시간 구현의 단계는 그림 3과 같다.
CSD17C00A칩은 4kwords의 데이터 RAM과9kwords의 데이터 ROM이 내장되어 있고 “ Taw / A-law linear converter가 지원되는 2개의 직렬 포트와 소프트웨어 볼륨 조절 등의 기능이 내장되어 음성 압축/재생용으로 아주 적합하다. DSP프로그램의 개발은 개발환경 구축。프로그램 최적화, 어셈블리 코딩 및 최적화, bit-exactness 검증의4 단계로 구별되어 수행되었다. 실시간 구현의 단계는 그림 3과 같다.
대상 데이터
위의 실험에서 사용된 데이터는 총 328개의 프레임으로 구성되어 있으며, 그 중DTX모드에 해당되는 프레임은92개이다. 실시간구현 결과는.
위의 실험에서 사용된 데이터는 총 328개의 프레임으로 구성되어 있으며, 그 중DTX모드에 해당되는 프레임은92개이다. 실시간구현 결과는.
데이터처리
3MIPS의 복잡도를 나타낸다. ETSI와 3GPP에서 제공된 21개 test 벡터들을 이용한 검증을 통하여 C 시뮬레이션의 결과와 bit-exact함을 확인하였다. 또한 DSP 보드에 장착된 마이크를 통해 얻어진 음성 입력이 부호화 및 복호화의 과정을 거쳐 지연 및 왜곡 없이 실시간으로 처리됨을 확인 하였다.
성능/효과
실시간으로 음성 부호화기가 동작하기 위해서는 복잡도가 DSP 칩의 처리용량을 초과하지 않아야 한다. Osk^SPCore®의 최대 처리용량이 40MIPS 이므로 표 1에 나타난 구현결과는 실시간 동작 조건을 만족하는 우수한 성능을 나타냄을 알 수 있다.
ETSI와 3GPP에서 제공된 21개 test 벡터들을 이용한 검증을 통하여 C 시뮬레이션의 결과와 bit-exact함을 확인하였다. 또한 DSP 보드에 장착된 마이크를 통해 얻어진 음성 입력이 부호화 및 복호화의 과정을 거쳐 지연 및 왜곡 없이 실시간으로 처리됨을 확인 하였다.
ETSI와 3GPP에서 제공된 21개 test 벡터들을 이용한 검증을 통하여 C 시뮬레이션의 결과와 bit-exact함을 확인하였다. 또한 DSP 보드에 장착된 마이크를 통해 얻어진 음성 입력이 부호화 및 복호화의 과정을 거쳐 지연 및 왜곡 없이 실시간으로 처리됨을 확인 하였다.
계산량 감소를 위해서 dual-operation을 사용하였는데 이를 위해서는 연산자가 각각 X-머모리와 y-메모리에 위치하여야 한다. 이러한 조건을 만족시키고 각 모듈의 특성에 맞도록 메모리를 최적으로 배치함으로써 구현시 계산량을 감소시 킬 수 있었다. 또한 C 프로그램의 불필요한부분 및 어셈블러의 특성과 맞지 않는 구조는 계산량의 증가를 가져오게 되는데, 이러한 부분을 사전에 제거하여 어셈블러 구현에 적합하도록 C 프로그램을 최적화하였다[3].
구현된 DSP 소프트웨어를 검증하기 위해 ETSI와 3GPP에서 제공하는 21개의 테스트 벡터를 이용하였으며 모두 bit-exact하게 통과하였다[4]. 최종적으로 DSP 보드상에서 음성을 실시간 입 력하여 인코딩 및 디코딩 의 절차를 거친후 실시간 출력음을 확인함으로써 실시간 구현 여부와 C 프로그램의 출력음과 동등한 음질을 가지는 것을 확인할 수 있었다. 이 러한 과정을 통해 구현된 적응형 다중 비트 코덱의 각 전송률별 복잡도를 표 1에 나타냈다.
구현된 DSP 소프트웨어를 검증하기 위해 ETSI와 3GPP에서 제공하는 21개의 테스트 벡터를 이용하였으며 모두 bit-exact하게 통과하였다[4]. 최종적으로 DSP 보드상에서 음성을 실시간 입 력하여 인코딩 및 디코딩 의 절차를 거친후 실시간 출력음을 확인함으로써 실시간 구현 여부와 C 프로그램의 출력음과 동등한 음질을 가지는 것을 확인할 수 있었다. 이 러한 과정을 통해 구현된 적응형 다중 비트 코덱의 각 전송률별 복잡도를 표 1에 나타냈다.
후속연구
OakDSPCore®의 최대 처리용량이 40MIPS 이고 ASIC 공정에서 구현이 가능한 코어 형태이므로 IMT-2000용 이동단말기의 모뎀칩에 활용이 가능할 것으로 생각된다.
OakDSPCore®의 최대 처리용량이 40MIPS 이고 ASIC 공정에서 구현이 가능한 코어 형태이므로 IMT-2000용 이동단말기의 모뎀칩에 활용이 가능할 것으로 생각된다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.