KR100975062B1 - 가변길이 부호화 장치 및 가변길이 부호화 방법 - Google Patents

가변길이 부호화 장치 및 가변길이 부호화 방법 Download PDF

Info

Publication number
KR100975062B1
KR100975062B1 KR1020030098231A KR20030098231A KR100975062B1 KR 100975062 B1 KR100975062 B1 KR 100975062B1 KR 1020030098231 A KR1020030098231 A KR 1020030098231A KR 20030098231 A KR20030098231 A KR 20030098231A KR 100975062 B1 KR100975062 B1 KR 100975062B1
Authority
KR
South Korea
Prior art keywords
data
code
clock
output
variable length
Prior art date
Application number
KR1020030098231A
Other languages
English (en)
Other versions
KR20050067349A (ko
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 KR1020030098231A priority Critical patent/KR100975062B1/ko
Priority to US11/014,859 priority patent/US7109896B2/en
Priority to CNB2004101025657A priority patent/CN100352284C/zh
Publication of KR20050067349A publication Critical patent/KR20050067349A/ko
Application granted granted Critical
Publication of KR100975062B1 publication Critical patent/KR100975062B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code

Abstract

본 발명에 따라 가변 길이 부호화 장치 및 가변 길이 부호화 방법이 개시된다. 이러한 가변 길이 부호화 장치는, 매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 가변길이 부호 발생부와, 상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와, 상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함한다. 이와 같은 구성에 의해, 아이들링 없이 고속으로 동작하는 가변 길이 부호화 장치를 구현할 수 있다.

Description

가변길이 부호화 장치 및 가변길이 부호화 방법{A Variable Length Coding apparatus and a Variable Length Coding method}
도 1은 종래 기술에 따른 가변 길이 부호화 장치의 개략적인 블록도,
도 2는 종래 기술에 따른 가변 길이 부호화 과정을 나타내는 흐름도,
도 3은 본 발명에 따른 가변 길이 부호화 장치가 포함된 동영상 인코딩 장치의 개략적인 블록도,
도 4는 본 발명의 일 예에 따라 2 개의 데이터를 입력받아 1 개의 데이터로 프리팩킹하는 프리팩킹부의 구체적인 구성을 나타내는 블록도,
도 5는 본 발명에 따른 가변 길이 부호화 과정이 포함된 동영상 인코딩 과정을 나타내는 흐름도,
도 6은 본 발명에 따라 도 5에 도시된 가공 단계의 구체적인 과정을 나타내는 흐름도,
도 7은 본 발명의 다른 예에 따라 4 개의 데이터를 입력받아 1 개의 데이터로 프리팩킹하는 프리팩킹부의 구체적인 구성을 나타내는 블록도.
본 발명은 동영상 부호화에 관한 것으로, 좀더 구체적으로는, 가변 길이 부호화 장치 및 가변 길이 부호화 방법에 관한 것이다.
고화질 동영상의 인코딩을 위해서는 고속으로 동작하는 동영상 인코딩 장치가 필요하다. 동영상 인코딩 장치가 고속으로 동작하기 위해서는 고속으로 동작하는 DCT(Discrete Cosine Transform) 장치, 양자화/역양자화 장치, 및 VLC(Variable Length Coding) 장치가 필수적이다. DCT 장치를 고속으로 동작시키기 위해서 일반적으로 매 클럭마다 두 개의 데이터를 처리할 수 있도록 하고 있다.
도 1은 종래 기술에 따른 동영상 인코딩 장치의 개략적인 블록도이다.
도 1을 참조하면, 상기 동영상 인코딩 장치는 DCT/양자화부와(110)와, 런길이 코딩(Run Length Coding:RLC)부(120)와, 가변길이 부호 발생부(130)와, VLC 테이블(140)과, 버퍼(150)와, 비트스트림 팩킹부(160)를 포함한다. 상기 인코딩 장치는 8x8 블럭 단위로 DCT/Q, RLC, VLC를 수행한다.
DCT/양자화부(120)는 8x8 데이터 블럭 단위로 DCT와 양자화를 수행하고, RLC 부(120)는 DCT/양자화부(110)로부터 출력된 데이터를 런 길이 인코딩한다.
가변 길이 부호화를 수행하기 위한 장치는 가변길이 부호 발생부(130)와, VLC 테이블(140)과, 버퍼(150)와, 비트스트림 팩킹부(160)를 포함한다.
가변길이 부호 발생부(130)는 RLC 부(120)의 출력 데이터를 입력 심볼로 하여 VLC 테이블(140)을 참조한 후, 각 입력 심볼에 대응하는 부호값 및 부호길이의 한 쌍으로 구성된 데이터를 두 개씩 버퍼(150)로 출력한다.
버퍼(150)는 가변길이 부호 발생부(130)로부터 출력된 데이터를 저장하고 있 다가 비트스트림 팩킹부(160)로 전송한다.
비트스트림 팩킹부(160)는 최종 비트스트림을 생성하는데, 각 심볼의 부호값 및 부호길이 정보를 버퍼(150)로부터 읽어들여, 연속하는 비트스트림을 생성한다. 비트스트림을 생성하기 위한 정보로는 움직임 벡터, 코딩 모드, 및 각종 헤더 정보 등을 포함하며, 도 1에는 도시되지 않았다.
도 2는 종래 기술에 따른 인코딩 과정을 나타내는 흐름도이다.
도 2를 참조하면, 먼저, DCT/양자화부(110)는 매 클럭마다 N 비트의 데이터 0(10)과 N 비트의 데이터 1(20)로 이루어진 2N 비트의 데이터(30)를 수신하여 8x8 블럭 단위로 DCT와 양자화를 수행한 후, 처리된 결과 데이터를 매 클럭마다 두 개씩 RLC부(120)로 출력한다(단계 210). 따라서, DCT/양자화부의 입출력은 8x8 블럭 기준으로 32 클럭 시간 동안 64개의 데이터를 처리하게 된다.
다음, RLC 부(120)는 상기 양자화된 데이터를 매 클럭마다 두 개씩 수신하여 런 길이 인코딩을 수행하는데(단계 220), 연속되는 0값의 길이와 레벨 값의 한쌍으로 구성된 두 개의 데이터를 출력한다. RLC 부(120)의 출력은 영상에 따라 가변적으로 변하게 되는데, 연속되는 0 값이 하나도 없을 경우에 8x8 블럭 기준으로 32 클럭 시간 동안 64개의 데이터가 출력된다. 그러나, 일반적인 영상에서 DCT/양자화부의 출력은 연속되는 0 값을 많이 가지며, 따라서 RLC 부(120)의 출력은 8x8 블럭 기준으로 32 클럭 시간 동안 64개보다 훨씬 적은 데이터를 출력하게 된다.
가변길이 부호 발생부(130)도 매 클럭마다 두 개씩의 데이터를 입출력한다(단계 230). 즉, 가변길이 부호 발생부(130)는 RLC부(120)의 출력 데이터를 입력 심볼로 하여 VLC 테이블(140)을 참조한 후, 각 입력 심볼에 해당하는 부호값 및 부호길이의 한쌍으로 구성된 데이터를 두 개씩 출력하게 된다. 즉, 매 클럭마다 두 개의 (부호값, 부호길이) 데이터를 출력한다.
이와 같이 가변길이 부호 발생부(130)로부터 매 클럭마다 두 개씩 출력된 데이터는 버퍼에 저장된다(단계 240).
다음, 비트스트림 팩킹부(160)는 버퍼(150)에 저장된 (부호값, 부호길이)로 구성된 데이터를 매 클럭마다 하나씩 입력으로 하여 연속되는 비트스트림을 출력한다(단계 250). 즉, 비트스트림 팩킹부는 매 클럭 마다 최대 하나의 (부호값, 부호길이) 입력 데이터를 처리할 수 있으며, 가변길이 부호 발생부(130)에서의 데이터 출력률과 최대 2배 차이가 나기 때문에, 도 1에 도시된 바와 같이 가변길이 부호 발생부(130)와 비트스트림 팩킹부(160) 사이에 버퍼를 두게 된다.
가변길이 부호 발생부(130)의 출력률이 최악의 경우에 비트스트림 팩킹부의 입력률의 2배가 되는 것이 문제이다. 고화질로 인코딩 할수록 이렇게 2배에 가까운 출력률/입력률 차이가 발생하게 되는데, 이와 같은 되는 경우에는 비트스트림 팩킹부 이전 단계에서 고속 처리를 위해 매 클럭마다 두 개의 데이터를 처리하도록 한 것이 소용없게 되는 상황이 발생한다. 즉, 비트스트림 팩킹부 앞 단까지는 8x8 블럭 기준으로 32 클럭 시간 동안 프로세싱이 끝나지만, 비트스트림 팩킹부에서는 최악의 경우 8x8 블럭 기준으로 64 클럭 시간이 필요하게 되므로, 비트스트림 팩킹부 앞 단에서 나머지 32 클럭 시간 동안 아이들링 해야 하는 상황이 발생하는 것이다.
본 발명은 상기와 같은 문제점을 해결하여 구성요소의 아이들링을 최소화하여 고속으로 동작할 수 있는 가변 길이 부호화 장치 및 가변 길이 부호화 방법을 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위해 본 발명이 착안한 것은, 두 개의 VLC 심볼을 하나의 심볼로 미리 만든 후 비트스트림 팩킹하는 것으로, 이와 같은 구성에 의해 양자화 장치 뿐만 아니라 가변 길이 부호화 장치 또한 매 클럭마다 두 개의 데이터를 처리할 수 있게 된다.
상기와 같은 과제를 해결하기 위한 본 발명의 하나의 특징은 가변 길이 부호화 장치에 있어서, 가변 길이 부호 발생기로부터 매 클럭마다 수신되는 부호값과 부호길이로 이루어진 2N (N=1,2,...) 개의 데이터를 1 개의 데이터로 가공하여 상기 가공된 데이터를 비트스트림 팩킹을 위해 출력하는 프리팩킹부를 포함하는 것이다.
본 발명의 다른 특징은, 가변 길이 부호화 장치에 있어서, 매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 가변길이 부호 발생부와, 상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와, 상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함하는 것이다.
여기서, 바람직하게는, 상기 가변길이 부호 발생부로부터 출력된 2 개의 데이터에 대해서, 제 1 데이터와 제 2 데이터는 각각 부호값과 부호길이로 이루어지며, 상기 프리팩킹부는, 상기 제1 데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 가산부와, 상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 시프트부와, 상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 OR 연산부를 포함하고, 매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력한다.
본 발명의 또 다른 특징은, 가변 길이 부호화 장치에 있어서, 매 클럭마다 수신된 2N (N=1,2,...) 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2N 개의 데이터를 출력하는 가변길이 부호 발생부와, 상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2N 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와, 상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함하는 것이다.
여기서, 바람직하게는, 상기 프리팩킹부는, N개의 단을 포함하며, 각 제 M단(M=1,,..N)은 2 N-M 개의 서브유닛을 포함하며, 상기 제 M단(M=1,..N-1)의 각 서브유닛은 상기 가변길이 부호 발생부로부터 출력된 2N 개의 데이터에 대해서 두 개의 데이터를 하나의 데이터로 프리팩킹하여 제 M+1단의 서브유닛들로 전달하며, 상 기 제 N-1단의 서브유닛은 두 개의 데이터를 하나의 데이터로 프리팩킹하여 상기 프리팩킹된 데이터를 출력한다.
상기 각 서브유닛은 각각 부호값과 부호길이로 이루어진 두 개의 데이터, 제1 데이터와 제2데이터를 수신하고, 상기 제1데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 가산부와, 상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 시프트부와, 상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 OR 연산부를 포함하고, 매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력한다.
본 발명의 또 다른 특징은, 가변 길이 부호화 방법에 있어서, 매 클럭마다 가변 길이 부호 발생기로부터 수신되는 부호길이와 부호값으로 이루어진 2N (N=1,2,...) 개의 데이터를 1 개의 데이터로 가공하여 상기 가공된 데이터를 비트스트림 팩킹을 위해 출력하는 프리팩킹 단계를 포함하는 것이다.
본 발명의 또 다른 특징은, 가변 길이 부호화 방법에 있어서, a) 매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 단계와, b) 상기 매 클럭마다 출력된 2 개의 데이터를 1 개의 데이터로 가공하여 출력하는 단계와, c) 상기 가공되어 매 클럭마다 출력되는 1 개의 데이터를 수신하여 비트스트림 팩킹하는 단계를 포함하는 것이다.
본 발명의 또 다른 특징은, 가변 길이 부호화 방법에 있어서, a) 매 클럭마 다 수신된 2N (N=1,2,...) 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2N 개의 데이터를 출력하는 단계와, b) 상기 매 클럭마다 출력된 2N 개의 데이터를 1 개의 데이터로 가공하여 출력하는 단계와, c) 상기 가공되어 매 클럭마다 출력되는 1 개의 데이터를 수신하여 비트스트림 팩킹하는 단계를 포함하는 것이다.
이제, 첨부된 도면들을 참조하여 본 발명을 상세히 설명한다.
도 3은 본 발명에 따른 가변 길이 부호화 장치를 포함하는 동영상 인코딩 장치의 개략적인 블록도이다.
도 3을 참조하면, 상기 동영상 인코딩 장치는 DCT/양자화부(310)와, RLC부(320)와, 가변길이 부호 발생부(330)와, VLC 테이블(340)과, 프리팩킹부(350)와, 비트스트림 팩킹부(360)를 포함한다. 상기 동영상 인코딩 장치는 8x8 블럭 단위로 DCT/Q, RLC, VLC를 수행한다.
DCT/양자화부(310)는 8x8 데이터 블럭 단위로 DCT와 양자화를 수행하고, RLC 부(320)는 DCT/양자화부(310)로부터 출력된 데이터를 런 길이 인코딩한다.
가변 길이 부호화를 수행하기 위한 장치는 가변길이 부호 발생부(330)와, VLC 테이블(340)과, 프리팩킹부(350)와, 비트스트림 팩킹부(360)를 포함한다.
가변길이 부호 발생부(330)는 RLC 부(320)의 출력 데이터를 입력 심볼로 하여 VLC 테이블(340)을 참조한 후, 각 입력 심볼에 대응하는 부호값 및 부호길이를 한 쌍으로 출력하여 프리팩킹부(350)로 출력한다.
프리팩킹부(350)는 가변길이 부호 발생부(330)로부터 출력된 데이터를 가공하하고, 가공된 데이터를 비트스트림 팩킹부(360)로 전송한다. 본 발명에 따른 프리팩킹부(350)는 가변길이 부호 발생부(330)로부터 매 클럭마다 두 개의 데이터를 수신하여, 이를 하나의 데이터로 가공하고, 매 클럭마다 하나의 데이터를 비트스트림 팩킹부(360)로 출력한다. 이와 같이 비트스트림 팩킹부 앞 단에, 단순히 데이터를 저장만 하고 있는 버퍼 대신에 매 클럭마다 두 개의 데이터를 하나로 가공할 수 있는 프리팩킹부를 마련함으로써 본 발명에 따른 가변 길이 부호화 장치 및 동영상 인코딩 장치는 매 클럭마다 두 개의 데이터를 처리할 수 있게 된다. 프리팩킹부(350)의 상세한 설명은 후술한다.
비트스트림 팩킹부(360)는 최종 비트스트림을 생성하는데, 각 심볼의 부호값 및 부호길이 정보를 프리팩킹부(350)로부터 읽어들여, 연속하는 비트스트림을 생성한다. 비트스트림을 생성하기 위한 정보로는 움직임 벡터, 코딩 모드, 및 각종 헤더 정보 등을 포함하며, 도 1에는 도시되지 않았다.
도 4는 본 발명에 따라 도 3에 도시된 프리팩킹부의 구체적인 구성을 나타내는 블록이다.
도 4를 참조하면, 프리팩킹부(350)는 가산부(351)와, 시프트부(352)와, OR 연산부(353)를 포함한다.
프리팩킹부(350)는 가변길이 부호 발생부(330)로부터 매 클럭마다 두 개의 데이터를 수신하는데, 이러한 두 개의 데이터 각각은 부호값과 부호길이로 구성된다. 예를 들어, 도 4에 도시된 바와 같이, 두 개의 데이터를 제1 데이터, 제2 데 이터라 하면, 제1 데이터는 부호값 0과 부호길이 0로 구성되고, 제2 데이터는 부호값 1과 부호 길이 1로 구성된다.
가산부(351)는 두 개의 데이터의 부호길이를 더한다. 즉, 가산부(351)는 제1 데이터의 부호길이 0과 제2 데이터의 부호길이 1을 더한다.
시프트부(352)는 제1데이터의 부호값 0을 제2 데이터의 부호길이 1만큼 시프트한다. 이러한 시프트부로는 배럴 시프트기를 이용할 수 있다.
OR 연산부(353)는 상기 시프트부(352)의 출력값과 제2 데이터의 부호값 1을 OR 연산한다.
이와 같이 하여, 프리팩킹부의 출력은 상기 OR 연산부의 결과값을 부호값 2로 하고, 상기 가산부의 결과값을 부호길이 2로 하여, (부호값, 부호길이) 데이터를 출력한다.
도 5는 본 발명에 따른 가변 길이 부호화 과정을 포함하는 동영상 인코딩 과정을 나타내는 흐름도이다.
도 5를 참조하면, 먼저, DCT/양자화부(310)는 매 클럭마다 N 비트의 데이터 0(10)과 N 비트의 데이터 1(20)로 이루어진 2N 비트의 데이터(30)를 수신하여 DCT와 양자화를 수행한 후, 처리된 결과 데이터를 매 클럭마다 두 개씩 RLC부(320)로 출력한다(단계 510). 따라서, DCT/양자화부의 입출력은 8x8 블럭 기준으로 32 클럭 시간 동안 64개의 데이터를 처리하게 된다.
다음, RLC 부(320)는 상기 양자화된 데이터를 매 클럭마다 두 개씩 수신하여 런 길이 인코딩을 수행하는데(단계 520), 연속되는 0값의 길이와 레벨 값의 한쌍으 로 구성된 두 개의 데이터를 출력한다. RLC 부(320)의 출력은 영상에 따라 가변적으로 변하게 되는데, 연속되는 0 값이 하나도 없을 경우에 8x8 블럭 기준으로 32 클럭 시간 동안 64개의 데이터가 출력된다. 그러나, 일반적인 영상에서 DCT/양자화부의 출력은 연속되는 0 값을 많이 가지며, 따라서 RLC 부(320)의 출력은 8x8 블럭 기준으로 32 클럭 시간 동안 64개보다 훨씬 적은 데이터를 출력하게 된다.
가변길이 부호 발생부(330)도 매 클럭마다 두 개씩의 데이터를 입출력한다(단계 530). 즉, 가변길이 부호 발생부(330)는 RLC부(320)의 출력 데이터를 입력 심볼로 하여 VLC 테이블(340)을 참조한 후, 각 입력 심볼에 해당하는 부호값 및 부호길이의 한쌍으로 구성된 데이터를 두 개씩 출력하게 된다. 즉, 매 클럭마다 두 개의 (부호값, 부호길이) 데이터를 출력한다.
이와 같이 가변길이 부호 발생부(330)로부터 매 클럭마다 두 개씩 출력된 데이터는 프리팩킹부로 전송되어 매 클럭마다 하나의 데이터로 가공된다(단계 540).
도 6을 참조하여 본 발명에 따른 가공 단계의 구체적인 과정을 설명한다.
가산부(351)는 두 개의 데이터, 제1 데이터와 제2 데이터에 대해서 제1 데이터의 부호길이와 제2 데이터의 부호길이를 더한다(541).
그리고, 시프트부(352)는 제1 데이터의 부호값을 제2데이터의 부호길이 만큼 시프트한다(542).
다음, OR 연산부(353)는 상기 제1 데이터의 시프트된 부호값을 제2데이터의 부호값과 OR 연산한다(543).
다음, 비트스트림 팩킹부(360)는 버퍼(150)에 저장된 (부호값, 부호길이)로 구성된 데이터를 매 클럭마다 하나씩 입력으로 하여 연속되는 비트스트림을 출력한다(단계 550). 이와 같은 가공 단계에서는 배럴 시프트기를 이용함으로써 한 클럭내에 시프트와 OR 연산을 수행할 수 있다.
상기와 같이 비트스트림 팩킹 단계 이전에 두 개의 데이터를 하나의 데이터로 가공하는 단계를 마련함으로써, 가공 단계에서 8x8 블럭 기준으로 32 클럭 시간 동안 프로세싱이 끝난다. 따라서, 비트스트림 팩킹 단계에서 상기 가공된 데이터를 32 클럭 시간동안 8x8 블록 데이터를 처리한다면, 가변 길이 부호화 장치에서 실제로 아이들링없이 매 클럭마다 두 개의 데이터를 처리한 것과 같은 결과를 얻을 수 있는 것이다.
이상의 설명에서는, 설명의 편의를 위해 매 클럭마다 2개의 데이터를 처리하는 것으로 예를 들었지만, 상기 설명한 바와 같은 프리팩킹부의 구성을 확장하여 마련함으로써, 매 클럭마다 2N 개의 데이터를 처리하는 동영상 인코딩 장치 및 가변 길이 부호화 장치를 구현할 수 있음은 본 발명이 속하는 기술분야의 당업자라면 충분히 이해할 것이다.
도 7은 본 발명의 다른 예에 따라 4 개의 데이터를 입력받아 1 개의 데이터로 프리팩킹하는 프리팩킹부의 구체적인 구성을 나타내는 블록도이다.
도 7을 참조하면, 프리팩킹부는 서브유닛 #1(710)과, 서브유닛 #2(720)와, 서브유닛 #3(730)을 포함한다. 서브유닛 #1(710)과 서브유닛 #2(720)은 각각 가변길이 부호 발생부로부터 매 클럭마다 두 개의 데이터를 수신하여 하나의 데이터로 프리팩킹하고, 서브유닛 #3(730)은 매 클럭마다 상기 서브유닛 #1(710)에 의해 프리팩킹된 데이터와 서브유닛 #2(720)에 의해 프리팩킹된 데이터를 수신하여 하나의 데이터로 프리팩킹한다. 이와 같은 구성에 의해 도 7에 도시된 프리팩킹부에 의하면 매 클럭마다 4개의 데이터를 입력받아 1개의 데이터로 프리팩킹할 수 있게 된다. 물론, 데이터 입력 초기에는 2클럭이 되어야 프리팩킹된 데이터 하나를 얻을 수 있지만, 데이터가 파이프라인식으로 처리되므로 초기 2클럭이 지난 후에는 매 클럭마다 하나의 데이터를 얻을 수 있다.
서브유닛 #1(710)은 가산부(711)와, 시프트부(712)와, OR 연산부(713)를 포함한다.
서브유닛 #1(710)은 가변길이부호발생부로부터 출력된 부호값0과 부호길이0으로 이루어진 데이터 0과 부호값1과 부호길이1로 이루어진 데이터 1을 수신한다.
가산부(711)는 출력 데이터 0의 부호길이 0과 출력 데이터 1의 부호길이 1을 더한다. 시프트부(712)는 출력 데이터 0의 부호값 0을 출력 데이터 1의 부호길이 1만큼 시프트한다. 이러한 시프트부로는 배럴 시프트기를 이용할 수 있다. OR 연산부(713)는 상기 시프트부(712)의 출력값과 출력 데이터 1의 부호값 1을 OR 연산한다. 이와 같이 하여, 서브유닛 #1의 출력은 상기 OR 연산부(713)의 결과값을 부호값 4로 하고, 상기 가산부(711)의 결과값을 부호길이 4로 하여, 부호값 4와 부호길이4로 이루어진 데이터를 서브유닛 #3(730)으로 출력한다.
서브유닛 #2(720)는 가산부(721)와, 시프트부(722)와, OR 연산부(723)를 포함한다.
서브유닛 #2(720)은 가변길이부호발생부로부터 출력된 부호값2과 부호길이2으로 이루어진 데이터 2와, 부호값3과 부호길이3으로 이루어진 데이터 3을 수신한다.
가산부(721)는 출력 데이터 2의 부호길이 2과 출력 데이터 3의 부호길이 3을 더한다. 시프트부(722)는 출력 데이터 2의 부호값 2를 출력 데이터 3의 부호길이 3만큼 시프트한다. OR 연산부(723)는 상기 시프트부(722)의 출력값과 출력 데이터 3의 부호값 3을 OR 연산한다. 이와 같이 하여, 서브유닛 #2의 출력은 상기 OR 연산부(723)의 결과값을 부호값 5로 하고, 상기 가산부(721)의 결과값을 부호길이 5로 하여, 부호값 5와 부호길이5로 이루어진 데이터를 서브유닛 #3(730)으로 출력한다.
서브유닛 #3(730)은 가산부(731)와, 시프트부(732)와, OR 연산부(733)를 포함한다.
서브유닛 #2(730)는 서브유닛 #1(710)로부터 출력된 부호값4와 부호길이4로 이루어진 데이터 4와 서브유닛 #2(720)로부터 출력된 부호값5와 부호길이 5로 이루어진 데이터 5를 수신한다.
가산부(731)는 출력 데이터 4의 부호길이 4과 출력 데이터 5의 부호길이 5를 더한다. 시프트부(732)는 출력 데이터 4의 부호값 4를 출력 데이터 5의 부호길이 5만큼 시프트한다. OR 연산부(733)는 상기 시프트부(732)의 출력값과 출력 데이터 5의 부호값 5를 OR 연산한다. 이와 같이 하여, 서브유닛 #3의 출력은 상기 OR 연산부(733)의 결과값을 부호값 6으로 하고, 상기 가산부(731)의 결과값을 부호길이 6으로 하여, 부호값 6와 부호길이 6으로 이루어진 데이터 6을 비트스트림 팩킹부(360)로 출력한다.
도 7을 참조하여 매 클럭마다 4개의 데이터를 입력받아 1개의 데이터로 프리팩킹하는 프리팩킹부를 설명하였지만, 이러한 프리팩킹부의 구조는 확장될 수 있다. 예를 들어, 매 클럭마다 8개의 데이터를 입력받는 프리팩킹부의 구조의 경우에는 첫 번째 단에서 8개의 데이터를 4개의 데이터로 프리팩킹하는 4개의 서브유닛을 두고, 두 번째 단에서 4개의 데이터를 2개의 데이터로 프리팩킹하는 2개의 서브유닛을 두고, 세 번째 단에서 2개의 데이터를 1개의 데이터로 프리팩킹하는 1개의 서브유닛을 둘 수 있다. 이와 같은 경우에 8개의 데이터가 프리팩킹부로 입력되어 처음으로 프리팩킹된 데이터가 출력되기 까지는 3 클럭이 필요하지만, 3 클럭 이후에는 매 클럭마다 데이터가 출력된다.
이상과 같은 본 발명에 의하면, 비트스트림 팩킹부의 앞 단에 매 클럭마다 두 개의 데이터를 하나의 데이터로 합치는 프리팩킹부를 마련함으로써, 종래 기술에서와 같이 입출력률 차이로 인한 버퍼의 필요성이 없어지게 되며, 고속 동영상 인코딩을 위한 매 클럭 두 개의 데이터 처리를 끊김 없이 진행할 수 있다.
본 발명은 초고화질로 인코딩 할 경우, 즉 VLC를 수행해야 할 RLC 심볼의 개수가 상당 기간동안 계속하여 많이 발생할 경우에 필수적이다. 또한, 최악의 경우, 즉, DCT/Q 부의 출력으로 연속되는 0값이 전혀 없는 경우에도, 전체 VLC 과정에서 끊김 없이 매 클럭마다 두 개의 데이터를 처리하는 것과 같은 효과를 볼 수 있다. 그리고, 일반적인 동영상 압축의 경우에도 버퍼를 고려하지 않아도 되는 안정적인 VLC 구조를 제공할 수 있다.

Claims (12)

  1. 삭제
  2. 가변 길이 부호화 장치에 있어서,
    매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 가변길이 부호 발생부와,
    상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와,
    상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함하는 것을 특징으로 하는 가변 길이 부호화 장치.
  3. 제2항에 있어서,
    상기 가변길이 부호 발생부로부터 출력된 2 개의 데이터에 대해서, 제 1 데이터와 제 2 데이터는 각각 부호값과 부호길이로 이루어지며,
    상기 프리팩킹부는,
    상기 제1 데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 가산부와,
    상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 시프트부와,
    상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 OR 연산부를 포함하고,
    매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력하는 것을 특징으로 하는 가변 길이 부호화 장치.
  4. 가변 길이 부호화 장치에 있어서,
    매 클럭마다 수신된 2N (N=1,2,...) 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2N 개의 데이터를 출력하는 가변길이 부호 발생부와,
    상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2N 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와,
    상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함하는 것을 특징으로 하는 가변 길이 부호화 장치.
  5. 제4항에 있어서,
    상기 프리팩킹부는,
    N개의 단을 포함하며,
    각 제 M단(M=1,,..N)은 2 N-M 개의 서브유닛을 포함하며,
    상기 제 M단(M=1,..N-1)의 각 서브유닛은 상기 가변길이 부호 발생부로부터 출력된 2N 개의 데이터에 대해서 두 개의 데이터를 하나의 데이터로 프리팩킹하여 제 M+1단의 서브유닛들로 전달하며, 상기 제 N-1단의 서브유닛은 두 개의 데이터를 하나의 데이터로 프리팩킹하여 상기 프리팩킹된 데이터를 출력하는 것을 특징으로 하는 가변길이 부호화장치.
  6. 제5항에 있어서,
    상기 각 서브유닛은 각각 부호값과 부호길이로 이루어진 두 개의 데이터, 제1 데이터와 제2데이터를 수신하고,
    상기 제1데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 가산부와,
    상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 시프트부와,
    상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 OR 연산부를 포함하고,
    매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력하는 것을 특징으로 하는 가변길이 부호화장치.
  7. 삭제
  8. 가변 길이 부호화 방법에 있어서,
    a) 매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 단계와,
    b) 상기 매 클럭마다 출력된 2 개의 데이터를 1 개의 데이터로 가공하여 출력하는 단계와,
    c) 상기 가공되어 매 클럭마다 출력되는 1 개의 데이터를 수신하여 비트스트림 팩킹하는 단계를 포함하는 것을 특징으로 하는 가변 길이 부호화 방법.
  9. 제8항에 있어서,
    상기 a) 단계에서 출력된 2 개의 데이터에 대해서, 제 1 데이터와 제 2 데이터는 각각 부호값과 부호길이로 이루어지며,
    상기 b) 단계는,
    b1) 상기 제1데이터의 부호길이와 상기 제2데이터의 부호길이를 더하는 단계와,
    b2) 상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 단계와,
    b3) 상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 단계와,
    b4) 상기 더해진 부호길이와 상기 OR 연산된 부호값으로 이루어진 1 개의 데이터를 매 클럭마다 출력하는 단계를 포함하는 것을 특징으로 하는 가변 길이 부호화 방법.
  10. 가변 길이 부호화 방법에 있어서,
    a) 매 클럭마다 수신된 2N (N=1,2,...) 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2N 개의 데이터를 출력하는 단계와,
    b) 상기 매 클럭마다 출력된 2N 개의 데이터를 1 개의 데이터로 가공하여 출력하는 단계와,
    c) 상기 가공되어 매 클럭마다 출력되는 1 개의 데이터를 수신하여 비트스트림 팩킹하는 단계를 포함하는 것을 특징으로 하는 가변 길이 부호화 방법.
  11. 제10항에 있어서,
    상기 b) 단계는,
    N개의 가공 단계를 포함하며,
    각 제 M(M=1,,..N) 가공 단계는 2 N-M 개의 프리팩킹 단계를 포함하며,
    상기 제 M(M=1,..N-1) 가공 단계의 각 프리팩킹 단계는 두 개의 데이터를 하나의 데이터로 프리팩킹하여 제 M+1 가공 단계의 프리팩킹 단계들로 전달하며, 상기 제 N-1 가공 단계의 프리팩킹 단계는 두 개의 데이터를 하나의 데이터로 프리팩킹하여 상기 프리팩킹된 데이터를 출력하는 것을 특징으로 하는 가변길이 부호화방법.
  12. 제11항에 있어서,
    상기 각 프리팩킹 단계는 각각 부호값과 부호길이로 이루어진 두 개의 데이터, 제1 데이터와 제2데이터를 수신하고,
    상기 제1데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 단계와,
    상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 단계와,
    상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 단계와,
    매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력하는 단계를 포함하는 것을 특징으로 하는 가변길이부호화 방법.
KR1020030098231A 2003-12-27 2003-12-27 가변길이 부호화 장치 및 가변길이 부호화 방법 KR100975062B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020030098231A KR100975062B1 (ko) 2003-12-27 2003-12-27 가변길이 부호화 장치 및 가변길이 부호화 방법
US11/014,859 US7109896B2 (en) 2003-12-27 2004-12-20 Variable length coding apparatus and variable length coding method
CNB2004101025657A CN100352284C (zh) 2003-12-27 2004-12-27 可变长度编码设备和可变长度编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030098231A KR100975062B1 (ko) 2003-12-27 2003-12-27 가변길이 부호화 장치 및 가변길이 부호화 방법

Publications (2)

Publication Number Publication Date
KR20050067349A KR20050067349A (ko) 2005-07-01
KR100975062B1 true KR100975062B1 (ko) 2010-08-11

Family

ID=34698591

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030098231A KR100975062B1 (ko) 2003-12-27 2003-12-27 가변길이 부호화 장치 및 가변길이 부호화 방법

Country Status (3)

Country Link
US (1) US7109896B2 (ko)
KR (1) KR100975062B1 (ko)
CN (1) CN100352284C (ko)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8249209B2 (en) * 2005-06-20 2012-08-21 Bloomberg Finance L.P. Synchronous one-bit interface protocol or data structure
US10761743B1 (en) 2017-07-17 2020-09-01 EMC IP Holding Company LLC Establishing data reliability groups within a geographically distributed data storage environment
US10817388B1 (en) 2017-07-21 2020-10-27 EMC IP Holding Company LLC Recovery of tree data in a geographically distributed environment
US10684780B1 (en) 2017-07-27 2020-06-16 EMC IP Holding Company LLC Time sensitive data convolution and de-convolution
US10880040B1 (en) 2017-10-23 2020-12-29 EMC IP Holding Company LLC Scale-out distributed erasure coding
US10528260B1 (en) 2017-10-26 2020-01-07 EMC IP Holding Company LLC Opportunistic ‘XOR’ of data for geographically diverse storage
US10382554B1 (en) 2018-01-04 2019-08-13 Emc Corporation Handling deletes with distributed erasure coding
US10817374B2 (en) * 2018-04-12 2020-10-27 EMC IP Holding Company LLC Meta chunks
US10579297B2 (en) 2018-04-27 2020-03-03 EMC IP Holding Company LLC Scaling-in for geographically diverse storage
US11023130B2 (en) 2018-06-15 2021-06-01 EMC IP Holding Company LLC Deleting data in a geographically diverse storage construct
US10936196B2 (en) 2018-06-15 2021-03-02 EMC IP Holding Company LLC Data convolution for geographically diverse storage
US10719250B2 (en) 2018-06-29 2020-07-21 EMC IP Holding Company LLC System and method for combining erasure-coded protection sets
US11436203B2 (en) 2018-11-02 2022-09-06 EMC IP Holding Company LLC Scaling out geographically diverse storage
US10901635B2 (en) 2018-12-04 2021-01-26 EMC IP Holding Company LLC Mapped redundant array of independent nodes for data storage with high performance using logical columns of the nodes with different widths and different positioning patterns
US10931777B2 (en) 2018-12-20 2021-02-23 EMC IP Holding Company LLC Network efficient geographically diverse data storage system employing degraded chunks
US11119683B2 (en) 2018-12-20 2021-09-14 EMC IP Holding Company LLC Logical compaction of a degraded chunk in a geographically diverse data storage system
US10892782B2 (en) 2018-12-21 2021-01-12 EMC IP Holding Company LLC Flexible system and method for combining erasure-coded protection sets
US11023331B2 (en) 2019-01-04 2021-06-01 EMC IP Holding Company LLC Fast recovery of data in a geographically distributed storage environment
US10768840B2 (en) 2019-01-04 2020-09-08 EMC IP Holding Company LLC Updating protection sets in a geographically distributed storage environment
US10942827B2 (en) 2019-01-22 2021-03-09 EMC IP Holding Company LLC Replication of data in a geographically distributed storage environment
US10936239B2 (en) 2019-01-29 2021-03-02 EMC IP Holding Company LLC Cluster contraction of a mapped redundant array of independent nodes
US10846003B2 (en) 2019-01-29 2020-11-24 EMC IP Holding Company LLC Doubly mapped redundant array of independent nodes for data storage
US10942825B2 (en) 2019-01-29 2021-03-09 EMC IP Holding Company LLC Mitigating real node failure in a mapped redundant array of independent nodes
US10866766B2 (en) 2019-01-29 2020-12-15 EMC IP Holding Company LLC Affinity sensitive data convolution for data storage systems
US11029865B2 (en) 2019-04-03 2021-06-08 EMC IP Holding Company LLC Affinity sensitive storage of data corresponding to a mapped redundant array of independent nodes
US10944826B2 (en) 2019-04-03 2021-03-09 EMC IP Holding Company LLC Selective instantiation of a storage service for a mapped redundant array of independent nodes
US11119686B2 (en) 2019-04-30 2021-09-14 EMC IP Holding Company LLC Preservation of data during scaling of a geographically diverse data storage system
US11121727B2 (en) 2019-04-30 2021-09-14 EMC IP Holding Company LLC Adaptive data storing for data storage systems employing erasure coding
US11113146B2 (en) 2019-04-30 2021-09-07 EMC IP Holding Company LLC Chunk segment recovery via hierarchical erasure coding in a geographically diverse data storage system
US11748004B2 (en) 2019-05-03 2023-09-05 EMC IP Holding Company LLC Data replication using active and passive data storage modes
US11209996B2 (en) 2019-07-15 2021-12-28 EMC IP Holding Company LLC Mapped cluster stretching for increasing workload in a data storage system
US11023145B2 (en) 2019-07-30 2021-06-01 EMC IP Holding Company LLC Hybrid mapped clusters for data storage
US11449399B2 (en) 2019-07-30 2022-09-20 EMC IP Holding Company LLC Mitigating real node failure of a doubly mapped redundant array of independent nodes
US11228322B2 (en) 2019-09-13 2022-01-18 EMC IP Holding Company LLC Rebalancing in a geographically diverse storage system employing erasure coding
US11449248B2 (en) 2019-09-26 2022-09-20 EMC IP Holding Company LLC Mapped redundant array of independent data storage regions
US11288139B2 (en) 2019-10-31 2022-03-29 EMC IP Holding Company LLC Two-step recovery employing erasure coding in a geographically diverse data storage system
US11435910B2 (en) 2019-10-31 2022-09-06 EMC IP Holding Company LLC Heterogeneous mapped redundant array of independent nodes for data storage
US11119690B2 (en) 2019-10-31 2021-09-14 EMC IP Holding Company LLC Consolidation of protection sets in a geographically diverse data storage environment
US11435957B2 (en) 2019-11-27 2022-09-06 EMC IP Holding Company LLC Selective instantiation of a storage service for a doubly mapped redundant array of independent nodes
US11144220B2 (en) 2019-12-24 2021-10-12 EMC IP Holding Company LLC Affinity sensitive storage of data corresponding to a doubly mapped redundant array of independent nodes
US11231860B2 (en) 2020-01-17 2022-01-25 EMC IP Holding Company LLC Doubly mapped redundant array of independent nodes for data storage with high performance
US11507308B2 (en) 2020-03-30 2022-11-22 EMC IP Holding Company LLC Disk access event control for mapped nodes supported by a real cluster storage system
US11288229B2 (en) 2020-05-29 2022-03-29 EMC IP Holding Company LLC Verifiable intra-cluster migration for a chunk storage system
US11693983B2 (en) 2020-10-28 2023-07-04 EMC IP Holding Company LLC Data protection via commutative erasure coding in a geographically diverse data storage system
US11847141B2 (en) 2021-01-19 2023-12-19 EMC IP Holding Company LLC Mapped redundant array of independent nodes employing mapped reliability groups for data storage
US11625174B2 (en) 2021-01-20 2023-04-11 EMC IP Holding Company LLC Parity allocation for a virtual redundant array of independent disks
US11354191B1 (en) 2021-05-28 2022-06-07 EMC IP Holding Company LLC Erasure coding in a large geographically diverse data storage system
US11449234B1 (en) 2021-05-28 2022-09-20 EMC IP Holding Company LLC Efficient data access operations via a mapping layer instance for a doubly mapped redundant array of independent nodes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000045256A (ko) * 1998-12-30 2000-07-15 서평원 비디오 코더의 가변 부호화기 및 이를 이용한 코딩방법
JP2000216687A (ja) 1998-12-16 2000-08-04 Thomson Consumer Electronics Inc 可変長符号語復号器

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03106127A (ja) * 1989-09-20 1991-05-02 Fujitsu Ltd 可変長符号化回路
US5173695A (en) * 1990-06-29 1992-12-22 Bell Communications Research, Inc. High-speed flexible variable-length-code decoder
JP3134398B2 (ja) * 1991-09-27 2001-02-13 ソニー株式会社 可変長符号化回路
US5339076A (en) * 1992-04-27 1994-08-16 Integrated Information Technology Data compression using content addressable memory
US5446916A (en) * 1993-03-26 1995-08-29 Gi Corporation Variable length codeword packer
KR0180169B1 (ko) * 1995-06-30 1999-05-01 배순훈 가변길이 부호기
US5650905A (en) * 1995-12-28 1997-07-22 Philips Electronics North America Corporation Variable length decoder with adaptive acceleration in processing of Huffman encoded bit streams
JP2870515B2 (ja) * 1996-12-27 1999-03-17 日本電気株式会社 可変長符号化装置
US5973627A (en) * 1997-08-28 1999-10-26 Philips Electronics North America Corporation Variable length decoder with adaptive acceleration optimized by sub-grouping and cross-grouping the symbols having the highest probability of occurrence
US6653953B2 (en) 2001-08-22 2003-11-25 Intel Corporation Variable length coding packing architecture

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000216687A (ja) 1998-12-16 2000-08-04 Thomson Consumer Electronics Inc 可変長符号語復号器
KR20000045256A (ko) * 1998-12-30 2000-07-15 서평원 비디오 코더의 가변 부호화기 및 이를 이용한 코딩방법

Also Published As

Publication number Publication date
CN1638483A (zh) 2005-07-13
KR20050067349A (ko) 2005-07-01
CN100352284C (zh) 2007-11-28
US7109896B2 (en) 2006-09-19
US20050140529A1 (en) 2005-06-30

Similar Documents

Publication Publication Date Title
KR100975062B1 (ko) 가변길이 부호화 장치 및 가변길이 부호화 방법
JP3220598B2 (ja) 可変長符号テーブルおよび可変長符号化装置
EP2053749B1 (en) Encoding method and apparatus, and program
US5652583A (en) Apparatus for encoding variable-length codes and segmenting variable-length codewords thereof
KR101610610B1 (ko) 인코더, 디코더 및 방법
JP2012508522A (ja) 整数値データのストリームを圧縮するシステム及び方法
JP2006174489A (ja) 符号化装置および方法
JP2006157678A (ja) 可変長符号化装置及び可変長符号化方法
JP6073506B2 (ja) エントロピー変更器及び方法
EP2055007B1 (en) Data encoder
KR102393743B1 (ko) 모드 심볼들을 사용하는 인코더, 디코더 및 방법
JP3389391B2 (ja) 可変長コードの符号化及び分割装置
JP3230933B2 (ja) データ伸長装置、データ伸長方法、デコーディング装置、デコーディング方法、エンコーディング装置、及びエントロピー・デコーダ
JP2010050697A (ja) 画像圧縮伸張装置および画像圧縮伸張方法
KR0154011B1 (ko) 가변길이 복호화 장치
KR100207428B1 (ko) 허프만 코드 변환에 적응적인 고속 가변장 복호화 장치 및 방법
KR0185849B1 (ko) 가변길이 부호화기
JP3796354B2 (ja) 画像符号化方法
JP2009017232A (ja) 算術符号化装置及び画像符号化装置
JP6204171B2 (ja) 画像符号化装置及び画像復号化装置
JPH11205154A (ja) 可変長コードの整列化装置
KR0159654B1 (ko) 고정길이부호를 디코딩하는 장치
JP2003087573A (ja) 画像圧縮装置及び画像伸張装置
KR100240002B1 (ko) 영상신호의 압축과 복원을 위한 이산 코사인 변환 장치
JP2006013867A (ja) 可変長符号の合成・出力装置

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140730

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160728

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170728

Year of fee payment: 8