JP2003174366A - データ復号化装置およびその方法 - Google Patents
データ復号化装置およびその方法Info
- Publication number
- JP2003174366A JP2003174366A JP2001370406A JP2001370406A JP2003174366A JP 2003174366 A JP2003174366 A JP 2003174366A JP 2001370406 A JP2001370406 A JP 2001370406A JP 2001370406 A JP2001370406 A JP 2001370406A JP 2003174366 A JP2003174366 A JP 2003174366A
- Authority
- JP
- Japan
- Prior art keywords
- data
- length
- decoded
- decoding
- generated
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
【課題】JPEG符号化されたデータストリームを、簡
易な構成で高速に復号化できるデータ復号化装置および
その方法を提供する。 【解決手段】第1の復号部20は、データストリームD
inの先頭に含まれる全てのハフマン符号を復号化で
き、第2の復号部41〜44は5ビット長までのハフマ
ン符号が復号化できる復号テーブルをそれぞれ有してい
る。1つ目の符号化データのデータ長L1によって、復
号化するデータ位置が1ビットづつずれた複数の第2の
復号部の中から1つが選択され、その復号化データRS
2に応じて、2つ目の符号化データ長L2が算出され
る。データ長L2とデータ長L1との和に応じて、デー
タ抽出位置がシフトされる。1つ目の符号化データ長が
3〜6ビット以外の場合や、2つ目のハフマン符号が5
ビット以上の場合には、2つ目の復号化データRS2が
無効であることを示す信号Sivが生成される。
易な構成で高速に復号化できるデータ復号化装置および
その方法を提供する。 【解決手段】第1の復号部20は、データストリームD
inの先頭に含まれる全てのハフマン符号を復号化で
き、第2の復号部41〜44は5ビット長までのハフマ
ン符号が復号化できる復号テーブルをそれぞれ有してい
る。1つ目の符号化データのデータ長L1によって、復
号化するデータ位置が1ビットづつずれた複数の第2の
復号部の中から1つが選択され、その復号化データRS
2に応じて、2つ目の符号化データ長L2が算出され
る。データ長L2とデータ長L1との和に応じて、デー
タ抽出位置がシフトされる。1つ目の符号化データ長が
3〜6ビット以外の場合や、2つ目のハフマン符号が5
ビット以上の場合には、2つ目の復号化データRS2が
無効であることを示す信号Sivが生成される。
Description
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ハフマン符号など
の可変長符号によって符号化されたデータストリームを
復号化するデータ復号化装置とその方法に係り、例え
ば、JPEG(joint photographic experts group)方
式によって符号化されたデータストリームを復号化する
データ復号化装置とその方法に関するものである。
の可変長符号によって符号化されたデータストリームを
復号化するデータ復号化装置とその方法に係り、例え
ば、JPEG(joint photographic experts group)方
式によって符号化されたデータストリームを復号化する
データ復号化装置とその方法に関するものである。
【0002】
【従来の技術】図17は、ハフマン符号によって符号化
されたデータストリームを復号化する従来のデータ復号
化装置の構成例を示すブロック図である。図17に示す
データ復号化装置は、データシフト部1、復号部2a〜
復号部2r、およびセレクタ3を有する。
されたデータストリームを復号化する従来のデータ復号
化装置の構成例を示すブロック図である。図17に示す
データ復号化装置は、データシフト部1、復号部2a〜
復号部2r、およびセレクタ3を有する。
【0003】データシフト部1は、ハフマン符号化され
たデータストリームDinの先頭ビットから16ビット
分のデータ列S1を抽出して、復号部2a〜復号部2r
に入力する。また、シフト信号S3に応じて、データ列
の抽出位置をデータストリームDinの先頭から末尾方
向へシフトさせる。
たデータストリームDinの先頭ビットから16ビット
分のデータ列S1を抽出して、復号部2a〜復号部2r
に入力する。また、シフト信号S3に応じて、データ列
の抽出位置をデータストリームDinの先頭から末尾方
向へシフトさせる。
【0004】復号部2aは、ハフマン符号とそのデータ
長および復号語が互いに関連付けられたデータテーブル
を有しており、このデータテーブルを参照して、抽出デ
ータ列S1の先頭ビットから16ビット分のデータ列に
含まれるハフマン符号を検索し、ハフマン符号のデータ
長L1と復号語Dout1を出力する。ただし、この例
においてハフマン符号は最長16ビットである。
長および復号語が互いに関連付けられたデータテーブル
を有しており、このデータテーブルを参照して、抽出デ
ータ列S1の先頭ビットから16ビット分のデータ列に
含まれるハフマン符号を検索し、ハフマン符号のデータ
長L1と復号語Dout1を出力する。ただし、この例
においてハフマン符号は最長16ビットである。
【0005】復号部2b〜復号部2rも、復号部2aと
同様なデータテーブルを有しており、抽出データ列S1
の先頭ビットからそれぞれ1〜16ビットだけずれたビ
ット位置から16ビット分のデータ列に含まれるハフマ
ン符号を検索する。そして、検索されたハフマン符号の
復号語とデータ長をセレクタ3に出力する。ただし、復
号部2b〜復号部2rが出力するデータ長は、検索され
たハフマン符号のデータ長と、それぞれの復号部がセレ
クタ3で選択される場合のデータ長L1とを加算した値
を有している。例えば、復号部2gにおいてデータ長p
のハフマン符号が検索された場合、この復号部2gから
出力されるデータ長は(p+6)である。
同様なデータテーブルを有しており、抽出データ列S1
の先頭ビットからそれぞれ1〜16ビットだけずれたビ
ット位置から16ビット分のデータ列に含まれるハフマ
ン符号を検索する。そして、検索されたハフマン符号の
復号語とデータ長をセレクタ3に出力する。ただし、復
号部2b〜復号部2rが出力するデータ長は、検索され
たハフマン符号のデータ長と、それぞれの復号部がセレ
クタ3で選択される場合のデータ長L1とを加算した値
を有している。例えば、復号部2gにおいてデータ長p
のハフマン符号が検索された場合、この復号部2gから
出力されるデータ長は(p+6)である。
【0006】セレクタ3は、復号部2aにおいて検索さ
れたハフマン符号のデータ長L1に応じて、復号部2b
〜復号部2rのうちの何れか1つを選択し、その復号語
Dout2を出力する。また、そのデータ長をシフト信
号S3としてデータシフト部1に出力する。
れたハフマン符号のデータ長L1に応じて、復号部2b
〜復号部2rのうちの何れか1つを選択し、その復号語
Dout2を出力する。また、そのデータ長をシフト信
号S3としてデータシフト部1に出力する。
【0007】上述した構成を有する図17のデータ復号
化装置によれば、まず、データシフト部1においてデー
タストリームDinの先頭ビットから32ビット分のデ
ータ列S1が抽出され、そのさらに先頭ビットから16
ビット分のデータ列に含まれるハフマン符号が復号部2
aによって検索される。これにより、抽出データ列S1
の先頭から1つ目のハフマン符号が見つけ出され、その
復号語Dout1とデータ長L1が復号部2aから出力
される。
化装置によれば、まず、データシフト部1においてデー
タストリームDinの先頭ビットから32ビット分のデ
ータ列S1が抽出され、そのさらに先頭ビットから16
ビット分のデータ列に含まれるハフマン符号が復号部2
aによって検索される。これにより、抽出データ列S1
の先頭から1つ目のハフマン符号が見つけ出され、その
復号語Dout1とデータ長L1が復号部2aから出力
される。
【0008】データ長L1によって2つ目のハフマン符
号の先頭ビットの位置がわかるので、次に、このビット
位置を先頭にしてハフマン符号の検索を行なっている復
号部がセレクタ3により選択される。例えばデータ長L
1が7ビットの場合、抽出データ列S1の8ビット目を
先頭にしてハフマン符号の検索を行っている復号部2h
が選択される。このようにして2つ目のハフマン符号が
検索され、その復号語Dout2がセレクタ3より出力
される。
号の先頭ビットの位置がわかるので、次に、このビット
位置を先頭にしてハフマン符号の検索を行なっている復
号部がセレクタ3により選択される。例えばデータ長L
1が7ビットの場合、抽出データ列S1の8ビット目を
先頭にしてハフマン符号の検索を行っている復号部2h
が選択される。このようにして2つ目のハフマン符号が
検索され、その復号語Dout2がセレクタ3より出力
される。
【0009】セレクタ3から出力されるシフト信号S3
は、1つ目のハフマン符号と2つ目のハフマン符号のデ
ータ長の和を示す信号であり、このシフト信号S3によ
って、2つ目に復号されたハフマン符号に続く次のハフ
マン符号の先頭ビット位置が特定される。データシフト
部1のデータ抽出位置は、この特定された先頭ビット位
置と一致するようにシフト信号S3によってシフトされ
るので、上述と同様に、この先頭ビットから2つのハフ
マン符号が復号される。こうした動作を繰り返しなが
ら、1回のデータ抽出位置のシフトに対して2つのハフ
マン符号が同時に復号される。
は、1つ目のハフマン符号と2つ目のハフマン符号のデ
ータ長の和を示す信号であり、このシフト信号S3によ
って、2つ目に復号されたハフマン符号に続く次のハフ
マン符号の先頭ビット位置が特定される。データシフト
部1のデータ抽出位置は、この特定された先頭ビット位
置と一致するようにシフト信号S3によってシフトされ
るので、上述と同様に、この先頭ビットから2つのハフ
マン符号が復号される。こうした動作を繰り返しなが
ら、1回のデータ抽出位置のシフトに対して2つのハフ
マン符号が同時に復号される。
【0010】
【発明が解決しようとする課題】しかしながら、図17
に示すデータ復号化装置では、復号部2a〜復号部2r
においてハフマン符号を復号化するためのデータテーブ
ルが個別に設けられるため、全部で17個ものデータテ
ーブルが必要となる。したがって、このデータテーブル
のための記憶容量が非常に大きくなり、回路規模が増大
してしまう問題がある。また、JPEG方式で圧縮符号
化されたデータストリームには、ハフマン符号の他に付
加ビットと呼ばれるDCT(discrete cosine transfor
m)係数の具体的な値を指定するためのデータが含まれ
ているので、ハフマン符号の復号化しか考慮されていな
い図17のデータ復号化装置をJPEG復号化装置に適
用することはできない。
に示すデータ復号化装置では、復号部2a〜復号部2r
においてハフマン符号を復号化するためのデータテーブ
ルが個別に設けられるため、全部で17個ものデータテ
ーブルが必要となる。したがって、このデータテーブル
のための記憶容量が非常に大きくなり、回路規模が増大
してしまう問題がある。また、JPEG方式で圧縮符号
化されたデータストリームには、ハフマン符号の他に付
加ビットと呼ばれるDCT(discrete cosine transfor
m)係数の具体的な値を指定するためのデータが含まれ
ているので、ハフマン符号の復号化しか考慮されていな
い図17のデータ復号化装置をJPEG復号化装置に適
用することはできない。
【0011】本発明はかかる事情に鑑みてなされたもの
であり、その目的は、可変長符号化されたデータストリ
ームを簡易な構成で高速に復号化できるデータ復号化装
置およびその方法を提供することにある。
であり、その目的は、可変長符号化されたデータストリ
ームを簡易な構成で高速に復号化できるデータ復号化装
置およびその方法を提供することにある。
【0012】
【課題を解決するための手段】上記の目的を達成するた
め、本発明の第1の観点に係るデータ復号化装置は、供
給される符号化データストリームを復号化するデータ復
号化装置であって、上記符号化データストリームの先頭
から所定データ長のデータ列を抽出するデータ抽出手段
と、上記データ抽出手段において抽出されたデータ列の
先頭から、所定の可変長符号テーブルに含まれる可変長
符号を検索し、当該検索した可変長符号に対応する復号
化データを出力する第1の復号手段と、上記第1の復号
手段の復号化データと、当該復号化データに対応する上
記可変長符号のデータ長とに基づいて、当該復号化デー
タに対応する符号化データのデータ長を算出し、第1の
データ長として出力する第1のデータ長算出手段と、上
記データ抽出手段において抽出されたデータ列の先頭に
対して複数の異なるデータ数だけ末尾側にずれたデータ
位置から、上記可変長符号テーブルの一部の可変長符号
をそれぞれ検索し、当該検索した可変長符号に対応する
復号化データを出力し、当該検索において該当する可変
長符号が見つからない場合には検索エラー信号を出力す
る複数の第2の復号手段と、上記複数の第2の復号化手
段の中から、上記第1のデータ長に応じて選択した第2
復号手段の復号化データまたは上記検索エラー信号を出
力し、該当する第2の復号手段が無い場合には選択エラ
ー信号を出力する選択手段と、上記選択手段において選
択された第2の復号手段の復号化データと、当該復号化
データに対応する上記可変長符号のデータ長とに基づい
て、当該復号化データに対応する符号化データのデータ
長を算出し、第2のデータ長として出力する第2のデー
タ長算出手段と、上記選択手段において選択された第2
の復号手段から上記検索エラー信号が出力される場合、
または上記選択手段から上記選択エラー信号が出力され
る場合に、上記第2の復号手段の復号化データが無効で
あることを知らせる無効信号を生成する無効信号生成手
段と、上記第1のデータ長と上記第2のデータ長との和
に応じたデータ数だけ、上記データ抽出手段のデータ列
抽出位置を上記符号化データストリームの末尾側にシフ
トさせ、上記無効信号が生成される場合には、上記第1
のデータ長に応じたデータ数だけ上記抽出位置を上記末
尾側へシフトさせるデータ抽出位置シフト手段とを有す
る。
め、本発明の第1の観点に係るデータ復号化装置は、供
給される符号化データストリームを復号化するデータ復
号化装置であって、上記符号化データストリームの先頭
から所定データ長のデータ列を抽出するデータ抽出手段
と、上記データ抽出手段において抽出されたデータ列の
先頭から、所定の可変長符号テーブルに含まれる可変長
符号を検索し、当該検索した可変長符号に対応する復号
化データを出力する第1の復号手段と、上記第1の復号
手段の復号化データと、当該復号化データに対応する上
記可変長符号のデータ長とに基づいて、当該復号化デー
タに対応する符号化データのデータ長を算出し、第1の
データ長として出力する第1のデータ長算出手段と、上
記データ抽出手段において抽出されたデータ列の先頭に
対して複数の異なるデータ数だけ末尾側にずれたデータ
位置から、上記可変長符号テーブルの一部の可変長符号
をそれぞれ検索し、当該検索した可変長符号に対応する
復号化データを出力し、当該検索において該当する可変
長符号が見つからない場合には検索エラー信号を出力す
る複数の第2の復号手段と、上記複数の第2の復号化手
段の中から、上記第1のデータ長に応じて選択した第2
復号手段の復号化データまたは上記検索エラー信号を出
力し、該当する第2の復号手段が無い場合には選択エラ
ー信号を出力する選択手段と、上記選択手段において選
択された第2の復号手段の復号化データと、当該復号化
データに対応する上記可変長符号のデータ長とに基づい
て、当該復号化データに対応する符号化データのデータ
長を算出し、第2のデータ長として出力する第2のデー
タ長算出手段と、上記選択手段において選択された第2
の復号手段から上記検索エラー信号が出力される場合、
または上記選択手段から上記選択エラー信号が出力され
る場合に、上記第2の復号手段の復号化データが無効で
あることを知らせる無効信号を生成する無効信号生成手
段と、上記第1のデータ長と上記第2のデータ長との和
に応じたデータ数だけ、上記データ抽出手段のデータ列
抽出位置を上記符号化データストリームの末尾側にシフ
トさせ、上記無効信号が生成される場合には、上記第1
のデータ長に応じたデータ数だけ上記抽出位置を上記末
尾側へシフトさせるデータ抽出位置シフト手段とを有す
る。
【0013】本発明の第1の観点に係るデータ復号化装
置によれば、上記データ抽出手段において、上記符号化
データストリームの先頭から所定データ長のデータ列が
抽出され、この抽出されたデータ列の先頭から、所定の
可変長符号テーブルに含まれる可変長符号が第1の復号
手段において検索される。そして、この検索された可変
長符号に対応する復号化データが出力される。出力され
た上記第1の復号手段の復号化データと、当該復号化デ
ータに対応する上記可変長符号のデータ長とに基づい
て、当該復号化データに対応する符号化データのデータ
長が第1のデータ長算出手段において算出され、第1の
データ長として出力される。また、上記データ抽出手段
において抽出されたデータ列の先頭に対して複数の異な
るデータ数だけ末尾側にずれたデータ位置から、上記可
変長符号テーブルの一部の可変長符号が第2の復号手段
においてそれぞれ検索され、当該検索された可変長符号
に対応する復号化データが出力される。当該検索におい
て該当する可変長符号が見つからない場合には、検索エ
ラー信号が出力される。上記複数の第2の復号化手段の
中から、上記第1のデータ長に応じて選択された第2復
号手段の復号化データまたは上記検索エラー信号が上記
選択手段から出力される。該当する第2の復号手段が無
い場合には選択エラー信号が出力される。上記選択手段
において選択された第2の復号手段の復号化データと、
当該復号化データに対応する上記可変長符号のデータ長
とに基づいて、当該復号化データに対応する符号化デー
タのデータ長が第2のデータ長算出手段において算出さ
れ、第2のデータ長として出力される。上記選択手段に
おいて選択された第2の復号手段から上記検索エラー信
号が出力される場合、または上記選択手段から上記選択
エラー信号が出力される場合には、上記第2の復号手段
の復号化データが無効であることを知らせる無効信号が
上記無効信号生成手段において生成される。上記データ
抽出手段のデータ列抽出位置は、上記データ抽出位置シ
フト手段によって、上記第1のデータ長と上記第2のデ
ータ長との和に応じたデータ数だけ上記符号化データス
トリームの末尾側にシフトされる。上記無効信号が生成
される場合には、上記第1のデータ長に応じたデータ数
だけ上記抽出位置を上記末尾側へシフトされる。
置によれば、上記データ抽出手段において、上記符号化
データストリームの先頭から所定データ長のデータ列が
抽出され、この抽出されたデータ列の先頭から、所定の
可変長符号テーブルに含まれる可変長符号が第1の復号
手段において検索される。そして、この検索された可変
長符号に対応する復号化データが出力される。出力され
た上記第1の復号手段の復号化データと、当該復号化デ
ータに対応する上記可変長符号のデータ長とに基づい
て、当該復号化データに対応する符号化データのデータ
長が第1のデータ長算出手段において算出され、第1の
データ長として出力される。また、上記データ抽出手段
において抽出されたデータ列の先頭に対して複数の異な
るデータ数だけ末尾側にずれたデータ位置から、上記可
変長符号テーブルの一部の可変長符号が第2の復号手段
においてそれぞれ検索され、当該検索された可変長符号
に対応する復号化データが出力される。当該検索におい
て該当する可変長符号が見つからない場合には、検索エ
ラー信号が出力される。上記複数の第2の復号化手段の
中から、上記第1のデータ長に応じて選択された第2復
号手段の復号化データまたは上記検索エラー信号が上記
選択手段から出力される。該当する第2の復号手段が無
い場合には選択エラー信号が出力される。上記選択手段
において選択された第2の復号手段の復号化データと、
当該復号化データに対応する上記可変長符号のデータ長
とに基づいて、当該復号化データに対応する符号化デー
タのデータ長が第2のデータ長算出手段において算出さ
れ、第2のデータ長として出力される。上記選択手段に
おいて選択された第2の復号手段から上記検索エラー信
号が出力される場合、または上記選択手段から上記選択
エラー信号が出力される場合には、上記第2の復号手段
の復号化データが無効であることを知らせる無効信号が
上記無効信号生成手段において生成される。上記データ
抽出手段のデータ列抽出位置は、上記データ抽出位置シ
フト手段によって、上記第1のデータ長と上記第2のデ
ータ長との和に応じたデータ数だけ上記符号化データス
トリームの末尾側にシフトされる。上記無効信号が生成
される場合には、上記第1のデータ長に応じたデータ数
だけ上記抽出位置を上記末尾側へシフトされる。
【0014】また、上記符号化データストリームは、上
記可変長符号と付加データとで構成された符号化データ
を含み、上記第1の復号手段の復号化データに含まれた
上記付加データのデータ長の情報に基づいて、上記デー
タ抽出手段の抽出データ列から上記付加データを更に抽
出する第1の付加データ抽出手段と、上記選択手段から
出力される復号化データに含まれた上記付加データのデ
ータ長の情報に基づいて、上記データ抽出手段の抽出デ
ータ列から上記付加データを更に抽出する第2の付加デ
ータ抽出手段とを有しても良い。
記可変長符号と付加データとで構成された符号化データ
を含み、上記第1の復号手段の復号化データに含まれた
上記付加データのデータ長の情報に基づいて、上記デー
タ抽出手段の抽出データ列から上記付加データを更に抽
出する第1の付加データ抽出手段と、上記選択手段から
出力される復号化データに含まれた上記付加データのデ
ータ長の情報に基づいて、上記データ抽出手段の抽出デ
ータ列から上記付加データを更に抽出する第2の付加デ
ータ抽出手段とを有しても良い。
【0015】また、上記第1の復号手段の復号化データ
と上記選択手段に選択された第2の復号手段の復号化デ
ータとに含まれる上記連続数の情報に応じて、上記単位
ブロック内で復号化されたデータの数を計数し、上記無
効信号が生成される場合に、上記選択された第2の復号
手段の復号化データに含まれる上記連続数の情報を無効
にして上記計数を行ない、当該計数値が上記所定データ
数に達した場合には、当該計数値を初期化する計数手段
を有しても良い。また、上記計数手段は、計数値が上記
所定データ数より大きくなる場合に計数エラー信号を出
力し、上記無効信号生成手段は、上記第1の復号手段の
復号化データに上記単位ブロックの末尾を示す所定の情
報が含まれる場合、または上記計数手段において計数エ
ラー信号が出力される場合に上記無効信号を生成しても
良い。
と上記選択手段に選択された第2の復号手段の復号化デ
ータとに含まれる上記連続数の情報に応じて、上記単位
ブロック内で復号化されたデータの数を計数し、上記無
効信号が生成される場合に、上記選択された第2の復号
手段の復号化データに含まれる上記連続数の情報を無効
にして上記計数を行ない、当該計数値が上記所定データ
数に達した場合には、当該計数値を初期化する計数手段
を有しても良い。また、上記計数手段は、計数値が上記
所定データ数より大きくなる場合に計数エラー信号を出
力し、上記無効信号生成手段は、上記第1の復号手段の
復号化データに上記単位ブロックの末尾を示す所定の情
報が含まれる場合、または上記計数手段において計数エ
ラー信号が出力される場合に上記無効信号を生成しても
良い。
【0016】また、上記複数の第2の復号化手段の少な
くとも一部から、上記第1のデータ長ないし第nのデー
タ長(符号nは、所定の自然数Nに対して1≦n≦Nを
満たす任意の自然数を示す)の総和に応じて選択した第
2の復号手段の復号化データおよび上記検索エラー信号
を出力し、該当する第2の復号手段が無い場合には第n
の選択エラー信号を出力する複数の選択手段と、上記選
択手段において上記第1のデータ長ないし第nのデータ
長の総和に応じて選択された第2の復号部の復号化デー
タと、当該復号化データに対応する上記可変長符号のデ
ータ長とに基づいて、当該復号化データに対応する符号
化データのデータ長を算出し、第(n+1)のデータ長
として出力する複数の第2のデータ長算出手段と、上記
選択手段において上記第1のデータ長ないし第nのデー
タ長の総和に応じて選択された第2の復号手段から上記
検索エラー信号が出力される場合、または上記選択手段
から上記第nの選択エラー信号が出力される場合に、上
記第1のデータ長ないし第mのデータ長(符号mは、所
定の自然数Nに対してn≦m≦Nを満たす任意の自然数
を示す)の総和に応じて選択された第2の復号手段の復
号化データが全て無効であることを知らせる第nの無効
信号を生成する複数の無効信号生成手段とを有し、上記
データ抽出位置シフト手段は、上記第1のデータ長ない
し第Nのデータ長の総和に応じたデータ数だけ、上記デ
ータ抽出手段のデータ列抽出位置を上記符号化データス
トリームの末尾側にシフトさせ、上記第nの無効信号が
生成される場合には、上記第1のデータ長ないし第nの
データ長の総和に応じたデータ数だけ上記抽出位置を上
記末尾側へシフトさせても良い。この場合、さらに、上
記第1の復号手段の復号化データと上記複数の選択手段
において選択された第2の復号手段の復号化データとに
含まれる上記連続数の情報に応じて、上記単位ブロック
内で復号化されたデータの数を計数し、上記第nの無効
信号が生成される場合は、上記第1のデータ長ないし第
mのデータ長の総和に応じて選択された第2の復号手段
の復号化データに含まれる上記連続数の情報を全て無効
にして上記計数を行ない、当該計数値が上記所定データ
数に達した場合には、当該計数値を初期化する計数手段
を有しても良い。また、上記計数手段は、計数値が上記
所定データ数より大きくなる場合に、上記第1のデータ
長ないし第mのデータ長の総和に応じて選択された第2
の復号手段の復号化データに含まれる上記連続数の情報
を全て無効にした計数値が上記所定データ数より大きく
なる最小の自然数nにおいて、第nの計数エラー信号を
出力し、上記無効信号生成手段は、上記第1の復号手段
の復号化データに上記単位ブロックの末尾を示す所定の
情報が含まれる場合に第1の無効信号を生成し、第1の
データ長ないし第nのデータ長の総和に応じて選択され
た第2の復号手段の復号化データに当該所定の情報が含
まれる場合に第(n+1)の無効信号を生成し、上記計
数手段において第nの計数エラー信号が出力される場合
に第nの無効信号を生成しても良い。
くとも一部から、上記第1のデータ長ないし第nのデー
タ長(符号nは、所定の自然数Nに対して1≦n≦Nを
満たす任意の自然数を示す)の総和に応じて選択した第
2の復号手段の復号化データおよび上記検索エラー信号
を出力し、該当する第2の復号手段が無い場合には第n
の選択エラー信号を出力する複数の選択手段と、上記選
択手段において上記第1のデータ長ないし第nのデータ
長の総和に応じて選択された第2の復号部の復号化デー
タと、当該復号化データに対応する上記可変長符号のデ
ータ長とに基づいて、当該復号化データに対応する符号
化データのデータ長を算出し、第(n+1)のデータ長
として出力する複数の第2のデータ長算出手段と、上記
選択手段において上記第1のデータ長ないし第nのデー
タ長の総和に応じて選択された第2の復号手段から上記
検索エラー信号が出力される場合、または上記選択手段
から上記第nの選択エラー信号が出力される場合に、上
記第1のデータ長ないし第mのデータ長(符号mは、所
定の自然数Nに対してn≦m≦Nを満たす任意の自然数
を示す)の総和に応じて選択された第2の復号手段の復
号化データが全て無効であることを知らせる第nの無効
信号を生成する複数の無効信号生成手段とを有し、上記
データ抽出位置シフト手段は、上記第1のデータ長ない
し第Nのデータ長の総和に応じたデータ数だけ、上記デ
ータ抽出手段のデータ列抽出位置を上記符号化データス
トリームの末尾側にシフトさせ、上記第nの無効信号が
生成される場合には、上記第1のデータ長ないし第nの
データ長の総和に応じたデータ数だけ上記抽出位置を上
記末尾側へシフトさせても良い。この場合、さらに、上
記第1の復号手段の復号化データと上記複数の選択手段
において選択された第2の復号手段の復号化データとに
含まれる上記連続数の情報に応じて、上記単位ブロック
内で復号化されたデータの数を計数し、上記第nの無効
信号が生成される場合は、上記第1のデータ長ないし第
mのデータ長の総和に応じて選択された第2の復号手段
の復号化データに含まれる上記連続数の情報を全て無効
にして上記計数を行ない、当該計数値が上記所定データ
数に達した場合には、当該計数値を初期化する計数手段
を有しても良い。また、上記計数手段は、計数値が上記
所定データ数より大きくなる場合に、上記第1のデータ
長ないし第mのデータ長の総和に応じて選択された第2
の復号手段の復号化データに含まれる上記連続数の情報
を全て無効にした計数値が上記所定データ数より大きく
なる最小の自然数nにおいて、第nの計数エラー信号を
出力し、上記無効信号生成手段は、上記第1の復号手段
の復号化データに上記単位ブロックの末尾を示す所定の
情報が含まれる場合に第1の無効信号を生成し、第1の
データ長ないし第nのデータ長の総和に応じて選択され
た第2の復号手段の復号化データに当該所定の情報が含
まれる場合に第(n+1)の無効信号を生成し、上記計
数手段において第nの計数エラー信号が出力される場合
に第nの無効信号を生成しても良い。
【0017】本発明の第2の観点に係るデータ復号化方
法は、供給される符号化データストリームを復号化する
データ復号化方法であって、上記符号化データストリー
ムの先頭から所定データ長のデータ列を抽出するステッ
プと、上記抽出したデータ列の先頭から、所定の可変長
符号テーブルに含まれる可変長符号を検索し、当該検索
した可変長符号に対応する第1の復号化データを生成す
るステップと、上記生成された第1の復号化データと、
当該第1の復号化データに対応する上記可変長符号のデ
ータ長とに基づいて、当該第1の復号化データに対応す
る符号化データのデータ長を第1のデータ長として算出
するステップと、上記データ抽出ステップにおいて抽出
されたデータ列の先頭に対して複数の異なるデータ数だ
け末尾側にずれたデータ位置から、上記第1の可変長符
号テーブルの一部の可変長符号をそれぞれ検索し、当該
検索した可変長符号に対応する第2の復号化データを生
成し、当該検索において該当する可変長符号が見つから
ない場合には検索エラー信号を生成する第2の復号ステ
ップと、上記生成された複数の第2の復号化データまた
は検索エラー信号の中から、上記第1のデータ長に応じ
たデータ位置における上記可変長符号の検索によって生
成された第2の復号化データまたは検索エラー信号を選
択し、該当する第2の復号化データまたは検索エラー信
号が無い場合には選択エラー信号を生成するステップ
と、上記選択された第2の復号化データと、当該第2の
復号化データに対応する上記可変長符号のデータ長とに
基づいて、当該第2の復号化データに対応する符号化デ
ータのデータ長を第2のデータ長として算出するステッ
プと、上記選択ステップにおいて上記検索エラー信号が
選択される場合、または上記選択エラー信号が生成され
る場合に、上記第2の復号化データが無効であることを
知らせる無効信号を生成するステップと、上記第1のデ
ータ長と上記第2のデータ長との和に応じたデータ数だ
け、上記データ抽出ステップのデータ列抽出位置を上記
符号化データストリームの末尾側にシフトさせ、上記無
効信号が生成される場合には、上記第1のデータ長に応
じたデータ数だけ上記抽出位置を上記末尾側へシフトさ
せるステップとを有する。
法は、供給される符号化データストリームを復号化する
データ復号化方法であって、上記符号化データストリー
ムの先頭から所定データ長のデータ列を抽出するステッ
プと、上記抽出したデータ列の先頭から、所定の可変長
符号テーブルに含まれる可変長符号を検索し、当該検索
した可変長符号に対応する第1の復号化データを生成す
るステップと、上記生成された第1の復号化データと、
当該第1の復号化データに対応する上記可変長符号のデ
ータ長とに基づいて、当該第1の復号化データに対応す
る符号化データのデータ長を第1のデータ長として算出
するステップと、上記データ抽出ステップにおいて抽出
されたデータ列の先頭に対して複数の異なるデータ数だ
け末尾側にずれたデータ位置から、上記第1の可変長符
号テーブルの一部の可変長符号をそれぞれ検索し、当該
検索した可変長符号に対応する第2の復号化データを生
成し、当該検索において該当する可変長符号が見つから
ない場合には検索エラー信号を生成する第2の復号ステ
ップと、上記生成された複数の第2の復号化データまた
は検索エラー信号の中から、上記第1のデータ長に応じ
たデータ位置における上記可変長符号の検索によって生
成された第2の復号化データまたは検索エラー信号を選
択し、該当する第2の復号化データまたは検索エラー信
号が無い場合には選択エラー信号を生成するステップ
と、上記選択された第2の復号化データと、当該第2の
復号化データに対応する上記可変長符号のデータ長とに
基づいて、当該第2の復号化データに対応する符号化デ
ータのデータ長を第2のデータ長として算出するステッ
プと、上記選択ステップにおいて上記検索エラー信号が
選択される場合、または上記選択エラー信号が生成され
る場合に、上記第2の復号化データが無効であることを
知らせる無効信号を生成するステップと、上記第1のデ
ータ長と上記第2のデータ長との和に応じたデータ数だ
け、上記データ抽出ステップのデータ列抽出位置を上記
符号化データストリームの末尾側にシフトさせ、上記無
効信号が生成される場合には、上記第1のデータ長に応
じたデータ数だけ上記抽出位置を上記末尾側へシフトさ
せるステップとを有する。
【0018】また、上記生成された複数の第2の復号化
データまたは検索エラー信号の少なくとも一部から、上
記第1のデータ長ないし第nのデータ長の総和に応じた
データ位置における可変長符号の検索によって生成され
た第2の復号化データまたは検索エラー信号を選択し、
該当する第2の復号化データまたは検索エラー信号が無
い場合には第nの選択エラー信号を生成するステップ
と、上記選択ステップにおいて上記第1のデータ長ない
し第nのデータ長の総和に応じて上記検索エラー信号が
選択される場合、上記第1のデータ長ないし第mのデー
タ長(符号mは、所定の自然数Nに対してn≦m≦Nを
満たす任意の自然数を示す)の総和に応じて選択された
第2の復号化データが全て無効であることを知らせる第
nの無効信号を生成するステップと、上記第1のデータ
長ないし第nのデータ長の総和に応じて選択された第2
の復号化データと、当該第2の復号化データに対応する
上記可変長符号のデータ長とに基づいて、当該第2の復
号化データに対応する符号化データのデータ長を第(n
+1)のデータ長として算出するステップとを、所定の
自然数Nに対して1≦n≦Nを満たす範囲で反復し、上
記データの抽出位置をシフトするステップにおいて、上
記第1のデータ長ないし第Nのデータ長の総和に応じた
データ数だけ、上記抽出位置を上記符号化データストリ
ームの末尾側にシフトさせ、上記第nの無効信号が生成
される場合には、上記第1のデータ長ないし第nのデー
タ長の総和に応じたデータ数だけ上記抽出位置を上記末
尾側へシフトさせても良い。
データまたは検索エラー信号の少なくとも一部から、上
記第1のデータ長ないし第nのデータ長の総和に応じた
データ位置における可変長符号の検索によって生成され
た第2の復号化データまたは検索エラー信号を選択し、
該当する第2の復号化データまたは検索エラー信号が無
い場合には第nの選択エラー信号を生成するステップ
と、上記選択ステップにおいて上記第1のデータ長ない
し第nのデータ長の総和に応じて上記検索エラー信号が
選択される場合、上記第1のデータ長ないし第mのデー
タ長(符号mは、所定の自然数Nに対してn≦m≦Nを
満たす任意の自然数を示す)の総和に応じて選択された
第2の復号化データが全て無効であることを知らせる第
nの無効信号を生成するステップと、上記第1のデータ
長ないし第nのデータ長の総和に応じて選択された第2
の復号化データと、当該第2の復号化データに対応する
上記可変長符号のデータ長とに基づいて、当該第2の復
号化データに対応する符号化データのデータ長を第(n
+1)のデータ長として算出するステップとを、所定の
自然数Nに対して1≦n≦Nを満たす範囲で反復し、上
記データの抽出位置をシフトするステップにおいて、上
記第1のデータ長ないし第Nのデータ長の総和に応じた
データ数だけ、上記抽出位置を上記符号化データストリ
ームの末尾側にシフトさせ、上記第nの無効信号が生成
される場合には、上記第1のデータ長ないし第nのデー
タ長の総和に応じたデータ数だけ上記抽出位置を上記末
尾側へシフトさせても良い。
【0019】
【発明の実施の形態】以下、本発明の2つの実施形態に
ついて、JPEG符号化データストリームを復号化する
JPEG復号化装置に本発明を適用した場合を例として
説明するが、その前に、以降の説明を理解し易くするた
め、JPEG符号化方式の概要についてまず簡単に説明
する。
ついて、JPEG符号化データストリームを復号化する
JPEG復号化装置に本発明を適用した場合を例として
説明するが、その前に、以降の説明を理解し易くするた
め、JPEG符号化方式の概要についてまず簡単に説明
する。
【0020】自然画像は隣接する画素値が相関性を有し
ている場合が多く、ある微小な領域内で見た場合におけ
る画素値の空間的な変動(空間周波数)が小さくなる性
質がある。このような自然画像を直交変換により空間周
波数領域のデータへ変換すると、変換されたデータは低
周波成分が高周波成分より大きくなる傾向がある。そこ
で、空間周波数領域のデータを符号化する場合に、高周
波側のデータに割り当てる符号長を低周波側のデータに
比べて短くすると、データ全体の平均符号長が短くなる
ので、情報量を圧縮することができる。
ている場合が多く、ある微小な領域内で見た場合におけ
る画素値の空間的な変動(空間周波数)が小さくなる性
質がある。このような自然画像を直交変換により空間周
波数領域のデータへ変換すると、変換されたデータは低
周波成分が高周波成分より大きくなる傾向がある。そこ
で、空間周波数領域のデータを符号化する場合に、高周
波側のデータに割り当てる符号長を低周波側のデータに
比べて短くすると、データ全体の平均符号長が短くなる
ので、情報量を圧縮することができる。
【0021】JPEGのDCT利用型符号化方式では、
入力の画像データが8×8画素ごとのブロックに分割さ
れ、この各ブロックに対して直交変換の1つであるDC
T(Discrete Cosine Transform :離散コサイン変換)
が実行される。これにより、1ブロックの64個の画像
データは64個のDCT係数に変換される。このDCT
係数は、係数ごとに定められた量子化ステップで量子化
された後、1個のDC成分とそれ以外の63個のAC成
分とがそれぞれ異なる方法でハフマン符号に符号化され
る。
入力の画像データが8×8画素ごとのブロックに分割さ
れ、この各ブロックに対して直交変換の1つであるDC
T(Discrete Cosine Transform :離散コサイン変換)
が実行される。これにより、1ブロックの64個の画像
データは64個のDCT係数に変換される。このDCT
係数は、係数ごとに定められた量子化ステップで量子化
された後、1個のDC成分とそれ以外の63個のAC成
分とがそれぞれ異なる方法でハフマン符号に符号化され
る。
【0022】DCT係数がDC成分の場合は、連続した
ブロック間におけるDCT係数の差分値に対して、その
大きさに応じて定められたハフマン符号が生成される。
これは、自然画像においては、隣接するブロック間のD
C成分が相関性を有している場合が多く、差分値の分散
が小さくなるためである。また、DC成分のハフマン符
号には4ビットのカテゴリSSSSと呼ばれるデータが
それぞれ対応しており、カテゴリSSSSによって指定
されるデータ長を有した付加ビットがハフマン符号に続
いて付加され、1つの符号化データが構成される。この
付加ビットによって、差分値の具体的な大きさが指定さ
れる。
ブロック間におけるDCT係数の差分値に対して、その
大きさに応じて定められたハフマン符号が生成される。
これは、自然画像においては、隣接するブロック間のD
C成分が相関性を有している場合が多く、差分値の分散
が小さくなるためである。また、DC成分のハフマン符
号には4ビットのカテゴリSSSSと呼ばれるデータが
それぞれ対応しており、カテゴリSSSSによって指定
されるデータ長を有した付加ビットがハフマン符号に続
いて付加され、1つの符号化データが構成される。この
付加ビットによって、差分値の具体的な大きさが指定さ
れる。
【0023】DCT係数がAC成分の場合は、空間周波
数の大きさに応じた順序に並び替えられたDCT係数の
データ列を作り、このデータ列においてゼロ値のDCT
係数が連続する個数(ゼロランレングスRRRR)と、
このゼロ値のDCT係数に続く非ゼロのDCT係数の大
きさに応じて定められたカテゴリSSSSとの組み合わ
せに応じて、1つのハフマン符号が生成される。これ
は、量子化後のDCT変換係数が高周波側でゼロになり
易い性質を利用して圧縮効率を高めるためである。
数の大きさに応じた順序に並び替えられたDCT係数の
データ列を作り、このデータ列においてゼロ値のDCT
係数が連続する個数(ゼロランレングスRRRR)と、
このゼロ値のDCT係数に続く非ゼロのDCT係数の大
きさに応じて定められたカテゴリSSSSとの組み合わ
せに応じて、1つのハフマン符号が生成される。これ
は、量子化後のDCT変換係数が高周波側でゼロになり
易い性質を利用して圧縮効率を高めるためである。
【0024】なお、上述のデータ列においてゼロ値のA
C成分が16個以上連続する場合には、この16個の連
続するゼロ値のAC成分に対して1つの符号ZRL(ze
ro run length)が生成される。また、1ブロックの最
後までゼロ値のAC成分が続く場合には、その個数に係
わらず1つの符号EOB(end of block)が生成され
る。いずれの場合にも、複数のゼロ値のAC成分に対し
て1つの符号が一括して与えられることにより圧縮効率
が高められる。
C成分が16個以上連続する場合には、この16個の連
続するゼロ値のAC成分に対して1つの符号ZRL(ze
ro run length)が生成される。また、1ブロックの最
後までゼロ値のAC成分が続く場合には、その個数に係
わらず1つの符号EOB(end of block)が生成され
る。いずれの場合にも、複数のゼロ値のAC成分に対し
て1つの符号が一括して与えられることにより圧縮効率
が高められる。
【0025】<第1の実施形態>図1は、本発明に係る
JPEG復号化装置の概略的な構成例を示すブロック図
である。図1に示すJPEG復号化装置は、バッファ1
001、ハフマン復号化器1002、逆量子化器100
3および逆DCT器1004を有する。
JPEG復号化装置の概略的な構成例を示すブロック図
である。図1に示すJPEG復号化装置は、バッファ1
001、ハフマン復号化器1002、逆量子化器100
3および逆DCT器1004を有する。
【0026】バッファ1001は、入力されるJPEG
符号化データを一時的に蓄積し、要求に応じて順次ハフ
マン復号化装置1002に出力する。ハフマン復号化器
1002は、バッファ1001に蓄積されたJPEG符
号化データを順次読み出し、そのハフマン符号を復号化
してDCT係数を再生する。逆量子化器1003は、ハ
フマン復号化器1002において再生されたDCT係数
に対して所定の逆量子化係数を乗ずる逆量子化処理を行
う。逆DCT器1004は、逆量子化器1003におい
て逆量子化されたDCT係数に対して8×8画素ブロッ
クごとに逆DCTを行ない、元画像の各画素データを再
生する。
符号化データを一時的に蓄積し、要求に応じて順次ハフ
マン復号化装置1002に出力する。ハフマン復号化器
1002は、バッファ1001に蓄積されたJPEG符
号化データを順次読み出し、そのハフマン符号を復号化
してDCT係数を再生する。逆量子化器1003は、ハ
フマン復号化器1002において再生されたDCT係数
に対して所定の逆量子化係数を乗ずる逆量子化処理を行
う。逆DCT器1004は、逆量子化器1003におい
て逆量子化されたDCT係数に対して8×8画素ブロッ
クごとに逆DCTを行ない、元画像の各画素データを再
生する。
【0027】上述したハフマン復号化器1002の更に
詳細な構成例について説明する。図2は、本発明の第1
の実施形態に係る、図1のハフマン復号化器1002の
構成例を示す概略的なブロック図である。図2に示すハ
フマン復号化器は、データ抽出部10、第1の復号部2
0、第1のデータ長算出部30、第2の復号部41〜第
2の復号部44、選択部50、第2のデータ長算出部6
0、無効信号生成部70、データ抽出位置シフト部8
0、計数部90、DCT係数出力部101およびDCT
係数出力部102を有する。
詳細な構成例について説明する。図2は、本発明の第1
の実施形態に係る、図1のハフマン復号化器1002の
構成例を示す概略的なブロック図である。図2に示すハ
フマン復号化器は、データ抽出部10、第1の復号部2
0、第1のデータ長算出部30、第2の復号部41〜第
2の復号部44、選択部50、第2のデータ長算出部6
0、無効信号生成部70、データ抽出位置シフト部8
0、計数部90、DCT係数出力部101およびDCT
係数出力部102を有する。
【0028】データ抽出部10は、バッファ1001に
蓄積されたJPEG符号化データストリームDinの先
頭から、27ビットのデータ列を抽出する。ハフマン符
号は最長で16ビットであり、付加ビットは最長で11
ビットであるので、ハフマン符号と付加ビットとで構成
される1つのJPEG符号化データのデータ長は最長で
16+11=27ビットとなる。したがって、データ抽
出部10により1つ分のJPEG符号化データが確実に
抽出される。また、データ抽出部10は、そのデータ抽
出位置をJPEG符号化データストリームDinの先頭
から末尾に向かってシフト信号Sftに応じてシフトさ
せる。
蓄積されたJPEG符号化データストリームDinの先
頭から、27ビットのデータ列を抽出する。ハフマン符
号は最長で16ビットであり、付加ビットは最長で11
ビットであるので、ハフマン符号と付加ビットとで構成
される1つのJPEG符号化データのデータ長は最長で
16+11=27ビットとなる。したがって、データ抽
出部10により1つ分のJPEG符号化データが確実に
抽出される。また、データ抽出部10は、そのデータ抽
出位置をJPEG符号化データストリームDinの先頭
から末尾に向かってシフト信号Sftに応じてシフトさ
せる。
【0029】第1の復号部20は、データ抽出部10に
おいて抽出されたデータ列Dsの先頭ビットから、ハフ
マン符号の最長データに相当する16ビット分のデータ
列を入力し、この入力したデータ列の中から所定のハフ
マン符号テーブルに含まれるハフマン符号を検索して、
対応する復号化データRS1を出力する。入力される符
号化データがDCT係数のDC成分の場合には、このD
C成分の具体的な値を指定する付加ビットのカテゴリS
SSSが復号化データRS1として出力される。また、
入力される符号化データがDCT係数のAC成分の場合
には、値ゼロのAC成分が連続する数を指定するゼロラ
ンレングスRRRRと、このゼロ値のAC成分に続く非
ゼロのAC成分の具体的な値を指定する付加ビットのカ
テゴリSSSSとが復号化データRS1として出力され
る。このように、第1の符号部20は、DCT係数のD
C成分およびAC成分を共に復号化することができる。
おいて抽出されたデータ列Dsの先頭ビットから、ハフ
マン符号の最長データに相当する16ビット分のデータ
列を入力し、この入力したデータ列の中から所定のハフ
マン符号テーブルに含まれるハフマン符号を検索して、
対応する復号化データRS1を出力する。入力される符
号化データがDCT係数のDC成分の場合には、このD
C成分の具体的な値を指定する付加ビットのカテゴリS
SSSが復号化データRS1として出力される。また、
入力される符号化データがDCT係数のAC成分の場合
には、値ゼロのAC成分が連続する数を指定するゼロラ
ンレングスRRRRと、このゼロ値のAC成分に続く非
ゼロのAC成分の具体的な値を指定する付加ビットのカ
テゴリSSSSとが復号化データRS1として出力され
る。このように、第1の符号部20は、DCT係数のD
C成分およびAC成分を共に復号化することができる。
【0030】この第1の復号部20は、例えば図2に示
すように、入力される16ビットのデータ列から所定の
ハフマン符号を検索して、それに対応する復号テーブル
のアドレスを生成するアドレス算出部201と、この生
成されたアドレスに格納されたDC成分のカテゴリSS
SS、またはAC成分のゼロランレングスRRRRおよ
びカテゴリSSSSを復号化データRS1として出力す
る復号テーブル202とによって構成することができ
る。
すように、入力される16ビットのデータ列から所定の
ハフマン符号を検索して、それに対応する復号テーブル
のアドレスを生成するアドレス算出部201と、この生
成されたアドレスに格納されたDC成分のカテゴリSS
SS、またはAC成分のゼロランレングスRRRRおよ
びカテゴリSSSSを復号化データRS1として出力す
る復号テーブル202とによって構成することができ
る。
【0031】第1のデータ長算出部30は、第1の復号
部20の復号化データRS1と、この復号化データRS
1に対応するハフマン符号のデータ長とに基づいて、復
号化データRS1に対応する符号化データ(ハフマン符
号+付加ビット)のデータ長を算出し、データ長L1と
して出力する。
部20の復号化データRS1と、この復号化データRS
1に対応するハフマン符号のデータ長とに基づいて、復
号化データRS1に対応する符号化データ(ハフマン符
号+付加ビット)のデータ長を算出し、データ長L1と
して出力する。
【0032】第2の復号部41〜第2の復号部44は、
データ抽出部10において抽出されたデータ列Dsの先
頭ビットに対してそれぞれ3ビット〜6ビットだけデー
タストリームの末尾側にずれたデータ位置から5ビット
分のデータ列を入力し、この入力したデータ列に含まれ
る所定のハフマン符号をそれぞれ検索する。そして、検
索したハフマン符号に対応する復号化データRS21〜
復号化データRS24をそれぞれ出力する。なお、上述
したように、ハフマン符号のデータ長は最長で16ビッ
トだが、この第2の復号部において復号できるハフマン
符号のデータ長は最長で5ビットまでなので、第2の復
号部が持つハフマン符号のデータテーブルは、全てのハ
フマン符号を復号できる第1の復号部20のデータテー
ブルの一部分だけで良い。
データ抽出部10において抽出されたデータ列Dsの先
頭ビットに対してそれぞれ3ビット〜6ビットだけデー
タストリームの末尾側にずれたデータ位置から5ビット
分のデータ列を入力し、この入力したデータ列に含まれ
る所定のハフマン符号をそれぞれ検索する。そして、検
索したハフマン符号に対応する復号化データRS21〜
復号化データRS24をそれぞれ出力する。なお、上述
したように、ハフマン符号のデータ長は最長で16ビッ
トだが、この第2の復号部において復号できるハフマン
符号のデータ長は最長で5ビットまでなので、第2の復
号部が持つハフマン符号のデータテーブルは、全てのハ
フマン符号を復号できる第1の復号部20のデータテー
ブルの一部分だけで良い。
【0033】また、第2の復号部41〜第2の復号部4
4は、入力したデータ列に含まれるハフマン符号のデー
タ長が5ビットよりも長く、該当するハフマン符号をデ
ータテーブルから見つけることができない場合に、それ
ぞれ検索エラー信号Esr1〜検索エラー信号Esr4
を出力する。
4は、入力したデータ列に含まれるハフマン符号のデー
タ長が5ビットよりも長く、該当するハフマン符号をデ
ータテーブルから見つけることができない場合に、それ
ぞれ検索エラー信号Esr1〜検索エラー信号Esr4
を出力する。
【0034】選択部50は、第2の復号部41〜第2の
復号部44の中から、データ長L1に応じて1つの第2
の復号部を選択し、その復号化データRs2または検索
エラー信号Esrを出力する。図2の例では、データ長
L1が3ビットの場合に第2の復号部41を、4ビット
の場合に第2の復号部42を、5ビットの場合に第2の
復号部43を、6ビットの場合に第2の復号部44を選
択する。また、これに該当する第2の復号部が無い場
合、すなわちデータ長L1が3ビット〜6ビットの範囲
に含まれない場合には、選択エラー信号Eselを出力
する。
復号部44の中から、データ長L1に応じて1つの第2
の復号部を選択し、その復号化データRs2または検索
エラー信号Esrを出力する。図2の例では、データ長
L1が3ビットの場合に第2の復号部41を、4ビット
の場合に第2の復号部42を、5ビットの場合に第2の
復号部43を、6ビットの場合に第2の復号部44を選
択する。また、これに該当する第2の復号部が無い場
合、すなわちデータ長L1が3ビット〜6ビットの範囲
に含まれない場合には、選択エラー信号Eselを出力
する。
【0035】第2のデータ長算出部60は、選択部50
において選択された第2の復号部の復号化データRS2
と、この復号化データRS2に対応するハフマン符号の
データ長とに基づいて、復号化データRS2に対応する
符号化データのデータ長を算出し、データ長L2として
出力する。
において選択された第2の復号部の復号化データRS2
と、この復号化データRS2に対応するハフマン符号の
データ長とに基づいて、復号化データRS2に対応する
符号化データのデータ長を算出し、データ長L2として
出力する。
【0036】無効信号生成部70は、選択部50におい
て選択された第2の復号部から検索エラー信号Esrが
出力される場合、または選択部50から選択エラー信号
Eselが出力される場合に、復号化データRS2が無
効であることを知らせる無効信号Sivを生成する。ま
た、第1の復号部20の復号化データRS1として、符
号化の単位ブロックの末尾を示す符号EOBが含まれる
場合や、後述する計数部90において計数エラー信号E
cntが出力される場合にも、無効信号Sivを生成す
る。
て選択された第2の復号部から検索エラー信号Esrが
出力される場合、または選択部50から選択エラー信号
Eselが出力される場合に、復号化データRS2が無
効であることを知らせる無効信号Sivを生成する。ま
た、第1の復号部20の復号化データRS1として、符
号化の単位ブロックの末尾を示す符号EOBが含まれる
場合や、後述する計数部90において計数エラー信号E
cntが出力される場合にも、無効信号Sivを生成す
る。
【0037】データ抽出位置シフト部80は、データ長
L1とデータ長L2との和に応じたデータ数だけ、デー
タ抽出部10のデータ列抽出位置をデータストリームの
末尾側にシフトさせるシフト信号Sftを生成する。ま
た、無効信号Sivが生成される場合には、データ長L
1に応じたデータ数だけデータ抽出手段10の抽出位置
を末尾側へシフトさせるシフト信号Sftを生成する。
L1とデータ長L2との和に応じたデータ数だけ、デー
タ抽出部10のデータ列抽出位置をデータストリームの
末尾側にシフトさせるシフト信号Sftを生成する。ま
た、無効信号Sivが生成される場合には、データ長L
1に応じたデータ数だけデータ抽出手段10の抽出位置
を末尾側へシフトさせるシフト信号Sftを生成する。
【0038】計数部90は、復号化データRS1と復号
化データRS2とに含まれるゼロランレングスRRRR
に応じて、64個のDCT係数からなる単位ブロック内
で復号化されたAC成分のDCT係数を計数する。な
お、無効信号生成部70において無効信号Sivが生成
される場合には、復号化データRS2に含まれるゼロラ
ンレングスRRRRを無効にしてAC成分のDCT係数
を計数する。すなわち、復号化データRS2のゼロラン
レングスRRRRは計数値に含めない。AC成分の計数
値が63個(単位ブロック全体のDCT係数64個−D
C成分のDCT係数1個)に達した場合には、この計数
値Scntをゼロに初期化して、再びAC成分の計数を
行う。
化データRS2とに含まれるゼロランレングスRRRR
に応じて、64個のDCT係数からなる単位ブロック内
で復号化されたAC成分のDCT係数を計数する。な
お、無効信号生成部70において無効信号Sivが生成
される場合には、復号化データRS2に含まれるゼロラ
ンレングスRRRRを無効にしてAC成分のDCT係数
を計数する。すなわち、復号化データRS2のゼロラン
レングスRRRRは計数値に含めない。AC成分の計数
値が63個(単位ブロック全体のDCT係数64個−D
C成分のDCT係数1個)に達した場合には、この計数
値Scntをゼロに初期化して、再びAC成分の計数を
行う。
【0039】また、AC成分の計数値が63個より大き
くなる場合には、計数エラー信号Ecntを出力し、復
号化データRS2を無効にする。AC成分の計数値が6
3個より大きくなる場合、第1の復号部20において復
号化されたDCT係数で単位ブロックの末尾に到達する
ので、復号化データRS2によって復号されるDCT係
数は、次の単位ブロックの先頭データとなる。ところ
が、単位ブロックの先頭データはDC成分なので、第2
の復号部41〜第2の復号部44においては復号するこ
とができない。したがって、この場合には復号化データ
RS2が無効となるように計数エラー信号Ecntを出
力する。
くなる場合には、計数エラー信号Ecntを出力し、復
号化データRS2を無効にする。AC成分の計数値が6
3個より大きくなる場合、第1の復号部20において復
号化されたDCT係数で単位ブロックの末尾に到達する
ので、復号化データRS2によって復号されるDCT係
数は、次の単位ブロックの先頭データとなる。ところ
が、単位ブロックの先頭データはDC成分なので、第2
の復号部41〜第2の復号部44においては復号するこ
とができない。したがって、この場合には復号化データ
RS2が無効となるように計数エラー信号Ecntを出
力する。
【0040】DCT係数出力部101は、復号化データ
RS1に基づいて抽出データ列Dsから付加データを抽
出し、この抽出した付加データからDC成分またはAC
成分のDCT係数D1を算出して出力する。DCT係数
出力部102は、復号化データRS2に基づいて抽出デ
ータ列Dsから付加データを抽出し、この抽出した付加
データからAC成分のDCT係数D2を算出して出力す
る。
RS1に基づいて抽出データ列Dsから付加データを抽
出し、この抽出した付加データからDC成分またはAC
成分のDCT係数D1を算出して出力する。DCT係数
出力部102は、復号化データRS2に基づいて抽出デ
ータ列Dsから付加データを抽出し、この抽出した付加
データからAC成分のDCT係数D2を算出して出力す
る。
【0041】ここで、図2に示すハフマン復号化器にお
いて、2つの復号化データ(復号化データRS1および
復号化データRS2)に基づいて2つのDCT係数を出
力するDCT係数出力部の具体的な構成例について、図
3を参照して説明する。図3において、符号1011お
よび符号1021は付加データ抽出部を、符号1012
および符号1022はDCT係数算出部をそれぞれ示
す。
いて、2つの復号化データ(復号化データRS1および
復号化データRS2)に基づいて2つのDCT係数を出
力するDCT係数出力部の具体的な構成例について、図
3を参照して説明する。図3において、符号1011お
よび符号1021は付加データ抽出部を、符号1012
および符号1022はDCT係数算出部をそれぞれ示
す。
【0042】付加データ抽出部1011は、データ抽出
部10の抽出データ列Dsから27ビット全てのデータ
列を入力し、この入力したデータ列から、復号化データ
RS1に含まれるカテゴリSSSSに基づいて付加デー
タAD1を抽出する。
部10の抽出データ列Dsから27ビット全てのデータ
列を入力し、この入力したデータ列から、復号化データ
RS1に含まれるカテゴリSSSSに基づいて付加デー
タAD1を抽出する。
【0043】付加データ抽出部1021は、データ抽出
部10の抽出データ列Dsの先頭ビットに対して3ビッ
トだけシフトしたビット位置から13ビット分のデータ
列を入力し、この入力したデータ列から、復号化データ
RS2に含まれるカテゴリSSSSに基づいて付加デー
タAD2を抽出する。第2の復号部において復号される
ハフマン符号の最長データは5ビットであり、この場合
の付加ビットの最長データは5ビットなので、付加ビッ
トの抽出範囲は、第2の復号部に入力されるデータ列の
先頭ビットから10ビットの範囲となる。したがって、
付加データAD2の抽出範囲は、第2の復号部41に入
力されるデータ列の先頭ビットから、第2の復号部44
に入力される10ビットのデータ列の末尾までの13ビ
ットの範囲となる。
部10の抽出データ列Dsの先頭ビットに対して3ビッ
トだけシフトしたビット位置から13ビット分のデータ
列を入力し、この入力したデータ列から、復号化データ
RS2に含まれるカテゴリSSSSに基づいて付加デー
タAD2を抽出する。第2の復号部において復号される
ハフマン符号の最長データは5ビットであり、この場合
の付加ビットの最長データは5ビットなので、付加ビッ
トの抽出範囲は、第2の復号部に入力されるデータ列の
先頭ビットから10ビットの範囲となる。したがって、
付加データAD2の抽出範囲は、第2の復号部41に入
力されるデータ列の先頭ビットから、第2の復号部44
に入力される10ビットのデータ列の末尾までの13ビ
ットの範囲となる。
【0044】DCT係数算出部1012は、付加データ
抽出部1011において抽出された付加データAD1と
復号化データRS1とに基づいて、DC成分またはAC
成分のDCT係数を算出する。DC成分は、前の単位ブ
ロックにおいて算出されたDC成分に、付加データAD
1とカテゴリSSSSとから求められる正または負の差
分値を加算することによって算出する。また、ゼロ値の
AC成分はゼロランレングスRRRRに応じて算出し、
非ゼロ値のAC成分は付加データAD2とカテゴリSS
SSとに応じて算出する。DCT係数算出部1022
は、付加データ抽出部1021において抽出された付加
データAD2と復号化データRS2とに基づいて、AC
成分のDCT係数を算出する。
抽出部1011において抽出された付加データAD1と
復号化データRS1とに基づいて、DC成分またはAC
成分のDCT係数を算出する。DC成分は、前の単位ブ
ロックにおいて算出されたDC成分に、付加データAD
1とカテゴリSSSSとから求められる正または負の差
分値を加算することによって算出する。また、ゼロ値の
AC成分はゼロランレングスRRRRに応じて算出し、
非ゼロ値のAC成分は付加データAD2とカテゴリSS
SSとに応じて算出する。DCT係数算出部1022
は、付加データ抽出部1021において抽出された付加
データAD2と復号化データRS2とに基づいて、AC
成分のDCT係数を算出する。
【0045】次に、上述した図1〜図3に示すJPEG
復号化装置の動作について、ハフマン復号化器1002
を中心に説明する。
復号化装置の動作について、ハフマン復号化器1002
を中心に説明する。
【0046】図4は、データ抽出部10で抽出される2
7ビットのデータ列中において、復号部20および復号
部41〜復号部44が復号化可能な符号化データの範囲
を示す図である。図4に示すように、第1の復号部20
は、抽出データ列Dsの先頭ビット‘0’から末尾ビッ
ト‘26’までの符号化データを復号化することができ
る。これに対し、第2の復号部41は抽出データ列Ds
のビット‘3’からビット‘12’まで、第2の復号部
42はビット‘4’からビット‘13’まで、第2の復
号部43はビット‘5’からビット‘14’まで、第2
の復号部44はビット‘6’からビット‘15’までの
範囲の符号化データをそれぞれ復号化することができ
る。何れの第2の復号部からの出力を選択するかは、第
1のデータ長算出部30において算出された、1つ目の
符号化データのデータ長L1に応じて決定される。
7ビットのデータ列中において、復号部20および復号
部41〜復号部44が復号化可能な符号化データの範囲
を示す図である。図4に示すように、第1の復号部20
は、抽出データ列Dsの先頭ビット‘0’から末尾ビッ
ト‘26’までの符号化データを復号化することができ
る。これに対し、第2の復号部41は抽出データ列Ds
のビット‘3’からビット‘12’まで、第2の復号部
42はビット‘4’からビット‘13’まで、第2の復
号部43はビット‘5’からビット‘14’まで、第2
の復号部44はビット‘6’からビット‘15’までの
範囲の符号化データをそれぞれ復号化することができ
る。何れの第2の復号部からの出力を選択するかは、第
1のデータ長算出部30において算出された、1つ目の
符号化データのデータ長L1に応じて決定される。
【0047】図5は、抽出データ列Dsに含まれる2つ
の符号化データの一例を示す図である。図5において、
抽出データ列Dsの先頭ビット‘0’からビット‘4’
までの5ビット分が1つ目の符号化データ1、ビット
‘5’からビット‘10’までの6ビット分が2つ目の
符号化データ2となっている。また符号化データ1の前
半2ビットはハフマン符号、後半3ビットは付加ビット
となっており、符号化データ2の前半3ビットはハフマ
ン符号、後半3ビットは付加ビットとなっている。
の符号化データの一例を示す図である。図5において、
抽出データ列Dsの先頭ビット‘0’からビット‘4’
までの5ビット分が1つ目の符号化データ1、ビット
‘5’からビット‘10’までの6ビット分が2つ目の
符号化データ2となっている。また符号化データ1の前
半2ビットはハフマン符号、後半3ビットは付加ビット
となっており、符号化データ2の前半3ビットはハフマ
ン符号、後半3ビットは付加ビットとなっている。
【0048】この場合、バッファ1001からデータ抽
出部10により抽出された27ビット抽出データDs
は、先頭ビット‘0’から16ビット分のデータ列が第
1の復号部20に入力され、その入力されたデータ列の
先頭2ビットからハフマン符号が検索される。そして、
検索されたハフマン符号に対応したゼロランレングスR
RRRおよびカテゴリSSSSが復号化データRS1と
して出力される。
出部10により抽出された27ビット抽出データDs
は、先頭ビット‘0’から16ビット分のデータ列が第
1の復号部20に入力され、その入力されたデータ列の
先頭2ビットからハフマン符号が検索される。そして、
検索されたハフマン符号に対応したゼロランレングスR
RRRおよびカテゴリSSSSが復号化データRS1と
して出力される。
【0049】第1の復号部20の復号化データRS1
は、DCT係数出力部101に入力され、この復号化デ
ータRS1と抽出データ列Dsとに基づいて、符号化デ
ータ1のDCT係数D1が算出される。
は、DCT係数出力部101に入力され、この復号化デ
ータRS1と抽出データ列Dsとに基づいて、符号化デ
ータ1のDCT係数D1が算出される。
【0050】第1のデータ長算出部30では、この復号
化データRS1のカテゴリSSSSで指定される付加ビ
ットのデータ長と、復号化データRS1に対応するハフ
マン符号のデータ長との和に応じて、符号化データ1の
データ長L1が算出される。図5の例では、ハフマン符
号の2ビットと付加ビットの3ビットとの和から、デー
タ長L1として5ビットが算出される。
化データRS1のカテゴリSSSSで指定される付加ビ
ットのデータ長と、復号化データRS1に対応するハフ
マン符号のデータ長との和に応じて、符号化データ1の
データ長L1が算出される。図5の例では、ハフマン符
号の2ビットと付加ビットの3ビットとの和から、デー
タ長L1として5ビットが算出される。
【0051】算出されたデータ長L1は選択部50に入
力され、このデータ長L1に応じて第2の復号部が選択
される。図5の例では、抽出データ列Dsの先頭ビット
‘0’に対して6ビット目のビット‘5’からハフマン
符号の検索を行う第2の復号部43が選択される。そし
て、その復号化データRS23および検索エラー信号E
sr3が、それぞれ復号化データRS2および検索エラ
ー信号Esrとして選択部50から出力される。
力され、このデータ長L1に応じて第2の復号部が選択
される。図5の例では、抽出データ列Dsの先頭ビット
‘0’に対して6ビット目のビット‘5’からハフマン
符号の検索を行う第2の復号部43が選択される。そし
て、その復号化データRS23および検索エラー信号E
sr3が、それぞれ復号化データRS2および検索エラ
ー信号Esrとして選択部50から出力される。
【0052】ただし、図5の例では、符号化データ1の
データ長L1は5ビットであり、3ビット〜6ビットの
範囲に含まれているので、この場合、選択エラー信号E
selは出力されない。また、符号化データ2のハフマ
ン符号は3ビットであり、5ビットを越えていないの
で、第2の復号部43から検索エラー信号Esr3は出
力されない。したがって、選択部50から検索エラー信
号Esrは出力されない。
データ長L1は5ビットであり、3ビット〜6ビットの
範囲に含まれているので、この場合、選択エラー信号E
selは出力されない。また、符号化データ2のハフマ
ン符号は3ビットであり、5ビットを越えていないの
で、第2の復号部43から検索エラー信号Esr3は出
力されない。したがって、選択部50から検索エラー信
号Esrは出力されない。
【0053】選択部50において選択された復号化デー
タRS2は、DCT係数出力部102に入力され、この
復号化データRS2と抽出データ列Dsとに基づいて、
符号化データ2のDCT係数D2が算出される。
タRS2は、DCT係数出力部102に入力され、この
復号化データRS2と抽出データ列Dsとに基づいて、
符号化データ2のDCT係数D2が算出される。
【0054】第2のデータ長算出部60では、この復号
化データRS2のカテゴリSSSSで指定される付加ビ
ットのデータ長と、復号化データRS2に対応するハフ
マン符号のデータ長との和に応じて、符号化データ2の
データ長L2が算出される。図5の例では、ハフマン符
号の3ビットと付加ビットの3ビットとの和から、デー
タ長L2として6ビットが算出される。
化データRS2のカテゴリSSSSで指定される付加ビ
ットのデータ長と、復号化データRS2に対応するハフ
マン符号のデータ長との和に応じて、符号化データ2の
データ長L2が算出される。図5の例では、ハフマン符
号の3ビットと付加ビットの3ビットとの和から、デー
タ長L2として6ビットが算出される。
【0055】算出されたデータ長L1およびデータ長L
2は、ともにデータ抽出位置シフト部80に入力され、
無効信号Sivが生成されていない場合、これらのデー
タ長の和に応じたシフト信号Sftが生成される。これ
により、図5の例では、抽出データ列Dsのビット‘1
1’にデータ抽出位置がシフトされ、次の2つの符号化
データはこの位置から復号される。無効信号Sivが生
成されている場合には、符号化データ2の復号化データ
RS2が無効であるので、データ長L2によるシフト分
は無視され、データ長L1のみに応じたシフト信号Sf
tが生成される。これにより、図5の例では、抽出デー
タ列Dsのビット‘5’にデータ抽出位置がシフトされ
る。
2は、ともにデータ抽出位置シフト部80に入力され、
無効信号Sivが生成されていない場合、これらのデー
タ長の和に応じたシフト信号Sftが生成される。これ
により、図5の例では、抽出データ列Dsのビット‘1
1’にデータ抽出位置がシフトされ、次の2つの符号化
データはこの位置から復号される。無効信号Sivが生
成されている場合には、符号化データ2の復号化データ
RS2が無効であるので、データ長L2によるシフト分
は無視され、データ長L1のみに応じたシフト信号Sf
tが生成される。これにより、図5の例では、抽出デー
タ列Dsのビット‘5’にデータ抽出位置がシフトされ
る。
【0056】また、復号部20から出力される復号化デ
ータRS1と、選択部50から出力される復号化データ
RS2は共に計数部90に入力され、これらの復号化デ
ータに含まれるゼロランレングスRRRRから、単位ブ
ロック内で復号化されたAC成分の数が計数される。例
えばゼロランレングスRRRRが7の場合、7つのゼロ
値と1つの非ゼロ値のAC成分が復号化されるので、こ
れにより復号化数8が計数値Ecntに加算される。こ
うした復号化数が、復号化データRS1および復号化デ
ータRS2の各々のゼロランレングスRRRRに対して
算出され、計数値Ecntに加算される。計数値Scn
tが63を越える場合は、符号化データ2が単位ブロッ
クの先頭データであるので、この復号化データRS2を
無効にするための計数エラー信号Ecntが出力され
る。
ータRS1と、選択部50から出力される復号化データ
RS2は共に計数部90に入力され、これらの復号化デ
ータに含まれるゼロランレングスRRRRから、単位ブ
ロック内で復号化されたAC成分の数が計数される。例
えばゼロランレングスRRRRが7の場合、7つのゼロ
値と1つの非ゼロ値のAC成分が復号化されるので、こ
れにより復号化数8が計数値Ecntに加算される。こ
うした復号化数が、復号化データRS1および復号化デ
ータRS2の各々のゼロランレングスRRRRに対して
算出され、計数値Ecntに加算される。計数値Scn
tが63を越える場合は、符号化データ2が単位ブロッ
クの先頭データであるので、この復号化データRS2を
無効にするための計数エラー信号Ecntが出力され
る。
【0057】図5の例では、選択エラー信号Eselお
よび検索エラー信号Esrは何れも出力されていないの
で、これによる無効信号Sivは生成されない。復号化
データRS1に単位ブロックの末尾を示す符号EOBが
含まれる場合や、計数部90において計数エラー信号E
cntが出力される場合において、無効信号Sivが生
成される。無効信号Sivが生成されると、復号化デー
タRS2に基づいて復号されるAC成分のDCT係数D
2や、データ長L2、計数部90における計数値Scn
tなどが無効なデータとして処理される。
よび検索エラー信号Esrは何れも出力されていないの
で、これによる無効信号Sivは生成されない。復号化
データRS1に単位ブロックの末尾を示す符号EOBが
含まれる場合や、計数部90において計数エラー信号E
cntが出力される場合において、無効信号Sivが生
成される。無効信号Sivが生成されると、復号化デー
タRS2に基づいて復号されるAC成分のDCT係数D
2や、データ長L2、計数部90における計数値Scn
tなどが無効なデータとして処理される。
【0058】図6は、符号化データ2に含まれるハフマ
ン符号長が5ビットを越えるために検索エラー信号Es
rが出力される例を示す。図6において、抽出データ列
Dsの先頭ビット‘0’からビット‘4’までの5ビッ
ト分が1つ目の符号化データ1、ビット‘5’からビッ
ト‘18’までの14ビット分が2つ目の符号化データ
2となっている。また符号化データ1の前半2ビットは
ハフマン符号、後半3ビットは付加ビットとなってお
り、符号化データ2の前半7ビットはハフマン符号、後
半7ビットは付加ビットとなっている。
ン符号長が5ビットを越えるために検索エラー信号Es
rが出力される例を示す。図6において、抽出データ列
Dsの先頭ビット‘0’からビット‘4’までの5ビッ
ト分が1つ目の符号化データ1、ビット‘5’からビッ
ト‘18’までの14ビット分が2つ目の符号化データ
2となっている。また符号化データ1の前半2ビットは
ハフマン符号、後半3ビットは付加ビットとなってお
り、符号化データ2の前半7ビットはハフマン符号、後
半7ビットは付加ビットとなっている。
【0059】図6の例でも、符号化データ1のデータ長
L1が5ビットなので、選択部50において第2の復号
部43が選択されるが、符号化データ2のハフマン符号
長は7ビットであるため、第2の復号部43ではこのハ
フマン符号を検索することができず、第2の復号部43
から検索エラー信号Esr3が出力されている。この検
索エラー信号が選択されるため、選択部50からは検索
エラー信号Esrが無効信号生成部70に出力され、無
効信号Sivが生成される。
L1が5ビットなので、選択部50において第2の復号
部43が選択されるが、符号化データ2のハフマン符号
長は7ビットであるため、第2の復号部43ではこのハ
フマン符号を検索することができず、第2の復号部43
から検索エラー信号Esr3が出力されている。この検
索エラー信号が選択されるため、選択部50からは検索
エラー信号Esrが無効信号生成部70に出力され、無
効信号Sivが生成される。
【0060】したがって、図6の例では、データ抽出位
置シフト部80においてデータ長L2が無効にされ、デ
ータ抽出位置はデータ長L1のみに応じてシフトされ
る。すなわち、次の符号化データを復号化する先頭ビッ
トは抽出データ列Dsのビット‘5’に設定される。ま
た、無効信号Sivが生成されるため、DCT係数出力
部102から出力されるDCT係数D2は、逆量子化器
1003および逆DCT器1004において無効なデー
タとして処理される。さらに、復号化データRS2のゼ
ロランレングスRRRRに対応する復号化数は計数部9
0において無効とされ、この分の復号化数は計数値Sc
ntに加算されない。
置シフト部80においてデータ長L2が無効にされ、デ
ータ抽出位置はデータ長L1のみに応じてシフトされ
る。すなわち、次の符号化データを復号化する先頭ビッ
トは抽出データ列Dsのビット‘5’に設定される。ま
た、無効信号Sivが生成されるため、DCT係数出力
部102から出力されるDCT係数D2は、逆量子化器
1003および逆DCT器1004において無効なデー
タとして処理される。さらに、復号化データRS2のゼ
ロランレングスRRRRに対応する復号化数は計数部9
0において無効とされ、この分の復号化数は計数値Sc
ntに加算されない。
【0061】図7は、符号化データ1のデータ長が3ビ
ット〜6ビットの範囲に含まれないために選択エラー信
号Eselが出力される例を示す。図7において、抽出
データ列Dsの先頭ビット‘0’からビット‘6’まで
の7ビット分が1つ目の符号化データ1、ビット‘7’
からビット‘11’までの5ビット分が2つ目の符号化
データ2となっている。また符号化データ1の前半4ビ
ットはハフマン符号、後半3ビットは付加ビットとなっ
ており、符号化データ2の前半2ビットはハフマン符
号、後半3ビットは付加ビットとなっている。
ット〜6ビットの範囲に含まれないために選択エラー信
号Eselが出力される例を示す。図7において、抽出
データ列Dsの先頭ビット‘0’からビット‘6’まで
の7ビット分が1つ目の符号化データ1、ビット‘7’
からビット‘11’までの5ビット分が2つ目の符号化
データ2となっている。また符号化データ1の前半4ビ
ットはハフマン符号、後半3ビットは付加ビットとなっ
ており、符号化データ2の前半2ビットはハフマン符
号、後半3ビットは付加ビットとなっている。
【0062】図7の例では、符号化データ1のデータ長
L1が7ビットであり、3ビット〜6ビットの範囲を越
えているので、これに対応する第2の復号部を選択部5
0において選択することができず、選択部50から選択
エラー信号Eselが出力される。これにより、無効信
号生成部70において無効信号Sivが生成される。
L1が7ビットであり、3ビット〜6ビットの範囲を越
えているので、これに対応する第2の復号部を選択部5
0において選択することができず、選択部50から選択
エラー信号Eselが出力される。これにより、無効信
号生成部70において無効信号Sivが生成される。
【0063】したがって、図7の例においても、データ
抽出位置シフト部80においてデータ長L2が無効にさ
れ、データ抽出位置はデータ長L1のみに応じてシフト
される。すなわち、次の符号化データを復号化する先頭
ビットは抽出データ列Dsのビット‘7’に設定され
る。また、DCT係数出力部102から出力されるDC
T係数D2は、逆量子化器1003および逆DCT器に
おいて無効なデータとして処理される。さらに、復号化
データRS2のゼロランレングスRRRRに対応する復
号化数は計数部90において無効とされ、この分の復号
化数は計数値Scntに加算されない。
抽出位置シフト部80においてデータ長L2が無効にさ
れ、データ抽出位置はデータ長L1のみに応じてシフト
される。すなわち、次の符号化データを復号化する先頭
ビットは抽出データ列Dsのビット‘7’に設定され
る。また、DCT係数出力部102から出力されるDC
T係数D2は、逆量子化器1003および逆DCT器に
おいて無効なデータとして処理される。さらに、復号化
データRS2のゼロランレングスRRRRに対応する復
号化数は計数部90において無効とされ、この分の復号
化数は計数値Scntに加算されない。
【0064】図8は、一般的な20枚の画像をJPEG
符号化した場合において、ハフマン符号のデータ長ごと
の出現数を調べた結果の一例を示す図である。画像sa
mple1〜画像sample20のそれぞれについ
て、2ビットから6ビットまでのハフマン符号の出現数
および出現率(%)が示されている。一番右の列は、各
画像におけるハフマン符号の総数を示す。また図9は、
一般的な20枚の画像をJPEG符号化した場合におい
て、ハフマン符号と付加ビットとの和のデータ長につい
て、図8と同様に出現数を調べた結果の一例を示す図で
ある。
符号化した場合において、ハフマン符号のデータ長ごと
の出現数を調べた結果の一例を示す図である。画像sa
mple1〜画像sample20のそれぞれについ
て、2ビットから6ビットまでのハフマン符号の出現数
および出現率(%)が示されている。一番右の列は、各
画像におけるハフマン符号の総数を示す。また図9は、
一般的な20枚の画像をJPEG符号化した場合におい
て、ハフマン符号と付加ビットとの和のデータ長につい
て、図8と同様に出現数を調べた結果の一例を示す図で
ある。
【0065】図8から分かるように、一般的な画像をJ
PEG符号化した場合におけるハフマン符号のデータ長
は、全体の約75%以上が2ビット〜4ビットの範囲に
含まれ、約85%以上が2ビット〜5ビットの範囲に含
まれる。また図9から分かるように、ハフマン符号と付
加ビットとを合わせたデータ長は、全体の55%程度が
3ビット〜5ビットの範囲に含まれ、70%程度が3ビ
ット〜6ビットの範囲に含まれる。
PEG符号化した場合におけるハフマン符号のデータ長
は、全体の約75%以上が2ビット〜4ビットの範囲に
含まれ、約85%以上が2ビット〜5ビットの範囲に含
まれる。また図9から分かるように、ハフマン符号と付
加ビットとを合わせたデータ長は、全体の55%程度が
3ビット〜5ビットの範囲に含まれ、70%程度が3ビ
ット〜6ビットの範囲に含まれる。
【0066】図2のハフマン復号化器は、このようなハ
フマン符号長の出現率の偏りを利用して、必要なハフマ
ン符号のデータテーブルの記憶容量を削減するものであ
る。すなわち、第1の復号部20には、DC成分および
AC成分の全ハフマン符号が復号可能なデータテーブル
を持たせている一方で、第2の復号部41〜第2の復号
部44には、1つ目の符号化データ1のデータ長(ハフ
マン符号長+付加ビット長)が3ビット〜6ビットまで
の場合(出現率70%程度)で、かつ、2つ目の符号化
データ2が2ビット〜5ビットまでのハフマン符号を含
む場合(出現率85%程度)において、この符号化デー
タを復号化できる最小限のデータテーブルを持たせてい
る。
フマン符号長の出現率の偏りを利用して、必要なハフマ
ン符号のデータテーブルの記憶容量を削減するものであ
る。すなわち、第1の復号部20には、DC成分および
AC成分の全ハフマン符号が復号可能なデータテーブル
を持たせている一方で、第2の復号部41〜第2の復号
部44には、1つ目の符号化データ1のデータ長(ハフ
マン符号長+付加ビット長)が3ビット〜6ビットまで
の場合(出現率70%程度)で、かつ、2つ目の符号化
データ2が2ビット〜5ビットまでのハフマン符号を含
む場合(出現率85%程度)において、この符号化デー
タを復号化できる最小限のデータテーブルを持たせてい
る。
【0067】したがって、図17の従来例に比べてデー
タテーブルに必要な記憶容量を大幅に削減することがで
き、回路構成を簡易化することができる。また、図17
の従来例のように、2つの符号化データを100%復号
化することはできないが、比較的高い頻度(70%×8
5%=約60%)で2つの符号化データを同時に復号化
することができ、JPEG符号化データストリームの高
速な復号化を実現できる。
タテーブルに必要な記憶容量を大幅に削減することがで
き、回路構成を簡易化することができる。また、図17
の従来例のように、2つの符号化データを100%復号
化することはできないが、比較的高い頻度(70%×8
5%=約60%)で2つの符号化データを同時に復号化
することができ、JPEG符号化データストリームの高
速な復号化を実現できる。
【0068】<第2の実施形態>次に、本発明の第2の
実施形態について説明する。第1の実施形態において
は、同時に2つまでの符号化データを復号化することが
できたが、第2の実施形態においては、同時にそれ以上
の符号化データを復号化することができる。
実施形態について説明する。第1の実施形態において
は、同時に2つまでの符号化データを復号化することが
できたが、第2の実施形態においては、同時にそれ以上
の符号化データを復号化することができる。
【0069】図10は、本発明の第2の実施形態に係
る、図1のハフマン復号化器1002の構成例を示す概
略的なブロック図である。図2と図10の同一符号は同
一の構成要素を示す。その他、図10に示すハフマン復
号化器は、第2の復号部45〜第2の復号部410、選
択部51および選択部52、第2のデータ長算出部61
および第2のデータ長算出部62、無効信号生成部71
および無効信号生成部72、データ抽出位置シフト部8
0’、計数部90’およびDCT係数出力部103を有
する。
る、図1のハフマン復号化器1002の構成例を示す概
略的なブロック図である。図2と図10の同一符号は同
一の構成要素を示す。その他、図10に示すハフマン復
号化器は、第2の復号部45〜第2の復号部410、選
択部51および選択部52、第2のデータ長算出部61
および第2のデータ長算出部62、無効信号生成部71
および無効信号生成部72、データ抽出位置シフト部8
0’、計数部90’およびDCT係数出力部103を有
する。
【0070】第2の復号部45〜第2の復号部410
は、データ抽出部10において抽出されたデータ列Ds
の先頭ビットに対してそれぞれ7ビット〜12ビットだ
けデータストリームの末尾側にずれたデータ位置から5
ビット分のデータ列を入力し、この入力したデータ列に
含まれる所定のハフマン符号をそれぞれ検索する。そし
て、検索したハフマン符号に対応する復号化データRS
25〜復号化データRS210をそれぞれ出力する。ま
た、入力したデータ列に含まれるハフマン符号のデータ
長が5ビットよりも長く、該当するハフマン符号をデー
タテーブルから見つけることができない場合に、それぞ
れ検索エラー信号Esr5〜検索エラー信号Esr10
を出力する。
は、データ抽出部10において抽出されたデータ列Ds
の先頭ビットに対してそれぞれ7ビット〜12ビットだ
けデータストリームの末尾側にずれたデータ位置から5
ビット分のデータ列を入力し、この入力したデータ列に
含まれる所定のハフマン符号をそれぞれ検索する。そし
て、検索したハフマン符号に対応する復号化データRS
25〜復号化データRS210をそれぞれ出力する。ま
た、入力したデータ列に含まれるハフマン符号のデータ
長が5ビットよりも長く、該当するハフマン符号をデー
タテーブルから見つけることができない場合に、それぞ
れ検索エラー信号Esr5〜検索エラー信号Esr10
を出力する。
【0071】選択部51は、図2の選択部50と同等な
ブロックであり、第2の復号部41〜第2の復号部44
の中から、データ長L1に応じて1つの第2の復号部を
選択し、その復号化データRs2または検索エラー信号
Esr_1を出力するとともに、該当する第2の復号部
が無い場合には、第1の選択エラー信号Esel_1を
出力する。
ブロックであり、第2の復号部41〜第2の復号部44
の中から、データ長L1に応じて1つの第2の復号部を
選択し、その復号化データRs2または検索エラー信号
Esr_1を出力するとともに、該当する第2の復号部
が無い場合には、第1の選択エラー信号Esel_1を
出力する。
【0072】選択部52は、第2の復号部44〜第2の
復号部410の中から、データ長L1とデータ長L2と
の和に応じて1つの第2の復号部を選択し、その復号化
データRs2_2または検索エラー信号Esr_2を出
力する。図12の例では、データ長L1とデータ長L2
との和が6ビットの場合に第2の復号部44を、7ビッ
トの場合に第2の復号部45を、8ビットの場合に第2
の復号部46を、9ビットの場合に第2の復号部47
を、10ビットの場合に第2の復号部48を、11ビッ
トの場合に第2の復号部49を、12ビットの場合に第
2の復号部410を選択する。また、これに該当する第
2の復号部が無い場合、すなわちデータ長L1とデータ
長L2との和が6ビット〜12ビットの範囲に含まれな
い場合には、第2の選択エラー信号Esel_2を出力
する。
復号部410の中から、データ長L1とデータ長L2と
の和に応じて1つの第2の復号部を選択し、その復号化
データRs2_2または検索エラー信号Esr_2を出
力する。図12の例では、データ長L1とデータ長L2
との和が6ビットの場合に第2の復号部44を、7ビッ
トの場合に第2の復号部45を、8ビットの場合に第2
の復号部46を、9ビットの場合に第2の復号部47
を、10ビットの場合に第2の復号部48を、11ビッ
トの場合に第2の復号部49を、12ビットの場合に第
2の復号部410を選択する。また、これに該当する第
2の復号部が無い場合、すなわちデータ長L1とデータ
長L2との和が6ビット〜12ビットの範囲に含まれな
い場合には、第2の選択エラー信号Esel_2を出力
する。
【0073】第2のデータ長算出部61は、図2の第2
のデータ長算出部60と同等のブロックであり、復号化
データRs2_1とこれに対応するハフマン符号のデー
タ長とに基づいて、復号化データRS2_1に対応する
符号化データのデータ長L2を算出する。
のデータ長算出部60と同等のブロックであり、復号化
データRs2_1とこれに対応するハフマン符号のデー
タ長とに基づいて、復号化データRS2_1に対応する
符号化データのデータ長L2を算出する。
【0074】第2のデータ長算出部62は、選択部52
において選択された第2の復号部の復号化データRs2
_2と、この復号化データRS2に対応するハフマン符
号のデータ長とに基づいて、復号化データRS2_2に
対応する符号化データのデータ長を算出し、データ長L
3として出力する。
において選択された第2の復号部の復号化データRs2
_2と、この復号化データRS2に対応するハフマン符
号のデータ長とに基づいて、復号化データRS2_2に
対応する符号化データのデータ長を算出し、データ長L
3として出力する。
【0075】無効信号生成部71は、図2の無効信号生
成部70と同等のブロックであり、検索エラー信号Es
r_1または第1の選択エラー信号Esel_1が出力
される場合に、復号化データRS2_1および復号化デ
ータRS2_2が無効であることを知らせる第1の無効
信号Siv_1を生成する。また、復号化データRS1
に符号EOBが含まれる場合や、計数部90’において
第1の計数エラー信号Ecnt_1が出力される場合に
も、この第1の無効信号Siv_1を生成する。
成部70と同等のブロックであり、検索エラー信号Es
r_1または第1の選択エラー信号Esel_1が出力
される場合に、復号化データRS2_1および復号化デ
ータRS2_2が無効であることを知らせる第1の無効
信号Siv_1を生成する。また、復号化データRS1
に符号EOBが含まれる場合や、計数部90’において
第1の計数エラー信号Ecnt_1が出力される場合に
も、この第1の無効信号Siv_1を生成する。
【0076】無効信号生成部72は、選択部52におい
て選択された第2の復号部から検索エラー信号Esr_
2が出力される場合、または選択部52から第2の選択
エラー信号Esel_2が出力される場合に、復号化デ
ータRS2_2が無効であることを知らせる無効信号S
iv_2を生成する。また、復号化データRS2_1に
符号EOBが含まれる場合や、計数部90’において第
2の計数エラー信号Ecnt_2が出力される場合に
も、この第2の無効信号Siv_2を生成する。
て選択された第2の復号部から検索エラー信号Esr_
2が出力される場合、または選択部52から第2の選択
エラー信号Esel_2が出力される場合に、復号化デ
ータRS2_2が無効であることを知らせる無効信号S
iv_2を生成する。また、復号化データRS2_1に
符号EOBが含まれる場合や、計数部90’において第
2の計数エラー信号Ecnt_2が出力される場合に
も、この第2の無効信号Siv_2を生成する。
【0077】データ抽出位置シフト部80’は、データ
長L1〜データ長L3の総和に応じたデータ数だけ、デ
ータ抽出部10のデータ列抽出位置をデータストリーム
の末尾側にシフトさせるシフト信号Sftを生成する。
また、第1の無効信号Siv_1が生成される場合に
は、データ長L1に応じたデータ数だけデータ抽出手段
10の抽出位置を末尾側へシフトさせるシフト信号Sf
tを生成する。第2の無効信号Siv_2が生成される
場合には、データ長L1とデータ長L2との和に応じた
データ数だけデータ抽出手段10の抽出位置を末尾側へ
シフトさせるシフト信号Sftを生成する。
長L1〜データ長L3の総和に応じたデータ数だけ、デ
ータ抽出部10のデータ列抽出位置をデータストリーム
の末尾側にシフトさせるシフト信号Sftを生成する。
また、第1の無効信号Siv_1が生成される場合に
は、データ長L1に応じたデータ数だけデータ抽出手段
10の抽出位置を末尾側へシフトさせるシフト信号Sf
tを生成する。第2の無効信号Siv_2が生成される
場合には、データ長L1とデータ長L2との和に応じた
データ数だけデータ抽出手段10の抽出位置を末尾側へ
シフトさせるシフト信号Sftを生成する。
【0078】計数部90’は、復号化データRS1、復
号化データRS2_1および復号化データRS2_2に
含まれるゼロランレングスRRRRに応じて、単位ブロ
ック内で復号化されたAC成分のDCT係数を計数す
る。
号化データRS2_1および復号化データRS2_2に
含まれるゼロランレングスRRRRに応じて、単位ブロ
ック内で復号化されたAC成分のDCT係数を計数す
る。
【0079】なお、無効信号生成部71において第1の
無効信号Siv_1が生成される場合には、復号化デー
タRS2_1および復号化データRS2_2に含まれる
ゼロランレングスRRRRを両方とも無効にしてAC成
分のDCT係数を計数する。すなわち、復号化データR
S2_1および復号化データRS2_2のゼロランレン
グスRRRRは計数値に含めない。これに対し、無効信
号生成部72において第1の無効信号Siv_2が生成
される場合には、復号化データRS2_2に含まれるゼ
ロランレングスRRRRのみを無効にしてAC成分のD
CT係数を計数する。この場合、復号化データRS2_
1に含まれるゼロランレングスRRRRは計数値Scn
tに含まれる。
無効信号Siv_1が生成される場合には、復号化デー
タRS2_1および復号化データRS2_2に含まれる
ゼロランレングスRRRRを両方とも無効にしてAC成
分のDCT係数を計数する。すなわち、復号化データR
S2_1および復号化データRS2_2のゼロランレン
グスRRRRは計数値に含めない。これに対し、無効信
号生成部72において第1の無効信号Siv_2が生成
される場合には、復号化データRS2_2に含まれるゼ
ロランレングスRRRRのみを無効にしてAC成分のD
CT係数を計数する。この場合、復号化データRS2_
1に含まれるゼロランレングスRRRRは計数値Scn
tに含まれる。
【0080】AC成分の計数値Scntが63個(単位
ブロック全体のDCT係数64個−DC成分のDCT係
数1個)に達した場合には、この計数値Scntをゼロ
に初期化して、再びAC成分の計数を行う。
ブロック全体のDCT係数64個−DC成分のDCT係
数1個)に達した場合には、この計数値Scntをゼロ
に初期化して、再びAC成分の計数を行う。
【0081】また、AC成分の計数値Scntが63個
より大きくなる場合において、復号化データRS2_1
および復号化RS2_2のゼロランレングスRRRRを
共に無効にしても計数値Scntが63個より大きくな
る場合は、第1の計数エラー信号Ecnt_1を生成す
る。この場合、抽出データ列Dsの2つ目の符号化デー
タが単位ブロックの先頭データになっている。また、復
号化RS2_2のゼロランレングスRRRRを無効にし
たときに計数値Scntが63個より大きくなり、復号
化データRS2_1および復号化RS2_2のゼロラン
レングスRRRRを無効にしたときに計数値Scntが
63個以下となる場合は、第2の計数エラー信号Ecn
t_2を生成する。この場合、3つ目の符号化データが
単位ブロックの先頭データになっている。
より大きくなる場合において、復号化データRS2_1
および復号化RS2_2のゼロランレングスRRRRを
共に無効にしても計数値Scntが63個より大きくな
る場合は、第1の計数エラー信号Ecnt_1を生成す
る。この場合、抽出データ列Dsの2つ目の符号化デー
タが単位ブロックの先頭データになっている。また、復
号化RS2_2のゼロランレングスRRRRを無効にし
たときに計数値Scntが63個より大きくなり、復号
化データRS2_1および復号化RS2_2のゼロラン
レングスRRRRを無効にしたときに計数値Scntが
63個以下となる場合は、第2の計数エラー信号Ecn
t_2を生成する。この場合、3つ目の符号化データが
単位ブロックの先頭データになっている。
【0082】DCT係数出力部103は、復号化データ
RS3に基づいて抽出データ列Dsから付加データを抽
出し、この抽出した付加データからAC成分のDCT係
数D3を算出して出力する。
RS3に基づいて抽出データ列Dsから付加データを抽
出し、この抽出した付加データからAC成分のDCT係
数D3を算出して出力する。
【0083】ここで、図10に示すハフマン復号化器に
おいて、3つの復号化データ(復号化データRS1、復
号化データRS2_1および復号化データRS2_2)
に基づいて3つのDCT係数を出力するDCT係数出力
部の具体的な構成例について、図11を参照して説明す
る。図3と図11の同一符号は同一の構成要素を示す。
また図11において、符号1031は付加データ抽出部
を、符号1032はDCT係数算出部をそれぞれ示す。
おいて、3つの復号化データ(復号化データRS1、復
号化データRS2_1および復号化データRS2_2)
に基づいて3つのDCT係数を出力するDCT係数出力
部の具体的な構成例について、図11を参照して説明す
る。図3と図11の同一符号は同一の構成要素を示す。
また図11において、符号1031は付加データ抽出部
を、符号1032はDCT係数算出部をそれぞれ示す。
【0084】付加データ抽出部1021は、データ抽出
部10の抽出データ列Dsの先頭ビットに対して3ビッ
トだけシフトしたビット位置から13ビット分のデータ
列を入力し、この入力したデータ列から、復号化データ
RS2_1に含まれるカテゴリSSSSに基づいて付加
データAD2を抽出する。付加データ抽出部1031
は、データ抽出部10の抽出データ列Dsの先頭ビット
に対して6ビットだけシフトしたビット位置から16ビ
ット分のデータ列を入力し、この入力したデータ列か
ら、復号化データRS2_2に含まれるカテゴリSSS
Sに基づいて付加データAD3を抽出する。
部10の抽出データ列Dsの先頭ビットに対して3ビッ
トだけシフトしたビット位置から13ビット分のデータ
列を入力し、この入力したデータ列から、復号化データ
RS2_1に含まれるカテゴリSSSSに基づいて付加
データAD2を抽出する。付加データ抽出部1031
は、データ抽出部10の抽出データ列Dsの先頭ビット
に対して6ビットだけシフトしたビット位置から16ビ
ット分のデータ列を入力し、この入力したデータ列か
ら、復号化データRS2_2に含まれるカテゴリSSS
Sに基づいて付加データAD3を抽出する。
【0085】DCT係数算出部1022は、付加データ
抽出部1021において抽出された付加データAD2と
復号化データRS2_1とに基づいて、AC成分のDC
T係数D2を算出する。DCT係数算出部1032は、
付加データ抽出部1031において抽出された付加デー
タAD3と復号化データRS2_2とに基づいて、AC
成分のDCT係数D3を算出する。
抽出部1021において抽出された付加データAD2と
復号化データRS2_1とに基づいて、AC成分のDC
T係数D2を算出する。DCT係数算出部1032は、
付加データ抽出部1031において抽出された付加デー
タAD3と復号化データRS2_2とに基づいて、AC
成分のDCT係数D3を算出する。
【0086】次に、上述した図10および図11に示す
ハフマン復号化器の動作について説明する。
ハフマン復号化器の動作について説明する。
【0087】図12は、データ抽出部10で抽出される
27ビットのデータ列中において、図10の復号部20
および復号部41〜復号部410が復号化可能な符号化
データの範囲を示す図である。図12に示すように、第
1の復号部20は、抽出データ列Dsの先頭ビット
‘0’から末尾ビット‘26’までの符号化データを復
号化することができる。これに対し、第2の復号部41
は抽出データ列Dsのビット‘3’からビット‘12’
まで、第2の復号部42はビット‘4’からビット‘1
3’まで、第2の復号部43はビット‘5’からビット
‘14’まで、第2の復号部44はビット‘6’からビ
ット‘15’まで、第2の復号部45はビット‘7’か
らビット‘16’まで、第2の復号部46はビット
‘8’からビット‘17’まで、第2の復号部47はビ
ット‘9’からビット‘18’まで、第2の復号部48
はビット‘10’からビット‘19’まで、第2の復号
部49はビット‘11’からビット‘20’まで、第2
の復号部410はビット‘12’からビット‘21’ま
での範囲の符号化データをそれぞれ復号化することがで
きる。
27ビットのデータ列中において、図10の復号部20
および復号部41〜復号部410が復号化可能な符号化
データの範囲を示す図である。図12に示すように、第
1の復号部20は、抽出データ列Dsの先頭ビット
‘0’から末尾ビット‘26’までの符号化データを復
号化することができる。これに対し、第2の復号部41
は抽出データ列Dsのビット‘3’からビット‘12’
まで、第2の復号部42はビット‘4’からビット‘1
3’まで、第2の復号部43はビット‘5’からビット
‘14’まで、第2の復号部44はビット‘6’からビ
ット‘15’まで、第2の復号部45はビット‘7’か
らビット‘16’まで、第2の復号部46はビット
‘8’からビット‘17’まで、第2の復号部47はビ
ット‘9’からビット‘18’まで、第2の復号部48
はビット‘10’からビット‘19’まで、第2の復号
部49はビット‘11’からビット‘20’まで、第2
の復号部410はビット‘12’からビット‘21’ま
での範囲の符号化データをそれぞれ復号化することがで
きる。
【0088】また、抽出データ列Dsの1つ目の符号化
データの復号化に用いる復号化データRS1は、第1の
復号部20によって生成される。2つ目の符号化データ
の復号化に用いる復号化データRS2_1は、1つ目の
符号化データのデータ長L1に応じて、第2の復号部4
1〜第2の復号部44のうちの何れかの復号化データか
ら選択される。3つ目の符号化データの復号化に用いる
復号化データRS2_2は、1つ目の符号化データのデ
ータ長L1と2つ目の符号化データのデータ長L2との
和に応じて、第2の復号部44〜第2の復号部410の
うちの何れかの復号化データから選択される。
データの復号化に用いる復号化データRS1は、第1の
復号部20によって生成される。2つ目の符号化データ
の復号化に用いる復号化データRS2_1は、1つ目の
符号化データのデータ長L1に応じて、第2の復号部4
1〜第2の復号部44のうちの何れかの復号化データか
ら選択される。3つ目の符号化データの復号化に用いる
復号化データRS2_2は、1つ目の符号化データのデ
ータ長L1と2つ目の符号化データのデータ長L2との
和に応じて、第2の復号部44〜第2の復号部410の
うちの何れかの復号化データから選択される。
【0089】図13は、抽出データ列Dsに含まれる3
つの符号化データの一例を示す図である。図13におい
て、抽出データ列Dsの先頭ビット‘0’からビット
‘5’までの6ビット分が1つ目の符号化データ1、ビ
ット‘6’からビット‘10’までの5ビット分が2つ
目の符号化データ2、ビット‘11’からビット‘2
0’までの10ビット分が3つ目の符号化データ3とな
っている。また符号化データ1の前半3ビットはハフマ
ン符号、後半3ビットは付加ビットとなっている。符号
化データ2の前半2ビットはハフマン符号、後半3ビッ
トは付加ビットとなっている。符号化データ3の前半5
ビットはハフマン符号、後半5ビットは付加ビットとな
っている。
つの符号化データの一例を示す図である。図13におい
て、抽出データ列Dsの先頭ビット‘0’からビット
‘5’までの6ビット分が1つ目の符号化データ1、ビ
ット‘6’からビット‘10’までの5ビット分が2つ
目の符号化データ2、ビット‘11’からビット‘2
0’までの10ビット分が3つ目の符号化データ3とな
っている。また符号化データ1の前半3ビットはハフマ
ン符号、後半3ビットは付加ビットとなっている。符号
化データ2の前半2ビットはハフマン符号、後半3ビッ
トは付加ビットとなっている。符号化データ3の前半5
ビットはハフマン符号、後半5ビットは付加ビットとな
っている。
【0090】この場合、抽出データDsの先頭ビット
‘0’から16ビット分のデータ列が第1の復号部20
に入力され、その入力されたデータ列の先頭3ビットか
らハフマン符号が検索される。そして、検索されたハフ
マン符号に対応したゼロランレングスRRRRおよびカ
テゴリSSSSが復号化データRS1として出力され
る。
‘0’から16ビット分のデータ列が第1の復号部20
に入力され、その入力されたデータ列の先頭3ビットか
らハフマン符号が検索される。そして、検索されたハフ
マン符号に対応したゼロランレングスRRRRおよびカ
テゴリSSSSが復号化データRS1として出力され
る。
【0091】第1の復号部20の復号化データRS1
は、DCT係数出力部101に入力され、この復号化デ
ータRS1と抽出データ列Dsとに基づいて、符号化デ
ータ1のDCT係数D1が算出される。
は、DCT係数出力部101に入力され、この復号化デ
ータRS1と抽出データ列Dsとに基づいて、符号化デ
ータ1のDCT係数D1が算出される。
【0092】第1のデータ長算出部30のおいては、こ
の復号化データRS1のカテゴリSSSSで指定される
付加ビットのデータ長と、復号化データRS1に対応す
るハフマン符号のデータ長との和に応じて、符号化デー
タ1のデータ長L1が算出される。図13の例では、ハ
フマン符号の3ビットと付加ビットの3ビットとの和か
ら、データ長L1として6ビットが算出される。
の復号化データRS1のカテゴリSSSSで指定される
付加ビットのデータ長と、復号化データRS1に対応す
るハフマン符号のデータ長との和に応じて、符号化デー
タ1のデータ長L1が算出される。図13の例では、ハ
フマン符号の3ビットと付加ビットの3ビットとの和か
ら、データ長L1として6ビットが算出される。
【0093】算出されたデータ長L1は選択部51に入
力され、このデータ長L1に応じて第2の復号部が選択
される。図13の例では、抽出データ列Dsの先頭ビッ
ト‘0’に対して7ビット目のビット‘6’からハフマ
ン符号の検索を行う第2の復号部44が選択される。そ
して、その復号化データRS24および検索エラー信号
Esr4が、それぞれ復号化データRS2_1および検
索エラー信号Esr_1として選択部51から出力され
る。
力され、このデータ長L1に応じて第2の復号部が選択
される。図13の例では、抽出データ列Dsの先頭ビッ
ト‘0’に対して7ビット目のビット‘6’からハフマ
ン符号の検索を行う第2の復号部44が選択される。そ
して、その復号化データRS24および検索エラー信号
Esr4が、それぞれ復号化データRS2_1および検
索エラー信号Esr_1として選択部51から出力され
る。
【0094】ただし、図13の例では、符号化データ1
のデータ長は6ビットであり、3ビット〜6ビットの範
囲に含まれているので、この場合、選択エラー信号Es
el_1は出力されない。また、符号化データ2のハフ
マン符号は2ビットであり、5ビットを越えていないの
で、第2の復号部44から検索エラー信号Esr4は出
力されない。したがって、選択部51から検索エラー信
号Esr_1は出力されない。
のデータ長は6ビットであり、3ビット〜6ビットの範
囲に含まれているので、この場合、選択エラー信号Es
el_1は出力されない。また、符号化データ2のハフ
マン符号は2ビットであり、5ビットを越えていないの
で、第2の復号部44から検索エラー信号Esr4は出
力されない。したがって、選択部51から検索エラー信
号Esr_1は出力されない。
【0095】選択部51において選択された復号化デー
タRS2_1は、DCT係数出力部102に入力され、
この復号化データRS2_1と抽出データ列Dsとに基
づいて、符号化データ2のDCT係数D2が算出され
る。
タRS2_1は、DCT係数出力部102に入力され、
この復号化データRS2_1と抽出データ列Dsとに基
づいて、符号化データ2のDCT係数D2が算出され
る。
【0096】第2のデータ長算出部61においては、こ
の復号化データRS2_1のカテゴリSSSSで指定さ
れる付加ビットのデータ長と、復号化データRS2_1
に対応するハフマン符号のデータ長との和に応じて、符
号化データ2のデータ長L2が算出される。図13の例
では、ハフマン符号の2ビットと付加ビットの3ビット
との和から、データ長L2として5ビットが算出され
る。
の復号化データRS2_1のカテゴリSSSSで指定さ
れる付加ビットのデータ長と、復号化データRS2_1
に対応するハフマン符号のデータ長との和に応じて、符
号化データ2のデータ長L2が算出される。図13の例
では、ハフマン符号の2ビットと付加ビットの3ビット
との和から、データ長L2として5ビットが算出され
る。
【0097】算出されたデータ長L1とデータ長L2
は、ともに選択部52に入力され、データ長L1とデー
タ長L2との和に応じて第2の復号部が選択される。図
13の例では、抽出データ列Dsのビット‘11’から
ハフマン符号の検索を行う第2の復号部49が選択され
る。そして、その復号化データRS29および検索エラ
ー信号Esr9が、それぞれ復号化データRS2_2お
よび検索エラー信号Esr_2として選択部52から出
力される。
は、ともに選択部52に入力され、データ長L1とデー
タ長L2との和に応じて第2の復号部が選択される。図
13の例では、抽出データ列Dsのビット‘11’から
ハフマン符号の検索を行う第2の復号部49が選択され
る。そして、その復号化データRS29および検索エラ
ー信号Esr9が、それぞれ復号化データRS2_2お
よび検索エラー信号Esr_2として選択部52から出
力される。
【0098】選択部52において選択された復号化デー
タRS2_2は、DCT係数出力部103に入力され、
この復号化データRS2_2と抽出データ列Dsとに基
づいて、符号化データ3のDCT係数D3が算出され
る。
タRS2_2は、DCT係数出力部103に入力され、
この復号化データRS2_2と抽出データ列Dsとに基
づいて、符号化データ3のDCT係数D3が算出され
る。
【0099】ただし、図13の例において、符号化デー
タ1と符号化データ2のデータ長の和は11ビットであ
り、6ビット〜12ビットの範囲に含まれているので、
この場合、選択エラー信号Esel_1は出力されな
い。また、符号化データ3のハフマン符号は5ビットで
あり、5ビットを越えていないので、第2の復号部49
から検索エラー信号Esr9は出力されない。したがっ
て、選択部52から検索エラー信号Esr_2は出力さ
れない。
タ1と符号化データ2のデータ長の和は11ビットであ
り、6ビット〜12ビットの範囲に含まれているので、
この場合、選択エラー信号Esel_1は出力されな
い。また、符号化データ3のハフマン符号は5ビットで
あり、5ビットを越えていないので、第2の復号部49
から検索エラー信号Esr9は出力されない。したがっ
て、選択部52から検索エラー信号Esr_2は出力さ
れない。
【0100】算出されたデータ長L1〜データ長L3
は、ともにデータ抽出位置シフト部80’に入力され、
第1の無効信号Siv_1および第2の無効信号Siv
_2が何れも生成されていない場合に、これらのデータ
長の総和に応じたシフト信号Sftが生成される。この
場合、図13の例では、抽出データ列Dsのビット‘2
1’にデータ抽出位置がシフトされ、次の3つの符号化
データはこの位置から復号化される。第1の無効信号S
iv_1が生成されている場合には、復号化データRS
2_1および復号化データRS2_2が共に無効である
ので、データ長L2およびデータ長L3によるシフト分
は無視され、データ長L1のみに応じたシフト信号Sf
tが生成される、この場合、図13の例では、抽出デー
タ列Dsのビット‘6’にデータ抽出位置がシフトされ
る。第2の無効信号Siv_2が生成されている場合に
は、復号化データRS2_2が無効であるので、データ
長L3によるシフト分は無視され、データ長L1とデー
タ長L2との和に応じたシフト信号Sftが生成され
る、この場合、図13の例では、抽出データ列Dsのビ
ット‘11’にデータ抽出位置がシフトされる。
は、ともにデータ抽出位置シフト部80’に入力され、
第1の無効信号Siv_1および第2の無効信号Siv
_2が何れも生成されていない場合に、これらのデータ
長の総和に応じたシフト信号Sftが生成される。この
場合、図13の例では、抽出データ列Dsのビット‘2
1’にデータ抽出位置がシフトされ、次の3つの符号化
データはこの位置から復号化される。第1の無効信号S
iv_1が生成されている場合には、復号化データRS
2_1および復号化データRS2_2が共に無効である
ので、データ長L2およびデータ長L3によるシフト分
は無視され、データ長L1のみに応じたシフト信号Sf
tが生成される、この場合、図13の例では、抽出デー
タ列Dsのビット‘6’にデータ抽出位置がシフトされ
る。第2の無効信号Siv_2が生成されている場合に
は、復号化データRS2_2が無効であるので、データ
長L3によるシフト分は無視され、データ長L1とデー
タ長L2との和に応じたシフト信号Sftが生成され
る、この場合、図13の例では、抽出データ列Dsのビ
ット‘11’にデータ抽出位置がシフトされる。
【0101】また、復号部20から出力される復号化デ
ータRS1、選択部51から出力される復号化データR
S2_1、および選択部52から出力される復号化デー
タRS2_2は共に計数部90’に入力され、これらの
復号化データに含まれるゼロランレングスRRRRか
ら、単位ブロック内で復号化されたAC成分の数が計数
される。計数値Scntが63個を越える場合におい
て、64個のDCT計数からなる単位ブロックの末尾の
データが符号化データ1に含まれる場合には第1の計数
エラー信号Ecnt_1が生成され、符号化データ2に
含まれる場合には第2の計数エラー信号Ecnt_2が
生成される。この末尾のデータが符号化データ3に含ま
れる場合は、計数値Scntが63個を越えないので、
計数エラー信号は生成されない。
ータRS1、選択部51から出力される復号化データR
S2_1、および選択部52から出力される復号化デー
タRS2_2は共に計数部90’に入力され、これらの
復号化データに含まれるゼロランレングスRRRRか
ら、単位ブロック内で復号化されたAC成分の数が計数
される。計数値Scntが63個を越える場合におい
て、64個のDCT計数からなる単位ブロックの末尾の
データが符号化データ1に含まれる場合には第1の計数
エラー信号Ecnt_1が生成され、符号化データ2に
含まれる場合には第2の計数エラー信号Ecnt_2が
生成される。この末尾のデータが符号化データ3に含ま
れる場合は、計数値Scntが63個を越えないので、
計数エラー信号は生成されない。
【0102】図13の例では、第1の選択エラー信号E
sel_1、第2の選択エラー信号Ssel_2、検索
エラー信号Esr_1および検索エラー信号Esr_2
は何れも出力されていないので、これによる無効信号は
生成されない。復号化データRS1に単位ブロックの末
尾を示す符号EOBが含まれる場合や、計数部90’に
おいて第1の計数エラー信号Ecnt_1が出力される
場合に、第1の無効信号Siv_1が生成される。ま
た、復号化データRS2_1に単位ブロックの末尾を示
す符号EOBが含まれる場合や、計数部90’において
第2の計数エラー信号Ecnt_2が出力される場合
に、第2の無効信号Siv_2が生成される。
sel_1、第2の選択エラー信号Ssel_2、検索
エラー信号Esr_1および検索エラー信号Esr_2
は何れも出力されていないので、これによる無効信号は
生成されない。復号化データRS1に単位ブロックの末
尾を示す符号EOBが含まれる場合や、計数部90’に
おいて第1の計数エラー信号Ecnt_1が出力される
場合に、第1の無効信号Siv_1が生成される。ま
た、復号化データRS2_1に単位ブロックの末尾を示
す符号EOBが含まれる場合や、計数部90’において
第2の計数エラー信号Ecnt_2が出力される場合
に、第2の無効信号Siv_2が生成される。
【0103】図14は、符号化データ3のハフマン符号
長が5ビットを越えるために検索エラー信号Esrが出
力される例を示す。図14において、抽出データ列Ds
の先頭ビット‘0’からビット‘4’までの5ビット分
が1つ目の符号化データ1、ビット‘5’からビット
‘8’までの4ビット分が2つ目の符号化データ2、ビ
ット‘9’からビット‘20’までの12ビットが3つ
目の符号化データとなっている。また符号化データ1の
前半2ビットはハフマン符号、後半3ビットは付加ビッ
トとなっている。符号化データ2の前半2ビットはハフ
マン符号、後半2ビットは付加ビットとなっている。符
号化データ3の前半6ビットはハフマン符号、後半6ビ
ットは付加ビットとなっている。
長が5ビットを越えるために検索エラー信号Esrが出
力される例を示す。図14において、抽出データ列Ds
の先頭ビット‘0’からビット‘4’までの5ビット分
が1つ目の符号化データ1、ビット‘5’からビット
‘8’までの4ビット分が2つ目の符号化データ2、ビ
ット‘9’からビット‘20’までの12ビットが3つ
目の符号化データとなっている。また符号化データ1の
前半2ビットはハフマン符号、後半3ビットは付加ビッ
トとなっている。符号化データ2の前半2ビットはハフ
マン符号、後半2ビットは付加ビットとなっている。符
号化データ3の前半6ビットはハフマン符号、後半6ビ
ットは付加ビットとなっている。
【0104】図14の例では、符号化データ1のデータ
長L1が5ビットなので、選択部51において第2の復
号部43が選択される。また、符号化データ1と符号化
データ2のデータ長の和は9ビットであるので、選択部
52において第2の復号部47が選択される。この第2
の復号部47に入力される符号化データ3のハフマン符
号長は、図14に示すように6ビットであるため、第2
の復号部47ではこのハフマン符号を検索することがで
きず、第2の復号部47から検索エラー信号Esr7が
出力される。この検索エラー信号が選択部52において
選択されるため、選択部52からは検索エラー信号Es
r_2が出力され、第2の無効信号Siv_2が生成さ
れる。
長L1が5ビットなので、選択部51において第2の復
号部43が選択される。また、符号化データ1と符号化
データ2のデータ長の和は9ビットであるので、選択部
52において第2の復号部47が選択される。この第2
の復号部47に入力される符号化データ3のハフマン符
号長は、図14に示すように6ビットであるため、第2
の復号部47ではこのハフマン符号を検索することがで
きず、第2の復号部47から検索エラー信号Esr7が
出力される。この検索エラー信号が選択部52において
選択されるため、選択部52からは検索エラー信号Es
r_2が出力され、第2の無効信号Siv_2が生成さ
れる。
【0105】したがって、図14の例では、データ抽出
位置シフト部80’においてデータ長L3が無効にさ
れ、データ抽出位置はデータ長L1とデータ長L2との
和に応じてシフトされる。すなわち、次の3つの符号化
データを復号化する先頭ビットは抽出データ列Dsのビ
ット‘9’に設定される。また、第2の無効信号Siv
_2が生成されるため、DCT係数出力部103から出
力されるDCT係数D3は、逆量子化器1003および
逆DCT器1004において無効なデータとして処理さ
れる。さらに、復号化データRS2_2のゼロランレン
グスRRRRに対応する復号化数は計数部90’におい
て無効とされ、この分の復号化数は計数値Scntに加
算されない。
位置シフト部80’においてデータ長L3が無効にさ
れ、データ抽出位置はデータ長L1とデータ長L2との
和に応じてシフトされる。すなわち、次の3つの符号化
データを復号化する先頭ビットは抽出データ列Dsのビ
ット‘9’に設定される。また、第2の無効信号Siv
_2が生成されるため、DCT係数出力部103から出
力されるDCT係数D3は、逆量子化器1003および
逆DCT器1004において無効なデータとして処理さ
れる。さらに、復号化データRS2_2のゼロランレン
グスRRRRに対応する復号化数は計数部90’におい
て無効とされ、この分の復号化数は計数値Scntに加
算されない。
【0106】図15は、符号化データ1のデータ長と符
号化データ2のデータ長との和が6ビット〜12ビット
の範囲に含まれないために、第2の選択エラー信号Es
el_2が出力される例を示す。図15において、抽出
データ列Dsの先頭ビット‘0’からビット‘5’まで
の6ビット分が1つ目の符号化データ1、ビット‘6’
からビット‘15’までの10ビット分が2つ目の符号
化データ2、ビット‘16’からビット‘20’までの
5ビット分が3つ目の符号化データ3となっている。ま
た符号化データ1の前半3ビットはハフマン符号、後半
3ビットは付加ビットとなっている。符号化データ2の
前半5ビットはハフマン符号、後半5ビットは付加ビッ
トとなっている。符号化データ3の前半2ビットはハフ
マン符号、後半3ビットは付加ビットとなっている。
号化データ2のデータ長との和が6ビット〜12ビット
の範囲に含まれないために、第2の選択エラー信号Es
el_2が出力される例を示す。図15において、抽出
データ列Dsの先頭ビット‘0’からビット‘5’まで
の6ビット分が1つ目の符号化データ1、ビット‘6’
からビット‘15’までの10ビット分が2つ目の符号
化データ2、ビット‘16’からビット‘20’までの
5ビット分が3つ目の符号化データ3となっている。ま
た符号化データ1の前半3ビットはハフマン符号、後半
3ビットは付加ビットとなっている。符号化データ2の
前半5ビットはハフマン符号、後半5ビットは付加ビッ
トとなっている。符号化データ3の前半2ビットはハフ
マン符号、後半3ビットは付加ビットとなっている。
【0107】図15の例では、符号化データ1のデータ
長L1が6ビットであるので、選択部51においては第
2の復号部44が選択される。一方、符号化データ1の
データ長L1と符号化データ長L2との和は16ビット
であり、6ビット〜12ビットの範囲を越えているの
で、選択部52においては第2の復号部を選択すること
ができず、第2の選択エラー信号Esel_2が出力さ
れる。これにより、無効信号生成部72において第2の
無効信号Siv_2が生成される。
長L1が6ビットであるので、選択部51においては第
2の復号部44が選択される。一方、符号化データ1の
データ長L1と符号化データ長L2との和は16ビット
であり、6ビット〜12ビットの範囲を越えているの
で、選択部52においては第2の復号部を選択すること
ができず、第2の選択エラー信号Esel_2が出力さ
れる。これにより、無効信号生成部72において第2の
無効信号Siv_2が生成される。
【0108】したがって、図15の例においても図14
と同様に、データ抽出位置シフト部80’においてデー
タ長L3が無効にされ、データ抽出位置はデータ長L1
とデータ長L2との和に応じてシフトされる。この例に
おいて、次に抽出される符号化データの先頭ビットは、
抽出データ列Dsのビット‘16’に設定される。ま
た、第2の無効信号Siv_2が生成されるため、DC
T係数出力部103から出力されるDCT係数D3は、
逆量子化器1003および逆DCT器1004において
無効なデータとして処理される。さらに、復号化データ
RS2_2のゼロランレングスRRRRに対応する復号
化数は計数部90’において無効とされ、この分の復号
化数は計数値Scntに加算されない。
と同様に、データ抽出位置シフト部80’においてデー
タ長L3が無効にされ、データ抽出位置はデータ長L1
とデータ長L2との和に応じてシフトされる。この例に
おいて、次に抽出される符号化データの先頭ビットは、
抽出データ列Dsのビット‘16’に設定される。ま
た、第2の無効信号Siv_2が生成されるため、DC
T係数出力部103から出力されるDCT係数D3は、
逆量子化器1003および逆DCT器1004において
無効なデータとして処理される。さらに、復号化データ
RS2_2のゼロランレングスRRRRに対応する復号
化数は計数部90’において無効とされ、この分の復号
化数は計数値Scntに加算されない。
【0109】図16は、符号化データ1のデータ長が3
ビット〜6ビットの範囲に含まれないために、第1の選
択エラー信号Esel_1が出力される例を示す。図1
6において、抽出データ列Dsの先頭ビット‘0’から
ビット‘6’までの7ビット分が1つ目の符号化データ
1、ビット‘7’からビット‘11’までの5ビット分
が2つ目の符号化データ2、ビット‘12’からビット
‘21’までの10ビット分が3つ目の符号化データ3
となっている。また符号化データ1の前半4ビットはハ
フマン符号、後半3ビットは付加ビットとなっている。
符号化データ2の前半2ビットはハフマン符号、後半3
ビットは付加ビットとなっている。符号化データ3の前
半5ビットはハフマン符号、後半5ビットは付加ビット
となっている。
ビット〜6ビットの範囲に含まれないために、第1の選
択エラー信号Esel_1が出力される例を示す。図1
6において、抽出データ列Dsの先頭ビット‘0’から
ビット‘6’までの7ビット分が1つ目の符号化データ
1、ビット‘7’からビット‘11’までの5ビット分
が2つ目の符号化データ2、ビット‘12’からビット
‘21’までの10ビット分が3つ目の符号化データ3
となっている。また符号化データ1の前半4ビットはハ
フマン符号、後半3ビットは付加ビットとなっている。
符号化データ2の前半2ビットはハフマン符号、後半3
ビットは付加ビットとなっている。符号化データ3の前
半5ビットはハフマン符号、後半5ビットは付加ビット
となっている。
【0110】図16の例では、符号化データ1のデータ
長L1が7ビットであり、3ビット〜6ビットの範囲を
越えているので、選択部51においては第2の復号部を
選択することができず、第1の選択エラー信号Esel
_1が出力される。これにより、無効信号生成部71に
おいて第1の無効信号Siv_1が生成される。
長L1が7ビットであり、3ビット〜6ビットの範囲を
越えているので、選択部51においては第2の復号部を
選択することができず、第1の選択エラー信号Esel
_1が出力される。これにより、無効信号生成部71に
おいて第1の無効信号Siv_1が生成される。
【0111】第1の無効信号Siv_1が生成される
と、第2の無効信号Sivが出力されているか否かに関
わらず、復号化データRS2_1および復号化データR
S2_2が何れも無効になる。したがって、図16の例
では、データ抽出位置シフト部80’においてデータ長
L2およびデータ長L3が共に無効にされ、データ抽出
位置はデータ長L1のみに応じてシフトされる。この例
において、次に抽出される符号化データの先頭ビット
は、抽出データ列Dsのビット‘7’に設定される。ま
た、第1の無効信号Siv_1が生成されるため、DC
T係数出力部102から出力されるDCT係数D2およ
びDCT係数出力部103から出力されるDCT係数D
3は、逆量子化器1003および逆DCT器1004に
おいて何れも無効なデータとして処理される。さらに、
復号化データRS2_1および復号化データRS2_2
のゼロランレングスRRRRに対応する復号化数は、計
数部90’において何れも無効とされ、この分の復号化
数は計数値Scntに加算されない。
と、第2の無効信号Sivが出力されているか否かに関
わらず、復号化データRS2_1および復号化データR
S2_2が何れも無効になる。したがって、図16の例
では、データ抽出位置シフト部80’においてデータ長
L2およびデータ長L3が共に無効にされ、データ抽出
位置はデータ長L1のみに応じてシフトされる。この例
において、次に抽出される符号化データの先頭ビット
は、抽出データ列Dsのビット‘7’に設定される。ま
た、第1の無効信号Siv_1が生成されるため、DC
T係数出力部102から出力されるDCT係数D2およ
びDCT係数出力部103から出力されるDCT係数D
3は、逆量子化器1003および逆DCT器1004に
おいて何れも無効なデータとして処理される。さらに、
復号化データRS2_1および復号化データRS2_2
のゼロランレングスRRRRに対応する復号化数は、計
数部90’において何れも無効とされ、この分の復号化
数は計数値Scntに加算されない。
【0112】ところで、図10のハフマン復号化器にお
いて3つの符号化データが同時に復号化できるのは、1
つ目の符号化データのデータ長が3ビット〜6ビットと
なり、2つ目の符号化データのデータ長も3〜6ビット
となり、かつ、3つ目の符号化データのハフマン符号長
が5ビット以内の場合である。図8および図9の例を参
照して、それぞれのハフマン符号が出現する頻度を掛け
合わせると、3つの符号化データを同時に復号化できる
頻度は、 70%×70%×85%=約42% となる。また、図10のハフマン復号化器において1つ
の符号化データしか復号化できないのは、1つ目の符号
化データのデータ長が3ビット〜6ビットの範囲に含ま
れない場合であり、その頻度は約30%である。したが
って、図10のハフマン復号化器において同時に復号化
できる符号化データの平均数は、 1×30%+2×(100%−42%−30%)+3×
42%=約2.1個 となる。このように、図10のハフマン符号器では、図
17に示す従来例と同等以上の速さでハフマン符号化さ
れたデータストリームを復号化できる。また、図17に
示す従来例と比較して、必要なハフマン復号化用データ
テーブルの記憶容量を小さくすることができるので、回
路構成を簡略化できる。
いて3つの符号化データが同時に復号化できるのは、1
つ目の符号化データのデータ長が3ビット〜6ビットと
なり、2つ目の符号化データのデータ長も3〜6ビット
となり、かつ、3つ目の符号化データのハフマン符号長
が5ビット以内の場合である。図8および図9の例を参
照して、それぞれのハフマン符号が出現する頻度を掛け
合わせると、3つの符号化データを同時に復号化できる
頻度は、 70%×70%×85%=約42% となる。また、図10のハフマン復号化器において1つ
の符号化データしか復号化できないのは、1つ目の符号
化データのデータ長が3ビット〜6ビットの範囲に含ま
れない場合であり、その頻度は約30%である。したが
って、図10のハフマン復号化器において同時に復号化
できる符号化データの平均数は、 1×30%+2×(100%−42%−30%)+3×
42%=約2.1個 となる。このように、図10のハフマン符号器では、図
17に示す従来例と同等以上の速さでハフマン符号化さ
れたデータストリームを復号化できる。また、図17に
示す従来例と比較して、必要なハフマン復号化用データ
テーブルの記憶容量を小さくすることができるので、回
路構成を簡略化できる。
【0113】なお、本発明は上述した実施形態に限定さ
れず、当業者に自明な種々の改変が可能である。例え
ば、本発明の実施形態を説明するための例としてJPE
G復号化装置を示しているが、本発明はこの例に限定さ
れない。同様な他の方式で符号化されたデータストリー
ムのデータ復号化装置にも、本発明は適用可能である。
れず、当業者に自明な種々の改変が可能である。例え
ば、本発明の実施形態を説明するための例としてJPE
G復号化装置を示しているが、本発明はこの例に限定さ
れない。同様な他の方式で符号化されたデータストリー
ムのデータ復号化装置にも、本発明は適用可能である。
【0114】本発明の実施形態を説明するための例にお
いて処理されるデータのデータ長やビット位置、第2の
復号部などのブロックの数は、本発明を何ら限定するも
のではなく、何れも任意に改変可能である。
いて処理されるデータのデータ長やビット位置、第2の
復号部などのブロックの数は、本発明を何ら限定するも
のではなく、何れも任意に改変可能である。
【0115】図10の例では、選択部51において4つ
の復号部(第2の復号部41〜第2の復号部44)から
1つを選択させているが、この選択する復号部を更に増
やすこともできる。例えば、10個全ての復号部(第2
の復号部41〜第2の復号部410)から1つを選択さ
せても良い。これにより、2つ目の符号化データを復号
化できる確率が高くなるので、復号化の効率を更に高め
ることができる。
の復号部(第2の復号部41〜第2の復号部44)から
1つを選択させているが、この選択する復号部を更に増
やすこともできる。例えば、10個全ての復号部(第2
の復号部41〜第2の復号部410)から1つを選択さ
せても良い。これにより、2つ目の符号化データを復号
化できる確率が高くなるので、復号化の効率を更に高め
ることができる。
【0116】上述した第2の実施形態においては3つの
符号化データを同時に復号化可能なハフマン復号化器の
例が示されているが、本発明によれば、4つ以上の符号
化データを同時に復号化できるデータ復号化装置も実現
可能である。
符号化データを同時に復号化可能なハフマン復号化器の
例が示されているが、本発明によれば、4つ以上の符号
化データを同時に復号化できるデータ復号化装置も実現
可能である。
【0117】
【発明の効果】本発明によれば、可変長符号化されたデ
ータストリームを、簡易な構成で高速に復号化できる。
ータストリームを、簡易な構成で高速に復号化できる。
【図1】本発明に係るJPEG復号化装置の概略的な構
成例を示すブロック図である。
成例を示すブロック図である。
【図2】本発明の第1の実施形態に係る、図1のハフマ
ン復号化器の構成例を示す概略的なブロック図である。
ン復号化器の構成例を示す概略的なブロック図である。
【図3】図2に示すハフマン復号化器におけるDCT係
数出力部の構成例を示す概略的なブロック図である。
数出力部の構成例を示す概略的なブロック図である。
【図4】データ抽出部で抽出される27ビットのデータ
列中において、図2の各復号部が復号化できる符号化デ
ータの範囲を示す図である。
列中において、図2の各復号部が復号化できる符号化デ
ータの範囲を示す図である。
【図5】データ抽出部において抽出されるデータ列に含
まれた2つの符号化データの一例を示す図である。
まれた2つの符号化データの一例を示す図である。
【図6】2つ目の符号化データのハフマン符号長が5ビ
ットを越えるために検索エラー信号が出力される例を示
す。
ットを越えるために検索エラー信号が出力される例を示
す。
【図7】1つ目の符号化データのデータ長が3ビット〜
6ビットの範囲に含まれないために選択エラー信号が出
力される例を示す。
6ビットの範囲に含まれないために選択エラー信号が出
力される例を示す。
【図8】一般的な20枚の画像をJPEG符号化した場
合において、ハフマン符号のデータ長ごとの出現数を調
べた結果の一例を示す図である。
合において、ハフマン符号のデータ長ごとの出現数を調
べた結果の一例を示す図である。
【図9】一般的な20枚の画像をJPEG符号化した場
合において、ハフマン符号と付加ビットとの和のデータ
長について、図8と同様に出現数を調べた結果の一例を
示す図である。
合において、ハフマン符号と付加ビットとの和のデータ
長について、図8と同様に出現数を調べた結果の一例を
示す図である。
【図10】本発明の第2の実施形態に係る、図1のハフ
マン復号化器の構成例を示す概略的なブロック図であ
る。
マン復号化器の構成例を示す概略的なブロック図であ
る。
【図11】図10に示すハフマン復号化器におけるDC
T係数出力部の構成例を示す概略的なブロック図であ
る。
T係数出力部の構成例を示す概略的なブロック図であ
る。
【図12】データ抽出部10で抽出される27ビットの
データ列中において、図10の各復号部が復号化可能な
符号化データの範囲を示す図である。
データ列中において、図10の各復号部が復号化可能な
符号化データの範囲を示す図である。
【図13】データ抽出部において抽出されたデータ列に
含まれる3つの符号化データの一例を示す図である。
含まれる3つの符号化データの一例を示す図である。
【図14】符号化データ3のハフマン符号長が5ビット
を越えるために検索エラー信号が出力される例を示す。
を越えるために検索エラー信号が出力される例を示す。
【図15】1つ目の符号化データのデータ長と2つ目の
符号化データのデータ長との和が6ビット〜12ビット
の範囲に含まれないために、第2の選択エラー信号が出
力される例を示す。
符号化データのデータ長との和が6ビット〜12ビット
の範囲に含まれないために、第2の選択エラー信号が出
力される例を示す。
【図16】1つ目の符号化データのデータ長が3ビット
〜6ビットの範囲に含まれないために、第1の選択エラ
ー信号が出力される例を示す。
〜6ビットの範囲に含まれないために、第1の選択エラ
ー信号が出力される例を示す。
【図17】ハフマン符号によって符号化されたデータス
トリームを復号化する従来のデータ復号化装置の構成例
を示すブロック図である。
トリームを復号化する従来のデータ復号化装置の構成例
を示すブロック図である。
1…データシフト部、2a〜2r…復号部、3…セレク
タ、10…データ抽出部、20…第1の復号部、30…
第1のデータ長算出部、41〜49,410…第2の復
号部、50,51,52…選択部、60,61,62…
第2のデータ長算出部、70,71,72…無効信号生
成部、80,80’…データ抽出位置シフト部、90,
90’…計数部、101〜103…DCT係数出力部、
1011,1021,1031…付加データ抽出部、1
012,1022,1032…DCT係数算出部、10
01…バッファ、1002…ハフマン復号化器、100
3…逆量子化器、1004…逆DCT器。
タ、10…データ抽出部、20…第1の復号部、30…
第1のデータ長算出部、41〜49,410…第2の復
号部、50,51,52…選択部、60,61,62…
第2のデータ長算出部、70,71,72…無効信号生
成部、80,80’…データ抽出位置シフト部、90,
90’…計数部、101〜103…DCT係数出力部、
1011,1021,1031…付加データ抽出部、1
012,1022,1032…DCT係数算出部、10
01…バッファ、1002…ハフマン復号化器、100
3…逆量子化器、1004…逆DCT器。
─────────────────────────────────────────────────────
フロントページの続き
Fターム(参考) 5C059 KK09 KK11 MA00 MA23 MC11
MC24 MC33 MC34 MC38 ME02
ME08 PP01 RC40 TA58 TB08
TC00 UA05 UA32
5C078 AA04 BA57 CA31 DA02 DA06
5J064 AA03 AA04 BA09 BA16 BB05
BC01 BC16 BC25 BC28
Claims (16)
- 【請求項1】 供給される符号化データストリームを復
号化するデータ復号化装置であって、 上記符号化データストリームの先頭から所定データ長の
データ列を抽出するデータ抽出手段と、 上記データ抽出手段において抽出されたデータ列の先頭
から、所定の可変長符号テーブルに含まれる可変長符号
を検索し、当該検索した可変長符号に対応する復号化デ
ータを出力する第1の復号手段と、 上記第1の復号手段の復号化データと、当該復号化デー
タに対応する上記可変長符号のデータ長とに基づいて、
当該復号化データに対応する符号化データのデータ長を
算出し、第1のデータ長として出力する第1のデータ長
算出手段と、 上記データ抽出手段において抽出されたデータ列の先頭
に対して複数の異なるデータ数だけ末尾側にずれたデー
タ位置から、上記可変長符号テーブルの一部の可変長符
号をそれぞれ検索し、当該検索した可変長符号に対応す
る復号化データを出力し、当該検索において該当する可
変長符号が見つからない場合には検索エラー信号を出力
する複数の第2の復号手段と、 上記複数の第2の復号化手段の中から、上記第1のデー
タ長に応じて選択した第2復号手段の復号化データまた
は上記検索エラー信号を出力し、該当する第2の復号手
段が無い場合には選択エラー信号を出力する選択手段
と、 上記選択手段において選択された第2の復号手段の復号
化データと、当該復号化データに対応する上記可変長符
号のデータ長とに基づいて、当該復号化データに対応す
る符号化データのデータ長を算出し、第2のデータ長と
して出力する第2のデータ長算出手段と、 上記選択手段において選択された第2の復号手段から上
記検索エラー信号が出力される場合、または上記選択手
段から上記選択エラー信号が出力される場合に、上記第
2の復号手段の復号化データが無効であることを知らせ
る無効信号を生成する無効信号生成手段と、 上記第1のデータ長と上記第2のデータ長との和に応じ
たデータ数だけ、上記データ抽出手段のデータ列抽出位
置を上記符号化データストリームの末尾側にシフトさ
せ、上記無効信号が生成される場合には、上記第1のデ
ータ長に応じたデータ数だけ上記抽出位置を上記末尾側
へシフトさせるデータ抽出位置シフト手段と を有するデータ復号化装置。 - 【請求項2】 上記符号化データストリームは、上記可
変長符号と付加データとで構成された符号化データを含
み、 上記第1の復号手段の復号化データに含まれた上記付加
データのデータ長の情報に基づいて、上記データ抽出手
段の抽出データ列から上記付加データを更に抽出する第
1の付加データ抽出手段と、 上記選択手段から出力される復号化データに含まれた上
記付加データのデータ長の情報に基づいて、上記データ
抽出手段の抽出データ列から上記付加データを更に抽出
する第2の付加データ抽出手段とを有する、 請求項1に記載のデータ復号化装置。 - 【請求項3】 上記符号化データストリームは、所定値
のデータが連続する数と、当該所定値のデータに続く他
の値のデータとに応じて、所望のデータストリームを所
定データ数の単位ブロックごとに符号化して生成された
データストリームを含み、 上記第1の復号手段の復号化データと上記選択手段に選
択された第2の復号手段の復号化データとに含まれる上
記連続数の情報に応じて、上記単位ブロック内で復号化
されたデータの数を計数し、上記無効信号が生成される
場合に、上記選択された第2の復号手段の復号化データ
に含まれる上記連続数の情報を無効にして上記計数を行
ない、当該計数値が上記所定データ数に達した場合に
は、当該計数値を初期化する計数手段を有する、 請求項1に記載のデータ復号化装置。 - 【請求項4】 上記計数手段は、計数値が上記所定デー
タ数より大きくなる場合に計数エラー信号を出力し、 上記無効信号生成手段は、上記第1の復号手段の復号化
データに上記単位ブロックの末尾を示す所定の情報が含
まれる場合、または上記計数手段において計数エラー信
号が出力される場合に上記無効信号を生成する、 請求項3に記載のデータ復号化装置。 - 【請求項5】 上記複数の第2の復号化手段の少なくと
も一部から、上記第1のデータ長ないし第nのデータ長
(符号nは、所定の自然数Nに対して1≦n≦Nを満た
す任意の自然数を示す)の総和に応じて選択した第2の
復号手段の復号化データおよび上記検索エラー信号を出
力し、該当する第2の復号手段が無い場合には第nの選
択エラー信号を出力する複数の選択手段と、 上記選択手段において上記第1のデータ長ないし第nの
データ長の総和に応じて選択された第2の復号部の復号
化データと、当該復号化データに対応する上記可変長符
号のデータ長とに基づいて、当該復号化データに対応す
る符号化データのデータ長を算出し、第(n+1)のデ
ータ長として出力する複数の第2のデータ長算出手段
と、 上記選択手段において上記第1のデータ長ないし第nの
データ長の総和に応じて選択された第2の復号手段から
上記検索エラー信号が出力される場合、または上記選択
手段から上記第nの選択エラー信号が出力される場合
に、上記第1のデータ長ないし第mのデータ長(符号m
は、所定の自然数Nに対してn≦m≦Nを満たす任意の
自然数を示す)の総和に応じて選択された第2の復号手
段の復号化データが全て無効であることを知らせる第n
の無効信号を生成する複数の無効信号生成手段とを有
し、 上記データ抽出位置シフト手段は、上記第1のデータ長
ないし第Nのデータ長の総和に応じたデータ数だけ、上
記データ抽出手段のデータ列抽出位置を上記符号化デー
タストリームの末尾側にシフトさせ、上記第nの無効信
号が生成される場合には、上記第1のデータ長ないし第
nのデータ長の総和に応じたデータ数だけ上記抽出位置
を上記末尾側へシフトさせる、 請求項1に記載のデータ復号化装置。 - 【請求項6】 上記符号化データストリームは、上記可
変長符号と付加データとで構成された符号化データを含
み、 上記第1の復号手段の復号化データに含まれた上記付加
データのデータ長の情報に基づいて、上記データ抽出手
段の抽出データ列から上記付加データを更に抽出する第
1の付加データ抽出手段と、 上記複数の選択手段において選択された第2の復号手段
の復号化データに含まれる上記付加データのデータ長の
情報に基づいて、上記データ抽出手段の抽出データ列か
ら上記付加データを更に抽出する複数の第2の付加デー
タ抽出手段とを有する、 請求項5に記載のデータ復号化装置。 - 【請求項7】 上記符号化データストリームは、所定値
のデータが連続する数と、当該所定値のデータに続く他
の値のデータとに応じて、所望のデータストリームを所
定データ数の単位ブロックごとに符号化して生成された
データストリームを含み、 上記第1の復号手段の復号化データと上記複数の選択手
段において選択された第2の復号手段の復号化データと
に含まれる上記連続数の情報に応じて、上記単位ブロッ
ク内で復号化されたデータの数を計数し、上記第nの無
効信号が生成される場合は、上記第1のデータ長ないし
第mのデータ長の総和に応じて選択された第2の復号手
段の復号化データに含まれる上記連続数の情報を全て無
効にして上記計数を行ない、当該計数値が上記所定デー
タ数に達した場合には、当該計数値を初期化する計数手
段を有する、 請求項5に記載のデータ復号化装置。 - 【請求項8】 上記計数手段は、計数値が上記所定デー
タ数より大きくなる場合に、上記第1のデータ長ないし
第mのデータ長の総和に応じて選択された第2の復号手
段の復号化データに含まれる上記連続数の情報を全て無
効にした計数値が上記所定データ数より大きくなる最小
の自然数nにおいて、第nの計数エラー信号を出力し、 上記無効信号生成手段は、上記第1の復号手段の復号化
データに上記単位ブロックの末尾を示す所定の情報が含
まれる場合に第1の無効信号を生成し、第1のデータ長
ないし第nのデータ長の総和に応じて選択された第2の
復号手段の復号化データに当該所定の情報が含まれる場
合に第(n+1)の無効信号を生成し、上記計数手段に
おいて第nの計数エラー信号が出力される場合に第nの
無効信号を生成する、請求項7に記載のデータ復号化装
置。 - 【請求項9】 供給される符号化データストリームを復
号化するデータ復号化方法であって、 上記符号化データストリームの先頭から所定データ長の
データ列を抽出するステップと、 上記抽出したデータ列の先頭から、所定の可変長符号テ
ーブルに含まれる可変長符号を検索し、当該検索した可
変長符号に対応する第1の復号化データを生成するステ
ップと、 上記生成された第1の復号化データと、当該第1の復号
化データに対応する上記可変長符号のデータ長とに基づ
いて、当該第1の復号化データに対応する符号化データ
のデータ長を第1のデータ長として算出するステップ
と、 上記データ抽出ステップにおいて抽出されたデータ列の
先頭に対して複数の異なるデータ数だけ末尾側にずれた
データ位置から、上記第1の可変長符号テーブルの一部
の可変長符号をそれぞれ検索し、当該検索した可変長符
号に対応する第2の復号化データを生成し、当該検索に
おいて該当する可変長符号が見つからない場合には検索
エラー信号を生成する第2の復号ステップと、 上記生成された複数の第2の復号化データまたは検索エ
ラー信号の中から、上記第1のデータ長に応じたデータ
位置における上記可変長符号の検索によって生成された
第2の復号化データまたは検索エラー信号を選択し、該
当する第2の復号化データまたは検索エラー信号が無い
場合には選択エラー信号を生成するステップと、 上記選択された第2の復号化データと、当該第2の復号
化データに対応する上記可変長符号のデータ長とに基づ
いて、当該第2の復号化データに対応する符号化データ
のデータ長を第2のデータ長として算出するステップ
と、 上記選択ステップにおいて上記検索エラー信号が選択さ
れる場合、または上記選択エラー信号が生成される場合
に、上記第2の復号化データが無効であることを知らせ
る無効信号を生成するステップと、 上記第1のデータ長と上記第2のデータ長との和に応じ
たデータ数だけ、上記データ抽出ステップのデータ列抽
出位置を上記符号化データストリームの末尾側にシフト
させ、上記無効信号が生成される場合には、上記第1の
データ長に応じたデータ数だけ上記抽出位置を上記末尾
側へシフトさせるステップとを有するデータ復号化方
法。 - 【請求項10】 上記符号化データストリームは、上記
可変長符号と付加データとで構成された符号化データを
含み、 上記第1の復号化データに含まれる上記付加データのデ
ータ長の情報に基づいて、上記データ抽出ステップの抽
出データ列から上記付加データを更に抽出するステップ
と、 上記選択された第2の復号化データに含まれる上記付加
データのデータ長の情報に基づいて、上記データ抽出ス
テップの抽出データ列から上記付加データを更に抽出す
るステップとを有する、 請求項9に記載のデータ復号化方法。 - 【請求項11】 上記符号化データストリームは、所定
値のデータが連続する数と、当該所定値のデータに続く
他の値のデータとに応じて、所望のデータストリームを
所定データ数の単位ブロックごとに符号化して生成され
たデータストリームを含み、 上記第1の復号化データと上記選択された第2の復号化
データとに含まれる上記連続数の情報に応じて、上記単
位ブロック内で復号化されたデータの数を計数し、上記
無効信号が生成される場合に、上記選択された第2の復
号化データに含まれる上記連続数の情報を無効にして上
記計数を行ない、当該計数値が上記所定データ数に達し
た場合には、当該計数値を初期化するステップを有す
る、 請求項9に記載のデータ復号化方法。 - 【請求項12】 上記計数ステップにおいて、上記計数
値が上記所定データ数より大きくなる場合に計数エラー
信号を生成し、 上記無効信号を生成するステップにおいて、上記第1の
復号化データに上記単位ブロックの末尾を示す所定の情
報が含まれる場合、または上記計数エラー信号が生成さ
れる場合に上記無効信号を生成する、 請求項11に記載のデータ復号化方法。 - 【請求項13】 上記生成された複数の第2の復号化デ
ータまたは検索エラー信号の少なくとも一部から、上記
第1のデータ長ないし第nのデータ長の総和に応じたデ
ータ位置における可変長符号の検索によって生成された
第2の復号化データまたは検索エラー信号を選択し、該
当する第2の復号化データまたは検索エラー信号が無い
場合には第nの選択エラー信号を生成するステップと、 上記選択ステップにおいて上記第1のデータ長ないし第
nのデータ長の総和に応じて上記検索エラー信号が選択
される場合、上記第1のデータ長ないし第mのデータ長
(符号mは、所定の自然数Nに対してn≦m≦Nを満た
す任意の自然数を示す)の総和に応じて選択された第2
の復号化データが全て無効であることを知らせる第nの
無効信号を生成するステップと、 上記第1のデータ長ないし第nのデータ長の総和に応じ
て選択された第2の復号化データと、当該第2の復号化
データに対応する上記可変長符号のデータ長とに基づい
て、当該第2の復号化データに対応する符号化データの
データ長を第(n+1)のデータ長として算出するステ
ップとを、所定の自然数Nに対して1≦n≦Nを満たす
範囲で反復し、 上記データの抽出位置をシフトするステップにおいて、
上記第1のデータ長ないし第Nのデータ長の総和に応じ
たデータ数だけ、上記抽出位置を上記符号化データスト
リームの末尾側にシフトさせ、上記第nの無効信号が生
成される場合には、上記第1のデータ長ないし第nのデ
ータ長の総和に応じたデータ数だけ上記抽出位置を上記
末尾側へシフトさせる、 請求項9に記載のデータ復号化方法。 - 【請求項14】 上記符号化データストリームは、上記
可変長符号と付加データとで構成された符号化データを
含み、 上記第1の復号化データに含まれた上記付加データのデ
ータ長の情報に基づいて、上記データ抽出ステップの抽
出データ列から上記付加データを更に抽出するステップ
と、 上記選択された第2の復号化データに含まれる上記付加
データのデータ長の情報に基づいて、上記データ抽出ス
テップの抽出データ列から上記付加データを更に抽出す
るステップとを有する、 請求項13に記載のデータ復号化方法。 - 【請求項15】 上記符号化データストリームは、所定
値のデータが連続する数と、当該所定値のデータに続く
他の値のデータとに応じて、所望のデータストリームを
所定データ数の単位ブロックごとに符号化して生成され
たデータストリームを含み、 上記第1の復号化データと上記選択された複数の第2の
復号化データとに含まれる上記連続数の情報に応じて、
上記単位ブロック内で復号化されたデータの数を計数
し、上記第nの無効信号が生成される場合は、上記第1
のデータ長ないし第mのデータ長の総和に応じて選択さ
れた第2の復号化データに含まれる上記連続数の情報を
全て無効にして上記計数を行ない、当該計数値が上記所
定データ数に達した場合には、当該計数値を初期化する
ステップを有する、 請求項13に記載のデータ復号化方法。 - 【請求項16】 上記計数ステップにおいて、上記計数
値が上記所定データ数より大きくなる場合において、上
記第1のデータ長ないし第mのデータ長の総和に応じて
選択された第2の復号化データに含まれる上記連続数の
情報を全て無効にした計数値が上記所定データ数より大
きくなる最小の自然数nにおいて、第nの計数エラー信
号を生成し、 上記無効信号を生成するステップにおいて、上記第1の
復号化データに上記単位ブロックの末尾を示す所定の情
報が含まれる場合に第1の無効信号を生成し、上記第1
のデータ長ないし第mのデータ長の総和に応じて選択さ
れた第2の復号化データに当該所定の情報が含まれる場
合に第(n+1)の無効信号を生成し、上記第nの計数
エラー信号が出力される場合に第nの無効信号を生成す
る、請求項15に記載のデータ復号化方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001370406A JP2003174366A (ja) | 2001-12-04 | 2001-12-04 | データ復号化装置およびその方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001370406A JP2003174366A (ja) | 2001-12-04 | 2001-12-04 | データ復号化装置およびその方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2003174366A true JP2003174366A (ja) | 2003-06-20 |
Family
ID=19179637
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001370406A Pending JP2003174366A (ja) | 2001-12-04 | 2001-12-04 | データ復号化装置およびその方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2003174366A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010130213A (ja) * | 2008-11-26 | 2010-06-10 | Samsung Digital Imaging Co Ltd | 画像符号化装置及び画像符号化方法 |
| JP2014078994A (ja) * | 2013-12-13 | 2014-05-01 | Dainippon Printing Co Ltd | 数値データ列の符号化/復号化の方法および装置 |
-
2001
- 2001-12-04 JP JP2001370406A patent/JP2003174366A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010130213A (ja) * | 2008-11-26 | 2010-06-10 | Samsung Digital Imaging Co Ltd | 画像符号化装置及び画像符号化方法 |
| JP2014078994A (ja) * | 2013-12-13 | 2014-05-01 | Dainippon Printing Co Ltd | 数値データ列の符号化/復号化の方法および装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4286322B2 (ja) | 符号化されたビデオ画像の送信及び受信 | |
| JPH0818460A (ja) | ハフマンデコーダー | |
| EP0683568A1 (en) | Variable length code look-up table having separate code length determination | |
| CN102196265A (zh) | 图像编码装置和方法、图像解码装置和方法、以及程序 | |
| JP4098187B2 (ja) | 可変長コード復号化装置及び方法 | |
| JP4181887B2 (ja) | 可変長符号化装置、及びその方法 | |
| CN100546200C (zh) | 用于从位流解码可变长代码字的方法、解码器、系统和设备 | |
| JP2003174366A (ja) | データ復号化装置およびその方法 | |
| JP3562661B2 (ja) | 画像信号符号化方法及び画像信号復号方法 | |
| JP2002026737A (ja) | データ復号化装置とその方法 | |
| JP2025145993A (ja) | 復号装置及び復号方法 | |
| JP4763853B2 (ja) | 可変長符号復号化装置及びその方法 | |
| CN112449191A (zh) | 压缩多个图像的方法、解压缩图像的方法和装置 | |
| US20030191914A1 (en) | Bit plane coding apparatus | |
| JP4013680B2 (ja) | 復号装置および復号方法 | |
| JP3417684B2 (ja) | 画像処理装置 | |
| JP2002016501A (ja) | 可変長復号化装置 | |
| JP2003174365A (ja) | 復号化装置及びその方法 | |
| JP2001007706A (ja) | 可変長符号復号化装置 | |
| JP3796354B2 (ja) | 画像符号化方法 | |
| JP2934603B2 (ja) | 可変長さコードの復号化方法及びその装置 | |
| JP2003333339A (ja) | 画像符号化装置及び画像符号化方法 | |
| KR100195715B1 (ko) | 가변 길이 복호기 | |
| KR100195717B1 (ko) | 가변 길이 복호기 | |
| JP4095454B2 (ja) | データ復号装置及びデータ復号方法 |