JPH07184214A - 画像処理システム - Google Patents
画像処理システムInfo
- Publication number
- JPH07184214A JPH07184214A JP6284580A JP28458094A JPH07184214A JP H07184214 A JPH07184214 A JP H07184214A JP 6284580 A JP6284580 A JP 6284580A JP 28458094 A JP28458094 A JP 28458094A JP H07184214 A JPH07184214 A JP H07184214A
- Authority
- JP
- Japan
- Prior art keywords
- image
- memory
- data
- instruction
- block
- 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.)
- Granted
Links
Classifications
-
- 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
- H04N19/439—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 using cascaded computational arrangements for performing a single operation, e.g. filtering
-
- 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/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
- H04N19/436—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 using parallelised computational arrangements
-
- 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
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
(57)【要約】
【目的】 画像に基づき圧縮デ−タを処理するためのシ
ステムを開示する。 【構成】 このシステムには画像メモリに復号化画像デ
−タを与える復号化装置がある。この復号化装置には現
在復号化された画像の現在のブロックを復号化するた
め、予め復号化された予測ブロックが必要である。多数
の復号器は多数の画像の当該ブロックの特定スライス
と、特定スライスのブロックを復号化するのに役立つ予
測ブロックを含む少なくとも1つのマ−ジンとをそれぞ
れ記憶する画像メモリを内蔵している。
ステムを開示する。 【構成】 このシステムには画像メモリに復号化画像デ
−タを与える復号化装置がある。この復号化装置には現
在復号化された画像の現在のブロックを復号化するた
め、予め復号化された予測ブロックが必要である。多数
の復号器は多数の画像の当該ブロックの特定スライス
と、特定スライスのブロックを復号化するのに役立つ予
測ブロックを含む少なくとも1つのマ−ジンとをそれぞ
れ記憶する画像メモリを内蔵している。
Description
【0001】
【産業上の利用分野】この発明は画像処理システム、よ
り詳細にはMPEG標準に基づき符号化された画像を復
号するためのシステムに関する。
り詳細にはMPEG標準に基づき符号化された画像を復
号するためのシステムに関する。
【0002】
【従来の技術】図1はMPEG復号器の主なエレメント
を示している。特にMPEG−2標準に対する全てのM
PEG復号器には、一般に可変長復号器(VLD)1
0、ランレベル復号器(RLD)11、逆量子化回路
(Q-1)12、逆離散コサイン変換回路(DCT-1)1
3、ハーフ画素フィルタ14、およびメモリ15が含ま
れている。符号化されたデータはCDinから入り、復
号化されたデータはVIDoutから出る。入力と出力
の間で、データは断続線の矢印に示すように図示の順序
で処理回路10−13を通る。復号器の出力はフィルタ
14とコサイン変換回路13の出力を加える加算器16
に加えられる。フィルタ14にはメモリ15内に記憶さ
れ予め復号化された画像の一部が必要である。
を示している。特にMPEG−2標準に対する全てのM
PEG復号器には、一般に可変長復号器(VLD)1
0、ランレベル復号器(RLD)11、逆量子化回路
(Q-1)12、逆離散コサイン変換回路(DCT-1)1
3、ハーフ画素フィルタ14、およびメモリ15が含ま
れている。符号化されたデータはCDinから入り、復
号化されたデータはVIDoutから出る。入力と出力
の間で、データは断続線の矢印に示すように図示の順序
で処理回路10−13を通る。復号器の出力はフィルタ
14とコサイン変換回路13の出力を加える加算器16
に加えられる。フィルタ14にはメモリ15内に記憶さ
れ予め復号化された画像の一部が必要である。
【0003】図2Aは現在再形成された画像IM1の一
部に対する復号化のステップを示している。画像復号化
は一度に1マクロブロックだけ行なわれる。マクロブロ
ックは一般に1つの16×16画素の画像ブロックに対
応している。
部に対する復号化のステップを示している。画像復号化
は一度に1マクロブロックだけ行なわれる。マクロブロ
ックは一般に1つの16×16画素の画像ブロックに対
応している。
【0004】図2Bは4:2:0で示したマクロブロッ
クMBのフォーマットの例を示している。マクロブロッ
クMBには8×8画素の4つのブロックY1−Y4と、
8×8画素の2つのブロックU,Vにより形成された1
つのクロミナンスブロックとにより形成された輝度ブロ
ックを含んでいる。他のフォーマットとして色ブロック
が8×16画素のブロックを2つ含む4:2:2のフォ
ーマットがある。
クMBのフォーマットの例を示している。マクロブロッ
クMBには8×8画素の4つのブロックY1−Y4と、
8×8画素の2つのブロックU,Vにより形成された1
つのクロミナンスブロックとにより形成された輝度ブロ
ックを含んでいる。他のフォーマットとして色ブロック
が8×16画素のブロックを2つ含む4:2:2のフォ
ーマットがある。
【0005】図2Aの現在の画像IM1内で現在のマク
ロブロックMBcは復号化されるが、このマクロブロッ
クは斜線で示すように予め復号化されている。一般に、
マクロブロックMBcは予め復号化された画像IM0内
で取り出された予測マクロブロックMBpを用いて再形
成される。予測マクロブロックMBpを見つけるため、
マクロブロックMBcを復号化するのに役立つデータに
より、画像内でマクロブロックMBcの位置Pに対し予
測マクロブロックMBpの位置を定める移動補償ベクト
ルVが与えられる。
ロブロックMBcは復号化されるが、このマクロブロッ
クは斜線で示すように予め復号化されている。一般に、
マクロブロックMBcは予め復号化された画像IM0内
で取り出された予測マクロブロックMBpを用いて再形
成される。予測マクロブロックMBpを見つけるため、
マクロブロックMBcを復号化するのに役立つデータに
より、画像内でマクロブロックMBcの位置Pに対し予
測マクロブロックMBpの位置を定める移動補償ベクト
ルVが与えられる。
【0006】予測マクロブロックMBpは予め復号化さ
れた画像IM0を記憶するメモリ15内に取り出され、
更にコサイン変換回路13がマクロブロックMBcに対
応したデータを処理している間フィルタ14に加えられ
る。
れた画像IM0を記憶するメモリ15内に取り出され、
更にコサイン変換回路13がマクロブロックMBcに対
応したデータを処理している間フィルタ14に加えられ
る。
【0007】前述の復号化はいわゆる“予測”復号化で
ある。復号化されたマクロブロックも予測タイプである
と呼ばれる。MPEG標準によれば、符号化には“内
部”、“予測”、および“両方向”と呼ばれる3つのタ
イプがある。
ある。復号化されたマクロブロックも予測タイプである
と呼ばれる。MPEG標準によれば、符号化には“内
部”、“予測”、および“両方向”と呼ばれる3つのタ
イプがある。
【0008】内部マクロブロックは画像ブロックに直接
対応している、すなわち、内部マクロブロックはコサイ
ン変換回路13から出力された時予測マクロブロックと
結合されない。
対応している、すなわち、内部マクロブロックはコサイ
ン変換回路13から出力された時予測マクロブロックと
結合されない。
【0009】前述の通り、予測マクロブロックは予め復
号化された画像のマクロブロックの1つと結合され、更
に再形成される現在の画像の前に表示の順序で来る。
号化された画像のマクロブロックの1つと結合され、更
に再形成される現在の画像の前に表示の順序で来る。
【0010】両方向マクロブロックは予め復号化された
2つの画像の予測マクロブロックとそれぞれ結合され
る。これらの2つの画像は現在再形成された画像に対
し、表示の順にそれぞれ前方および後方画像である。こ
のように、符号化された画像は表示の順序とは異なって
到着する。
2つの画像の予測マクロブロックとそれぞれ結合され
る。これらの2つの画像は現在再形成された画像に対
し、表示の順にそれぞれ前方および後方画像である。こ
のように、符号化された画像は表示の順序とは異なって
到着する。
【0011】更に、予測または両方向のマクロブロック
はそれぞれ累加的または飛び越し的である。マクロブロ
ックが累加的の時、DCT-1回路により連続的にマクロ
ブロックのラインが与えられる。マクロブロックが飛び
越し的な時、DCT-1回路は最初マクロブロックの偶数
ラインを与え、次に奇数ラインを与える。更に、予測ま
たは両方向マクロブロックを復号化する役目を果たす予
測マクロブロックも累加的または飛び越し的である。予
測マクロブロックが飛び越し的である時、2つのハーフ
マクロブロックに分割される;一方のハーフマクロブロ
ックは偶数ラインに対応し、他のハーフマクロブロック
は奇数ラインに対応しており、それぞれのハーフマクロ
ブロックは予め復号化された同じ画像の異なる位置で取
り出される。
はそれぞれ累加的または飛び越し的である。マクロブロ
ックが累加的の時、DCT-1回路により連続的にマクロ
ブロックのラインが与えられる。マクロブロックが飛び
越し的な時、DCT-1回路は最初マクロブロックの偶数
ラインを与え、次に奇数ラインを与える。更に、予測ま
たは両方向マクロブロックを復号化する役目を果たす予
測マクロブロックも累加的または飛び越し的である。予
測マクロブロックが飛び越し的である時、2つのハーフ
マクロブロックに分割される;一方のハーフマクロブロ
ックは偶数ラインに対応し、他のハーフマクロブロック
は奇数ラインに対応しており、それぞれのハーフマクロ
ブロックは予め復号化された同じ画像の異なる位置で取
り出される。
【0012】画像も内部、予測または両方向タイプであ
る。内部画像には内部マクロブロックのみ含まれてい
る;予測画像には内部または予測マクロブロックが含ま
れている;更に両方向画像には内部、予測または両方向
マクロブロックが含まれている。
る。内部画像には内部マクロブロックのみ含まれてい
る;予測画像には内部または予測マクロブロックが含ま
れている;更に両方向画像には内部、予測または両方向
マクロブロックが含まれている。
【0013】種々の復号化パラメータ、特にベクトルV
およびマクロブロックのタイプを復号器の種々の回路に
与えるため、符号化されたデータの流れにはヘッダが含
まれている。これらにはいくつかのタイプのヘッダがあ
る: −画像シーケンスヘッダで、これには逆量子化回路12
に与えるための2つの量子化テーブル、すなわち一番目
はシーケンスの内部マクロブロックのためで、二番目は
予測化された両方向マクロブロックのための量子化テー
ブルがある; −画像ヘッダのグループで、復号化のために使用される
データを含まない; −画像ヘッダで、画像のタイプ(予測、内部、両方
向)、および移動補償ベクトルの使用に関する情報を含
む; −画像スライスヘッダで、誤り訂正情報を含む; −マクロブロックヘッダで、マクロブロックのタイプ、
逆量子化回路12に与えられる量子化スケール、および
移動補償ベクトルのコンポーネントを含む。飛び越しを
した両方向マクロブロックを処理する時4つまでのベク
トルが与えられる。
およびマクロブロックのタイプを復号器の種々の回路に
与えるため、符号化されたデータの流れにはヘッダが含
まれている。これらにはいくつかのタイプのヘッダがあ
る: −画像シーケンスヘッダで、これには逆量子化回路12
に与えるための2つの量子化テーブル、すなわち一番目
はシーケンスの内部マクロブロックのためで、二番目は
予測化された両方向マクロブロックのための量子化テー
ブルがある; −画像ヘッダのグループで、復号化のために使用される
データを含まない; −画像ヘッダで、画像のタイプ(予測、内部、両方
向)、および移動補償ベクトルの使用に関する情報を含
む; −画像スライスヘッダで、誤り訂正情報を含む; −マクロブロックヘッダで、マクロブロックのタイプ、
逆量子化回路12に与えられる量子化スケール、および
移動補償ベクトルのコンポーネントを含む。飛び越しを
した両方向マクロブロックを処理する時4つまでのベク
トルが与えられる。
【0014】更に、階層の高いヘッダ(画像、グルー
プ、シーケンス)には例えばオンスクリーン表示のため
のプライベートデータが含まれている。プライベートデ
ータの幾つかは復号器の外部のコンポーネントによって
も使用される。
プ、シーケンス)には例えばオンスクリーン表示のため
のプライベートデータが含まれている。プライベートデ
ータの幾つかは復号器の外部のコンポーネントによって
も使用される。
【0015】MPEG復号器の種々の処理回路は非常に
複雑で適応性のない、すなわち標準を変更することが難
しく、更にオンスクリーン表示およびプライベートデー
タを利用することが不十分なデータのフローの速い速度
を処理できるパイプライン構造でしばしば配置されてい
る。
複雑で適応性のない、すなわち標準を変更することが難
しく、更にオンスクリーン表示およびプライベートデー
タを利用することが不十分なデータのフローの速い速度
を処理できるパイプライン構造でしばしば配置されてい
る。
【0016】最も簡単で最も低廉な解決策は、マルチタ
スクプロセッサにより制御されている共通バスを通し、
種々の処理回路とメモリを結合することである。
スクプロセッサにより制御されている共通バスを通し、
種々の処理回路とメモリを結合することである。
【0017】特許申請番号第EP−A−0503956
号(C−Cube)にはバスの上でデータの転送を制御
するプロセッサと、回路10から14に対応した処理ス
テップを実施する3つのコプロセッサとを有したシステ
ムが記載されている。バスを通して転送されるタイプの
それぞれはプロセッサにより行なわれるタスクに対応し
ている。全てのタスクは同時に起こり、コプロセッサに
より発生するプロセッサの割り込みで実施される。コプ
ロセッサは処理されるデータをバスを通して交換し、プ
ロセッサにより与えられる命令をこのバスを通して受け
る。
号(C−Cube)にはバスの上でデータの転送を制御
するプロセッサと、回路10から14に対応した処理ス
テップを実施する3つのコプロセッサとを有したシステ
ムが記載されている。バスを通して転送されるタイプの
それぞれはプロセッサにより行なわれるタスクに対応し
ている。全てのタスクは同時に起こり、コプロセッサに
より発生するプロセッサの割り込みで実施される。コプ
ロセッサは処理されるデータをバスを通して交換し、プ
ロセッサにより与えられる命令をこのバスを通して受け
る。
【0018】このシステムは簡単であるが、現在必要と
する速い速度のデータフローを扱うことができない。
する速い速度のデータフローを扱うことができない。
【0019】
【課題を解決するための手段】この発明の目的は比較的
簡単な構造を有し、特に高速の画像伸長システムを提示
することである。
簡単な構造を有し、特に高速の画像伸長システムを提示
することである。
【0020】この発明の他の目的はデータフローを非常
に高速で処理するため同一の伸長システムと容易に並列
に接続できる伸長システムを提示することである。
に高速で処理するため同一の伸長システムと容易に並列
に接続できる伸長システムを提示することである。
【0021】これらの目的を達成するため、この発明で
はコンポジットアーキテクチャの復号器を提示してい
る、すなわち処理エレメントの幾つかは互いにしかも一
番目のバスを通して画像メモリに接続されており、更に
他の幾つかのエレメントはパイプラインアーキテクチャ
で接続されている。これらの他のエレメントは以下では
“パイプライン回路”と呼ぶ。二番目のバスはパイプラ
イン回路の一番目のエレメントに処理されるデータと、
システムのエレメントに所要の復号化パラメータを供給
するため与えられている。
はコンポジットアーキテクチャの復号器を提示してい
る、すなわち処理エレメントの幾つかは互いにしかも一
番目のバスを通して画像メモリに接続されており、更に
他の幾つかのエレメントはパイプラインアーキテクチャ
で接続されている。これらの他のエレメントは以下では
“パイプライン回路”と呼ぶ。二番目のバスはパイプラ
イン回路の一番目のエレメントに処理されるデータと、
システムのエレメントに所要の復号化パラメータを供給
するため与えられている。
【0022】この構造により、パイプライン回路は一番
目のバスを通りデータをメモリと交換することなく直列
にデータを処理する。更に、一番目のバスは復号化パラ
メータを伝送することがなく、これらのパラメータは二
番目のバスにより伝送される。このように、所定の復号
化ステップに対応した一番目のバスの上で行なう交換の
数は実質的に減少し、これによりシステムの性能が向上
する。システムの柔軟性はバスシステムの使用により高
い。この柔軟性はパイプライン回路に含まれるエレメン
トの選択を最適にすることにより増加する。
目のバスを通りデータをメモリと交換することなく直列
にデータを処理する。更に、一番目のバスは復号化パラ
メータを伝送することがなく、これらのパラメータは二
番目のバスにより伝送される。このように、所定の復号
化ステップに対応した一番目のバスの上で行なう交換の
数は実質的に減少し、これによりシステムの性能が向上
する。システムの柔軟性はバスシステムの使用により高
い。この柔軟性はパイプライン回路に含まれるエレメン
トの選択を最適にすることにより増加する。
【0023】この発明はより詳細には画像ブロックに対
応したパケットにより到着する圧縮データを処理するシ
ステムを取り扱っており、これらのパケットはパケット
の復号化パラメータを含むヘッダにより分離されてい
る。このシステムには前記の復号化パラメータを用いた
多数の処理エレメントと、メモリバスがあり、このメモ
リバスはエレメントの処理速度に適合した速度で処理エ
レメント間においてデータを交換するためと、処理また
は再使用されるデータを画像メモリ内で記憶するための
メモリコントローラにより制御されている。このシステ
ムにはパケットを直列に処理するため接続されている多
数の処理エレメントを含んだパイプライン回路とパラメ
ータバスがあるが、このパラメータバスはシステムのエ
レメントに復号化パラメータを与え、パイプライン回路
に処理されるパケットを与えるためにある。パラメータ
バスはメモリバスから圧縮データを受け、更にメモリバ
スからパケットと復号化パラメータを取り出すマスタ処
理エレメントにより制御されている。
応したパケットにより到着する圧縮データを処理するシ
ステムを取り扱っており、これらのパケットはパケット
の復号化パラメータを含むヘッダにより分離されてい
る。このシステムには前記の復号化パラメータを用いた
多数の処理エレメントと、メモリバスがあり、このメモ
リバスはエレメントの処理速度に適合した速度で処理エ
レメント間においてデータを交換するためと、処理また
は再使用されるデータを画像メモリ内で記憶するための
メモリコントローラにより制御されている。このシステ
ムにはパケットを直列に処理するため接続されている多
数の処理エレメントを含んだパイプライン回路とパラメ
ータバスがあるが、このパラメータバスはシステムのエ
レメントに復号化パラメータを与え、パイプライン回路
に処理されるパケットを与えるためにある。パラメータ
バスはメモリバスから圧縮データを受け、更にメモリバ
スからパケットと復号化パラメータを取り出すマスタ処
理エレメントにより制御されている。
【0024】この発明の実施態様によれば、圧縮データ
の各パケットの前にはブロックヘッダがあり、更にパケ
ットは連続したグループで到着するが、パケットの各グ
ループの前にはグループヘッダがあり、このグループヘ
ッダにはプライベート、オンスクリーン表示情報とグル
ープ復号化パラメータが多分含まれている。システムに
はグループ復号化パラメータと、プライベートおよびオ
ンスクリーン表示情報をシステムエレメントに与えるた
めマイクロプロセッサにより制御されているプロセッサ
バスと;プロセッサバスによりアクセス可能でメモリバ
スを通し圧縮データを受けるバッファメモリと;マイク
ロプロセッサに割り込みを生ずるためにこのバッファメ
モリと協調的なグループヘッダ検出器とがある。
の各パケットの前にはブロックヘッダがあり、更にパケ
ットは連続したグループで到着するが、パケットの各グ
ループの前にはグループヘッダがあり、このグループヘ
ッダにはプライベート、オンスクリーン表示情報とグル
ープ復号化パラメータが多分含まれている。システムに
はグループ復号化パラメータと、プライベートおよびオ
ンスクリーン表示情報をシステムエレメントに与えるた
めマイクロプロセッサにより制御されているプロセッサ
バスと;プロセッサバスによりアクセス可能でメモリバ
スを通し圧縮データを受けるバッファメモリと;マイク
ロプロセッサに割り込みを生ずるためにこのバッファメ
モリと協調的なグループヘッダ検出器とがある。
【0025】この発明の実施態様によれば、メモリバス
に接続された2つのエレメントの間でのデータの転送は
2つのエレメントの一方がデータを与えまたは受けるた
めリクエストを発生する時初期化または継続される特定
なタスクに対応しており、全ての可能性のあるタスクは
タスクプライオリティマネジメントに基づきメモリコン
トローラにより実施されているマルチタスクである。
に接続された2つのエレメントの間でのデータの転送は
2つのエレメントの一方がデータを与えまたは受けるた
めリクエストを発生する時初期化または継続される特定
なタスクに対応しており、全ての可能性のあるタスクは
タスクプライオリティマネジメントに基づきメモリコン
トローラにより実施されているマルチタスクである。
【0026】この発明の実施態様によれば、画像メモリ
とデータを交換するエレメントは書き込みまたは読み出
し専用バッファメモリを通してメモリバスに接続されて
いる。書き込み専用バッファメモリは関連エレメントに
より空にされ、内容が下限に達する時メモリバスを通し
てデータを受けるためリクエストを発生する。読み出し
専用バッファメモリは関連エレメントにより満たされ、
内容が上限に達する時メモリバス上にデータを与えるリ
クエストを発生する。
とデータを交換するエレメントは書き込みまたは読み出
し専用バッファメモリを通してメモリバスに接続されて
いる。書き込み専用バッファメモリは関連エレメントに
より空にされ、内容が下限に達する時メモリバスを通し
てデータを受けるためリクエストを発生する。読み出し
専用バッファメモリは関連エレメントにより満たされ、
内容が上限に達する時メモリバス上にデータを与えるリ
クエストを発生する。
【0027】この発明の実施態様によれば、このシステ
ムには前記のマスタ処理エレメントを形成する可変長復
号器(VLD)と;パイプライン回路の一番目のエレメ
ントを形成しパラメータバスを通しVLDにより処理さ
れるパケットを受けるランレベル復号器(RLD)と;
パイプライン回路の二番目のエレメントを形成しパラメ
ータバスを通し量子化スケールの係数を受ける逆量子化
回路と;パイプライン回路の三番目のエレメントを形成
する逆コサイン変換回路と;パラメータバスを通し移動
補償ベクトルを受けるメモリコントローラと;パラメー
タバスを通しブロックタイプを受けるフィルタとを含ん
でおり、このフィルタはメモリコントローラが受けるベ
クトルの関数としてメモリバスの上に与えられる当該デ
ータを受けるためブロックのタイプに基づき異なるリク
エストを発生しているが、このシステムには更に、フィ
ルタの出力とコサイン変換回路の出力の和をメモリバス
に与える加算器とがある。
ムには前記のマスタ処理エレメントを形成する可変長復
号器(VLD)と;パイプライン回路の一番目のエレメ
ントを形成しパラメータバスを通しVLDにより処理さ
れるパケットを受けるランレベル復号器(RLD)と;
パイプライン回路の二番目のエレメントを形成しパラメ
ータバスを通し量子化スケールの係数を受ける逆量子化
回路と;パイプライン回路の三番目のエレメントを形成
する逆コサイン変換回路と;パラメータバスを通し移動
補償ベクトルを受けるメモリコントローラと;パラメー
タバスを通しブロックタイプを受けるフィルタとを含ん
でおり、このフィルタはメモリコントローラが受けるベ
クトルの関数としてメモリバスの上に与えられる当該デ
ータを受けるためブロックのタイプに基づき異なるリク
エストを発生しているが、このシステムには更に、フィ
ルタの出力とコサイン変換回路の出力の和をメモリバス
に与える加算器とがある。
【0028】この発明の実施態様によれば、グループヘ
ッダ検出器は関連バッファメモリが画像シーケンスヘッ
ダまたは画像ヘッダを含む時マイクロプロセッサに割り
込みを生ずるが、このマイクロプロセッサはグループヘ
ッダ検出器に関連したバッファメモリ内でマイクロプロ
セッサが逆量子化回路に与える量子化テーブルと、画像
のタイプおよびマイクロプロセッサがVLDに与える移
動補償ベクトルの大きさに関する情報と、メモリバスを
通し復号化データを受ける表示コントローラにマイクロ
プロセッサが与える表示の構成に関する情報とを読み出
すことにより割り込みに応答する様にプログラムされて
いる。
ッダ検出器は関連バッファメモリが画像シーケンスヘッ
ダまたは画像ヘッダを含む時マイクロプロセッサに割り
込みを生ずるが、このマイクロプロセッサはグループヘ
ッダ検出器に関連したバッファメモリ内でマイクロプロ
セッサが逆量子化回路に与える量子化テーブルと、画像
のタイプおよびマイクロプロセッサがVLDに与える移
動補償ベクトルの大きさに関する情報と、メモリバスを
通し復号化データを受ける表示コントローラにマイクロ
プロセッサが与える表示の構成に関する情報とを読み出
すことにより割り込みに応答する様にプログラムされて
いる。
【0029】この発明の実施態様によれば、メモリコン
トローラには(メモリバスに独立な)命令メモリが含ま
れており、このメモリ内にメモリバスの上でタスクを転
送することに対応したプログラムに命令が記憶されてい
るが、更にこのメモリコントローラには次のものが含ま
れている;実行される連続した命令を受けるため命令メ
モリに接続され、更にこれらの命令に応答してメモリバ
ス上で行動するように接続されたコマンド処理ユニット
(ALU);可能性のあるタスクに関連を有し、更に関
連のあるタスクを実行する現在の命令アドレスをそれぞ
れ含んでいる多数の命令ポインタで、これらのポインタ
の1つのみが命令メモリに命令アドレスとしてその内容
を一度に与えることができる;所定のプライオリティレ
ベルを各リクエストに割り当て、更に一番高いプライオ
リティレベルを有したアクティブリクエストと関連のあ
る命令ポインタをイネーブルにするプライオリティ復号
器;イネーブルにされた命令ポインタの内容を増加し、
更にその内容が関連のあるプログラムの最終アドレスに
達した時関連プログラムのスタートのアドレスで再初期
化するための手段。
トローラには(メモリバスに独立な)命令メモリが含ま
れており、このメモリ内にメモリバスの上でタスクを転
送することに対応したプログラムに命令が記憶されてい
るが、更にこのメモリコントローラには次のものが含ま
れている;実行される連続した命令を受けるため命令メ
モリに接続され、更にこれらの命令に応答してメモリバ
ス上で行動するように接続されたコマンド処理ユニット
(ALU);可能性のあるタスクに関連を有し、更に関
連のあるタスクを実行する現在の命令アドレスをそれぞ
れ含んでいる多数の命令ポインタで、これらのポインタ
の1つのみが命令メモリに命令アドレスとしてその内容
を一度に与えることができる;所定のプライオリティレ
ベルを各リクエストに割り当て、更に一番高いプライオ
リティレベルを有したアクティブリクエストと関連のあ
る命令ポインタをイネーブルにするプライオリティ復号
器;イネーブルにされた命令ポインタの内容を増加し、
更にその内容が関連のあるプログラムの最終アドレスに
達した時関連プログラムのスタートのアドレスで再初期
化するための手段。
【0030】この発明の実施態様によれば、各命令には
処理ユニット(ALU)に加えられるコマンドフィール
ドとプリフィックス復号器に加えられるフィーチャフィ
ールドとが含まれており、このプリフィックス復号器に
は現在の命令のフィーチャフィールドが一番目の所定の
値にあればプライオリティ復号器により新しい命令ポイ
ンタのイネーブルを許可する手段と、現在の命令のフィ
ーチャフィールドが二番目の所定の値にあればイネーブ
ルされた命令ポインタの内容を現在のプログラムのスタ
ートアドレスに初期化する手段がある。
処理ユニット(ALU)に加えられるコマンドフィール
ドとプリフィックス復号器に加えられるフィーチャフィ
ールドとが含まれており、このプリフィックス復号器に
は現在の命令のフィーチャフィールドが一番目の所定の
値にあればプライオリティ復号器により新しい命令ポイ
ンタのイネーブルを許可する手段と、現在の命令のフィ
ーチャフィールドが二番目の所定の値にあればイネーブ
ルされた命令ポインタの内容を現在のプログラムのスタ
ートアドレスに初期化する手段がある。
【0031】この発明の実施態様によれば、プリフィッ
クス復号器にはフィーチャフィールドが三番目の所定の
値にあればイネーブルされた命令ポインタの増加を禁止
する手段があり、現在の命令は数回連続して実行される
が、この実行の回数はこの三番目の値により決められて
いる。
クス復号器にはフィーチャフィールドが三番目の所定の
値にあればイネーブルされた命令ポインタの増加を禁止
する手段があり、現在の命令は数回連続して実行される
が、この実行の回数はこの三番目の値により決められて
いる。
【0032】この発明の実施態様によれば、各命令には
コントロール処理ユニット(ALU)に加えられるコマ
ンドフィールドと、命令が実行される時メモリバスに接
続される少なくとも1つのバッファメモリをイネーブル
にする手段に与えられるアクノレッジフィールドとがあ
る。
コントロール処理ユニット(ALU)に加えられるコマ
ンドフィールドと、命令が実行される時メモリバスに接
続される少なくとも1つのバッファメモリをイネーブル
にする手段に与えられるアクノレッジフィールドとがあ
る。
【0033】この発明の実施態様によれば、処理ユニッ
ト(ALU)にはアドレスを計算するための多数のハー
ドワイヤ機能が含まれており、各機能は実行される読み
出しまたは書き込み命令のフィールドにより選択されて
いる。
ト(ALU)にはアドレスを計算するための多数のハー
ドワイヤ機能が含まれており、各機能は実行される読み
出しまたは書き込み命令のフィールドにより選択されて
いる。
【0034】この発明の実施態様によれば、各ハードワ
イヤ機能はメモリバスに接続されたアドレスレジスタと
関連がある;ハードワイヤ機能は命令が処理ユニット
(ALU)内で実行される毎にアドレスレジスタの内容
を適当に修正する。
イヤ機能はメモリバスに接続されたアドレスレジスタと
関連がある;ハードワイヤ機能は命令が処理ユニット
(ALU)内で実行される毎にアドレスレジスタの内容
を適当に修正する。
【0035】この発明は更に画像に対応した圧縮データ
を処理するシステムを取り扱っており、このシステムに
は復号化された画像データを画像メモリに与える復号化
手段があるが、これらの手段には再構成される画像の現
在のブロックを復号するため、予め復号化された画像の
予測ブロックが必要である。実際には、この処理システ
ムには画像メモリに関連のある多数の復号器があり、そ
れぞれの復号器は多数の画像の当該ブロックの特定スラ
イスを記憶しており、更に特定スライスのブロックを再
形成するために使用される予測ブロックになる少なくと
も1つのマージンがある。
を処理するシステムを取り扱っており、このシステムに
は復号化された画像データを画像メモリに与える復号化
手段があるが、これらの手段には再構成される画像の現
在のブロックを復号するため、予め復号化された画像の
予測ブロックが必要である。実際には、この処理システ
ムには画像メモリに関連のある多数の復号器があり、そ
れぞれの復号器は多数の画像の当該ブロックの特定スラ
イスを記憶しており、更に特定スライスのブロックを再
形成するために使用される予測ブロックになる少なくと
も1つのマージンがある。
【0036】この発明の実施態様によれば、対象とする
復号器のそれぞれには画像メモリ内でマージンとして少
なくとも1つの追加された特定スライスの境界領域を記
憶し、更に少なくとも1つの二番目の復号器にマージン
として対象とする復号器と関連のある特定スライスの境
界領域を与える手段がある。
復号器のそれぞれには画像メモリ内でマージンとして少
なくとも1つの追加された特定スライスの境界領域を記
憶し、更に少なくとも1つの二番目の復号器にマージン
として対象とする復号器と関連のある特定スライスの境
界領域を与える手段がある。
【0037】この発明の実施態様によれば、対象とする
復号器のそれぞれには次のものが含まれている;特定ス
ライスから画像ブロックを受ける一番目のバッファメモ
リ;他の特定スライスの隣接領域から画像ブロックを受
ける少なくとも1つの二番目のバッファメモリ;対象と
する復号器の一番目のバッファメモリと他の復号器の二
番目のバッファメモリに特定スライスのブロックを与え
るターミナル処理回路;一番目のバッファメモリ内でブ
ロックを読み出し、特定スライスに対応したアドレスで
画像メモリ内にブロックを書き込み、二番目のバッファ
メモリ内でブロックを読み出し、更にマージンに対応し
たアドレスでブロックを書き込むためのメモリコントロ
ーラ。
復号器のそれぞれには次のものが含まれている;特定ス
ライスから画像ブロックを受ける一番目のバッファメモ
リ;他の特定スライスの隣接領域から画像ブロックを受
ける少なくとも1つの二番目のバッファメモリ;対象と
する復号器の一番目のバッファメモリと他の復号器の二
番目のバッファメモリに特定スライスのブロックを与え
るターミナル処理回路;一番目のバッファメモリ内でブ
ロックを読み出し、特定スライスに対応したアドレスで
画像メモリ内にブロックを書き込み、二番目のバッファ
メモリ内でブロックを読み出し、更にマージンに対応し
たアドレスでブロックを書き込むためのメモリコントロ
ーラ。
【0038】この発明の実施態様によれば、二番目のバ
ッファメモリのそれぞれの前には所要マージンに対応し
たデータのみ二番目のバッファメモリに記憶するための
バリア回路がある。
ッファメモリのそれぞれの前には所要マージンに対応し
たデータのみ二番目のバッファメモリに記憶するための
バリア回路がある。
【0039】この発明の実施態様によれば、処理される
画像は同じ高さの水平スライスに分割された高精細テレ
ビジョン画像である。
画像は同じ高さの水平スライスに分割された高精細テレ
ビジョン画像である。
【0040】
−MPEG復号器の一般的なアーキテクチャ− 図3において、図1に既に示したエレメントは同じ参照
番号で示している。
番号で示している。
【0041】以下ではメモリバスMBUSと示すバスに
より画像メモリ15は圧縮データ入力バスCDinと、
可変長復号器(VLD)10の入力と、ハーフ画素フィ
ルタ14の入力と、表示コントローラ18の入力に連結
されている。バスCDin、復号器10と表示コントロ
ーラ18はそれぞれバッファメモリ(FIFO)20,
21,22を通ってメモリバスMBUSに接続されてい
る。ハーフ画素フィルタ14にはメモリバスMBUSに
接続された2つの内部FIFOが含まれている。メモリ
バスMBUS上での交換はFIFOのリクエストにより
FIFOと画像メモリの転送動作を行なう役目をするメ
モリコントローラ(MCU)24により制御されてい
る。この目的を達成するため、メモリコントローラ24
は多数のリクエストRQを受け当該アクノレッジACK
を出す。メモリコントローラ24は前述の特許申請番号
第EP−A−0503956号に記載のものと同じであ
る。このメモリコントローラのより好都合な実施態様を
以下に記載する。
より画像メモリ15は圧縮データ入力バスCDinと、
可変長復号器(VLD)10の入力と、ハーフ画素フィ
ルタ14の入力と、表示コントローラ18の入力に連結
されている。バスCDin、復号器10と表示コントロ
ーラ18はそれぞれバッファメモリ(FIFO)20,
21,22を通ってメモリバスMBUSに接続されてい
る。ハーフ画素フィルタ14にはメモリバスMBUSに
接続された2つの内部FIFOが含まれている。メモリ
バスMBUS上での交換はFIFOのリクエストにより
FIFOと画像メモリの転送動作を行なう役目をするメ
モリコントローラ(MCU)24により制御されてい
る。この目的を達成するため、メモリコントローラ24
は多数のリクエストRQを受け当該アクノレッジACK
を出す。メモリコントローラ24は前述の特許申請番号
第EP−A−0503956号に記載のものと同じであ
る。このメモリコントローラのより好都合な実施態様を
以下に記載する。
【0042】この発明によれば、ランレベル復号器(R
LD)11、逆量子化回路(Q-1)12、および逆離散
コサイン変換回路(DCT-1)13はパイプラインアー
キテクチャに従い接続されている、すなわちこれらの回
路11から13はメモリ(15)を通して一時的に通過
するデータがなくても連続的にデータを処理し復号化す
る。回路11から13の組は以下ではパイプライン回路
と呼ぶ。ハーフ画素フィルタ14の出力はメモリコント
ローラ24により制御されているFIFO26を通しバ
スMBUSに接続されている加算器16によりDCT-1
回路13の出力に加えられる。ハンドシェイクラインH
S1とHS2により加算器16はそれぞれVLD回路と
DCT-1回路に連結されている。
LD)11、逆量子化回路(Q-1)12、および逆離散
コサイン変換回路(DCT-1)13はパイプラインアー
キテクチャに従い接続されている、すなわちこれらの回
路11から13はメモリ(15)を通して一時的に通過
するデータがなくても連続的にデータを処理し復号化す
る。回路11から13の組は以下ではパイプライン回路
と呼ぶ。ハーフ画素フィルタ14の出力はメモリコント
ローラ24により制御されているFIFO26を通しバ
スMBUSに接続されている加算器16によりDCT-1
回路13の出力に加えられる。ハンドシェイクラインH
S1とHS2により加算器16はそれぞれVLD回路と
DCT-1回路に連結されている。
【0043】この発明の内容によれば、VLD回路10
はバスVLDBUSを制御するが、このバスVLDBU
Sはパイプライン回路11−13により処理されるデー
タをRLD回路11に、更にパラメータをハーフ画素フ
ィルタ14と、逆量子化回路12と、表示コントローラ
18と、メモリコントローラ24に与えるようにされて
いる。VLD回路は一般に圧縮データのヘッダを復号す
る。前述の様に、これらのヘッダにはシステムの種々の
エレメントに与えられる復号化パラメータが含まれてい
る。
はバスVLDBUSを制御するが、このバスVLDBU
Sはパイプライン回路11−13により処理されるデー
タをRLD回路11に、更にパラメータをハーフ画素フ
ィルタ14と、逆量子化回路12と、表示コントローラ
18と、メモリコントローラ24に与えるようにされて
いる。VLD回路は一般に圧縮データのヘッダを復号す
る。前述の様に、これらのヘッダにはシステムの種々の
エレメントに与えられる復号化パラメータが含まれてい
る。
【0044】マクロブロックヘッダには逆量子化回路1
2、マクロブロックパラメータ、および移動補償ベクト
ルのコンポーネントに与えられる量子化スケールが含ま
れている。これらの復号化パラメータはVLD回路によ
り復号化され、更に逆量子化回路12、ハーフ画素フィ
ルタ14およびメモリコントローラ24の特定レジスタ
内にそれぞれ書き込まれる。
2、マクロブロックパラメータ、および移動補償ベクト
ルのコンポーネントに与えられる量子化スケールが含ま
れている。これらの復号化パラメータはVLD回路によ
り復号化され、更に逆量子化回路12、ハーフ画素フィ
ルタ14およびメモリコントローラ24の特定レジスタ
内にそれぞれ書き込まれる。
【0045】画像ヘッダには前述の様に画像タイプのパ
ラメータおよび移動補償ベクトルの使用に関する情報が
含まれている。これらのパラメータはマクロブロックの
ベクトルおよびデータを復号するためVLD回路により
使用される。
ラメータおよび移動補償ベクトルの使用に関する情報が
含まれている。これらのパラメータはマクロブロックの
ベクトルおよびデータを復号するためVLD回路により
使用される。
【0046】シーケンスヘッダにはVLD回路により取
り出され、逆量子化回路12の2つのレジスタに加えら
れる2つの量子化テーブルが含まれている。画像ヘッダ
には表示された画像の上にスケーリングまたは切り捨て
パラメータが入っているが、これはVLD回路により復
号化され表示コントローラ18に加えられている。
り出され、逆量子化回路12の2つのレジスタに加えら
れる2つの量子化テーブルが含まれている。画像ヘッダ
には表示された画像の上にスケーリングまたは切り捨て
パラメータが入っているが、これはVLD回路により復
号化され表示コントローラ18に加えられている。
【0047】VLD回路はヘッダを復号する時バスVL
DBUSの上で書き込み動作を実行する。バスVLDB
USの上でのVLD回路の書き込み動作はRLD回路1
1が処理されるデータをもはや受けない時、RLD回路
11により割り込みが行なわれる。これはハンドシェイ
ク接続HS3により表される。
DBUSの上で書き込み動作を実行する。バスVLDB
USの上でのVLD回路の書き込み動作はRLD回路1
1が処理されるデータをもはや受けない時、RLD回路
11により割り込みが行なわれる。これはハンドシェイ
ク接続HS3により表される。
【0048】シーケンス28はVLD回路のイネーブル
信号ENを与える。シーケンス28は表示コントローラ
18を通し表示(水平、垂直)同期信号H/VSYNC
と、ハーフ画素フィルタ14からマクロブロック同期信
号MBSと、VLD回路10から画像信号の終わりEO
Pとを受ける。シーケンス28はメモリコントローラ2
4に画像同期信号ISYNCを与えるが、この同期信号
は画像信号の終わりEOPと垂直同期信号VSYNCの
両方がアクティブの時アクティブである。シーケンス2
8の役割は後ほど理解できる。
信号ENを与える。シーケンス28は表示コントローラ
18を通し表示(水平、垂直)同期信号H/VSYNC
と、ハーフ画素フィルタ14からマクロブロック同期信
号MBSと、VLD回路10から画像信号の終わりEO
Pとを受ける。シーケンス28はメモリコントローラ2
4に画像同期信号ISYNCを与えるが、この同期信号
は画像信号の終わりEOPと垂直同期信号VSYNCの
両方がアクティブの時アクティブである。シーケンス2
8の役割は後ほど理解できる。
【0049】前に示したように、画像を再形成するため
予め復号化された2つの画像の画像部分を使用すること
がしばしば必要である。これを行なうため、メモリ15
には再形成された現在の画像と2つの予め復号化された
画像を記憶するための3つの画像領域IM1、IM2お
よびIM3を含む必要がある。メモリ15には更に処理
される前にバスCDinに到着する圧縮データを一時的
に記憶するための領域CDが含まれている。
予め復号化された2つの画像の画像部分を使用すること
がしばしば必要である。これを行なうため、メモリ15
には再形成された現在の画像と2つの予め復号化された
画像を記憶するための3つの画像領域IM1、IM2お
よびIM3を含む必要がある。メモリ15には更に処理
される前にバスCDinに到着する圧縮データを一時的
に記憶するための領域CDが含まれている。
【0050】−画像メモリ領域の制御− メモリ領域IM1−IM3においてメモリコントローラ
24が書き込みを行なう必要があることを知るため、メ
モリコントローラはVLD回路により与えられる4つの
画像ポインタImPtを使用している。VLD回路には
画像ヘッダにより与えられる画像のタイプのパラメータ
から画像ポインタを計算するユニットが含まれている。
以下では、画像の連続の例と画像ポインタを計算する方
法について記載する。
24が書き込みを行なう必要があることを知るため、メ
モリコントローラはVLD回路により与えられる4つの
画像ポインタImPtを使用している。VLD回路には
画像ヘッダにより与えられる画像のタイプのパラメータ
から画像ポインタを計算するユニットが含まれている。
以下では、画像の連続の例と画像ポインタを計算する方
法について記載する。
【0051】バスCDinの上に到着する圧縮画像の次
の連続を検討する: I0,P1,B2,B3,P4,B5,B6 ここに文字I、PおよびBはそれぞれ内部画像、予測画
像および両方向画像を示している。MPEG標準によれ
ば、両方向画像は他の画像の計算に使用することができ
ない。このように、画像P1の再形成には画像P0が必
要であり、画像B2とB3の再形成には画像I0とP1
が必要であり、更に画像B5とB6の再形成には画像P
4とP1が必要である。
の連続を検討する: I0,P1,B2,B3,P4,B5,B6 ここに文字I、PおよびBはそれぞれ内部画像、予測画
像および両方向画像を示している。MPEG標準によれ
ば、両方向画像は他の画像の計算に使用することができ
ない。このように、画像P1の再形成には画像P0が必
要であり、画像B2とB3の再形成には画像I0とP1
が必要であり、更に画像B5とB6の再形成には画像P
4とP1が必要である。
【0052】これらの画像は次の順序で表示される: I0,B2,B3,P1,B5,P4,B6 予測画像Pは表示の順序で前の画像から再形成され、更
に両方向画像Bは一方は前で他方は表示の順序の後の2
つの画像から再形成されるからである。
に両方向画像Bは一方は前で他方は表示の順序の後の2
つの画像から再形成されるからである。
【0053】メモリコントローラ24が必ずアクセスす
るメモリ領域IM1−IM3を決定するため、4つの画
像ポインタRP,FP,BPおよびDPが使用される
が、これらはそれぞれ現在再形成された画像の位置、前
の画像の位置、後の画像の位置、および現在表示された
画像の位置を示している。次の表は前述の連続を復号化
する間の画像ポインタの値を要約している。
るメモリ領域IM1−IM3を決定するため、4つの画
像ポインタRP,FP,BPおよびDPが使用される
が、これらはそれぞれ現在再形成された画像の位置、前
の画像の位置、後の画像の位置、および現在表示された
画像の位置を示している。次の表は前述の連続を復号化
する間の画像ポインタの値を要約している。
【0054】
【表1】
【0055】一番目の画像I0が復号化される時、画像
はまだ表示されていない。再形成画像ポインタRPは画
像I0を記憶するため、例えば領域IM1であり空の領
域を示している。
はまだ表示されていない。再形成画像ポインタRPは画
像I0を記憶するため、例えば領域IM1であり空の領
域を示している。
【0056】画像P1が復号化される時、画像I0が必
ず表示される。再形成画像ポインタRPは例えば領域I
M2を示しており、表示された画像ポインタDPは画像
I0が位置する領域IM1を示している。予測画像P1
には再形成時に前方の画像I0が必要なので、前方の画
像ポインタFPも領域IM1を示している。
ず表示される。再形成画像ポインタRPは例えば領域I
M2を示しており、表示された画像ポインタDPは画像
I0が位置する領域IM1を示している。予測画像P1
には再形成時に前方の画像I0が必要なので、前方の画
像ポインタFPも領域IM1を示している。
【0057】両方向画像B2が復号化される時、この画
像B2も表示される画像である。再形成された画像ポイ
ンタRPと表示された画像DPは両方ともまだフリーな
領域IM3を示している。復号化の時、画像B2には前
方の画像I0と後方の画像P1が必要である;前方の画
像ポインタFPと後方の画像ポインタBPはそれぞれ領
域IM1とIM2を示している。
像B2も表示される画像である。再形成された画像ポイ
ンタRPと表示された画像DPは両方ともまだフリーな
領域IM3を示している。復号化の時、画像B2には前
方の画像I0と後方の画像P1が必要である;前方の画
像ポインタFPと後方の画像ポインタBPはそれぞれ領
域IM1とIM2を示している。
【0058】復号されるように画像を表示するため、有
効な表示は一般にほぼ1/2画像だけ遅延される;領域
IM3は画像B2が表示を開始する時十分に満たされ
る。
効な表示は一般にほぼ1/2画像だけ遅延される;領域
IM3は画像B2が表示を開始する時十分に満たされ
る。
【0059】画像B3が復号される時、画像B3は表示
される画像でもある。画像B3にも復号時に画像I0と
P1が必要であるので、画像I0とP1は前方画像FP
と後方画像BPポインタによりまだ示されている領域I
M1とIM2の中に記憶されている。画像B3は領域I
M3の中に記憶され、これは再形成された画像RPと表
示された画像DPのポインタにより示されている。
される画像でもある。画像B3にも復号時に画像I0と
P1が必要であるので、画像I0とP1は前方画像FP
と後方画像BPポインタによりまだ示されている領域I
M1とIM2の中に記憶されている。画像B3は領域I
M3の中に記憶され、これは再形成された画像RPと表
示された画像DPのポインタにより示されている。
【0060】しかし、画像B3が領域IM3内で再形成
され始めると領域IM3内に記憶される画像B2は表示
される。表示された画像B2が再形成された画像B3に
より重ね書きされるならば、画像B3のデータを与える
VLD回路は停止する。前述のシーケンス28の役目は
復号化されたマクロブロックの数が表示される画像部分
より大きければ、イネーブル信号ENをデセーブルにす
ることによりVLD回路を停止することである。この部
分の大きさは水平同期パルスHSYNCの数を計算する
ことにより決定され、更に復号化されたマクロブロック
の数はマクロブロック同期パルスMBSの数を計算する
ことにより決定される。
され始めると領域IM3内に記憶される画像B2は表示
される。表示された画像B2が再形成された画像B3に
より重ね書きされるならば、画像B3のデータを与える
VLD回路は停止する。前述のシーケンス28の役目は
復号化されたマクロブロックの数が表示される画像部分
より大きければ、イネーブル信号ENをデセーブルにす
ることによりVLD回路を停止することである。この部
分の大きさは水平同期パルスHSYNCの数を計算する
ことにより決定され、更に復号化されたマクロブロック
の数はマクロブロック同期パルスMBSの数を計算する
ことにより決定される。
【0061】画像P4が復号化される時、画像P1は必
ず表示される。画像P4はフリーである領域IM1内で
記憶される;再形成される画像ポインタRPは領域IM
1を示している;表示される画像ポインタDPは画像P
1が記憶される領域IM2を示している。画像P4には
復号化の時前方画像P1が必要である;前方画像ポイン
タは領域IM2を示している。
ず表示される。画像P4はフリーである領域IM1内で
記憶される;再形成される画像ポインタRPは領域IM
1を示している;表示される画像ポインタDPは画像P
1が記憶される領域IM2を示している。画像P4には
復号化の時前方画像P1が必要である;前方画像ポイン
タは領域IM2を示している。
【0062】画像B5が復号化される時、この画像も必
ず表示される。画像B5はフリーである領域IM3内に
記憶される;再形成された画像RPと表示された画像D
Pのポインタは領域IM3を示している。画像B5には
予め復号化された前方画像P1と後方画像P4が必要で
ある;前方画像FPと後方画像BPのポインタはそれぞ
れ領域IM2とIM1を示している、等々。
ず表示される。画像B5はフリーである領域IM3内に
記憶される;再形成された画像RPと表示された画像D
Pのポインタは領域IM3を示している。画像B5には
予め復号化された前方画像P1と後方画像P4が必要で
ある;前方画像FPと後方画像BPのポインタはそれぞ
れ領域IM2とIM1を示している、等々。
【0063】−MPEG復号器の動作− 図4は図3の動作の例を示すタイミングチャートであ
る。図4はリクエスト信号RQとシステムの種々のエレ
メントの当該アクノレッジ信号ACKを示しており、上
から下に向かいプライオリティのレベルが減少してい
る。ハッチをした領域はメモリバスMBUSおよびパラ
メータバスVLDBUSの上での動作を示している。
る。図4はリクエスト信号RQとシステムの種々のエレ
メントの当該アクノレッジ信号ACKを示しており、上
から下に向かいプライオリティのレベルが減少してい
る。ハッチをした領域はメモリバスMBUSおよびパラ
メータバスVLDBUSの上での動作を示している。
【0064】リクエストとアクノレッジ信号の一番目の
組RQVID,ACKVIDは表示コントローラ18の
FIFO22に対応している。信号の二番目の組RQC
D,ACKCDは圧縮データ入力バスCDinのFIF
O20に対応している。信号RQVLD, ACKVLD
の組はVLD回路10のFIFO21に対応している。
組RQVID,ACKVIDは表示コントローラ18の
FIFO22に対応している。信号の二番目の組RQC
D,ACKCDは圧縮データ入力バスCDinのFIF
O20に対応している。信号RQVLD, ACKVLD
の組はVLD回路10のFIFO21に対応している。
【0065】信号RQFILT(1),ACKFILT
(1)の組はハーフ画素フィルタ14により発生する6
つのリクエストの1つに対応している。組RQSUM,
ACKSUMは再形成されるマクロブロックを与えるF
IFO26に対応している。図4には次の波形も示して
いる;ハーフ画素フィルタ14がデータを与える状態に
あることを加算器16に示す信号FILTRDYの波
形;DCT-1回路13がデータを与える状態にあること
を加算器16に示す信号DCTRDYの波形;FIFO
26内で加算器16により与えられる和の積み重ねをイ
ネーブルにする信号SUMENの波形。ハーフ画素フィ
ルタ14によりメモリコントローラ24とシーケンサ2
8に与えられるマクロブロック同期信号MBSも示して
ある。
(1)の組はハーフ画素フィルタ14により発生する6
つのリクエストの1つに対応している。組RQSUM,
ACKSUMは再形成されるマクロブロックを与えるF
IFO26に対応している。図4には次の波形も示して
いる;ハーフ画素フィルタ14がデータを与える状態に
あることを加算器16に示す信号FILTRDYの波
形;DCT-1回路13がデータを与える状態にあること
を加算器16に示す信号DCTRDYの波形;FIFO
26内で加算器16により与えられる和の積み重ねをイ
ネーブルにする信号SUMENの波形。ハーフ画素フィ
ルタ14によりメモリコントローラ24とシーケンサ2
8に与えられるマクロブロック同期信号MBSも示して
ある。
【0066】図4はメモリバスMBUSが64−bit
データバスを含み、更にFIFOの大きさがデータの2
つのパケットで、データの一方のパケットがマクロブロ
ックの部分に対応している。バスMBUSの上で書き込
まれるFIFO(20と26)は内容が容量の1/2越
える時リクエストを発生し、バスの上で読み出しを行な
うFIFO(フィルタ14の21、22)は内容が容量
の1/2より低い時リクエストを発生する。
データバスを含み、更にFIFOの大きさがデータの2
つのパケットで、データの一方のパケットがマクロブロ
ックの部分に対応している。バスMBUSの上で書き込
まれるFIFO(20と26)は内容が容量の1/2越
える時リクエストを発生し、バスの上で読み出しを行な
うFIFO(フィルタ14の21、22)は内容が容量
の1/2より低い時リクエストを発生する。
【0067】時間t0 で、リクエストRQVID, RQ
CDおよびRQVLDが発生する;FIFO22, 20
および21は事実上空である。リクエストRQVIDの
プライオリティが一番高いので、時間t0 のすぐ後に信
号ACKVIDによりアクノレッジされる。信号ACK
VIDがアクティブの時、メモリコントローラ24は
(表示される画像ポインタDPにより示される)メモリ
15の適当な領域で表示される画素を読み出し、FIF
O22内にスタックする。FIFO22の内容が容量の
半分を越えると、リクエストRQVIDはデセーブルさ
れる。しかし、タスクは表示コントローラ18により行
なわれる所定の大きさの全てのパケットが転送されない
限り継続する(信号ACKVIDはアクティブのままで
ある)。(実際、以下で判るように、システムの有効性
を改善するため、転送のタスクは幾つかの非割り込み転
送サブタスクに分割されている)。
CDおよびRQVLDが発生する;FIFO22, 20
および21は事実上空である。リクエストRQVIDの
プライオリティが一番高いので、時間t0 のすぐ後に信
号ACKVIDによりアクノレッジされる。信号ACK
VIDがアクティブの時、メモリコントローラ24は
(表示される画像ポインタDPにより示される)メモリ
15の適当な領域で表示される画素を読み出し、FIF
O22内にスタックする。FIFO22の内容が容量の
半分を越えると、リクエストRQVIDはデセーブルさ
れる。しかし、タスクは表示コントローラ18により行
なわれる所定の大きさの全てのパケットが転送されない
限り継続する(信号ACKVIDはアクティブのままで
ある)。(実際、以下で判るように、システムの有効性
を改善するため、転送のタスクは幾つかの非割り込み転
送サブタスクに分割されている)。
【0068】メモリ15にはマクロブロックの順序で記
憶される画像が含まれているが、これらの画像はライン
の順序で表示コントローラ18に与えられる。このよう
に、メモリコントローラ24の転送タスクもラインの順
序でデータを読み出すため適当にアドレスが計算され
る。
憶される画像が含まれているが、これらの画像はライン
の順序で表示コントローラ18に与えられる。このよう
に、メモリコントローラ24の転送タスクもラインの順
序でデータを読み出すため適当にアドレスが計算され
る。
【0069】時間t1 では、アクノレッジ信号ACKV
IDをデセーブルにした直後、リクエストRQCDは信
号ACKCDを発生することによりアクノレッジされ
る。メモリコントローラ24はFIFO24の圧縮デー
タをメモリ15の領域CDに転送する。FIFO20の
内容が容量の半分より少なければ、リクエストRQCD
はデセーブルにされるが、前述のように、データの転送
はデータのパケットの全てが転送されるまで継続され
る。圧縮データは到着した順序でメモリ15内で書き込
まれる。
IDをデセーブルにした直後、リクエストRQCDは信
号ACKCDを発生することによりアクノレッジされ
る。メモリコントローラ24はFIFO24の圧縮デー
タをメモリ15の領域CDに転送する。FIFO20の
内容が容量の半分より少なければ、リクエストRQCD
はデセーブルにされるが、前述のように、データの転送
はデータのパケットの全てが転送されるまで継続され
る。圧縮データは到着した順序でメモリ15内で書き込
まれる。
【0070】時間t2 では、アクノレッジ信号ACKC
Dがデセーブルにされた直後、リクエストRQVLDは
信号ACKVLDの発生によりアクノレッジされる。次
に、メモリコントローラ24はメモリ15からの圧縮デ
ータを書き込まれた順序でFIFO21に転送する。F
IFO21の内容が容量の半分より多ければ、リクエス
トRQVLDはデセーブルにされるが、転送はデータの
パケットの全てが転送されるまで継続する。
Dがデセーブルにされた直後、リクエストRQVLDは
信号ACKVLDの発生によりアクノレッジされる。次
に、メモリコントローラ24はメモリ15からの圧縮デ
ータを書き込まれた順序でFIFO21に転送する。F
IFO21の内容が容量の半分より多ければ、リクエス
トRQVLDはデセーブルにされるが、転送はデータの
パケットの全てが転送されるまで継続する。
【0071】次に、VLD回路は非スタックと、FIF
O21に含まれたデータの処理を開始する。時間t3 で
は、VLD回路はマクロブロックヘッダを復号化し、バ
スVLDBUSを通し復号化されたパラメータをこれを
必要とするエレメントに与える。特に、マクロブロック
のタイプはハーフ画素フィルタ14に与えられ、量子化
スケールは逆量子化回路12に与えられ、更にベクトル
はハーフ画素フィルタ14とメモリコントローラ24に
与えられる。
O21に含まれたデータの処理を開始する。時間t3 で
は、VLD回路はマクロブロックヘッダを復号化し、バ
スVLDBUSを通し復号化されたパラメータをこれを
必要とするエレメントに与える。特に、マクロブロック
のタイプはハーフ画素フィルタ14に与えられ、量子化
スケールは逆量子化回路12に与えられ、更にベクトル
はハーフ画素フィルタ14とメモリコントローラ24に
与えられる。
【0072】時間t4 では、全てのパラメータが与えら
れ、VLD回路は復号化される画像データをRLD回路
11に与えることを開始する。マクロブロックのタイプ
とベクトルを一旦受けると、フィルタ14は予測マクロ
ブロックを受ける状態になる。フィルタ14は受けたマ
クロブロックのタイプに従ってRQFILTリクエスト
を1つ発生する。フィルタ14は3つのリクエストライ
ンRQFILT上に6つの異なるリクエストを発生する
ことができ、これらの異なるリクエストはマクロブロッ
クの6つの異なるタイプ(内部、予測、両方向;各マク
ロブロックは飛び越しまたは累加的である)に対応して
いる。この例では、リクエストRQFILT(1)は累
加的予測マクロブロックに対応している。
れ、VLD回路は復号化される画像データをRLD回路
11に与えることを開始する。マクロブロックのタイプ
とベクトルを一旦受けると、フィルタ14は予測マクロ
ブロックを受ける状態になる。フィルタ14は受けたマ
クロブロックのタイプに従ってRQFILTリクエスト
を1つ発生する。フィルタ14は3つのリクエストライ
ンRQFILT上に6つの異なるリクエストを発生する
ことができ、これらの異なるリクエストはマクロブロッ
クの6つの異なるタイプ(内部、予測、両方向;各マク
ロブロックは飛び越しまたは累加的である)に対応して
いる。この例では、リクエストRQFILT(1)は累
加的予測マクロブロックに対応している。
【0073】プライオリティの高いリクエストはアクテ
ィブでないので、リクエストRQFILT(1)は信号
ACKFILT(1)を発生することによりアクノレッ
ジされる。同期信号MBSはフィルタのリクエストがア
クティブになるようにパルスされ、これによりシーケン
サ28は前述の理由からマクロブロックカウンタを増加
し、更にメモリコントローラ24はVLD回路を通して
受ける1以上のベクトルを有効にする。
ィブでないので、リクエストRQFILT(1)は信号
ACKFILT(1)を発生することによりアクノレッ
ジされる。同期信号MBSはフィルタのリクエストがア
クティブになるようにパルスされ、これによりシーケン
サ28は前述の理由からマクロブロックカウンタを増加
し、更にメモリコントローラ24はVLD回路を通して
受ける1以上のベクトルを有効にする。
【0074】このように、時間t4 の直ぐ後に、アクノ
レッジ信号ACKFILT(1)が発生し、更に予測マ
クロブロックのフィルタ14への転送が(前方画像ポイ
ンタFPにより示される)メモリ15の適当な領域から
開始する。フィルタ14には次の2つのFIFOが含ま
れている;一方のFIFOは(前方の画像の)前方のマ
クロブロックを受けるためのものである;他方のFIF
Oは(後方の画像の)後方のマクロブロックを受けるた
めのものである。この例では、メモリコントローラ24
は予測マクロブロックに対応したリクエストを受け、フ
ィルタ14の前方マクロブロックFIFOを選択するア
クノレッジ信号ACKFILT(1)を発生する。メモ
リコントローラ24が受けるフィルタのリクエストに依
り、フィルタ14内で前方マクロブロックFIFO、後
方マクロブロックFIFOを個別に選択するため、また
は非アクティブ状態を必ず続けるメモリコントローラ2
4に示すため、メモリコントローラ24は可能性のある
3つのアクノレッジの1つを発生する(内部マクロブロ
ック)。
レッジ信号ACKFILT(1)が発生し、更に予測マ
クロブロックのフィルタ14への転送が(前方画像ポイ
ンタFPにより示される)メモリ15の適当な領域から
開始する。フィルタ14には次の2つのFIFOが含ま
れている;一方のFIFOは(前方の画像の)前方のマ
クロブロックを受けるためのものである;他方のFIF
Oは(後方の画像の)後方のマクロブロックを受けるた
めのものである。この例では、メモリコントローラ24
は予測マクロブロックに対応したリクエストを受け、フ
ィルタ14の前方マクロブロックFIFOを選択するア
クノレッジ信号ACKFILT(1)を発生する。メモ
リコントローラ24が受けるフィルタのリクエストに依
り、フィルタ14内で前方マクロブロックFIFO、後
方マクロブロックFIFOを個別に選択するため、また
は非アクティブ状態を必ず続けるメモリコントローラ2
4に示すため、メモリコントローラ24は可能性のある
3つのアクノレッジの1つを発生する(内部マクロブロ
ック)。
【0075】データがバスMBUSの64bitの上で
転送され、更にマクロブロックが16×16画素の画像
の一部分に対応するならば、4:2:0フォーマットの
マクロブロックの転送(図2B)が、簡単な場合、図4
の1から3の番号の3つの段階で行なわれる。輝度と色
の画素は8ビット上でコード化される。このように、バ
スMBUS上で転送される1ワードは8つの画素に対応
している。各転送段階は2つの輝度ブロックY1とY
2、2つの輝度ブロックY3とY4、更に2つの色ブロ
ックUとVを連続して転送するため16サイクルで行な
われる。フィルタ14のFIFOの容量は4つの8×8
画素ブロックである。フィルタ14は当該FIFOの内
容が容量の半分より小さければ6つの可能性のあるリク
エストの1つを発生する。
転送され、更にマクロブロックが16×16画素の画像
の一部分に対応するならば、4:2:0フォーマットの
マクロブロックの転送(図2B)が、簡単な場合、図4
の1から3の番号の3つの段階で行なわれる。輝度と色
の画素は8ビット上でコード化される。このように、バ
スMBUS上で転送される1ワードは8つの画素に対応
している。各転送段階は2つの輝度ブロックY1とY
2、2つの輝度ブロックY3とY4、更に2つの色ブロ
ックUとVを連続して転送するため16サイクルで行な
われる。フィルタ14のFIFOの容量は4つの8×8
画素ブロックである。フィルタ14は当該FIFOの内
容が容量の半分より小さければ6つの可能性のあるリク
エストの1つを発生する。
【0076】実際には、図4には記載していないが、フ
ィルタに与えられる予測マクロブロックには17×17
画素の輝度ブロック(Y1−Y4)と、9×18画素の
色ブロックU、Vが含まれている。更に、転送されるブ
ロックの組(Y1,Y2;Y3,Y4;U,V)はバス
MBUSの64データビットで必ずしも“配列”されて
いないが、これには輝度ブロック(大きさが136ビッ
ト)が3段階の17回の読み出しサイクルで必ず転送さ
れ、更に色ブロック(大きさが76ビット)が2段階の
読み出しサイクルで必ず転送されることが含まれてい
る。実際には、輝度ブロックの画素の各ラインはバスM
BUSを通りアクセス可能な3つの64ビットワードと
オーバラップしており、更に色ブロックの各ラインは2
つの64ビットワードとオーバラップしている。フィル
タ14はデータの蓄積から必ず輝度および色ブロックを
取り出す。
ィルタに与えられる予測マクロブロックには17×17
画素の輝度ブロック(Y1−Y4)と、9×18画素の
色ブロックU、Vが含まれている。更に、転送されるブ
ロックの組(Y1,Y2;Y3,Y4;U,V)はバス
MBUSの64データビットで必ずしも“配列”されて
いないが、これには輝度ブロック(大きさが136ビッ
ト)が3段階の17回の読み出しサイクルで必ず転送さ
れ、更に色ブロック(大きさが76ビット)が2段階の
読み出しサイクルで必ず転送されることが含まれてい
る。実際には、輝度ブロックの画素の各ラインはバスM
BUSを通りアクセス可能な3つの64ビットワードと
オーバラップしており、更に色ブロックの各ラインは2
つの64ビットワードとオーバラップしている。フィル
タ14はデータの蓄積から必ず輝度および色ブロックを
取り出す。
【0077】簡単な例における一番目の転送段階1の始
めで、フィルタ14の当該FIFOは空である。段階1
の終わりで、ブロックY1とブロックY2は全て転送さ
れるが、フィルタ14はFIFOを空にし始める;リク
エストRQFILT(1)はアクティブのままで、転送
段階2がすぐ開始する。段階2の間、FIFOは半分の
状態に達する;リクエストRQFILT(1)はデセー
ブルであるが、転送段階はブロックY3とY4が完全に
転送されるまで継続する。
めで、フィルタ14の当該FIFOは空である。段階1
の終わりで、ブロックY1とブロックY2は全て転送さ
れるが、フィルタ14はFIFOを空にし始める;リク
エストRQFILT(1)はアクティブのままで、転送
段階2がすぐ開始する。段階2の間、FIFOは半分の
状態に達する;リクエストRQFILT(1)はデセー
ブルであるが、転送段階はブロックY3とY4が完全に
転送されるまで継続する。
【0078】フィルタ14が一番目のブロックY1とY
2を一旦受けると、加算器16にフィルタを通ったデー
タを与える状態となる。フィルタ14は加算器16にこ
の状態を示すため(図3のハンドシェイクHS1の)ラ
インFILTRDYをアクティブにする。加算器16は
ハンドシェイクHS1の他の信号(図示していない)を
通し応答し、DCT-1回路がまだデータを与える状態に
ないのでデータを受ける状態にないが、これは信号FI
LTRDYがイネーブルの時、非アクティブ信号DCT
RDYにより示される。
2を一旦受けると、加算器16にフィルタを通ったデー
タを与える状態となる。フィルタ14は加算器16にこ
の状態を示すため(図3のハンドシェイクHS1の)ラ
インFILTRDYをアクティブにする。加算器16は
ハンドシェイクHS1の他の信号(図示していない)を
通し応答し、DCT-1回路がまだデータを与える状態に
ないのでデータを受ける状態にないが、これは信号FI
LTRDYがイネーブルの時、非アクティブ信号DCT
RDYにより示される。
【0079】時間t6 では、DCT-1回路は時間t4 か
らRLD回路11の中に入れられたデータを与えること
を開始する。ハンドシェイクHS2の信号DCTRDY
はイネーブルにされ、加算器16はフィルタ14と追加
が開始するDCT-1回路に示される信号SUMENをイ
ネーブルにする。追加の結果はFIFO26にスタック
される。
らRLD回路11の中に入れられたデータを与えること
を開始する。ハンドシェイクHS2の信号DCTRDY
はイネーブルにされ、加算器16はフィルタ14と追加
が開始するDCT-1回路に示される信号SUMENをイ
ネーブルにする。追加の結果はFIFO26にスタック
される。
【0080】時間t9 では、FIFO26は半分満たさ
れ、リクエストRQSUMを発生する。このリクエスト
のプライオリティは最低であるが、他のリクエストはア
クティブでないので、アクノレッジ信号ACKSUMの
直後にこの信号によりアクノレッジされる。次にメモリ
15の(再形成された画像ポインタRPにより示され
る)適当な領域への再構成マクロブロックのブロックY
1およびY2の転送段階1が開始する。リクエストRQ
SUMはこれらのブロックY1およびY2を転送する間
デセーブルにされるが、ブロックY1とY2が完全に転
送されるまでこの転送は継続する。
れ、リクエストRQSUMを発生する。このリクエスト
のプライオリティは最低であるが、他のリクエストはア
クティブでないので、アクノレッジ信号ACKSUMの
直後にこの信号によりアクノレッジされる。次にメモリ
15の(再形成された画像ポインタRPにより示され
る)適当な領域への再構成マクロブロックのブロックY
1およびY2の転送段階1が開始する。リクエストRQ
SUMはこれらのブロックY1およびY2を転送する間
デセーブルにされるが、ブロックY1とY2が完全に転
送されるまでこの転送は継続する。
【0081】時間t10では、FIFO26は再び半分だ
け満たされ、再形成マクロブロックのブロックY3とY
4を転送するため段階2がスタートする、等々。
け満たされ、再形成マクロブロックのブロックY3とY
4を転送するため段階2がスタートする、等々。
【0082】前述の記載は図3のシステムにおいては実
行されるメインのタスクの簡単な連鎖に関している。実
際、あらゆるタスクはプライオリティのより高いタスク
によりランダムに割り込みが行なわれる。
行されるメインのタスクの簡単な連鎖に関している。実
際、あらゆるタスクはプライオリティのより高いタスク
によりランダムに割り込みが行なわれる。
【0083】例えば、時間t5 では、時間t6 の前にリ
クエストRQCDはFIFO20内に含まれた圧縮デー
タをメモリ15に転送するため再びイネーブルにされ
る。
クエストRQCDはFIFO20内に含まれた圧縮デー
タをメモリ15に転送するため再びイネーブルにされ
る。
【0084】時間t7 では、フィルタにより処理される
予測マクロブロックから色ブロックUとVを受けるため
フィルタ14がリクエストRQFILT(1)を発生す
る。このリクエストはアクノレッジ信号ACKCDがデ
セーブルの時のみ、すなわち圧縮データの全てのパケッ
トがFIFO20からメモリ15に転送される時、アク
ノレッジ信号ACKFILT(1)によりアクノレッジ
される。ブロックUとVは次にフィルタ14への転送が
開始するが、これは前述の三番目の段階に相当する。
予測マクロブロックから色ブロックUとVを受けるため
フィルタ14がリクエストRQFILT(1)を発生す
る。このリクエストはアクノレッジ信号ACKCDがデ
セーブルの時のみ、すなわち圧縮データの全てのパケッ
トがFIFO20からメモリ15に転送される時、アク
ノレッジ信号ACKFILT(1)によりアクノレッジ
される。ブロックUとVは次にフィルタ14への転送が
開始するが、これは前述の三番目の段階に相当する。
【0085】時間t8 では、リクエストRQFILT
(1)がまだアクティブの間、より高いプライオリティ
を持ったリクエストRQVLDが発生する。しかし、マ
クロブロックの2つのブロック(この場合、UとV)の
転送は非割り込み基本タスクである。このように、信号
ACKVLDをイネーブルにすることによるアクノレッ
ジ信号RQVLDの前に、このシステムはリクエストA
CKFILT(1)がデセーブルにされるまで待機す
る。
(1)がまだアクティブの間、より高いプライオリティ
を持ったリクエストRQVLDが発生する。しかし、マ
クロブロックの2つのブロック(この場合、UとV)の
転送は非割り込み基本タスクである。このように、信号
ACKVLDをイネーブルにすることによるアクノレッ
ジ信号RQVLDの前に、このシステムはリクエストA
CKFILT(1)がデセーブルにされるまで待機す
る。
【0086】いつでもより高いプライオリティのタスク
により割り込みが行なわれるタスクが幾つかあるので、
タスクは周期的には連鎖状にはなっていない。種々の復
号化パラメータ(ベクトル、画像のタイプ、…)は予知
できない時間にこれらのパラメータを必要とする回路に
到達する。適当な時間にパラメータを検討する回路をイ
ネーブルにするため、各回路にはパラメータが到着する
様にスタックされるレジスタが含まれている;従ってパ
ラメータはパラメータが使用される様に同期信号により
累加的にアンスタックされ、有効にされる。これを行な
うため、同期信号MBS,ISYNC,およびVSYN
Cが与えられている。
により割り込みが行なわれるタスクが幾つかあるので、
タスクは周期的には連鎖状にはなっていない。種々の復
号化パラメータ(ベクトル、画像のタイプ、…)は予知
できない時間にこれらのパラメータを必要とする回路に
到達する。適当な時間にパラメータを検討する回路をイ
ネーブルにするため、各回路にはパラメータが到着する
様にスタックされるレジスタが含まれている;従ってパ
ラメータはパラメータが使用される様に同期信号により
累加的にアンスタックされ、有効にされる。これを行な
うため、同期信号MBS,ISYNC,およびVSYN
Cが与えられている。
【0087】信号MBSはマクロブロック同期信号であ
り、これは例えば予測マクロブロックを処理するのに必
要なパラメータを受ける時、フィルタ14によりアクテ
ィブにされる。信号MBSはフィルタ14に加えられる
1以上の予測マクロブロックを取り出すため適当な時に
ベクトルを有効にするようにメモリコントローラにより
与えられる。
り、これは例えば予測マクロブロックを処理するのに必
要なパラメータを受ける時、フィルタ14によりアクテ
ィブにされる。信号MBSはフィルタ14に加えられる
1以上の予測マクロブロックを取り出すため適当な時に
ベクトルを有効にするようにメモリコントローラにより
与えられる。
【0088】VLD回路が画像の終わり(EOP)を検
出した時、および表示垂直同期信号がイネーブルの時ア
クティブになる信号ISYNCは、メモリコントローラ
MCU内で適当な時間に画像ポインタImPtの組を有
効にする。信号ISYNCもメモリ15内に記憶された
データのアドレスを計算するために使用されたメモリコ
ントローラの計算レジスタをリセットする。
出した時、および表示垂直同期信号がイネーブルの時ア
クティブになる信号ISYNCは、メモリコントローラ
MCU内で適当な時間に画像ポインタImPtの組を有
効にする。信号ISYNCもメモリ15内に記憶された
データのアドレスを計算するために使用されたメモリコ
ントローラの計算レジスタをリセットする。
【0089】図3のシステムに使用されたメモリコント
ローラは以下に詳細を記載する特別な利点を有したプロ
セッサである。実際、従来のプロセッサはバスを通して
のみ通信を行なう;このプロセッサはバス以外の他の方
法でパラメータを受ける様に設計されていない。更に、
従来のプロセッサではリクエストは割り込みリクエスト
に対応しており、しかもアクノレッジはリクエストを発
生した装置(FIFO)の読み出しまたは書き込み動作
に対応している。
ローラは以下に詳細を記載する特別な利点を有したプロ
セッサである。実際、従来のプロセッサはバスを通して
のみ通信を行なう;このプロセッサはバス以外の他の方
法でパラメータを受ける様に設計されていない。更に、
従来のプロセッサではリクエストは割り込みリクエスト
に対応しており、しかもアクノレッジはリクエストを発
生した装置(FIFO)の読み出しまたは書き込み動作
に対応している。
【0090】従来のプロセッサを使用することは勿論可
能である。この場合画像ポインタImPtとベクトルは
メモリバスMBUSに接続されているFIFO内にスタ
ックされている。従って、信号MBSとISYNCはプ
ロセッサがパラメータを読み出し内部ワークレジスタに
記憶するためプライオリティの一番高い割り込みレジス
タに対応している。
能である。この場合画像ポインタImPtとベクトルは
メモリバスMBUSに接続されているFIFO内にスタ
ックされている。従って、信号MBSとISYNCはプ
ロセッサがパラメータを読み出し内部ワークレジスタに
記憶するためプライオリティの一番高い割り込みレジス
タに対応している。
【0091】−メモリコントローラ− 図5は特別な利点を有するプロセッサに基づき、この発
明によるメモリコントローラの実施態様を示している。
このプロセッサについて記載する前に、従来のプロセッ
サの構造について以下に記載するが、これはこの発明に
よるプロセッサの利点をより強調するためであり、更に
その構造の理解をより良くするためである。
明によるメモリコントローラの実施態様を示している。
このプロセッサについて記載する前に、従来のプロセッ
サの構造について以下に記載するが、これはこの発明に
よるプロセッサの利点をより強調するためであり、更に
その構造の理解をより良くするためである。
【0092】従来のプロセッサには、より一般には演算
論理装置(ALU)と呼ばれている処理ユニットがあ
る。ALUは最初システムバスを通しROMまたはRA
Mに記憶された命令を受け、すなわち読み込み、次にこ
の命令を実行する。命令の実行により2つのメモリ位置
すなわちプロセッサのメモリとレジスタの間のシステム
バスの上で転送されるデータを一般に生ずる。
論理装置(ALU)と呼ばれている処理ユニットがあ
る。ALUは最初システムバスを通しROMまたはRA
Mに記憶された命令を受け、すなわち読み込み、次にこ
の命令を実行する。命令の実行により2つのメモリ位置
すなわちプロセッサのメモリとレジスタの間のシステム
バスの上で転送されるデータを一般に生ずる。
【0093】従来のプロセッサでは、命令が取り出され
るアドレスは単一の命令ポインタの中に含まれている。
プロセッサが多数の同時のタスクを必ず実行する時、リ
クエストは各タスクに関連している。リクエストがプロ
セッサに到達する時、割り込まれた新しいタスクに関連
した新しいプログラムを実行する。あるタスクから他の
タスクへの切換えを可能にするため、いわゆる“コンテ
キストセーブ、リストア”手順が使用される。この手順
はプログラムの実行が割り込まれその後再開される時、
命令ポインタの内容をそれぞれセーブ、リストアするこ
とから成る。この手順は命令サイクルにおいて特に時間
を使い、タスクの実行速度を制限する。
るアドレスは単一の命令ポインタの中に含まれている。
プロセッサが多数の同時のタスクを必ず実行する時、リ
クエストは各タスクに関連している。リクエストがプロ
セッサに到達する時、割り込まれた新しいタスクに関連
した新しいプログラムを実行する。あるタスクから他の
タスクへの切換えを可能にするため、いわゆる“コンテ
キストセーブ、リストア”手順が使用される。この手順
はプログラムの実行が割り込まれその後再開される時、
命令ポインタの内容をそれぞれセーブ、リストアするこ
とから成る。この手順は命令サイクルにおいて特に時間
を使い、タスクの実行速度を制限する。
【0094】図5では対照的に、この発明によるメモリ
コントローラ24には多数の命令ポインタIP, IP
2, …,IPnが含まれており、それぞれはメモリバス
MBUSの上でのデータ転送のタスクに対応している。
これらのポインタのそれぞれは、処理ユニット50によ
り取り出される命令アドレスとして命令を与えるためイ
ネーブルラインEN1−ENnによりイネーブルにされ
る。イネーブルラインENはバスRQ/ACKのリクエ
ストラインRQを受けるプライオリティ復号器52によ
り制御されている。リクエストラインRQのそれぞれに
はプライオリティレベルが割り当てられている。幾つか
のタスクに同じプライオリティレベルを割り当てること
も可能である。次に、復号器52は例えばタスクに異な
るプライオリティレベルを内部的に割り当てることによ
り、更に1つまたはグループの命令が実行される毎にこ
れらのレベルを循環的にシフトされることにより、一度
に1つのポインタIPのみを必ずイネーブルにする。こ
れは同じプライオリティレベルを有するタスクが実際に
はシフトされる異なるレベルを有することから言える。
コントローラ24には多数の命令ポインタIP, IP
2, …,IPnが含まれており、それぞれはメモリバス
MBUSの上でのデータ転送のタスクに対応している。
これらのポインタのそれぞれは、処理ユニット50によ
り取り出される命令アドレスとして命令を与えるためイ
ネーブルラインEN1−ENnによりイネーブルにされ
る。イネーブルラインENはバスRQ/ACKのリクエ
ストラインRQを受けるプライオリティ復号器52によ
り制御されている。リクエストラインRQのそれぞれに
はプライオリティレベルが割り当てられている。幾つか
のタスクに同じプライオリティレベルを割り当てること
も可能である。次に、復号器52は例えばタスクに異な
るプライオリティレベルを内部的に割り当てることによ
り、更に1つまたはグループの命令が実行される毎にこ
れらのレベルを循環的にシフトされることにより、一度
に1つのポインタIPのみを必ずイネーブルにする。こ
れは同じプライオリティレベルを有するタスクが実際に
はシフトされる異なるレベルを有することから言える。
【0095】FIFOがリクエストを発生する時、メモ
リバスを通しデータを受けまたは与える状態にある。リ
クエストのアクノレッジはリクエストが現われるまで当
該FIFOのデータを書き込みまたは読み出すことのみ
から成り、読み出しまたは書き込みサイクルはメモリバ
スMBUSを通しFIFOに特別なアドレスで行なわれ
る。より好都合なアクノレッジシステムを以下に記載す
る。
リバスを通しデータを受けまたは与える状態にある。リ
クエストのアクノレッジはリクエストが現われるまで当
該FIFOのデータを書き込みまたは読み出すことのみ
から成り、読み出しまたは書き込みサイクルはメモリバ
スMBUSを通しFIFOに特別なアドレスで行なわれ
る。より好都合なアクノレッジシステムを以下に記載す
る。
【0096】更にメモリコントローラにより必ず実行さ
れるタスクは予め定められているので、これらのタスク
に対応したプログラムはメモリバスMBUSに独立な不
揮発性命令メモリ(ROM)54内に記憶される。イネ
ーブルされた命令ポインタIPiの内容はROM54の
アドレスの入力に加えられる。ALU50はメモリバス
MBUSに接続されこのバスの上でデータの転送を生ず
るが、ROMから命令を直接受けるため従来のALUと
比較して修正されている。従来のプロセッサの修正のよ
うに当業者により容易に達成することができる。
れるタスクは予め定められているので、これらのタスク
に対応したプログラムはメモリバスMBUSに独立な不
揮発性命令メモリ(ROM)54内に記憶される。イネ
ーブルされた命令ポインタIPiの内容はROM54の
アドレスの入力に加えられる。ALU50はメモリバス
MBUSに接続されこのバスの上でデータの転送を生ず
るが、ROMから命令を直接受けるため従来のALUと
比較して修正されている。従来のプロセッサの修正のよ
うに当業者により容易に達成することができる。
【0097】従来のプロセッサユニットには命令レジス
タと、同じバスに接続されているワークレジスタとが含
まれている。命令が読み込まれると、命令レジスタ内に
書き込まれ、更にこの命令が実行される時、バスとワー
クレジスタの間に動作が発生する。
タと、同じバスに接続されているワークレジスタとが含
まれている。命令が読み込まれると、命令レジスタ内に
書き込まれ、更にこの命令が実行される時、バスとワー
クレジスタの間に動作が発生する。
【0098】この発明によれば、メモリバスMBUSに
命令レジスタを接続するかわり、この命令レジスタ(図
示していない)はROM54の出力に接続されている。
このような構成により、命令はALU50内に読み込ま
れた直後に実行される。実行される命令と同じ数の読み
出しサイクルが節約されるが、これは時間が大幅に節約
できることを示している。
命令レジスタを接続するかわり、この命令レジスタ(図
示していない)はROM54の出力に接続されている。
このような構成により、命令はALU50内に読み込ま
れた直後に実行される。実行される命令と同じ数の読み
出しサイクルが節約されるが、これは時間が大幅に節約
できることを示している。
【0099】−メモリコントローラの動作− 電源が投入されると、レジスタである各命令ポインタI
Pi(i=1,2…n)は内蔵プログラムのスタートア
ドレスに対応したスタートの値IPi0 で初期化され
る。これらのスタートアドレスは命令ポインタのレジス
タのプレチャージ入力に現われるハードワイヤデータに
対応している。各プログラムと関連のあるプライオリテ
ィレベルはプライオリティ復号器により決定されるが、
このプライオリティ復号器はプライオリティレベルとし
てプログラムに例えば関連命令ポインタのランクを割り
当てる。
Pi(i=1,2…n)は内蔵プログラムのスタートア
ドレスに対応したスタートの値IPi0 で初期化され
る。これらのスタートアドレスは命令ポインタのレジス
タのプレチャージ入力に現われるハードワイヤデータに
対応している。各プログラムと関連のあるプライオリテ
ィレベルはプライオリティ復号器により決定されるが、
このプライオリティ復号器はプライオリティレベルとし
てプログラムに例えば関連命令ポインタのランクを割り
当てる。
【0100】システムに電源が入るとラインRQ上にリ
クエストが現われる。プライオリティ復号器はプライオ
リティの一番高いリクエストに関連のある命令ポインタ
IPをイネーブルにする。ALU50はイネーブルされ
た命令ポインタが示すアドレスにある命令を読み込み、
更にこの命令を実行する。命令が実行されると、増加回
路56はALUにより実行される次の命令のアドレスを
与えるイネーブルされた命令ポインタを増加する。増加
回路56はイネーブルされたポインタ上でのみ動作する
ので、他のポインタの内容は修正されない。増加回路5
6の表現(+1)は記号である;実行される命令は例え
ば命令が異なる長さを有する時、またはジャンプすなわ
ちサブプログラムコール命令が実行される時、必ずしも
連続したアドレスに位置していない。このような場合、
イネーブルされた命令ポインタは従来のプロセッサで知
られているように、適当な値だけ増加または減少する。
クエストが現われる。プライオリティ復号器はプライオ
リティの一番高いリクエストに関連のある命令ポインタ
IPをイネーブルにする。ALU50はイネーブルされ
た命令ポインタが示すアドレスにある命令を読み込み、
更にこの命令を実行する。命令が実行されると、増加回
路56はALUにより実行される次の命令のアドレスを
与えるイネーブルされた命令ポインタを増加する。増加
回路56はイネーブルされたポインタ上でのみ動作する
ので、他のポインタの内容は修正されない。増加回路5
6の表現(+1)は記号である;実行される命令は例え
ば命令が異なる長さを有する時、またはジャンプすなわ
ちサブプログラムコール命令が実行される時、必ずしも
連続したアドレスに位置していない。このような場合、
イネーブルされた命令ポインタは従来のプロセッサで知
られているように、適当な値だけ増加または減少する。
【0101】以下では、命令ポインタIPのランク
(i)は内蔵プログラム(またはタスク)とリクエスト
を表すのに使用する。
(i)は内蔵プログラム(またはタスク)とリクエスト
を表すのに使用する。
【0102】プログラムi−1より高いプライオリティ
を有するリクエストiが現われると、復号器52はプロ
グラムi−1の現在の分割できないグループの命令が実
行された直後ポインタIPi−1の代わりに命令ポイン
タIPiをイネーブルにする。リクエストiは関連のあ
るアクノレッジラインACKにより同時にアクノレッジ
される。新しくイネーブルされたポインタIPiにより
示された命令はALU50内に読み込まれ、時間の遅れ
を生ずることなく実行される、すなわち新しい命令はプ
ログラムi−1の新しい命令が実行された瞬間に実行さ
れる。
を有するリクエストiが現われると、復号器52はプロ
グラムi−1の現在の分割できないグループの命令が実
行された直後ポインタIPi−1の代わりに命令ポイン
タIPiをイネーブルにする。リクエストiは関連のあ
るアクノレッジラインACKにより同時にアクノレッジ
される。新しくイネーブルされたポインタIPiにより
示された命令はALU50内に読み込まれ、時間の遅れ
を生ずることなく実行される、すなわち新しい命令はプ
ログラムi−1の新しい命令が実行された瞬間に実行さ
れる。
【0103】プライオリティリクエストiがデセーブル
されると、復号器52は新しくプライオリティが最大の
タスクに対応した命令ポインタをイネーブルにするが、
このタスクはタスクiすなわちタスクにより中断された
タスクとなる。内蔵プログラムは中断ポインタから、ま
たはまだスタートしていないタスクに対応したプログラ
ムならばその始めから直後に実行される。
されると、復号器52は新しくプライオリティが最大の
タスクに対応した命令ポインタをイネーブルにするが、
このタスクはタスクiすなわちタスクにより中断された
タスクとなる。内蔵プログラムは中断ポインタから、ま
たはまだスタートしていないタスクに対応したプログラ
ムならばその始めから直後に実行される。
【0104】このようなシステムでは、あるタスクから
他のタスクへの切換えは従来のシステムではコンテキス
トセービングとリクエストを行なうのに必要な時間を生
ずることなく行なわれる。
他のタスクへの切換えは従来のシステムではコンテキス
トセービングとリクエストを行なうのに必要な時間を生
ずることなく行なわれる。
【0105】この画像処理システムでは、データ転送タ
スクに関連したプログラムはエンドレスループで実行さ
れるように設計されている。従って、このようなプログ
ラムの最後の命令はプログラムの最初に対するジャンプ
である。このジャンプは従来も増加回路56により管理
されている。この発明によるループを制御する適当な方
法は後述する。
スクに関連したプログラムはエンドレスループで実行さ
れるように設計されている。従って、このようなプログ
ラムの最後の命令はプログラムの最初に対するジャンプ
である。このジャンプは従来も増加回路56により管理
されている。この発明によるループを制御する適当な方
法は後述する。
【0106】前述のように、現在のタスクよりプライオ
リティの高いリクエストが発生したにも拘らず、現在の
グループの命令を終えたい場合がある(全てのパケット
のデータの転送)。従来のプロセッサでは、特別な命令
により割り込みリクエストの役目がデセーブルまたはイ
ネーブルされる。しかし、この発明によるプロセッサで
は、従来の割り込みを使用していないので、このような
特別の命令は適合しない。
リティの高いリクエストが発生したにも拘らず、現在の
グループの命令を終えたい場合がある(全てのパケット
のデータの転送)。従来のプロセッサでは、特別な命令
により割り込みリクエストの役目がデセーブルまたはイ
ネーブルされる。しかし、この発明によるプロセッサで
は、従来の割り込みを使用していないので、このような
特別の命令は適合しない。
【0107】この問題を解決するため、この発明では各
命令IをプリフィックスI1とコマンドI2に分割して
いる。プリフィックスI1はプリフィックス復号器58
に与えられ、従来の命令に相当するコマンドI2はAL
U50に与えられる。プリフィックスI1は関連した命
令が実行された時現在のプログラムが中断されるか否か
を示している。
命令IをプリフィックスI1とコマンドI2に分割して
いる。プリフィックスI1はプリフィックス復号器58
に与えられ、従来の命令に相当するコマンドI2はAL
U50に与えられる。プリフィックスI1は関連した命
令が実行された時現在のプログラムが中断されるか否か
を示している。
【0108】プリフィックス復号器58はプライオリテ
ィ復号器52に信号NEXTENを与えるが、この信号
はプリフィックスが特別な値にあれば、更に現在のプロ
グラムよりプライオリティの高いリクエストが発生して
も、新しい命令ポインタのイネーブルを禁止する。
ィ復号器52に信号NEXTENを与えるが、この信号
はプリフィックスが特別な値にあれば、更に現在のプロ
グラムよりプライオリティの高いリクエストが発生して
も、新しい命令ポインタのイネーブルを禁止する。
【0109】−メモリコントローラの最適化− 命令のプリフィックスI1は適当な数のビットにより、
現在のプログラムが現在の命令の後に中断されるか否か
を示すだけでなく、現在の命令が所定の時間実行される
ことを示すものである。プリフィックスI1は更に現在
の命令がプログラムの最後の命令であるか否かを示す
(この利用は後述する)。
現在のプログラムが現在の命令の後に中断されるか否か
を示すだけでなく、現在の命令が所定の時間実行される
ことを示すものである。プリフィックスI1は更に現在
の命令がプログラムの最後の命令であるか否かを示す
(この利用は後述する)。
【0110】プリフィックス復号器58はプリフィック
スI1により定まる数のサイクルで初期化される命令サ
イクルのダウンカウンタから成る。この数はプリフィッ
クス復号器に記憶される幾つかの一定数から選択された
数、すなわちALU50により与えられる数Nである。
このようなループ命令が実行されると、プリフィックス
復号器58は所要の数の命令サイクルの間、増加回路5
6を禁止する。その結果読み込まれた命令は所要の時間
実行される。
スI1により定まる数のサイクルで初期化される命令サ
イクルのダウンカウンタから成る。この数はプリフィッ
クス復号器に記憶される幾つかの一定数から選択された
数、すなわちALU50により与えられる数Nである。
このようなループ命令が実行されると、プリフィックス
復号器58は所要の数の命令サイクルの間、増加回路5
6を禁止する。その結果読み込まれた命令は所要の時間
実行される。
【0111】この方法は実行される各ループに対しジャ
ンプ命令を与えているが、これは1つの命令が連続的に
数回実行されるならば、時間を大幅に節約する。このよ
うなループ命令はデータがパケットにより転送される時
特に有益であり、これはこのシステムの場合である。
ンプ命令を与えているが、これは1つの命令が連続的に
数回実行されるならば、時間を大幅に節約する。このよ
うなループ命令はデータがパケットにより転送される時
特に有益であり、これはこのシステムの場合である。
【0112】現在実行されている命令が最後のものであ
ることをプリフィックスIが示しておれば、命令が実行
されると復号器58は信号INITを命令ポインタIP
の組に与えるが、これによりプログラムのスタートアド
レスでイネーブルされたポインタの初期化が行なわれ
る。
ることをプリフィックスIが示しておれば、命令が実行
されると復号器58は信号INITを命令ポインタIP
の組に与えるが、これによりプログラムのスタートアド
レスでイネーブルされたポインタの初期化が行なわれ
る。
【0113】このようなシステムでは、いくつかの場
合、プロセッサの命令の組はあらゆるジャンプ命令を含
まない組に限定されるが、これによりプロセッサ、より
詳細には増加回路が大幅に簡単になる。
合、プロセッサの命令の組はあらゆるジャンプ命令を含
まない組に限定されるが、これによりプロセッサ、より
詳細には増加回路が大幅に簡単になる。
【0114】この処理システムでは、データの処理は特
別な回路により行なわれる。メモリコントローラのみが
メモリバスMBUSを通しデータを転送し、画像メモリ
15内で適当なデータアドレスを計算する。
別な回路により行なわれる。メモリコントローラのみが
メモリバスMBUSを通しデータを転送し、画像メモリ
15内で適当なデータアドレスを計算する。
【0115】各FIFOはその内容をメモリバスMBU
Sの上に与えまたはこのFIFOがアクノレッジ信号A
CKを受ける時メモリバスMBUSの上にあるデータを
受ける。信号ACKは命令Iのそれぞれから追加のフィ
ールドI3を受けるアクノレッジ回路59により与えら
れる。この構成により、FIFO、およびメモリバスM
BUSに接続された読み出し書き込み専用装置はメモリ
バスにいかなるアドレスを発生することなく、命令(よ
り詳細にはフィールドI3)により直接選択される。こ
れにより書き込み専用装置に直接書き込まれる画像メモ
リ内に読み出されるデータが発生し、更に書き込みサイ
クルが続く読み出しサイクルを実施することなく画像メ
モリに直接書き込まれる読み出し専用装置に読み出され
るデータが発生する。アクノレッジ回路59は必要があ
れば復号器および/またはアクノレッジのフォーマット
を適当に定めるための回路である(例えば、FIFOメ
モリで読み出される前にバスにデータを表す画像メモリ
の時間を与えるため、アクノレッジ信号を遅延する必要
がある)。
Sの上に与えまたはこのFIFOがアクノレッジ信号A
CKを受ける時メモリバスMBUSの上にあるデータを
受ける。信号ACKは命令Iのそれぞれから追加のフィ
ールドI3を受けるアクノレッジ回路59により与えら
れる。この構成により、FIFO、およびメモリバスM
BUSに接続された読み出し書き込み専用装置はメモリ
バスにいかなるアドレスを発生することなく、命令(よ
り詳細にはフィールドI3)により直接選択される。こ
れにより書き込み専用装置に直接書き込まれる画像メモ
リ内に読み出されるデータが発生し、更に書き込みサイ
クルが続く読み出しサイクルを実施することなく画像メ
モリに直接書き込まれる読み出し専用装置に読み出され
るデータが発生する。アクノレッジ回路59は必要があ
れば復号器および/またはアクノレッジのフォーマット
を適当に定めるための回路である(例えば、FIFOメ
モリで読み出される前にバスにデータを表す画像メモリ
の時間を与えるため、アクノレッジ信号を遅延する必要
がある)。
【0116】前述のように、書き込み専用FIFOは内
容が最小の内容より低ければ、例えばFIFOの大きさ
の半分に等しければリクエストを発生する。書き込み専
用FIFOと関連のあるタスクは画像メモリからFIF
Oにデータのパケットを転送することから成り、このデ
ータのパケットの大きさは例えばFIFOの大きさの半
分に等しく固定されている。
容が最小の内容より低ければ、例えばFIFOの大きさ
の半分に等しければリクエストを発生する。書き込み専
用FIFOと関連のあるタスクは画像メモリからFIF
Oにデータのパケットを転送することから成り、このデ
ータのパケットの大きさは例えばFIFOの大きさの半
分に等しく固定されている。
【0117】前述のように、転送動作は画像メモリ読み
出し命令のループ化された実行から成り、そのループの
数は読み出し命令のプリフィックスI1により定められ
る。読み出し命令のそれぞれの実行において、画像メモ
リはメモリバス上でFIFOに直接転送されるデータを
与える。
出し命令のループ化された実行から成り、そのループの
数は読み出し命令のプリフィックスI1により定められ
る。読み出し命令のそれぞれの実行において、画像メモ
リはメモリバス上でFIFOに直接転送されるデータを
与える。
【0118】読み出し専用FIFOは内蔵のデータの数
が内容の最大を越える時、例えばFIFOの大きさの半
分に等しい時リクエストを発生する。FIFOに関連の
あるタスクはパケットのデータによりFIFOの内容を
画像メモリに転送することから成る。各パケットには例
えばFIFOの大きさの半分に等しい固定数のデータが
入っている。
が内容の最大を越える時、例えばFIFOの大きさの半
分に等しい時リクエストを発生する。FIFOに関連の
あるタスクはパケットのデータによりFIFOの内容を
画像メモリに転送することから成る。各パケットには例
えばFIFOの大きさの半分に等しい固定数のデータが
入っている。
【0119】このように転送動作は画像メモリの書き込
み動作をループ化して実行することから成り、ループの
数は書き込み命令にプリフィックスI1により定められ
る。FIFOのアクノレッジ信号がアクティブになる
と、FIFOは書き込み命令の実行速度でデータをバス
の上に与える。このように、FIFOにより、バスの上
に与えられる各データは画像メモリの中に直接書き込ま
れる。
み動作をループ化して実行することから成り、ループの
数は書き込み命令にプリフィックスI1により定められ
る。FIFOのアクノレッジ信号がアクティブになる
と、FIFOは書き込み命令の実行速度でデータをバス
の上に与える。このように、FIFOにより、バスの上
に与えられる各データは画像メモリの中に直接書き込ま
れる。
【0120】画像メモリ内でデータのパケットが転送さ
れる位置から、例えば画像メモリ内に記憶されたデータ
ポインタを更新することが可能である。ALUには転送
(読み出しまたは書き込み)動作が行なわれるアドレス
を含むアドレスレジスタARがある。データのパケット
の転送プログラムの最初にはこのアドレスレジスタAR
内でデータポインタの内容を書き込む命令が含まれてい
る。プログラムのこの後の命令は例えば各読み出し書き
込み命令においてアドレスレジスタの内容を適当に修正
する命令である。この適当な修正は増加(これは画像メ
モリ内の連続したアドレスでデータを読み出しまたは書
き込む量)またはより複雑な計算(例えば一連のマクロ
ブロックから画像ラインを取り出す循環的な計算)から
成る。
れる位置から、例えば画像メモリ内に記憶されたデータ
ポインタを更新することが可能である。ALUには転送
(読み出しまたは書き込み)動作が行なわれるアドレス
を含むアドレスレジスタARがある。データのパケット
の転送プログラムの最初にはこのアドレスレジスタAR
内でデータポインタの内容を書き込む命令が含まれてい
る。プログラムのこの後の命令は例えば各読み出し書き
込み命令においてアドレスレジスタの内容を適当に修正
する命令である。この適当な修正は増加(これは画像メ
モリ内の連続したアドレスでデータを読み出しまたは書
き込む量)またはより複雑な計算(例えば一連のマクロ
ブロックから画像ラインを取り出す循環的な計算)から
成る。
【0121】しかし、転送命令のそれぞれの実行におい
てアドレスレジスタARを修正する命令を実行すること
には同じループ内で転送命令として実行される命令が転
送命令の前または後に挿入されることが必要である。こ
の方法は現在の命令のみがループされることを示すプリ
フィックスI1を使用することにより生ずる利点と両立
しない。
てアドレスレジスタARを修正する命令を実行すること
には同じループ内で転送命令として実行される命令が転
送命令の前または後に挿入されることが必要である。こ
の方法は現在の命令のみがループされることを示すプリ
フィックスI1を使用することにより生ずる利点と両立
しない。
【0122】この欠点を避け更にシステムの速度を上げ
るため、ALUにはハードワイヤによりアドレス計算の
所定の数の所定の機能を行なうアドレス計算ユニット5
0−1が含まれている。計算ユニットの計算機能のそれ
ぞれは命令Iの追加フィールドI4により選択される
(フィールドI4もアクノレッジフィールドI3に対応
している)。このように、実行される各命令に対し、特
定なアドレス計算機能が選択される。各ハードワイヤ機
能は命令サイクルと同期してレジスタの状態を修正する
ように設計されている。
るため、ALUにはハードワイヤによりアドレス計算の
所定の数の所定の機能を行なうアドレス計算ユニット5
0−1が含まれている。計算ユニットの計算機能のそれ
ぞれは命令Iの追加フィールドI4により選択される
(フィールドI4もアクノレッジフィールドI3に対応
している)。このように、実行される各命令に対し、特
定なアドレス計算機能が選択される。各ハードワイヤ機
能は命令サイクルと同期してレジスタの状態を修正する
ように設計されている。
【0123】この構成により単一の読み出しまたは書き
込み命令のループ実行が行なわれるが、読み出しまたは
書き込み動作はレジスタAR内に含まれるアドレスで発
生するが、このレジスタは命令に関連のあるハードワイ
ヤ機能により各ループにおいて自動的に適当に更新され
る。
込み命令のループ実行が行なわれるが、読み出しまたは
書き込み動作はレジスタAR内に含まれるアドレスで発
生するが、このレジスタは命令に関連のあるハードワイ
ヤ機能により各ループにおいて自動的に適当に更新され
る。
【0124】前述のように、移動補償ベクトルと画像ポ
インタをメモリバスMBUSに接続されたFIFOに記
憶するかわり、これらのパラメータは計算ユニット50
−1のレジスタ50−2にスタックされる。画像同期パ
ルスISYNCのそれぞれにおいて、レジスタ50−2
の内容は計算ユニット50−1が新しい組の画像ポイン
タを計算するようにシフトされ、更にアドレスレジスタ
ARは初期化される。マクロブロック同期パルスMBS
のそれぞれにおいて、レジスタの内容は計算ユニット5
0−1が新しい組のベクトルを検討するようにシフトさ
れる。
インタをメモリバスMBUSに接続されたFIFOに記
憶するかわり、これらのパラメータは計算ユニット50
−1のレジスタ50−2にスタックされる。画像同期パ
ルスISYNCのそれぞれにおいて、レジスタ50−2
の内容は計算ユニット50−1が新しい組の画像ポイン
タを計算するようにシフトされ、更にアドレスレジスタ
ARは初期化される。マクロブロック同期パルスMBS
のそれぞれにおいて、レジスタの内容は計算ユニット5
0−1が新しい組のベクトルを検討するようにシフトさ
れる。
【0125】以下では、FIFOから画像メモリへのn
番目のデータのパケットの転送プログラムを検討する。
この転送プログラムは対象とするFIFOが与えるリク
エストにより初期化されるタスクに対応している。番号
nはパケットのn+1番目のデータを受けた時、対象と
するFIFOがリクエストをデセーブルするように選択
されている。
番目のデータのパケットの転送プログラムを検討する。
この転送プログラムは対象とするFIFOが与えるリク
エストにより初期化されるタスクに対応している。番号
nはパケットのn+1番目のデータを受けた時、対象と
するFIFOがリクエストをデセーブルするように選択
されている。
【0126】このようなプログラムは基本的には次の連
続した命令から成っている: −現在のタスクの最後の実行の間使用される最後のアド
レスをレジスタAR内で読み込むための命令(このアド
レスは例えばタスクに割り当てられた位置で画像メモリ
に記憶されている)。この命令のプリフィックスI1は
命令が実行された後(プライオリティのより高いタスク
により)中断されていないことを示している。フィール
ドI3とI4にはアクティブでない値が含まれている。 −命令がn回実行されタスクが中断されないことをプリ
フィックスI1が示している転送命令。フィールドI3
により使用されるFIFOが選択され、更にフィールド
I4により使用されるハードワイヤアドレス計算機能が
選択される。 −レジスタARの内容をセーブするための命令で、その
プリフックスI1はプログラムの実行が一番目の命令か
ら再開し、更にタスクが中断されることを示している。
フィールドI3とI4はアクティブでない値を含んでい
る。
続した命令から成っている: −現在のタスクの最後の実行の間使用される最後のアド
レスをレジスタAR内で読み込むための命令(このアド
レスは例えばタスクに割り当てられた位置で画像メモリ
に記憶されている)。この命令のプリフィックスI1は
命令が実行された後(プライオリティのより高いタスク
により)中断されていないことを示している。フィール
ドI3とI4にはアクティブでない値が含まれている。 −命令がn回実行されタスクが中断されないことをプリ
フィックスI1が示している転送命令。フィールドI3
により使用されるFIFOが選択され、更にフィールド
I4により使用されるハードワイヤアドレス計算機能が
選択される。 −レジスタARの内容をセーブするための命令で、その
プリフックスI1はプログラムの実行が一番目の命令か
ら再開し、更にタスクが中断されることを示している。
フィールドI3とI4はアクティブでない値を含んでい
る。
【0127】このようなタスクはプログラムの最後の命
令で(これはタスクを中断させる命令である)、すなわ
ちデータの全てのパケットが転送された時プライオリテ
ィの高いタスクに制御を移す。パケット内のデータの数
nが大きければ、頻繁にプライオリティのより高いタス
クに制御を移す必要がある。
令で(これはタスクを中断させる命令である)、すなわ
ちデータの全てのパケットが転送された時プライオリテ
ィの高いタスクに制御を移す。パケット内のデータの数
nが大きければ、頻繁にプライオリティのより高いタス
クに制御を移す必要がある。
【0128】これを行なうため、一番目のアプローチは
n番目のデータのパケットをデータがn1 …ni …np
のp個のサブパケットに分割し、更にデータがn1 …n
i …np のp個の連続したサブプログラムを与えること
である。これは3つのサブブロックにマクロブロックを
転送する場合にあたる。各サブプログラムには転送命令
がni 回実行される点を除いて、およびプログラムが一
番目の命令から再開されることを最後のサブプログラム
のセーブAR命令のみが示している点を除いて、前述の
3つの命令が含まれている。これにより、各サブプログ
ラムの終わりで、すなわち(n番目のデータの代わり)
ni 番目のデータの転送に多くても等しい比較的短い待
時間の後にプライオリティのより高いタスクに制御が移
る。これにより、更にサブプログラムのそれぞれで、異
なるアドレス計算機能を選択することができ、更にそれ
故複雑な計算機能を他のタスクにも使用することができ
る簡単なサブ機能に分割することができる。
n番目のデータのパケットをデータがn1 …ni …np
のp個のサブパケットに分割し、更にデータがn1 …n
i …np のp個の連続したサブプログラムを与えること
である。これは3つのサブブロックにマクロブロックを
転送する場合にあたる。各サブプログラムには転送命令
がni 回実行される点を除いて、およびプログラムが一
番目の命令から再開されることを最後のサブプログラム
のセーブAR命令のみが示している点を除いて、前述の
3つの命令が含まれている。これにより、各サブプログ
ラムの終わりで、すなわち(n番目のデータの代わり)
ni 番目のデータの転送に多くても等しい比較的短い待
時間の後にプライオリティのより高いタスクに制御が移
る。これにより、更にサブプログラムのそれぞれで、異
なるアドレス計算機能を選択することができ、更にそれ
故複雑な計算機能を他のタスクにも使用することができ
る簡単なサブ機能に分割することができる。
【0129】しかし、このアプローチにはni 番目のデ
ータの2つの転送の間で、セーブ命令およびレジスタA
Rの更新命令を実行することが必要であり、これにより
処理の速度が遅くなる。
ータの2つの転送の間で、セーブ命令およびレジスタA
Rの更新命令を実行することが必要であり、これにより
処理の速度が遅くなる。
【0130】この欠点を避ける二番目のアプローチはハ
ードワイヤ計算機能と同じ数のアドレスレジスタARを
ALU内に与えることから成る。このように、計算機能
のそれぞれは自身のアドレスレジスタの上で動作を行
い、更に(関連したタスクが中断されているので)機能
が中断されれば、機能が再度アクティブにされると関連
アドレスレジスタはアドレスを維持する。従って、これ
らのアドレスレジスタを更新またはセーブする必要があ
る。その結果、転送プログラムはアドレスレジスタの可
能な一番目の更新命令、可能な最後のセーブ命令、およ
びこれらの間の一連の転送命令のみから成るが、これら
のそれぞれはループ内で実行され、各転送命令のプリフ
ィックスI1はループの数を示している。
ードワイヤ計算機能と同じ数のアドレスレジスタARを
ALU内に与えることから成る。このように、計算機能
のそれぞれは自身のアドレスレジスタの上で動作を行
い、更に(関連したタスクが中断されているので)機能
が中断されれば、機能が再度アクティブにされると関連
アドレスレジスタはアドレスを維持する。従って、これ
らのアドレスレジスタを更新またはセーブする必要があ
る。その結果、転送プログラムはアドレスレジスタの可
能な一番目の更新命令、可能な最後のセーブ命令、およ
びこれらの間の一連の転送命令のみから成るが、これら
のそれぞれはループ内で実行され、各転送命令のプリフ
ィックスI1はループの数を示している。
【0131】プログラムはループ化された命令を実行す
る間中断されない。これを行なうため、ループ化された
命令のフィールドI1はアクティブビットによりプログ
ラムが中断されないことを示している。このアクティブ
ビットは(現在のプログラムが中断されるのを示すのに
役立つ)信号NEXTENをアクティブにしないプリフ
ィックス復号器により示される。
る間中断されない。これを行なうため、ループ化された
命令のフィールドI1はアクティブビットによりプログ
ラムが中断されないことを示している。このアクティブ
ビットは(現在のプログラムが中断されるのを示すのに
役立つ)信号NEXTENをアクティブにしないプリフ
ィックス復号器により示される。
【0132】−画像メモリとしてのダイナミックメモリ
の使用− 共通に使用される画像メモリはダイナミックメモリ(D
RAM)である。DRAMの利点は大きさが小さく、低
廉で、しかも記憶容量が大きいことである。しかし、D
RAMは2つのステップでアクセスされる。実際、DR
AMは幾つかのペ−ジに分割される。DRAM内で読み
出しまたは書き込みを行なう前、ページは特別なアドレ
スサイクルにより選択される必要がある;従ってワード
はこのページ内で通常の読み出しまたは書き込みサイク
ルにより選択される。ページが選択されると、このペー
ジのワードは通常の読み出しまたは書き込みサイクルに
より全てアクセスされることは勿論である。
の使用− 共通に使用される画像メモリはダイナミックメモリ(D
RAM)である。DRAMの利点は大きさが小さく、低
廉で、しかも記憶容量が大きいことである。しかし、D
RAMは2つのステップでアクセスされる。実際、DR
AMは幾つかのペ−ジに分割される。DRAM内で読み
出しまたは書き込みを行なう前、ページは特別なアドレ
スサイクルにより選択される必要がある;従ってワード
はこのページ内で通常の読み出しまたは書き込みサイク
ルにより選択される。ページが選択されると、このペー
ジのワードは通常の読み出しまたは書き込みサイクルに
より全てアクセスされることは勿論である。
【0133】DRAMの使用を最適にするため、マクロ
ブロックの輝度ブロックは一番目のページに記憶され、
色ブロックは他のページに記憶される。色ブロックはD
RAMのページにブロックの全数を記憶するように輝度
ブロックから分離される。処理ユニットの適当な機能は
マクロブロックを転送する間この分離されグループに分
けられたブロックを管理している。
ブロックの輝度ブロックは一番目のページに記憶され、
色ブロックは他のページに記憶される。色ブロックはD
RAMのページにブロックの全数を記憶するように輝度
ブロックから分離される。処理ユニットの適当な機能は
マクロブロックを転送する間この分離されグループに分
けられたブロックを管理している。
【0134】予測マクロブロックMPpはランダムな移
動補償ベクトルにより決定されるので、DRAMの幾つ
かのページはオーバラップされる。この場合、選択され
た計算機能により数Nがプリフィックス復号器に与えら
れるが、この数Nはベクトルから計算される。数Nは例
えば予測器の部分的に含まれる上側のページの中にある
予測器の列の画素の高さを示している。予測器を読み出
すことは全ての画素の列に対し、上側のページに含まれ
る列の一番目の部分の画素を読み出すため読み出し命令
を最初N回、次に下側のページの列の残りの部分を読み
出すためH−N回実行することから成るが(Hは列の画
素のトータルの高さ)、ページの変更は2つの読み出し
ループの間で行なわれる。
動補償ベクトルにより決定されるので、DRAMの幾つ
かのページはオーバラップされる。この場合、選択され
た計算機能により数Nがプリフィックス復号器に与えら
れるが、この数Nはベクトルから計算される。数Nは例
えば予測器の部分的に含まれる上側のページの中にある
予測器の列の画素の高さを示している。予測器を読み出
すことは全ての画素の列に対し、上側のページに含まれ
る列の一番目の部分の画素を読み出すため読み出し命令
を最初N回、次に下側のページの列の残りの部分を読み
出すためH−N回実行することから成るが(Hは列の画
素のトータルの高さ)、ページの変更は2つの読み出し
ループの間で行なわれる。
【0135】この構成により、予測器は適当な順序で読
み出されるが、これにより予測器の画素を再び読み出す
ため複雑なアドレス計算機能を与える必要性と、および
再び読み出される前に予測器の画素を一時的に読み出す
ためバッファに与える必要性を避けることができる。前
述の第EP−A−0503956号の特許申請におい
て、ページに含まれる部分的な予測器の画素の全てはよ
り複雑性が増すのを犠牲にしてページの変化の数を最小
にするため、他のページに含まれる部分的な予測器の画
素を読み出す前に読み出される。
み出されるが、これにより予測器の画素を再び読み出す
ため複雑なアドレス計算機能を与える必要性と、および
再び読み出される前に予測器の画素を一時的に読み出す
ためバッファに与える必要性を避けることができる。前
述の第EP−A−0503956号の特許申請におい
て、ページに含まれる部分的な予測器の画素の全てはよ
り複雑性が増すのを犠牲にしてページの変化の数を最小
にするため、他のページに含まれる部分的な予測器の画
素を読み出す前に読み出される。
【0136】この発明によれば、システムは十分高速で
あるので多くのページを変化することが可能である。更
に、このページの変化の数は64データビットのメモリ
バスの場合100回当たり約4クロックサイクルである
ことを表している。
あるので多くのページを変化することが可能である。更
に、このページの変化の数は64データビットのメモリ
バスの場合100回当たり約4クロックサイクルである
ことを表している。
【0137】−マイクロプロセッサを内蔵したMPEG
復号器− 図6はこの発明による、より詳細には幾つかのヘッダに
より与えられるプライベートデータを使用するようにさ
れたMPEG復号器の実施態様を示している。
復号器− 図6はこの発明による、より詳細には幾つかのヘッダに
より与えられるプライベートデータを使用するようにさ
れたMPEG復号器の実施態様を示している。
【0138】MPEG復号器は殆どの場合マイクロプロ
セッサを含むテレビジョン装置またはマイクロコンピュ
ータのような装置に使用されている。
セッサを含むテレビジョン装置またはマイクロコンピュ
ータのような装置に使用されている。
【0139】図6は同じ参照番号で示した図3と同じエ
レメントを示している。このシステムと図3のシステム
の違いはマイクロプロセッサ60により制御されるプロ
セッサバスPBUSがあることである。マイクロプロセ
ッサ60はVLD回路10のタスクの幾つかを実行する
ように設計されている、すなわち構成のパラメータを表
示コントローラ18に与え、量子化テーブルQTabを
逆量子化回路12に与え、画像ポインタImPtをメモ
リコントローラ24に与え、更にVLD回路が必要とす
る復号化パラメータ(“命令”)(画像のタイプと移動
補償ベクトルに関する復号化の情報)を与えるように設
計されている。
レメントを示している。このシステムと図3のシステム
の違いはマイクロプロセッサ60により制御されるプロ
セッサバスPBUSがあることである。マイクロプロセ
ッサ60はVLD回路10のタスクの幾つかを実行する
ように設計されている、すなわち構成のパラメータを表
示コントローラ18に与え、量子化テーブルQTabを
逆量子化回路12に与え、画像ポインタImPtをメモ
リコントローラ24に与え、更にVLD回路が必要とす
る復号化パラメータ(“命令”)(画像のタイプと移動
補償ベクトルに関する復号化の情報)を与えるように設
計されている。
【0140】更にこのシステムには2つの追加されたF
IFO、すなわち一方はFIFO62でバスPBUSか
らメモリ15内にデータを書き込むためのもので、他方
はFIFO64でメモリ15からバスPBUSの上でデ
ータを書き込むためのものが含まれている。FIFO6
4の内容は更に同期信号ISYNCを受け割り込みリク
エストIRQをマイクロプロセッサ60に与えるヘッダ
復号器66により使用されている。
IFO、すなわち一方はFIFO62でバスPBUSか
らメモリ15内にデータを書き込むためのもので、他方
はFIFO64でメモリ15からバスPBUSの上でデ
ータを書き込むためのものが含まれている。FIFO6
4の内容は更に同期信号ISYNCを受け割り込みリク
エストIRQをマイクロプロセッサ60に与えるヘッダ
復号器66により使用されている。
【0141】FIFO64は圧縮データをメモリ15か
ら受ける。ヘッダ復号器66はシーケンスおよび画像ヘ
ッダを検出し、更にこれらのヘッダの1つが検出された
時マイクロプロセッサ60に割り込みを行なうようにさ
れている。マイクロプロセッサ60の役目はFIFO6
4内でヘッダを読み出すこと、これらのヘッダのパラメ
ータを取り出すこと、量子化テ−ブルを回路12に、構
成のパラメータを表示コントローラ18に、VLD回路
のための命令をシーケンサ28に与えることであり、更
に前述の4つの画像ポインタ(RP,FP,BP,D
P)を計算しメモリコントローラ24に与えることであ
る。
ら受ける。ヘッダ復号器66はシーケンスおよび画像ヘ
ッダを検出し、更にこれらのヘッダの1つが検出された
時マイクロプロセッサ60に割り込みを行なうようにさ
れている。マイクロプロセッサ60の役目はFIFO6
4内でヘッダを読み出すこと、これらのヘッダのパラメ
ータを取り出すこと、量子化テ−ブルを回路12に、構
成のパラメータを表示コントローラ18に、VLD回路
のための命令をシーケンサ28に与えることであり、更
に前述の4つの画像ポインタ(RP,FP,BP,D
P)を計算しメモリコントローラ24に与えることであ
る。
【0142】更にマイクロプロセッサ60はヘッダから
オンスクリーン表示データとプライベートデータを取り
出す。オンスクリーン表示データはFIFO62に与え
られ、メモリ15の領域OSDの中にバスMBUSを通
り伝えられる。プライベートデータはマイクロプロセッ
サ60に内蔵されたメモリ(図示してない)に記憶さ
れ、外部エレメントにより伸長システムに使用される。
オンスクリーン表示データとプライベートデータを取り
出す。オンスクリーン表示データはFIFO62に与え
られ、メモリ15の領域OSDの中にバスMBUSを通
り伝えられる。プライベートデータはマイクロプロセッ
サ60に内蔵されたメモリ(図示してない)に記憶さ
れ、外部エレメントにより伸長システムに使用される。
【0143】この構成により、VLD回路により行なわ
れるタスクは少なくなり、これにより速度が増加し複雑
でなくなる。ヘッダを検出しているのでVLD回路はま
だシーケンスと画像ヘッダを検出しているのは勿論であ
るが、処理はしていない。
れるタスクは少なくなり、これにより速度が増加し複雑
でなくなる。ヘッダを検出しているのでVLD回路はま
だシーケンスと画像ヘッダを検出しているのは勿論であ
るが、処理はしていない。
【0144】FIFO62からメモリ15への転送およ
びメモリ15からFIFO64への転送はメモリコント
ローラ24により行なわれる追加されたタスクである
が、これらのタスクは他のFIFOとの関連で記憶され
たリクエスト/アクノレッジシステムにより実施されて
いる。FIFO62に関連したタスクは例えばFIFO
20と22のプライオリティの間のプライオリティを有
しており、更にFIFO64に関連したタスクは例えば
FIFO20と21のプライオリティの間のプライオリ
ティを有している。
びメモリ15からFIFO64への転送はメモリコント
ローラ24により行なわれる追加されたタスクである
が、これらのタスクは他のFIFOとの関連で記憶され
たリクエスト/アクノレッジシステムにより実施されて
いる。FIFO62に関連したタスクは例えばFIFO
20と22のプライオリティの間のプライオリティを有
しており、更にFIFO64に関連したタスクは例えば
FIFO20と21のプライオリティの間のプライオリ
ティを有している。
【0145】図6のシーケンサ28は図3のシーケンサ
に関して追加された役目を果たしている。この役目はV
LD回路の命令をレジスタ内にスタックすることであ
り、信号ISYNCと同期してVLD回路に与えること
にある。
に関して追加された役目を果たしている。この役目はV
LD回路の命令をレジスタ内にスタックすることであ
り、信号ISYNCと同期してVLD回路に与えること
にある。
【0146】マイクロプロセッサ60は復号器自身によ
り実施することが複雑であるが、マイクロプロセッサの
可能性を大幅に減少することのない幾つかのMPEG復
号器のタスクを取り扱っている。実際、例えばINTE
L486型のプロセッサに対しこれらのタスクはほぼ1
%のマイクロプロセッサを減少させることに対応し、プ
ライオリティの一番低い割り込みル−チンにより処理さ
れる。
り実施することが複雑であるが、マイクロプロセッサの
可能性を大幅に減少することのない幾つかのMPEG復
号器のタスクを取り扱っている。実際、例えばINTE
L486型のプロセッサに対しこれらのタスクはほぼ1
%のマイクロプロセッサを減少させることに対応し、プ
ライオリティの一番低い割り込みル−チンにより処理さ
れる。
【0147】−高精細画像の処理− この発明による伸長システム、すなわちMPEG復号器
は標準精細テレビジョン画像(例えば、720×480
画素の画像)を処理することができる。高精細画像を処
理するため、計算用のパワーが増加する。例えば、14
40×960画素の高精細画像を処理するため、少なく
とも4つのMPEG復号器を並列で動作させる必要があ
る。
は標準精細テレビジョン画像(例えば、720×480
画素の画像)を処理することができる。高精細画像を処
理するため、計算用のパワーが増加する。例えば、14
40×960画素の高精細画像を処理するため、少なく
とも4つのMPEG復号器を並列で動作させる必要があ
る。
【0148】図7は4つのスライスSL1−SL4に分
割された高精細画像を示しており、それぞれのスライス
はMPEG復号器により処理される。
割された高精細画像を示しており、それぞれのスライス
はMPEG復号器により処理される。
【0149】図8は高精細画像の4つのスライスを処理
するため接続された4つのMPEG復号器を示してい
る。各MPEG復号器の入力は圧縮データバスCDin
に接続されており、各復号器はそれぞれの画像メモリに
より動作する。各復号器の表示コントローラは関連のあ
るスライスに対応した表示同期信号を受け、更にこれら
の表示コントローラにより与えられるデータは多重化さ
れている。このように、1つの復号器の表示コントロー
ラは関連のあるスライスが表示される時間毎に水平同期
パルスHSYNCを受け、更にある画像から他の画像へ
の移転を示す垂直同期パルスVSYNCを受ける。
するため接続された4つのMPEG復号器を示してい
る。各MPEG復号器の入力は圧縮データバスCDin
に接続されており、各復号器はそれぞれの画像メモリに
より動作する。各復号器の表示コントローラは関連のあ
るスライスに対応した表示同期信号を受け、更にこれら
の表示コントローラにより与えられるデータは多重化さ
れている。このように、1つの復号器の表示コントロー
ラは関連のあるスライスが表示される時間毎に水平同期
パルスHSYNCを受け、更にある画像から他の画像へ
の移転を示す垂直同期パルスVSYNCを受ける。
【0150】しかし、多数の復号器を並列に簡単に配列
することは十分でない。実際、図7に関連しスライスS
L3の上側の部分のマクロブロックMB1を再形成する
ため、スライスSL2の下側の部分にある予測マクロブ
ロックMBp1を使用することが必要である。同様にス
ライスSL3の下側の部分にマクロブロックMB2を再
形成するため、スライスSL4の上側の部分にある予測
マクロブロックMBp2を使用することが必要である。
言い換えれば、スライスSL3を含んだ復号器はスライ
スSL2とSL4を含んだ復号器のメモリをアクセスす
ることができる。
することは十分でない。実際、図7に関連しスライスS
L3の上側の部分のマクロブロックMB1を再形成する
ため、スライスSL2の下側の部分にある予測マクロブ
ロックMBp1を使用することが必要である。同様にス
ライスSL3の下側の部分にマクロブロックMB2を再
形成するため、スライスSL4の上側の部分にある予測
マクロブロックMBp2を使用することが必要である。
言い換えれば、スライスSL3を含んだ復号器はスライ
スSL2とSL4を含んだ復号器のメモリをアクセスす
ることができる。
【0151】この発明は標準精細画像を復号するため使
用されるMPEG復号器の簡単な変形を提示している。
この変形によりあらゆる精細の画像を処理するために多
数のMPEGの復号器を並列に有することができる。
用されるMPEG復号器の簡単な変形を提示している。
この変形によりあらゆる精細の画像を処理するために多
数のMPEGの復号器を並列に有することができる。
【0152】これを達成するため、この発明では各メモ
リが関連のあるスライスと隣接スライスの境界領域に対
応したマージンとを含むようにするため復号器に関連の
あるメモリの大きさが大きくなる。境界領域の高さは移
動補償ベクトルの垂直の最大の大きさによって決定され
る。以下ではこの大きさは1/2画素スライスの高さに
対応しているものと仮定する。このようにすると、スラ
イスに関連のあるメモリは関連のあるスライス、すなわ
ち隣接上側スライスの下側半分と隣接下側スライスの上
側半分を含むのに適した大きさを有する。最後の復号器
のメモリの大きさは関連スライスと1/2スライスを含
むようにされている。
リが関連のあるスライスと隣接スライスの境界領域に対
応したマージンとを含むようにするため復号器に関連の
あるメモリの大きさが大きくなる。境界領域の高さは移
動補償ベクトルの垂直の最大の大きさによって決定され
る。以下ではこの大きさは1/2画素スライスの高さに
対応しているものと仮定する。このようにすると、スラ
イスに関連のあるメモリは関連のあるスライス、すなわ
ち隣接上側スライスの下側半分と隣接下側スライスの上
側半分を含むのに適した大きさを有する。最後の復号器
のメモリの大きさは関連スライスと1/2スライスを含
むようにされている。
【0153】この構成により、マクロブロックのスライ
スを再形成するため使用される全ての予測マクロブロッ
クはこのスライスを内蔵する復号器のメモリコントロー
ラによりアクセスされる。
スを再形成するため使用される全ての予測マクロブロッ
クはこのスライスを内蔵する復号器のメモリコントロー
ラによりアクセスされる。
【0154】更に、各復号器の間には交換システムがあ
るが、これにより復号器はスライスのデータをメモリに
与えることと、同じデータを隣接復号器のメモリに与え
ることが行なわれる。
るが、これにより復号器はスライスのデータをメモリに
与えることと、同じデータを隣接復号器のメモリに与え
ることが行なわれる。
【0155】図9は並列に接続されたこの発明による2
つの復号器の内部構造を部分的に示している。各復号器
には再形成されたマクロブロックを復号器のメモリに与
えるための加算器16とFIFO26が示されている。
加算器16はFIFO26を通し復号器のメモリにデー
タを与えており、同時に隣接復号器に接続された交換バ
スXBUSの上で同じデータを与えている。各復号器に
は更に復号器のメモリバスMBUSに接続され、2つの
隣接復号器の交換バスからデータをそれぞれ受ける2つ
のFIFO90と92が含まれている。復号器の他のF
IFOと同じく、FIFO90と92のデータは復号器
のメモリコントローラにより行なわれるリクエスト/ア
クノレッジシステムを通して復号器のメモリに転送され
る。FIFO90に関連のあるタスクはFIFO90か
ら上側の境界スライスのメモリ領域1/2SLにデータ
を転送することであり、更にFIFO92に関連のある
タスクはFIFO92から下側の境界スライスのメモリ
領域1/2SLにデータを転送することである。
つの復号器の内部構造を部分的に示している。各復号器
には再形成されたマクロブロックを復号器のメモリに与
えるための加算器16とFIFO26が示されている。
加算器16はFIFO26を通し復号器のメモリにデー
タを与えており、同時に隣接復号器に接続された交換バ
スXBUSの上で同じデータを与えている。各復号器に
は更に復号器のメモリバスMBUSに接続され、2つの
隣接復号器の交換バスからデータをそれぞれ受ける2つ
のFIFO90と92が含まれている。復号器の他のF
IFOと同じく、FIFO90と92のデータは復号器
のメモリコントローラにより行なわれるリクエスト/ア
クノレッジシステムを通して復号器のメモリに転送され
る。FIFO90に関連のあるタスクはFIFO90か
ら上側の境界スライスのメモリ領域1/2SLにデータ
を転送することであり、更にFIFO92に関連のある
タスクはFIFO92から下側の境界スライスのメモリ
領域1/2SLにデータを転送することである。
【0156】スライスSLのデータの全ては交換バスX
BUSの上に与えられているので、FIFO90と92
の前にはそれぞれバリア回路94と96があり当該ハー
フスライスのデータにフィルタが加えられている。これ
を行なうため、バリア回路94にはデータカウンタがあ
り、カウントされたデータの数が1/2スライスのデー
タの数に達すると直ぐFIFO90のデータを転送す
る。バリア回路96にはデータカウンタがあるが、これ
はカウントされたデータの数が1/2スライスのデータ
数に達する時までFIFO92にデータを転送する。バ
リア回路94と96のカウンタは例えば垂直同期信号V
SYNCにより2つのスライスの表示の間で初期化され
る。
BUSの上に与えられているので、FIFO90と92
の前にはそれぞれバリア回路94と96があり当該ハー
フスライスのデータにフィルタが加えられている。これ
を行なうため、バリア回路94にはデータカウンタがあ
り、カウントされたデータの数が1/2スライスのデー
タの数に達すると直ぐFIFO90のデータを転送す
る。バリア回路96にはデータカウンタがあるが、これ
はカウントされたデータの数が1/2スライスのデータ
数に達する時までFIFO92にデータを転送する。バ
リア回路94と96のカウンタは例えば垂直同期信号V
SYNCにより2つのスライスの表示の間で初期化され
る。
【0157】この発明による高精細画像処理システムに
は4つの個々のMPEG復号器に対し75%増加した大
きさのメモリが必要である。しかし、増加したメモリの
価格はシステムを簡単にすることにより補われる。
は4つの個々のMPEG復号器に対し75%増加した大
きさのメモリが必要である。しかし、増加したメモリの
価格はシステムを簡単にすることにより補われる。
【0158】以上この発明の1つの特別な実施態様につ
いて記載したが、種々の変更、改造および改善が当業者
には容易に考えつくであろう。このような変更、改造お
よび改善はこの開示の一部であり、この発明の内容およ
び範囲内のものである。従って前述の記載は一例によっ
ているが、これにより制限されるものではない。
いて記載したが、種々の変更、改造および改善が当業者
には容易に考えつくであろう。このような変更、改造お
よび改善はこの開示の一部であり、この発明の内容およ
び範囲内のものである。従って前述の記載は一例によっ
ているが、これにより制限されるものではない。
【図1】MPEG伸長システムの主なエレメント。
【図2A】マクロブロックの復号化ステップ。
【図2B】マクロブロック構造の例。
【図3】この発明による伸長システムのアーキテクチ
ャ、すなわちMPEG復号器の実施態様。
ャ、すなわちMPEG復号器の実施態様。
【図4】図3の伸長システムの動作を示すタイミングチ
ャート。
ャート。
【図5】この発明によるメモリコントローラの好都合な
実施態様。
実施態様。
【図6】この発明による伸長システムの他の実施態様。
【図7】多数の並列伸長システムから成りスライスによ
り処理される高精細テレビジョン画像。
り処理される高精細テレビジョン画像。
【図8】高精細画像を処理するため並列に接続された多
数の伸長システム。
数の伸長システム。
【図9】簡単な並列接続をしたこの発明による復号器の
内部構造の実施態様。
内部構造の実施態様。
10 可変長復号器(VLD) 11 ランレベル復号器(RLD) 12 逆量子化回路(Q-1) 13 逆離散コサイン変換回路(DCT-1) 14 ハーフ画素フィルタ 15 メモリ 16 加算器 18 表示コントローラ 20、21、22 バッファメモリ(FIFO) 24 メモリコントローラ 26 FIFO 28 シーケンス 50 処理ユニット 50−1 アドレス計算ユニット 50−2 レジスタ 52 プライオリティ復号器 54 不揮発性命令メモリ(ROM) 56 増加回路 58 プリフィックス復号器 59 アクノレッジ回路 60 マイクロプロセッサ 62、64、90、92 FIFO 66 ヘッダ復号器 94、96 バリア回路
Claims (5)
- 【請求項1】 画像メモリ(MEM)に復号化された画
像データを与える復号化装置(DEC)を有し画像に基
づき圧縮データを処理するシステムで、前記の装置には
現在復号化された画像の現在のブロック(MB)を復号
化するため、予め復号化された画像の予測ブロック(M
Bp)が必要であり、更に前記の復号化装置は多数の画
像の当該ブロックの特定スライス(SL)と、前記特定
スライスのブロックを復号化するのに役立つ予測ブロッ
クを含む少なくとも1つのマージン(1/2SL)とを
それぞれ記憶する画像メモリ(MEM)を内蔵している
多数の復号器(DEC)から成っている。 - 【請求項2】 それぞれの対象とする復号器(DEC)
が画像メモリ(MEM)内に1つのマージンとして少な
くとも1つの他の特定スライスの境界領域を記憶するた
めと、少なくとも1つの二番目の復号器に1つのマージ
ンとして対象とする復号器と関連を有する特定スライス
の境界領域を与えるための装置(XBUS,90、9
2)を有する請求項1に記載のシステム。 - 【請求項3】 それぞれの対象とする復号器(DEC)
が次のものを有する請求項1に記載のシステム: −特定スライスから画像ブロックを受ける一番目のバッ
ファメモリ(26); −他の特定スライスの隣接領域から画像ブロックを受け
る少なくとも1つの二番目のバッファメモリ(90、9
2); −対象とする復号器の一番目のバッファメモリ(26)
と、他の復号器の二番目のバッファメモリ(90、9
2)に、特定スライスのブロックを与える最後の処理回
路(16); −一番目のバッファメモリ内でブロックを読み出し、特
定スライスに対応したアドレスで画像メモリ内にブロッ
クを書き込み、二番目のバッファメモリ内でブロックを
読み出し、更にマージンに対応したアドレスでブロック
を書き込むためのメモリコントローラ(24)。 - 【請求項4】 所要のマージンに対応したデータのみ二
番目のバッファメモリに書き込むため、それぞれの二番
目のバッファメモリ(90、92)の前にバリア回路
(94、96)が置かれている請求項3に記載のシステ
ム。 - 【請求項5】 処理される画像が同じ高さの4つの水平
スライスに分割されている高精細テレビジョン画像であ
る請求項1に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9313294 | 1993-10-29 | ||
FR9313294A FR2711877B1 (fr) | 1993-10-29 | 1993-10-29 | Système de traitement d'images haute définition. |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07184214A true JPH07184214A (ja) | 1995-07-21 |
JP3087588B2 JP3087588B2 (ja) | 2000-09-11 |
Family
ID=9452635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06284580A Expired - Fee Related JP3087588B2 (ja) | 1993-10-29 | 1994-10-26 | 画像処理システム |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0651579A1 (ja) |
JP (1) | JP3087588B2 (ja) |
FR (1) | FR2711877B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008543207A (ja) * | 2005-06-01 | 2008-11-27 | エヌエックスピー ビー ヴィ | マルチパスビデオ復号方法および装置 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5623311A (en) * | 1994-10-28 | 1997-04-22 | Matsushita Electric Corporation Of America | MPEG video decoder having a high bandwidth memory |
DE19524688C1 (de) * | 1995-07-06 | 1997-01-23 | Siemens Ag | Verfahren zur Dekodierung und Kodierung eines komprimierten Videodatenstroms mit reduziertem Speicherbedarf |
JP3228874B2 (ja) * | 1996-06-05 | 2001-11-12 | 松下電器産業株式会社 | 圧縮ディジタルビデオビットストリーム分割方法及び装置、並びにその復号方法及び装置 |
JPH1023402A (ja) * | 1996-06-28 | 1998-01-23 | Matsushita Electric Ind Co Ltd | 並列ビデオデコーダシステム |
JPH1023375A (ja) * | 1996-07-04 | 1998-01-23 | Matsushita Electric Ind Co Ltd | 順次ディジタルビデオ復号化装置 |
KR0175742B1 (ko) * | 1996-10-05 | 1999-05-15 | 한국전자통신연구원 | 이중화 시스템에서 동작 분리 고속 데이타 전송장치 |
WO1998044745A1 (en) * | 1997-03-31 | 1998-10-08 | Sharp Kabushiki Kaisha | Apparatus and method for simultaneous video decompression |
DE19916604A1 (de) * | 1999-04-13 | 2000-10-26 | Matthias Zahn | Vorrichtung und Verfahren zur Bearbeitung von zeitlich aufeinanderfolgenden Datenpaketen |
DE602005020218D1 (de) | 2004-07-29 | 2010-05-12 | St Microelectronics Pvt Ltd | Videodekoder mit Parallelprozessoren für die Dekodierung von Makroblocks |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2240231B (en) * | 1990-01-19 | 1994-03-30 | British Broadcasting Corp | High definition television coder/decoder |
US5138447A (en) * | 1991-02-11 | 1992-08-11 | General Instrument Corporation | Method and apparatus for communicating compressed digital video signals using multiple processors |
US5212742A (en) * | 1991-05-24 | 1993-05-18 | Apple Computer, Inc. | Method and apparatus for encoding/decoding image data |
KR100254956B1 (ko) * | 1991-12-23 | 2002-12-18 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 재귀비데오신호프로세서 |
DE69331174T2 (de) * | 1992-06-29 | 2002-06-06 | Canon K.K., Tokio/Tokyo | Bildverarbeitungsvorrichtung |
US5379070A (en) * | 1992-10-02 | 1995-01-03 | Zoran Corporation | Parallel encoding/decoding of DCT compression/decompression algorithms |
-
1993
- 1993-10-29 FR FR9313294A patent/FR2711877B1/fr not_active Expired - Fee Related
-
1994
- 1994-10-25 EP EP94410094A patent/EP0651579A1/fr not_active Withdrawn
- 1994-10-26 JP JP06284580A patent/JP3087588B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008543207A (ja) * | 2005-06-01 | 2008-11-27 | エヌエックスピー ビー ヴィ | マルチパスビデオ復号方法および装置 |
US8520741B2 (en) | 2005-06-01 | 2013-08-27 | Entropic Communications, Inc. | Multiple pass video decoding method and device |
Also Published As
Publication number | Publication date |
---|---|
EP0651579A1 (fr) | 1995-05-03 |
FR2711877B1 (fr) | 1996-02-02 |
FR2711877A1 (fr) | 1995-05-05 |
JP3087588B2 (ja) | 2000-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3687107B2 (ja) | 画像処理システム | |
US6104751A (en) | Apparatus and method for decompressing high definition pictures | |
USRE48845E1 (en) | Video decoding system supporting multiple standards | |
JP3713723B2 (ja) | マルチタスクプロセッサ | |
US5909224A (en) | Apparatus and method for managing a frame buffer for MPEG video decoding in a PC environment | |
US7034897B2 (en) | Method of operating a video decoding system | |
US7016418B2 (en) | Tiled memory configuration for mapping video data and method thereof | |
US7898547B2 (en) | Memory controller for handling multiple clients and method thereof | |
US6963613B2 (en) | Method of communicating between modules in a decoding system | |
US5818967A (en) | Video decoder engine | |
US7885336B2 (en) | Programmable shader-based motion compensation apparatus and method | |
CA2096585A1 (en) | Decoder for compressed video signals | |
JPH08123953A (ja) | 画像処理装置 | |
US5778096A (en) | Decompression of MPEG compressed data in a computer system | |
JP3087588B2 (ja) | 画像処理システム | |
US5774676A (en) | Method and apparatus for decompression of MPEG compressed data in a computer system | |
US5752266A (en) | Method controlling memory access operations by changing respective priorities thereof, based on a situation of the memory, and a system and an integrated circuit implementing the method | |
KR20130095206A (ko) | 신호 처리 장치 및 반도체 장치 | |
EP1147671B1 (en) | Method and apparatus for performing motion compensation in a texture mapping engine | |
JP3258300B2 (ja) | Dma転送装置および画像復号装置 | |
JPH08314793A (ja) | メモリアクセス制御方法および該方法を適用した半導体集積回路および画像復号装置 | |
EP1351513A2 (en) | Method of operating a video decoding system | |
JP3307822B2 (ja) | 画像処理装置 | |
JP2009100206A (ja) | 画像符号化データ復号化装置 | |
JPH114443A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000613 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |