KR100219598B1 - Decoder - Google Patents

Decoder Download PDF

Info

Publication number
KR100219598B1
KR100219598B1 KR1019960011288A KR19960011288A KR100219598B1 KR 100219598 B1 KR100219598 B1 KR 100219598B1 KR 1019960011288 A KR1019960011288 A KR 1019960011288A KR 19960011288 A KR19960011288 A KR 19960011288A KR 100219598 B1 KR100219598 B1 KR 100219598B1
Authority
KR
South Korea
Prior art keywords
data
memory
address
residual
block
Prior art date
Application number
KR1019960011288A
Other languages
Korean (ko)
Other versions
KR970071701A (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 KR1019960011288A priority Critical patent/KR100219598B1/en
Publication of KR970071701A publication Critical patent/KR970071701A/en
Application granted granted Critical
Publication of KR100219598B1 publication Critical patent/KR100219598B1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10009Improvement or modification of read or write signals
    • G11B20/10268Improvement or modification of read or write signals bit detection or demodulation methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10009Improvement or modification of read or write signals
    • G11B20/10481Improvement or modification of read or write signals optimisation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

각 영역에서 제한된 비트 사이즈를 넘는 잔여 데이터를 다른 블록의 여백에 기록하며, 각 블록에 고유한 데이터와 잔여 데이터를 구분하기 위하여 엔드-오브-블록(EOB) 신호를 사용하여 기록된 압축 데이터를 복호하는 복호화 장치가 개시된다.Residual data over a limited bit size in each area is recorded in the margins of other blocks, and decoded compressed data recorded using end-of-block (EOB) signals to distinguish data unique to each block and residual data. A decoding apparatus is disclosed.

본 발명에 따른 복호화 장치는 세그먼트 메모리에 저장된 비트스트림을 독출하여 가변장 복호화기에 제공함에 있어서 가변장 복호화기의 복호 결과를 참조하여 세그먼트 메모리의 독출 어드레스를 제어함으로서 테이프로부터 읽혀진 비트스트림을 실시 간으로 복호할 수 있게 하는 효과를 갖는다.The decoding apparatus according to the present invention reads a bitstream stored in a segment memory and provides it to the variable length decoder to control the read address of the segment memory with reference to the decoding result of the variable length decoder to real-time the bitstream read from the tape. It has the effect of being able to decode.

Description

복호화 장치Decryption device

제1도는 본 발명에 따른 복호화 장치의 구성을 보이는 블록도이다.1 is a block diagram showing the configuration of a decoding apparatus according to the present invention.

제2도는 제1도에 도시된 세그먼트 메모리에 저장된 세그먼트 데이터의 일 예를 보이는 도면이다.FIG. 2 is a diagram illustrating an example of segment data stored in the segment memory shown in FIG. 1.

제3도는 제1도에 도시된 인덱스 발생기의 상세한 구성을 보이는 블록도이다.3 is a block diagram showing a detailed configuration of the index generator shown in FIG.

제4도는 제1도에 도시된 장치에 의해 제2도에 도시된 데이터를 처리한 후 잔여 데이터 메모리에 저장된 내용을 보이는 도면이다.4 is a diagram showing the contents stored in the remaining data memory after processing the data shown in FIG. 2 by the apparatus shown in FIG.

제5도는 제1도에 도시된 플랙 메모리에 저장된 내용의 일 예를 보이는 도면이다.FIG. 5 is a diagram showing an example of contents stored in the flag memory shown in FIG.

제6도는 제1도에 도시된 플랙 메모리에 저장된 내용의 다른 내용을 보이는 도면이다.FIG. 6 is a view showing other contents of contents stored in the flag memory shown in FIG.

제7도는 제1도에 도시된 어드레스 발생기의 상세한 구성을보이는 블록도이다.FIG. 7 is a block diagram showing the detailed configuration of the address generator shown in FIG.

본 발명은 영역 분할되어 가변장 부호화되고, 그 결과를 고정된 크기를 갖는 블록으로 저장시킨 영상 압축 데이터를 복호하는 복호화 장치에 관한 것으로서 더욱 상세하게는 다른 블록에 기록된 잔여 데이터를 실시간으로 복호할 수 있는 복호화 장치에 관한 것이다.The present invention relates to a decoding apparatus for decoding image compressed data obtained by region division, variable length coding, and storing the result in a block having a fixed size. More particularly, the present invention relates to decoding a residual data recorded in another block in real time. The present invention relates to a decoding apparatus that can be used.

디지털 비디오 테이프 레코더(DIGITAL VIDEO TAPE RECORDER; 이하 DVTR이라 함)의 데이터는 순차 기록 방식인 테이프에 의한 제약 때문에 복잡한 형식으로 기록된다.The data of a digital video tape recorder (hereinafter referred to as DVTR) is recorded in a complicated format due to the limitations of tape, which is a sequential recording method.

DVCR의 부호화 방법에 있어서, 하나의 프레임 화면은 복수의 세그먼트로 분할되고, 각각의 세그먼트는 5개의 매크로 블록으로 분할된다. 그리고 매크로 블록은 6개의 DCT블록으로 구성된다. 여기서, 4개의 DCT블록은 휘도 신호(Y)를 위한 것이고, 나머지 2개는 색차 신호(Cr, Cb)를 위한 것이다.In the DVCR encoding method, one frame picture is divided into a plurality of segments, and each segment is divided into five macro blocks. The macro block consists of six DCT blocks. Here, four DCT blocks are for the luminance signal Y, and the other two are for the color difference signals Cr and Cb.

DVCR의 기록 방법에 있어서 하나의 프레임 화면을 부호화한 결과로 얻어진 비트스트림이 복수의 세그먼트 기록 영역에 기록되며, 각각의 세그먼트 기록 영역은 5개의 매크로 블록 기록 영역으로 구성된다 그리고, 매크로 블록 기록 영역은 6개의 DCT블록 기록 영역으로 구성된다.In the DVCR recording method, a bitstream obtained as a result of encoding one frame screen is recorded in a plurality of segment recording areas, each segment recording area being composed of five macro block recording areas. It consists of six DCT block recording areas.

세그먼트 기록 영역, 매크로 블록 기록 영역, 그리고 DCT블록 기록 영역은 각각 부호화 단위가 되는 세그먼트, 매크로 블록, DCT블록을 부호화한 결과로 얻어진 비트 스트림이 기록된다.In the segment recording area, the macro block recording area, and the DCT block recording area, a bit stream obtained as a result of encoding a segment, a macro block, and a DCT block serving as coding units, respectively, is recorded.

프레임 화면을 부호화 함에 있어서 세그먼트, 매크로 블록, DCT블록을 부호화하여 얻어진 비트스트림의 길이는 일정하지 않다.In encoding a frame screen, the length of a bitstream obtained by encoding a segment, a macroblock, and a DCT block is not constant.

따라서, 비트스트립을 테이프에 기록함에 있어서는 두 가지 방법이 고려될 수 있다. 하나는 비트스트립에 있어서 해당 기록 영역의 기록 용량을 초과하는 부분을 기록하지 않고 버리는 방법이고, 다른 하나는 해당 기록 영역의 기록 용얄을 초과하는 부분을 다른 기록 영역의 여백에 기록하는 방법이다.Therefore, two methods can be considered in writing the bit strip to the tape. One is a method of discarding a portion of the bit strip that exceeds the recording capacity of the corresponding recording area without recording, and the other is a method of recording a portion exceeding the recording content of the recording area in the margin of another recording area.

전자의 방법은 기록 방법이 간단한 반면에 재생된 화면의 화질이 저하되기 때문에 후자의 방법이 많이 사용된다.The former method is often used because the recording method is simple while the image quality of the reproduced screen is degraded.

이를 구체적으로 설명하면 다음과 같다. 어떤 DCT 블록을 부호화하여 얻어진 비트스트림이 해당 DCT 블록 기록 영역의 기록 용량보다 많을 때는 먼저 해당 DCT블록 기록 영역에 기록한 후에 잔여 비트스트림을 MR(Macroblock Remainder) 데이터라 하여 일단 동일한 매크로 블록 기록 영역에 속하는 다른 DCT블록 기록 영역의 여백에 기록한다.This will be described in detail as follows. When a bitstream obtained by encoding a DCT block has more than the recording capacity of the DCT block recording area, the bitstream is first recorded in the DCT block recording area, and then the remaining bitstream is called MR (Macroblock Remainder) data. It is recorded in the margin of another DCT block recording area.

동일한 메크로블록 기록 영역에 속하는 다른 DCT블록 기록 영역의 여백에 기록하고도 남는 비트스트림은 VR(Video Segment Remainder) 데이터라 하여 동일한 세그먼트 기록 영역에 속하는 다른 매크로 블록 기록 영역의 여백에 기록한다.The bitstream which is left in the margin of another DCT block recording area belonging to the same macroblock recording area is recorded in the margin of another macro block recording area belonging to the same segment recording area, referred to as VR (Video Segment Remainder) data.

동일한 세그먼트 기록 영역에 속하는 다른 매크로 블록 기록 영역의 여백에 기록하고도 남은 비트스트림은 버리게 된다. 왜냐하면 세그먼트는 부호화 시 독립된 형태로 처리하기 위해 항상 길이를 고정시키기 때문이다.The remaining bit stream is discarded even if recorded in the margin of another macro block recording area belonging to the same segment recording area. This is because segments always have a fixed length in order to be processed in an independent form during encoding.

이렇게 기록된 비트스트림을 복호함에 있어서 먼저 DCT블록을 복호하고, 다음에 매크로 블록, 세그먼트 블록의 순으로 복호한다.In decoding the recorded bitstream, the DCT block is first decoded, and then the macro block and the segment block are decoded in this order.

종래의 복호화 장치는 해당 기록 영역에서 잔여 비트스트림을 제외한 부분을 먼저 복호한 후에 잔여 비트스트립을 복호한다. 즉, 기록 영역에 기록된 비트스트림에서 잔여 비트 스트림을 제외한 부분을 먼저 복호한 후 복호화된 결과를 참조하여 MR데이터, VR데이터를 복호한다.The conventional decoding apparatus first decodes a portion of the recording area except for the residual bitstream, and then decodes the residual bit strip. That is, the portion of the bitstream recorded in the recording area except for the remaining bitstream is first decoded, and then the MR data and the VR data are decoded with reference to the decoded result.

이를 위하여 세그먼트 기록 영역에서 읽혀진 비트스트림을 일단 세그먼트 메모리에 기록한 후 DCT블록 단위로 온전한 비트스트림인지를 판단하고 이를 참조하여 DCT블록 단위로 잔여 비트스트림을 보충한다. DCT블록 단위로 복호가 종료된 후 매크로 블록 단위로 온전한 비트스트림인지를 판단하고 이를 참조하여 매크로 블록 단위로 잔여 비트스트림을 보충한다. 매트로 블록 단위로 복호가 종료된 후 세그먼트 단위로 온전한 비트스트림인지를 판단하고 이를 참조하여 세그먼트 단위로 잔여 비트스트림을 보충한다.To this end, once the bitstream read in the segment recording area is written to the segment memory, it is determined whether the bitstream is an intact bitstream in units of DCT blocks, and the residual bitstream is supplemented in units of DCT blocks with reference to the bitstream. After decoding is completed in units of DCT blocks, it is determined whether the bit streams are intact in units of macro blocks, and the residual bit streams are supplemented in units of macro blocks with reference to the same. After decoding is completed in macro block units, it is determined whether the bit stream is an intact bit stream, and the residual bit stream is supplemented by segment by referring to the bit stream.

이를 위하여 종래의 복호화 장치는 테이프의 세그먼트 기록 영역에서 읽혀진 비트스트림을 기록하는 제1세그먼트 메모리, 제1세그먼트 메모리에 저장된 빌트스트림을 기록되기 전의 비트스트림으로 재배치하기 위한 재배치 처리 수단, 재배치된 비트스트림을 저장하는 제2세그먼트 메모리, 제2세그먼트 메모리에 기록된 비트스트림을 일정 단위로 순차적으로 읽어내어 가변장 복호화기에 제공하는 비트 스트리머, 그리고 비트 스트리머에서 제공되는 비트스트림을 가변장 복호화하는 가변장 복호화기로 구성된다.To this end, a conventional decoding apparatus includes a first segment memory for recording a bitstream read in a segment recording area of a tape, a relocation processing means for relocating a built-in stream stored in the first segment memory to a bitstream before recording, and a rearranged bitstream. A second segment memory for storing the data, a bit streamer sequentially reading the bit streams recorded in the second segment memory in a predetermined unit and providing the same to the variable length decoder, and variable length decoding the bit stream provided from the bit streamer. It consists of a long decoder.

여기서, 재배치 처리 수단은 DCT 데이터 복호 단계, MR데이터 복호 단계, VR 데이터 복원 단계를 거쳐서 기록되기 전의 비트스트림을 복호하기 위하여 소정의 지연 시간을 필 요로하며 이 때문에 종래의 복호화 장치는 테이프로부터 읽혀진 비트스트립을 실시 간으로 복호할 수 없다는 문제점이 있다.Here, the relocation processing means requires a predetermined delay time to decode the bitstream before being recorded through the DCT data decoding step, the MR data decoding step, and the VR data decompression step, and thus the conventional decoding apparatus uses the bits read from the tape. There is a problem that the strip cannot be decoded in real time.

본 발명은 상기의 문제점을 해결하기 위하여 창출된 것으로서 테이프로부터 읽혀진 비트스트립을 실시간으로 복호할 수 있는 복호화 장치를 제공하는 것을 그 목적으로 한다.SUMMARY OF THE INVENTION An object of the present invention is to provide a decoding apparatus capable of decoding in real time a bit strip read from a tape, which has been created to solve the above problems.

상기의 목적을 달성하는 본 발명에 따른 복호화 장치는The decoding apparatus according to the present invention to achieve the above object

영역 분할된 영상 데이터를 가변장 부호화하여 고정된 비트 사이즈의 블록에 기록하되 각 영역에서 제한된 비트 사이즈를 넘는 잔여 데이터를 다른 블록의 여백에 기록하며, 각 블록에 고유한 데이터와 잔여 데이터를 구분하기 위하여 EOB 신호를 사용하여 기록된 영상 압축 데이터를 복호하는 복호화 장치에 있어서,Variable-length-encoded region-divided image data is recorded in a fixed bit size block, but the remaining data exceeding the limited bit size in each area is recorded in the margin of another block, and distinguishing the unique data from the residual data in each block. In the decoding apparatus for decoding the video compressed data recorded by using the EOB signal,

블록 단위의 복호될 데이터를 저장하고, 저장된 데이터를 순차적으로 독출하는 메모리;A memory for storing data to be decoded in units of blocks and sequentially reading the stored data;

상기 메모리에서 독출된 데이터를 연결하여 소정의 비트로 묶어주고, 순차로 복호하여 런렝스, 계수, 그리고 심벌의 길이를 출력하는 가변장 복호기;A variable length decoder which connects the data read out from the memory, binds the data into predetermined bits, decodes them sequentially, and outputs run lengths, coefficients, and symbol lengths;

상기 가변장 복호기에서 발생된 심벌의 길이를 누산하고, 상기 메모리에 제공되는 시작 어드레스를 참조하여 잔여 데이터의 선두 어드레스, 잔여 데이터의 유무를 나타내는 플랙, 데이터 종료의 유무를 나타내는 플랙을 발생하는 인덱스 발생기;An index generator which accumulates the length of symbols generated in the variable length decoder and generates a head address of remaining data, a flag indicating whether data remains or not, and a flag indicating whether data ends, with reference to a start address provided to the memory; ;

상기 인덱스 발생기에서 발생된 잔여 데이터의 선두 어드레스를 저장하는 잔여 데이터 인덱스 메모리;A residual data index memory for storing a head address of the residual data generated by the index generator;

상기 인덱스 발생기에서 발생된 잔여 데이터의 유무를 나타내는 플랙, 데이터 종료의 유무를 나타내는 플랙을 저장하는 플랙 메모리; 및A flag memory for storing a flag indicating the presence or absence of residual data generated by the index generator and a flag indicating the presence or absence of data termination; And

잔여 데이터 인덱스 메모리에 저장된 잔여 데이터의 선두 위치와 상기 플랙 메모리에 저장된 잔여 데이터의 유무를 나타내는 플랙, 데이터 종료의 유무를 나타내는 플랙을 참조하여 상기 메모리에 제공되는 시작 어드레스를 발생하는 어드레스 발생기를 포함함을 특징으로 한다.And an address generator for generating a start address provided to the memory with reference to a flag indicating a head position of the residual data stored in the residual data index memory and the presence or absence of residual data stored in the flag memory, and a flag indicating the presence or absence of data termination. It is characterized by.

본원 발명의 복호 장치는 세그먼트 메모리에 저장된 비트스트림을 독출하여 가변장 복호화기에 제공함에 있어서 가변장 복호화기의 복호 결과를 참조하여 세그먼트 메모리의 독출 어드레스를 제어함으로서 테이프로부터 읽혀진 비트스트림을 실시간으로 복호할 수 있게 한다. 이하 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.The decoding apparatus of the present invention reads the bitstream stored in the segment memory and provides the variable length decoder to decode the bitstream read from the tape in real time by controlling the read address of the segment memory with reference to the decoding result of the variable length decoder. To be able. Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1도는 본 발명에 따른 복호화 장치의 구성을 보이는 블록도로서 DVTR에 적용된 예를 보이는 것이다. 제1도에 도시된 장치는 세그먼트 메모리(10), 비트 스트리머(12), 가변장 복호기(14), 인덱스 발생기(16), 잔여 데이터 인덱스 메모리(18), 플랙 메모리(20), 그리고 어드레스 발생기(22)를 구비한다 .1 is a block diagram showing the configuration of a decoding apparatus according to the present invention, showing an example applied to DVTR. The apparatus shown in FIG. 1 includes a segment memory 10, a bit streamer 12, a variable length decoder 14, an index generator 16, a residual data index memory 18, a flag memory 20, and an address. A generator 22 is provided.

세그먼트 메모리(10)는 각각 세그먼트 데이터를 저장할 수 있는 두 개의 뱅크 메모리로 구성된다. 하나의 메모리에 저장된 세그먼트 데이터가 복호되는 동안 다른 하나의 메모리에는 도시되지 않은 에러 정정부로부터 제공되는 다음에 처리될 세그먼트 데이터가 저장된다.The segment memory 10 is composed of two bank memories each capable of storing segment data. While the segment data stored in one memory is decoded, the segment data to be processed next, which is provided from an error correction unit (not shown), is stored in the other memory.

비트 스트리머(12)는 메모리(10)에서 제공되는 비트 사이즈가 불규칙한 코드들을 입력하고, 이들을 연결시켜 16비트의 비트 사이즈를 갖는 코드를 출력한다. 이는 가변장 복호기(14)의 내부에 설정된 배럴 쉬프터(도시되지 않음)의 비트 사이즈에 맞추어 주기 위한 것이다.The bit streamer 12 inputs codes having irregular bit sizes provided from the memory 10, and connects them to output a code having a bit size of 16 bits. This is to fit the bit size of the barrel shifter (not shown) set inside the variable length decoder 14.

가변장 복호기(14)는 비트 스트리머(12)에서 제공되는 16비트의 비트 사이즈를 갖는 코드를 입력하고, 이를 가변장 복호하여 런렝스인 RUN과 그의 계수 AMP 및 심벌의 길이 LEN을 출력한다.The variable length decoder 14 inputs a code having a bit size of 16 bits provided from the bit streamer 12, and variable length decodes the output length RUN, its coefficient AMP, and the length LEN of the symbol.

인덱스 발생기(16)는 가변장 복호기(14)에서 출력되는 심벌의 길이 LEN을 누산하고, 어드레스 발생기(22)에서 제공되는 시작 어드레스(START ADDRESS)를 참조하여 각각의 DCT블록마다 잔여 데이터의 선두 어드레스(RESIDUAL ADDRESS), 잔여 데이터의 유무를 나타내는 플랙(RESIDUAL FLAG), 데이터 종료 플랙(End Of Byte FLAG; EOB FLAG)을 발생한다. 인덱스 발생기(16)에서 발생된 RESIDUAL ADDRESS는 잔여 데이터 인덱스 메모리(18)에 저장되고, RESIDUAL FLAG과 EOB FLAG은 플랙 메모리(20)에 저장된다.The index generator 16 accumulates the length LEN of the symbols output from the variable length decoder 14, and refers to the start address START ADDRESS provided by the address generator 22, and the head address of the remaining data for each DCT block. RESIDUAL ADDRESS, a flag indicating the presence or absence of residual data, and an end of byte FLAG (EOB FLAG) are generated. The RESIDUAL ADDRESS generated by the index generator 16 is stored in the remaining data index memory 18, and the RESIDUAL FLAG and EOB FLAG are stored in the flag memory 20.

제2도에 도시된 것은 세그먼트 메모리(10)의 메모리 뱅크에 저장된 세그먼트 데이터의 내용이다. 제2도에 도시된 바와 같이 세그먼트 데이터는 5개의 매크로 블록(MBO-MB4)으로 구성된다. 또한, 각각의 매크로 블록은 6개의 DCT블록으로 구성된다. 각 행의 첫 번째부터 네 번째까지의 DCT블록은 휘도 신호를 위한 것으로서 7BYTE로 구성된다. 그리고, 다섯 번째부터 여섯 번째까지의 DCT블록은 색차 신호를 위한 것으로서 5BYTE로 구성된다. 따라서, 각각의 매크로 블록은 38BYTE로 구성되고, 세그먼트는 190BYTE로 구성된다.Shown in FIG. 2 is the contents of the segment data stored in the memory bank of the segment memory 10. As shown in FIG. 2, segment data is composed of five macro blocks (MBO-MB4). In addition, each macro block is composed of six DCT blocks. The first to fourth DCT blocks of each row are configured for 7BYTE as luminance signals. The fifth to sixth DCT blocks are configured for 5BYTE as a color difference signal. Thus, each macro block consists of 38BYTE, and the segment consists of 190BYTE.

각각의 DCT블록에 있어서 흰 부분은 DCT블록 자체의 데이터를 나타내고, 부분은 MR 데이터를 나타내고, 그리고 부분은 VR 데이터를 나타낸다. 또한, 각각의 표기에서 E로 표기된 부분은 각 데이터에서의 데이터 종료를 나타내는 플랙(EOB FLAG)이고, 숫자는 그 데이터가 소속된 원래의 DCT블록을 나타낸다.In each DCT block, the white portion represents data of the DCT block itself, the portion represents MR data, and the portion represents VR data. In addition, the portion denoted by E in each notation is a flag (EOB FLAG) indicating the end of data in each data, and the number indicates the original DCT block to which the data belongs.

예를 들어 0으로 표기된 좌상측의 DCT블록은 자체의 데이터와 MR 데이터를 가지고 있으며, 특히 MR 데이터는 우측 옆의 1로 표기된 DCT블록에 속하는 데이터이다. 또한, 0으로 표기된 DCT블록에는 1로 표기된 VR 데이터의 EOB 플랙이 없는 데 이는 다른 DCT블록에 이것과 연결되는 데이터가 있음을 의미한다.For example, the upper left DCT block denoted by 0 has its own data and MR data. In particular, the MR data is data belonging to the DCT block denoted by 1 on the right side. In addition, the DCT block denoted by 0 does not have an EOB flag of VR data denoted by 1, which means that another DCT block has data connected thereto.

실제로 2로 표기되는 첫 행의 좌측에서 세 번째의 DCT블록에 1로 표기된 그의 잔여 데이터(이 경우는 MR 데이터)와 그의 EOB플랙이 있다.In fact, there are its residual data (in this case MR data) and its EOB flag, which are marked as 1 in the third DCT block from the left of the first row, labeled 2.

따라서, 1로 표기된 DCT블록은 그 자체의 데이터와 1로 표기된 DCT블록 및 2로 표기된 DCT블록에 존재하는 MR 데이터를 연결하여야 완전한 데이터가 얻어진다.Therefore, the DCT block denoted by 1 must connect its own data with the MR data present in the DCT block denoted by 1 and the DCT block denoted by 2 to obtain complete data.

마찬가지로 3으로 표기된 DCT블록은 그 자체의 데이터와 2로 표기된 DCT블록 및 3으로 표기된 DCT블록의 MR 데이터를 연결하여야 완전한 데이터가 얻어진다.Likewise, the DCT block denoted by 3 is concatenated with its own data and the MR data of the DCT block denoted by 2 and the DCT block denoted by 3 to obtain complete data.

이는 각각의 매크로 블록에 속한 DCT블록에서 남는 일단 동일한 매크로 블록 내에서 데이터가 차 있지 않은 다른 DCT블록의 여백에 기록되는 예를 보이는 것이다.This shows an example in which data left in the DCT block belonging to each macro block is written in the margin of another DCT block in which no data is filled in the same macro block.

이와는 달리 10으로 표기된 DCT블록은 그의 마지막 부분에 EOB 플랙이 있으므로 그 자체만으로서 완전한 DCT데이터가 복원됨을 알 수 있다.In contrast, since the DCT block denoted by 10 has an EOB flag at the end thereof, it can be seen that the complete DCT data is restored by itself.

한편, 20으로 표기된 DCT블록은 MB2에 속하지만 다른 매크로 블록 MB1에 속한 11, 12, 13으로 표기된 DCT블록에 그의 잔여 데이터(이 경우는 VR 데이터)가 수록되어져 있다.On the other hand, the DCT block denoted 20 is MB2, but its residual data (in this case, VR data) is stored in the DCT block denoted 11, 12, 13 belonging to another macro block MB1.

그리고, 22로 표기된 DCT블록은 MB2에 속하지만 다른 매크로 블록 MB4에 속한 DCT블록에 그의 잔여 데이터(이 경우는 VR 데이터)가 수록되어져 있다.The DCT block denoted by 22 is MB2, but its residual data (in this case, VR data) is stored in the DCT block belonging to another macro block MB4.

이는 각각의 매크로 블록에서 남는 데이터는 데이터가 차 있지 않은 다른 다른 매크로 블록의 여백에 기록되는 예를 보이는 것이다.This shows an example in which the remaining data in each macro block is recorded in the margin of another macro block which is not full of data.

제2도에 도시된 내용을 갖는 세그먼트 데이터는 먼저 DCT블록 단위로 고정된 영역부터 복호되고, 그 다음으로 매크로 블록 단위로 고정된 영역, 마지막으로 세그먼트 단위로 고정된 영역의 순서로 복호화된다. 본 발명에서는 이를 각각 고정 처리(Fixed processing), MR 처리(macro residual processing), 및 VR 처리(video segment residual processing)라 하기로 한다.Segment data having the contents shown in FIG. 2 are first decoded from the area fixed in units of DCT blocks, and then decoded in the order of the area fixed in units of macro blocks and finally the area fixed in units of segments. In the present invention, this is referred to as fixed processing, macro residual processing, and VR (video segment residual processing), respectively.

제3도는 제1도에 도시된 인덱스 발생기의 상세한 구성을 보이는 블록도이다. 제3도에 도시된 장치는 지연기(30), 심벌 길이 누산기(32), 잔여 데이터 계산기(34), 잔여 데이터 누산기 (36), 그리고 비교기 (38)를 구비한다3 is a block diagram showing a detailed configuration of the index generator shown in FIG. The apparatus shown in FIG. 3 includes a delay 30, a symbol length accumulator 32, a residual data calculator 34, a residual data accumulator 36, and a comparator 38.

심벌 길이 누산기(32)는 지연기t30)를 통한 심벌 길이 LEN을 누산한다.The symbol length accumulator 32 accumulates the symbol length LEN through the delay t30.

잔여 데이터 계산기(34)는 어드레스 발생기(22)에서 발생되는 어드레스 즉, 현재 처리되는 매크로 블록의 어드레스인 MB, DCT블록의 어드레스인 DB, DCT블록에서 처리되는 선두 데이터의 포인터인 WD를 입력하여 처리되는 각각의 DCT블록마다의 잔여 비트 수(MR데이터 및 VR데이터의 수)를 계산한다.The residual data calculator 34 inputs the address generated by the address generator 22, that is, the MB of the macro block currently being processed, the DB of the DCT block, and the WD, which is a pointer of the head data processed in the DCT block. The remaining number of bits (number of MR data and VR data) for each DCT block is calculated.

잔여 데이터 누산기(36)는 잔여 데이터 계산기(34)에서 계산된 잔여 비트 수를 누산한다.The residual data accumulator 36 accumulates the residual number of bits calculated by the residual data calculator 34.

비교기(38)는 심벌 길이 누산기(32)에서 누산되어진 산과 잔여 데이터 누산기(34)에서 누산되어진 산을 비교하여 EOB를 발생한다. 그리고, 비교기 (38)는 심벌 길이 누산기 (32)에서 누산되어진 값이 잔여 데이터 누산기(34)에서 누산되어진 값을 초과하지 않는 범위 내에서 가변장 복호기(14)를 정지시킨다.The comparator 38 compares the acid accumulated in the symbol length accumulator 32 with the acid accumulated in the residual data accumulator 34 to generate an EOB. The comparator 38 stops the variable length decoder 14 within a range in which the value accumulated in the symbol length accumulator 32 does not exceed the value accumulated in the residual data accumulator 34.

이때, 가변장 복호기(14)가 복호한 어드레스를 잔여 데이터 인덱스 메모리(18)에 저장하며, 현재 처리되고 있는 DCT블록에서 EOB가 있는 경우에는 EOB FLAG를 1로 세트하고, 잔여 데이터가 있는 경우에는 RESIDUAL FLAG을 1로 세트한다.At this time, the address decoded by the variable length decoder 14 is stored in the residual data index memory 18. If there is an EOB in the DCT block currently being processed, the EOB FLAG is set to 1, and if there is residual data, Set RESIDUAL FLAG to 1.

제4도는 고정 처리 후에 잔여 데이터 인덱스 메모리에 저장된 내용을 보이는 도면이다. MBO의 첫 번째 DCT 블록의 잔여 데이터(MR 데이터)는 어드레스 58H(16진수)에서 시작됨을 알 수 있다.4 is a diagram showing contents stored in the residual data index memory after the fixing process. It can be seen that the residual data (MR data) of the first DCT block of the MBO starts at address 58H (hexadecimal).

제5도는 고정 처리 후에 플랙 메모리(20)에 저장된 EOB FLAG 테이블의 내용을 보이는 도면이다. MBO의 첫 번째 DCT 블록에는 EOB가 있음을 알 수 있다. 제5도에서 EOB_MB는 매크로 블록에서의 EOB의 유무를 나타내는 플랙이다.5 shows the contents of the EOB FLAG table stored in the flag memory 20 after the fixing process. It can be seen that the first DCT block of the MBO has an EOB. In FIG. 5, EOB_MB is a flag indicating the presence or absence of an EOB in a macro block.

제6도는 고정 처리 후에 플랙 메모리(20)에 저장된 RESIDUAL FLAG 테이블의 내용을 보이는 도면이다. MBO의 첫 번째 매크로 블록에는 잔여 데이터(MR 데이터)가 있음을 알 수 있다. 제5도에서 RES_MB는 매크로 블록 차원에서의 잔여 데이터(VR 데이터)의 유무를 나타내는 플랙이다.FIG. 6 shows the contents of the RESIDUAL FLAG table stored in the flag memory 20 after the fixing process. It can be seen that there is residual data (MR data) in the first macro block of the MBO. In FIG. 5, RES_MB is a flag indicating the presence or absence of residual data (VR data) at the macroblock level.

제7도는 제1도에 도시된 어드레스 발생기(22)의 상세한 구성을 보이는 블록도이다. 제7도에 도시된 장치는 시작 어드레스 레지스터(70), 어드레스 레지스터(72), 룩업테이블(74), 제어기(76), 그리고 D-플립플롭(78, 80)을 구비한다.7 is a block diagram showing a detailed configuration of the address generator 22 shown in FIG. The apparatus shown in FIG. 7 has a start address register 70, an address register 72, a lookup table 74, a controller 76, and D-flip flops 78, 80.

고정 처리의 경우에 있어서는 어드레스 레지스터(72)의 값은 제어기(82)의 제어에 의해 순차적으로 증가한다.In the case of the fixed processing, the value of the address register 72 is sequentially increased by the control of the controller 82.

어드레스 레지스터(72)의 내용인 MB, DB, WD는 세그먼트 메모리(10)내의 내용을 읽기 위한 어드레스로서 제공된다. 이때, MB, DB, WD에 의해 지정되는 어드레스는 세그먼트 메모리(10)의 물리적 어드레스와는 다른 값이므로 룩업테이블(80)을 통해 세그먼트 메모리 (10)의 물리적 어드레스로 변환된다.MB, DB, and WD which are contents of the address register 72 are provided as addresses for reading the contents in the segment memory 10. In this case, since the addresses designated by MB, DB, and WD are different from the physical addresses of the segment memory 10, they are converted into the physical addresses of the segment memory 10 through the lookup table 80.

룩업테이블(74)에서 출력되는 세그먼트 메모리(10)의 어드레스는 D-플립플롭(78)을 통해 출력된다.The address of the segment memory 10 output from the lookup table 74 is output via the D-flip flop 78.

어드레스 레지스터 (72)에 저장된 BIT는 현재 출력되는 어드레스에 해당하는 유효 비트 수를 나타낸다. 어드레스 레지스터(72)에 저장된 BIT는 비트 스트리머(12)에 제공된다. 비트 스트리머(12)는 어드레스 레지스터 (72)에서 출력되는 BIT를 참조하여 세그먼트 메모리(10)에서 출력되는 데이터를 16비트의 비트 사이즈로 절단하여 가변장 복호기(14)에 제공한다.The BIT stored in the address register 72 indicates the number of valid bits corresponding to the address currently output. The BIT stored in the address register 72 is provided to the bit streamer 12. The bit streamer 12 refers to the BIT output from the address register 72 and cuts the data output from the segment memory 10 into a bit size of 16 bits and provides the variable length decoder 14.

상술한 바와 같은 본 발명에 따른 복호화 장치는 세그먼트 메모리에 저장된 비트스트림을 독출하여 가변장 복호화기에 제공함에 있어서 가변장 복호화기의 복호 결과를 참조하여 세그먼트 메모리의 독출 어드레스를 제어함으로서 테이프로부터 읽혀진 비트스트림을 실시간으로 복호할 수 있게 하는 효과를 갖는다.As described above, the decoding apparatus according to the present invention reads the bitstream stored in the segment memory and provides the variable length decoder to the bitstream read from the tape by controlling the read address of the segment memory with reference to the decoding result of the variable length decoder. Has the effect of being able to decode in real time.

또한, 본 발명에 따른 복호화 장치는 종래의 복호화 장치와는 달리 이미 처리한 데이터는 다시 참조하지 않게 함으로써 처리 시간을 절약할 수 있는 효과를 갖는다.In addition, unlike the conventional decoding apparatus, the decoding apparatus according to the present invention has an effect of saving processing time by not referring back to already processed data.

더욱이, 본 발명에 따른 복호화 장치는 그 구성이 간단하여 제품의 코스트를 절감시킬 수 있다는 이점이 있다.Moreover, the decoding apparatus according to the present invention has an advantage that the configuration thereof is simple and the cost of the product can be reduced.

Claims (3)

영역 분할된 영상 데이터를 가변장 부호화하여 고정된 비트 사이즈와 블록에 기록하되 각 영역에서 제한된 비트 사이즈를 넘는 잔여 데이터를 다른 블록의 여백에 기록하며, 각 블록에 고유한 데이터와 잔여 데이터를 구분하기 위하여 EOB 신호를 사용하여 기록된 영상 압축 데이터를 복호하는 복호화 장치에 있어서,Variable-length coding of segmented image data is recorded in fixed bit sizes and blocks, but residual data exceeding the limited bit size in each area is recorded in the margins of other blocks, and distinct data and residual data unique to each block are distinguished. In the decoding apparatus for decoding the video compressed data recorded by using the EOB signal, 블록 단위의 복호될 데이터를 저장하고, 저장된 순차적으로 독출하는 메모리;A memory for storing data to be decoded in units of blocks and sequentially reading the stored data; 상기 메모리에서 독출된 데이터를 연결하여 소정의 비트로 묶어주고, 순차로 복호하여 런렝스, 계수, 그리고 심벌의 길이를 출력하는 가변장 복호기;A variable length decoder which connects the data read out from the memory, binds the data into predetermined bits, decodes them sequentially, and outputs run lengths, coefficients, and symbol lengths; 상기 가변장 복호기에서 발생된 심벌의 길이를 누산하고, 상기 메모리에 제공되는어드레스 및 상기 가변장 복호기에서 발생된 EOB 신호를 참조하여잔여 데이터의 선두 어드레스, 잔여 데이터의 유무를 나타내는 플랙, 데이터 종료의 유무를 나타내는 플랙을 발생하는 인덱스 발생기;Accumulate the length of the symbol generated in the variable length decoder, refer to the address provided to the memory and the EOB signal generated in the variable length decoder, the first address of the remaining data, a flag indicating the presence or absence of the remaining data, An index generator for generating a flag indicating presence or absence; 상기 인덱스 발생기에서 발생된 잔여 데이터의 선두 어드레스를 저장하는 잔여 데이터 인덱스 메모리;A residual data index memory for storing a head address of the residual data generated by the index generator; 상기 인덱스 발생기에서 발생된 잔여 데이터의 유무를 나타내는 플랙, 데이터 종료의 유무를 나타내는 플랙을 저장하는 플랙 메모리; 및A flag memory for storing a flag indicating the presence or absence of residual data generated by the index generator and a flag indicating the presence or absence of data termination; And 잔여 데이터 인덱스 메모리에 저장된 잔여 데이터의 선두 위치와 상기 플랙 메모리에 저장된 잔여 데이터의 유무를 나타내는 플랙, 데이터 종료의 유무를 나타내는 플랙을 참조하여 상기 메모리에 제공되는 시작 어드레스를 발생하는 어드레스 발생기를포함하여, Including an address generator for generating a start address that is provided with reference to the flag indicating the presence or absence of the flag, the data end indicating the presence or absence of remaining data stored in the head position and the flag memory of the remaining data stored in the remaining data index memory in the memory , 상기 가변장 복호화기의 복호 결과를 참조하여 상기 메모리의 독출 어드레스를 제어하는복호화 장치. And a read address of the memory based on a decoding result of the variable length decoder. 제1항에 있어서, 상기 인덱스 발생기는The method of claim 1, wherein the index generator 상기 가변장 복호기에서 발생된 심벌의 길이를 누산하는 심벌 길이 누산기;A symbol length accumulator for accumulating the lengths of symbols generated in the variable length decoder; 상기 어드레스 발생기에서 발생된 시작 어드레스를 참조하여 상기 메모리에서 독출될 나머지 비트의 수를 계산하는 잔여 비트 수 계산기;A residual bit number calculator that calculates the number of remaining bits to be read from the memory with reference to a start address generated by the address generator; 상기 잔여 비트 수 계산기에서 계산될 결과를 추산하는 잔여 비트 수 누산기; 및A residual bit number accumulator for estimating a result to be calculated in the residual bit number calculator; And 상기 잔여 비트 수 누산기에서 누산된 값과 EOB 신호를 입력하여 EOB의 발생 위치를 출력하고, 상기 심벌 길이 누산기에서 누산되어진 값이 잔여 비트 수 누산기에서 누산되어진 값을 초과하지 않는 범위 내에서 상기 가변장 복호기를 정지시키는 비교기를 구비함을 특징으로 하는 복호화 장치.Input the value accumulated in the residual number accumulator and the EOB signal to output the generation position of the EOB, and the variable length within the range that the value accumulated in the symbol length accumulator does not exceed the value accumulated in the residual number accumulator And a comparator for stopping the decoder. 제1항에 있어서, 상기 어드레스 발생기는The method of claim 1, wherein the address generator 각 블록의 EOB 및 잔여 비트의 유무를 표시하는 플랙에 의해 상기 메모리에서 특출될 데이터의 시작 어드레스를 발생하는 시작 어드레스 발생기,A start address generator for generating a start address of data to be retrieved from the memory by a flag indicating the presence or absence of an EOB and remaining bits in each block, 상기 시작 어드레스 발생기에서 발생된 시작 어드레스부터 그 블록의 종료 어드레스까지 순차적으로 증가하는 어드레스를 발생하는 어드레스 레지스터; 및An address register for generating an address that sequentially increases from a start address generated in the start address generator to an end address of the block; And 블록의 종료 어드레스에서 다음의 시작 어드레스를 발생하도록 제어하는 제어기를 구비함을 특징으로 하는 복호화 장치.And a controller which controls to generate the next start address at the end address of the block.
KR1019960011288A 1996-04-15 1996-04-15 Decoder KR100219598B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960011288A KR100219598B1 (en) 1996-04-15 1996-04-15 Decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960011288A KR100219598B1 (en) 1996-04-15 1996-04-15 Decoder

Publications (2)

Publication Number Publication Date
KR970071701A KR970071701A (en) 1997-11-07
KR100219598B1 true KR100219598B1 (en) 1999-09-01

Family

ID=19455733

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960011288A KR100219598B1 (en) 1996-04-15 1996-04-15 Decoder

Country Status (1)

Country Link
KR (1) KR100219598B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000042558A (en) * 1998-12-26 2000-07-15 전주범 Device for deformatting dvcr

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000042558A (en) * 1998-12-26 2000-07-15 전주범 Device for deformatting dvcr

Also Published As

Publication number Publication date
KR970071701A (en) 1997-11-07

Similar Documents

Publication Publication Date Title
US6628890B1 (en) Digital recording/reproduction apparatus
US6330365B1 (en) Decoding method and apparatus using bitstreams and a hierarchical structure
KR100219598B1 (en) Decoder
KR0183927B1 (en) Decoder
KR0145160B1 (en) Video signal recording apparatus and reproducing apparatus
KR0165439B1 (en) Device and method of screen construction for dvcr
WO1998004085A1 (en) Moving picture recording device and moving picture reproducing device
KR0171443B1 (en) Apparatus and method of variable length code decoding of digital video cassette recorder
KR0162307B1 (en) High density recording method of high quality vcr
KR0165447B1 (en) Circuit for redistributing an encoded data in the apparatus for encoding video
JP3546439B2 (en) Digital image signal encoding apparatus and encoding method
JP3320125B2 (en) Image decoding device
JP3045696B2 (en) Decoding method and apparatus
JPH07231427A (en) Compressed television signal processor
KR0144975B1 (en) Sink code interleave method and apparatus thereof
JP3063675B2 (en) Video signal playback device
KR100525373B1 (en) Fast forward control method of video player and video player
JP3332220B2 (en) Digital signal reproducing apparatus and reproducing method
JP2697290B2 (en) Video signal recording device and playback device, recording method and processing device
KR100321300B1 (en) Signal Encoding Device, Signal Decoding Device, Signal Encoding Method, Signal Decoding Method
KR0152030B1 (en) Decode error exposure preventing apparatus
KR20000000985A (en) Memory controller of digital vcr
KR20020014959A (en) a video decoding system having function for controlling overflow
JPH0795525A (en) Digital signal recorder
JPH08237656A (en) Picture encoder and decoder

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080529

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee