KR0138300B1 - 디지탈 오디오 필터링 방법 및 장치 - Google Patents
디지탈 오디오 필터링 방법 및 장치Info
- Publication number
- KR0138300B1 KR0138300B1 KR1019940030042A KR19940030042A KR0138300B1 KR 0138300 B1 KR0138300 B1 KR 0138300B1 KR 1019940030042 A KR1019940030042 A KR 1019940030042A KR 19940030042 A KR19940030042 A KR 19940030042A KR 0138300 B1 KR0138300 B1 KR 0138300B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- discrete cosine
- inverse discrete
- window
- cosine transform
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000001914 filtration Methods 0.000 title claims abstract description 39
- 239000013598 vector Substances 0.000 claims abstract description 106
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- BTCSSZJGUNDROE-UHFFFAOYSA-N gamma-aminobutyric acid Chemical compound NCCCC(O)=O BTCSSZJGUNDROE-UHFFFAOYSA-N 0.000 claims abstract description 5
- 238000013139 quantization Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 abstract description 2
- 238000006243 chemical reaction Methods 0.000 abstract 1
- 238000004519 manufacturing process Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 101000969688 Homo sapiens Macrophage-expressed gene 1 protein Proteins 0.000 description 4
- 102100021285 Macrophage-expressed gene 1 protein Human genes 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
본 발명에 의한 디지탈 오디오필터링방법 및 그 방법을 수행하기 위한 장치를 공개한다. 디지탈 오디오필터링방법은 부호화된 디지탈 오디오데이타가 복호화되어 역양자화된 32개의 부밴드표본을 입력하여 2048개의 역이산코사인변환계수(Nik)에서 인자 i를 32개로, 인자 k를 16개로 줄이고, Nik가 128개의 서로 다른 값이 되도록 하고, 부밴드표본(S)을 가지고 32개의 역이산코사인벡터(Vi)를 다음 식에 따라서 구하는 역이산코사인벡터단계와,
역이산코사인벡터단계후에 역이산코사인벡터(Vi), 윈도윙벡터(Di) 및 이전 (n-1)블럭의 윈도우드벡터(Wi n-1)로부터 512개의 현재블럭(n)의 윈도우드벡터(Wi n)를 다음 식에 따라 구하는 윈도우드벡터단계와,
(i%p×2란 i를 p의 배수로 나눈후의 나머지를 의미하며, 여기서 %는 나머지 연산자이다.) 윈도우드벡터를 저장후 초기화하고, PCM샘플로 출력하는 것을 특징으로 하고, 디지탈 오디오필터링장치는 부호화된 디지탈 오디오데이타가 복호화되고 역양자화된 부밴드표본을 입력하여 역이산코사인변환계수(Nik)와 윈도윙벡터를 저장하고 있는 제2기억수단과, 역이산코사인변환계수와 부밴드표본을 입력받아 역이산코사인변환벡터를 구하고, 윈도윙벡터와 역이산코사인변환벡터 및 이전 블럭의 윈도우드벡터를 입력받아 현재의 윈도우드벡터를 구하기 위해 연산을 수행하는 연산수단과, 주소발생부가 부밴드표본을 발생하도록 제어하고, 역이산코사인변환계수와 윈도윙벡터가 연산수단에 입력되도록 제어하고, 연산을 제어하는 제어수단을 구비하는 것을 특징으로 하며, 종래의 동작주파수보다 1/4정도 줄어든 낮은 동작주파수에서 동작하기 때문에 회로의 구현이 간단하고, 회로의 제작비가 적게 들며, 역이산코사인변환계수의 수가 줄어들어 ROM테이블이 줄어들고, 따라서 칩 크기 면에서 많은 효과를 볼 수 있다.
Description
제1도는 일반적인 MPEG1-오디오 복호기의 블럭도이다.
제2도는 제1도에 도시된 MPEG1-오디오 복호기의 복호방법을 설명하기 위한 플로우 차트이다.
제3도는 제1도에 도시된 오디오필터부의 필터링방법 중 오버랩애드방법을 설명하기 위한 플로우차트이다.
제4도는 제1도에 도시된 오디오필터부의 필터링방법 중 MPEG1 DIS에서 채택한 방법을 설명하기 위한 플로우차트이다.
제5도는 본 발명에 의한 디지탈 오디오 필터링장치의 필터링방법을 설명하기 위한 플로우 차트이다.
제6도는 제5도에 도시된 플로우차트를 세부적으로 설명하기 위한 본 발명에 의한 플로우 차트이다.
제7도는 제6도에 도시된 플로우차트를 수행하기 위한 본 발명에 의한 디지탈 오디오필터링장치의 블럭도이다.
제8도는 제7도에 도시된 디지탈 오디오필터링장치의 본 발명에 의한 세부적인 블럭도이다.
본 발명은 MPEG(MOVING PICTURE EXPERT GROUP)1-오디오 복호기에 관한 것으로, 특히 PCM샘플을 출력하기 위해 역이산코사인변환을 할때 곱셈의 연산횟수가 줄어든 필터링방법 및 그 방법을 수행하기 위한 장치에 관한 것이다.
동화상 전문가 단체(MPEG:Moving Pictures Expert Group 이하 MPEG)는 디지탈 기록/재생 매체(DSM:Digital Storage Media)를 주 대상으로 하는 동화상 및 음성정보의 부호화에 대한 국제 표준안을 제안하는 활동을 주 업무로 하는 그룹이다. 이 MPEG의 산하에 몇개의 부그룹이 있는데 그 중의 하나가 음성의 부호화를 위한 요구사항을 규정하고 그 규격을 만들어내는 오디오 부그룹이다.
MPEG1 DIS(Draft International Standard)에 제안된 필터링방법인 오버랩-애드(Overlap- Add) 방법의 역이산코사인변환(IDCT:Inverse Discret Cosine Transform 이하 IDCT) 과정에서 복호기의 샘플링 주파수가 44.1KHz라 했을때, 한 표본이 출력되고 다음 표본이 출력되기 전에, 즉 1/44.1KHz시간 동안에 복호기의 모든 연산-즉, 샘플치 분할, 역양자화, IDCT, 필터링 동작-을 마쳐야 한다. MPEG DIS에 제안된 방식으로 오디오필터링했을때 IDCT 과정에서만도 32개의 부밴드표본에 대해 2048번의 곱하기 연산이 이루어 지는데 그 최소 동작주파수를 따져보면 44.1KHz×(2048÷32)=2.8MHz가 된다. IDCT에서만 필요한 주파수가 2.8MHz이므로 역양자화할때나 다른 많은 연산이 이루어 지는 점을 감안하면 최소 동작주파수가 약 5MHz이상은 되어야 한다. 곱셈 과정에서 가장 많은 연산이 이루어지므로 동작주파수를 더 느리게 하는데 한계가 있게 되고 이로 인해 회로가 정밀한 원가가 비싼 칩을 사용해야 하며, 또한 전류소모가 많고, 각종 매개변수의 값이 저장되는 ROM 테이블의 크기가 커서 칩의 크기를 작게 하는데 문제가 있다.
본 발명의 목적은 상기와 같은 종래의 문제점을 해결하기 위하여 IDCT과정에서의 곱셈의 횟수를 획기적으로 줄인 디지탈 오디오 필터링방법 및 장치를 제공하는데 있다.
상기 목적을 달성하기 위하여 본 발명에 의한 디지탈 오디오 필터링방법은 부호화된 디지탈 오디오데이타를 입력하여 부가정보를 복호화하는 복호화단계와, 상기 복호화된 샘플들을 역양자화하여 부밴드표본을 출력하는 역양자화단계와, 상기 부밴드표본을 입력하여 역이산코사인변환하여 윈도우드벡터를 만든 다음 PCM샘플들을 출력하는 오디오필터링단계를 포함하는 디지탈 오디오복호기에서, 상기 오디오필터링단계는 제1소정수(p)의 상기 부밴드표본을 입력받아 제2소정수(x)의 역이산코사인변환계수(Nik:여기서 i와 k는 상기 역이산코사인변환계수가 저장된 주소를 지정하기 위한 인자임)에서 상기 인자 i의 값을 제3소정수로 줄이고, 상기 인자 k의 값을 제4소정수로 줄이고, 상기 역이산코사인변환계수가 제5소정수의 서로 다른 값을 가지도록 하고, 상기 부밴드표본(S)을 가지고 상기 제1소정수의 역이산코사인벡터(Vi)를 다음 식에 따라서 구하는 역이산코사인 벡터단계와,
상기 역이산코사인벡터단계후에 상기 역이산코사인벡터(Vi), 윈도윙벡터(Di) 및 이전(n-1) 블럭의 윈도우드벡터(Wi n-1)로부터 제6소정수의 현재(n)블럭들의 윈도우드벡터(Wi n)를 다음 식에 따라 구하는 윈도우드벡터단계와,
(i%p×2란 i를 p의 배수로 나눈후의 나머지를 의미하며, 여기서 %는 나머지 연산자이다.) 상기 제1소정수로 연속하는 상기 윈도우드벡터들로 구성된 벡터열들이 제5소정수가 있을때, 제1벡터열부터 마지막 벡터열까지 PCM출력버퍼에 순차적으로 저장하는 저장단계와, 상기 벡터열이 상기 PCM출력버퍼에 저장된 후 비어진 상기 윈도우드벡터의 자리로 아직 저장되지 않은 상기 모든 벡터열들을 이동시킨후에 남게되는 상기 윈도우드벡터의 자리를 초기화하는 초기화단계와, 상기 초기화 단계후에 상기 PCM출력버퍼에 저장된 상기 벡터열들을 상기 PCM샘플들로 출력하는 출력단계를 구비하는 것을 특징으로 한다.
상기 다른 목적을 달성하기 위하여 본 발명에 의한 디지탈 오디오 필터링장치는 부호화된 디지탈 오디오데이타를 입력하여 부가정보를 복호화하는 복호화수단과, 상기 복호화된 샘플을 역양자화하여 부밴드표본을 저장하는 제1기억수단 및 상기 역양자화된 부밴드표본이 저장되어 있는 주소를 발생하는 주소발생수단을 포함하는 역양자화수단과, 상기 부밴드표본을 입력하여 역이산코사인변환하여 윈도우드벡터를 만든 다음 PCM샘플을 출력하는 오디오필터링수단을 포함하는 디지탈 오디오복호기에 있어서, 상기 오디오필터링수단은 역이산코사인변환계수(Nik:여기서 i 와 k는 상기 역이산코사인변환계수가 저장된 주소를 지정하기 위한 인자임)와 윈도윙벡터를 저장하고 있는 제2기억수단과, 상기 역이산코사인변환계수와 상기 부밴드표본을 입력받아 상기 역이산코사인변환벡터를 구하고, 상기 윈도윙벡터와 상기 역이산코사인변환벡터 및 이전 블럭의 윈도우드벡터를 입력받아 현재의 윈도우드벡터를 구하기 위해 연산을 수행하는 연산수단과, 상기 주소발생부가 부밴드표본을 발생하도록 제어하고, 상기 역이산코사인변환계수와 상기 윈도윙벡터가 상기 연산수단에 입력되도록 제어하고, 상기 연산을 제어하는 제어수단을 구비하는 것을 특징으로 한다.
이하 도면을 참조하여 본 발명에 의한 디지탈 오디오 필터링방법 및 그 방법을 수행하는 장치를 살펴본다.
본 발명을 설명하기에 앞서 곱셈을 수행하는 디지탈 오디오필터를 포함하는 디지탈 오디오 복호기의 구성 및 동작과, 종래의 오디오필터링방법에 대해 도면을 참조하여 다음과 같이 상세히 설명한다.
제1도는 일반적인 MPEG1-오디오 복호기의 블럭도로서, 디멀티플렉서 및 에러검출부(200), 부가정보복호부(202), 역양자화부(204) 및 오디오필터부(206) 로 구성된다.
제2도는 제1도에 도시된 MPEG1-오디오 복호기의 복호방법을 설명하기 위한 플로우 차트이다.
부호화기에 의해 부호화된 일련의 비트들로 구성된 오디오데이타는 제1도에 도시된 IN으로 입력되어(제400단계) 디멀티플렉서 및 에러검출부(200)에 의해 에러가 검출되고, 부가정보복호부(202)는 디멀티플렉서 및 에러검출부(200)의 출력을 입력받아 헤더정보, 향후 입력되는 데이타의 정보를 저장하기 위한 비트할당(제402단계), 복호화되는 스케일인자 선택정보 및 스케일인자, 표본등을 각각 분할하여 역양자화부(204)에 공급하며(제404단계), 역양자화부(204)는 이를 입력받아 표본을 역양자화하며(제406단계), 오디오필터부(206)는 역양자화된 표본을 입력하여 원래의 오디오 PCM데이타를 복원한다(제408단계). 제408단계 후에 오디오필터부(206)는 PCM샘플을 출력한다(제410단계).
제3도는 제1도에 도시된 오디오필터부(206)의 필터링방법 중 오버랩애드방법을 설명하기 위한 플로우차트이다.
제4도는 제1도에 도시된 오디오필터부(206)의 필터링방법 중 MPEG1 DIS에서 채택한 방법을 설명하기 위한 플로우차트이다.
먼저 오버랩애드방법을 도면 제3도를 참조하여 다음과 같이 상세히 설명한다.
오디오필터부(206)는 32개의 부밴드표본(Sk)을 입력받아(제600단계) 다음 식(1)과 같이 IDCT를 하여 역이산코사인벡터 Vi(i는 벡터인자)를 만든다(제602단계).
위 식(1)에서 i와 k는 인자들이다.
식(1)에서 64개의 Vi를 만든 다음, 이것을 주기적으로 확장하여 512개의 인수의 매개벡터 Ui를 만든다(제604단계). 제604단계후에 다음의 식(2)와 같이 Ui에 윈도윙 벡터 Fi를 곱하여 윈도우드 벡터 Wi를 계산한다(제606단계).
Wi=UiFii=0-511
이렇게 해서 구해진 Wi(i=0-511)는 윈도우드벡터들은 PCM출력버퍼에 저장된다(제608단계). 윈도우드벡터 W0-W31까지가 PCM출력버퍼로 출력된 제608단계후에 W32-W511까지는 W0-W479의 왼쪽으로 이동되고, W480-W511까지까지는 `0'으로 초기화되며, 이와 같은 초기화는 윈도우드 벡터가 PCM출력버퍼에 모두 저장될 때까지 계속한다(제610단계).
제610단계후에 PCM출력버퍼에 저장된 윈도우드 벡터들은 PCM샘플로 출력된다(제612단계).
MPEG1-DIS에서 채택한 오디오필터부(206)의 필터링방법을 제4도를 참조하여 다음과 같이 상세히 설명한다.
오버랩애드방법과 같이 오디오필터부(206)는 역양자화된 32개의 새로운 부밴드 표본을 입력한다(제800단계). 제800단계후에 역이산코사인벡터 V0부터 V959를 V64부터 V1023으로 64개 만큼 이동시킨다(제802단계). 제802단계후에 비워진 역이산코사인벡터 V0부터 V63에 새로 들어온 32개의 부밴드표본(Sk)을 식(1)로 매트릭싱을 한다(제804단계). 제804단계후에 1024개의 역이산코사인벡터 Vi의 중간중간에서 64개씩의 원소들을 취하여 512개의 원소를 갖는 매개벡터 Ui를 구성한다(제806단계). 제806단계후에 매개벡터 Ui에 윈도윙 벡터 Di를 곱하여 윈도우드벡터 Wi를 구성한다(제808단계). 제808단계후에 31개의 윈도우드 벡터 Wi간격으로 건너뛰어 벡터를 추출한뒤 더해서 32개의 출력표본을 다음 식(3)과 같이 구한다(제810단계). 제810단계후에 32개의 출력표본(Tj)을 PCM샘플로 출력한다(제812단계).
T31n=W(31)+W(63)+…+W(551)이다.
여기서 n은 블럭시간을 가리키며, 블럭시간이란, MPEG1 규격으로 부호화된 디지탈오디오 데이타는 순차적으로 입력되는 12개의 블럭으로 구성된 프레임으로 입력이 되는데 이때 각 블럭이 입력되는 시간을 의미한다.
제5도는 본 발명에 의한 디지탈 오디오 필터링장치의 필터링방법을 설명하기 위한 플로우 차트이다.
제6도는 제5도에 도시된 플로우차트를 세부적으로 설명하기 위한 본 발명에 의한 플로우 차트이다.
제7도는 제6도에 도시된 플로우차트를 수행하기 위한 본 발명에 의한 디지탈 오디오필터링장치의 블럭도로서, 역양자화부(1400), 저장부(1402), 제어부(1404) 및 연산부(1406)로 구성되며, 참조부호 1408은 제1도에 도시된 오디오필터부(206)에 대응하고, 참조부호 1400은 제1도에 도시된 역양자화부(204)에 대응한다.
제8도는 제7도에 도시된 본 발명에 의한 디지탈 오디오필터링장치의 세부적인 블럭도로서, 역양자화부(1400)를 구성하는 주소발생부(1600) 및 제1저장부(1602)와 오디오필터부(1408)를 구성하는 제2저장부(1604), 제3저장부(1606), 연산부(1608), 제1제어부(1610) 및 제2제어부(1612)로 구성된다.
디지탈 오디오복호기에서 본 발명에 의한 디지탈 오디오필터링방법 및 그 방법을 수행하는 장치를 상술한 도면 제5, 6, 7 및 8도를 참조하여 다음과 같이 상세히 설명한다.
제7도에 도시된 역양자화부(1400)는 디지탈 오디오데이타의 표본을 역양자화하여 제8도에 도시된 제1저장부(1602)에 단자 IN1를 통해 저장하고, 주소발생부(1600)는 제1제어부(1610)에서 발생되는 제어신호 i와 k(여기서 i와 k는 역이산코사인변환계수의 인자들임)의 제어를 받아 상기 제1저장부(1602)에 저장된 32개의 부밴드표본을 단자 IN2를 통해 곱셈, 덧셈 및 누산을 수행하는 연산부(1608)에 공급하고, 연산부(1603)는 제2저장부(1604)에 저장된 역이산코사인변환계수(Nik)를 제1제어부(1610)의 제어에 따라 입력하여 역이산코사인변환벡터(Vi)를 다음과 같이 구한다(제1000단계).
여기서, 제8도에 도시된 제2제어부(1612)는 무엇이 연산되고 어느것 부터 먼저 연산할 것인가를 결정해 주는 역할을 하며, 제1제어부(1610)는 연산부(1608)에 무엇이 입력될것 인가를 결정해주고, 연산이 덧셈인가 뺄셈인가를 결정해 주기도 한다.
하나의 Vi를 계산하기 위한 방법은 다음의 식(4), (5), (6), (7) 및 (8)에 나타나 있다.
먼저 IDCT에 쓰이는 역이산코사인계수인 Nik는 다음의 식(4)과 같다.
위 식(4)를 다시 쓰면 식(5)가 된다.
위 식(5)에서 보면 cos함수는 주기가 2π이므로 i와 k에 따라 128개의 cos계수만 있으면 된다는 것을 알 수 있다. 물론 64개 더 나아가 32개의 cos계수만 있어도 되지만 하드웨어의 복잡도를 고려할 때 128개의 계수가 가장 무난하다고 할 수 있다. 본 발명에서는 이런 성질을 이용해서 서로 다른 Nik값을 2048개에서 128개로 줄였다.
식(1)을 나열하면 다음의 식(6)과 같이 된다.
Vi=Ni0×S0+Ni1×S1+Ni2×S2+…Ni30×S30+Ni31×S31. i=0-63 식(6)
그런데 식(5)는 cos함수가 2차 평면계에서 Y축을 기준으로 대칭이기 대문에 다음과 같이
Ni0=|Ni31|
Ni1=|Ni30|
Ni2=|Ni32|
: , i=0-63
Ni14=|Ni17|
Ni15=|Ni16|이 되며 식(6)은 다음의 식(7)이 된다.
Vi=Ni0×(S0±S31)+Ni1×(S1±S30)+Ni2×(S2±S29)+…+Ni14×(S14±S17)+Ni31×(S15±S16). 식(7)
여기서 i=0-63이고, 위에서 부밴드 표본(Sk)의 값은 i가 짝수이면 (+)이고, i가 홀수이면 (-)가 된다.
그러므로 식(7)을 정리하면 식(8)로 쓸 수 있다.
상술한 바와 같이 인자 k의 수는 32개에서 16개로 줄어들었음을 알 수 있다(제1200단계).
다음으로 인자 i의 성질을 다음과 같이 살펴본다.
식(8)의 역이산코사인벡터 Vi는 다음과 같은 성질을 가진다.
V0, V1, …, V15까지는 값이 존재하지만 i=16이 되면 식(5)에서 Nik=cos(π/2)의 홀수배가 되어 k값에 상관없이 '0'이다.
또한 i=17이면 식(5)에서
윗 식(9)에서 항②와 항③이 같은 이유도 마찬가지로 cos함수가 2차 평면계의 Y축을 축으로 대칭을 이루고 있기 때문이다.
그러므로 i=17부터 i=32까지도 식(9)와 마찬가지로 다음과 같은 관계가 성립된다.
V17=-V15
V18=-V14
:
V31=-V1
V32=-V0
즉, Vi=-V(32-i), (i=17-32) --------식(10)
가 된다.
마찬가지로
V49=-V42
V50=-V46
:
V62=-V34
V63=-V33
즉 Vi=V(96-i), (i=49-63) ------- 식(11)
이 된다.
상술한 바와 같 인자 i의 수는 종래의 64개에서 32개로 줄어들었음을 알 수 있며(제1202단계), 역이산코사인벡터는 식(8)을 사용하여 구한다(제1204단계).
결과적으로, 역이산코사인벡터(Vi)를 구하기 위한 종래의 디지탈 오디오필터부(206)에서 수행되는 곱셈연산은 i=0-63, k=31이므로 2048(=64×32)번 이었으나 관계식(10), 식(11) 및 식(8)에 의해 알 수 있는 바, IDCT에 소요되는 본 발명에 의한 디지탈 오디오필터링장치의 곱셈연산은 i=0-15, i=33-48 및 k=0-15이므로 총 512(=32×16)번이 되어 종래의 MPEG DIS에 제시된 필터링방법에 의한 총 곱셈횟수에 비해 1/4로 줄어듬을 알 수 있다.
IDCT에서 곱셈의 연산을 줄이기 위한 오디오필터링장치의 동작은 제1제어부(1610)가 상술한 인자 i와 k의 값만을 발생하여 제8도에 도시된 주소발생부(1600)에 공급하여 제1저장부(1602)가 부밴드표본을 발생하도록 제어하고, 제2저장부(1604)가 필요한 역이산코사인변환계수를 연산부(1608)에 공급하도록 제어함으로서 이루어진다.
제1000단계후에 윈도우드벡터(Wi)를 구하여 PCM출력버퍼에 저장하기 위하여(제1002단계) 제8도에 도시된 연산부(1608)는 제1제어부(1610)의 제어를 받아 제3저장부(1606)로부터 윈도윙벡터 Di를 입력하여 V(i%64)에 곱한 다음 연산부(1608)의 누산기에 저장된 이전(n) 블럭의 윈도우드벡터(Wi n-1)를 가산하여 하나의 Vi로부터 구할 수 있는 윈도우드 벡터(Wi n-1)를 식(12)를 통해 512개 구한다(제1206단계).
식(12)에서 연산자 %는 나머지를 취하는 연산자로서, V(i%64)는 인자 i를 64로 나눈후 나머지에 해당하는 인자의 역이산코사인벡터를 의미한다.
연산부(1608)는 제1206단계후에 구하여진 512개의 Wi중 앞에서부터 32개의 벡터 W0부터 W31까지를 PCM출력버퍼에 순차적으로 저장한다(제1208단계).
제1208단계후에 윈도우드벡터를 초기화시키기 위해(제1004단계), 연산부(1608)는 W32부터 W511까지를 W0에서 W479까지로 이동시킨 다음, W480부터 W511까지를 '0'으로 초기화 시킨다(제1210단계).
제1210단계후에 PCM출력버퍼에 저장된 윈도우드벡터를 PCM샘플로 출력하게 된다(제1006단계 및 제1212단계).
또한 종래에는 Vi를 저장하기 위한 버퍼가 필요하였으나 본 발명에 의한 오디오 필터링장치에서는 식(10) 및 식(11)을 이용하여 Vi를 없앤다. 즉, V0을 계산한 후 V0만을 이용해서 구할 수 있는 모든 Wi를 계산하는 이 방법을 다음의 식(13)에서 알 수 있다.
이상과 같이 Wi를 구하면 Vi버퍼는 필요없게 된다.
결론적으로, MPEG DIS에서 제시하는 오디오 필터링방법과 장치를 본 발명에 의한 오디오 필터링장치를 비교해 볼 때 복호기의 출력샘플링 주파수 44.1KHz에서 IMDCT에 필요한 최소 주파수는 44.1KHz×(512÷32)0.7MHz, 즉 전체 필요한 동작주파수는 약 1.4MHz로써 종래의 동작주파수보다 1/4정도 줄어든 낮은 동작주파수에서 동작하기 때문에 회로의 구현이 간단하고, 회로의 제작비가 적게 들며, 역이산코사인변환계수(Nik)의 수가 줄었기 때문에 ROM테이블이 줄어들고, 따라서 칩 크기 면에서 많은 효과를 볼 수 있다.
Claims (6)
- 부호화된 디지탈 오디오데이타를 입력하여 부가정보를 복호화하는 복호화단계와, 상기 복호화된 샘플들을 역양자화하여 부밴드표본을 출력하는 역양자화단계와, 상기 부밴드표본을 입력하여 역이산코사인변환하여 윈도우드벡터를 만든 다음 PCM샘플들을 출력하는 오디오필터링단계를 포함하는 디지탈 오디오복호기에서, 상기 오디오필터링단계는제1소정수(p)의 상기 부밴드표본을 입력받아 제2소정수(x)의 역이산코사인변환계수(Nik:여기서 i와 k는 상기 역이산코사인변환계수가 저장된 주소를 지정하기 위한 인자임)에서 상기 인자 i의 값을 제3소정수로 줄이고, 상기 인자 k의 값을 제4소정수로 줄이고, 상기 역이산코사인변환계수가 제5소정수의 서로 다른 값을 가지도록 하고, 상기 부밴드표본(S)을 가지고 상기 제1소정수의 역이산코사인벡터(Vi)를 다음 식에 따라서 구하는 역이산코사인벡터단계;상기 역이산코사인벡터단계후에 상기 역이산코사인벡터(Vi), 윈도윙벡터(Di) 및 이전(n-1)블럭의 윈도우드벡터(Wi n-1)로부터 제6소정수의 현재(n)블럭의 윈도우드벡터(Wi n)를 다음 식에 따라 구하는 윈도우드벡터 단계:(i%p×2란 i를 p의 배수로 나눈후의 나머지를 의미하며, 여기서 %는 나머지 연산자이다.)상기 제1소정수로 연속하는 상기 윈도우드벡터들로 구성된 벡터열들의 제5소정수가 있을때, 제1벡터열부터 마지막 벡터열까지 PCM출력버퍼에 순차적으로 저장하는 저장단계;상기 벡터열이 상기 PCM출력버퍼에 순차적으로 저장된 후 비어진 상기 윈도우드벡터의 자리로 아직 저장되지 않은 상기 모든 벡터열들을 이동시킨후에 남게 되는 상기 윈도우드벡터의 자리를 초기화하는 초기화단계;상기 초기화 단계후에 상기 PCM출력버퍼에 저장된 상기 벡터열들을 상기 PCM샘플들로 출력하는 출력단계를 구비하는 것을 특징으로 하는 디지탈 오디오필터링방법.
- 제1항에 있어서,상기 역이산코사인벡터단계 및 상기 윈도우드벡터단계는상기 제1소정수는 32개이고, 상기 제2소정수는 2048개이고, 상기 제3소정수는 32개이고, 상기 제4소정수는 16개이고, 상기 제5소정수는 128개이고, 상기 제6소정수는 512개로서, 상기 역이산코사인벡터를 구하는데 필요한 곱셈의 횟수가 제6소정수인 것을 특징으로 하는 디지탈 오디오필터링방법.
- 제1항에 있어서,상기 윈도우드벡터단계는 상기 인자 i가 상기 제1소정수의 짝수배인 상기 역이산코사인벡터들을 상기 인자 i가 0인 역이산코사인벡터로 나타내는 것을 특징으로 하는 디지탈 오디오필터링방법.
- 부호화된 디지탈 오디오데이타를 입력하여 부가정보를 복호화하는 복호화수단과, 상기 복호화된 샘플을 역양자화하여 부밴드표본을 저장하는 제1기억수단 및 상기 역양자화된 부밴드표본이 저장되어 있는 주소를 발생하는 주소발생수단을 포함하는 역양자화수단과, 상기 부밴드표본을 입력하여 역이산코사인변환하여 윈도우드벡터를 만든 다음 PCM샘플을 출력하는 오디오필터링수단을 포함하는 디지탈 오디오복호기에 있어서, 상기 오디오필터링수단은역이산코사인변환계수(Nik:여기서 i와 k는 상기 역이산코사인변환계수가 저장된 주소를 지정하기 위한 인자임)와 윈도윙벡터를 저장하고 있는 제2기억수단;상기 역이산코사인변환계수와 상기 부밴드표본을 입력받아 상기 역이산코사인변환벡터를 구하고, 상기 윈도윙벡터와 상기 역이산코사인변환벡터 및 이전 블럭의 윈도우드벡터를 입력받아 현재의 윈도우드벡터를 구하기 위해 연산을 수행하는 연산수단;상기 주소발생부가 부밴드표본을 발생하도록 제어하고, 상기 역이산코사인변환계수와 상기 윈도윙벡터가 상기 연산수단에 입력되도록 제어하고, 상기 연산을 제어하는 제어수단을 구비하는 것을 특징으로 하는 디지탈 오디오필터링장치.
- 제4항에 있어서,상기 제2기억수단은 상기 역이산코사인변환게수를 저장하는 제3기억수단; 상기 윈도윙벡터를 저장하는 제4기억수단을 구비하는 것을 특징으로 하는 디지탈필터링장치.
- 제4항에 있어서,상기 제어수단은 상기 역이산코사인변환벡터를 구하기 위해 필요한 상기 인자 i와 k의 값을 계산하여 상기 주소발생부로 공급하고, 상기 제2 및 제3기억수단의 주소를 지정하고, 상기 연산수단을 제어하는 제1제어수단; 상기 연산수단을 제어하는 제2제어수단을 구비하는 것을 특징으로 하는 디지탈 필터링장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940030042A KR0138300B1 (ko) | 1994-11-16 | 1994-11-16 | 디지탈 오디오 필터링 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940030042A KR0138300B1 (ko) | 1994-11-16 | 1994-11-16 | 디지탈 오디오 필터링 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960018982A KR960018982A (ko) | 1996-06-17 |
KR0138300B1 true KR0138300B1 (ko) | 1998-05-15 |
Family
ID=19398045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019940030042A KR0138300B1 (ko) | 1994-11-16 | 1994-11-16 | 디지탈 오디오 필터링 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0138300B1 (ko) |
-
1994
- 1994-11-16 KR KR1019940030042A patent/KR0138300B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR960018982A (ko) | 1996-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6064954A (en) | Digital audio signal coding | |
EP2052548B1 (en) | Encoder, decoder and methods for encoding and decoding data segments representing a time-domain data stream | |
KR100296549B1 (ko) | 음성신호를 부호화 및 복호화하는 방법 | |
JP4689625B2 (ja) | 信号解析及び合成のための適応型混合変換 | |
JP4398979B2 (ja) | 変換表現に転換するか、または変換表現を逆変換するための装置および方法 | |
JPH06506070A (ja) | スペクトル補間および高速コードブックサーチを有する音声コーダおよび方法 | |
JP2002526798A (ja) | 複数チャネル信号の符号化及び復号化 | |
CN101484937B (zh) | 使用缓冲器调节对已预测编码的数据进行解码 | |
WO2008021247A2 (en) | Arbitrary shaping of temporal noise envelope without side-information | |
JPH08263098A (ja) | 音響信号符号化方法、音響信号復号化方法 | |
JP2001519552A (ja) | ビットレートスケーラブルなオーディオデータストリームを生成する方法および装置 | |
EP0401452B1 (en) | Low-delay low-bit-rate speech coder | |
RU2754437C1 (ru) | Способ и устройство для распределения битового бюджета между подкадрами в celp-кодеке | |
KR0138300B1 (ko) | 디지탈 오디오 필터링 방법 및 장치 | |
US5822721A (en) | Method and apparatus for fractal-excited linear predictive coding of digital signals | |
Hilpert et al. | Real-Time Implementation of the MPEG-4 Low-Delay Advanced Audio Coding Algorithm (AAC-LD) on Motorola's DSP56300 | |
KR102569784B1 (ko) | 오디오 코덱의 장기 예측을 위한 시스템 및 방법 | |
US6785646B2 (en) | Method and system for performing a codebook search used in waveform coding | |
KR0181587B1 (ko) | 엠펙-1 오디오 복호기의 합성 필터링 장치 및 방법 | |
DE60210174T2 (de) | Verfahren zur Signalkodierung mittels einer Vektorquantisierung | |
US5761633A (en) | Method of encoding and decoding speech signals | |
JP3154293B2 (ja) | 音声信号帯域合成復号化装置 | |
De Smet et al. | Do not zero-pute: An efficient homespun MPEG-Audio layer II decoding and optimization strategy | |
JP3258526B2 (ja) | 圧縮音声伸長装置 | |
Oh et al. | New implementation techniques of a real-time MPEG-2 audio encoding system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20100216 Year of fee payment: 13 |
|
LAPS | Lapse due to unpaid annual fee |