JP2715871B2 - 可変長符号化方法 - Google Patents

可変長符号化方法

Info

Publication number
JP2715871B2
JP2715871B2 JP32047593A JP32047593A JP2715871B2 JP 2715871 B2 JP2715871 B2 JP 2715871B2 JP 32047593 A JP32047593 A JP 32047593A JP 32047593 A JP32047593 A JP 32047593A JP 2715871 B2 JP2715871 B2 JP 2715871B2
Authority
JP
Japan
Prior art keywords
word
storage memory
variable
bit pattern
counter
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP32047593A
Other languages
English (en)
Other versions
JPH07177040A (ja
Inventor
信行 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP32047593A priority Critical patent/JP2715871B2/ja
Priority to US08/358,514 priority patent/US5572334A/en
Publication of JPH07177040A publication Critical patent/JPH07177040A/ja
Application granted granted Critical
Publication of JP2715871B2 publication Critical patent/JP2715871B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ圧縮のための可
変長符号化方法に関し、可変長符号化を高速に行う可変
長符号化方法に関する。
【0002】
【従来の技術】従来、この種の可変長符号化技術では、
冗長度が抑圧された画像データ等(以下、単に「画像デ
ータ」と称する)に対応した可変長符号を読み込み、図
4で示す圧縮データ格納メモリ26内の1つ前の可変長
符号が書き込まれているアドレスの有効データのビット
数(図5の場合は、3)に応じてその可変長符号を1ビ
ットずつシフトさせ、そのシフトされた可変長符号と残
りデータとの論理和をとることにより、圧縮データを作
成する。
【0003】図5は、上記の考えを基にした従来の可変
長符号化の流れである。
【0004】既存の圧縮データ格納メモリの内容を図4
とし、可変長符号を10ビットとし、図5の流れに沿っ
て以下に説明する。
【0005】初めに、画像データが格納されているファ
イル装置から画像データを読み込み(S11)、読み込
んだデータより可変長符号の格納されているメモリのア
ドレスを算出し(S12)、可変長符号[XXXXXX
XX XX000000]を読み込む(S13)。ここ
で、Xは2進数の有効データで、0または1を表すもの
であり、0は無効データを示す。
【0006】そして、この可変長符号に予め付加されて
いる、可変長符号のビット数を示す値(この例では1
0)を受け取る(S14)。次に図4で示される残りデ
ータ[AAA00000]を読み込み(S15)、バイ
ト長8ビットと残りデータ3ビットの差分をとり、シフ
ト回数5回を算出する(S16)。ここで、Aは2進数
の有効データで、0または1を表すものである。次に、
現データ1バイト目、2バイト目を左にそれぞれ5回ず
つシフトさせ(S17)、[000XXXXXXXXX
X000]というデータを得る。このデータの1バイト
目(000XXXXX)と残りデータ(AAA0000
0)との論理和をとり(S18)、[AAAXXXXX
XXXXX000]を得る。次に、このデータを1バ
イトずつ、圧縮データ格納メモリに格納する(S1
9)。
【0007】残りデータ3ビットと可変長符号10ビッ
トとの和をとり、バイト長8で割った商が1になるの
で、圧縮データ格納メモリのアドレスを示す変数に1を
加え、アドレスが1番地更新されたことを示す(S1
A)。以上のことをファイルデータが終了するまで行い
(S1B)終了する。
【0008】上述した方法の応用技術が、特開昭59−
57576号公報に記載されている。これは、上述の一
般的な技術に若干の回路を付加し、高速処理の実現を目
的としている。
【0009】可変長符号の符号ビット長を示すカウンタ
を設け、そのカウンタによりシフトを制御するものであ
り、可変長符号の上位ビットより2ビットずつシフトさ
せメモリに転送し、最終ビットは、カウンタの値が偶数
であるか奇数であるか判断し、偶数の時は2ビット、奇
数の時は1ビットのシフトを行いメモリに転送する。
【0010】
【発明が解決しようとする課題】この従来の可変長符号
化装置では、可変長符号をシフトさせる際、シフト回数
が多い場合、多くの時間を要する。特に可変長符号の符
号長が2バイト、3バイトに渡っている場合などは、2
倍、3倍の処理が必要となるため、更に時間がかかって
しまう。また、圧縮データ格納メモリ26への転送がビ
ット単位であるため、メモリ内の最終データのアドレス
管理も必要となる。そのため、可変長符号化の処理に多
くの時間を要してしまうという問題点がある。
【0011】特開昭59−57576号公報に記載され
ている技術では、シフトの回数は減少するが符号ビット
長の長い可変長符号などでは、多くのシフト処理が必要
となり、また、可変長符号の奇数偶数判断も必要なの
で、処理時間の大幅な短縮にはならない。
【0012】
【課題を解決するための手段】上述した問題点を解決す
るため、本発明による可変長符号化装置は、図3に示す
ように、可変長信号格納メモリに、同一の可変長符号を
予めシフトさせたビットパターンに、圧縮データ格納メ
モリへの書き込みバイト数を示す出力カウンタ(C)
と、圧縮データ格納メモリに何ビットの半端なデータが
格納されているかを示す残りカウンタ(R)を付加し、
固定長のデータとして格納しておくことにより、シフト
動作を不要として可変長符号化を高速に行えるようにし
ている。
【0013】そのため、本発明では、可変長符号をバッ
ファに転送する際、符号ビット長の長さに関係なく、1
回の論理和をとるだけで符号化が可能となり、処理時間
を高速にすることが可能となる。
【0014】
【実施例】次に本発明について図面を参照して説明す
る。
【0015】図1は、本発明の一実施例を示すブロック
図である。CPU1は、制御用RAM3を作業領域と
し、ROM2に格納されたプログラムを実行して動作す
る。ファイル装置4には圧縮する画像データが格納され
ており、CPU1は、ファイル装置4をアクセスして画
像データを読み込んで可変長符号化を行い、符号化され
たデータを、圧縮データ格納メモリ26に書き込む。
【0016】図3は、可変長符号格納メモリに格納され
ているデータの構成図である。この図の例では、残りカ
ウンタ(R)を4ビット、出力カウンタ(C)を4ビッ
ト、可変長符号の符号長を10ビットの場合を例示して
いる。
【0017】可変長符号を示す[XXXXXXXXX
X]は、同一値の画像データに与えられる可変長符号の
ビットパターンであり、上から順に0〜7ビットシフト
させたデータが順に格納されている。ここでは、Xは2
進数の有効データで、0または1を表すものである。残
りカウンタ(R)は、バイト単位で区切った場合、最終
バイト目にあるデータ[X]の個数を示す。出力カウン
タ(C)は、図4で示した残りデータとシフトさせた可
変長符号との論理和をとったときに、何バイトの飽和し
た(すなわち無効データを含まない)データができるか
を示すもので、何バイト目までのLSBに有効データが
入っているかを示す。
【0018】図3と図4のデータを例にとって、図2の
フローチャートに沿って説明する。
【0019】まず、ファイル装置24から、画像データ
を読み込む(S31)。図4の圧縮データ格納メモリの
内容より、残りカウンタの変数は、3という値になって
いる(S32)。画像データと残りカウンタの変数は、
3という値になっている(S32)。画像データと残り
カウンタの値より、可変長符号格納メモリ27のアドレ
スを算出し(S33)、算出されたアドレスから、図3
の[000XXXXXXXXXX000 000000
00 00010101]というデータを読み込む(S
34)。そして、出力カウンタの1と残りカウンタの5
という値をCPU内のレジスタに待避させ、現データに
対する可変長符号(000XXXXXXXXXX000
00000000)を得る(S35)。次に図4の残
りデータ(AAA00000)を圧縮データ格納メモリ
26より読み込む(S36)。ここで、Aは2進数の有
効データで、0または1を表すものである。そして、現
データの1バイト目(000XXXXX)と論理和をと
ると(S37)、[AAAXXXXX XXXXX00
0 00000000]というデータが作成され、これ
を圧縮データ格納メモリ26に格納する(S38)。
【0020】次に、圧縮データ格納メモリ26の書き込
みアドレスを示す変数に出力カウンタの値(1)を加え
ることにより(S39)、1バイト分のデータが更新さ
れたということが解る。次の動作時(ループ時)には、
現データの2バイト目の[XXXXX000]というデ
ータが残りデータとして認識され、残りカウンタの変数
には、5という値が入っているので、0〜4ビット目ま
での5ビットが有効なデータであるということが解る。
【0021】
【発明の効果】以上説明したように、可変長符号の符号
長によって、多大の処理時間を要していた従来の装置に
比べ、本発明の可変長符号化装置は、可変長符号の符号
長に関係なく、論理和を1回とるだけの処理により圧縮
データを生成することができる。また、従来、ビット単
位で行っていた符号化をバイト単位で行うため、圧縮デ
ータ格納メモリ26内のアドレス管理が容易に行え、画
像データを高速に符号化することができるという効果が
ある。
【図面の簡単な説明】
【図1】本発明による可変長符号化装置の一実施例を示
すブロック図である。
【図2】CPU1の可変長符号化処理の流れ図である。
【図3】本発明における可変長符号格納メモリの構成図
である。
【図4】圧縮データ格納メモリの内容を説明するための
図である。
【図5】従来の可変長符号処理の態様を説明するための
流れ図である。
【符号の説明】
21 装置全体を制御するCPU 22 プログラムを格納する制御用ROM 23 プログラムの作業領域である制御用RAM 24 データをファイルに入出力するためのファイル
装置 25 原画像データを可変長符号化する符号化処理部 26 可変長符号が格納されている可変長符号格納R
OM

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】入力デジタル信号を可変長符号化し、圧縮
    データ格納メモリに格納する可変長符号化方法であり、 前記入力デジタル信号が取り得るすべての値の各々につ
    き、種々のシフトを与えた可変長符号を示すビットパタ
    ーンをワード構成で格納するとともに、このビットパタ
    ーンの末尾が格納されたワードに含まれる当該可変長符
    号の有効ビット数を示す残りビット数(R)と、このビ
    ットパターンが格納された最初のワードから前記残りビ
    ット数の前記ビットパターンが格納されたワードの直前
    のワード前までのワード数を示す出力データ数(C)と
    を前もって可変長符号格納メモリに格納し、下記ステップ(イ)、(ロ)、(ハ)、(ニ)の実行前
    に、残りカウンタの値及び前記圧縮データメモリをクリ
    アするとともに、前記圧縮データ格納メモリのワードア
    ドレスを示すアドレスカウンタを初期値に設定し、 (イ)前記圧縮データ格納メモリの前記アドレスカウン
    タが示す最新のワード中に含まれる可変長符号の有効ビ
    ット数を格納している前記残りカウンタ の値を読みだす
    ステップと、(ロ) この残りカウンタの値及び前記入力デジタル信号
    の値に対応する前記R、前記C、及び(C+1)ワード
    の前記ビットパターンを前記可変長符号格納メモリより
    読みだすステップと、(ハ)前記圧縮データ符号格納メモリの前記アドレスカ
    ウンタの示すワードを読みだして、前記ステップ(ロ)
    で読み出された(C+1)ワードのビットパターンの最
    初のワードとの論理和演算を行い、論理和演算結果を前
    記圧縮データ格納メモリに書き込み、次に、前記Cがゼ
    ロ以下でない場合にのみ、前記ステップ(ロ)で読み出
    されたビットパターンの2ワード目から最終ワードまで
    のビットパターンを前記論理和演算結果につづくワード
    アドレスの 前記圧縮データ格納メモリにに書き込むステ
    ップと、 (ニ)前記Rを前記残りカウンタに書き込むとともに、
    前記Cだけ前記圧縮データ格納メモリのアドレスカウン
    タの値を更新するステップとを含み、 これら(イ)から(ニ)のステップを繰り返すことによ
    り、前記入力デジタル信号を可変長符号化する可変長符
    号化方法。
JP32047593A 1993-12-20 1993-12-20 可変長符号化方法 Expired - Fee Related JP2715871B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP32047593A JP2715871B2 (ja) 1993-12-20 1993-12-20 可変長符号化方法
US08/358,514 US5572334A (en) 1993-12-20 1994-12-19 Variable-length coding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32047593A JP2715871B2 (ja) 1993-12-20 1993-12-20 可変長符号化方法

Publications (2)

Publication Number Publication Date
JPH07177040A JPH07177040A (ja) 1995-07-14
JP2715871B2 true JP2715871B2 (ja) 1998-02-18

Family

ID=18121864

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32047593A Expired - Fee Related JP2715871B2 (ja) 1993-12-20 1993-12-20 可変長符号化方法

Country Status (2)

Country Link
US (1) US5572334A (ja)
JP (1) JP2715871B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970068627A (ko) * 1996-03-22 1997-10-13 구자홍 최적화된 가변길이 테이블장치 및 최적 길이값 산출방법
US5793984A (en) * 1996-04-01 1998-08-11 8×8, Inc. Method of computer representation of data
US6621428B1 (en) * 2000-05-04 2003-09-16 Hewlett-Packard Development Company, L.P. Entropy codec for fast data compression and decompression
US6781589B2 (en) 2001-09-06 2004-08-24 Intel Corporation Apparatus and method for extracting and loading data to/from a buffer
US7818356B2 (en) 2001-10-29 2010-10-19 Intel Corporation Bitstream buffer manipulation with a SIMD merge instruction

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4495639A (en) * 1982-03-08 1985-01-22 Halliburton Company Electronic data compressor
JPS5957576A (ja) * 1982-08-20 1984-04-03 Fujitsu Ltd 画像デ−タ圧縮回路
GB2172127B (en) * 1985-03-06 1988-10-12 Ferranti Plc Data compression system
JPH0799812B2 (ja) * 1990-03-26 1995-10-25 株式会社グラフイックス・コミュニケーション・テクノロジーズ 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JP2922571B2 (ja) * 1990-04-05 1999-07-26 キヤノン株式会社 データ変換回路
JPH0477120A (ja) * 1990-07-17 1992-03-11 Matsushita Electric Ind Co Ltd 可変長符号化装置
US5363098A (en) * 1993-10-25 1994-11-08 Digital Equipment Corporation Byte aligned data compression

Also Published As

Publication number Publication date
US5572334A (en) 1996-11-05
JPH07177040A (ja) 1995-07-14

Similar Documents

Publication Publication Date Title
JP2915568B2 (ja) テープドライブシステムのための適応データ圧縮装置
US4467317A (en) High-speed arithmetic compression coding using concurrent value updating
EP0471518B1 (en) Data compression method and apparatus
JPS6148298B2 (ja)
US6300886B1 (en) Four-to-six code table, modulation using same but no merging bit, their application to optical disc recording or playing systems
JPH0799812B2 (ja) 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JP2746109B2 (ja) ハフマン符号復号化回路
JP2715871B2 (ja) 可変長符号化方法
US5555323A (en) System for bi-level symbol coding/decoding with saved storage and method for same
US5309156A (en) Variable-length code decoding device
US6489903B2 (en) Data encoding method, data encoding apparatus, data decoding method, and data decoding apparatus
EP0647034B1 (en) A variable word length code decoding method, and a decoder for performing the same
US6112208A (en) Data compressing method and apparatus to generate bit maps in accordance with extracted data symbols
JPH06121172A (ja) 画像符号化装置
EP0499225B1 (en) Variable-length code decoding device
JP3247052B2 (ja) 画像データ変換処理方法及び装置
JP3138342B2 (ja) 可変長符号の復号装置
JP3221252B2 (ja) ハフマン復号器
JPH07273672A (ja) 符号化装置、復号化装置及び制御装置
JPH04196726A (ja) 可変長符号復号装置
JP3108243B2 (ja) 符号化及び復号化装置
JPS60194875A (ja) モデフアイド・ハフマン符号の復号化方式
JP3482820B2 (ja) データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置
JPS6051077A (ja) モデイフアイド・ハフマン符号の復号化方式
JPH05235781A (ja) 符号データの復号化メモリ制御方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19971007

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071107

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081107

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081107

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091107

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091107

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101107

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 14

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 14

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 14

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 15

LAPS Cancellation because of no payment of annual fees