JPH10271016A - 符号/復号化器 - Google Patents
符号/復号化器Info
- Publication number
- JPH10271016A JPH10271016A JP9067808A JP6780897A JPH10271016A JP H10271016 A JPH10271016 A JP H10271016A JP 9067808 A JP9067808 A JP 9067808A JP 6780897 A JP6780897 A JP 6780897A JP H10271016 A JPH10271016 A JP H10271016A
- Authority
- JP
- Japan
- Prior art keywords
- code
- data
- length
- size
- offset
- 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.)
- Pending
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
【課題】メモリ面積を削減することができ、かつ、符号
化処理を高速化することができる符号/復号化器を提供
すること。 【解決手段】ラン長およびグループ番号で示されるメモ
リのアドレスに格納された、符号語の符号長を表すサイ
ズ、および、このサイズで示される符号長の符号語の最
小値または最大値を表すベースからの数値の差を表すオ
フセットを読み出し、レジスタ群に格納された各符号長
の符号語の最小値または最大値の中から、サイズで示さ
れる符号長の符号語の最小値または最大値をマルチプレ
クサによって出力した後、加算器によってベースとオフ
セットを加算し、ラン長およびグループ番号に応じた符
号語のコードを出力するデータ符号化器を備えることに
より、上記課題を解決する。
化処理を高速化することができる符号/復号化器を提供
すること。 【解決手段】ラン長およびグループ番号で示されるメモ
リのアドレスに格納された、符号語の符号長を表すサイ
ズ、および、このサイズで示される符号長の符号語の最
小値または最大値を表すベースからの数値の差を表すオ
フセットを読み出し、レジスタ群に格納された各符号長
の符号語の最小値または最大値の中から、サイズで示さ
れる符号長の符号語の最小値または最大値をマルチプレ
クサによって出力した後、加算器によってベースとオフ
セットを加算し、ラン長およびグループ番号に応じた符
号語のコードを出力するデータ符号化器を備えることに
より、上記課題を解決する。
Description
【0001】
【発明の属する技術分野】本発明は、連続する複数個の
係数からなるデータを可変長符号化する符号/復号化器
に関するものである。
係数からなるデータを可変長符号化する符号/復号化器
に関するものである。
【0002】
【従来の技術】例えば、ファクシミリや遠隔通信会議シ
ステムなどのように、画像データをサンプリングしてデ
ィジタル情報化し、これを例えば遠隔地に伝送するメデ
ィアにおいては、画質に対する要求が年々高度化されて
おり、例えば白黒2値画像から多階調画像化され、さら
に現在では、カラー画像化されているものもある。一般
的に、画像データの情報量は大きく、特に、多階調画像
化、カラー画像化された画像データの情報量は膨大なも
のになる。
ステムなどのように、画像データをサンプリングしてデ
ィジタル情報化し、これを例えば遠隔地に伝送するメデ
ィアにおいては、画質に対する要求が年々高度化されて
おり、例えば白黒2値画像から多階調画像化され、さら
に現在では、カラー画像化されているものもある。一般
的に、画像データの情報量は大きく、特に、多階調画像
化、カラー画像化された画像データの情報量は膨大なも
のになる。
【0003】このため、例えば画像データを遠隔地に伝
送したり、保存したりするときには、画像データを圧縮
し、その情報量を削減するデータ圧縮技術が用いられ
る。例えば、人間の視覚が高周波成分に鈍感であること
を利用して、画像データの高周波成分、すなわち、人間
の目では識別が困難な部分を削除し、画像データを圧縮
することにより、画質を全く落とさず、あるいは人間の
目では識別できない程度の僅かな劣化だけで、その情報
量を削減することができる。
送したり、保存したりするときには、画像データを圧縮
し、その情報量を削減するデータ圧縮技術が用いられ
る。例えば、人間の視覚が高周波成分に鈍感であること
を利用して、画像データの高周波成分、すなわち、人間
の目では識別が困難な部分を削除し、画像データを圧縮
することにより、画質を全く落とさず、あるいは人間の
目では識別できない程度の僅かな劣化だけで、その情報
量を削減することができる。
【0004】このようなデータ圧縮技術の1つとして
は、例えばカラー静止画像の国際標準符号化方式である
JPEG(Joint Photographic Experts Group)アルゴ
リズムがある。図3に示されるように、例えばJPEG
のDCT(Discrete Cosine Transform :離散コサイン
変換)方式において、画像データの符号化および復号化
は、例えば原画像データを水平8画素×垂直8画素のブ
ロックに分割し、この64画素からなるブロックを単位
として行われる。
は、例えばカラー静止画像の国際標準符号化方式である
JPEG(Joint Photographic Experts Group)アルゴ
リズムがある。図3に示されるように、例えばJPEG
のDCT(Discrete Cosine Transform :離散コサイン
変換)方式において、画像データの符号化および復号化
は、例えば原画像データを水平8画素×垂直8画素のブ
ロックに分割し、この64画素からなるブロックを単位
として行われる。
【0005】まず、原画像データの符号化は、データ符
号化器34により行われる。データ符号化器34におい
ては、DCT回路36により、個々のブロックの各画素
の値に対して離散コサイン変換が行われ、量子化回路3
8により、量子化テーブル40に基づいて量子化され、
エントロピー符号化回路42により、符号化テーブル4
4に基づいて、例えばハフマン符号化されて圧縮され、
可変長符号化された原画像データは、例えば伝送路を通
じて伝送される。
号化器34により行われる。データ符号化器34におい
ては、DCT回路36により、個々のブロックの各画素
の値に対して離散コサイン変換が行われ、量子化回路3
8により、量子化テーブル40に基づいて量子化され、
エントロピー符号化回路42により、符号化テーブル4
4に基づいて、例えばハフマン符号化されて圧縮され、
可変長符号化された原画像データは、例えば伝送路を通
じて伝送される。
【0006】これとは逆に、原画像データの復号化は、
データ復号化器46により行われる。データ復号化器4
6においては、エントロピー復号化回路48により、可
変長符号化されデータストリーム化されたブロックの各
画素の値に対して、同一符号化テーブル44を用いてハ
フマン復号化され、逆量子化回路50により、同一量子
化テーブル40を用いて逆量子化され、逆DCT回路5
2により、逆離散コサイン変換されて伸張され、復号画
像データを得る。
データ復号化器46により行われる。データ復号化器4
6においては、エントロピー復号化回路48により、可
変長符号化されデータストリーム化されたブロックの各
画素の値に対して、同一符号化テーブル44を用いてハ
フマン復号化され、逆量子化回路50により、同一量子
化テーブル40を用いて逆量子化され、逆DCT回路5
2により、逆離散コサイン変換されて伸張され、復号画
像データを得る。
【0007】ここで、水平8画素(X=0〜7)×垂直
8画素(Y=0〜7)=64画素(PXY)のブロック
を、DCT変換した結果得られる64個の係数(SXY)
の内、係数S00はDC成分と呼ばれ、残りの63個の係
数S01〜S77はAC成分と呼ばれている。DC成分は、
64画素の平均値(直流成分)を示すものである。ハフ
マン符号化/復号化においては、これらのDC成分およ
びAC成分で異なった符号化および復号化がなされてい
る。
8画素(Y=0〜7)=64画素(PXY)のブロック
を、DCT変換した結果得られる64個の係数(SXY)
の内、係数S00はDC成分と呼ばれ、残りの63個の係
数S01〜S77はAC成分と呼ばれている。DC成分は、
64画素の平均値(直流成分)を示すものである。ハフ
マン符号化/復号化においては、これらのDC成分およ
びAC成分で異なった符号化および復号化がなされてい
る。
【0008】例えば、ハフマン符号化において、AC係
数の符号化は、量子化されたデータをジグザグスキャン
した後、連続する0の係数の個数を表すラン長(NNN
N)を求め、0に続く0以外のAC係数の値から、その
AC係数のグループ番号(SSSS)を求め、これらの
ラン長およびグループ番号NNNN/SSSSに応じ
て、1〜16ビットの符号長を有する符号語を割り当
て、この符号語に、グループ番号に応じて0〜15ビッ
トの付加ビットを付加することにより行われる。
数の符号化は、量子化されたデータをジグザグスキャン
した後、連続する0の係数の個数を表すラン長(NNN
N)を求め、0に続く0以外のAC係数の値から、その
AC係数のグループ番号(SSSS)を求め、これらの
ラン長およびグループ番号NNNN/SSSSに応じ
て、1〜16ビットの符号長を有する符号語を割り当
て、この符号語に、グループ番号に応じて0〜15ビッ
トの付加ビットを付加することにより行われる。
【0009】ここで、JPEGのハフマン符号化を例に
挙げて、従来の符号化方式とその問題点について説明す
る。
挙げて、従来の符号化方式とその問題点について説明す
る。
【0010】従来の符号化方式では、符号化される全て
の符号語について、各符号語を表す16ビットのコード
CODE、および、符号語の符号長を表す4ビットのサ
イズSIZEをその各アドレスに格納した合計20ビッ
ト幅のメモリを設け、ラン長およびグループ番号NNN
N/SSSSで指定されるメモリのアドレスに格納され
ているコードCODEおよびサイズSIZEを読み出
し、サイズSIZEで指定されるビット数分のコードC
ODEを使用している。
の符号語について、各符号語を表す16ビットのコード
CODE、および、符号語の符号長を表す4ビットのサ
イズSIZEをその各アドレスに格納した合計20ビッ
ト幅のメモリを設け、ラン長およびグループ番号NNN
N/SSSSで指定されるメモリのアドレスに格納され
ているコードCODEおよびサイズSIZEを読み出
し、サイズSIZEで指定されるビット数分のコードC
ODEを使用している。
【0011】例えば、ラン長およびグループ番号NNN
N/SSSS=0/4の場合、この符号語は、JPEG
推奨の輝度テーブルによれば‘1011(2進数、以下
同じ)’であり、その符号長は4ビットである。この場
合、メモリからは、コードCODEおよびサイズSIZ
Eとして、以下に示す合計20ビットのデータが読み出
される。 コードCODE=‘0000 0000 0000 1
011’ サイズSIZE=‘0011’
N/SSSS=0/4の場合、この符号語は、JPEG
推奨の輝度テーブルによれば‘1011(2進数、以下
同じ)’であり、その符号長は4ビットである。この場
合、メモリからは、コードCODEおよびサイズSIZ
Eとして、以下に示す合計20ビットのデータが読み出
される。 コードCODE=‘0000 0000 0000 1
011’ サイズSIZE=‘0011’
【0012】ここで、符号語の1〜16ビットの16種
類の符号長を‘0000’〜‘1111’までの4ビッ
トで表現しているため、サイズSIZEは‘0100’
ではなく‘0011’となる。そして、コードCODE
‘0000 0000 0000 1011’の内、サ
イズSIZE=‘0011’によって指定される下位4
ビットのデータ=‘1011’だけを、ラン長およびグ
ループ番号NNNN/SSSS=0/4に対応する符号
語として使用する。
類の符号長を‘0000’〜‘1111’までの4ビッ
トで表現しているため、サイズSIZEは‘0100’
ではなく‘0011’となる。そして、コードCODE
‘0000 0000 0000 1011’の内、サ
イズSIZE=‘0011’によって指定される下位4
ビットのデータ=‘1011’だけを、ラン長およびグ
ループ番号NNNN/SSSS=0/4に対応する符号
語として使用する。
【0013】しかしながら、この方式では、メモリから
1回データを読み出すだけで、ラン長およびグループ番
号NNNN/SSSS=0/4に対応する符号語のコー
ドCODEおよびサイズSIZEを得ることができ、高
速に符号化することができるという利点がある反面、最
大20ビットのデータをその各アドレスに格納するメモ
リが必要になるため、メモリのビット幅が大きくなり、
メモリ面積が増大するという問題点がある。
1回データを読み出すだけで、ラン長およびグループ番
号NNNN/SSSS=0/4に対応する符号語のコー
ドCODEおよびサイズSIZEを得ることができ、高
速に符号化することができるという利点がある反面、最
大20ビットのデータをその各アドレスに格納するメモ
リが必要になるため、メモリのビット幅が大きくなり、
メモリ面積が増大するという問題点がある。
【0014】また、従来の別の符号化方式では、符号化
される全ての符号語について、各符号語の符号長を表す
4ビットのサイズSIZE、および、このサイズSIZ
Eによって表される符号長の符号語の最小値と各符号語
との数値の差を表す8ビットのオフセットOFFSET
をその各アドレスに格納するとともに、1〜16ビット
の符号長の符号語の最小値を表す16ビットのベースB
ASEを別の各アドレスに格納した合計16ビット幅の
メモリを設けている。
される全ての符号語について、各符号語の符号長を表す
4ビットのサイズSIZE、および、このサイズSIZ
Eによって表される符号長の符号語の最小値と各符号語
との数値の差を表す8ビットのオフセットOFFSET
をその各アドレスに格納するとともに、1〜16ビット
の符号長の符号語の最小値を表す16ビットのベースB
ASEを別の各アドレスに格納した合計16ビット幅の
メモリを設けている。
【0015】この方式では、まず、ラン長およびグルー
プ番号NNNN/SSSSで指定されるアドレスに格納
されている合計12ビットのサイズSIZEおよびオフ
セットOFFSETを読み出し、次の処理サイクルで、
サイズSIZEで指定されるアドレスに格納されている
16ビットのベースBASEを読み出した後、ベースB
ASEとオフセットOFFSETを加算してコードCO
DEを算出し、サイズSIZEで指定されるビット数分
のコードCODEを使用している。
プ番号NNNN/SSSSで指定されるアドレスに格納
されている合計12ビットのサイズSIZEおよびオフ
セットOFFSETを読み出し、次の処理サイクルで、
サイズSIZEで指定されるアドレスに格納されている
16ビットのベースBASEを読み出した後、ベースB
ASEとオフセットOFFSETを加算してコードCO
DEを算出し、サイズSIZEで指定されるビット数分
のコードCODEを使用している。
【0016】同様に、ラン長およびグループ番号NNN
N/SSSS=0/4の場合、まず、サイズSIZEお
よびオフセットOFFSETとして、メモリから以下に
示す合計12ビットのデータが読み出される。 サイズSIZE=‘0011’ オフセットOFFSET=‘0000 0001’ 続いて、メモリから読み出されたサイズSIZE=‘0
011’をアドレスとして、メモリから以下に示す16
ビットのベースBASEが読み出される。 ベースBASE=‘0000 0000 0000 1
010’
N/SSSS=0/4の場合、まず、サイズSIZEお
よびオフセットOFFSETとして、メモリから以下に
示す合計12ビットのデータが読み出される。 サイズSIZE=‘0011’ オフセットOFFSET=‘0000 0001’ 続いて、メモリから読み出されたサイズSIZE=‘0
011’をアドレスとして、メモリから以下に示す16
ビットのベースBASEが読み出される。 ベースBASE=‘0000 0000 0000 1
010’
【0017】そして、ベースBASE=‘0000 0
000 0000 1010’とオフセットOFFSE
T‘0000 0001’とを加算して、コードCOD
E=‘0000 0000 0000 1011’を求
め、コードCODE‘0000 0000 0000
1011’の内、サイズSIZE=‘0011’によっ
て指定される下位4ビットのデータ=‘1011’だけ
を、ラン長およびグループ番号NNNN/SSSS=0
/4に対応する符号語として使用する。
000 0000 1010’とオフセットOFFSE
T‘0000 0001’とを加算して、コードCOD
E=‘0000 0000 0000 1011’を求
め、コードCODE‘0000 0000 0000
1011’の内、サイズSIZE=‘0011’によっ
て指定される下位4ビットのデータ=‘1011’だけ
を、ラン長およびグループ番号NNNN/SSSS=0
/4に対応する符号語として使用する。
【0018】しかしながら、この方式では、最大16ビ
ットのデータをその各アドレスに格納することができる
メモリを使用すればよいため、メモリのビット幅を小さ
くすることができるという利点がある反面、1つのメモ
リからデータを2回読み出さなければならず、高速化の
障害になるという問題点がある。これに対し、ベースB
ASEを格納するメモリを別のメモリで構成すると、メ
モリの個数が増え、メモリ面積が増大するという別の問
題点が発生する。
ットのデータをその各アドレスに格納することができる
メモリを使用すればよいため、メモリのビット幅を小さ
くすることができるという利点がある反面、1つのメモ
リからデータを2回読み出さなければならず、高速化の
障害になるという問題点がある。これに対し、ベースB
ASEを格納するメモリを別のメモリで構成すると、メ
モリの個数が増え、メモリ面積が増大するという別の問
題点が発生する。
【0019】
【発明が解決しようとする課題】本発明の目的は、前記
従来技術に基づく問題点をかえりみて、メモリ面積を削
減することができ、かつ、符号化処理を高速化すること
ができる符号/復号化器を提供することにある。
従来技術に基づく問題点をかえりみて、メモリ面積を削
減することができ、かつ、符号化処理を高速化すること
ができる符号/復号化器を提供することにある。
【0020】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、連続した複数個の係数からなるデータ
を、連続した0の係数の個数を表すラン長、および、前
記0以外の係数の値から決定されるグループ番号に応じ
て、可変長符号化する符号/復号化器であって、符号化
/復号化テーブルに定義されている全ての符号語につい
て、各符号語の符号長を表すサイズ、および、このサイ
ズで示される符号長の符号語の最小値または最大値を表
すベースと各符号語との数値の差を表すオフセットをそ
の各アドレスに格納し、前記ラン長およびグループ番号
で示されるアドレスに格納されている前記サイズおよび
前記オフセットを出力するメモリと、前記符号化/復号
化テーブルで定義されている各符号長の符号語の最小値
または最大値を格納するレジスタ群と、このレジスタ群
に格納されている各符号長の符号語の最小値または最大
値の中から、前記サイズで示される符号長の符号語の最
小値または最大値を前記ベースとして出力するマルチプ
レクサと、このベースおよび前記オフセットを加算する
加算器とを有するデータ符号化器を備えることを特徴と
する符号/復号化器を提供するものである。
に、本発明は、連続した複数個の係数からなるデータ
を、連続した0の係数の個数を表すラン長、および、前
記0以外の係数の値から決定されるグループ番号に応じ
て、可変長符号化する符号/復号化器であって、符号化
/復号化テーブルに定義されている全ての符号語につい
て、各符号語の符号長を表すサイズ、および、このサイ
ズで示される符号長の符号語の最小値または最大値を表
すベースと各符号語との数値の差を表すオフセットをそ
の各アドレスに格納し、前記ラン長およびグループ番号
で示されるアドレスに格納されている前記サイズおよび
前記オフセットを出力するメモリと、前記符号化/復号
化テーブルで定義されている各符号長の符号語の最小値
または最大値を格納するレジスタ群と、このレジスタ群
に格納されている各符号長の符号語の最小値または最大
値の中から、前記サイズで示される符号長の符号語の最
小値または最大値を前記ベースとして出力するマルチプ
レクサと、このベースおよび前記オフセットを加算する
加算器とを有するデータ符号化器を備えることを特徴と
する符号/復号化器を提供するものである。
【0021】ここで、上記符号/復号化器であって、さ
らに、可変長符号化されたデータを、このデータに相当
する符号語の符号長に応じてシフトするシフターと、こ
のシフターから出力されたデータを保持するフリップフ
ロップと、前記符号化/復号化テーブルに定義された所
定の符号長を持つそれぞれの符号語の最小値または最大
値を保持するレジスタ群と、前記フリップフロップに保
持されたデータと前記レジスタ群に保持されたそれぞれ
の符号語の最小値または最大値とを比較する比較器群
と、この比較器群の比較結果から、前記データに相当す
る符号語の符号長をエンコードするエンコーダとを有す
るデータ復号化器を備え、前記データ符号化器のレジス
タ群と前記データ復号化器のレジスタ群とを共用するの
が好ましい。
らに、可変長符号化されたデータを、このデータに相当
する符号語の符号長に応じてシフトするシフターと、こ
のシフターから出力されたデータを保持するフリップフ
ロップと、前記符号化/復号化テーブルに定義された所
定の符号長を持つそれぞれの符号語の最小値または最大
値を保持するレジスタ群と、前記フリップフロップに保
持されたデータと前記レジスタ群に保持されたそれぞれ
の符号語の最小値または最大値とを比較する比較器群
と、この比較器群の比較結果から、前記データに相当す
る符号語の符号長をエンコードするエンコーダとを有す
るデータ復号化器を備え、前記データ符号化器のレジス
タ群と前記データ復号化器のレジスタ群とを共用するの
が好ましい。
【0022】また、本発明は、連続した複数個の係数か
らなるデータを、連続した0の係数の個数を表すラン
長、および、前記0以外の係数の値から決定されるグル
ープ番号に応じて、可変長符号化する符号/復号化器で
あって、予め決定された符号化/復号化テーブルに定義
されている全ての符号語について、各符号語の符号長を
表すサイズ、および、このサイズで示される符号長の符
号語の最小値または最大値を表すベースと各符号語との
数値の差を表すオフセットをその各アドレスに格納し、
前記ラン長およびグループ番号で示されるアドレスに格
納されている前記サイズおよび前記オフセットを出力す
るメモリと、前記予め決定された符号化/復号化テーブ
ルに定義されている、前記サイズで示される符号長の符
号語の最小値または最大値を前記ベースとして出力する
マルチプレクサと、このベースおよび前記オフセットを
加算する加算器とを有するデータ符号化器を備えること
を特徴とする符号/復号化器を提供するものである。
らなるデータを、連続した0の係数の個数を表すラン
長、および、前記0以外の係数の値から決定されるグル
ープ番号に応じて、可変長符号化する符号/復号化器で
あって、予め決定された符号化/復号化テーブルに定義
されている全ての符号語について、各符号語の符号長を
表すサイズ、および、このサイズで示される符号長の符
号語の最小値または最大値を表すベースと各符号語との
数値の差を表すオフセットをその各アドレスに格納し、
前記ラン長およびグループ番号で示されるアドレスに格
納されている前記サイズおよび前記オフセットを出力す
るメモリと、前記予め決定された符号化/復号化テーブ
ルに定義されている、前記サイズで示される符号長の符
号語の最小値または最大値を前記ベースとして出力する
マルチプレクサと、このベースおよび前記オフセットを
加算する加算器とを有するデータ符号化器を備えること
を特徴とする符号/復号化器を提供するものである。
【0023】
【発明の実施の形態】以下に、添付の図面に示す好適実
施例に基づいて、本発明の符号/復号化器を詳細に説明
する。本発明の符号/復号化器は、基本的に、データを
符号化するデータ符号化器と、符号化されたデータを復
号化するデータ復号化器とを有するものである。以下の
実施例では、従来の符号化方式を適用する従来の符号/
復号化器との対比が容易なように、JPEGのハフマン
符号化を例に挙げて説明する。
施例に基づいて、本発明の符号/復号化器を詳細に説明
する。本発明の符号/復号化器は、基本的に、データを
符号化するデータ符号化器と、符号化されたデータを復
号化するデータ復号化器とを有するものである。以下の
実施例では、従来の符号化方式を適用する従来の符号/
復号化器との対比が容易なように、JPEGのハフマン
符号化を例に挙げて説明する。
【0024】まず、図1に、本発明を適用するデータ符
号化器の一実施例の概念図を示す。図示例のデータ符号
化器10は、例えば8ビットで表現されるラン長および
グループ番号NNNN/SSSSに応じて、4ビットで
表現される1〜16ビットの符号長を有する符号語にデ
ータを符号化するもので、図示例においては、フリップ
フロップ12、メモリ14、レジスタ群16、マルチプ
レクサ18および加算器20を有する。
号化器の一実施例の概念図を示す。図示例のデータ符号
化器10は、例えば8ビットで表現されるラン長および
グループ番号NNNN/SSSSに応じて、4ビットで
表現される1〜16ビットの符号長を有する符号語にデ
ータを符号化するもので、図示例においては、フリップ
フロップ12、メモリ14、レジスタ群16、マルチプ
レクサ18および加算器20を有する。
【0025】ここで、フリップフロップ12は、図示例
では、8ビットのラン長およびグループ番号NNNN/
SSSSを保持するもので、その出力は、アドレス信号
としてメモリ14のアドレス入力端子addrに入力さ
れる。
では、8ビットのラン長およびグループ番号NNNN/
SSSSを保持するもので、その出力は、アドレス信号
としてメモリ14のアドレス入力端子addrに入力さ
れる。
【0026】また、メモリ14は、符号化/復号化テー
ブルに定義されている全ての符号語について、図示例で
は、各符号語の符号長を表す4ビットのサイズSIZ
E、および、このサイズSIZEで示される符号長の符
号語の最小値または最大値を表すベースBASEと各符
号語との数値の差を表す8ビットのオフセットOFFS
ETをその各アドレスに格納するものである。なお、オ
フセットOFFSETは、正数であっても負数であって
もよい。
ブルに定義されている全ての符号語について、図示例で
は、各符号語の符号長を表す4ビットのサイズSIZ
E、および、このサイズSIZEで示される符号長の符
号語の最小値または最大値を表すベースBASEと各符
号語との数値の差を表す8ビットのオフセットOFFS
ETをその各アドレスに格納するものである。なお、オ
フセットOFFSETは、正数であっても負数であって
もよい。
【0027】このメモリ14からは、フリップフロップ
12から与えられるラン長およびグループ番号NNNN
/SSSSで指定されるアドレスに格納されている合計
12ビットのサイズSIZEおよびオフセットOFFS
ETが出力される。また、オフセットOFFSETは、
ベースBASEからのオフセット値として加算器20の
一方の入力端子に入力され、サイズSIZEは、選択信
号としてマルチプレクサ18の選択入力端子に入力され
る。
12から与えられるラン長およびグループ番号NNNN
/SSSSで指定されるアドレスに格納されている合計
12ビットのサイズSIZEおよびオフセットOFFS
ETが出力される。また、オフセットOFFSETは、
ベースBASEからのオフセット値として加算器20の
一方の入力端子に入力され、サイズSIZEは、選択信
号としてマルチプレクサ18の選択入力端子に入力され
る。
【0028】続いて、レジスタ群16は、符号化/復号
化テーブルに定義されている各符号長、ここでは、1〜
16ビットの符号長の符号語の最小値または最大値を格
納するもので、その出力は全てマルチプレクサ18に入
力される。なお、レジスタ群16に格納される各符号長
の符号語の最小値または最大値に応じて、上記メモリ1
4の各アドレスに格納するオフセットOFFSETの値
を適宜決定する必要があるのはいうまでもないことであ
る。
化テーブルに定義されている各符号長、ここでは、1〜
16ビットの符号長の符号語の最小値または最大値を格
納するもので、その出力は全てマルチプレクサ18に入
力される。なお、レジスタ群16に格納される各符号長
の符号語の最小値または最大値に応じて、上記メモリ1
4の各アドレスに格納するオフセットOFFSETの値
を適宜決定する必要があるのはいうまでもないことであ
る。
【0029】上述するメモリ14の各アドレスには、デ
ータの符号化を開始する前に、符号化/復号化テーブル
に定義されている各符号語のサイズSIZEおよびオフ
セットOFFSETが格納され、同様に、レジスタ群1
6には、データの符号化を開始する前に、符号化/復号
化テーブルに定義されている各符号長の符号語の最小値
または最大値が格納される。なお、メモリ14やレジス
タ群16にデータを書き込む方法は何ら限定されるもの
ではない。
ータの符号化を開始する前に、符号化/復号化テーブル
に定義されている各符号語のサイズSIZEおよびオフ
セットOFFSETが格納され、同様に、レジスタ群1
6には、データの符号化を開始する前に、符号化/復号
化テーブルに定義されている各符号長の符号語の最小値
または最大値が格納される。なお、メモリ14やレジス
タ群16にデータを書き込む方法は何ら限定されるもの
ではない。
【0030】マルチプレクサ18は、符号化/復号化テ
ーブルに定義されている各符号長、この実施例では、1
〜16ビットの符号長の符号語の最小値または最大値が
格納されたレジスタ群16の出力の中から、サイズSI
ZEで示される符号長の符号語の最小値または最大値が
格納されたレジスタ群16の出力をベースBASE、図
示例においては、16ビットのベースBASEとして出
力するもので、その出力は加算器20の他方の入力端子
に入力される。
ーブルに定義されている各符号長、この実施例では、1
〜16ビットの符号長の符号語の最小値または最大値が
格納されたレジスタ群16の出力の中から、サイズSI
ZEで示される符号長の符号語の最小値または最大値が
格納されたレジスタ群16の出力をベースBASE、図
示例においては、16ビットのベースBASEとして出
力するもので、その出力は加算器20の他方の入力端子
に入力される。
【0031】最後に、加算器20は、マルチプレクサ1
8から出力されるベースBASEに、メモリ14から出
力されるオフセットOFFSETを加算し、この加算結
果を図示例では16ビットのコードCODEとして出力
するものである。なお、加算器としては、正数と正数を
加算するものでも、あるいは、正数と負数(2の補数)
を加算するものでも、負数と負数を加算するものでもよ
いし、加算器の代わりに減算器を使用してもよい。
8から出力されるベースBASEに、メモリ14から出
力されるオフセットOFFSETを加算し、この加算結
果を図示例では16ビットのコードCODEとして出力
するものである。なお、加算器としては、正数と正数を
加算するものでも、あるいは、正数と負数(2の補数)
を加算するものでも、負数と負数を加算するものでもよ
いし、加算器の代わりに減算器を使用してもよい。
【0032】このデータ符号化器10においては、ま
ず、フリップフロップ12に保持された8ビットのラン
長およびグループ番号NNNN/SSSSが、アドレス
信号としてメモリ14のアドレス入力端子addrに入
力され、これに応じて、メモリ14から、ラン長および
グループ番号NNNN/SSSSで指定されるアドレス
に格納されている4ビットのサイズSIZEおよび8ビ
ットのオフセットOFFSETからなる合計12ビット
のデータが出力される。
ず、フリップフロップ12に保持された8ビットのラン
長およびグループ番号NNNN/SSSSが、アドレス
信号としてメモリ14のアドレス入力端子addrに入
力され、これに応じて、メモリ14から、ラン長および
グループ番号NNNN/SSSSで指定されるアドレス
に格納されている4ビットのサイズSIZEおよび8ビ
ットのオフセットOFFSETからなる合計12ビット
のデータが出力される。
【0033】続いて、メモリ14から出力されたサイズ
SIZEは、選択信号としてマルチプレクサ18の選択
入力端子に入力され、マルチプレクサ18からは、1〜
16ビットの符号長の符号語の最小値または最大値がそ
れぞれ格納されたレジスタ群16の出力の中から、4ビ
ットのサイズSIZEで示される符号長の符号語の最小
値または最大値が格納されたレジスタ群16の出力が、
16ビットのベースBASEとして出力される。
SIZEは、選択信号としてマルチプレクサ18の選択
入力端子に入力され、マルチプレクサ18からは、1〜
16ビットの符号長の符号語の最小値または最大値がそ
れぞれ格納されたレジスタ群16の出力の中から、4ビ
ットのサイズSIZEで示される符号長の符号語の最小
値または最大値が格納されたレジスタ群16の出力が、
16ビットのベースBASEとして出力される。
【0034】また、メモリ14から出力されたオフセッ
トOFFSETと、上記マルチプレクサ18から出力さ
れたベースBASEとが加算器20に入力され、加算器
20によって、ベースBASEの値にオフセットOFF
SETの値が加算され、その加算結果として、加算器2
0から、ラン長およびグループ番号NNNN/SSSS
に対応した16ビットのコードCODEが出力される。
以後同様にして、上述する動作が繰り返し行われる。
トOFFSETと、上記マルチプレクサ18から出力さ
れたベースBASEとが加算器20に入力され、加算器
20によって、ベースBASEの値にオフセットOFF
SETの値が加算され、その加算結果として、加算器2
0から、ラン長およびグループ番号NNNN/SSSS
に対応した16ビットのコードCODEが出力される。
以後同様にして、上述する動作が繰り返し行われる。
【0035】例えば、符号化/復号化テーブルとして、
JPEGの推奨する輝度テーブルを用いた場合、ラン長
およびグループ番号NNNN/SSSS=0/4であれ
ば、メモリ14からは、4ビットのサイズSIZEおよ
び8ビットのオフセットOFFSETとして、以下に示
す合計12ビットのデータが読み出される。 サイズSIZE=‘0011’ オフセットOFFSET=‘0000 0001’
JPEGの推奨する輝度テーブルを用いた場合、ラン長
およびグループ番号NNNN/SSSS=0/4であれ
ば、メモリ14からは、4ビットのサイズSIZEおよ
び8ビットのオフセットOFFSETとして、以下に示
す合計12ビットのデータが読み出される。 サイズSIZE=‘0011’ オフセットOFFSET=‘0000 0001’
【0036】続いて、例えばレジスタ群16に1〜16
ビットの符号長の符号語の最小値が格納されている場
合、メモリ14から出力されたサイズSIZE=‘00
11’によって、マルチプレクサ18からは、16ビッ
トのベースBASEとして、サイズSIZE=‘001
1’で示される4ビットの符号長の符号語の最小値が格
納されたレジスタ群16のデータが出力される。 ベースBASE=‘0000 0000 0000 1
010’
ビットの符号長の符号語の最小値が格納されている場
合、メモリ14から出力されたサイズSIZE=‘00
11’によって、マルチプレクサ18からは、16ビッ
トのベースBASEとして、サイズSIZE=‘001
1’で示される4ビットの符号長の符号語の最小値が格
納されたレジスタ群16のデータが出力される。 ベースBASE=‘0000 0000 0000 1
010’
【0037】そして、ベースBASE=‘0000 0
000 0000 1010’に、オフセットOFFS
ET‘0000 0001’を加算して、コードCOD
E=‘0000 0000 0000 1011’を求
め、コードCODE‘0000 0000 0000
1011’の内、サイズSIZE=‘0011’によっ
て指定される下位4ビットのデータ=‘1011’だけ
を、ラン長およびグループ番号NNNN/SSSS=0
/4に対応する符号語として使用する。
000 0000 1010’に、オフセットOFFS
ET‘0000 0001’を加算して、コードCOD
E=‘0000 0000 0000 1011’を求
め、コードCODE‘0000 0000 0000
1011’の内、サイズSIZE=‘0011’によっ
て指定される下位4ビットのデータ=‘1011’だけ
を、ラン長およびグループ番号NNNN/SSSS=0
/4に対応する符号語として使用する。
【0038】このように、本発明を適用するデータ符号
化器10では、20ビット幅のメモリを用いる従来の符
号/復号化器と比べて、メモリのビット幅を12ビット
にまで小さくすることができるし、メモリからデータを
2回読み出す従来の符号/復号化器と比べて、メモリか
らのデータの読み出しが1回でよい。すなわち、本発明
を適用するデータ符号化器10によれば、メモリ面積を
大幅に削減し、なおかつ、符号化処理を高速化すること
ができる。
化器10では、20ビット幅のメモリを用いる従来の符
号/復号化器と比べて、メモリのビット幅を12ビット
にまで小さくすることができるし、メモリからデータを
2回読み出す従来の符号/復号化器と比べて、メモリか
らのデータの読み出しが1回でよい。すなわち、本発明
を適用するデータ符号化器10によれば、メモリ面積を
大幅に削減し、なおかつ、符号化処理を高速化すること
ができる。
【0039】なお、図示例のデータ符号化器10は、あ
らゆる種類の符号化/復号化テーブルに対応できるよう
に設計されたものである。これに対し、予め使用する符
号化/復号化テーブルが決められいる場合には、必ずし
もレジスタ群16を使用する必要はなく、マルチプレク
サ18から出力される16ビットのベースBASEの各
ビット毎に、サイズSIZEで示される符号長の符号語
の最小値または最大値に応じて、ハイレベルまたはロー
レベルを出力するようにすればよい。
らゆる種類の符号化/復号化テーブルに対応できるよう
に設計されたものである。これに対し、予め使用する符
号化/復号化テーブルが決められいる場合には、必ずし
もレジスタ群16を使用する必要はなく、マルチプレク
サ18から出力される16ビットのベースBASEの各
ビット毎に、サイズSIZEで示される符号長の符号語
の最小値または最大値に応じて、ハイレベルまたはロー
レベルを出力するようにすればよい。
【0040】ところで、本出願人は、特願平9−215
51号明細書において、可変長符号化されたデータスト
リームを復号化する際に、符号語の符号長を高速に確定
することができ、その回路規模を大幅に削減することが
できるデータ復号化器を提案している。本発明の符号/
復号化器は、データ復号化器として、上記特願平9−2
1551号明細書によって提案したデータ復号化器を用
いる場合、さらに回路規模を削減することができるとい
う利点がある。
51号明細書において、可変長符号化されたデータスト
リームを復号化する際に、符号語の符号長を高速に確定
することができ、その回路規模を大幅に削減することが
できるデータ復号化器を提案している。本発明の符号/
復号化器は、データ復号化器として、上記特願平9−2
1551号明細書によって提案したデータ復号化器を用
いる場合、さらに回路規模を削減することができるとい
う利点がある。
【0041】以下、本出願人が、特願平9−21551
号明細書によって提案したデータ復号化器について簡単
に説明する。
号明細書によって提案したデータ復号化器について簡単
に説明する。
【0042】図2は、本出願人が、特願平9−2155
1号明細書によって提案したデータ復号化器の一例の概
念図である。図示例のデータ復号化器22は、例えば4
ビットのコードで表現される1〜16ビットの符号長を
有する符号語に可変長符号化されたデータストリームを
復号化する際に、それぞれの符号語の符号長を求めるも
ので、シフター24、フリップフロップ26、レジスタ
群28、比較器群30(CMP16,CMP15,…,
CMP1)およびエンコーダ32を有する。
1号明細書によって提案したデータ復号化器の一例の概
念図である。図示例のデータ復号化器22は、例えば4
ビットのコードで表現される1〜16ビットの符号長を
有する符号語に可変長符号化されたデータストリームを
復号化する際に、それぞれの符号語の符号長を求めるも
ので、シフター24、フリップフロップ26、レジスタ
群28、比較器群30(CMP16,CMP15,…,
CMP1)およびエンコーダ32を有する。
【0043】シフター24には、可変長符号化されたデ
ータストリームが入力され、シフター24の出力はフリ
ップフロップ26に入力されている。比較器30の入力
端子A,Bには、それぞれフリップフロップ26の出力
およびレジスタ群28の出力が入力され、比較器30の
出力はエンコーダ32に入力されている。また、エンコ
ーダ32の出力は、シフター24に入力されるととも
に、符号語の符号長を表す4ビットのコードSIZE
[3:0]として出力されている。
ータストリームが入力され、シフター24の出力はフリ
ップフロップ26に入力されている。比較器30の入力
端子A,Bには、それぞれフリップフロップ26の出力
およびレジスタ群28の出力が入力され、比較器30の
出力はエンコーダ32に入力されている。また、エンコ
ーダ32の出力は、シフター24に入力されるととも
に、符号語の符号長を表す4ビットのコードSIZE
[3:0]として出力されている。
【0044】ここで、シフター24は、可変長符号化さ
れ、データストリームとされたデータを、このデータに
相当する符号語の符号長に応じてシフトするもので、シ
フター24からは、図示例においては、シフトされた後
のデータストリームの先頭から16ビット分のデータが
出力される。フリップフロップ26は、シフター24か
ら出力されたデータ、図示例においては、16ビット分
のデータを保持するものである。
れ、データストリームとされたデータを、このデータに
相当する符号語の符号長に応じてシフトするもので、シ
フター24からは、図示例においては、シフトされた後
のデータストリームの先頭から16ビット分のデータが
出力される。フリップフロップ26は、シフター24か
ら出力されたデータ、図示例においては、16ビット分
のデータを保持するものである。
【0045】続いて、レジスタ群28は、符号化/復号
化テーブルに定義された所定の符号長を持つそれぞれの
符号語の最小値または最大値、ここでは、1〜16ビッ
トの符号長を持つそれぞれの符号語の最小値を保持する
ものである。このレジスタ群28には、データを復号化
する前に、符号化/復号化の際に使用する符号化/復号
化テーブルに定義された所定の符号長を持つそれぞれの
符号語の最小値または最大値が保持される。
化テーブルに定義された所定の符号長を持つそれぞれの
符号語の最小値または最大値、ここでは、1〜16ビッ
トの符号長を持つそれぞれの符号語の最小値を保持する
ものである。このレジスタ群28には、データを復号化
する前に、符号化/復号化の際に使用する符号化/復号
化テーブルに定義された所定の符号長を持つそれぞれの
符号語の最小値または最大値が保持される。
【0046】比較器群30は、フリップフロップ26に
保持されたデータと、レジスタ群28に保持された、符
号化/復号化テーブルに定義された所定の符号長を持つ
それぞれの符号語の最小値または最大値とを比較するも
のである。図示例では、フリップフロップ26に保持さ
れたデータと、1〜16ビットの符号長を持つそれぞれ
の符号語の最小値とを比較し、フリップフロップ26に
保持されたデータが、それぞれの符号語の最小値以上で
あることを検出する。
保持されたデータと、レジスタ群28に保持された、符
号化/復号化テーブルに定義された所定の符号長を持つ
それぞれの符号語の最小値または最大値とを比較するも
のである。図示例では、フリップフロップ26に保持さ
れたデータと、1〜16ビットの符号長を持つそれぞれ
の符号語の最小値とを比較し、フリップフロップ26に
保持されたデータが、それぞれの符号語の最小値以上で
あることを検出する。
【0047】エンコーダ32は、比較器群30の比較結
果から、フリップフロップ26に保持されているデータ
に相当する符号語の符号長をエンコードするものであ
る。
果から、フリップフロップ26に保持されているデータ
に相当する符号語の符号長をエンコードするものであ
る。
【0048】このデータ復号化器22において、まず、
入力されたデータストリームは、シフター24によって
シフトされ、その先頭から16ビット分のデータが出力
される。シフター24から出力された16ビット分のデ
ータは、フリップフロップ26に保持され、フリップフ
ロップ26に保持された16ビット分のデータは、デー
タの先頭から、それぞれの比較器30が比較するビット
数に応じたビット数が、それぞれの比較器30の入力端
子Aに入力される。
入力されたデータストリームは、シフター24によって
シフトされ、その先頭から16ビット分のデータが出力
される。シフター24から出力された16ビット分のデ
ータは、フリップフロップ26に保持され、フリップフ
ロップ26に保持された16ビット分のデータは、デー
タの先頭から、それぞれの比較器30が比較するビット
数に応じたビット数が、それぞれの比較器30の入力端
子Aに入力される。
【0049】一方、比較器群30の入力端子Bには、そ
れぞれレジスタ群28の出力、すなわち、符号化/復号
化テーブルに定義された1〜16ビットの符号長を持つ
それぞれの符号語の最小値が入力される。例えば、比較
器30(CMP5)には、フリップフロップ26に保持
された16ビット分のデータの内、データの先頭から5
ビット分のデータと、レジスタ群28に保持された、5
ビットの符号長を持つ符号語の最小値とが入力される。
れぞれレジスタ群28の出力、すなわち、符号化/復号
化テーブルに定義された1〜16ビットの符号長を持つ
それぞれの符号語の最小値が入力される。例えば、比較
器30(CMP5)には、フリップフロップ26に保持
された16ビット分のデータの内、データの先頭から5
ビット分のデータと、レジスタ群28に保持された、5
ビットの符号長を持つ符号語の最小値とが入力される。
【0050】比較器群30においては、フリップフロッ
プ26に保持された16ビットのデータの内、データの
先頭から、それぞれの比較器30(CMP16,CMP
15,…,CMP1)が比較するビット数に応じたビッ
ト数分のデータと、それぞれのレジスタ群28に保持さ
れた、それぞれの符号長を持つ符号語の最小値とが比較
され、比較器群30からは、フリップフロップ26に保
持されたデータに相当する符号語の符号長に応じた比較
結果が出力される。
プ26に保持された16ビットのデータの内、データの
先頭から、それぞれの比較器30(CMP16,CMP
15,…,CMP1)が比較するビット数に応じたビッ
ト数分のデータと、それぞれのレジスタ群28に保持さ
れた、それぞれの符号長を持つ符号語の最小値とが比較
され、比較器群30からは、フリップフロップ26に保
持されたデータに相当する符号語の符号長に応じた比較
結果が出力される。
【0051】比較器群30から出力された比較結果はエ
ンコーダ32に入力され、エンコーダ32において、フ
リップフロップ26に保持されたデータに相当する符号
語の符号長が、4ビットのコードSIZE[3:0]に
エンコードされる。エンコーダ32によりエンコードさ
れた符号長のコードSIZE[3:0]は、シフター2
4にフィードバックされ、シフター24において、デー
タストリームは、符号長のコードSIZE[3:0]に
応じてシフトされ、以後、上述する動作が繰り返し行わ
れる。
ンコーダ32に入力され、エンコーダ32において、フ
リップフロップ26に保持されたデータに相当する符号
語の符号長が、4ビットのコードSIZE[3:0]に
エンコードされる。エンコーダ32によりエンコードさ
れた符号長のコードSIZE[3:0]は、シフター2
4にフィードバックされ、シフター24において、デー
タストリームは、符号長のコードSIZE[3:0]に
応じてシフトされ、以後、上述する動作が繰り返し行わ
れる。
【0052】このデータ復号化器22によれば、可変長
符号化されたデータストリームを復号化する際に、符号
長のコードを1ビットずつ段階的に分けて確定させるの
ではなく、フリップフロップ26に保持されたデータ
と、それぞれのレジスタ28に保持された、それぞれの
符号長を持つ符号語の最小値とが同時に並列に比較され
て、符号長のコードがエンコードされるため、無駄な処
理を省き、処理スピードを極めて高速化することができ
るという利点がある。
符号化されたデータストリームを復号化する際に、符号
長のコードを1ビットずつ段階的に分けて確定させるの
ではなく、フリップフロップ26に保持されたデータ
と、それぞれのレジスタ28に保持された、それぞれの
符号長を持つ符号語の最小値とが同時に並列に比較され
て、符号長のコードがエンコードされるため、無駄な処
理を省き、処理スピードを極めて高速化することができ
るという利点がある。
【0053】上述したように、本出願人が、特願平9−
21551号明細書によって提案したデータ復号化器の
一例となる上記データ復号化器22には、符号化/復号
化テーブルに定義された所定の符号長を持つそれぞれの
符号語の最小値または最大値を保持するレジスタ群28
が設けられている。このレジスタ群28は、本発明の符
号/復号化器を構成する、図1に示すデータ符号化器1
0において用いられるレジスタ群16と全く同じ役割を
果たすものである。
21551号明細書によって提案したデータ復号化器の
一例となる上記データ復号化器22には、符号化/復号
化テーブルに定義された所定の符号長を持つそれぞれの
符号語の最小値または最大値を保持するレジスタ群28
が設けられている。このレジスタ群28は、本発明の符
号/復号化器を構成する、図1に示すデータ符号化器1
0において用いられるレジスタ群16と全く同じ役割を
果たすものである。
【0054】従って、本発明の符号/復号化器において
使用されるデータ復号化器として、本出願人が、特願平
9−21551号明細書によって提案したデータ復号化
器を使用することにより、例えばデータ符号化器10の
レジスタ群16と、データ復号化器22のレジスタ群2
8とを共用することができ、その回路規模を大幅に削減
することができるし、同一ハードウェアで、データ符号
化器およびデータ復号化器の両者の処理速度を高速化す
ることができる。
使用されるデータ復号化器として、本出願人が、特願平
9−21551号明細書によって提案したデータ復号化
器を使用することにより、例えばデータ符号化器10の
レジスタ群16と、データ復号化器22のレジスタ群2
8とを共用することができ、その回路規模を大幅に削減
することができるし、同一ハードウェアで、データ符号
化器およびデータ復号化器の両者の処理速度を高速化す
ることができる。
【0055】以上、本発明の符号/復号化器について詳
細に説明したが、本発明は上記実施例に限定されず、本
発明の主旨を逸脱しない範囲において、種々の改良や変
更をしてもよいのはもちろんである。
細に説明したが、本発明は上記実施例に限定されず、本
発明の主旨を逸脱しない範囲において、種々の改良や変
更をしてもよいのはもちろんである。
【0056】
【発明の効果】以上詳細に説明した様に、本発明の符号
/復号化器は、ラン長およびグループ番号で示されるメ
モリのアドレスに格納されたサイズおよびオフセットを
読み出し、レジスタ群に格納された各符号長の符号語の
最小値または最大値の中から、サイズで示される符号長
の符号語の最小値または最大値をベースとして出力した
後、ベースとオフセットを加算することにより、ラン長
およびグループ番号に応じた符号語のコードを出力する
データ符号化器を備えるものである。本発明の符号/復
号化器によれば、ベースとなる各符号長の符号語の最小
値または最大値を、メモリではなくレジスタ群に格納す
るようにしたため、メモリのビット幅を小さくしてメモ
リ面積を大幅に削減することができるし、同時に、メモ
リからのデータの読み出しも1回でよいので、符号化処
理を高速化することができるという効果がある。また、
本発明の符号/復号化器によれば、データ符号化器およ
びデータ復号化器でレジスタ群を共用することができる
ため、その回路規模を大幅に削減することができるし、
同一ハードウェアで、データ符号化器およびデータ復号
化器の両者の処理速度を高速化することができる。
/復号化器は、ラン長およびグループ番号で示されるメ
モリのアドレスに格納されたサイズおよびオフセットを
読み出し、レジスタ群に格納された各符号長の符号語の
最小値または最大値の中から、サイズで示される符号長
の符号語の最小値または最大値をベースとして出力した
後、ベースとオフセットを加算することにより、ラン長
およびグループ番号に応じた符号語のコードを出力する
データ符号化器を備えるものである。本発明の符号/復
号化器によれば、ベースとなる各符号長の符号語の最小
値または最大値を、メモリではなくレジスタ群に格納す
るようにしたため、メモリのビット幅を小さくしてメモ
リ面積を大幅に削減することができるし、同時に、メモ
リからのデータの読み出しも1回でよいので、符号化処
理を高速化することができるという効果がある。また、
本発明の符号/復号化器によれば、データ符号化器およ
びデータ復号化器でレジスタ群を共用することができる
ため、その回路規模を大幅に削減することができるし、
同一ハードウェアで、データ符号化器およびデータ復号
化器の両者の処理速度を高速化することができる。
【図1】 本発明の符号/復号化器の一実施例の概念図
である。
である。
【図2】 データ復号化器の一例の概念図である。
【図3】 JPEGのDCT方式における符号化/復号
化の概念図である。
化の概念図である。
10,34 データ符号化器 12,26 フリップフロップ 14 メモリ 16,28 レジスタ群 18 マルチプレクサ 20 加算器 22 データ復号化器 24 シフター 30(CMP16,CMP15,…,CMP1) 比較
器群 32 エンコーダ 36 DCT回路 38 量子化回路 40 量子化テーブル 42 エントロピー符号化回路 44 符号化テーブル 46 データ復号化器 48 エントロピー復号化回路 50 逆量子化回路 52 逆DCT回路
器群 32 エンコーダ 36 DCT回路 38 量子化回路 40 量子化テーブル 42 エントロピー符号化回路 44 符号化テーブル 46 データ復号化器 48 エントロピー復号化回路 50 逆量子化回路 52 逆DCT回路
Claims (3)
- 【請求項1】連続した複数個の係数からなるデータを、
連続した0の係数の個数を表すラン長、および、前記0
以外の係数の値から決定されるグループ番号に応じて、
可変長符号化する符号/復号化器であって、 符号化/復号化テーブルに定義されている全ての符号語
について、各符号語の符号長を表すサイズ、および、こ
のサイズで示される符号長の符号語の最小値または最大
値を表すベースと各符号語との数値の差を表すオフセッ
トをその各アドレスに格納し、前記ラン長およびグルー
プ番号で示されるアドレスに格納されている前記サイズ
および前記オフセットを出力するメモリと、前記符号化
/復号化テーブルで定義されている各符号長の符号語の
最小値または最大値を格納するレジスタ群と、このレジ
スタ群に格納されている各符号長の符号語の最小値また
は最大値の中から、前記サイズで示される符号長の符号
語の最小値または最大値を前記ベースとして出力するマ
ルチプレクサと、このベースおよび前記オフセットを加
算する加算器とを有するデータ符号化器を備えることを
特徴とする符号/復号化器。 - 【請求項2】請求項1に記載の符号/復号化器であっ
て、 さらに、可変長符号化されたデータを、このデータに相
当する符号語の符号長に応じてシフトするシフターと、
このシフターから出力されたデータを保持するフリップ
フロップと、前記符号化/復号化テーブルに定義された
所定の符号長を持つそれぞれの符号語の最小値または最
大値を保持するレジスタ群と、前記フリップフロップに
保持されたデータと前記レジスタ群に保持されたそれぞ
れの符号語の最小値または最大値とを比較する比較器群
と、この比較器群の比較結果から、前記データに相当す
る符号語の符号長をエンコードするエンコーダとを有す
るデータ復号化器を備え、 前記データ符号化器のレジスタ群と前記データ復号化器
のレジスタ群とを共用することを特徴とする符号/復号
化器。 - 【請求項3】連続した複数個の係数からなるデータを、
連続した0の係数の個数を表すラン長、および、前記0
以外の係数の値から決定されるグループ番号に応じて、
可変長符号化する符号/復号化器であって、 予め決定された符号化/復号化テーブルに定義されてい
る全ての符号語について、各符号語の符号長を表すサイ
ズ、および、このサイズで示される符号長の符号語の最
小値または最大値を表すベースと各符号語との数値の差
を表すオフセットをその各アドレスに格納し、前記ラン
長およびグループ番号で示されるアドレスに格納されて
いる前記サイズおよび前記オフセットを出力するメモリ
と、前記予め決定された符号化/復号化テーブルに定義
されている、前記サイズで示される符号長の符号語の最
小値または最大値を前記ベースとして出力するマルチプ
レクサと、このベースおよび前記オフセットを加算する
加算器とを有するデータ符号化器を備えることを特徴と
する符号/復号化器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9067808A JPH10271016A (ja) | 1997-03-21 | 1997-03-21 | 符号/復号化器 |
US09/040,274 US6157327A (en) | 1997-03-21 | 1998-03-18 | Encoding/decoding device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9067808A JPH10271016A (ja) | 1997-03-21 | 1997-03-21 | 符号/復号化器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10271016A true JPH10271016A (ja) | 1998-10-09 |
Family
ID=13355629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9067808A Pending JPH10271016A (ja) | 1997-03-21 | 1997-03-21 | 符号/復号化器 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6157327A (ja) |
JP (1) | JPH10271016A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002261623A (ja) * | 2001-02-28 | 2002-09-13 | Canon Inc | 復号装置、復号方法、記憶媒体及びプログラムソフトウェア |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6265994B1 (en) * | 1998-01-09 | 2001-07-24 | U.S. Philips Corporation | Device for encoding/decoding n-bit source words into corresponding m-bit channel words, and vice versa |
US6879652B1 (en) | 2000-07-14 | 2005-04-12 | Nielsen Media Research, Inc. | Method for encoding an input signal |
US7124799B2 (en) * | 2004-07-27 | 2006-10-24 | Picture Rich Llc | Lamination apparatus and method of use |
IL186186A0 (en) * | 2006-10-03 | 2008-01-20 | Alberto Milano | Communication system and method using an active phased array antenna |
US7511640B2 (en) * | 2007-01-31 | 2009-03-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Digital compression of binary data blocks |
US20080259891A1 (en) * | 2007-04-17 | 2008-10-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Multiple packet source acknowledgement |
US8031959B2 (en) * | 2008-02-22 | 2011-10-04 | Himax Technologies Limited | Compression system for a bit-plane |
DE102014213071A1 (de) * | 2014-07-04 | 2016-01-07 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Verarbeitung von Daten |
US10277256B2 (en) * | 2016-01-05 | 2019-04-30 | Mediatek Inc. | Decoding across transmission time intervals |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5764373A (en) * | 1993-03-16 | 1998-06-09 | Mitsubishi Denki Kabushiki Kaisha | Image data compression-expansion circuit |
JP3227292B2 (ja) * | 1993-12-20 | 2001-11-12 | キヤノン株式会社 | 符号化装置、符号化方法、復号化装置、復号化方法、符号化復号化装置及び符号化復号化方法 |
JP3332619B2 (ja) * | 1994-11-29 | 2002-10-07 | キヤノン株式会社 | 復号装置およびその方法 |
US5714949A (en) * | 1995-01-13 | 1998-02-03 | Matsushita Electric Industrial Co., Ltd. | Priority encoder and variable length encoder using the same |
-
1997
- 1997-03-21 JP JP9067808A patent/JPH10271016A/ja active Pending
-
1998
- 1998-03-18 US US09/040,274 patent/US6157327A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002261623A (ja) * | 2001-02-28 | 2002-09-13 | Canon Inc | 復号装置、復号方法、記憶媒体及びプログラムソフトウェア |
Also Published As
Publication number | Publication date |
---|---|
US6157327A (en) | 2000-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6219457B1 (en) | Method and system for decoding data encoded in a variable length code word | |
US5945930A (en) | Data processing apparatus | |
US4454546A (en) | Band compression device for shaded image | |
US5604498A (en) | Huffman decoder | |
EP0535571A2 (en) | Modified Huffman encode/decode system with simplified decoding for imaging systems | |
KR0180169B1 (ko) | 가변길이 부호기 | |
US6912318B2 (en) | Method and system for compressing motion image information | |
JPH10271016A (ja) | 符号/復号化器 | |
JP3940672B2 (ja) | 画像処理装置及び画像処理方法 | |
JPWO2003079692A1 (ja) | 階層符号化装置および復号装置 | |
EP0635807A1 (en) | Coding apparatus for image compression | |
JPH07264417A (ja) | 画像符号化方法 | |
US6631161B1 (en) | Method and system for compressing motion image information | |
JPH08186723A (ja) | 画像処理装置用エンコーダ | |
JP2002369010A (ja) | 画像符号化装置及び画像復号装置 | |
US5561422A (en) | Method and apparatus for variable length coding with reduced memory requirement | |
JP3624450B2 (ja) | 画像データ符号化方法及び画像データ符号化装置 | |
JPH10163880A (ja) | データ復号化器 | |
KR950008486B1 (ko) | 가변길이 부호화 방법 | |
JP3260925B2 (ja) | 画像処理装置 | |
JPH08275153A (ja) | 画像圧縮装置および画像復元装置 | |
JPH06152988A (ja) | 可変長符号の復号化装置 | |
KR940000680B1 (ko) | 영상신호의 수신 및 재생시 런필드를 이용한 복호화 방식 | |
KR0134359B1 (ko) | 가변 스캔영역을 이용한 부호화 및 복호화시스템 | |
KR890004316B1 (ko) | 복합 코드 부호화 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20031021 |