JPH11112354A - ビットストリーム供給回路 - Google Patents

ビットストリーム供給回路

Info

Publication number
JPH11112354A
JPH11112354A JP26607997A JP26607997A JPH11112354A JP H11112354 A JPH11112354 A JP H11112354A JP 26607997 A JP26607997 A JP 26607997A JP 26607997 A JP26607997 A JP 26607997A JP H11112354 A JPH11112354 A JP H11112354A
Authority
JP
Japan
Prior art keywords
registers
register
bit stream
bit
output
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
Application number
JP26607997A
Other languages
English (en)
Inventor
Satoru Saito
覚 齋藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP26607997A priority Critical patent/JPH11112354A/ja
Publication of JPH11112354A publication Critical patent/JPH11112354A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 レジスタの容量を減少する。 【解決手段】 レジスタ12A〜12Cに順次ビットス
トリームを書き込み、この2つをレジスタ選択マルチプ
レクサ14によって選択してシフタ16に供給する。レ
ジスタ12A〜12Cの1つからの出力が終了した場合
には、次の2つのレジスタ12A〜12Cを選択するよ
うにレジスタ選択マルチプレクサ14が制御する。そし
て、ダウンシフタ16A、アップシフタ16Bを利用し
て、2つのレジスタ12からの出力を調整することで、
常に必要とするデータを出力に得ることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】可変長符号化されたビットス
トリームを所定の可変長復号ブロック毎に復号化部に供
給するビットストリーム供給回路、特にビットストリー
ムを一旦記憶するレジスタを効率的に利用できるものに
関する。
【0002】
【従来の技術】従来より、デジタル画像データの記憶や
伝送には、各種の符号化手法が利用されている。そこ
で、この再生装置においては、復号化処理が必要にな
る。例えば、JPEG、MPEG1、MPEG2等の規
格の画像データを復号化するLSIにおいては、可変長
復号化、逆量子化、逆離散コサイン変換などの処理が必
要であり、これらの回路ブロックが必要になる。
【0003】そして、可変長復号ブロックのように、処
理の対象となる符号が可変長の場合、ある符号の復号が
終了するまで次の符号の開始位置が定まらない。このた
め、入力符号列をレジスタに格納した後、そのレジスタ
に記憶された符号を使いきる時点を予想することが困難
である。
【0004】そこで、通常の場合、可変長符号化部に処
理対象となるビットストリーム(符号列)を供給する場
合には、レジスタを2つ設ける。そして、両方のレジス
タにビットストリームを格納しておき、片方のレジスタ
からデータ(符号)を読み切った場合にもう一方レジス
タから続きのデータを読み出すようにしている。
【0005】このような構成は、例えば「第8回 回路
とシステム軽井沢ワークショップ論文集 p204 F
ig.3」等に示されている。
【0006】
【発明が解決しようとする課題】ここで、1サイクル
で、2つのラン・レベルを復号処理するような場合、最
大28×2(=56;エスケープコーディングの)ビッ
トの符号を可変長復号部に供給する必要がある。このた
め、2つの56ビットレジスタを設け、ここに供給すべ
きビットストリームを順に交互に書き込むように構成す
ることが考えられる。しかし、この構成であると、ビッ
トストリームの供給がとぎれる場合がある。なお、MP
EG2におけるエスケープコーディングにおける最大ビ
ット長は、24ビットである。この場合には、48ビッ
トが可変長復号化部に供給する最大の符号長になる。
【0007】例えば、2つの56ビットレジスタをA,
Bとし、図2に示すようにn番目の1サイクル中に符号
長2、符号長28のシンボル(1つの符号)をレジスタ
Aから切り出し、n+1番目の1サイクル中にレジスタ
A,Bの順に符号長28、符号長28のシンボルを切り
出したとする。すると、n+2番目の1サイクル中にお
いて、レジスタAは空(無効)になったため、ここには
新しい符号が書き込まれ、レジスタAは符号の書き込み
中になる。このため、符号長28、符号長28のシンボ
ルを切り出そうとした場合に、レジスタBを使い切って
しまい、レジスタAから符号を読み出そうとするが、書
き込み中でありこの読み出しができない。従って、1つ
目のラン・レベルで2ビット不足することになる。
【0008】そこで、1サイクルで最大56ビット(2
つのラン・レベル)を復号処理するような場合であっ
て、2つのレジスタを利用してビットストリームを途切
れることなく可変長符号化部に供給するためには、1つ
のレジスタの大きさが最低でも112ビット必要にな
る。従って、2つのレジスタで合計224ビット必要と
なる。
【0009】本発明は、上記課題に鑑みなされたもので
あり、可変長符号を格納するレジスタの合計容量をより
小さくできるビットストリーム供給回路を提供すること
を目的とする。
【0010】
【課題を解決するための手段】本発明は、可変長符号化
されたビットストリームを所定の可変長復号ブロック毎
に復号化部に供給するビットストリーム供給回路であっ
て、1度に供給する最大供給量に対応したレジスタを3
つ設け、この3つのレジスタに可変長符号化されたビッ
トストリームを順次書き込むと共に、この3つのレジス
タの内2つを選択し、必要なビットストリームを出力す
ることを特徴とする。
【0011】このように、3つのレジスタを利用し、こ
の3つのレジスタの2つずつを順次選択し、必要なビッ
トストリームを出力することで、2つのレジスタを利用
する場合に比べ、レジスタのトータルの容量を小さくす
ることができる。すなわち、常に2つのレジスタを読み
出し用として利用し、残った1つのレジスタを書き込み
用として利用することができる。
【0012】また、本発明は、ビットストリームの出力
は常に一定量であり、復号された可変長ブロックの大き
さに応じてビットストリームをシフトすることを特徴と
する。
【0013】また、本発明は、3つのレジスタからの出
力を受け入れる2つのシフタと、2つのシフタを復号さ
れた可変長ブロックの大きさに基づいて制御するシフト
制御手段と、2つのシフタのシフト後の出力から所定ビ
ットの出力を得る演算処理手段と、を有することを特徴
とする。この構成により、常に処理開始位置を先頭とし
たビットストリームの出力が達成できる。
【0014】
【発明の実施の形態】以下、本発明の実施の形態(以下
実施形態という)について、図面に基づいて説明する。
【0015】図1は、実施形態の回路の全体構成を示す
ブロック図である。まず、バッファメモリ10には、外
部から供給されてくる符号化データのビットストリーム
が記憶されている。このバッファメモリ10には、3つ
の64ビットレジスタ12A、12B、12Cからなる
レジスタ12が接続されている。この例では、バッファ
メモリ10から読み出された64ビットのデータがレジ
スタ12A、12B、12Cのいずれか1つにそのまま
格納される。レジスタ12A、12B、12Cには、レ
ジスタ選択マルチプレクサ14に接続されており、この
レジスタ選択マルチプレクサ14は、レジスタ12A、
12B、12Cの2つを選択して、2つの出力(1stRE
G、2ndREG)から出力する。このレジスタ選択マルチプ
レクサ14には、ダウンシフタ16A、アップシフタ1
6Bからなるシフタ16が接続されている。ダウンシフ
タ16Aがレジスタ選択マルチプレクサ14の1stREG
出力に接続され、アップシフタ16Bがレジスタ選択マ
ルチプレクサ14の2ndREG出力に接続されている。
【0016】ここで、このダウンシフタ16Aには、レ
ジスタ選択マルチプレクサ14で選択されたレジスタ1
6に1つからの64ビットが供給され、アップシフタ1
6Bにはレジスタ選択マルチプレクサ14で選択された
レジスタ16の1つからの55ビットが供給される。そ
して、これらダウンシフタ16A、アップシフタ16B
は所定のシフト作業を行い、その55ビットの出力をビ
ット論理和回路18に供給する。このビット論理和回路
18は、ダウンシフタ16A、アップシフタ16Bのビ
ット毎の論理和をとり、得られた55ビットを出力す
る。そして、ダウンシフタ16AのMSBと合わせ56
ビットが、可変長復号部にビットストリームとして出力
される。
【0017】可変長復号部におけるシフト量についての
信号はレジスタ終了検出部20に供給される。このレジ
スタ終了検出部20は、このシフト量に応じて、バッフ
ァメモリ10からの出力、レジスタ12A、12B、1
2Cのいずれに格納するかの制御、レジスタ選択マルチ
プレクサ14における選択、ダウンシフタ16A、アッ
プシフタ16Bにおけるシフト量を制御する。
【0018】なお、上述のレジスタ12A、12B、1
2C、ダウンシフタ16Aは、それぞれ64ビットとし
たが、この例においてバッファメモリ10が1ワード6
4ビット幅のものを利用したためであり、最大56ビッ
トの可変長符号を取り扱うのであれば、すべて56ビッ
トとしても何ら問題はない。また、実質的な動作は全く
同様である。
【0019】次に、シフタ16の動作について、図3に
基づいて説明する。この図は、シフタ16に入力される
シフト量に対し、ダウンシフタ16A、アップシフタ1
6Bがどのデータを出力するかを示している。すなわ
ち、ダウンシフタ16Aでは、図において出力56ビッ
トと書かれたものがダウンシフタ16Aから出力される
ようにダウンシフト及び0の付加が実行される。また、
アップシフタ16Bにおいては、図に示すようにアップ
シフト及び0の付加が実行される。
【0020】シフト量0〜8の場合は、ダウンシフタ1
6Aからの出力のみでよい場合である。すなわち、ダウ
ンシフタ16Aは、レジスタ12A〜12Cのいずれか
からの64ビットのデータの内の56ビットを出力す
る。シフト0の時には、レジスタ14における63−0
ビット目の中の63−8ビット目をそのまま出力する。
またシフト1の時には、62−7ビット目を出力する。
そして、8ビットシフトの場合には、55−0ビット目
を出力する。
【0021】シフト量が9ビットを超えた場合には、下
位側に0を付加して出力する。すなわち、シフト9であ
れば、レジスタ12からの54−0ビット目のデータの
LSBに1ビットの0を付加する。また、nビットシフ
トであれば、n−8ビットの0をLSB側から付加し出
力する。このような操作は、ダウンシフタ16Aを64
ビットのシフトレジスタとし、レジスタ12からのデー
タをそのまま取り入れ、シフト量に合わせMSB側から
データを捨てて、LSB側に0を付加していくことによ
って、達成できる。
【0022】一方、アップシフタ16Bは、55ビット
のシフトレジスタで構成され、レジスタ選択マルチプレ
クサ14は、レジスタ12A〜12Cのいずれかから供
給される64ビットに中のMSBから55ビットをアッ
プシフタ16Bに供給する。そして、図におけるシフト
量0−8ビットの時は、アップシフタ16Bは受け入れ
たデータを55以上の右方向シフトによってすべて捨
て、0のみを出力する。図におけるシフト量9ビットの
時に入力ビットのMSBである54ビット目を出力し、
以後図におけるシフト量が多くなるにつれて、入力デー
タをそのMSB側から順次1ビットずつ増加させ、これ
をLSB側に位置させて出力する。すなわち、アップシ
フタ16Bにおいては、シフト量9ビットの際に、54
ビット右側にシフトし54ビットを0とし、入力データ
の54ビット目をLSBとして出力し、以後右方向への
シフト量を1つずつ少なくする。そして、63ビットシ
フトの時には、入力される54〜0ビット目の55ビッ
トをそのまま出力する。
【0023】ビット論理和回路18においては、ダウン
シフタ16Aの55〜0ビット目と、アップシフタ16
Bの55〜0ビット目とのビット毎の論理和(オア)を
とるため、ダウンシフタ16Aまたはアップシフタ16
Bにおいて、付加された0が無視され、両出力が接続さ
れた55ビットが出力される。なお、ダウンシフタ16
Aの出力における56ビット目は、シフト量0〜63の
いずれにおいても必ず選択されるため、ビット論理和回
路18をバイパスしてそのまま出力する。
【0024】このようにして、レジスタ12A〜12C
の内の2つを選択しておくことで、常に、ビットストリ
ームの所定の位置からの56ビットが出力される。
【0025】次に、レジスタ終了検出部20における動
作について説明する。レジスタ終了検出部20には、可
変長復号部から符号長についての情報が供給される。一
方、レジスタ終了検出部20は、レジスタ12A〜12
Cからの出力位置(アドレス)を制御しており、これに
ついての情報を有している。そこで、今回のレジスタか
らの出力の開始アドレス(レジスタビットのアドレス)
に符号長を加算して、これが64未満であるかを判定す
る。もし、64未満であれば、読み出しレジスタについ
ての変更は不要であり、シフト量を、 シフト量=レジスタビットのアドレス+符号長 に設定する。これによって、上述のようなシフトがシフ
タ16においてなされ、出力したい56ビットが論理和
回路18から出力される。
【0026】一方、レジスタビットのアドレス+符号長
が64以上の場合、現在読み出し中のレジスタは、読み
出しが終了し空である。従って、レジスタ選択マルチプ
レクサ14において選択するレジスタを変更する。そし
て、バッファメモリ10へ出力要求を供給し、これによ
って、空になったレジスタ12へのデータの格納を開始
する。すなわち、ダウンシフタ16Aにデータを供給し
ていたレジスタ12に対し、データの格納を開始し、ア
ップシフタ16Bにデータを供給していたレジスタ12
のデータをダウンシフタ16Aに変更し、今までデータ
を供給していなかったレジスタ12からのデータをアッ
プシフタ16Bに供給する。
【0027】そして、この場合にシフト量は、 シフト量=(レジスタビットのアドレス+符号長)−6
4 とする。これによって、上述のシフタ16におけるシフ
トが決定され、出力開始位置からのビットストリームが
出力される。
【0028】このように、レジスタ終了検出部20がバ
ッファメモリ10からの読み出し、レジスタ12へのデ
ータの格納、レジスタ選択マルチプレクサ14における
選択、シフタ16におけるシフト量を清書することによ
って、復号化対象になる符号の先頭から56ビットのデ
ータが常に出力される。
【0029】なお、レジスタ12A、12B、12Cの
容量を56ビットにした場合、上述のシフト量0−7の
状態がなくなるだけで後は全く同様になる。
【0030】次に、図4に基づいて、バッファメモリ1
0の出力が可変長部に向けて出力されるまでの動作を説
明する。
【0031】回路は、動作クロックCLKに基づいて動
作する。CLKのi−1の期間バッファメモリ10の読
み出しアドレスは0であり、そのアドレスのデータ
(0)が出力される。このときのレジスタ12A〜12
C(REGA〜REGC)には、64ビットのデータ
(−3)、(−2)、(−1)がそれぞれ格納されてい
る。また、レジスタ選択マルチプレクサ14において選
択している2つのレジスタは、レジスタ12A、12B
(A,B)であり、出力されているデータもこのレジス
タ12A、12B(A,B)からのデータである。
【0032】そして、CLKi+1の期間にはいると、
レジスタ12Aのデータが空になり、レジスタ選択マル
チプレクサ14によりレジスタ12B、12Cが選択さ
れる。従って、レジスタ12Aには、バッファメモリ1
0のアドレス0のデータ(0)が格納され、レジスタ選
択マルチプレクサ14において選択するレジスタ12は
レジスタ12B、12Cを選択し、これをダウンシフタ
16A、アップシフタ16Bに供給する。そして、上述
のようにして、レジスタビットのアドレス+符号長が6
4以上になった時点で、バッファメモリ10に対し読み
出し要求が出力され、図におけるバッファメモリのビッ
トストリーム読み出しイネーブル信号がLになり、新た
なビットストリームがバッファメモリ10からレジスタ
12に格納され、動作が継続される。
【0033】このように、本実施形態によれば、3つの
64ビットレジスタ12A、12B、12C(56ビッ
トレジスタでもよい)を利用し、この3つからの出力を
利用して復号化された次のビットから56ビットを出力
することができる。従って、従来の112ビットのレジ
スタを2つ用意する場合に比べ、レジスタの容量を少な
くすることができる。
【0034】
【発明の効果】以上説明したように、本発明によれば、
3つのレジスタを利用し、これを順次使用することによ
って、トータルとして必要なレジスタの記憶容量を小さ
くすることができる。
【図面の簡単な説明】
【図1】 全体構成を示すブロック図である。
【図2】 従来のレジスタの動作を示す図である。
【図3】 シフタの動作を示す説明図である。
【図4】 全体動作を説明する図である。
【符号の説明】
10 バッファメモリ、12 レジスタ、12A〜12
C レジスタ、14レジスタ選択マルチプレクサ、16
シフタ、16A ダウンシフタ、16Bアップシフ
タ、18 ビット論理和回路、20 レジスタ終了検出
部。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 可変長符号化されたビットストリームを
    所定の可変長復号ブロック毎に復号化部に供給するビッ
    トストリーム供給回路であって、 1度に供給する最大供給量に対応したレジスタを3つ設
    け、この3つのレジスタに可変長符号化されたビットス
    トリームを順次書き込むと共に、この3つのレジスタの
    内2つを選択し、必要なビットストリームを出力するこ
    とを特徴とするビットストリーム供給回路。
  2. 【請求項2】 請求項1に記載の回路において、 ビットストリームの出力は常に一定量であり、復号され
    た可変長ブロックの大きさに応じてビットストリームを
    シフトすることを特徴とするビットストリーム供給回
    路。
  3. 【請求項3】 請求項2に記載の回路において、 3つのレジスタからの出力を受け入れる2つのシフタ
    と、 2つのシフタを復号された可変長ブロックの大きさに基
    づいて制御するシフト制御手段と、 2つのシフタのシフト後の出力から所定ビットの出力を
    得る演算処理手段と、 を有することを特徴とするビットストリーム供給回路。
JP26607997A 1997-09-30 1997-09-30 ビットストリーム供給回路 Pending JPH11112354A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26607997A JPH11112354A (ja) 1997-09-30 1997-09-30 ビットストリーム供給回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26607997A JPH11112354A (ja) 1997-09-30 1997-09-30 ビットストリーム供給回路

Publications (1)

Publication Number Publication Date
JPH11112354A true JPH11112354A (ja) 1999-04-23

Family

ID=17426064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26607997A Pending JPH11112354A (ja) 1997-09-30 1997-09-30 ビットストリーム供給回路

Country Status (1)

Country Link
JP (1) JPH11112354A (ja)

Similar Documents

Publication Publication Date Title
KR100227275B1 (ko) 단위 처리 시스템에서의 가변길이코드 검출장치 및 방법
US6798833B2 (en) Video frame compression/decompression hardware system
JP3136796B2 (ja) 可変長符号デコーダ
JPH06348492A (ja) データパイプライン装置及びデータエンコーディング方法
US20110091124A1 (en) System for multi-byte reading
US6285789B1 (en) Variable length code decoder for MPEG
US6809665B2 (en) Apparatus and method for decoding variable length code
US6621428B1 (en) Entropy codec for fast data compression and decompression
US5781134A (en) System for variable length code data stream position arrangement
US7676527B2 (en) Processor
JPH11112354A (ja) ビットストリーム供給回路
US5654806A (en) Code manipulation for a high speed JPEG decoder
JP3575466B2 (ja) エントロピ符号化/復号装置
US20080273805A1 (en) Semiconductor device and an image processor
US6496602B2 (en) Sorting device of variable-length code
JP3014999B2 (ja) ハフマン復号化装置
JP3108243B2 (ja) 符号化及び復号化装置
JPH09247466A (ja) 符号化装置
JP3224127B2 (ja) 画像データ変換処理装置
JPH0786956A (ja) マーカ識別用付加ビット処理装置
JP3247052B2 (ja) 画像データ変換処理方法及び装置
JPH11163736A (ja) プロセッサ
JP3336537B2 (ja) 符号化装置、復号化装置、符号化・復号化装置及び算術符号化装置
JP2556160B2 (ja) 圧縮符号伸長装置
JPH0993139A (ja) 可変長符号の復号方法および装置