KR19980017375A - Adaptive differential pulse code modulation restoration circuit - Google Patents

Adaptive differential pulse code modulation restoration circuit Download PDF

Info

Publication number
KR19980017375A
KR19980017375A KR1019960037151A KR19960037151A KR19980017375A KR 19980017375 A KR19980017375 A KR 19980017375A KR 1019960037151 A KR1019960037151 A KR 1019960037151A KR 19960037151 A KR19960037151 A KR 19960037151A KR 19980017375 A KR19980017375 A KR 19980017375A
Authority
KR
South Korea
Prior art keywords
data
output
step size
index
input
Prior art date
Application number
KR1019960037151A
Other languages
Korean (ko)
Other versions
KR0182181B1 (en
Inventor
이영준
Original Assignee
김광호
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김광호, 삼성전자주식회사 filed Critical 김광호
Priority to KR1019960037151A priority Critical patent/KR0182181B1/en
Publication of KR19980017375A publication Critical patent/KR19980017375A/en
Application granted granted Critical
Publication of KR0182181B1 publication Critical patent/KR0182181B1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M3/00Conversion of analogue values to or from differential modulation
    • H03M3/04Differential modulation with several bits, e.g. differential pulse code modulation [DPCM]
    • H03M3/042Differential modulation with several bits, e.g. differential pulse code modulation [DPCM] with adaptable step size, e.g. adaptive differential pulse code modulation [ADPCM]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3002Conversion to or from differential modulation
    • H03M7/3044Conversion to or from differential modulation with several bits only, i.e. the difference between successive samples being coded by more than one bit, e.g. differential pulse code modulation [DPCM]
    • H03M7/3046Conversion to or from differential modulation with several bits only, i.e. the difference between successive samples being coded by more than one bit, e.g. differential pulse code modulation [DPCM] adaptive, e.g. adaptive differential pulse code modulation [ADPCM]

Abstract

이 발명은 적응차분 펄스부호변조(ADPCM : Adaptive Differential Pulse Code Modulation) 복원회로(decompress circuit)에 관한 것으로서,The present invention relates to an adaptive differential pulse code modulation (ADPCM) decompress circuit.

적응차분 펄스부호변조에 의해 압축된 데이타를 입력하는 입력 레지스터; 상기 입력 레지스터에서 출력되는 데이타를 디코딩하여 그 데이타 고유의 인덱스를 생성하여 어드레스로서 제공하는 인덱스 발생부; 각 어드레스에 대응하여 소정의 스텝크기를 미리 저장하고 있으며, 상기 인덱스 발생부에서 어드레스가 입력되면, 그에 대응하는 스텝크기를 출력하는 스텝크기 발생부; 상기 입력 레지스터에서 출력되는 데이타의 각 비트데이타 상태에 따라 상기 스텝크기 발생부에서 출력되는 스텝크기 또는 그라운드 데이타를 선택하며, 상기 선택된 데이타를 한 주기 이전에 선택된 데이타와 가산하여 출력하는 복원부;및 상기 복원부에서 출력되는 데이타와 한 주기 이전의 출력데이타를 가산하여 얻어지는 데이타를 출력데이타로서 제공하는 데이타 출력부로 구성되어,An input register for inputting data compressed by adaptive differential pulse code modulation; An index generator which decodes the data output from the input register, generates an index unique to the data, and provides the index as an address; A step size generation unit for storing a predetermined step size corresponding to each address in advance, and outputting a step size corresponding to the address if an address is input from the index generation unit; A restoration unit for selecting a step size or ground data output from the step size generation unit according to each bit data state of the data output from the input register, and adding the selected data with the selected data one cycle before; And a data output unit for providing data obtained by adding the data output from the decompression unit and the output data one cycle earlier as output data,

기존의 회로보다 칩면적이 작고, 더 빨리 동작하는 적응차분 펄스부호변조 복원회로를 구현할 수 있다.It is possible to implement an adaptive differential pulse code modulation recovery circuit having a smaller chip area and operating faster than the conventional circuit.

Description

적응차분 펄스부호변조 복원회로Adaptive differential pulse code modulation restoration circuit

이 발명은 적응차분 펄스부호변조(ADPCM : Adaptive Differential Pulse Code Modulation, 이하 ADPCM이라 한다.) 복원회로(Decompress circuit)에 관한 것으로서, 더욱 상세하게 말하자면 압축된 ADPCM 코드를 입력하여 리니어 코드(linear code)로 변환하기 위한 복원회로에 관한 것이다.The present invention relates to an adaptive differential pulse code modulation (ADPCM) decompressor circuit, and more specifically, to a linear code by inputting a compressed ADPCM code. It relates to a recovery circuit for converting to.

디지탈 통신 시스템(Digital Communication system), 디지탈 오디오(Digital Audio) 및 퍼스널 컴퓨터(Personal Computer)의 사운드 카드(Sound Card) 또는 이와 유사한 장치에는 펄스부호변조(PCM : Pulse Code Modulation, 이하 PCM이라 한다.) 방식의 데이타가 많이 사용되고 있다.Pulse Code Modulation (PCM) for digital communication systems, digital audio, and sound cards or similar devices of personal computers. The data of the method is used a lot.

이러한 PCM 방식은 아날로그 신호를 2진수를 기본으로 하는 부호로 변환함으로써 정보를 보다 효율적으로 전송할 수 있는 변조방식이다.The PCM method is a modulation method that can transmit information more efficiently by converting an analog signal into a code based on a binary number.

기본적으로, PCM은 샘플링, 양자화, 부호화 과정을 가진다. 샘플링 과정은 아날로그 신호의 레벨에 대하여 일정한 샘플링 시간마다 나타나는 순시치를 검출하는 것이며, 양자화 과정은 상기 검출된 순시치를 미리 정하여 놓은 양자화 레벨에 가장 가까운 값에 근사시키는 것이며, 부호화 과정은 상기 근사된 양자화 레벨에 대하여 부호를 부가하는 것이다.Basically, PCM has a sampling, quantization, and encoding process. The sampling process is to detect the instantaneous values that appear at regular sampling times with respect to the level of the analog signal, and the quantization process is to approximate the detected instantaneous value to a value closest to a predetermined quantization level, and the encoding process is to approximate the approximated quantization level. Is to add a sign to.

상기와 같은 PCM 방식에 의해 얻어지는 코드는 2진 데이타이므로, 위에서 언급한 디지탈 장치에 적용될 수 있는 장점을 가진다.Since the code obtained by the PCM scheme as described above is binary data, it has an advantage that it can be applied to the above-mentioned digital apparatus.

그런데, 상기 PCM 방식은 아날로그 신호의 절대 레벨을 부호화하므로, 아날로그 신호가 음성(Voice) 또는 사운드(Sound)와 같이 최대진폭이 평균진폭에 비해 그다지 높지 않을 때에는 효율이 떨어지고, 부호화시의 비트율(bit rate)이 큰 문제점이 있다.However, since the PCM method encodes an absolute level of an analog signal, when the analog signal is not so high as the average amplitude such as voice or sound, the efficiency is lowered, and the bit rate at the time of encoding is increased. Rate is a big problem.

위와 같은 단점을 극복하기 위하여, 신호 레벨의 차분을 부호화하는 차분 펄스부호변조(DPCM : Differential Pulse Code Modulation, 이하 DPCM이라 한다.) 방식이 제안되었다. 그러나, 상기 DPCM 방식은 신호의 레벨이 급격히 변화할 경우에는 그 변화분에 대하여 충분한 응답을 얻을 수 없는 단점이 있다.In order to overcome the above drawbacks, a differential pulse code modulation (DPCM) scheme for encoding the difference in signal levels has been proposed. However, the DPCM method has a disadvantage in that a sufficient response cannot be obtained when the level of the signal changes abruptly.

이에 따라, 상기 변화분의 차분에 해당하는 미리 정의된 가중치에 의하여 기준양자화 폭을 변화시키는 ADPCM 방식이 제안되었으며, 이 방식은 고효율의 압축 부호화를 가능하게 한다.Accordingly, the ADPCM scheme for changing the reference quantization width by a predefined weight corresponding to the difference of the change has been proposed, which enables highly efficient compression coding.

이러한 ADPCM 방식을 적용한 사운드 발생기가 미국특허 제4, 989, 246호에 개시되어 있다. 상기한 미국특허에 개시되어 있는 사운드 발생기는 음성신호를 ADPCM 코드로 변환할때 침묵구간의 길이만 카운트할 뿐 침묵구간의 데이타는 저장되지 않도록 하고, ADPCM 코드를 음성신호로 복원할때에는 상기 카운트 결과를 통해 침묵구간이 재생되도록 함으로써 메모리의 효율을 증가시키기 위한 것이다.A sound generator using the ADPCM scheme is disclosed in US Patent Nos. 4, 989 and 246. The sound generator disclosed in the above-described US patent only counts the length of the silent section when converting the voice signal to the ADPCM code, but does not store the data of the silent section, and the count result when restoring the ADPCM code to the voice signal. This is to increase the efficiency of the memory by allowing the silence section to be reproduced.

그러나, 상기와 같은 구조의 사운드 발생기는 인덱스 값(index value)을 생성하는데 있어서 두개의 롬(ROM : Read Only Memory)을 사용할 뿐만 아니라 카운터 및 별도의 제어로직이 필요하므로 회로가 복잡해지는 문제점이 있다.However, the sound generator having the above-described structure not only uses two ROMs (Read Only Memory) in generating an index value, but also requires a counter and a separate control logic, which causes a complicated circuit. .

그러므로, 이 발명의 목적은 상기한 바와 같은 종래의 기술적 문제점을 해결하기 위한 것으로서, 압축된 ADPCM 코드를 입력하여 그 고유의 스텝크기(step size)를 구하고, 입력데이타와 상기 구해진 스텝크기를 이용하여 압축되기 전의 리니어 데이타(linear data)를 생성하는 ADPCM 복원회로를 제공하는데 있다.Therefore, an object of the present invention is to solve the conventional technical problems as described above, to obtain a unique step size by inputting a compressed ADPCM code, and using the input data and the obtained step size. It is to provide an ADPCM reconstruction circuit that generates linear data before compression.

제1도는 이 발명의 실시예에 따른 적응차분 펄스부호변조 복원회로의 구성도이다.1 is a block diagram of an adaptive differential pulse code modulation recovery circuit according to an embodiment of the present invention.

* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

1 : 입력 레지스터 2 : 인덱스 발생부1: Input register 2: Index generator

3 : 스텝크기 발생부 4 : 복원부 5 : 데이타 출력부3 step size generation unit 4 restoring unit 5 data output unit

상기한 목적을 달성하기 위한 기술적 수단으로써, 이 발명에 따른 적응차분 펄스부호변조 복원회로는,As a technical means for achieving the above object, the adaptive differential pulse code modulation recovery circuit according to the present invention,

적응차분 펄스부호변조에 의해 압축된 데이타를 입력하여 출력단에 유지시키는 입력 레지스터;An input register for inputting data compressed by adaptive differential pulse code modulation and holding at the output stage;

상기 입력 레지스터에서 출력되는 데이타를 디코딩하여 그 데이타 고유의 인덱스를 생성하고, 상기 생성된 인덱스에 오버 플로우 또는 언더 플로우가 존재하는지 검사한 후, 상기 검사 결과 얻어지는 데이타를 어드레스로서 출력하는 인덱스 발생부;An index generator for decoding the data output from the input register to generate an index unique to the data, checking whether there is an overflow or an underflow in the generated index, and outputting the data obtained as a result of the check as an address;

각 어드레스에 대응하여 소정의 스텝크기를 미리 저장하고 있으며, 상기 인덱스 발생부에서 어드레스가 입력되면, 그에 대응하는 스텝크기를 출력하는 스텝크기 발생부;A step size generation unit for storing a predetermined step size corresponding to each address in advance, and outputting a step size corresponding to the address if an address is input from the index generation unit;

상기 입력 레지스터에서 출력되는 데이타의 최소유효비트부터 최대유효비트까지의 각 비트데이타 상태에 따라 상기 스텝크기 발생부에서 출력되는 스텝크기 또는 그라운드 데이타를 선택하며, 상기 선택된 데이타를 한 주기 이전에 선택된 데이타와 가산하여 출력하는 복원부;및Selects the step size or ground data output from the step size generator according to the state of each bit data from the least significant bit to the most significant bit of the data output from the input register, and selects the selected data one cycle before Restoration unit for adding and outputting; And

상기 복원부에서 출력되는 데이타와 한 주기 이전의 출력데이타를 가산하며, 상기 가산된 데이타에 오버 플로우 또는 언더 플로우가 존재하는지 검사한 후, 상기 검사 결과 얻어지는 데이타를 출력데이타로서 제공하는 데이타 출력부를 포함한다.A data output unit which adds data output from the decompression unit and output data one cycle earlier, checks whether there is an overflow or underflow in the added data, and provides data obtained as a result of the inspection as an output data; do.

이하, 첨부된 도면을 참조하여 이 발명의 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

제1도는 이 발명의 실시예에 따른 적응차분 펄스부호변조 복원회로의 구성도이다.1 is a block diagram of an adaptive differential pulse code modulation recovery circuit according to an embodiment of the present invention.

먼저, 제1도를 참조하여 이 발명의 실시예에 따른 적응차분 펄스부호변조 복원회로의 구성을 설명한다.First, referring to FIG. 1, a configuration of an adaptive differential pulse code modulation recovery circuit according to an embodiment of the present invention will be described.

제1도에 도시된 바와 같이, 이 발명의 실시예에 따른 적응차분 펄스부호변조 복원회로는, ADPCM에 의해 압축된 4비트의 입력데이타를 받아들여 출력단에 유지시키는 입력 레지스터(1); 상기 입력 레지스터(1)에서 출력되는 데이타를 입력하여 소정의 어드레스 데이타를 출력하는 인덱스 발생부(2); 상기 인덱스 발생부(2)에서 출력되는 데이타를 입력하여 16비트의 스텝크기를 출력하는 스텝크기 발생부(3); 상기 입력 레지스터(1)에서 출력되는 데이타와 상기 스텝크기 발생부(3)에서 출력되는 스텝크기를 입력하여 복원된 16비트 데이타를 출력하는 복원부(4);및 상기 복원부(4)에서 출력되는 데이타를 입력하여 16비트 출력데이타를 출력하는 데이타 출력부(5)로 구성된다.As shown in FIG. 1, an adaptive differential pulse code modulation recovery circuit according to an embodiment of the present invention includes: an input register (1) for receiving 4-bit input data compressed by an ADPCM and holding it at an output stage; An index generator (2) for inputting data output from the input register (1) to output predetermined address data; A step size generator (3) for inputting data output from the index generator (2) to output a 16-bit step size; A restoring unit 4 for outputting the 16-bit data restored by inputting the data output from the input register 1 and the step size output from the step size generator 3; and outputting from the restoring unit 4; And a data output section 5 for inputting the data to output 16-bit output data.

보다 상세하게, 상기 인덱스 발생부(2)는 순차적으로 연결된 인덱스 디코더(21), 제1리미터(22) 및 어드레스 레지스터(23)로 구성된다. 상기 어드레스 레지스터(23)는 출력되는 데이타가 상기 제1리미터(22)에 피드백되도록 연결된다.In more detail, the index generator 2 includes an index decoder 21, a first limiter 22, and an address register 23 that are sequentially connected. The address register 23 is connected such that output data is fed back to the first limiter 22.

상기 스텝크기 발생부(3)는 상기 어드레스 레지스터(23)에서 출력되는 데이타를 입력하여, 그에 대응하는 스텝크기를 출력하는 롬(31) 및 상기 롬(31)의 출력단에 연결되는 쉬프트 레지스터(32)로 구성된다.The step size generator 3 inputs data output from the address register 23 and outputs a step size corresponding thereto, and a shift register 32 connected to an output terminal of the ROM 31. It is composed of

상기 복원부(4)는 상기 입력 레지스터(1)에서 출력되는 데이타를 선택신호로서 입력하고, 상기 쉬프트 레지스터(32)의 출력데이타와 16비트의 그라운드 데이타를 두 입력신호로 입력하는 멀티플렉서(41), 상기 멀티플렉서(41)의 출력단에 순차적으로 연결되는 제1가산기(42) 및 임시 레지스터(43)로 구성된다. 상기 임시 레지스터(43)는 출력되는 데이타가 상기 제1가산기(42)에 피드백되도록 연결된다.The recovery unit 4 inputs data output from the input register 1 as a selection signal, and multiplexer 41 for inputting the output data of the shift register 32 and the 16-bit ground data as two input signals. The first adder 42 and the temporary register 43 are sequentially connected to the output terminal of the multiplexer 41. The temporary register 43 is connected such that output data is fed back to the first adder 42.

상기 데이타 출력부(5)는 상기 임시 레지스터(43)의 출력단에 순차적으로 연결된 제2가산기(51), 제2리미터(52) 및 출력 레지스터(53)로 구성된다. 상기 출력 레지스터(53)는 출력되는 데이타가 상기 제2가산기(51)에 피드백되도록 연결된다.The data output unit 5 includes a second adder 51, a second limiter 52, and an output register 53 sequentially connected to the output terminal of the temporary register 43. The output register 53 is connected such that the output data is fed back to the second adder 51.

상기와 같이 구성되는 이 발명의 실시예에 따른 적응차분 펄스부호변조 복원회로는 7개의 클럭신호(ph0ph6)에 의해 각 블록이 동작하도록 구현되어 있다.The adaptive differential pulse code modulation recovery circuit according to the embodiment of the present invention configured as described above is implemented to operate each block by seven clock signals ph0ph6.

다음으로, 상기한 구성에 의거하여 이 발명의 실시예에 따른 적응차분 펄스부호변조 복원회로의 동작을 설명한다.Next, the operation of the adaptive differential pulse code modulation recovery circuit according to the embodiment of the present invention will be described based on the above configuration.

전원이 공급되어 회로의 동작이 시작되면, 4비트 입력데이타가 상기 입력 레지스터(1)에 입력되며, 입력 레지스터(1)는 상기 입력 데이타를 출력단에 유지시킨다. 상기 4비트 입력데이타는 ADPCM에 의해 압축된 데이타이다.When power is supplied and the operation of the circuit starts, 4-bit input data is input into the input register 1, which holds the input data at the output terminal. The 4-bit input data is data compressed by ADPCM.

상기 입력 레지스터(1)에서 출력되는 데이타는 인덱스 디코더(21)와 멀티플렉서(41)의 선택신호 단자에 제공된다.The data output from the input register 1 is provided to the select signal terminals of the index decoder 21 and the multiplexer 41.

상기 인덱스 디코더(21)는 상기 입력 레지스터(1)의 출력단 데이타에 따라 출력이 일정하게 정해지도록 디코딩하여 그 데이타 고유의 인덱스를 생성하며, 생성된 인덱스를 제1리미터(22)에 출력한다.The index decoder 21 decodes the output to be fixed according to the output data of the input register 1 so as to generate an index unique to the data, and outputs the generated index to the first limiter 22.

제1리미터(22)는 상기 인덱스 디코더(21)에서 출력되는 인덱스와 어드레스 레지스터(23)로부터 한 주기 이전의 인덱스를 입력하며, 상기 입력된 데이타에 오버 플로우(over flow) 또는 언더 플로우(under flow)가 존재하는지 검사한다. 즉, 상기 제1리미터(22)에 입력되는 데이타가 그의 비트수로써 표현될 수 있는 최대값과 최소값 사이에 있는 값을 가지는지 검사한다. 만약, 상기 제1리미터(22)에 입력되는 데이타가 상기 최대값과 최소값 사이의 값이 아니라면 최대값 또는 최소값으로 고정되며, 그 사이의 값이면 입력되는 데이타를 그대로 출력한다.The first limiter 22 inputs the index output from the index decoder 21 and the index one cycle from the address register 23, and overflows or underflows the input data. ) To see if it exists. That is, it is checked whether the data input to the first limiter 22 has a value between the maximum value and the minimum value that can be expressed as the number of bits thereof. If the data input to the first limiter 22 is not the value between the maximum value and the minimum value, the data is fixed to the maximum value or the minimum value.

어드레스 레지스터(23)는 상기 제1리미터(22)에서 출력되는 데이타를 입력하여 출력단에 유지시키며, 상기 출력단 데이타를 롬(31)에 어드레스로서 제공한다.The address register 23 receives data output from the first limiter 22 and holds the data at the output terminal, and provides the output terminal data to the ROM 31 as an address.

롬(31)은 상기 어드레스 레지스터(23)에서 어드레스가 제공될 때마다 미리 저장되어 있는 스텝크기 중에서 상기 어드레스에 대응하는 것을 생성하여 쉬프트 레지스터(32)에 출력한다. 이때, 롬(31)에서 출력되는 스텝크기는 16비트 데이타이다.Each time the address is provided in the address register 23, the ROM 31 generates one corresponding to the address from a prestored step size and outputs it to the shift register 32. At this time, the step size output from the ROM 31 is 16-bit data.

쉬프트 레지스터(32)는 쉬프트 동작에 의해 상기 롬(31)에서 출력되는 스텝크기를 입력하며, 입력된 스텝크기를 출력단에 유지시킨다. 이 쉬프트 레지스터(32)는 롬(31)으로부터 스텝크기를 출력하기 위하여 요구되는 3번의 가산과정을 효과적으로 대체하기 위한 것으로서, 스텝크기의 데이타를 한 비트씩 우측으로 쉬프트하면서 데이타를 저장한다. 이로 인해, 스텝크기의 데이타가 1/2로 나누어진다.The shift register 32 inputs the step size output from the ROM 31 by the shift operation, and maintains the input step size at the output terminal. This shift register 32 is to effectively replace the three addition processes required for outputting the step size from the ROM 31, and stores data while shifting the step size data one bit by one bit. For this reason, the data of the step size are divided by 1/2.

멀티플렉서(41)는 상기 쉬프트 레지스터(32)에서 출력되는 16비트 스텝크기와 16비트의 그라운드 데이타를 입력신호로서 받아들이며, 선택신호로서 상기 입력 레지스터(1)에서 출력되는 데이타를 입력한다.The multiplexer 41 accepts the 16-bit step size and 16-bit ground data output from the shift register 32 as input signals, and inputs the data output from the input register 1 as a selection signal.

상기 멀티플렉서(41)는 상기 입력 레지스터(1)에서 출력되는 데이타 중에서 최소유효비트(LSB : Least Significant Bit)부터 최대유효비트(MSB : Most Significant Bit)까지의 각 비트데이타의 상태에 따라 상기 두 입력신호 중 하나를 선택한다. 예를 들어, 입력 레지스터(1)에서 출력되는 데이타의 임의의 비트가 '1'이면, 상기 쉬프트 레지스터(32)에서 출력되는 데이타를 선택하고, '0'이면 상기 그라운드 데이타를 선택한다. 이러한 방식으로 상기 멀티플렉서(41)에서 선택된 데이타는 제1가산기(42)로 출력되며, 제1가산기(42)는 피드백된 한 주기 이전의 복원된 데이타와 상기 선택된 데이타를 가산한다. 상기 가산의 결과로 얻어지는 데이타는 임시 레지스터(43)에 출력되며, 임시 레지스터(43)는 입력되는 데이타를 출력단에 유지시킴과 동시에 상기 제1가산기(42)에 피드백시킨다.The multiplexer 41 inputs the two inputs according to the state of each bit data from the least significant bit (LSB) to the most significant bit (MSB) among the data output from the input register 1. Select one of the signals. For example, if any bit of the data output from the input register 1 is '1', the data output from the shift register 32 is selected, and if the bit is '0', the ground data is selected. In this manner, the data selected by the multiplexer 41 is output to the first adder 42, which adds the restored data and the selected data one cycle before the feedback. The data obtained as a result of the addition is output to the temporary register 43, and the temporary register 43 keeps the input data at the output terminal and feeds it back to the first adder 42.

제2가산기(51)는 상기 임시 레지스터(43)에서 출력되는 데이타와 피드백된 한 주기 이전의 출력데이타를 가산하며, 이 가산의 결과 얻어지는 데이타를 제2리미터(52)에 출력한다.The second adder 51 adds the data output from the temporary register 43 and the output data one cycle before the feedback, and outputs the data obtained as a result of the addition to the second limiter 52.

제2리미터(52)는 이미 설명된 제1리미터(22)와 마찬가지로 입력되는 데이타에 오버 플로우 또는 언더 플로우가 존재하는지를 검사한다. 다만, 제1리미터(22)는 4비트의 입력 데이타를 다루는데 반해, 상기 제2리미터(52)는 16비트의 입력 데이타를 다룬다. 상기 제2리미터(52)의 검사 결과 얻어지는 데이타는 출력 레지스터(53)에 출력된다.Like the first limiter 22 described above, the second limiter 52 checks whether an overflow or underflow exists in the input data. However, the first limiter 22 handles 4 bits of input data, whereas the second limiter 52 handles 16 bits of input data. The data obtained as a result of the inspection of the second limiter 52 is output to the output register 53.

출력 레지스터(53)는 상기 제2리미터(52)로부터 출력되는 데이타를 입력하여 출력단에 유지시키며, 출력단 데이타를 복원된 16비트의 출력데이타로서 외부에 제공한다.The output register 53 inputs and outputs data output from the second limiter 52 to the output terminal, and provides the output terminal data to the outside as restored 16-bit output data.

아래에서 상기 각 블록에 공급되는 클럭신호(ph0ph6)의 기능을 설명한다.The function of the clock signal ph0ph6 supplied to each block will be described below.

ph0 : 입력 레지스터(1)에 4비트 입력 데이타를 로드한다.ph0: Load 4-bit input data into the input register (1).

ph1, ph2, ph3 : 롬(31)의 스텝크기 출력 및 쉬프트 레지스터(32)와 입력 레지스터(1)의 쉬프트 동작을 제어한다. 상기 클럭신호(ph0, ph1, ph2)를 논리곱하여 쉬프트 클럭(sclk)이 생성되며, 상기 쉬프트 클럭(sclk)에 의해 위와 같은 동작이 수행된다.ph1, ph2, ph3: The step size output of the ROM 31 and the shift operation of the shift register 32 and the input register 1 are controlled. The shift clock sclk is generated by multiplying the clock signals ph0, ph1, and ph2, and the above operation is performed by the shift clock sclk.

PH2, PH3, PH4 : 임시 레지스터(43)에 상기 클럭신호(PH1, PH2, PH3)의 시점에 2번의 연산결과를 저장한다.PH2, PH3, PH4: The temporary register 43 stores two calculation results at the time points of the clock signals PH1, PH2, and PH3.

PH5 : 최종 연산결과를 출력하기 위해 출력 레지스터(53)에 데이타를 입력하는 것을 제어한다. 또한, 어드레스 레지스터(23)가 제1리미터(22)에서 출력되는 데이타를 입력하는 것을 제어한다.PH5: Controls input of data to the output register 53 to output the final operation result. In addition, the address register 23 controls input of data output from the first limiter 22.

PH6 : 쉬프트 레지스터(32)가 롬(31)으로부터 데이타를 입력하고, 임시 레지스터(43)가 새로운 데이타를 입력하기 위하여 리셋하는 동작을 제어한다.PH6: The shift register 32 inputs data from the ROM 31, and the temporary register 43 controls the operation of resetting to input new data.

한편, 어드레스 레지스터의 동작을 제어하는 어드레스 클럭신호(add-clk)은 상기 클럭신호(ph1, ph2, ph3, ph4)를 논리곱하여 얻어지며, 이로 인해 각 클럭신호(ph1, ph2, ph3, ph4)마다 어드레스가 발생한다.On the other hand, the address clock signal add-clk for controlling the operation of the address register is obtained by ANDing the clock signals ph1, ph2, ph3, and ph4, and thus the clock signals ph1, ph2, ph3, and ph4. An address is generated every time.

이상에서와 같이 이 발명의 실시예에 따르면, 기존의 회로보다 칩면적이 작고, 더 빨리 동작하는 ADPCM 복원회로를 구현할 수 있다.As described above, according to the exemplary embodiment of the present invention, an ADPCM recovery circuit having a smaller chip area and operating faster than the existing circuit can be implemented.

즉, 기존의 회로는 데이타를 유지하기 위한 레지스터 뿐만 아니라 회로의 제어를 위한 카운터와 이에 수반되는 여러가지 글루 로직(glue logic)을 필요로 하였으나, 이 발명은 쉬프트 레지스터를 이용하여 간단하게 ADPCM 복원회로를 구현할 수 있다.That is, the conventional circuit requires not only a register for holding data but also a counter for controlling the circuit and accompanying glue logic. However, the present invention uses a shift register to simply implement an ADPCM recovery circuit. Can be implemented.

Claims (7)

적응차분 펄스부호변조에 의해 압축된 데이타를 입력하여 출력단에 유지시키는 입력 레지스터;An input register for inputting data compressed by adaptive differential pulse code modulation and holding at the output stage; 상기 입력 레지스터에서 출력되는 데이타를 디코딩하여 그 데이타 고유의 인덱스를 생성하고, 상기 생성된 인덱스에 오버 플로우 또는 언더 플로우가 존재하는지 검사한 후, 상기 검사 결과 얻어지는 데이타를 어드레스로서 출력하는 인덱스 발생부;An index generator for decoding the data output from the input register to generate an index unique to the data, checking whether there is an overflow or an underflow in the generated index, and outputting the data obtained as a result of the check as an address; 각 어드레스에 대응하여 소정의 스텝크기를 미리 저장하고 있으며, 상기 인덱스 발생부에서 어드레스가 입력되면, 그에 대응하는 스텝크기를 출력하는 스텝크기 발생부;A step size generation unit for storing a predetermined step size corresponding to each address in advance, and outputting a step size corresponding to the address if an address is input from the index generation unit; 상기 입력 레지스터에서 출력되는 데이타의 최소유효비트부터 최대유효비트까지의 각 비트데이타 상태에 따라 상기 스텝크기 발생부에서 출력되는 스텝크기 또는 그라운드 데이타를 선택하며, 상기 선택된 데이타를 한 주기 이전에 선택된 데이타와 가산하여 출력하는 복원부;및Selects the step size or ground data output from the step size generator according to the state of each bit data from the least significant bit to the most significant bit of the data output from the input register, and selects the selected data one cycle before Restoration unit for adding and outputting; And 상기 복원부에서 출력되는 데이타와 한 주기 이전의 출력데이타를 가산하며, 상기 가산된 데이타에 오버 플로우 또는 언더 플로우가 존재하는지 검사한 후, 상기 검사 결과 얻어지는 데이타를 출력데이타로서 제공하는 데이타 출력부를 포함하는 적응차분 펄스부호변조 복원회로.A data output unit which adds data output from the decompression unit and output data one cycle earlier, checks whether there is an overflow or underflow in the added data, and provides data obtained as a result of the inspection as an output data; Adaptive differential pulse code modulation recovery circuit. 제1항에 있어서, 상기한 인덱스 발생부는The method of claim 1, wherein the index generator 상기 입력 레지스터에서 출력되는 데이타를 디코딩하여 인덱스를 생성하는 인덱스 디코더;An index decoder for generating an index by decoding data output from the input register; 상기 인덱스 디코더에서 출력되는 인덱스 및 피드백된 한 주기 이전의 인덱스에 오버 플로우 또는 언더 플로우가 존재하는지 검사하며, 오버 플로우 또는 언더 플로우가 존재할 경우에는 상기 각 인덱스의 비트수로 표현 가능한 최대값 또는 최대값을 출력하고, 오버 플로우 및 언더 플로우가 없을 경우에는 입력된 데이타를 그대로 출력하는 제1리미터;및Examine whether there is an overflow or an underflow in the index output from the index decoder and an index before the fed back period, and when there is an overflow or an underflow, the maximum value or the maximum value that can be expressed by the number of bits of each index. And a first limiter for outputting the input data as it is, when there is no overflow and underflow; and 상기 제1리미터에서 출력되는 데이타를 입력하여 출력단에 유지시키며, 어드레스 데이타로서 상기 스텝크기 발생부에 제공하는 어드레스 레지스터로 구성되는 적응차분 펄스부호변조 복원회로.An adaptive differential pulse code modulation recovery circuit comprising: an address register for inputting data output from said first limiter to be held at an output terminal and provided to said step size generator as address data. 제2항에 있어서, 상기한 스텝크기 발생부는The method of claim 2, wherein the step size generation unit 각 어드레스에 대응하여 소정의 스텝크기를 미리 저장하고 있으며, 어드레스가 입력될 때마다 그에 해당하는 스텝크기를 출력하는 롬;및A pre-stored predetermined step size corresponding to each address, and outputting a corresponding step size each time an address is input; and 상기 롬에서 출력되는 스텝크기를 쉬프트 동작에 의해 입력하며, 상기 입력된 데이타를 출력단에 유지시키는 쉬프트 레지스터로 구성되는 적응차분 펄스부호변조 복원회로.And a shift register for inputting the step size output from the ROM by a shift operation, and holding the input data at an output terminal. 제3항에 있어서, 상기한 롬에 저장되는 스텝크기는 상기 적응차분 펄스부호변조에 의해 압축된 데이타에 비해 확장된 비트수를 가지는 적응차분 펄스부호변조 복원회로.4. The adaptive differential pulse code modulation and recovery circuit according to claim 3, wherein the step size stored in the ROM has an extended number of bits compared to the data compressed by the adaptive differential pulse code modulation. 제3항에 있어서, 상기한 복원부는The method of claim 3, wherein the restoration unit 스텝크기와 동일한 비트수의 그라운드 데이타와 상기 쉬프트 레지스터에서 출력되는 스텝크기를 두 입력신호로서 입력하고, 상기 입력 레지스터에서 출력되는 데이타를 선택신호로서 입력하여 선택신호의 각 비트 데이타의 상태에 따라 두 입력신호 중 하나를 선택하는 선택수단;The ground data of the same number of bits as the step size and the step size output from the shift register are input as two input signals, and the data output from the input register is input as a selection signal, and the two bits are changed depending on the state of each bit data of the selection signal. Selecting means for selecting one of the input signals; 상기 선택수단에서 선택된 데이타와 피드백된 한 주기 이전의 복원된 데이타를 가산하는 제1가산기;및A first adder for adding the data selected by the selecting means and the restored data one cycle before the feedback; and 상기 제1가산기에서 출력되는 데이타를 출력단에 유지시킴과 동시에 상기 출력단 데이타를 상기 제1가산기에 복원된 데이타로서 피드백시키는 임시 레지스터로 구성되는 적응차분 펄스부호변조 복원회로.And a temporary register configured to hold data output from the first adder at an output stage and to feed back the output stage data as data restored to the first adder. 제5항에 있어서, 상기한 선택수단은 멀티플렉서인 적응차분 펄스부호변조 복원회로.6. The adaptive differential pulse code modulation recovery circuit according to claim 5, wherein said selecting means is a multiplexer. 제5항에 있어서, 상기한 데이타 출력부는The method of claim 5, wherein the data output unit 상기 임시 레지스터에서 출력되는 데이타와 피드백된 한 주기 이전의 출력데이타를 가산하는 제2가산기;A second adder for adding data output from the temporary register and output data one cycle before the feedback; 상기 제2가산기에서 출력되는 데이타에 오버 플로우 또는 언더 플로우가 존재하는지 검사하는 제2리미터;및A second limiter for checking whether there is an overflow or an underflow in the data output from the second adder; and 상기 제2리미터의 검사 결과 얻어지는 데이타를 입력하여 출력단에 유지시키는 출력 레지스터로 구성되는 적응차분 펄스부호변조 복원회로.And an output register for inputting data obtained as a result of the inspection of said second limiter and holding it at an output stage.
KR1019960037151A 1996-08-30 1996-08-30 Adaptive differential pulse code modulation resetting circuit KR0182181B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960037151A KR0182181B1 (en) 1996-08-30 1996-08-30 Adaptive differential pulse code modulation resetting circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960037151A KR0182181B1 (en) 1996-08-30 1996-08-30 Adaptive differential pulse code modulation resetting circuit

Publications (2)

Publication Number Publication Date
KR19980017375A true KR19980017375A (en) 1998-06-05
KR0182181B1 KR0182181B1 (en) 1999-04-15

Family

ID=19471960

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960037151A KR0182181B1 (en) 1996-08-30 1996-08-30 Adaptive differential pulse code modulation resetting circuit

Country Status (1)

Country Link
KR (1) KR0182181B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030002638A (en) * 2001-06-29 2003-01-09 주식회사 하이닉스반도체 A device for implementing adaptive differential pulse code modulation

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101921079B1 (en) 2012-02-14 2018-11-23 삼성디스플레이 주식회사 Display apparatus
KR20160027637A (en) 2014-09-02 2016-03-10 재단법인 금산국제인삼약초연구소 Method for manufacturing black ginseng extract having antioxidant function and black ginseng extract manufactured by the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030002638A (en) * 2001-06-29 2003-01-09 주식회사 하이닉스반도체 A device for implementing adaptive differential pulse code modulation

Also Published As

Publication number Publication date
KR0182181B1 (en) 1999-04-15

Similar Documents

Publication Publication Date Title
JP3960627B2 (en) Method and means for processing information
US4216460A (en) Transmission and/or recording of digital signals
EP1832000B1 (en) Device and data method for selective compression and decompression and data format for compressed data
US5696791A (en) Apparatus and method for decoding a sequence of digitally encoded data
JP3484310B2 (en) Variable length encoder
JPS6126737B2 (en)
US5841381A (en) Huffman coding/decoding using an intermediate code number
JP4468858B2 (en) Data encoding apparatus, data encoding method, and program
KR970017430A (en) Digital data channel encoding and decoding method and apparatus therefor
US6140944A (en) Variable-length coding device and method using table that holds information on presence/absence of code correspondingly to region represented by combination of run data and level data
US5107519A (en) Coding device and a decoding device
US6225922B1 (en) System and method for compressing data using adaptive field encoding
KR910003504A (en) Digital signal processing circuit
KR0182181B1 (en) Adaptive differential pulse code modulation resetting circuit
KR960020495A (en) Variable length decoding device
JPH08186723A (en) Encoder for picture processor
KR0182182B1 (en) Adaptive differential pcm compression circuit
US4549305A (en) Adaptive differential PCM decoder
JP2001211082A (en) Pcm signal encoding and decoding method
JP3010623B2 (en) Encoding device
RU2176129C1 (en) Method and device for compressing infinite- alphabet character string being coded to form binary coded character string
JP2584761B2 (en) Predictive coding transmission system
JP3224127B2 (en) Image data conversion processor
JP2838964B2 (en) Variable length coding circuit
JPH07111461A (en) Variable length coding/decoding device

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: 20051109

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee