KR100975062B1 - 가변길이 부호화 장치 및 가변길이 부호화 방법 - Google Patents
가변길이 부호화 장치 및 가변길이 부호화 방법 Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
Abstract
본 발명에 따라 가변 길이 부호화 장치 및 가변 길이 부호화 방법이 개시된다. 이러한 가변 길이 부호화 장치는, 매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 가변길이 부호 발생부와, 상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와, 상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함한다. 이와 같은 구성에 의해, 아이들링 없이 고속으로 동작하는 가변 길이 부호화 장치를 구현할 수 있다.
Description
도 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)
- 삭제
- 가변 길이 부호화 장치에 있어서,매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 가변길이 부호 발생부와,상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와,상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함하는 것을 특징으로 하는 가변 길이 부호화 장치.
- 제2항에 있어서,상기 가변길이 부호 발생부로부터 출력된 2 개의 데이터에 대해서, 제 1 데이터와 제 2 데이터는 각각 부호값과 부호길이로 이루어지며,상기 프리팩킹부는,상기 제1 데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 가산부와,상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 시프트부와,상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 OR 연산부를 포함하고,매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력하는 것을 특징으로 하는 가변 길이 부호화 장치.
- 가변 길이 부호화 장치에 있어서,매 클럭마다 수신된 2N (N=1,2,...) 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2N 개의 데이터를 출력하는 가변길이 부호 발생부와,상기 가변길이 부호 발생부로부터 매 클럭마다 출력된 2N 개의 데이터를 수신하여 1 개의 데이터로 가공하는 프리팩킹부와,상기 프리팩킹부로부터 매 클럭마다 출력된 1 개의 데이터를 수신하여 비트스트림 팩킹하는 비트스트림 팩킹부를 포함하는 것을 특징으로 하는 가변 길이 부호화 장치.
- 제4항에 있어서,상기 프리팩킹부는,N개의 단을 포함하며,각 제 M단(M=1,,..N)은 2 N-M 개의 서브유닛을 포함하며,상기 제 M단(M=1,..N-1)의 각 서브유닛은 상기 가변길이 부호 발생부로부터 출력된 2N 개의 데이터에 대해서 두 개의 데이터를 하나의 데이터로 프리팩킹하여 제 M+1단의 서브유닛들로 전달하며, 상기 제 N-1단의 서브유닛은 두 개의 데이터를 하나의 데이터로 프리팩킹하여 상기 프리팩킹된 데이터를 출력하는 것을 특징으로 하는 가변길이 부호화장치.
- 제5항에 있어서,상기 각 서브유닛은 각각 부호값과 부호길이로 이루어진 두 개의 데이터, 제1 데이터와 제2데이터를 수신하고,상기 제1데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 가산부와,상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 시프트부와,상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 OR 연산부를 포함하고,매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력하는 것을 특징으로 하는 가변길이 부호화장치.
- 삭제
- 가변 길이 부호화 방법에 있어서,a) 매 클럭마다 수신된 2 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2 개의 데이터를 출력하는 단계와,b) 상기 매 클럭마다 출력된 2 개의 데이터를 1 개의 데이터로 가공하여 출력하는 단계와,c) 상기 가공되어 매 클럭마다 출력되는 1 개의 데이터를 수신하여 비트스트림 팩킹하는 단계를 포함하는 것을 특징으로 하는 가변 길이 부호화 방법.
- 제8항에 있어서,상기 a) 단계에서 출력된 2 개의 데이터에 대해서, 제 1 데이터와 제 2 데이터는 각각 부호값과 부호길이로 이루어지며,상기 b) 단계는,b1) 상기 제1데이터의 부호길이와 상기 제2데이터의 부호길이를 더하는 단계와,b2) 상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 단계와,b3) 상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 단계와,b4) 상기 더해진 부호길이와 상기 OR 연산된 부호값으로 이루어진 1 개의 데이터를 매 클럭마다 출력하는 단계를 포함하는 것을 특징으로 하는 가변 길이 부호화 방법.
- 가변 길이 부호화 방법에 있어서,a) 매 클럭마다 수신된 2N (N=1,2,...) 개의 입력 심볼을 가변 길이 부호 테이블로부터 참조하여 2N 개의 데이터를 출력하는 단계와,b) 상기 매 클럭마다 출력된 2N 개의 데이터를 1 개의 데이터로 가공하여 출력하는 단계와,c) 상기 가공되어 매 클럭마다 출력되는 1 개의 데이터를 수신하여 비트스트림 팩킹하는 단계를 포함하는 것을 특징으로 하는 가변 길이 부호화 방법.
- 제10항에 있어서,상기 b) 단계는,N개의 가공 단계를 포함하며,각 제 M(M=1,,..N) 가공 단계는 2 N-M 개의 프리팩킹 단계를 포함하며,상기 제 M(M=1,..N-1) 가공 단계의 각 프리팩킹 단계는 두 개의 데이터를 하나의 데이터로 프리팩킹하여 제 M+1 가공 단계의 프리팩킹 단계들로 전달하며, 상기 제 N-1 가공 단계의 프리팩킹 단계는 두 개의 데이터를 하나의 데이터로 프리팩킹하여 상기 프리팩킹된 데이터를 출력하는 것을 특징으로 하는 가변길이 부호화방법.
- 제11항에 있어서,상기 각 프리팩킹 단계는 각각 부호값과 부호길이로 이루어진 두 개의 데이터, 제1 데이터와 제2데이터를 수신하고,상기 제1데이터의 부호길이와 상기 제2 데이터의 부호길이를 더하는 단계와,상기 제1데이터의 부호값을 상기 제2데이터의 부호길이 만큼 시프트하는 단계와,상기 제1데이터의 시프트된 부호값을 상기 제2데이터의 부호값과 OR 연산하는 단계와,매 클럭마다 상기 가산부로부터 출력된 부호길이와 상기 OR 연산부로부터 출력된 부호값으로 이루어진 1개의 데이터를 출력하는 단계를 포함하는 것을 특징으로 하는 가변길이부호화 방법.
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)
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)
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)
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 |
-
2003
- 2003-12-27 KR KR1020030098231A patent/KR100975062B1/ko active IP Right Grant
-
2004
- 2004-12-20 US US11/014,859 patent/US7109896B2/en not_active Expired - Fee Related
- 2004-12-27 CN CNB2004101025657A patent/CN100352284C/zh not_active Expired - Fee Related
Patent Citations (2)
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 |