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
Links
Classifications
-
- 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
- H03M7/42—Conversion 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
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- 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/90—Methods 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/91—Entropy 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
変長符号化方法に関し、可変長符号化を高速に行う可変
長符号化方法に関する。
冗長度が抑圧された画像データ等(以下、単に「画像デ
ータ」と称する)に対応した可変長符号を読み込み、図
4で示す圧縮データ格納メモリ26内の1つ前の可変長
符号が書き込まれているアドレスの有効データのビット
数(図5の場合は、3)に応じてその可変長符号を1ビ
ットずつシフトさせ、そのシフトされた可変長符号と残
りデータとの論理和をとることにより、圧縮データを作
成する。
長符号化の流れである。
とし、可変長符号を10ビットとし、図5の流れに沿っ
て以下に説明する。
イル装置から画像データを読み込み(S11)、読み込
んだデータより可変長符号の格納されているメモリのア
ドレスを算出し(S12)、可変長符号[XXXXXX
XX XX000000]を読み込む(S13)。ここ
で、Xは2進数の有効データで、0または1を表すもの
であり、0は無効データを示す。
いる、可変長符号のビット数を示す値(この例では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)。
トとの和をとり、バイト長8で割った商が1になるの
で、圧縮データ格納メモリのアドレスを示す変数に1を
加え、アドレスが1番地更新されたことを示す(S1
A)。以上のことをファイルデータが終了するまで行い
(S1B)終了する。
57576号公報に記載されている。これは、上述の一
般的な技術に若干の回路を付加し、高速処理の実現を目
的としている。
を設け、そのカウンタによりシフトを制御するものであ
り、可変長符号の上位ビットより2ビットずつシフトさ
せメモリに転送し、最終ビットは、カウンタの値が偶数
であるか奇数であるか判断し、偶数の時は2ビット、奇
数の時は1ビットのシフトを行いメモリに転送する。
化装置では、可変長符号をシフトさせる際、シフト回数
が多い場合、多くの時間を要する。特に可変長符号の符
号長が2バイト、3バイトに渡っている場合などは、2
倍、3倍の処理が必要となるため、更に時間がかかって
しまう。また、圧縮データ格納メモリ26への転送がビ
ット単位であるため、メモリ内の最終データのアドレス
管理も必要となる。そのため、可変長符号化の処理に多
くの時間を要してしまうという問題点がある。
ている技術では、シフトの回数は減少するが符号ビット
長の長い可変長符号などでは、多くのシフト処理が必要
となり、また、可変長符号の奇数偶数判断も必要なの
で、処理時間の大幅な短縮にはならない。
るため、本発明による可変長符号化装置は、図3に示す
ように、可変長信号格納メモリに、同一の可変長符号を
予めシフトさせたビットパターンに、圧縮データ格納メ
モリへの書き込みバイト数を示す出力カウンタ(C)
と、圧縮データ格納メモリに何ビットの半端なデータが
格納されているかを示す残りカウンタ(R)を付加し、
固定長のデータとして格納しておくことにより、シフト
動作を不要として可変長符号化を高速に行えるようにし
ている。
ファに転送する際、符号ビット長の長さに関係なく、1
回の論理和をとるだけで符号化が可能となり、処理時間
を高速にすることが可能となる。
る。
図である。CPU1は、制御用RAM3を作業領域と
し、ROM2に格納されたプログラムを実行して動作す
る。ファイル装置4には圧縮する画像データが格納され
ており、CPU1は、ファイル装置4をアクセスして画
像データを読み込んで可変長符号化を行い、符号化され
たデータを、圧縮データ格納メモリ26に書き込む。
ているデータの構成図である。この図の例では、残りカ
ウンタ(R)を4ビット、出力カウンタ(C)を4ビッ
ト、可変長符号の符号長を10ビットの場合を例示して
いる。
X]は、同一値の画像データに与えられる可変長符号の
ビットパターンであり、上から順に0〜7ビットシフト
させたデータが順に格納されている。ここでは、Xは2
進数の有効データで、0または1を表すものである。残
りカウンタ(R)は、バイト単位で区切った場合、最終
バイト目にあるデータ[X]の個数を示す。出力カウン
タ(C)は、図4で示した残りデータとシフトさせた可
変長符号との論理和をとったときに、何バイトの飽和し
た(すなわち無効データを含まない)データができるか
を示すもので、何バイト目までのLSBに有効データが
入っているかを示す。
フローチャートに沿って説明する。
を読み込む(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)。
みアドレスを示す変数に出力カウンタの値(1)を加え
ることにより(S39)、1バイト分のデータが更新さ
れたということが解る。次の動作時(ループ時)には、
現データの2バイト目の[XXXXX000]というデ
ータが残りデータとして認識され、残りカウンタの変数
には、5という値が入っているので、0〜4ビット目ま
での5ビットが有効なデータであるということが解る。
長によって、多大の処理時間を要していた従来の装置に
比べ、本発明の可変長符号化装置は、可変長符号の符号
長に関係なく、論理和を1回とるだけの処理により圧縮
データを生成することができる。また、従来、ビット単
位で行っていた符号化をバイト単位で行うため、圧縮デ
ータ格納メモリ26内のアドレス管理が容易に行え、画
像データを高速に符号化することができるという効果が
ある。
すブロック図である。
である。
図である。
流れ図である。
装置 25 原画像データを可変長符号化する符号化処理部 26 可変長符号が格納されている可変長符号格納R
OM
Claims (1)
- 【請求項1】入力デジタル信号を可変長符号化し、圧縮
データ格納メモリに格納する可変長符号化方法であり、 前記入力デジタル信号が取り得るすべての値の各々につ
き、種々のシフトを与えた可変長符号を示すビットパタ
ーンをワード構成で格納するとともに、このビットパタ
ーンの末尾が格納されたワードに含まれる当該可変長符
号の有効ビット数を示す残りビット数(R)と、このビ
ットパターンが格納された最初のワードから前記残りビ
ット数の前記ビットパターンが格納されたワードの直前
のワード前までのワード数を示す出力データ数(C)と
を前もって可変長符号格納メモリに格納し、下記ステップ(イ)、(ロ)、(ハ)、(ニ)の実行前
に、残りカウンタの値及び前記圧縮データメモリをクリ
アするとともに、前記圧縮データ格納メモリのワードア
ドレスを示すアドレスカウンタを初期値に設定し、 (イ)前記圧縮データ格納メモリの前記アドレスカウン
タが示す最新のワード中に含まれる可変長符号の有効ビ
ット数を格納している前記残りカウンタ の値を読みだす
ステップと、(ロ) この残りカウンタの値及び前記入力デジタル信号
の値に対応する前記R、前記C、及び(C+1)ワード
の前記ビットパターンを前記可変長符号格納メモリより
読みだすステップと、(ハ)前記圧縮データ符号格納メモリの前記アドレスカ
ウンタの示すワードを読みだして、前記ステップ(ロ)
で読み出された(C+1)ワードのビットパターンの最
初のワードとの論理和演算を行い、論理和演算結果を前
記圧縮データ格納メモリに書き込み、次に、前記Cがゼ
ロ以下でない場合にのみ、前記ステップ(ロ)で読み出
されたビットパターンの2ワード目から最終ワードまで
のビットパターンを前記論理和演算結果につづくワード
アドレスの 前記圧縮データ格納メモリにに書き込むステ
ップと、 (ニ)前記Rを前記残りカウンタに書き込むとともに、
前記Cだけ前記圧縮データ格納メモリのアドレスカウン
タの値を更新するステップとを含み、 これら(イ)から(ニ)のステップを繰り返すことによ
り、前記入力デジタル信号を可変長符号化する可変長符
号化方法。
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)
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)
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 |
-
1993
- 1993-12-20 JP JP32047593A patent/JP2715871B2/ja not_active Expired - Fee Related
-
1994
- 1994-12-19 US US08/358,514 patent/US5572334A/en not_active Expired - Lifetime
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 | |
US5032838A (en) | Variable length code parallel decoding apparatus and method | |
EP0471518B1 (en) | Data compression method and apparatus | |
US6300886B1 (en) | Four-to-six code table, modulation using same but no merging bit, their application to optical disc recording or playing systems | |
JPS6148298B2 (ja) | ||
JPH0799812B2 (ja) | 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置 | |
JPH0888568A (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 | |
KR100339772B1 (ko) | 데이터화일들의압축및압축해제방법 | |
US5614900A (en) | Variable word length code decoding apparatus having plural decoding tables for decoding long words | |
US6112208A (en) | Data compressing method and apparatus to generate bit maps in accordance with extracted data symbols | |
US6081213A (en) | Method and apparatus for arithmetic coding, method and apparatus for arithmetic decoding, and storage medium | |
US5764170A (en) | Code conversion method | |
EP0499225B1 (en) | Variable-length code decoding device | |
JP3247052B2 (ja) | 画像データ変換処理方法及び装置 | |
JP3138342B2 (ja) | 可変長符号の復号装置 | |
JPH07273672A (ja) | 符号化装置、復号化装置及び制御装置 | |
JPH04196726A (ja) | 可変長符号復号装置 | |
JPS60194875A (ja) | モデフアイド・ハフマン符号の復号化方式 | |
JP3482820B2 (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 |