KR940010543A - 허프만 부호(Huffman code)복호회로 - Google Patents

허프만 부호(Huffman code)복호회로 Download PDF

Info

Publication number
KR940010543A
KR940010543A KR1019930021495A KR930021495A KR940010543A KR 940010543 A KR940010543 A KR 940010543A KR 1019930021495 A KR1019930021495 A KR 1019930021495A KR 930021495 A KR930021495 A KR 930021495A KR 940010543 A KR940010543 A KR 940010543A
Authority
KR
South Korea
Prior art keywords
code
bit
bits
decoding
table storage
Prior art date
Application number
KR1019930021495A
Other languages
English (en)
Other versions
KR0138971B1 (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
Priority claimed from JP4273925A external-priority patent/JP2842094B2/ja
Priority claimed from JP28802992A external-priority patent/JP2757716B2/ja
Application filed by 세끼모또 다다히로, 니뽄 덴끼 가부시끼 가이샤 filed Critical 세끼모또 다다히로
Publication of KR940010543A publication Critical patent/KR940010543A/ko
Application granted granted Critical
Publication of KR0138971B1 publication Critical patent/KR0138971B1/ko

Links

Classifications

    • 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
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • H03M7/425Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 허프만 부호 복호 회로를 비트 가변 길이 부호를 1비트 또는 n(2이상의 정수)비트마다 복호할 때의 상태 천이에 기초하여 정해진, 부호의 복호어와 부호 길이 또는 다음에 액세스하는 포인터와, 부호의 복호 상태를 나타내는 플래그를 저장하고, m비트의 액세스 어드레스에 응하여 복호어와 부호 길이 또는 다음에 액세스하는 포인터 및 상기 플래그를 출력하는 메모리를 구비한다. 또 래치 회로는 메모리로부터 출력되는 플래그가 복 종료를 나타내는 경우에는 리세스되며 플래그가 복호 계속을 나타내는 경우에는 메모리로부터 출력되는 m-1비트의 포인터를 래치한다.
선택기는 비트 가변 길이 부호의 1비트마다 혹은 n바트마다의 복호를 선택함에 따라 n-1비트를 래치 회로 혹은 비트 가변 길이 부호로부터 선택하여 메모리를 출력한다.

Description

허프만 부호(Huffman code)복호회로
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 본 발명의 제1실시예에 의한 허프만 부호 복호회로의 블럭도,
제2도 내지 제4도는 제1실시예의 메모리 설정예를 설명하는 도면.

Claims (11)

  1. 비트 가변 길이 부호를 1비트 또는 n(2이상의 정수)비트마다 복호할 때의 상태 천이에 기초하여 정해지는상기 부호의 복호어와 부호 길이 또는 다음에 액세스할 포인터와 상기 부호의 복호 상태를 나타내는 플래그를저장하고, m(>n)비트의 액세스 어드레스에 따라 상기 복호어와 부호 길이 또는 다음에 액세스한 포인터 및 상기 플래그를 출력하는 복호 데이블 저장 수단과, 상기 복호 테이블 저장 수단에서 출력되는 상기 플래그가 복호 종료를 나타내는 경우에는 리세트되며, 상기 플래그가 복호계속을 나타내는 경우에는 상기 복호 테이블 저장 수단으로부터 출력되는 m-1비트의 상기 포인터를 래치하는 래치 수단과, 상기 비트 가변 길이 부호를 1비트마다 복호하느냐 혹은 n비트마다 복호하느냐를 선택함에 따라 n-1비트를 상기 래치 수단 또는 상기 비트 가변 길이 부호로 부터 선택하여 상기 복호 테이블 저장 수단에 출력하는 선택 수단을 구비하고, 상기 복호 테이블 저장 수단에 상기 비트 가변 길이 부호의 선두 비트를 상기 어드레스의 최하위 비트로하여 입력하고, 상기 래치 수단으로부터 출력되는 m-1비트의 상위 m-n비트를 상기 어드레스의 상위 비트로 하여 입력하고 상기 선택 수단으로부터 출력되는 n-1비트를 상기 어드레스의 증위 비트로하여 입력하는 허프만 부호 복호 회로.
  2. 제1항에 있어서, 상기 선택 수단은 외부 선택 신호에 따라 상기 비트 가변 길이 부호를 1비트마다 또는 n비트마다 복호하느냐를 지정하는 선택기를 구비한 허프만 부호 복호 회로.
  3. 제1항에 있어서, 상기 래치 수단은 상기 복호 테이블 저장 수단으로 부터 출력되는 플래그가 복호 종료를 나타내는 경우에 리세트 되어 “0”을 m-1비트로 출력하는 허프만 부호 복호 회로.
  4. h(정수)비트의 데이타 열로 하여 보내지는 비트 가변 길이 부호를 n(1이상의 정수) 비트마다 복호할 때의 상태 천이를 기준으로 정해진 상기 부호의 복호어와 부호 길이 또는 다음에 액세스할 포인터와, 상기 복호어의 경우에는 유효를 상기 포인터의 경우에는 무효를 나타내는 플래그를 저장하고, m (>n)비트의 액세스 어드레스에 응하여 상기 복호어와 부호 길이 또는 다음에 액세스 할 포인터 및 상기 플래그를 출력하는 내부 복호 테이블 저장 수단과, 상기 비트 가변 길이 부호를 h비트마다 복호할 때의 상태 천이에 기초하여 정한 부호를 h비트마다 복호할 때의 상태 천이에 기초하여 정한 상기 부호의 복호어와 부호 길이 또는 다음에 액세스할 포인터를 저장하고, h비트 이하의 액세스 어드레스에 응하여 상기 복호와 부호 길이 또는 다음에 액세스할 포인터를 출력하는 외부 복호 테이블 저장 수단과, 상기 복호 테이블 저장 수단에서 출력되는 상기 플래그가 유효를 나타내는 겅우에는 리세트되며, 상기 플래그가 무효를 나타내는 경우에는 상기 복호 테이블 저장 수단으로부터 출력되는 m-n비트의 상기 포인터를 래치하는 래치 수단과, 상기 비트 가변 길이 부호를 복호하는 단위인 상기 n비트의 비트수에 의하여 m-n비트를 상기 래치 수단 혹은 상기 비트 가변 길이 부호에서 선택하여 상기 복호 테이블 저장 수단에 선택적으로 출력하는 제1선택 수단과, 상기 내부 복호 테이블 저장 수단 혹은 상기 외부 복호 테이블 저장 수단으로부터 출력된 복호어중 유효한 복호어를 선택적으로 출력하는 제2선택 수단과, 상기 내부 복호 테이블 저장 수단으로부터 출력되는 플래그가 유효를 나타내는 경우에는 상기 제2선택 수단에 대하여 상기 내부 복호 테이블 저장 수단으로부터 출력되는 복호어를 선택하는 신호를 생성하며, 상기 플래그가 무효를 나타내는 경우에는 상기 제2선택 수단에 대하여 상기 외부 복호 테 이블 저장 수단으로부터 출력되는 복호어를 선택하는 신호를 생성하는 선택신호 발생 수단을 구비하고, 상기 내부 복호 테이블 저장 수단에 대하여 상기 비트 길이 부호의 선두 n비트를 상기 어드레스의 하위 비트로 하여 입력하고, 상기 래치 수단으로부터 출력되는m-n비트를 상기 어드레스의 상위 비트로 하여 입력하고, 상기 외부 복호 테이블 저장수단에 대하여 상기 h비트부호를 어드레스로 입력하는 허프만 부호 복호 회로.
  5. 제4항에 있어서, 상기 내부 복호 테이블 저장수단 혹은 상기 외부 복호 테이블 저장수단으로부터 출력되는 부호 길이중, 유효한 부호 길이를 선택적으로 출력하는 제3선택 수단을 더 구비하고, 상기 선택 신호 발생 수단은 상기 내부 복호 테이블 저장 수단에서 출력되는 플래그가 유효를 나타내는 경우에는 상기 제3선택 수단에 대하여 상기 내부 복호 테이블 저장 수단에서 출력되는 부호 길이를 선택하는 신호를 생성하고 상기 플래그가 무효를 나타내는 경우에는 상기 제3선택 수단에 대하여 상기 외부 복호 테이블 저장 수단에서 출력되는 부호 길이를 선택하는 신호를 선택하는 신호를 생성하는 허프만 부호 복호 회로.
  6. 2(m+1)(rn은 정수) 비트 이상의 데이타 열로 형성되는 저프만 부호의 선두 비트로부터 n(정수)번째 비트까지의 n비트가 논리 “1”이며, n+1번째 비트가 논리 “0”인 상기 데이타 열의 패턴을 검출하는 수단과, 상기 패턴을 검출할 때에, 2m×(n+1)에 상기 허프만 부호의 n+2번째 비트에서 n+2+m번째 비트까지의 m비트의 데이타를 가산하여 다수의 허프만 부호에 대응하는 다수의 어드레스를 생성하는 어드레스 산출수단을 포함하는 어드레스 발생 수단과, 상기 허프만 부호에 대응하는 복호어 및 부호길이를 저장하고 상기 어드레스에 대응하는 복호어 및 부호길이를 출력하는 복호 테이블 저장 수단을 구비하는 허프만 부호 복호회로.
  7. 제6항에 있어서, 상기 패턴 검출 수단은 상기 허프만 부호의 최대 부호길이가 p(m)비트인 경우, 또한, 상기 데이타 열의 패턴이 선두 비트로부틴 p-m-1번째 비트까지의 모든 비트가 논리 “1”인 경우에 2m×(P-m-1)에 상기 허프만 부호의 p-1번째 비트에서 m+1번째 비트까지의 데이타 열을 가산하여 어드레스를 생성하는 허프만 부호 복호 회로.
  8. 2(m+1)(m은 정수)비트 이상의 데이타 열로 되는 허프만 부호의 선두 비트로부터 n(정수)번째 비트까지의 n비트가 논리 “1”이며, n+1번째 비트는 논리 “0”인 상기 데이타 열의 패턴을 검출하는 수단과, 상기 패턴을 검출한 때에 2m×(n+1)에 상기 히프만 부호의 n+2번째 비트로부터 n+2+m번째 비트까지의 m비트 데이타를 가산하여 다수의 허프만 부호에 대응하는 다수의 어드레스를 발생하는 어드레스 발생 수단과, 소정의 부호 길이 분포에 따라 상기 복호이에 대응하는 부호 길이를 출력하는 부호 길이 출력 수단과, 상기 허프만 부호에 대응하는 복호어를 저장하여 상기 어드레스에 의해 대응하는 복호어를 출력하는 복호 테이블 저장 수단을 구비하는 허프만 부호 복호 회로.
  9. 제8항에 있어서, 상기 패턴 검출 수단은 상기 허프만 부호의 최대 부호길이가 p(m)비트인 경우, 상기 데이타 열의 패턴이 선두 비트로부터 p-m-1번째 비트까지의 전체 비트가 논리 “1”인 경우에 까지의 데이타 열의 패턴을 검출할 때에 2m×(p-m-1)에 상기 허프만 부호의 p-1번째 비트에서 m+1번째 비트까지의 전체 비트가 논리 “1”인 상기 데이타 열을 가산하여 어드레스를 생성하는 허프만 부호 복호 회로.
  10. 제8항에 있어서, 상기 부호 길이 출력 수단은 상기 허프만 부호의 선두로부터 여러 비트의 상태에 기준하여 상기 복호어에 대응하는 부호 길이를 출력하는 허프만 부호 복호 회로.
  11. 제8항에 있어서, 상기 허프만 부호의 데이타 열을 일시적으로 저장하는 부호 버퍼 수단과, 상기 부호 길이 출력 수단에서 출력되는 부호 길이에 기준하여 상기 부호 버퍼 수단에 축적되는 다음 하프만 부호 데이타 열의 선도를 지정하는 지정 수단을 더 구비하는 허프만 부호 복호 회로.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019930021495A 1992-10-13 1993-10-13 허프만 부호 복호회로 KR0138971B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP4273925A JP2842094B2 (ja) 1992-10-13 1992-10-13 ハフマン復号回路
JP92-273925 1992-10-13
JP92-288029 1992-10-27
JP28802992A JP2757716B2 (ja) 1992-10-27 1992-10-27 ハフマン符号復号回路

Publications (2)

Publication Number Publication Date
KR940010543A true KR940010543A (ko) 1994-05-26
KR0138971B1 KR0138971B1 (ko) 1998-06-15

Family

ID=26550818

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930021495A KR0138971B1 (ko) 1992-10-13 1993-10-13 허프만 부호 복호회로

Country Status (4)

Country Link
US (1) US5467088A (ko)
EP (2) EP0593046B1 (ko)
KR (1) KR0138971B1 (ko)
DE (2) DE69329092T2 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336180B1 (en) 1997-04-30 2002-01-01 Canon Kabushiki Kaisha Method, apparatus and system for managing virtual memory with virtual-physical mapping
JP2746109B2 (ja) * 1994-03-09 1998-04-28 日本電気株式会社 ハフマン符号復号化回路
FR2722041B1 (fr) * 1994-06-30 1998-01-02 Samsung Electronics Co Ltd Decodeur de huffman
KR0152035B1 (ko) * 1994-09-26 1998-10-15 김광호 가변장복호화방법 및 그 장치
KR0152038B1 (ko) * 1994-10-17 1998-10-15 김광호 상대 주소를 이용한 가변장 복호화 장치
JP2687926B2 (ja) * 1995-05-24 1997-12-08 日本電気株式会社 符号復号化装置
KR100214593B1 (ko) * 1996-03-15 1999-08-02 구자홍 캐스케이드 구조를 이용한 런랭스 코드의 코드워드 검출 방법 및 장치
AUPO648397A0 (en) 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Improvements in multiprocessor architecture operation
US6311258B1 (en) 1997-04-03 2001-10-30 Canon Kabushiki Kaisha Data buffer apparatus and method for storing graphical data using data encoders and decoders
AUPO647997A0 (en) 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Memory controller architecture
US6259456B1 (en) 1997-04-30 2001-07-10 Canon Kabushiki Kaisha Data normalization techniques
US6707463B1 (en) 1997-04-30 2004-03-16 Canon Kabushiki Kaisha Data normalization technique
US6289138B1 (en) 1997-04-30 2001-09-11 Canon Kabushiki Kaisha General image processor
US6272257B1 (en) 1997-04-30 2001-08-07 Canon Kabushiki Kaisha Decoder of variable length codes
EP1069691A1 (en) 1999-06-15 2001-01-17 STMicroelectronics S.r.l. Decoding method for a Huffman code
EP1244581B1 (de) * 2000-01-07 2003-07-16 Valeo Wischersysteme GmbH Wischvorrichtung zum reinigen von scheiben an fahrzeugen, insbesondere kraftfahrzeugen
US6636167B1 (en) 2000-10-31 2003-10-21 Intel Corporation Method of generating Huffman code length information
US6563439B1 (en) * 2000-10-31 2003-05-13 Intel Corporation Method of performing Huffman decoding
US6411226B1 (en) * 2001-01-16 2002-06-25 Motorola, Inc. Huffman decoder with reduced memory size
US6778107B2 (en) * 2001-08-30 2004-08-17 Intel Corporation Method and apparatus for huffman decoding technique
CN109831544B (zh) * 2019-01-30 2021-10-08 重庆农村商业银行股份有限公司 一种应用于电子邮箱地址的编码存储方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3701111A (en) * 1971-02-08 1972-10-24 Ibm Method of and apparatus for decoding variable-length codes having length-indicating prefixes
US3717851A (en) * 1971-03-03 1973-02-20 Ibm Processing of compacted data
US4475174A (en) * 1981-09-08 1984-10-02 Nippon Telegraph & Telephone Public Corporation Decoding apparatus for codes represented by code tree
US4899149A (en) * 1986-02-28 1990-02-06 Gary Kahan Method of and apparatus for decoding Huffman or variable-length coees
US4821290A (en) * 1988-02-09 1989-04-11 General Electric Company Decoder for digital signal codes
JPH0479421A (ja) * 1990-07-18 1992-03-12 Toshiba Corp 可変長符号化装置および可変長復号化装置
US5208593A (en) * 1991-07-30 1993-05-04 Lsi Logic Corporation Method and structure for decoding Huffman codes using leading ones detection

Also Published As

Publication number Publication date
EP0920136A3 (en) 1999-06-09
KR0138971B1 (ko) 1998-06-15
EP0593046B1 (en) 2000-07-26
EP0920136A2 (en) 1999-06-02
DE69332253T2 (de) 2003-04-17
EP0593046A2 (en) 1994-04-20
DE69329092D1 (de) 2000-08-31
DE69332253D1 (de) 2002-10-02
US5467088A (en) 1995-11-14
EP0920136B1 (en) 2002-08-28
DE69329092T2 (de) 2001-03-22
EP0593046A3 (en) 1995-10-18

Similar Documents

Publication Publication Date Title
KR940010543A (ko) 허프만 부호(Huffman code)복호회로
US4626829A (en) Data compression using run length encoding and statistical encoding
RU2210186C2 (ru) Способ перемежения/обращенного перемежения для системы связи и устройство для его осуществления
KR930020997A (ko) 디지탈 통신시스템용 가변길이 코드워드 디코드
US4044347A (en) Variable-length to fixed-length conversion of minimum-redundancy codes
US5113516A (en) Data repacker having controlled feedback shifters and registers for changing data format
US5239298A (en) Data compression
KR960012741A (ko) 데이타를 부호화 및 복호화하는 장치 및 방법
US5023610A (en) Data compression method using textual substitution
KR940006020A (ko) 가변장-코드로 엔코드된 신호의 디코딩 장치
US5216423A (en) Method and apparatus for multiple bit encoding and decoding of data through use of tree-based codes
US4647908A (en) Codeword decoding
KR900005469A (ko) 시리얼 입출력 반도체 메모리
KR960016539A (ko) 상대구조를 이용한 가변장 복호화장치
KR960036749A (ko) 가변길이 복호화 장치
KR100622580B1 (ko) 데이터 처리 시스템 내부의 비트맵 폰트 데이터 저장
US5614900A (en) Variable word length code decoding apparatus having plural decoding tables for decoding long words
KR960002010A (ko) 순차 액세스 동작을 수행하는 메모리 회로
JP3316160B2 (ja) ディジタル符号化記号列の記憶方法および記憶装置
KR20080075773A (ko) 고정 크기 코드워드 테이블을 이용한 gif 압축 해제를위한 방법 및 장치
CN113630123A (zh) 一种数据压缩系统及方法
JP3009007B2 (ja) 2元符号復号回路
KR960036748A (ko) 가변길이 복호화 장치
JPS562063A (en) Information retrieval system
JP2757716B2 (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: 20130201

Year of fee payment: 16

EXPY Expiration of term