JP2829262B2 - ビデオ・デコンプレッション・プロセッサのためのシンタックスパーサ - Google Patents
ビデオ・デコンプレッション・プロセッサのためのシンタックスパーサInfo
- Publication number
- JP2829262B2 JP2829262B2 JP7300475A JP30047595A JP2829262B2 JP 2829262 B2 JP2829262 B2 JP 2829262B2 JP 7300475 A JP7300475 A JP 7300475A JP 30047595 A JP30047595 A JP 30047595A JP 2829262 B2 JP2829262 B2 JP 2829262B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- parser
- video
- length
- bit stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000006837 decompression Effects 0.000 title claims description 27
- 239000000872 buffer Substances 0.000 claims description 24
- 230000006835 compression Effects 0.000 claims description 8
- 238000007906 compression Methods 0.000 claims description 8
- 230000001186 cumulative effect Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims description 3
- 230000003139 buffering effect Effects 0.000 claims 1
- 239000013598 vector Substances 0.000 description 17
- 238000000034 method Methods 0.000 description 12
- 238000012360 testing method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 235000009392 Vitis Nutrition 0.000 description 1
- 241000219095 Vitis Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- C—CHEMISTRY; METALLURGY
- C04—CEMENTS; CONCRETE; ARTIFICIAL STONE; CERAMICS; REFRACTORIES
- C04B—LIME, MAGNESIA; SLAG; CEMENTS; COMPOSITIONS THEREOF, e.g. MORTARS, CONCRETE OR LIKE BUILDING MATERIALS; ARTIFICIAL STONE; CERAMICS; REFRACTORIES; TREATMENT OF NATURAL STONE
- C04B41/00—After-treatment of mortars, concrete, artificial stone or ceramics; Treatment of natural stone
- C04B41/45—Coating or impregnating, e.g. injection in masonry, partial coating of green or fired ceramics, organic coating compositions for adhering together two concrete elements
- C04B41/52—Multiple coating or impregnating multiple coating or impregnating with the same composition or with compositions only differing in the concentration of the constituents, is classified as single coating or impregnation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Chemical & Material Sciences (AREA)
- Ceramic Engineering (AREA)
- Materials Engineering (AREA)
- Structural Engineering (AREA)
- Organic Chemistry (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Description
【0001】
【発明の属する技術分野】本発明はビデオ・デコンプレ
ッション・プロセッサ(video decompresion processo
r)に関し、特に、圧縮されたビデオビットストリームか
らデコンプレッション・プロセッサの種々のサブシステ
ムへの関心のあるフィールドの分析をするビデオシンタ
ックスパーサに関する。
ッション・プロセッサ(video decompresion processo
r)に関し、特に、圧縮されたビデオビットストリームか
らデコンプレッション・プロセッサの種々のサブシステ
ムへの関心のあるフィールドの分析をするビデオシンタ
ックスパーサに関する。
【0002】
【従来の技術および発明が解決しようとする課題】テレ
ビ信号のデジタル送信はアナログ技術よりも非常に質の
高いビデオおよび音声サービスを伝えることができる。
デジタル送信技術は、ケーブルテレビネットワークを介
して、または衛星により、ケーブルテレビ加入者および
/または家庭用衛星テレビ受信器に直接に放送する信号
に特に利点がある。デジタルテレビ送受信システムはち
ょうど、オーディオ産業でのアナログレコードのように
現存のアナログシステムに置き換わると期待されてい
る。相当な量のデジタルデータがデジタルテレビシステ
ムにおいて送信されなけらばならない。デジタルテレビ
システムにおいて、加入者が、ビデオ、音声およびデー
タを加入者に提供する受信器/解読器を介してデジタル
データを受信する。利用可能なラジオ周波数スペクトル
を最も効果的に使用するために、デジタルテレビ信号を
圧縮し、送信しなければならないデータを最小にするこ
とは有効である。
ビ信号のデジタル送信はアナログ技術よりも非常に質の
高いビデオおよび音声サービスを伝えることができる。
デジタル送信技術は、ケーブルテレビネットワークを介
して、または衛星により、ケーブルテレビ加入者および
/または家庭用衛星テレビ受信器に直接に放送する信号
に特に利点がある。デジタルテレビ送受信システムはち
ょうど、オーディオ産業でのアナログレコードのように
現存のアナログシステムに置き換わると期待されてい
る。相当な量のデジタルデータがデジタルテレビシステ
ムにおいて送信されなけらばならない。デジタルテレビ
システムにおいて、加入者が、ビデオ、音声およびデー
タを加入者に提供する受信器/解読器を介してデジタル
データを受信する。利用可能なラジオ周波数スペクトル
を最も効果的に使用するために、デジタルテレビ信号を
圧縮し、送信しなければならないデータを最小にするこ
とは有効である。
【0003】テレビ信号のビデオ部分は、一緒に動画を
提供するビデオ“フレーム”のシーケンスから成る。デ
ジタルテレビシステムにおいて、ビデオフレームの各線
は“画素”として参照されるデジタルデータビットのシ
ーケンスにより画成される。大量なデータがテレビ信号
の各ビデオフレームを画成するために必要とされる。た
とえば、7.5メガビットのデータはNTSC(National Telev
ision System Committee)解像度での一つのビデオフレ
ームを与えるように要求される。これは640画素×480線
ディスプレーが主色である赤、緑および青のそれぞれに
対して8ビットの強度値もって使用されることを確実な
ものとしている。PAL(位相入れ替え回線)解像度で、
9.7メガビットのデータが一つのビデオフレームを与え
るために要求される。この例では、704画素×576線ディ
スプレーが主色である赤、緑および青のそれぞれに対し
て8ビットの強度値もって使用されることを確実なもの
としている。この量の情報を管理するために、データは
圧縮されなければならない。
提供するビデオ“フレーム”のシーケンスから成る。デ
ジタルテレビシステムにおいて、ビデオフレームの各線
は“画素”として参照されるデジタルデータビットのシ
ーケンスにより画成される。大量なデータがテレビ信号
の各ビデオフレームを画成するために必要とされる。た
とえば、7.5メガビットのデータはNTSC(National Telev
ision System Committee)解像度での一つのビデオフレ
ームを与えるように要求される。これは640画素×480線
ディスプレーが主色である赤、緑および青のそれぞれに
対して8ビットの強度値もって使用されることを確実な
ものとしている。PAL(位相入れ替え回線)解像度で、
9.7メガビットのデータが一つのビデオフレームを与え
るために要求される。この例では、704画素×576線ディ
スプレーが主色である赤、緑および青のそれぞれに対し
て8ビットの強度値もって使用されることを確実なもの
としている。この量の情報を管理するために、データは
圧縮されなければならない。
【0004】ビデオ圧縮技術は在来の通信チャネルを越
えた有効なデジタルビデオ信号を送信できる。このよう
な技術は、ビデオ信号の重要な情報の、より効果的表現
を導出するために、隣接した画素の間の関係を利用する
圧縮アルゴリズムを使用する。最も有効な圧縮システム
は空間関係のみならず、データをさらにコンパクトにす
るために隣接したフレームの間の類似性を利用する。こ
のシステムにおいて、実際のフレームと実際のフレーム
の予想との間の差をのみを送信するために、差分符号化
(differential encoding)が通常使用される。予想は、
同じビデオシーケンスの先行フレームから導出される情
報に基づく。
えた有効なデジタルビデオ信号を送信できる。このよう
な技術は、ビデオ信号の重要な情報の、より効果的表現
を導出するために、隣接した画素の間の関係を利用する
圧縮アルゴリズムを使用する。最も有効な圧縮システム
は空間関係のみならず、データをさらにコンパクトにす
るために隣接したフレームの間の類似性を利用する。こ
のシステムにおいて、実際のフレームと実際のフレーム
の予想との間の差をのみを送信するために、差分符号化
(differential encoding)が通常使用される。予想は、
同じビデオシーケンスの先行フレームから導出される情
報に基づく。
【0005】移動(motion)補償を使用するビデオ圧縮シ
ステムの例が、クラウス等により米国特許第5,05,916
号、第5,068,724号、第5,093,720号および第4,235,419
号に示されている。一般的に、この移動補償システム
は、ブロック整合移動推測(block-matching motion est
imation)アルゴリズムを利用する。この場合に、移動ベ
クトルが、イメージの現フレーム内の各ブロックに対し
て、特定の現ブロックに非常に類似した先行フレームの
ブロックを識別することにより判定される。現フレーム
のすべては、対応するブロックの対の間の差を、対応す
る対を識別するために要求される移動ベクトルとともに
送ることにより、デコーダにおいて再構成され得る。し
ばしば、送信データの量は、送信されたブロックの差お
よび移動ベクトル信号の両方を圧縮することにより更に
減縮される。ブロック整合移動推測アルゴリズムは特
に、離散余弦変換(discrete cosine transform(DC
T))のような、ブロックに基づく空間圧縮技術と組み
合わされるとき、有効である。さらなる圧縮が、より短
い長さの「コードワード」をより起こるかもしれない事
象に与え、より長いコードワードをほとんどないであろ
う事象に与える可変長コーディングを使用することで達
成され得る。受信器において、可変長コードワードは例
えばハフマン(Huffman decoder)デコーダによりデコー
ドされる。ハフマンデコードの実行の例が、たとえばポ
ールマン等による米国特許第5,255,248号(ここで参照
文献として組み入れられる)に示されている。
ステムの例が、クラウス等により米国特許第5,05,916
号、第5,068,724号、第5,093,720号および第4,235,419
号に示されている。一般的に、この移動補償システム
は、ブロック整合移動推測(block-matching motion est
imation)アルゴリズムを利用する。この場合に、移動ベ
クトルが、イメージの現フレーム内の各ブロックに対し
て、特定の現ブロックに非常に類似した先行フレームの
ブロックを識別することにより判定される。現フレーム
のすべては、対応するブロックの対の間の差を、対応す
る対を識別するために要求される移動ベクトルとともに
送ることにより、デコーダにおいて再構成され得る。し
ばしば、送信データの量は、送信されたブロックの差お
よび移動ベクトル信号の両方を圧縮することにより更に
減縮される。ブロック整合移動推測アルゴリズムは特
に、離散余弦変換(discrete cosine transform(DC
T))のような、ブロックに基づく空間圧縮技術と組み
合わされるとき、有効である。さらなる圧縮が、より短
い長さの「コードワード」をより起こるかもしれない事
象に与え、より長いコードワードをほとんどないであろ
う事象に与える可変長コーディングを使用することで達
成され得る。受信器において、可変長コードワードは例
えばハフマン(Huffman decoder)デコーダによりデコー
ドされる。ハフマンデコードの実行の例が、たとえばポ
ールマン等による米国特許第5,255,248号(ここで参照
文献として組み入れられる)に示されている。
【0006】ビデオプログラムを形成する、連続したデ
ジタルビデオフレームの各々は内フレーム(Iフレー
ム)、予想フレーム(Pフレーム)、または双方向フレ
ーム(Bフレーム)のように類別され得る。予想は連続
したフレームの間の一時的相関に基づく。フレームのあ
る部分は短い時間間隔にわたって他の部分と異なること
はない。エンコードおよびデコード方法は各タイプの画
像に対して異なる。最も簡単な方法はIフレームに対し
て使用されるものであり、これにPフレーム、次にBフ
レームに対するものが続く。
ジタルビデオフレームの各々は内フレーム(Iフレー
ム)、予想フレーム(Pフレーム)、または双方向フレ
ーム(Bフレーム)のように類別され得る。予想は連続
したフレームの間の一時的相関に基づく。フレームのあ
る部分は短い時間間隔にわたって他の部分と異なること
はない。エンコードおよびデコード方法は各タイプの画
像に対して異なる。最も簡単な方法はIフレームに対し
て使用されるものであり、これにPフレーム、次にBフ
レームに対するものが続く。
【0007】Iフレームが他のどのフレームと関係な
く、信号フレームを完全に記述する。改良されたエラー
隠蔽(concealment)に対して、移動ベクトルがIフレー
ムに含まれ得る。PフレームおよびBフレームの両者が
Iフレームから予想されることから、Iフレーム内のエ
ラーが、表示されるビデオ上に与えるより大きなインパ
クトを潜在的に有する。
く、信号フレームを完全に記述する。改良されたエラー
隠蔽(concealment)に対して、移動ベクトルがIフレー
ムに含まれ得る。PフレームおよびBフレームの両者が
Iフレームから予想されることから、Iフレーム内のエ
ラーが、表示されるビデオ上に与えるより大きなインパ
クトを潜在的に有する。
【0008】Pフレームは先行IまたはPフレームに基
づいて予想される。その基準(reference)はより早いI
またはPフレームから未来のPフレームまでであり、し
たがって、「フォーワード(forward)予想」といわれて
いる。Bフレームは最も近くて、より早いIまたはPフ
レーム、および最も近くて、より遅いIまたはPフレー
ムから予想される。未来画像(すなわち、まだ表示され
ていないもの)への基準は「バックワード(backward)予
想」といわれている。バックワード予想が補償速度を上
げる時に非常に有用である場合がある。例えば、ドアが
開くシーンにおいて、現画像は、ドアがすでに開いてい
る未来画像に基づいて、ドアの背後にあるものを予想す
る。
づいて予想される。その基準(reference)はより早いI
またはPフレームから未来のPフレームまでであり、し
たがって、「フォーワード(forward)予想」といわれて
いる。Bフレームは最も近くて、より早いIまたはPフ
レーム、および最も近くて、より遅いIまたはPフレー
ムから予想される。未来画像(すなわち、まだ表示され
ていないもの)への基準は「バックワード(backward)予
想」といわれている。バックワード予想が補償速度を上
げる時に非常に有用である場合がある。例えば、ドアが
開くシーンにおいて、現画像は、ドアがすでに開いてい
る未来画像に基づいて、ドアの背後にあるものを予想す
る。
【0009】Bフレームは最大の補償を生ずるばかり
か、最大のエラーも組み込まれる。エラーの増殖を除去
するために、Bフレームは他のBフレームから決して予
想できない。Pフレームはエラーをほとんど生ずること
もなく、補償も生じない。Iフレームは最小の補償を生
じるが、ビデオシーケンス内にランダムアクセス入口点
を与えることができる。
か、最大のエラーも組み込まれる。エラーの増殖を除去
するために、Bフレームは他のBフレームから決して予
想できない。Pフレームはエラーをほとんど生ずること
もなく、補償も生じない。Iフレームは最小の補償を生
じるが、ビデオシーケンス内にランダムアクセス入口点
を与えることができる。
【0010】デジタルビデオ信号をエンコードするため
に採用された一つの標準は動画専門家グループ(MPEG)
標準であり、特にMPEG-2標準である。この標準はIフレ
ーム、Pフレーム、およびBフレームがシーケンス内に
占めなければならないという特定の配分をいうわけでは
ない。むしろ、この標準により、いろいろな分配がいろ
いろな程度の補償およびランダムアクセスの可能性を提
供することができるのである。一つの共通配分は約半秒
ごとにIフレームを有し、連続するIまたはPフレーム
の間に二つのBフレームを有するものである。Pフレー
ムをデコードするために、先行Iフレームは利用可能で
なければならない。同様に、Bフレームをデコードする
ために、先行および未来PまたはIフレームは利用可能
でなければならない。結果として、ビデオフレームは、
予想のために使用される全ての画像がそれから画像が予
想される前にコード化されるように、従属順序でエンコ
ードされる。MPEG-2標準(および他のDigiCipher(商
標)II標準)ならびにビデオ・デコンプレッション・
プロセッサ内での実行の詳細は、ここに参照文献として
組み入れる、文献MC68VDP/D、「MPEG-2CDII
ビデオ・デコンプレッション・プロセッサ」と題する予
備データシート(モトローラマイクロプロセッサおよび
メモリテクノロジーグループ、1994)に説明されてい
る。
に採用された一つの標準は動画専門家グループ(MPEG)
標準であり、特にMPEG-2標準である。この標準はIフレ
ーム、Pフレーム、およびBフレームがシーケンス内に
占めなければならないという特定の配分をいうわけでは
ない。むしろ、この標準により、いろいろな分配がいろ
いろな程度の補償およびランダムアクセスの可能性を提
供することができるのである。一つの共通配分は約半秒
ごとにIフレームを有し、連続するIまたはPフレーム
の間に二つのBフレームを有するものである。Pフレー
ムをデコードするために、先行Iフレームは利用可能で
なければならない。同様に、Bフレームをデコードする
ために、先行および未来PまたはIフレームは利用可能
でなければならない。結果として、ビデオフレームは、
予想のために使用される全ての画像がそれから画像が予
想される前にコード化されるように、従属順序でエンコ
ードされる。MPEG-2標準(および他のDigiCipher(商
標)II標準)ならびにビデオ・デコンプレッション・
プロセッサ内での実行の詳細は、ここに参照文献として
組み入れる、文献MC68VDP/D、「MPEG-2CDII
ビデオ・デコンプレッション・プロセッサ」と題する予
備データシート(モトローラマイクロプロセッサおよび
メモリテクノロジーグループ、1994)に説明されてい
る。
【0011】実際のシステムにおいてビデオ圧縮を実行
するために、各デジタルテレビ受像器に対してビデオ・
デコンプレッション・プロセッサが必要とされる。この
ようなビデオ・デコンプレッション・プロセッサを提供
するために超大規模集積回路(VLSI)の開発が進行中で
ある。テレビのような消費者製品において、システム要
素のコストをできる限り低く維持することは避けられな
い。
するために、各デジタルテレビ受像器に対してビデオ・
デコンプレッション・プロセッサが必要とされる。この
ようなビデオ・デコンプレッション・プロセッサを提供
するために超大規模集積回路(VLSI)の開発が進行中で
ある。テレビのような消費者製品において、システム要
素のコストをできる限り低く維持することは避けられな
い。
【0012】ビデオ・デコンプレッション・プロセッサ
の一つの重要なサブシステムはビデオシンタックスパー
サ(video sysntax parser)として知られている。このサ
ブシステムは、(例えばDigiCipher IIまたはMPEG-2シ
ンタックス内であってもよい)圧縮されたビデオビット
ストリームからの関心あるフィールドを分析する役目を
果たす。典型的に、パーサは外部ランダムアクセスメモ
リからのデータを受信することになる。ビデオ・デコン
プレッション・プロセッサのいろいろなサブシステムは
その入ってくるビットストリームからさまざまなフィー
ルドのデータを要求する。例えば、移動ベクトルデコー
ダがビットストリーム内で運ばれた移動ベクトルを要求
するであろう。デコンプレッション・プロセッサ内の、
ハフマンデコーダのような可変長コードワードデコーダ
が、変換係数にデコードするためのコードワードを要求
するであろう。ビデオ・デコンプレッション・プロセッ
サの他のサブシステムもまたビットストリーム内で運ば
れたいろいろな情報を要求するであろう。この情報のす
べてがビットストリームから分析され、さらなる処理の
ために適切なサブシステムへと進められなければならな
い。パーサはスピード臨界(critical)サブシステムであ
る。それは有効にかつ順序よく、入ってくるビットシス
テムから必要なデータを得て、分析しなければならな
い。パーサの複雑さはそのコストを最小に維持するため
に可能な限り減少されなければならい。
の一つの重要なサブシステムはビデオシンタックスパー
サ(video sysntax parser)として知られている。このサ
ブシステムは、(例えばDigiCipher IIまたはMPEG-2シ
ンタックス内であってもよい)圧縮されたビデオビット
ストリームからの関心あるフィールドを分析する役目を
果たす。典型的に、パーサは外部ランダムアクセスメモ
リからのデータを受信することになる。ビデオ・デコン
プレッション・プロセッサのいろいろなサブシステムは
その入ってくるビットストリームからさまざまなフィー
ルドのデータを要求する。例えば、移動ベクトルデコー
ダがビットストリーム内で運ばれた移動ベクトルを要求
するであろう。デコンプレッション・プロセッサ内の、
ハフマンデコーダのような可変長コードワードデコーダ
が、変換係数にデコードするためのコードワードを要求
するであろう。ビデオ・デコンプレッション・プロセッ
サの他のサブシステムもまたビットストリーム内で運ば
れたいろいろな情報を要求するであろう。この情報のす
べてがビットストリームから分析され、さらなる処理の
ために適切なサブシステムへと進められなければならな
い。パーサはスピード臨界(critical)サブシステムであ
る。それは有効にかつ順序よく、入ってくるビットシス
テムから必要なデータを得て、分析しなければならな
い。パーサの複雑さはそのコストを最小に維持するため
に可能な限り減少されなければならい。
【0013】本発明は前述の基準を満たすビデオシンタ
ックスパーサを提供することである。
ックスパーサを提供することである。
【0014】
【課題を解決するための手段】本発明にしたがてビデオ
シンタックスパーサがビデオ・デコンプレッション・プ
ロセッサのために設けられる。パーサの入力は分析され
るデータを有する圧縮されたビットストリームを受信す
る。圧縮されたビットストリームからデータを分析する
手段が設けられる。圧縮されたビットストリームから分
析されたデータ内に含まれる開始コードをデコードする
手段も設けられる。デコードする手段によりデコードさ
れた開始コードに応答する手段が開始コードに対応して
特定のパーサ状態を起こす。パーサ状態出力がパーサ状
態をビデオ・デコンプレッション・プロセッサの複数の
サブシステムに伝える。データ出力が、分析されたデー
タを分析する手段から複数のサブシステムのために働く
データバスへ伝えるために設けられている。複数のサブ
システムのそれぞれは、もしあるならば、データバスの
どの分析されたデータがサブシステムに向けられるかを
判定するためにパーサ状態をモニターする。そして、サ
ブシステムはそれに向けらる、分析されたデータを検索
できる。
シンタックスパーサがビデオ・デコンプレッション・プ
ロセッサのために設けられる。パーサの入力は分析され
るデータを有する圧縮されたビットストリームを受信す
る。圧縮されたビットストリームからデータを分析する
手段が設けられる。圧縮されたビットストリームから分
析されたデータ内に含まれる開始コードをデコードする
手段も設けられる。デコードする手段によりデコードさ
れた開始コードに応答する手段が開始コードに対応して
特定のパーサ状態を起こす。パーサ状態出力がパーサ状
態をビデオ・デコンプレッション・プロセッサの複数の
サブシステムに伝える。データ出力が、分析されたデー
タを分析する手段から複数のサブシステムのために働く
データバスへ伝えるために設けられている。複数のサブ
システムのそれぞれは、もしあるならば、データバスの
どの分析されたデータがサブシステムに向けられるかを
判定するためにパーサ状態をモニターする。そして、サ
ブシステムはそれに向けらる、分析されたデータを検索
できる。
【0015】図示の実施例において、分析する手段は圧
縮されたビットストリームからのシフトデータを受信
し、そして一時に記憶するために連結されたシフト手段
をする。シフト手段は圧縮されたビットストリームの連
続した部分をデコードする手段に出力するために、シフ
ト長コマンドに応答する。シフト手段はバレルシフタ(b
arrel shifter)から成る。バレルシフタからのデータ出
力は開始コードを探し出すためにデコード手段により調
べられ、開始コードの間の連続したパーササイクルの間
にパーサ状態が更新される。シフトレジスタの出力もま
た、データを選択的に使用する複数のサブシステムに伝
えるために、分析されるデータをデータ出力に与える。
縮されたビットストリームからのシフトデータを受信
し、そして一時に記憶するために連結されたシフト手段
をする。シフト手段は圧縮されたビットストリームの連
続した部分をデコードする手段に出力するために、シフ
ト長コマンドに応答する。シフト手段はバレルシフタ(b
arrel shifter)から成る。バレルシフタからのデータ出
力は開始コードを探し出すためにデコード手段により調
べられ、開始コードの間の連続したパーササイクルの間
にパーサ状態が更新される。シフトレジスタの出力もま
た、データを選択的に使用する複数のサブシステムに伝
えるために、分析されるデータをデータ出力に与える。
【0016】バレルシフタは、第1および第2のレジスタ
から圧縮されたビットストリームを受信できる。第1の
レジスタは、ビデオフレーム記憶のようなソースから圧
縮されたビットストリームデータを受信するためにイネ
ーブル(enable)信号に応答する。第2のレジスタは、第1
のレジスタから圧縮されたビットストリームデータの連
続した部分を受信するために、イネーブル信号に応答す
る。イネーブル信号は、シフト長コマンドが所定の値に
達し、又は越えたときに与えられる。
から圧縮されたビットストリームを受信できる。第1の
レジスタは、ビデオフレーム記憶のようなソースから圧
縮されたビットストリームデータを受信するためにイネ
ーブル(enable)信号に応答する。第2のレジスタは、第1
のレジスタから圧縮されたビットストリームデータの連
続した部分を受信するために、イネーブル信号に応答す
る。イネーブル信号は、シフト長コマンドが所定の値に
達し、又は越えたときに与えられる。
【0017】デコード手段に与えられた、圧縮されたビ
ットストリームのデータの連続した部分は典型的にそれ
ぞれNビットの固定長さを有する。第1および第2のレジ
スタはそれぞれNビットのレジスタであり、バレルシフ
タは一度のNビットシフトする。
ットストリームのデータの連続した部分は典型的にそれ
ぞれNビットの固定長さを有する。第1および第2のレジ
スタはそれぞれNビットのレジスタであり、バレルシフ
タは一度のNビットシフトする。
【0018】シフト長コマンドは、累積値(cumulative
value)から得られ,バレルシフタが分析サイクルのそれ
ぞれで、シフトされるビット数を制御するために、連続
した分析サイクルの間「フィールド長」だけ増加する。
フィールド長は各サイクルの間パーサ状態により命令(d
ictate)される。シフト長コマンドとして使用する最下
位ビットイ,およびネーブル信号を与えるための上位ビ
ットのセットを与えるために,累積値を切り分ける(tru
ncate)ための手段が設けられる。図示の実施例におい
て、6ビットの5最下位ビットはシフト長コマンドとして
使用され、最上位ビットはイネーブル信号を与えるため
に使用される。
value)から得られ,バレルシフタが分析サイクルのそれ
ぞれで、シフトされるビット数を制御するために、連続
した分析サイクルの間「フィールド長」だけ増加する。
フィールド長は各サイクルの間パーサ状態により命令(d
ictate)される。シフト長コマンドとして使用する最下
位ビットイ,およびネーブル信号を与えるための上位ビ
ットのセットを与えるために,累積値を切り分ける(tru
ncate)ための手段が設けられる。図示の実施例におい
て、6ビットの5最下位ビットはシフト長コマンドとして
使用され、最上位ビットはイネーブル信号を与えるため
に使用される。
【0019】圧縮されたビットストリームは分析される
べき可変長コードワード(VLC)および固定長のワード
の両方を含むことができる。このような実施例におい
て、パーサはさらに、フィールド長を受信するための第
1の入力、およびVLC長を受信するための少なくとも第2
の入力を有するセレクタを含む。パーサ状態に応答する
手段は、固定長ワードがビットワードから分析されると
きのサイクルの間に,累積値を増加させるべく,フィー
ルド長を出力するためにセレクタを起動し、かつ可変長
コードワードがビットストリームから分析されるときの
サイクルの間に,累積値を増加させるべく,VLC長を出
力するために、セレクタを起動する。圧縮されたビット
ストリームから分析される可変長データのブロックの終
端でのブロック終端(EOB)長およびVLC長だけ累積値を
同時に増加させる手段が設けられる。このような構造物
はブロックメッセージの端部に対して個々の分離した分
析サイクルを丁度使用する必要性を回避する。
べき可変長コードワード(VLC)および固定長のワード
の両方を含むことができる。このような実施例におい
て、パーサはさらに、フィールド長を受信するための第
1の入力、およびVLC長を受信するための少なくとも第2
の入力を有するセレクタを含む。パーサ状態に応答する
手段は、固定長ワードがビットワードから分析されると
きのサイクルの間に,累積値を増加させるべく,フィー
ルド長を出力するためにセレクタを起動し、かつ可変長
コードワードがビットストリームから分析されるときの
サイクルの間に,累積値を増加させるべく,VLC長を出
力するために、セレクタを起動する。圧縮されたビット
ストリームから分析される可変長データのブロックの終
端でのブロック終端(EOB)長およびVLC長だけ累積値を
同時に増加させる手段が設けられる。このような構造物
はブロックメッセージの端部に対して個々の分離した分
析サイクルを丁度使用する必要性を回避する。
【0020】レートフローバッファ(rate flow buffer)
がビットストリームデータをシフト手段にロードするた
めに使用されるレジスタ手段と、圧縮されたビットスト
リームのソース(たとえば外部DRAM)との間に連結され
る。レートフローバッファはソースからの圧縮されたビ
ットストリームデータの連続した部分をバッファするた
めに、イネーブル信号に応答する。図示の実施例におい
て、レートフローバッファはビデオフレーム記憶からメ
モリーマネージャーを介してデータを受信するために連
結された先入れ先出し(FIFO)レジスタを含む。
がビットストリームデータをシフト手段にロードするた
めに使用されるレジスタ手段と、圧縮されたビットスト
リームのソース(たとえば外部DRAM)との間に連結され
る。レートフローバッファはソースからの圧縮されたビ
ットストリームデータの連続した部分をバッファするた
めに、イネーブル信号に応答する。図示の実施例におい
て、レートフローバッファはビデオフレーム記憶からメ
モリーマネージャーを介してデータを受信するために連
結された先入れ先出し(FIFO)レジスタを含む。
【0021】
【発明の実施の形態】図1は、本発明に従って分析され
るべきデータを得るために外部DRAM22にアクセスするメ
モリマネージャー30を組み入れたビデオ・デコンプレッ
ション・プロセスのブロック図である。一般的に符号20
が付されたプロセッサは、トランスポート層(すなわ
ち、制御および他の非ビデオ情報)およびターミナル10
を介したビットストリーム入力のビデオ層の両方をデコ
ードするように設計された連結プロセッサ(これはしば
しばビデオプロセッサのトランスポートパケットインタ
ーフェイスとして参照される)である。
るべきデータを得るために外部DRAM22にアクセスするメ
モリマネージャー30を組み入れたビデオ・デコンプレッ
ション・プロセスのブロック図である。一般的に符号20
が付されたプロセッサは、トランスポート層(すなわ
ち、制御および他の非ビデオ情報)およびターミナル10
を介したビットストリーム入力のビデオ層の両方をデコ
ードするように設計された連結プロセッサ(これはしば
しばビデオプロセッサのトランスポートパケットインタ
ーフェイスとして参照される)である。
【0022】ユーザー・プロセッサ・インターフェイス
が、プロセッサ20のいろいろなレジスタを構成するMバ
スコントローラ50を介してビデオデータプロセッサを制
御するために、ターミナル14に設けられている。Mバス
コントローラは、デバイス間のデータ交換の単純で、効
果的な手段を与えるもので、I2Cバス標準に完全に適
合する2線式の、双方向シリアルバスである。
が、プロセッサ20のいろいろなレジスタを構成するMバ
スコントローラ50を介してビデオデータプロセッサを制
御するために、ターミナル14に設けられている。Mバス
コントローラは、デバイス間のデータ交換の単純で、効
果的な手段を与えるもので、I2Cバス標準に完全に適
合する2線式の、双方向シリアルバスである。
【0023】DRAM22へのインターフェイスがアドレスラ
イン24およびデータライン26を介して設けられている。
図1に図示の実施例において、DRAM22は9ビットアドレス
ポートおよび32ビットデータポートを有する。
イン24およびデータライン26を介して設けられている。
図1に図示の実施例において、DRAM22は9ビットアドレス
ポートおよび32ビットデータポートを有する。
【0024】ビデオ出力インターフェイス38が、例え
ば、標準CCIR(International RadioConsulitive Commi
ttee)656、8ビット、37Mhz多重送信された輝度(y)
および色(Cr,Cb)信号として出力され得る、圧縮
が解かれ、再構成されたビデオに対して設けられてい
る。
ば、標準CCIR(International RadioConsulitive Commi
ttee)656、8ビット、37Mhz多重送信された輝度(y)
および色(Cr,Cb)信号として出力され得る、圧縮
が解かれ、再構成されたビデオに対して設けられてい
る。
【0025】テストインターフェイスが、ターミナル62
を介して在来のJTAG(Joint Test Action Group)コント
ローラ60に設けられている。JTAGは内部回路と同様に、
パッケージおよびボード接続における欠陥を検出すべ
く、ボードレベルをテストするために使用される標準化
された、境界走査方法である。
を介して在来のJTAG(Joint Test Action Group)コント
ローラ60に設けられている。JTAGは内部回路と同様に、
パッケージおよびボード接続における欠陥を検出すべ
く、ボードレベルをテストするために使用される標準化
された、境界走査方法である。
【0026】ビデオ・デコンプレッション・プロセッサ
20はターミナル12を介してクロック信号を受信する。ク
ロック信号は、たとえば、輸送シンタックスパーサ32が
ターミナル10からの圧縮されたビットストリーム入力の
トランスポートパケットからタイミング情報およびビデ
オ情報を回復できるように、タイミング情報を与える。
捕捉およびエラーマネージメント回路34が、画像デコー
ディングの開始を同期するために、ビデオシンタックス
パーサ40により検出されるデコード・タイム・スタンプ
(DTS)およびプログラムクロック基準(PCR)を
利用する。この回路は垂直同期をセットし、全ビデオデ
コードおよび表示機能に対して全体的な同期化を与え
る。
20はターミナル12を介してクロック信号を受信する。ク
ロック信号は、たとえば、輸送シンタックスパーサ32が
ターミナル10からの圧縮されたビットストリーム入力の
トランスポートパケットからタイミング情報およびビデ
オ情報を回復できるように、タイミング情報を与える。
捕捉およびエラーマネージメント回路34が、画像デコー
ディングの開始を同期するために、ビデオシンタックス
パーサ40により検出されるデコード・タイム・スタンプ
(DTS)およびプログラムクロック基準(PCR)を
利用する。この回路は垂直同期をセットし、全ビデオデ
コードおよび表示機能に対して全体的な同期化を与え
る。
【0027】ビデオ層はメモリマネージャー30により外
部DRAM22に構成された入力バッファ(FIFO)で、バッフ
ァされる。ビデオシンタックスパーサ40はメモリマネー
ジャー30を介してDRAM FIFOから圧縮されたビデオデー
タ出力を受信し、ビデオ情報を記述する係数から移動ベ
クトル情報を分離する。係数はハフマンデコーダ52、逆
転量子化器54、および逆転分離正弦変換(IDCT)プロセ
ッサ56により処理される。
部DRAM22に構成された入力バッファ(FIFO)で、バッフ
ァされる。ビデオシンタックスパーサ40はメモリマネー
ジャー30を介してDRAM FIFOから圧縮されたビデオデー
タ出力を受信し、ビデオ情報を記述する係数から移動ベ
クトル情報を分離する。係数はハフマンデコーダ52、逆
転量子化器54、および逆転分離正弦変換(IDCT)プロセ
ッサ56により処理される。
【0028】移動ベクトルは、現ビデオフレームを再構
成するために必要な、前にデコードされたビデオフレー
ムをアドレスするために回復され、使用される。特に、
移動ベクトルデコーダ42がビデオシンタックスパーサ40
から受信した移動ベクトルをデコードし、それらを予想
アドレス発生器44へと通過させる。予想アドレス発生器
は、検索するのに必要なアドレス情報をメモリマネージ
ャー30を介して与え、予想計算器46が現フレームブロッ
クを再構成するために必要な予想データを与えることが
できるように、必要なアンカーフレームデータを与え
る。差分デコーダ48は、圧縮が解かれたビデオデータを
与えるために、予想データとデコードされた係数データ
とを結合する。圧縮が解かれたデータはメモリマネージ
ャー30を介してDRAM22の適当なバッファ内に記憶され
る。
成するために必要な、前にデコードされたビデオフレー
ムをアドレスするために回復され、使用される。特に、
移動ベクトルデコーダ42がビデオシンタックスパーサ40
から受信した移動ベクトルをデコードし、それらを予想
アドレス発生器44へと通過させる。予想アドレス発生器
は、検索するのに必要なアドレス情報をメモリマネージ
ャー30を介して与え、予想計算器46が現フレームブロッ
クを再構成するために必要な予想データを与えることが
できるように、必要なアンカーフレームデータを与え
る。差分デコーダ48は、圧縮が解かれたビデオデータを
与えるために、予想データとデコードされた係数データ
とを結合する。圧縮が解かれたデータはメモリマネージ
ャー30を介してDRAM22の適当なバッファ内に記憶され
る。
【0029】移動ベクトルデコーダ42、予想アドレス発
生器44、予想計算器46、差分デコーダ48、ハフマンデコ
ーダ52、逆転量子化器54およびIDCT56により達成される
ビデオ・デコンプレッション・プロセスは従前のもので
あり、当業者であれば理解できよう。
生器44、予想計算器46、差分デコーダ48、ハフマンデコ
ーダ52、逆転量子化器54およびIDCT56により達成される
ビデオ・デコンプレッション・プロセスは従前のもので
あり、当業者であれば理解できよう。
【0030】メモリマネージャー30は外部DRAMアドレス
およびデータバス24、26における活動の予定を決め、本
発明に従って、効率よくDRAM22にアドレスする。メモリ
マネージャーは、DRAM22の入力FIFO部分、ビデオシンタ
ックスパーサ40およびビデオ再構成回路36(並びに予想
計算器46および差分デコーダ48)のデータ移送条件がす
べて満たされることを保証する。ビデオ再構成回路36は
現画像を計算し、ビデオ出力ライン38における出力のた
めに、垂直間隔テスト信号(VITIS)およびテストパタ
ーンデータ、密接なキャプションを挿入する。出力表示
がPCRを表示タイムスタンプ(PTS)に比較すること
で、同期化される。ビデオフレームのデコーディングお
よび表示がいつ開始されなければならないかの判定がデ
コードタイムスタンプ(DTS)をPTSに比較することによ
りなされる。
およびデータバス24、26における活動の予定を決め、本
発明に従って、効率よくDRAM22にアドレスする。メモリ
マネージャーは、DRAM22の入力FIFO部分、ビデオシンタ
ックスパーサ40およびビデオ再構成回路36(並びに予想
計算器46および差分デコーダ48)のデータ移送条件がす
べて満たされることを保証する。ビデオ再構成回路36は
現画像を計算し、ビデオ出力ライン38における出力のた
めに、垂直間隔テスト信号(VITIS)およびテストパタ
ーンデータ、密接なキャプションを挿入する。出力表示
がPCRを表示タイムスタンプ(PTS)に比較すること
で、同期化される。ビデオフレームのデコーディングお
よび表示がいつ開始されなければならないかの判定がデ
コードタイムスタンプ(DTS)をPTSに比較することによ
りなされる。
【0031】メモリマネージャーもまた、たとえば双方
向の予想フレーム(Bフレーム)を伴って、またはそれ
を伴わずにNTSCまたはPALのいずれかであり得るデコー
ディングモードに依存して、DRAM22のFIFO部分に対して
可変な大きさを与える。ビデオバッファ制御により、確
かにDRAM22により与えられるFIFOがオーバーフローする
こともなく、アンダーフローすることもない。バッファ
制御はPCRおよびDTSを含むシステムタイミングパラメー
タの関数である。
向の予想フレーム(Bフレーム)を伴って、またはそれ
を伴わずにNTSCまたはPALのいずれかであり得るデコー
ディングモードに依存して、DRAM22のFIFO部分に対して
可変な大きさを与える。ビデオバッファ制御により、確
かにDRAM22により与えられるFIFOがオーバーフローする
こともなく、アンダーフローすることもない。バッファ
制御はPCRおよびDTSを含むシステムタイミングパラメー
タの関数である。
【0032】DRAM22は外部メモリとして図示され、8メ
ガビット(メガビットは2 20 ビット)の実施のための二
つの、4メガビットまたは16メガビットの実施のための
四つの4メガビットDRAMのような、複数のDRAMチップに
より成る。将来の実施の際、そしてメモリ技術の進歩に
よりDRAM22がビデオ・デコンプレッション・プロセッサ
内の内部メモリとして設けることができることは分かる
であろう。DRAMのマップが、いろいろなデコードおよび
出力ビデオバッファ並びに圧縮された入力ビデオビット
ストリーム用の環状FIFOを与えるために、描かれる。DR
AMはまた、テストパターンバッファ、VITSバッファおよ
び密接な、見出しのついた(captioning)表示再順序バ
ッファを与えるために、並びにデコードされたビデオフ
レームを適切に表示するために必要ないろいろな画像構
成データを記憶するために使用され得る。DRAMは、メモ
リマネージャー30を介して再度初期化でき、ビデオフレ
ームの大きさ、PALまたはNTSCビデオ、テストパターン
の存在、8または16Mビットメモリ形成、Bフレームが
存在するかどかのように変数が修正されたときに必要と
されるような種々のマップを与える。
ガビット(メガビットは2 20 ビット)の実施のための二
つの、4メガビットまたは16メガビットの実施のための
四つの4メガビットDRAMのような、複数のDRAMチップに
より成る。将来の実施の際、そしてメモリ技術の進歩に
よりDRAM22がビデオ・デコンプレッション・プロセッサ
内の内部メモリとして設けることができることは分かる
であろう。DRAMのマップが、いろいろなデコードおよび
出力ビデオバッファ並びに圧縮された入力ビデオビット
ストリーム用の環状FIFOを与えるために、描かれる。DR
AMはまた、テストパターンバッファ、VITSバッファおよ
び密接な、見出しのついた(captioning)表示再順序バ
ッファを与えるために、並びにデコードされたビデオフ
レームを適切に表示するために必要ないろいろな画像構
成データを記憶するために使用され得る。DRAMは、メモ
リマネージャー30を介して再度初期化でき、ビデオフレ
ームの大きさ、PALまたはNTSCビデオ、テストパターン
の存在、8または16Mビットメモリ形成、Bフレームが
存在するかどかのように変数が修正されたときに必要と
されるような種々のマップを与える。
【0033】メモリマネージャー30は、入力FIFO、ビデ
オパーサおよびビデオ再構成回路のデータ移送条件を含
む、外部DRAMバスにおける全ての活動の予定を決める。
メモリマネージャーもまた従前の方法で必要とされるDR
AMのリフレッシュが行われる。たとえば、二つまたは四
つの外部DRAMのそれぞれの同じローは同時にリフレッシ
ュされ得る。
オパーサおよびビデオ再構成回路のデータ移送条件を含
む、外部DRAMバスにおける全ての活動の予定を決める。
メモリマネージャーもまた従前の方法で必要とされるDR
AMのリフレッシュが行われる。たとえば、二つまたは四
つの外部DRAMのそれぞれの同じローは同時にリフレッシ
ュされ得る。
【0034】メモリマネージャー30と、DRAM22からデー
タにアクセスする要素のそれぞれとの間のレートフロー
バッファとして、小さなFIFOも設け得る。たとえば、ビ
デオシンタックスパーサ40は、メモリマネージャー30を
介してDRAM22からデータを受信する小さなレートフロー
バッファ72(図2)を経路内に含む。ビデオシンタック
スパーサはめったに新しいデータワードを要求しない。
しかし、新しいデータワードが要求されとき、パーサは
直ぐにそれをもたなければならない。もしそうでなけれ
ば、ビデオシンタックスパーサから出力を要求する下流
のプロセスは働いていない状態にあり、ビデオ・デコン
プレッション・プロセッサの効果を減ずる。もし、ビデ
オシンタックスパーサ40が新しいデータワードを必要と
する度ごとに、DRAMに対して個々の要求をなすとする
と、低速ランダムアクセスとなり、分析プロセスが遅延
する。レートフローバッファを用意することはこの潜在
的問題を解消する。たとえば、もしレートフローバッフ
ァが20ワードのDRAMデータを保持すると、ビデオシンタ
ックスパーサは、レートフローバッファから直ぐに要求
する新しいデータを得ることができる。レートフローバ
ッファが予めセットされたある空のレベルに達したと
き、メモリマネージャー30はRAMからさらにデータを
読むように向けられる。さらなるDRAMデータに対する要
求が達成されたとき、データがシーケンシャルバースト
(sequential burst)に読み込まれ、レートフローバッ
ファが満たされるまで、その中に記録される。
タにアクセスする要素のそれぞれとの間のレートフロー
バッファとして、小さなFIFOも設け得る。たとえば、ビ
デオシンタックスパーサ40は、メモリマネージャー30を
介してDRAM22からデータを受信する小さなレートフロー
バッファ72(図2)を経路内に含む。ビデオシンタック
スパーサはめったに新しいデータワードを要求しない。
しかし、新しいデータワードが要求されとき、パーサは
直ぐにそれをもたなければならない。もしそうでなけれ
ば、ビデオシンタックスパーサから出力を要求する下流
のプロセスは働いていない状態にあり、ビデオ・デコン
プレッション・プロセッサの効果を減ずる。もし、ビデ
オシンタックスパーサ40が新しいデータワードを必要と
する度ごとに、DRAMに対して個々の要求をなすとする
と、低速ランダムアクセスとなり、分析プロセスが遅延
する。レートフローバッファを用意することはこの潜在
的問題を解消する。たとえば、もしレートフローバッフ
ァが20ワードのDRAMデータを保持すると、ビデオシンタ
ックスパーサは、レートフローバッファから直ぐに要求
する新しいデータを得ることができる。レートフローバ
ッファが予めセットされたある空のレベルに達したと
き、メモリマネージャー30はRAMからさらにデータを
読むように向けられる。さらなるDRAMデータに対する要
求が達成されたとき、データがシーケンシャルバースト
(sequential burst)に読み込まれ、レートフローバッ
ファが満たされるまで、その中に記録される。
【0035】レートフローバッファは、通常DRAMの同じ
ロー内でアクセスが逐次で、かつ速いのでDRAM I/O帯
域幅およびデコーダの速度を支援し、パーサはほとんど
データを使い果たすことがない。特に、レートフローバ
ッファが完全に空になる前に、ある要求が新しいデータ
に対して加えられ得る。
ロー内でアクセスが逐次で、かつ速いのでDRAM I/O帯
域幅およびデコーダの速度を支援し、パーサはほとんど
データを使い果たすことがない。特に、レートフローバ
ッファが完全に空になる前に、ある要求が新しいデータ
に対して加えられ得る。
【0036】図1に示されているように、ビデオシンタ
ックスパーサ40はメモリーマネージャー30を介してDRAM
22からの圧縮されたビットストリーム情報を受信する。
パーサはまた、回路34からいろいろな捕捉およびエラー
マネージメント情報を受信する。移動ベクトルデコーダ
42はいろいろなハンドシェーキング情報をパーサ(例え
ば、マクロブロックデータ要求、ピクチャーコーディン
グタイプの識別、ビデオシンタックスパーサから分析さ
れた後に移動ベクトルデコーダによりデコードされるマ
クロタイプの情報、および可変コード長のマクロブロッ
クデータを含む)に与える。ビデオシンタックスパーサ
はまた、ハフマンデコーダ52からハンドシェーキング情
報を受信する。この情報はブロックデータ要求、マクロ
ブロック終端情報、データブロックのための可変長コー
ドの長さ、およびブロック長識別子の終端を含む。垂直
ブランキング間隔ユーザデータ要求のような他のハンド
シェーキング情報およびパーサイネーブル信号が、捕捉
およびエラーマネージメント回路34を介して、または直
接受信される。
ックスパーサ40はメモリーマネージャー30を介してDRAM
22からの圧縮されたビットストリーム情報を受信する。
パーサはまた、回路34からいろいろな捕捉およびエラー
マネージメント情報を受信する。移動ベクトルデコーダ
42はいろいろなハンドシェーキング情報をパーサ(例え
ば、マクロブロックデータ要求、ピクチャーコーディン
グタイプの識別、ビデオシンタックスパーサから分析さ
れた後に移動ベクトルデコーダによりデコードされるマ
クロタイプの情報、および可変コード長のマクロブロッ
クデータを含む)に与える。ビデオシンタックスパーサ
はまた、ハフマンデコーダ52からハンドシェーキング情
報を受信する。この情報はブロックデータ要求、マクロ
ブロック終端情報、データブロックのための可変長コー
ドの長さ、およびブロック長識別子の終端を含む。垂直
ブランキング間隔ユーザデータ要求のような他のハンド
シェーキング情報およびパーサイネーブル信号が、捕捉
およびエラーマネージメント回路34を介して、または直
接受信される。
【0037】ビデオシンタックスパーサは二つの出力バ
スを含む。バス57はパーサ状態をビデオ・デコンプレッ
ション・プロセッサ20の複数のサブシステム(すなわ
ち、移動ベクトルデコーダ42、予測アドレス発生器44、
予測計算器46、差分デコーダ48、ハフマンデコーダ52、
逆転量子化器54、IDCT56およびビデオ再構成回路36)に
与える。データバス58が、分析されたデータをビデオシ
ンタックスパーサから、このようなデータを要求するビ
デオ・デコンプレッション・プロセッサのいろいろなサ
ブシステムに伝達する。バス57および58に連結された各
サブシステムは、分析されたデータストリーム内のサブ
シーケンスデータがそのサブシステムに向けるように意
図されるかどうかを判定するために、現パーサ状態をモ
ニターする。パーサ状態がサブシステムに対する分析さ
れたデータが後に続くことを示すならば、サブシステム
はそのデータを検索し、そしてそれを処理する。
スを含む。バス57はパーサ状態をビデオ・デコンプレッ
ション・プロセッサ20の複数のサブシステム(すなわ
ち、移動ベクトルデコーダ42、予測アドレス発生器44、
予測計算器46、差分デコーダ48、ハフマンデコーダ52、
逆転量子化器54、IDCT56およびビデオ再構成回路36)に
与える。データバス58が、分析されたデータをビデオシ
ンタックスパーサから、このようなデータを要求するビ
デオ・デコンプレッション・プロセッサのいろいろなサ
ブシステムに伝達する。バス57および58に連結された各
サブシステムは、分析されたデータストリーム内のサブ
シーケンスデータがそのサブシステムに向けるように意
図されるかどうかを判定するために、現パーサ状態をモ
ニターする。パーサ状態がサブシステムに対する分析さ
れたデータが後に続くことを示すならば、サブシステム
はそのデータを検索し、そしてそれを処理する。
【0038】ビデオシンタックスパーサは図2に詳しく
示されている。分析されるべき圧縮されたビットストリ
ーム情報はターミナル70でメモリマネージャー30を介し
てDRAM22から受信される。データは第1のレジスタ74へ
の連続移送のために、FIFO72でバッファされる。図示さ
れた特定の例において、レジスタ74は32ビットレジスタ
で、これは当業者には、データを特定のシステム条件に
依存していろいろなワード長で処理できることは知られ
ている。最初に、第一番目の32ビットの情報がレジスタ
74にロードされる。連続するクロックサイクルの間に、
レジスタ74の内容はレジスタ76にロードされる一方で、
レジスタ74はFIFO72から他の32ビットの情報を受信す
る。
示されている。分析されるべき圧縮されたビットストリ
ーム情報はターミナル70でメモリマネージャー30を介し
てDRAM22から受信される。データは第1のレジスタ74へ
の連続移送のために、FIFO72でバッファされる。図示さ
れた特定の例において、レジスタ74は32ビットレジスタ
で、これは当業者には、データを特定のシステム条件に
依存していろいろなワード長で処理できることは知られ
ている。最初に、第一番目の32ビットの情報がレジスタ
74にロードされる。連続するクロックサイクルの間に、
レジスタ74の内容はレジスタ76にロードされる一方で、
レジスタ74はFIFO72から他の32ビットの情報を受信す
る。
【0039】バレルシフタ(または同等のシフト手段)
78が、デコーダ80およびパーサデータバス58へデータの
適切な部分を連続して出力するために、レジスタ74およ
び76からデータを受信する。
78が、デコーダ80およびパーサデータバス58へデータの
適切な部分を連続して出力するために、レジスタ74およ
び76からデータを受信する。
【0040】デコーダ80の一つの目的はバレルシフタ78
からのデータ出力にある開始コードを調べることであ
る。デコーダ80は状態機(statemachine)として機能し得
る。開始コードがロードされ、そしてデコードされる
と、状態機の現状態は、ビデオシンタックス内の次のフ
ィールドの長さを判定する。その長さはバレルシフタが
シフトするシフト長を更新する。シフト長の5最下位ビ
ット(LSB’s)の実行の全体がシフト長アキュムレータ9
2内で維持され、バレルシフタのシフト長入力に適用さ
れる。6ビットシフト長の最上位ビット(MSB)は31ビッ
トより大きなシフトを起こすために使用される。このよ
うなシフトは第1のレジスタ74の内容を第2のレジスタ76
に移すことにより与えられる。同時に、第1のレジスタ7
4はFIFO72から新しいデータを受信する。次のサイクル
の間に、FIFO72からの新しいデータがFIFOイネーブル信
号(これはDタイプのフリップフロップ94により一クロ
ックサイクルだけ遅延されたレジスタ74および76を起動
するために使用されるイネーブル信号である)に応答し
てレジスタ74に与えられる。
からのデータ出力にある開始コードを調べることであ
る。デコーダ80は状態機(statemachine)として機能し得
る。開始コードがロードされ、そしてデコードされる
と、状態機の現状態は、ビデオシンタックス内の次のフ
ィールドの長さを判定する。その長さはバレルシフタが
シフトするシフト長を更新する。シフト長の5最下位ビ
ット(LSB’s)の実行の全体がシフト長アキュムレータ9
2内で維持され、バレルシフタのシフト長入力に適用さ
れる。6ビットシフト長の最上位ビット(MSB)は31ビッ
トより大きなシフトを起こすために使用される。このよ
うなシフトは第1のレジスタ74の内容を第2のレジスタ76
に移すことにより与えられる。同時に、第1のレジスタ7
4はFIFO72から新しいデータを受信する。次のサイクル
の間に、FIFO72からの新しいデータがFIFOイネーブル信
号(これはDタイプのフリップフロップ94により一クロ
ックサイクルだけ遅延されたレジスタ74および76を起動
するために使用されるイネーブル信号である)に応答し
てレジスタ74に与えられる。
【0041】図3は図2のビデオシンタックスパーサによ
り分析されるべき圧縮されたビットストリームを略示的
に示す。デコーダ80は開始コードを探し出すためにバレ
ルシフタ78からの連続した32ビットワード出力をモニタ
ーする。ビットストリームがバイトアライメント法によ
り与えられるので、開始コードを調べるときバレルシフ
タは、24ビット開始コードシーケンス102が32ビット開
始コード100内に見つけられるまで一度に1バイト(8ビ
ット)ずつ連続してシフトされる。たとえば、開始コー
ドシーケンス102が23個のゼロとそれに1が続いた一連の
ものからなるものである。このシーケンスを認めたと
き、デコーダ80は次のバイト(これは8ビット開始コー
ド識別子(ID)から成る)をデコードする。開始コード
IDは開始コードに続く特定のカテゴリーの情報を識別す
る。続く情報はデコンプレッション・プロセッサ20の種
々のサブシステムで分析される実際のデータ106であ
る。
り分析されるべき圧縮されたビットストリームを略示的
に示す。デコーダ80は開始コードを探し出すためにバレ
ルシフタ78からの連続した32ビットワード出力をモニタ
ーする。ビットストリームがバイトアライメント法によ
り与えられるので、開始コードを調べるときバレルシフ
タは、24ビット開始コードシーケンス102が32ビット開
始コード100内に見つけられるまで一度に1バイト(8ビ
ット)ずつ連続してシフトされる。たとえば、開始コー
ドシーケンス102が23個のゼロとそれに1が続いた一連の
ものからなるものである。このシーケンスを認めたと
き、デコーダ80は次のバイト(これは8ビット開始コー
ド識別子(ID)から成る)をデコードする。開始コード
IDは開始コードに続く特定のカテゴリーの情報を識別す
る。続く情報はデコンプレッション・プロセッサ20の種
々のサブシステムで分析される実際のデータ106であ
る。
【0042】分析される種々のカテゴリーのデータはMP
EG−2またはDigiCipher II標準により命令を受ける。ME
RG−2標準は、ここに文献として組み入れられる”Codin
g ofMoving Pictures and Associated Audio”と題する
国際標準機関誌No.ISO/IEC13818-2に詳細に説明され
ている。MPEG-2またはDCIIの実施例において、開始コー
ド識別子104により識別できるカテゴリーの情報は、例
えばシーケンスヘッダ、シーケンス延長、延長およびユ
ーザーデータ、ユーザーデータ、シーケンス表示延長、
ピクチャーヘッダのグループ、ピクチャーヘッダ、ピク
チャーデータ、スライス層、マクロブロック層、並びに
ブロック層を含み得る。
EG−2またはDigiCipher II標準により命令を受ける。ME
RG−2標準は、ここに文献として組み入れられる”Codin
g ofMoving Pictures and Associated Audio”と題する
国際標準機関誌No.ISO/IEC13818-2に詳細に説明され
ている。MPEG-2またはDCIIの実施例において、開始コー
ド識別子104により識別できるカテゴリーの情報は、例
えばシーケンスヘッダ、シーケンス延長、延長およびユ
ーザーデータ、ユーザーデータ、シーケンス表示延長、
ピクチャーヘッダのグループ、ピクチャーヘッダ、ピク
チャーデータ、スライス層、マクロブロック層、並びに
ブロック層を含み得る。
【0043】種々の異なる情報が各カテゴリー内に含ま
れる。例えば、シーケンスヘッダを識別する開始コード
は、分析されるべき続くデータがシーケンスヘッダコー
ド、水平方向のサイズの値、垂直方向のサイズの値、サ
ンプルアスペクト比、フレームレート、ビットレート、
バッファサイズの情報を含み、そしてまた、内部量子化
器マトリクスおよび/または非内部量子化器マトリクス
を含むことを意味する。さらに、シーケンスヘッダ情報
はデータを適切に分析し、デコードするために必要ない
ろいろなマーカービットおよびフラッグから成る。上記
他のカテゴリーのそれぞれはビデオ・デコンプレッショ
ン・プロセッサ内の種々のサブシステムにより使用され
るべきそれら自信の情報層から成る。圧縮されたビット
ストリーム内に含まれる種々の情報タイプのそれぞれの
位置がMPEGおよびDigiCipherにより命令されるので、開
始コードが探し出されると、次の開始コードまで情報に
続くすべての識別子および位置は、例えば合成された読
み込み専用メモリー内に与えることのできる参照用テー
ブルの使用により、容易に識別可能となる。ビデオシン
タックスパーサ40は、開始コードに続いて分析されるデ
ータ内の連続する各フィールド長さのための参照用テー
ブルを含む。データそれ自身をデコードするための参照
用テーブルがビデオシンタックスパーサと通信するビデ
オ・デコンプレッション・プロセッサの種々のサブシス
テムに設けられる。例えば、移動ベクトルデコーダ42お
よびハフマンデコーダ52は、上述したようにいろいろな
ハンドシェーキング情報をデコードし、ビデオシンタッ
クスパーサに供給する。
れる。例えば、シーケンスヘッダを識別する開始コード
は、分析されるべき続くデータがシーケンスヘッダコー
ド、水平方向のサイズの値、垂直方向のサイズの値、サ
ンプルアスペクト比、フレームレート、ビットレート、
バッファサイズの情報を含み、そしてまた、内部量子化
器マトリクスおよび/または非内部量子化器マトリクス
を含むことを意味する。さらに、シーケンスヘッダ情報
はデータを適切に分析し、デコードするために必要ない
ろいろなマーカービットおよびフラッグから成る。上記
他のカテゴリーのそれぞれはビデオ・デコンプレッショ
ン・プロセッサ内の種々のサブシステムにより使用され
るべきそれら自信の情報層から成る。圧縮されたビット
ストリーム内に含まれる種々の情報タイプのそれぞれの
位置がMPEGおよびDigiCipherにより命令されるので、開
始コードが探し出されると、次の開始コードまで情報に
続くすべての識別子および位置は、例えば合成された読
み込み専用メモリー内に与えることのできる参照用テー
ブルの使用により、容易に識別可能となる。ビデオシン
タックスパーサ40は、開始コードに続いて分析されるデ
ータ内の連続する各フィールド長さのための参照用テー
ブルを含む。データそれ自身をデコードするための参照
用テーブルがビデオシンタックスパーサと通信するビデ
オ・デコンプレッション・プロセッサの種々のサブシス
テムに設けられる。例えば、移動ベクトルデコーダ42お
よびハフマンデコーダ52は、上述したようにいろいろな
ハンドシェーキング情報をデコードし、ビデオシンタッ
クスパーサに供給する。
【0044】開始コードの調査の間に、デコーダ80は
「フィールド長」信号を出力し、バレルシフタ78は各連
続した分析サイクルの間、一バイト(8ビット)だけシ
フトされる。デコーダ80からのフィールド長出力はセレ
クタ84を介して加算器88に結合される。セレクタ84は、
ターミナル98を介し、現パーサ状態に応答して、三つの
信号出力のどの一つも出力できる。パーサが第1の開始
コードを最初に探し出そうとするとき、そのパーサ状態
は、セレクタ84に、シフト長アキュムレータ92からの前
のシフト長出力と総計をとるべく8ビットフィールド長
を出力させる信号捕捉モードにある。前のシフト長は加
算器86を介して加算器88に入力される。加算器86の目的
は、ハフマンデコーダにより処理されるDCT係数のすべ
てのブロックの終端にあるブロック終端(EOB)長だけ
そのシフト長を増加させることである。そのEOB長はハ
フマンデコーダ52から出力され、EOB長に対して分離し
たクロックサイクルを無駄にする必要性を避けるため
に、各ブロックで最後の可変長のコード化された係数と
ともに総計が取られる。
「フィールド長」信号を出力し、バレルシフタ78は各連
続した分析サイクルの間、一バイト(8ビット)だけシ
フトされる。デコーダ80からのフィールド長出力はセレ
クタ84を介して加算器88に結合される。セレクタ84は、
ターミナル98を介し、現パーサ状態に応答して、三つの
信号出力のどの一つも出力できる。パーサが第1の開始
コードを最初に探し出そうとするとき、そのパーサ状態
は、セレクタ84に、シフト長アキュムレータ92からの前
のシフト長出力と総計をとるべく8ビットフィールド長
を出力させる信号捕捉モードにある。前のシフト長は加
算器86を介して加算器88に入力される。加算器86の目的
は、ハフマンデコーダにより処理されるDCT係数のすべ
てのブロックの終端にあるブロック終端(EOB)長だけ
そのシフト長を増加させることである。そのEOB長はハ
フマンデコーダ52から出力され、EOB長に対して分離し
たクロックサイクルを無駄にする必要性を避けるため
に、各ブロックで最後の可変長のコード化された係数と
ともに総計が取られる。
【0045】フィールド長が加算器88で前のシフト長に
加えられた後に、その結果は回路90で、総計の5最下位
ビットをシフト長アキュムレータ92に、そして最上位の
6番目のビットを非フリップフロップ94に与えるため
に、切り分けられる。この6番目のビットはレジスタ74
および76(これらは新しいデータをビットの状態が変化
する度毎にロードする)に対しイネーブル信号を与え
る。そのビットはまた、フリップフロップ94により遅延
され、FIFO72がデータを次のイネーブルサイクルの間に
レジスタ74にロードするために与えることができるよう
に使用される。
加えられた後に、その結果は回路90で、総計の5最下位
ビットをシフト長アキュムレータ92に、そして最上位の
6番目のビットを非フリップフロップ94に与えるため
に、切り分けられる。この6番目のビットはレジスタ74
および76(これらは新しいデータをビットの状態が変化
する度毎にロードする)に対しイネーブル信号を与え
る。そのビットはまた、フリップフロップ94により遅延
され、FIFO72がデータを次のイネーブルサイクルの間に
レジスタ74にロードするために与えることができるよう
に使用される。
【0046】開始コードを探し、開始コード識別子をデ
コードしたとき、新しいパーサ状態がデコーダ80から出
力され、パーサ状態がレジスタ82に記憶される。パーサ
状態はまた、パーサ状態バス57に結合したデコンプレッ
ション・プロセッサのサブシステムのそれぞれに伝えら
れる。続くデータがデコードされたとき、パーサ状態は
変化し、各サブシステムにどのデータが存在するかを示
し、その結果サブシステムは更なる処理のために適切な
データを検索する。上記のいろいろなハンドシェーキン
グ情報はターミナル96を介してデコード80に入力され
る。この情報はマクロブロック要求、ブロックデータ要
求、マクロタイプ、ピクチャーコーディングタイプ、マ
クロブロックエンド、VBIユーザーデータ要求、およ
び/またはパーサイネーブル信号を含むことができる。
可変長ワードが、各コードワードの長さ、固定された長
さのワードに代わってデコードされるとき、各コードワ
ードの長さはマクロブロック(MB VLC長)の場合に移
動ベクトルデコーダ42から、またはコードワードが個々
のブロック(BLOCK VLC長)からのデータを代表するも
のである場合にハフマンデコーダ52からセレクタ84に入
力される。ターミナル98のパーサ状態入力はセレクタ84
を起動し、BLOCKVLCまたはMB長を適切に出力する。
コードしたとき、新しいパーサ状態がデコーダ80から出
力され、パーサ状態がレジスタ82に記憶される。パーサ
状態はまた、パーサ状態バス57に結合したデコンプレッ
ション・プロセッサのサブシステムのそれぞれに伝えら
れる。続くデータがデコードされたとき、パーサ状態は
変化し、各サブシステムにどのデータが存在するかを示
し、その結果サブシステムは更なる処理のために適切な
データを検索する。上記のいろいろなハンドシェーキン
グ情報はターミナル96を介してデコード80に入力され
る。この情報はマクロブロック要求、ブロックデータ要
求、マクロタイプ、ピクチャーコーディングタイプ、マ
クロブロックエンド、VBIユーザーデータ要求、およ
び/またはパーサイネーブル信号を含むことができる。
可変長ワードが、各コードワードの長さ、固定された長
さのワードに代わってデコードされるとき、各コードワ
ードの長さはマクロブロック(MB VLC長)の場合に移
動ベクトルデコーダ42から、またはコードワードが個々
のブロック(BLOCK VLC長)からのデータを代表するも
のである場合にハフマンデコーダ52からセレクタ84に入
力される。ターミナル98のパーサ状態入力はセレクタ84
を起動し、BLOCKVLCまたはMB長を適切に出力する。
【0047】図4はビデオシンタックスパーサ内のいろ
いろな信号のためのタイミング図である。信号110およ
び112はそれぞれ54MHzおよび27MHzである。信号1
14はバレルシフタ78からの出力を表す。図示されている
ように、パーサ内の固有の種々の遅延がパーサ動作を実
行するために限定された機会が利用可能である間に非常
に窮屈なタイミングを与える。信号116は各可変長コー
ドワードの長さを与える参照用テーブルからの出力を表
す。シフト長加算器88からの出力およびアキュムレータ
92へのシフト長ビット入力のタイミングはタイミングラ
イン118により表されている。シフト長の残部はタイミ
ングライン120により示されている。第1および第2のレ
ジスタ74、76のローディングはイネーブル信号126に応
答する信号122、124により示される。FIFOイネーブル信
号128は一クロックサイクルだけ遅延される。FIFO72の
出力はタイミングライン130により示されている。異な
るパーサ状態の例(固定長(FLC)および可変長(VLC)
コードが処理される場合の時間を含む)はライン132で
示されている。デコーダ80からの固定長のコードワード
(my-length)出力の長さはライン134で示されている。
移動ベクトルデコーダ42からのマクロブロックデータ要
求信号がライン136で示されている。
いろな信号のためのタイミング図である。信号110およ
び112はそれぞれ54MHzおよび27MHzである。信号1
14はバレルシフタ78からの出力を表す。図示されている
ように、パーサ内の固有の種々の遅延がパーサ動作を実
行するために限定された機会が利用可能である間に非常
に窮屈なタイミングを与える。信号116は各可変長コー
ドワードの長さを与える参照用テーブルからの出力を表
す。シフト長加算器88からの出力およびアキュムレータ
92へのシフト長ビット入力のタイミングはタイミングラ
イン118により表されている。シフト長の残部はタイミ
ングライン120により示されている。第1および第2のレ
ジスタ74、76のローディングはイネーブル信号126に応
答する信号122、124により示される。FIFOイネーブル信
号128は一クロックサイクルだけ遅延される。FIFO72の
出力はタイミングライン130により示されている。異な
るパーサ状態の例(固定長(FLC)および可変長(VLC)
コードが処理される場合の時間を含む)はライン132で
示されている。デコーダ80からの固定長のコードワード
(my-length)出力の長さはライン134で示されている。
移動ベクトルデコーダ42からのマクロブロックデータ要
求信号がライン136で示されている。
【0048】図5および6はパーサの動作を示すフローチ
ャートである。フローチャートは150で始まり、ボック
ス152でバレルシフタ出力がデコーダ80(図2)により調
べられ、最初の開始コードを調査する。デコーダに与え
られる最初の32ビットが開始コードを表さないとき(ボ
ックス154で判定される)、シフト長(これはゼロでス
タートする)はフィールド長(これはデコーダが開始コ
ードに対して調べたときに8ビットにセットされる)だ
け増加する。シフト長の増加はボックス156で示されて
いる。ボックス158において、シフト長が32の値を越え
るかどうかについて判定がなされる。もし越えていると
き、加算器88から6ビットの総計の最上位のビットの状
態が変わり、ボックス160に示されているように、新し
いデータをFIFO72からレジスタ74にシフトするためにイ
ネーブル信号を発生する。同時に、レジスタ74からの古
いデータはレジスタ76にロードされる。そのデータがシ
フトされた後に、またはシフト長が32の値を越えない場
合に、バレルシフタのデータはボックス162で示されて
いるようにそのシフト長だけシフトされる。
ャートである。フローチャートは150で始まり、ボック
ス152でバレルシフタ出力がデコーダ80(図2)により調
べられ、最初の開始コードを調査する。デコーダに与え
られる最初の32ビットが開始コードを表さないとき(ボ
ックス154で判定される)、シフト長(これはゼロでス
タートする)はフィールド長(これはデコーダが開始コ
ードに対して調べたときに8ビットにセットされる)だ
け増加する。シフト長の増加はボックス156で示されて
いる。ボックス158において、シフト長が32の値を越え
るかどうかについて判定がなされる。もし越えていると
き、加算器88から6ビットの総計の最上位のビットの状
態が変わり、ボックス160に示されているように、新し
いデータをFIFO72からレジスタ74にシフトするためにイ
ネーブル信号を発生する。同時に、レジスタ74からの古
いデータはレジスタ76にロードされる。そのデータがシ
フトされた後に、またはシフト長が32の値を越えない場
合に、バレルシフタのデータはボックス162で示されて
いるようにそのシフト長だけシフトされる。
【0049】そして、ルーティンは続き、デコーダ80は
最初の開始コードを見つけるまで、連続する32ビットワ
ード(各々は前のワードに関して8ビットだけシフトさ
れる)を調べる。この点で、ルーティンはボックス154
からボックス164(ここで開始コードIDがデコードされ
る)へと進む。このことで、開始コードに続く情報のカ
テゴリーが識別され、したがってパーサ状態がボックス
166でセットされる。ボックス168で、データの次のフィ
ールドが固定長のデータかどうかについて判定される。
もしそうであるならば、フィールド長はボックス170で
セットされ、その結果、次のシフト長はボックス172で
示されているように、計算できる。ボックス174(図6)
において、新しいシフト長が32の値を越えるかどうかの
判定がなされる。もしそうであるならば、レジスタ74お
よび76は新しいデータを受信できるようになる。FIFO72
もまた、続く分析サイクルの間レジスタ74の入力に新し
いデータを与えることができるようになる。
最初の開始コードを見つけるまで、連続する32ビットワ
ード(各々は前のワードに関して8ビットだけシフトさ
れる)を調べる。この点で、ルーティンはボックス154
からボックス164(ここで開始コードIDがデコードされ
る)へと進む。このことで、開始コードに続く情報のカ
テゴリーが識別され、したがってパーサ状態がボックス
166でセットされる。ボックス168で、データの次のフィ
ールドが固定長のデータかどうかについて判定される。
もしそうであるならば、フィールド長はボックス170で
セットされ、その結果、次のシフト長はボックス172で
示されているように、計算できる。ボックス174(図6)
において、新しいシフト長が32の値を越えるかどうかの
判定がなされる。もしそうであるならば、レジスタ74お
よび76は新しいデータを受信できるようになる。FIFO72
もまた、続く分析サイクルの間レジスタ74の入力に新し
いデータを与えることができるようになる。
【0050】ボックス178において、バレルシフタは新
しいシフト長だけシフトされ、バレルシフタ出力は次に
ボックス180で示されているようにデコードされる。ボ
ックス182において、パーサからデータを受信するサブ
システムのどれが、パーサの動作が一時的に保持される
ことを要求したかが判定される。たとえば、ハフマンデ
コーダ52は、コードワードを一つの係数よりも多くにデ
コードできるようにパーサを停止する必要が一時的にあ
る。このことを行うために、ブロックデータ要求信号
が、ハフマンデコーダからハンドシェーク入力のターミ
ナル96を介してビデオシンタックスパーサのデコーダ80
に伝えられる。保持が要求されるとき、ボックス184
は、レジュメコマンド(または保持コマンドの放出)が
受信された時を判定するためにその所在をモニターす
る。これが生じると、ルーティンはボックス182に戻
り、更なる保持が存在しないとき、ビットストリームの
再捕捉を要求するというエラーが発生しているかどうか
の判定がボックス186で行われる。たとえば、連続した
データが、次の開始コードを探し出すことができないよ
うに失われたとき、最初の開始コードを捕捉するために
ボックス152に戻る必要があろう。その結果、ビットス
トリームの分析のやり直しが可能となる。したがって、
ボックス186は、圧縮されたビットストリームの続く開
始コードが予期したときに探し出されない場合に拡張
(escape)路を与える。ボックス188において、新しい開
始コードが、ビットストリームの通常の処理の間で予期
されたときに受信されたかどうかの決定がなされる。も
しそうであるならば、開始コード識別子がボックス190
に示されているようにデコードされ、ルーティンは、デ
コードされた開始コードIDにより命令されたパーサ状
態がセットされるボックス166(図5)に戻る。
しいシフト長だけシフトされ、バレルシフタ出力は次に
ボックス180で示されているようにデコードされる。ボ
ックス182において、パーサからデータを受信するサブ
システムのどれが、パーサの動作が一時的に保持される
ことを要求したかが判定される。たとえば、ハフマンデ
コーダ52は、コードワードを一つの係数よりも多くにデ
コードできるようにパーサを停止する必要が一時的にあ
る。このことを行うために、ブロックデータ要求信号
が、ハフマンデコーダからハンドシェーク入力のターミ
ナル96を介してビデオシンタックスパーサのデコーダ80
に伝えられる。保持が要求されるとき、ボックス184
は、レジュメコマンド(または保持コマンドの放出)が
受信された時を判定するためにその所在をモニターす
る。これが生じると、ルーティンはボックス182に戻
り、更なる保持が存在しないとき、ビットストリームの
再捕捉を要求するというエラーが発生しているかどうか
の判定がボックス186で行われる。たとえば、連続した
データが、次の開始コードを探し出すことができないよ
うに失われたとき、最初の開始コードを捕捉するために
ボックス152に戻る必要があろう。その結果、ビットス
トリームの分析のやり直しが可能となる。したがって、
ボックス186は、圧縮されたビットストリームの続く開
始コードが予期したときに探し出されない場合に拡張
(escape)路を与える。ボックス188において、新しい開
始コードが、ビットストリームの通常の処理の間で予期
されたときに受信されたかどうかの決定がなされる。も
しそうであるならば、開始コード識別子がボックス190
に示されているようにデコードされ、ルーティンは、デ
コードされた開始コードIDにより命令されたパーサ状
態がセットされるボックス166(図5)に戻る。
【0051】可変長データがビットストリームで遭遇す
る場合に、ルーティンはボックス168からブロック可変
長コードワードが存在するかどうかの判定がなされるボ
ックス192(図5)へと進む。もしそうならば、シフト長
はハフマンデコーダ52からセレクタ84へのブロックVLC
長入力だけ増加することになる。そうでなければ、マク
ロブロック可変長が存在し、シフト長はボックス194に
より示されるようにMB VLC長だけ増加する。各ブロ
ックの端部において、ハフマンデコーダ52はボックス19
8に示されているように、EOB長を加算器86に与え、その
結果シフト長はボックス200に示されているよう、ブロ
ック終端長だけ付加的に増加できる。プロセスは、開始
コードの間のデータの、各連続する部分が適正に処理さ
れ、適当なサブシステムへと通過できるようにボックス
174に戻り続ける。
る場合に、ルーティンはボックス168からブロック可変
長コードワードが存在するかどうかの判定がなされるボ
ックス192(図5)へと進む。もしそうならば、シフト長
はハフマンデコーダ52からセレクタ84へのブロックVLC
長入力だけ増加することになる。そうでなければ、マク
ロブロック可変長が存在し、シフト長はボックス194に
より示されるようにMB VLC長だけ増加する。各ブロ
ックの端部において、ハフマンデコーダ52はボックス19
8に示されているように、EOB長を加算器86に与え、その
結果シフト長はボックス200に示されているよう、ブロ
ック終端長だけ付加的に増加できる。プロセスは、開始
コードの間のデータの、各連続する部分が適正に処理さ
れ、適当なサブシステムへと通過できるようにボックス
174に戻り続ける。
【0052】本発明がたとえば、MPEG-2またはDigiCiph
er IIシンタックスから対象のフィールドを分析するた
めにシンタックスパーサを備えることが分かるであろ
う。可変長コードフィールドがVLCフィールド終端を判
定するために、VLCデコーダからのフィードバックでも
って分析される。パーサはパーサ状態バスおよびデータ
出力バスを有する。シンタックスのすべての関連ある領
域が現パーサ状態により一義的に画成され、パーサから
のデータを受信する各サブシステムがそれへの関心ある
フィールドが存在するときを容易に判定する。各サブシ
ステムは現パーサ状態をデコードし、したがってそのレ
ジスタを更新する。
er IIシンタックスから対象のフィールドを分析するた
めにシンタックスパーサを備えることが分かるであろ
う。可変長コードフィールドがVLCフィールド終端を判
定するために、VLCデコーダからのフィードバックでも
って分析される。パーサはパーサ状態バスおよびデータ
出力バスを有する。シンタックスのすべての関連ある領
域が現パーサ状態により一義的に画成され、パーサから
のデータを受信する各サブシステムがそれへの関心ある
フィールドが存在するときを容易に判定する。各サブシ
ステムは現パーサ状態をデコードし、したがってそのレ
ジスタを更新する。
【0053】特定の実施例に関連して本発明を説明して
きたが、当業者であれば、特許請求の範囲の発明の範囲
および思想から逸脱することなく種々の変形、変更を成
しうることは分かるであろう。
きたが、当業者であれば、特許請求の範囲の発明の範囲
および思想から逸脱することなく種々の変形、変更を成
しうることは分かるであろう。
【図1】本発明の従ってビデオシンタックスパーサを組
み込んだビデオ・シンタックス・プロセッサのブロック
図である。
み込んだビデオ・シンタックス・プロセッサのブロック
図である。
【図2】図1に示されたビデオ・シンタックス・パーサ
の詳細なブロック図である。
の詳細なブロック図である。
【図3】開始コートおよび分析されるべきデータを含む
圧縮されたビットストリームの線図である。
圧縮されたビットストリームの線図である。
【図4】図2に示されたビデオ・シンタックス・パーサ
のためのタイミング図である。
のためのタイミング図である。
【図5】図2に示されたビデオ・シンタックス・パーサ
の動作を示すフローチャートである。
の動作を示すフローチャートである。
【図6】図2に示されたビデオ・シンタックス・パーサ
の動作を示すフローチャートである。
の動作を示すフローチャートである。
20 ビデオデコンプレッション・プロセッサ 22 DRAM 24 アドレスライン 26 アドレスライン 30 メモリマネージャー 32 輸送シンタックスパーサ 34 捕捉およびエラー回路 36、42、44、46、48、52、54、56 サブシステム 38 ビデオ出力 40 ビデオシンタックスパーサ 50 Mバスコントローラ 58 データバス 60 JTAGコントローラ 100 開始コード 106 ビットストリーム
Claims (13)
- 【請求項1】 ビデオ・デコンプレッション・プロセッ
サにおいて、 分析されるデータを有する圧縮されたビットストリーム
を受信するための入力と、 前記圧縮されたビットストリームから前記データを分析
する手段と、 前記圧縮されたビットストリームから分析されたデータ
内に含まれる開始コードをデコードする手段と、 前記開始コードに対応して特定のパーサ状態を起こすた
めの、前記デコードする手段によりデコードされた開始
コードに応答する手段と、 前記パーサ状態を前記ビデオ・デコンプレッション・プ
ロセッサの複数のサブシステムに伝えるためのパーサ状
態出力と、 分析されたデータを前記分析する手段から前記複数のサ
ブシステムのために働くデータバスへ伝えるためのデー
タ出力と、 から成り、 前記複数のサブシステムのそれぞれは、もしあるならば
前記データバスのどの分析されたデータがサブシステム
に向けられるかを判定し、そのサブシステムが向けら
れ、分析されたデータを検索できるように、前記パーサ
状態をモニターする、 ところのビデオシンタックスパーサ。 - 【請求項2】 請求項1に記載のビデオシンタックスパ
ーサであって、 前記分析する手段は,前記圧縮されたビットストリーム
からデータを受信し,シフトするために連結されたシフ
ト手段を有し、 前記シフト手段は,前記圧縮されたビットストリームの
連続した部分を前記デコードする手段に出力するために
シフト長コマンドに応答する、ところのビデオシンタッ
クスパーサ。 - 【請求項3】 請求項2に記載のビデオシンタックスパ
ーサであって、 前記シフト手段は,バレルシフタから成る、ところのビ
デオシンタックスパーサ。 - 【請求項4】 請求項2または3に記載のビデオシンタッ
クスパーサであって、 前記圧縮されたビットストリームの前記連続した部分は
また,前記データ出力から出力される、ところのビデオ
シンタックスパーサ。 - 【請求項5】 請求項3に記載のビデオシンタックスパ
ーサであって、 前記バレルシフタは、前記バレルシフタの入力に連結さ
れた第1および第2のレジスタから前記圧縮されたビット
ストリームのデータを受信し、 前記第1のレジスタは,前記圧縮されたビットストリー
ムのデータをソースから受信するために、イネーブル信
号に応答し、 前記第2のレジスタは、前記第1のレジスタから前記圧縮
されたビットストリームのデータの連続した部分を受信
するために、前記イネーブル信号に応答し、 前記イネーブル信号は、前記シフト長コマンドが所定の
値に達したときに与えられる、ところのビデオシンタッ
クスパーサ。 - 【請求項6】 請求項5に記載のビデオシンタックスパ
ーサであって、 前記デコードする手段に与えられた前記圧縮されたビッ
トストリームのデータの前記連続した部分は,それぞれ
Nビットの長さであり、 前記第1および第2のレジスタは,それぞれNビットのレ
ジスタであり、 前記バレルシフタは,一度にNビットシフトする、とこ
ろのビデオシンタックスパーサ。 - 【請求項7】 請求項5に記載のビデオシンタックスパ
ーサであって、 前記シフト長コマンドは,累積値から得られ,前記バレ
ルシフタが分析サイクルのそれぞれで,シフトされるビ
ット数を制御するために,連続した分析サイクルの間,
フィールド長だけ増加し, 前記フィールド長は,各サイクルの間に前記パーサ状態
により命令され,前記シフト長コマンドとして使用する最下位ビット,お
よび前記イネーブル信号を与えるための上位ビットのセ
ットを与えるために,前記累積値を切って分けるための
段手が設けられる,ところのビデオシンタックスパー
サ。 - 【請求項8】 請求項7に記載のビデオシンタックスパ
ーサであって, 前記圧縮されたビットストリームが分析されるべき可変
長コードワード(VLC)および固定長のワードの両方を
含み,当該 パーサはさらに, 前記フィールド長を受信するための第1の入力,およびV
LC長を受信するための少なくとも第2の入力を含むセレ
クタ,並びに固定長ワードが前記ビットストリームから
分析されるサイクルの間に,前記累積値を増加させるべ
く,前記フィールド長を出力するために前記セレクタを
起動し,かつ可変長コードワードが前記ビットストリー
ムから分析されるサイクルの間に,前記累積値を増加さ
せるべく,VLC長を出力するために前記セレクタを起動
するための,前記パーサ状態に応答する手段, から成る,ビデオシンタックスパーサ。 - 【請求項9】 請求項8に記載のビデオシンタックスパ
ーサであって,さらに,前記 圧縮されたビットストリームから分析される可変長
データのブロックの終端でのブロック終端長およびVLC
長だけ前記累積値を同時に増加させる手段を含む,とこ
ろのビデオシンタックスパーサ。 - 【請求項10】 請求項2ないし9のいずれかに記載のビ
デオシンタックスパーサであって, 前記圧縮されたビットストリームのデータの前記連続し
た部分はまた,前記データ出力から出力される,ところ
のビデオシンタックスパーサ。 - 【請求項11】 請求項2ないし10のいずれかに記載の
ビデオシンタックスパーサであって,さらに, 前記圧縮されたビットストリームのデータをソースから
受信し,それを前記シフト手段へと通過させるための,
イネーブル信号に応答するレジスタ手段を含み, 前記イネーブル信号は,前記シフト長コマンドが所定値
に達したときに与えられる,ところのビデオシンタック
スパーサ。 - 【請求項12】 請求項11に記載のビデオシンタックス
パーサであって,さらに前記ソースと前記レジスタ手段
との間に連結されるレートフローバッファを含み, 前記レートフローバッファは,前記ソースから前記圧縮
されたビットストリームのデータの連続した部分をバッ
ファするために,前記イネーブル信号に応答する,とこ
ろのビデオシンタックスパーサ。 - 【請求項13】 請求項1ないし12のいずれかに記載の
ビデオシンタックスパーサであって,前記デコードする手段は,前記開始コードが連続した分
析サイクルの間に前記パーサ状態を更新するためにデコ
ードされた後,新しい開始コードが発生するまで,前記
ビットストリームから 分析されたデータをデコードし続
ける,ところのビデオシンタックスパーサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US329500 | 1994-10-26 | ||
US08/329,500 US5566089A (en) | 1994-10-26 | 1994-10-26 | Syntax parser for a video decompression processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08214312A JPH08214312A (ja) | 1996-08-20 |
JP2829262B2 true JP2829262B2 (ja) | 1998-11-25 |
Family
ID=23285709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7300475A Expired - Fee Related JP2829262B2 (ja) | 1994-10-26 | 1995-10-26 | ビデオ・デコンプレッション・プロセッサのためのシンタックスパーサ |
Country Status (11)
Country | Link |
---|---|
US (1) | US5566089A (ja) |
EP (1) | EP0710027B1 (ja) |
JP (1) | JP2829262B2 (ja) |
KR (1) | KR100341055B1 (ja) |
AU (1) | AU688585B2 (ja) |
CA (1) | CA2159866C (ja) |
DE (1) | DE69521102T2 (ja) |
DK (1) | DK0710027T3 (ja) |
ES (1) | ES2158024T3 (ja) |
NO (1) | NO309790B1 (ja) |
TW (1) | TW348921U (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101213754A (zh) * | 2005-05-13 | 2008-07-02 | 高通股份有限公司 | 用于改进的多媒体解码器的方法和设备 |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69229338T2 (de) | 1992-06-30 | 1999-12-16 | Discovision Associates, Irvine | Datenpipelinesystem |
US6067417A (en) | 1992-06-30 | 2000-05-23 | Discovision Associates | Picture start token |
US6047112A (en) | 1992-06-30 | 2000-04-04 | Discovision Associates | Technique for initiating processing of a data stream of encoded video information |
US5809270A (en) | 1992-06-30 | 1998-09-15 | Discovision Associates | Inverse quantizer |
US6112017A (en) | 1992-06-30 | 2000-08-29 | Discovision Associates | Pipeline processing machine having a plurality of reconfigurable processing stages interconnected by a two-wire interface bus |
US6330665B1 (en) | 1992-06-30 | 2001-12-11 | Discovision Associates | Video parser |
US6263422B1 (en) | 1992-06-30 | 2001-07-17 | Discovision Associates | Pipeline processing machine with interactive stages operable in response to tokens and system and methods relating thereto |
US5768561A (en) | 1992-06-30 | 1998-06-16 | Discovision Associates | Tokens-based adaptive video processing arrangement |
US5784631A (en) | 1992-06-30 | 1998-07-21 | Discovision Associates | Huffman decoder |
US5805914A (en) | 1993-06-24 | 1998-09-08 | Discovision Associates | Data pipeline system and data encoding method |
US5861894A (en) | 1993-06-24 | 1999-01-19 | Discovision Associates | Buffer manager |
US5878273A (en) | 1993-06-24 | 1999-03-02 | Discovision Associates | System for microprogrammable state machine in video parser disabling portion of processing stages responsive to sequence-- end token generating by token generator responsive to received data |
JP3302229B2 (ja) | 1994-09-20 | 2002-07-15 | 株式会社リコー | 符号化方法、符号化/復号方法及び復号方法 |
US6549666B1 (en) | 1994-09-21 | 2003-04-15 | Ricoh Company, Ltd | Reversible embedded wavelet system implementation |
US5881176A (en) * | 1994-09-21 | 1999-03-09 | Ricoh Corporation | Compression and decompression with wavelet style and binary style including quantization by device-dependent parser |
US6873734B1 (en) | 1994-09-21 | 2005-03-29 | Ricoh Company Ltd | Method and apparatus for compression using reversible wavelet transforms and an embedded codestream |
US5771075A (en) * | 1994-12-08 | 1998-06-23 | Lg Electronics Inc. | Audio/video synchronizer |
KR960036641A (ko) * | 1995-03-21 | 1996-10-28 | 김광호 | 저속의 비디오비트열을 복호하는 고속용 복호화장치 |
US5920572A (en) * | 1995-06-30 | 1999-07-06 | Divicom Inc. | Transport stream decoder/demultiplexer for hierarchically organized audio-video streams |
JP3450553B2 (ja) * | 1995-10-31 | 2003-09-29 | 東芝マイクロエレクトロニクス株式会社 | 可変長符号復号装置 |
KR100215439B1 (ko) * | 1996-02-08 | 1999-08-16 | 윤종용 | 고속의 데이타 구문분석 제어회로 |
US5706002A (en) * | 1996-02-21 | 1998-01-06 | David Sarnoff Research Center, Inc. | Method and apparatus for evaluating the syntax elements for DCT coefficients of a video decoder |
US5768537A (en) * | 1996-02-22 | 1998-06-16 | International Business Machines Corporation | Scalable MPEG2 compliant video encoder |
US6018369A (en) * | 1996-03-21 | 2000-01-25 | Samsung Electronics Co., Ltd. | Video decoder with closed caption data on video output |
US5801782A (en) * | 1996-03-21 | 1998-09-01 | Samsung Information Systems America | Analog video encoder with metered closed caption data on digital video input interface |
US6002441A (en) * | 1996-10-28 | 1999-12-14 | National Semiconductor Corporation | Audio/video subprocessor method and structure |
US6226291B1 (en) * | 1996-11-01 | 2001-05-01 | Texas Instruments Incorporated | Transport stream packet parser system |
US6512775B1 (en) | 1996-11-08 | 2003-01-28 | The Trustees Of Columbia University In The City Of New York | Method and apparatus for a programmable bitstream parser for audiovisual and generic decoding systems |
WO1998021889A1 (en) * | 1996-11-08 | 1998-05-22 | The Trustees Of Columbia University In The City Of New York | Methods and apparatus for a programmable bitstream parser for audiovisual and generic decoding systems |
US5920353A (en) * | 1996-12-03 | 1999-07-06 | St Microelectronics, Inc. | Multi-standard decompression and/or compression device |
US6160587A (en) * | 1997-01-16 | 2000-12-12 | Motorola, Inc. | Waveform generator for insertion of data into digital television signals |
US6735253B1 (en) | 1997-05-16 | 2004-05-11 | The Trustees Of Columbia University In The City Of New York | Methods and architecture for indexing and editing compressed video over the world wide web |
US6115422A (en) * | 1997-09-26 | 2000-09-05 | International Business Machines Corporation | Protocol and procedure for time base change in an MPEG-2 compliant datastream |
US6356567B2 (en) | 1997-09-26 | 2002-03-12 | International Business Machines Corporation | Embedded clock recovery and difference filtering for an MPEG-2 compliant transport stream |
US6078594A (en) * | 1997-09-26 | 2000-06-20 | International Business Machines Corporation | Protocol and procedure for automated channel change in an MPEG-2 compliant datastream |
US6229801B1 (en) | 1997-09-26 | 2001-05-08 | International Business Machines Corporation | Delivery of MPEG2 compliant table data |
US6072771A (en) * | 1997-09-26 | 2000-06-06 | International Business Machines Corporation | Detection of errors in table data |
US6275507B1 (en) | 1997-09-26 | 2001-08-14 | International Business Machines Corporation | Transport demultiplexor for an MPEG-2 compliant data stream |
US6181706B1 (en) | 1997-09-26 | 2001-01-30 | International Business Machines Corporation | Common buffer for multiple streams and control registers in an MPEG-2 compliant transport register |
US6088357A (en) * | 1997-09-26 | 2000-07-11 | International Business Machines Corporation | Auxiliary transport assist processor especially for an MPEG-2 compliant decoder |
US6091772A (en) * | 1997-09-26 | 2000-07-18 | International Business Machines, Corporation | Black based filtering of MPEG-2 compliant table sections |
US6195403B1 (en) | 1997-09-26 | 2001-02-27 | International Business Machines Corporation | Pulse generator for a voltage controlled oscillator |
JP3573759B2 (ja) * | 1997-10-23 | 2004-10-06 | 三菱電機株式会社 | 画像復号化装置、画像符号化装置、画像通信システム、符号化ビットストリーム変換装置及び画像復号化方法 |
KR100257191B1 (ko) * | 1997-12-31 | 2000-05-15 | 구자홍 | 움직임 벡터 디코더 |
WO1999067883A2 (en) * | 1998-06-25 | 1999-12-29 | Equator Technologies, Inc. | Processing circuit and method for variable-length coding and decoding |
US6366617B1 (en) | 1998-10-09 | 2002-04-02 | Matsushita Electric Industrial Co., Ltd. | Programmable filter for removing selected user data from an MPEG-2 bit stream |
US6215526B1 (en) * | 1998-11-06 | 2001-04-10 | Tivo, Inc. | Analog video tagging and encoding system |
US7143434B1 (en) | 1998-11-06 | 2006-11-28 | Seungyup Paek | Video description system and method |
US6414996B1 (en) | 1998-12-08 | 2002-07-02 | Stmicroelectronics, Inc. | System, method and apparatus for an instruction driven digital video processor |
JP3169009B2 (ja) * | 1999-02-17 | 2001-05-21 | 日本電気株式会社 | Mpegデコーダ、mpegシステムデコーダ及びmpegビデオデコーダ |
EP1276331A3 (en) * | 1999-04-01 | 2005-06-01 | Ravisent Technologies, Inc. | Method for preventing dual-step half-pixel motion compensation accumulation errors in prediction-rich MPEG-2 sequences |
US6567557B1 (en) | 1999-12-10 | 2003-05-20 | Stmicroelectronics, Inc. | Method for preventing dual-step half-pixel motion compensation accumulation errors in prediction-rich MPEG-2 sequences |
US7885340B2 (en) * | 1999-04-27 | 2011-02-08 | Realnetworks, Inc. | System and method for generating multiple synchronized encoded representations of media data |
MY130203A (en) * | 1999-05-06 | 2007-06-29 | Sony Corp | Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media |
EP1051041A1 (en) * | 1999-05-07 | 2000-11-08 | Deutsche Thomson-Brandt Gmbh | Method for searching start codes |
US7168069B1 (en) | 2000-07-12 | 2007-01-23 | Stmicroelectronics, Inc. | Dynamic generation of multimedia code for image processing |
US6950558B2 (en) | 2001-03-30 | 2005-09-27 | Ricoh Co., Ltd. | Method and apparatus for block sequential processing |
US6963612B2 (en) * | 2001-08-31 | 2005-11-08 | Stmicroelectronic, Inc. | System for detecting start codes in MPEG video streams and method of operating the same |
US7089541B2 (en) * | 2001-11-30 | 2006-08-08 | Sun Microsystems, Inc. | Modular parser architecture with mini parsers |
AU2002351310A1 (en) | 2001-12-06 | 2003-06-23 | The Trustees Of Columbia University In The City Of New York | System and method for extracting text captions from video and generating video summaries |
EP2403263A3 (en) * | 2002-04-26 | 2012-01-25 | Sony Corporation | Encoding device and method, decoding device and method, editing device and method, recoding medium, and program |
US20040181811A1 (en) * | 2003-03-13 | 2004-09-16 | Rakib Selim Shlomo | Thin DOCSIS in-band management for interactive HFC service delivery |
WO2005006404A2 (en) * | 2003-07-09 | 2005-01-20 | Broadlogic Network Technologies Inc. | Method and system for providing a high speed multi-stream mpeg processor |
US20050036046A1 (en) * | 2003-08-14 | 2005-02-17 | Nokia Corporation | Method of or device for processing image data, a processed image data format, and a method of or device for displaying at least one image from the processed image data |
US7606313B2 (en) * | 2004-01-15 | 2009-10-20 | Ittiam Systems (P) Ltd. | System, method, and apparatus for error concealment in coded video signals |
US8929458B2 (en) * | 2004-02-05 | 2015-01-06 | Broadcom Corporation | Compressed structure for slice groups in start code table |
CN101077006A (zh) | 2004-11-19 | 2007-11-21 | Tivo股份有限公司 | 用于先前播放内容的安全传输的方法和设备 |
WO2006096612A2 (en) | 2005-03-04 | 2006-09-14 | The Trustees Of Columbia University In The City Of New York | System and method for motion estimation and mode decision for low-complexity h.264 decoder |
US7873982B2 (en) * | 2006-06-22 | 2011-01-18 | Tivo Inc. | Method and apparatus for creating and viewing customized multimedia segments |
US7661121B2 (en) | 2006-06-22 | 2010-02-09 | Tivo, Inc. | In-band data recognition and synchronization system |
US8261300B2 (en) | 2006-06-23 | 2012-09-04 | Tivo Inc. | Method and apparatus for advertisement placement in a user dialog on a set-top box |
KR101372418B1 (ko) * | 2007-10-19 | 2014-03-12 | (주)휴맥스 | 비트스트림 디코딩 장치 및 방법 |
WO2009126785A2 (en) | 2008-04-10 | 2009-10-15 | The Trustees Of Columbia University In The City Of New York | Systems and methods for image archaeology |
WO2009155281A1 (en) | 2008-06-17 | 2009-12-23 | The Trustees Of Columbia University In The City Of New York | System and method for dynamically and interactively searching media data |
US8671069B2 (en) | 2008-12-22 | 2014-03-11 | The Trustees Of Columbia University, In The City Of New York | Rapid image annotation via brain state decoding and visual pattern mining |
US20130279882A1 (en) | 2012-04-23 | 2013-10-24 | Apple Inc. | Coding of Video and Audio with Initialization Fragments |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1240063A (en) * | 1986-02-25 | 1988-08-02 | Milan Skubnik | Digital companding circuit |
GB8722394D0 (en) * | 1987-09-23 | 1987-10-28 | British Telecomm | Video coder |
US5091782A (en) | 1990-04-09 | 1992-02-25 | General Instrument Corporation | Apparatus and method for adaptively compressing successive blocks of digital video |
US5068724A (en) | 1990-06-15 | 1991-11-26 | General Instrument Corporation | Adaptive motion compensation for digital television |
US5173695A (en) * | 1990-06-29 | 1992-12-22 | Bell Communications Research, Inc. | High-speed flexible variable-length-code decoder |
US5093720A (en) | 1990-08-20 | 1992-03-03 | General Instrument Corporation | Motion compensation for interlaced digital television signals |
US5057916A (en) | 1990-11-16 | 1991-10-15 | General Instrument Corporation | Method and apparatus for refreshing motion compensated sequential video images |
US5111292A (en) * | 1991-02-27 | 1992-05-05 | General Electric Company | Priority selection apparatus as for a video signal processor |
US5235419A (en) | 1991-10-24 | 1993-08-10 | General Instrument Corporation | Adaptive motion compensation using a plurality of motion compensators |
US5233348A (en) * | 1992-03-26 | 1993-08-03 | General Instrument Corporation | Variable length code word decoder for use in digital communication systems |
US5289276A (en) * | 1992-06-19 | 1994-02-22 | General Electric Company | Method and apparatus for conveying compressed video data over a noisy communication channel |
US5231486A (en) * | 1992-07-27 | 1993-07-27 | General Electric Company | Data separation processing in a dual channel digital high definition television system |
US5452006A (en) * | 1993-10-25 | 1995-09-19 | Lsi Logic Corporation | Two-part synchronization scheme for digital video decoders |
US5583562A (en) * | 1993-12-03 | 1996-12-10 | Scientific-Atlanta, Inc. | System and method for transmitting a plurality of digital services including imaging services |
JP3149303B2 (ja) * | 1993-12-29 | 2001-03-26 | 松下電器産業株式会社 | デジタル画像符号化方法及びデジタル画像復号化方法 |
-
1994
- 1994-10-26 US US08/329,500 patent/US5566089A/en not_active Expired - Lifetime
- 1994-12-21 TW TW086217878U patent/TW348921U/zh unknown
-
1995
- 1995-10-04 CA CA002159866A patent/CA2159866C/en not_active Expired - Fee Related
- 1995-10-13 DE DE69521102T patent/DE69521102T2/de not_active Expired - Fee Related
- 1995-10-13 ES ES95116143T patent/ES2158024T3/es not_active Expired - Lifetime
- 1995-10-13 EP EP95116143A patent/EP0710027B1/en not_active Expired - Lifetime
- 1995-10-13 DK DK95116143T patent/DK0710027T3/da active
- 1995-10-19 AU AU34355/95A patent/AU688585B2/en not_active Ceased
- 1995-10-25 NO NO954261A patent/NO309790B1/no not_active IP Right Cessation
- 1995-10-25 KR KR1019950037008A patent/KR100341055B1/ko not_active IP Right Cessation
- 1995-10-26 JP JP7300475A patent/JP2829262B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101213754A (zh) * | 2005-05-13 | 2008-07-02 | 高通股份有限公司 | 用于改进的多媒体解码器的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
DE69521102T2 (de) | 2002-01-03 |
EP0710027B1 (en) | 2001-05-30 |
US5566089A (en) | 1996-10-15 |
DE69521102D1 (de) | 2001-07-05 |
KR100341055B1 (ko) | 2002-12-05 |
NO954261L (no) | 1996-04-29 |
ES2158024T3 (es) | 2001-09-01 |
NO309790B1 (no) | 2001-03-26 |
NO954261D0 (no) | 1995-10-25 |
EP0710027A3 (en) | 1999-06-23 |
DK0710027T3 (da) | 2001-09-17 |
AU3435595A (en) | 1996-05-09 |
EP0710027A2 (en) | 1996-05-01 |
TW348921U (en) | 1998-12-21 |
AU688585B2 (en) | 1998-03-12 |
KR960016578A (ko) | 1996-05-22 |
JPH08214312A (ja) | 1996-08-20 |
CA2159866A1 (en) | 1996-04-27 |
CA2159866C (en) | 2001-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2829262B2 (ja) | ビデオ・デコンプレッション・プロセッサのためのシンタックスパーサ | |
KR100380709B1 (ko) | 디지털비디오신장프로세서및디지털비디오신장프로세서의디램을매핑하기위한방법 | |
US5517250A (en) | Acquisition of desired data from a packetized data stream and synchronization thereto | |
US5675387A (en) | Method and apparatus for efficient addressing of DRAM in a video decompression processor | |
AU691043B2 (en) | Pixel interpolation filters for video decompression processor | |
US5668599A (en) | Memory management for an MPEG2 compliant decoder | |
EP0843485B1 (en) | Video decoder with unified memory | |
US5847763A (en) | Moving picture transmission system and moving picture transmission apparatus | |
US6366617B1 (en) | Programmable filter for removing selected user data from an MPEG-2 bit stream | |
US6160847A (en) | Detection mechanism for video channel underflow in MPEG-2 video decoding | |
US6205250B1 (en) | System and method for minimizing clock cycles lost to overhead data in a video decoder | |
US20060109906A1 (en) | Methods and apparatus for dynamically adjusting f-codes for a digital picture header | |
JP2001189662A (ja) | 符号化ビデオピクチャのデータストリームのビットレートを変化させる方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |