JP2750462B2 - ビデオ信号プロセッサ、圧縮されたビデオデータを処理するための装置、および復元されたビデオ信号を生成する集積回路 - Google Patents

ビデオ信号プロセッサ、圧縮されたビデオデータを処理するための装置、および復元されたビデオ信号を生成する集積回路

Info

Publication number
JP2750462B2
JP2750462B2 JP1501081A JP50108189A JP2750462B2 JP 2750462 B2 JP2750462 B2 JP 2750462B2 JP 1501081 A JP1501081 A JP 1501081A JP 50108189 A JP50108189 A JP 50108189A JP 2750462 B2 JP2750462 B2 JP 2750462B2
Authority
JP
Japan
Prior art keywords
value
signal
register
data
pixel
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 - Lifetime
Application number
JP1501081A
Other languages
English (en)
Other versions
JPH03501556A (ja
Inventor
ヘンリー サイモン,アレン
リロイ スプレイグ,デービツド
マイケル ケイツ,ジヨン
フランシス パテイ,マイケル
ハーニー,ケビン
デービツド ライアン,ローレンス
ジヨン フエデーレ,ニコラ
アストル,ブライアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22398580&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2750462(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Intel Corp filed Critical Intel Corp
Publication of JPH03501556A publication Critical patent/JPH03501556A/ja
Application granted granted Critical
Publication of JP2750462B2 publication Critical patent/JP2750462B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Description

【発明の詳細な説明】 この発明は圧縮されたビデオ信号をデコードし、伸張
(復元)する回路に関する。
近年、ビデオ信号圧縮の分野では大きな進歩がなされ
ている。デジタル的にコード化されたビデオ信号の伝送
あるいは記憶を容易にするために、その信号の冗長度を
減じるために、いくつかの方法が開発されている。この
出願においては、3つの方法、以下では、絶対コード
化、相対的コード化及び差分パルスコード変調(DPCM)
コード化と称する方法が特に関係がある。これらのビデ
オ圧縮技法を以下に説明する。
絶対コード化された画像というのは、ある画像を複数
の隣接したセグメントに分割し、各セグメントにフィル
(fill)値を割当てることによって生成される。このフ
ィル値は、一定のルミナンス及び/またはクロミナンス
値とすることもできるし、またセグメント中のピクセル
の位置の関数としてピクセル毎に変わる値である場合も
ある。絶対コード化画像がデコードされて表示される
と、再構成されたセグメントからなるモザイクが生じ
る。
絶対コード化法は、各々が元の画像の異なるセグメン
トを記述する複数のデータ・レコード(記録)を作り出
す。これらのレコードの各々には、いくつかのフィール
ドが含まれており、各フィールドには1個以上の2進語
が含まれている。絶対コード化画像からのレコードの一
例が第1A図に示されている。このレコードは、セグメン
トの左上隅のピクセルの水平及び垂直方向の位置を示す
2つの1バイトのフィールドX POSとY POSを含んでい
る。このレコードはさらに、そのセグメントを規定する
水平及び垂直方向における、それぞれのピクセル数を示
す1バイトのフィールドWと1バイトのフィールドHと
を含んでいる。絶対コード・レコード中の最後の3つの
フィールドA、B及びCはセグメントがどのようにフィ
ルされるかを決定する。これらの値は、ある特定のピク
セルの値PVがどのように決めるかを記述する双線形(bi
linear)式(1)の係数である。
PV=AX+BY+C (1) この式(1)において、Cはセグメントの左上隅にお
ける、例えば、ルミナンスレベルを表わす1バイト値で
ある。AとBは、各々、水平及び垂直方向に連続するピ
クセル間でルミナンス値が変化する量を表わす2バイト
の値である。XとYは、セグメントの左上隅に対するピ
クセルのそのセグメント内の位置を示す値である。絶対
コードのレコードのこの例では、ビデオ信号のルミナン
ス及び/またはカラー情報信号成分の各々について別々
のレコード群があり、また、セグメントの全てが方形で
あるとしている。絶対コード化システムのより一般的な
例は、ここに参考として挙げる“Signal Processing"
(オランダ)Vol.11,No.1,1986年7月、47-60頁のコー
チャ(M.Kocher)氏及びレオナルディ(R.Leonardi)氏
による論文「Adaptive Region Growing Technique Usin
g Polynominal Functions For Image Approximation
(画像近似用の多項関数を用いた適応型領域成長技
法)」に見出される。
前述した2番目のビデオ信号圧縮法、相対的コード化
では、画像を、複数画像(multi−image)シーケンス中
の前の画像から対応セグメントを用いて規定される互い
に隣接したセグメントに分割される。このコード化法は
フルモーション(全運動)ビデオを表わす一組のビデオ
フィールド用に適している。この方法を用いてコード化
した画像は複数のデータ・レコードにより表わされる。
レコードの一例が第1B図に示されている。フィールドX
POS、Y POS、W及びHは絶対レコードの場合と同じであ
る。2つの1バイトのフィールドΔXとΔYは、その前
のビデオフィールドにおける対応したセグメントに対す
るその時のビデオ信号フィールド中のセグメントの水平
及び垂直方向のピクセル変位を示す。これらの変位を表
わす値は、表示画像中の互いに隣接するピクセル間の距
離の分数を単位としたものとすることができる。
相対的コード・レコードにおけるフィールドA、B及
びCは絶対コード・レコードにおける対応するフィール
ドと同じである。これらの値は、セグメント中のピクセ
ル値に加えられる値を作るために、双線形の式(1)の
係数として用いられる。
相対的コード化された画像に対するレコード形式(フ
ォーマット)も、セグメントは方形であり、かつ、画像
のルミナンス及びカラー情報成分の一方のみがある与え
られたレコードによって記述されるとしている。相対的
コード化の複雑さについての全般的な記述は、ここに参
考として挙げる“IEEE Transactions on Communication
s"、1977年4月、448-455頁のブロフェリオ(S.Broffer
io)氏及びロッカ(F.Rocca)氏の論文「Interframe Re
dundancy Reduction of Video Signal Generated by Tr
anslating Opjcts(対象を変換して生成したビデオ信号
のフレーム間冗長度の減少)」に示されている。
前述した第3のコード化法、DPCMは、一般的には、画
像中の各ピクセルを、予測ピクセル値と差分ピクセル値
との和として記述する。この方法は、絶対コード・レコ
ードあるいは相対的コード・レコードによっては簡単に
記述できない画像中のセグメントに適用される。DPCMレ
コードの一例が第1C図に示されている。このレコードに
おけるフィールドX POS、Y POS、W及びHは、前述した
絶対コード・レコード及び相対的コード・レコードの場
合と同じである。DPCMコード・レコードの残余の部分は
Nバイトからなるシリーズである。ここでNはW及びH
フィールドに保持されている値の積である。これらNバ
イトの中の第1のものDP0は、一定の予測値、例えば、1
28に加算されると、セグメントの左上隅のピクセルを生
成するような差の値である。次のバイトDP1は、和128+
DP0に加算されてセグメントの最上部の線上の次に続く
ピクセル値を生成する差の値である。同様に、値DP
2は、128とDP0とDP1の累算和に加算されて、セグメント
の最上部の線上の第3番目のピクセル値を生成する差の
値である。DPCMコード・レコード中のこれらの連続する
値は、各々、レコード中の先行する値の累算値としてピ
クセル値を記述する。DPCMコード化技術を用いたビデオ
信号圧縮システムの一例は、ここに参考として挙げる米
国特許第4,125,861号「Video Signal Encoding(ビデオ
信号のコード化)」に見出すことができる。
DPCMデータが第1C図に示すように記憶または伝送され
る場合、ピクセルを記述する値の各々が、コード化され
ていないピクセル値と同じように1データバイトを占有
するので、DPCMコード化技法を用いる利点が殆どあるい
は全くない。しかし、参考として挙げた特許第4,125,86
1号に記載されているように、比較的に小さな値を有す
るコード化されたバイトの発生する頻度は、比較的大き
な値を持つコード化されたバイトの発生頻度よりはるか
に大きい。このコード化されたバイトの不均一な分布
が、上記の参考として挙げた特許においては、より大き
な値のサンプルに対して用いられるビット数よりも少な
いビット数でより小さな値のサンプルをコード化するこ
とによりビデオデータストリームを更に圧縮するために
利用されている。この形式の圧縮を行なう可変長統計的
エンコーダはこの技術分野では公知である。この形式の
コード、ハフマン(Huffman)コード、を生成するため
のアルゴリデムは、ここに参考として挙げるアブラムソ
ン(N.Abramson)著、「Information Theory and Codin
g(情報論理及びコード化)」、McGraw−Hill社刊、196
3年、77-85頁に記載されている。
上述したコード化法の各々は、ある型のビデオ情報に
対しては良好に働くが、別の型のものには、うまく働か
ない。コード化される画像の、比較的大きな領域が均一
または直線的に変化するルミナンスまたはカラー情報を
持っているような静止画像あるいはモーションシーケン
スの一番目のビデオフィールドに対しては、絶対コード
化法が最も適している。相対コード化法は、モーション
シーケンスの2番目及びそれ以後のビデオフィールドに
対して最適である。DPCMコード化法は、細かいディーテ
ルな情報の領域を含む画像に最適である。
これらのコードによって効率的に表わされるビデオ情
報の型が異なるために、1つのビデオ画像を表わすため
に、2つ以上のコードを組合わせることが望ましい場合
がある。例えば、絶対コード化法とDPCMコード化法を組
合わせると、高低両レベルのディーテルを含む、画像を
コンパクトな形で表わすことができる。モーションシー
ケンスに対しては、画像の一部分を相対的コード化法を
用いて表わすことが望ましいであろう。第1A図、第1B図
及び第1C図に示すように、これら3つのコード化法は、
コンパチブルなレコード・フォーマットを作るために調
整できる。
しかし、一旦そのようなコード化した後は、再生画像
が自然なディーテルと動きをもって表示されるように、
画像を高速でデコードすることが望ましい。
この発明の原理によれば、並列パイプライン型ビデオ
信号処理システムが提供される。このシステムは、圧縮
されたビデオ情報の源によって供給される可変長コード
化されたデータから固定長データ値を生成する統計的デ
コーダを含んでいる。さらに、このシステムは、圧縮さ
れたビデオ情報とピクセルデータを合成しかつ改変する
算術的合成(arithmetic combining)回路を含んでい
る。このシステムにはピクセル補間器が含まれていて、
前にデコードされたピクセル値の間のピクセル値の生成
を可能としている。統計的デコーダ、算術的合成回路及
びピクセル値補間器は同時に動作するように、シーケン
シング回路によって制御される。
前出した第1A図、第1B図及び第1C図は、3つのデータ
圧縮法により作られる記録のデータフォーマットを示す
図である。
第2図は、この発明の実施例を含むビデオ信号処理回
路のブロック図である。
第3A図は、第2図に示すビデオ信号処理回路のマイク
ロコードRAM・シーケンシング回路として用いるに適し
た回路を示すブロック図である。
第3B図は、第3A図に示す回路の動作を説明する再に有
用ないくつかの信号についての、時間の関数としての信
号振幅を示すタイミング図である。
第3C図は、第2図に示す回路で使用されるマイクロコ
ードRAM・シーケンサのためのマイクロコード制御語の
データフォーマットを示す図である。
第4A図は、第2図に示す発明の実施例で使用される算
術論理演算ユニットのブロック図である。
第4B図は、第4A図に示す算術論理演算回路の部分ブロ
ック図である。
第5図は、第2図に示す発明の実施例と共に使用され
るデータパス回路のブロック図である。
第6図は、第2図に示す発明の実施例と共に使用され
るデータRAM回路のブロック図である。
第7A図、第7B図、第7C図、第7D図及び第7E図は、第6
図に示すデータRAM回路の動作を説明するために有用な
タイミング図である。
第8A図は、第2図に示す発明の実施例と共に使用され
るピクセル補間器のブロック図である。
第8B図は、第8A図に示すピクセル補間器で使用される
乗算器のブロック図である。
第9A図、第9B図、第9C図、第9D図、第9E図及び第9F図
は、第8図に示すピクセル補間器の動作の説明に用いる
図である。
第10A図は、第2図に示すビデオ信号処理回路で使用
するに適した統計的デコーダのブロック図である。
第10B図は、第10A図に示す回路の動作を理解する最に
有用なタイミング図である。
第11A図は、第2図に示すビデオ信号処理回路で用い
るに適した入力FIFO回路のブロック図である。
第11B図は、第11A図に示した回路の動作を理解する際
に有用なタイミング図である。
第12A図は、第2図に示すビデオ信号処理回路で用い
るに適した出力FIFO回路のブロック図である。
第12B図は、第12A図に示す回路の動作を理解する際に
有用なタイミング図である。
第13A図と第13B図は、第2図に示す発明の実施例と共
に使用されるVRAM制御ユニットのブロック図である。
第13C図は、第13A図に示す回路の動作を理解する際に
有用なタイミング図である。
第14図は、第2図のビデオランダムアクセスメモリ
に、圧縮されたデータがどのように記憶されるかを示す
メモリマップ図である。
第15図乃至第23図は、第2図乃至第13図に示す回路の
動作を説明する際に有用な制御フロー図及び他の図であ
る。
図面において、幅の広い矢印は、複数ビットの並列デ
ジタル信号を伝送するためのバスを表わし、線の矢印
は、アナログ信号または1ビットのデジタル信号を伝送
する接続を示す。装置の処理速度に応じて、信号パスの
あるものにおいては補償用遅延が必要となることがあ
る。デジタル信号処理回路の設計の分野での当業者に
は、ある特定のシステムとどの部分にそのような遅延が
必要とされるかは分かる筈である。
第2図は、ビデオ信号処理回路210とそれに付随する
周辺回路を示すブロック図である。この発明のこの実施
例においては、回路210は1つの集積回路として具体化
されている。このビデオ信号処理システムを第2図のみ
を参照して簡単に説明し、その後で、第2図〜第13図を
参照して詳細に説明する。この出願の第3の部分は第14
図〜第23図を参照し、システムの各構成要素がどのよう
に平行して動作して、第1A図、第1B図及び第1C図に示す
ようなフォーマットの圧縮ビデオデータをピクセル値に
変換するかを説明する。
第2図において、圧縮されたビデオ信号の信号源212
は、前述したビデオ信号圧縮技術の1またはそれ以上を
用いて圧縮され、また、統計的にコード化されたデータ
を含んでいるビデオ信号データを供給する。発明のこの
実施例においては、信号源212により供給されるデータ
は、ビデオ信号プロセッサ210の内部にあるVRAM制御ユ
ニット238の制御の下にビデオランダムアクセスメモリ
(VRAM)216に供給される。発明のこの実施例で用いら
れる信号源212はコンパクトディスク読出し専用メモリ
(CD ROM)である。この信号源は、圧縮されたデータ
(圧縮データ)を、例えば、各々が32ビットで構成され
たブロックとしてVRAM216に連続的に供給する。VRAM制
御ユニット238は、信号源212と回路210からのVRAM216へ
のデータアクセス要求を調整して、信号源212により供
給されるデータの全てが確実にVRAM216に書込まれるよ
うにする。
発明のこの実施例で用いられるVRAM216はNECエレクト
ロニクス社により製造されているμPD4126464K×4ビッ
トデュアルポート・ランダムアクセスメモリ集積回路12
8個で構成されている。このメモリ集積回路は、16行8
列のマトリクスに配列されている。このような構成で
は、VRAM216は、各々32ビットの1,048,576語として配列
された、4ベガバイト(4MB)の記憶を提供する。
表示器用プロセッサ218は、直列出力ポートを介してV
RAM216にアクセスして、表示されたビデオ信号の有効ビ
デオ部分を生成する。ビデオ信号処理回路210と圧縮ビ
デオ信号源212は標準的な入力−出力バスを介してVRAM2
16のデータセルにアクセスする。ビデオ信号プロセッサ
210と表示器用プロセッサ218とによるVRAM216へのアク
セスは全て、回路210のVRAM制御ユニット238により制御
される。
VRAM216に保持されたデータは、統計的デコーダ230
と、入力先入れ先出し回路(以下、FIFOと称する)232
と234とによって処理回路210に供給される。また、デー
タは回路210によって、出力FIFO回路236を介してVRAM21
6に供給される。統計的デコーダ230と入力FIFO232と234
により供給されるデータ値は、データパス回路242、算
術論理演算ユニット(ALU)244及びデータRAM228に対
し、双方向データバスB BUSを介して供給される。バスB
BUSはVRAM制御ユニット238に対してアドレスUを供給
するためにも用いられる。第2の双方向バスA BUSが回
路210に設けられていて、データ値をデータパス回路24
2、ALU244及びデータRAM228の間でパスさせ、また、ピ
クセル補間器246との間でデータの授受を行うための代
替手段を形成する。上述した接続に加えて、データバス
A BUSはマイクロコードRAM・シーケンサ226に接続され
ており、場合によってはマイクロプロセッサ224にも結
合される。
概括的に説明すると、第2図に示す回路は次のように
動作する。信号源212により供給される圧縮ビデオ信号
はVRAM216に書込まれる。これらの圧縮ビデオ信号はシ
ーケンシング回路226の制御の下に、統計的デコーダ230
と入力FIFO232と234とを介してアクセスされる。デコー
ダ230とFIFO232、234により供給される値は、同じくシ
ーケンシング回路226の制御の下に、データパス242、AL
U244及びピクセル補間器246に供給されて、圧縮された
ビデオ信号を伸張し、また、コード化された画像を記述
するピクセル値を生成する。このようにして生成された
ピクセル値は、例えば240行256列のマトリクスとして、
出力FIFO236を介してVRAM216に書込まれる。これらの行
と列は、各線が256のピクセル値を持つビデオ信号の240
本の線に相当する。以下、このマトリクスをビットマッ
プと称する。このビットマップは、表示用プロセッサ21
8によってVRAM216から読出され、画像が再生される。発
明のこの実施例と共に使用される表示器用プロセッサ
は、ビットマップ中のピクセル値をビデオ信号に変換
し、また、画像をラスタ走査表示装置上に再生できるよ
うにするために必要な水平及び垂直同期信号を加える。
VRAM216から表示器用プロセッサ218へのデータの転送を
調整するために、水平線同期信号HSと垂直フィールド同
期信号VSがそれぞれの信号源220と222からプロセッサ21
0と218へ供給される。この発明の推奨実施例では、これ
らの信号は表示器用プロセッサ218で生成するようにし
てもよい。
発明のこの実施例では、クロック信号の信号源225が
マイクロコードRAM・シーケンサ回路226に、25MHzのク
ロック信号CLKを供給する。回路226は、各々12.5MHzの
周波数を有する信号CKとCK′、信号CKと実質的に同じ周
波数と位相を持つ信号CKA及び、信号CKと実質的に逆位
相の信号CKBとを発生する。信号CKAとCKBはデータパス2
42、ALU244及びピクセル補間器246に供給される。信号C
Kは統計的デコーダ230、入力FIFO232、234及び出力FIFO
236に供給される。信号CK′はVRAM制御ユニット238に供
給される。
第2図に示す回路の説明を簡単にするために、圧縮ビ
デオ信号源はコード化されたルミナンス信号のみを供給
し、回路210はビットマップを1つだけ、即ち、ルミナ
ンスビットマップのみを形成するものとする。現実のシ
ステムでは、カラー情報信号、例えば、I及びQ色差信
号用の別のビットマップも作られる。
前述したように、ビデオ信号処理回路210における中
心の制御素子はマイクロコードRAM・シーケンサ回路226
である。第3A図は、マイクロコードRAM・シーケンサ226
として用いるに適した回路を示すブロック図である。マ
イクロコードRAM310は、各々が96ビットを有する128語
として構成されている通常のランダムアクセスメモリで
ある。通常動作時は、マイクロコードRAM310は、アドレ
スレジスタ322に保持されているアドレス値の7個のMSB
によりアドレスされて、96ビットからなる語(96ビット
語)をレジスタ312の入力ポートに供給する。レジスタ3
12は、制御回路308により供給される信号LDによって、
その入力ポートに供給される値をロードするようにされ
る。マイクロコードRAM310により供給される96ビット値
の各々は、2つの48ビットマイクロコード制御語、即
ち、命令を含んでいる。レジスタ312の48個のMSB位置に
あるこれらの命令の一方は、マルチプレクサ(MUX)314
の一方の入力ポートに供給され、レジスタ312の48個のL
SB位置にある他方の命令がマルチプレクサ314の第2の
入力ポートに供給される。マルチプレクサ314はフリッ
プ・フロップ318により供給される1ビットの信号によ
り、48ビット命令の一方を命令レジスタ316の入力ポー
トに通過させるようにされる。命令レジスタ316は、制
御回路308により供給される信号LIに応答して、その入
力ポートに供給されたマイクロコード制御語をロードす
る。
命令レジスタ316の個々のビットはバスMCWを介して、
ビデオ信号処理回路210の構成素子の各々の制御入力端
子に接続されている。マイクロコードRAM310により供給
されるマイクロコード制御語が命令レジスタ316を通っ
てシーケンスすると、回路210の個々の構成素子は、協
同して、圧縮ビデオデータをビットマップピクセルデー
タに変換する動作を行うようにされる。マイクロコード
制御語の各ビットの機能は第3C図を参照して後述する。
ビデオ信号プロセッサ210によって用いられるクロッ
ク信号CKとCK′はマイクロコードRAM・シーケンサ226に
含まれている回路によって発生される。信号源225によ
り供給される25MHzのクロック信号CLKは、この信号CLK
の周波数を2分の1に分周して、12.5MHzのクロック信
号CK′を作る分周回路304に供給される。信号CLKはさら
にANDゲート306の一方の入力端子にも供給されている。
ANDゲート306の他方の入力端子はインバータ302に結合
されており、マイクロプロセッサ224により供給される
信号HALTを反転して得られ信号を受取る。ANDゲート306
の出力信号は、その周波数を2分の1に分周して12.5MH
zのクロック信号CKを作る分周回路307に供給される。信
号HALTが論理0値を持つ時は、信号CKは12.5MHzの方形
発振信号となる。しかし、信号HALTが論理1に変化する
と、クロック信号CKの状態は、信号HALTの変化が生じた
時の状態、論理1または論理0に凍結される。
以下に延べるように、マイクロコード制御語の8個の
LSBはNEXT ADDRESSフィールドを規定する。どのマイク
ロコード制御語でも、このフィールドは、マイクロコー
ドRAM310中の、命令レジスタにロードされるべき次のマ
イクロコード制御語のアドレスを含んでいる。NEXT ADD
RESSフィールドに保持されている値はマルチプレクサ
(MUX)320を介してアドレスレジスタ322に供給され
る。NEXT ADDRESS値のLSBはフリップ・フロップ318の入
力端子Dに供給される。アドレスレジスタ322とフリッ
プ・フロップ318は信号CKによって、それぞれの入力ポ
ートに供給された値をロードするようにされる。
後述するようにデータパス回路242により供給される
信号CDがフリップ・フロップ318のリセット入力端子R
に結合されている。信号CDの値は、マイクロコード制御
語の条件コード選択(COND CODE SEL)フィールド(後
述)によって制御される。この信号は、命令レジスタ31
6に供給されるマイクロコード制御語のシーケンスを条
件(状態)に応じて変化させるために、マイクロコード
RAM・シーケンシング回路226で用いられる。信号CDは、
信号処理中で前に生起した状態、例えば、ALU244の出力
値が0であるというような状態を表わす。選択された条
件が真の時は、フリップ・フロップ318により供給され
る出力信号Qは論理0になる。この値はマルチプレクサ
314がレジスタ312の48個のLSB位置に保持されている値
を命令レジスタ316に送るようにする。
この回路が、マイクロコードRAM・シーケンサ回路226
の制御の流れ(フロー)を条件に応じて変える、すなわ
ち、条件付き分岐(ブランチ)を行うためにどのように
用いられるかを理解するために、マイクロコード制御語
AがそのCOND CODE SELフィールドに非0値(0でない
値)を有し、かつ、NEXT ADDRESSフィールドに値81を持
つものと仮定する。このマイクロコード制御語が命令レ
ジスタ316にロードされると、NEXT ADDRESSフィールド
中の8ビット値ははアドレスレジスタ322に供給され、
マイクロコードRAM310のアドレス80と81にあるマイクロ
コード制御語がレジスタ312にロードされる。条件信号C
Dの値が論理0なら、レジスタ312の48個のMSB位置(ア
ドレス81)を占めているマイクロコード制御語が次に用
いられることになる。信号CDの値が論理0でない場合
は、レジスタ312の48個のLSB位置(アドレス80)を占め
ているマイクロコード制御語が次に用いられる。これら
の命令の各々はそれぞれ異るNEXT ADDRESSフィールドで
あり、従って、各々がマイクロコード制御語の異るシー
ケンス、即ち、ビデオ信号プロセッサ210の異る作用を
規定する。マイクロコードRAM310が条件コードの可能な
値の両方についての次の命令を供給するので、条件コー
ドの値が求められると、次のマイクロコード制御語を取
出すために時間をロスすることがない。
マイクロコードRAM・シーケンサ回路226は、バスA BU
Sを介して供給されるマイクロコード制御語をマイクロ
コードRAM310にロードすることができる。各々がマイク
ロコード制御語の3分の1を表わす3個の16ビット値が
3個のレジスタ324に次々に供給される。最初の16ビッ
ト値がレジスタMR0に、第2の16ビット値がレジスタMR1
に、そして、第3の16ビット値がレジスタMR2にそれぞ
れ記憶される。次に、同じく入力FIFO232とデータRAM22
8を介してVRAM216により供給されるようなアドレス値が
アドレスレジスタ322に供給される。このアドレス値のL
SB、即ち、信号DXCは、デマルチプレクサ(DEMUX)326
に働いて、3つのレジスタMR0、MR1、MR2により供給さ
れる48ビット値が、マイクロコードRAM310に対するI/O
バスの48個のMSB位置と48個のLSB位置のいずれか一方に
供給されるようにする。同時に、書込み可能化(イネー
ブル)信号WEが生成され、REM310が48ビット値をアドレ
スされたメモリセルに記憶するようにする。
これらの動作によってマイクロコードRAM310に書込ま
れたマイクロコード制御語は、VRAM216から、例えば、
入力FIFO232とデータRAM回路228とを介して供給され
る。VRAM216からのマイクロコード命令をロードするこ
とができることにより、圧縮ビデオ信号源212は、圧縮
されたデータとそれを伸張するために必要な命令の双方
をビデオ信号プロセッサ210に供給することが可能とな
る。例えば、最初、後述するようにプロセッサ210を制
御するマイクロプロセッサ224によって、ブートストラ
ッププログラムがマイクロコードRAM310にロードされ
る。このブートストラッププログラム中の命令に応答し
て、マイクロコードRAM・シーケンサ回路226は、圧縮ビ
デオデータをデコードするようにプロセッサ210を可動
化する、VRAM216からの命令をロードする。
第3B図は、マイクロコード制御語MCがマイクロコード
RAM310に記憶される時のマイクロコードRAM・シーケン
シング回路226の動作を説明するタイミング図である。
このタイミング図において、記号T0〜T5は6つのマイ
クロコード命令を表わしている。各命令サイクルは信号
CKAの正方向への遷移で始まり、終る。
命令サイクルT0においては、命令レジスタ316に保持
されているマイクロコード制御命令はそのA DSTフィー
ルドにある値(例えば8)を有し、この値は、バスA BU
Sにより伝送される16ビット値がレジスタMR0に記憶され
ることを示す。この命令サイクルでは、値MC0、即ち、
マイクロコード制御語MCの16個のLSBが、例えばデータR
AM回路228によってバスA BUSにゲートされる。命令サイ
クルT0においては、レジスタMR0は信号A DSTによっ
て、バスA BUSにより供給される16ビット値MC0を記憶す
るようにされる。この記憶動作は、命令サイクルT0
中間点における信号CKAの負方向への遷移に一致して生
じる。値MC0がレジスタMR0に記憶されるのと実質的に同
時に、命令レジスタ316中のマイクロコード制御語のNEX
T ADDRESSフィールド中の値がアドレスレジスタ322に記
憶され、かつ、このアドレス値のLSBがフリップ・フロ
ップ318に記憶される。アドレスレジスタ322に記憶され
た値は、マイクロコードRAM310が、次の命令を含んでい
る96ビット値をレジスタ312に供給するようにする。こ
の96ビット値は、命令サイクルT0の中間点よりもいく
らか後で生じる信号LDの負方向への遷移と一致して、レ
ジスタ312にロードされる。フリップ・フロップ318に保
持されている1ビット値に応答して、アドレスされた48
ビットのマイクロコード制御語が命令レジスタ316の入
力ポートに供給される。このマイクロコード制御語は、
命令サイクルT0の終了時に生じる信号LIの負方向のエ
ッジと一致して、命令レジスタ316にロードされる。命
令サイクルT1においては、新しくロードされたマイク
ロコード制御語が、マイクロコード制御語MCの中間の16
ビットを表わす値MC1を、MR1がロードするようにする。
同じようにして、命令サイクルT1の終了時に命令レジ
スタ316にロードされたマイクロコード制御語がレジス
タMR2に働いて、命令サイクルT2においてマイクロコー
ド制御語MCの16個のMSBをロードするようにする。
命令サイクルT2の終りに命令レジスタ316にロードさ
れたマイクロコード制御語は、レジスタ324からマイク
ロコードRAM310へのマイクロコード制御語MCの転送を制
御する。マイクロコード制御語MCを記憶するために用い
られるアドレスは、バスA BUSを介して供給される。命
令サイクルT3の開始時において、命令レジスタ316中の
マイクロコード制御語のA DSTフィールドは値11を持
ち、これは、バスA BUSにより供給される16ビット値が
アドレスレジスタ322にロードされることを示す。A DST
フィールド中のこの値に応答して、制御回路308が、信
号MXCとして論理1値を信号CKのほぼ1サイクルの間、
マルチプレクサ320に供給する。この信号はマルチプレ
クサ320をして、バスA BUSによって供給される値の8個
のLSBをアドレスレジスタ322の入力ポートに供給せしめ
る。このアドレス値は、命令サイクルT3における信号C
Kの最初の負方向遷移に一致してレジスタ322にロードさ
れる。アドレスレジスタ322に保持されている値のLSB、
即ち、信号DXCはデマルチプレクサ326の制御入力端子に
供給される。デマルチプレクサ326は、論理1または論
理0の値を持った信号DXCによって、レジスタ324により
供給される48ビット値をゲートして、I/Oバスの各48個
のMSB位置または48のLSB位置に供給するようにされる。
信号DXCは、ANDゲート311と313を介して、マイクロコ
ードRAM310の各半部に対する別々の書込み可動化信号を
生成する。前述したように、マイクロコードRAM310は、
各々が96ビットを有する125語として構成されている。
このメモリは2つの部分に分割されている。左側の半部
は128語の48個のMSBを含んでおり、右側の半部は128語
の48個のLSBを含んでいる。信号DXCは、ANDゲート313に
おいて、制御回路308により供給される書込み可動化信
号WEと組合わされて、マイクロコードRAM310の左半部の
ための書込み可動化信号を生成する。信号DXCは反転さ
れ、ゲート311によって信号WEと論理的にAND処理され
て、マイクロコードRAM310の右半部のための書込み可動
W信号を生成する。
この例においては、信号DXCは、命令サイクルT3の開
始時の信号CKのほぼ1周期の間、論理1の値を持つ。従
って、マイクロコード制御語MCは、アドレスレジスタ32
2に保持された7個のMSBの値によって表わされるアドレ
ス値を持った、マイクロコードRAM310中のセルの48個の
MSB位置に書込まれる。マイクロコード制御語は、第3B
図に示した信号WEと一致してマイクロコードRAM310に書
込まれる。
命令サイクルT3はメモリ書込み動作を行うので、次
のマイクロコード制御語は、信号CKの最初の周期では、
命令レジスタ316にロードされない。この動作は命令サ
イクルT3中の信号CKの2番目の周期で生じる。命令サ
イクルT3中の信号CKの2番目の正方向への遷移と一致
して、信号MXCの値は論理0に変り、命令サイクルT0
ついて前述したように、命令取出し動作が行われる。マ
イクロコードRAM・シーケンシング回路226は、命令サイ
クルT4及びT5の間、命令期T0について述べたような
態様で動作する。
第3B図に示した例では、誤ったマイクロコード制御語
がレジスタ312と316にロードされないようにするため
に、命令レジスタT3の前半部では、信号LDとLIは禁止
されている。またビデオ信号処理回路を休止状態に置く
ために、命令サイクルT3の後半部では、制御回路308に
よって信号CKAとCKBは凍結されている。これはALU244、
データRAM228及びピクセル補間器246の間の同期動作を
維持するために行われる。命令サイクルT3の後半部で
はクロック信号CKAとCKBは非可動化(ディスエーブル)
されるので、ALU244、データRAM228及びピクセル補間器
246の内部状態はこの期間中は変化しない。
この発明のこの実施例においては、マイクロコードRA
M310に対するデータ読出し動作とデータ書込み動作は信
号CKの別々の周期に行われる。しかし、そうする代り
に、マイクロコードRAM・シーケンシング回路226を、信
号CKの1つの周期中で2つの動作を行うように構成して
もよい。
制御回路308は、休止論理240により供給される信号PA
USEにも応答し、クロック信号CKAとCKBを凍結させる。
さらに、制御回路308はマイクロプロセッサ224により供
給される信号HALTに応答し、信号CKを禁止して、実効的
に、VRAM制御ユニット238を除くビデオ信号プロセッサ2
10全体の内部状態を凍結させる。
信号HALTを用いてマイクロプロセッサ224はビデオ信
号プロセッサ210の制御機能を実効的に引受ける。信号H
ALTは命令レジスタ316に供給されて、このレジスタをし
て、ゲート回路223を介してマイクロプロセッサ224によ
り供給されるバスMCWからデータを受入れしめる。マイ
クロプロセッサ224はレジスタ316をして、信号HALTを論
理1から論理0に変化させることにより、供給されたマ
イクロコード制御語をロードさせしめる。上記変化後の
クロック信号CKの次の周期において、マイクロコードRA
M・シーケンサ回路226はこのマイクロコード命令が実行
されるようにする。このクロック周期が完了すると、マ
イクロプロセッサ224は再び信号HALTを論理1値に変化
させ、別のマイクロコード命令をレジスタ316に供給す
る。このような動作により、マイクロプロセッサ224
は、マイクロコードRAM・シーケンサ回路226をしてバス
A BUSまたはB BUSに接続されたレジスタにデータを書込
ませ、あるいは、前に述べたように、ブートストラップ
プログラムをロードするようにする。さらに、マイクロ
プロセッサ224がバスA BUSに接続されていることと、第
5図を参照して後述するバスゲート520とにより、マイ
クロプロセッサ224はどのレジスタの内容でも、また、
バスA BUSあるいはB BUSの内容でも読出せる。
第3C図はマイクロコードRAM・シーケンシング回路226
によって用いられるマイクロコード制御語、即ち、命令
のフォーマットを示す。制御語は13のフィールドを含ん
でいる。各フィールドを、以下、そのフィールドが持ち
得る値と、その値がビデオ信号プロセッサ210の各構成
素子に対して持つ作用とによって説明する。制御される
構成素子の構造は第4図乃至第13図を参照して後述す
る。
マイクロコード制御語のビット0〜7は、NEXT ADDRE
SSフィールドを形成する。これらのビットにより表わさ
れる値は、マイクロコードRAM310における、命令レジス
タ316にロードされるべき次のマイクロコード制御語の
アドレスである。ある与えられたマイクロコード命令サ
イクル中、このフィールドによって表わされた値はマイ
クロコードアドレスレジスタ322に記憶される。
条件コード選択フィールドCOND CODE SELはマイクロ
コード制御語のビット8〜10を占める。これらの3ビッ
トは、後述するデータバス回路242中の条件レジスタに
保持されている条件値の1つを選択する。選択された条
件値が信号CDである。この信号は条件付き分岐動作を行
うために用いられる。前に述べたように、条件付き分岐
は命令レジスタ316に供給されるマイクロコード制御語
のシーケンスの変更であり、これは選択された条件が満
足される時(即ち、CDが論理1の時)のみに生じる。表
1は条件コード選択値とそれに対応する記述をリストし
たものである。
マイクロコード制御語のビット11〜29は、バスA BUS
とB BUSを介して回路210の各構成素子間でデータ値がど
のように転送されるかを制御する4つのフィールドを含
んでいる。ビット11〜15はA SRCフィールドである。こ
のフィールドは、構成素子のうちのどの構成素子が、あ
るいは、ある構成素子中のどのレジスタが出力値をバス
A BUSに供給することにより信号源として働くかを示
す。マイクロコード制御語のビット16〜20はA DSTフィ
ールドで、このフィールドは、構成素子のうちのどれ
が、あるいは、ある構成素子中のどのレジスタが、バス
A BUS上にある値をその入力値として受入れることによ
り宛先として働くかを示す。同様にフィールドB SRC、
ビット21〜24、及びフィールドB DST、ビット25〜29
は、それぞれ、回路210のどの構成素子がバスB BUSに値
を供給し、どの素子がバスB BUSから値を受取るかを決
める。バスA BUSとB BUSは、ビデオ信号プロセッサ210
の種々の構成素子にデータと制御情報の両方を伝送する
ことができる。バスA BUSとB BUSに結合されるレジスタ
とこれらのバスによって伝送される制御情報について
は、回路210の該当する構成素子を参照して以下に述べ
る。
一般的に、バスA BUSとB BUSに結合されたレジスタ
は、マイクロコード制御語のフィールドA SRC、A DST、
B SRCまたはB DSTの1つに結合される通常のデコーディ
ング回路(図示せず)を含んでいる。このデコーディン
グ回路は、レジスタへのアクセスを許容する制御値が検
出されると、論理1値を生じさせる。A SRCフィールド
に応答するデコーディング回路は、マイクロコード制御
語のLIT SELフィールド、ビット31、における論理1の
値によって抑止される。このビットが論理1の時は、A
SRCフィールド中の値は有効なA SRC値ではなく、後述す
る8ビットのリテラル値の一部である。フィールドA SR
CとB SRCとによって制御されるレジスタに対し、デコー
ディング回路の出力値がレジスタの出力可動化入力端子
に結合される。この入力端子に論理1値が供給される
と、レジスタはその記憶されている値を該当するバスに
供給するようにされ、論理0値が供給された場合は、そ
のレジスタはバスに対して高インピーダンスを呈する。
フィールドA DST及びB DSTにより制御されるレジスタに
対しては、デコーディング回路の出力値がレジスタのデ
ータ−ロード入力端子に結合される。これらのレジスタ
は、デコーディング回路によって供給される信号が論理
1値を持っている間は、該当するバスによって伝送され
てきた値をロードするようにされる。
マイクロコード制御語のビット30はフィールドDEC LO
OP CTRである。このフィールドが値1を持っている時
は、データパス回路242中のループカウンタは、マイク
ロコード命令サイクル中、その値を減じるようにされ
る。
マイクロコード制御語のビット31はフィールドLIT SE
Lである。このフィールドに1の値があると、マイクロ
コードRAM・シーケンシング回路226は、その時のマイク
ロコード制御語のビット8〜15をリテラル値として扱う
ようにされる。この値の出所(ソース)値として、バス
A BUSの8個のLSB位置に、マイクロコード制御語のビッ
ト31により可動化されるゲート回路317を介して供給さ
れる。デジタル値源315からの0値が、リテラル値が選
択された時に、バスA BUS上の8個のMSB位置に供給され
る。
マイクロコード制御語のビット31は、さらに、前述し
たようにバスA BUSを出所として用いるレジスタと、後
述するようにデータバス回路の条件コード論理518にも
供給される。
マイクロコード制御語のビット32は、INT μPフィー
ルドである。このビットが論理1値を持っている時は、
マイクロプロセッサ224が中断される。この制御機能
は、例えば、あるマイクロコード命令シーケンスが完了
したことをマイクロプロセッサ224に知らせるために使
用できる。
マイクロコード制御語のビット33は、LATCH COND COD
Eフィールドで、このフィールドが1の値を持つ時は、
データパス回路242は、ALU244により生成された種々の
条件コードレジスタにラッチする。この制御機能は、一
般には、条件付き分岐動作に対する条件を選択する命令
に先行する命令中に含まれている。
マイクロコード制御語のビット34と35は、SHIFT CONT
フィールドである。このフィールドは、データパス回路
242のレジスタR0によって行われるビットシフト動作を
制御する。表2は、SHIFT CONTフィールドの種々の値に
応答してレジスタR0によって達成される機能を示す。
マイクロコード制御語のビット38〜46は、マイクロコ
ード命令サイクル中のALU244の機能を決定する。ビット
47は不使用である(第3図)。ALU244の機能を理解する
ために、初めにその構造を説明することが理解を助け
る。第4A図に示すALU244は5つの部分、即ち、2つのオ
ペランド入力レジスタ410と412、算術論理演算回路(AL
C)414、出力レジスタ416及びデマルチプレクサ(DEMU
X)418、からなる。レジスタ412はバスB BUSに接続され
ており、バスMCWを通して与えられるマイクロコード制
御語のビット36中のU1によって可動化されて、バスB BU
Sからの値をロードする。レジスタ410はバスA BUSに接
続されておりマイクロコード制御語のビット37中の1の
値によって可動化されて、バスA BUSからの値をロード
する。ALC414はレジスタ410と412に保持されている値に
ついて種々の算術論理演算を行う。任意の1つの命令サ
イクル中に実行される演算は、バスMCWを通してALUに供
給されるマイクロコード制御語のビット38〜46のフィー
ルドALU OP CODEに保持されている9ビット値によって
制御される。この9ビットのフィールドにおいて、ビッ
ト38〜44に保持されている値は、表3の通りに、ALUに
よって実行される機能を決定する。表3において、A及
びBはそれぞれレジスタ410と412の保持されている値を
表わしCINは、ALC414のキャリーイン入力端子CINに供給
される値を表わす。
この表において、「NOT」は1の補数演算を表わし。
「XOR」は排他的OR演算を表わす。
マイクロコード制御語のビット45と46は、バスMCWを
介してマルチプレクサ(MUX)420に加えられて、キャリ
ーイン信号CINを変化させ、また、ADD動作(OP CODE 7
9)を飽和を伴う2重ADD(dual−ADD−with−saturat
e)動作に変える。ビット45と46が両方共0の時、ある
いは、ビット45が0でビット46は1の時は、マルチプレ
クサ420は、デジタル値源422からの0の値を信号CINと
して供給する。ビット45が1でビット46が0の時は、マ
ルチプレクサ420はデジタル値源424からの1の値を信号
CINとして供給する。ビット45と46の両方が1の値を持
つ時は、マルチプレクサ420により供給されるCIN入力値
は、データパス回路242の条件コードレジスタにより供
給されるキャリーアウト条件値COUTである。
ALC414により生成される信号CARRY OUTは、第4B図に
示される16ビット加算器のMSB段により与えられるキャ
リーアウト信号である。信号SIGNは、ALC414により生成
される16ビットの出力MSBである。信号OVERFLOWは、ALC
414に供給される2個の入力値の符号ビットとALC414に
よって生成される出力値の符号ビットとの論理的組合わ
せである。この信号は、2個の負の入力値によって正の
出力値が生成される時或いは2個の正の入力値によって
負の出力値が生成される時に論理1を持っている。3個
の符号ビットの他の組合わせすべてに対して、信号OVER
FLOWは論理0の値を持っている。
加算動作は、ビット45が0でビット46が1である時に
飽和を伴う2重加算動作になる。この飽和を伴う2重加
算動作では、16ビットのレジスタ410及び412の各々は2
個の8ビット値を収容しているものとして処理される。
レジスタ410に保持される値の8個のMSBとレジスタ412
に保持される値の8個のMSBとが加算され、その加算結
果が出力レジスタ416の8個のMSBに記憶される。同様
に、レジスタ410及び412に保持される値のそれぞれの8
個のLSBが互いに加算され、その加算結果がレジスタ416
の8個のLSBに記憶される。これらの加算動作の何れに
よってもオーバフロー状態が生じることはなくALC414中
の回路によって加算和が飽和する。もし2重加算動作へ
の入力値が8個のLSBの和或いは8個のMSBの和の何れか
によって負のオーバフロー状態或いは正のオーバフロー
状態が生じるようなものであれば、加算用に与えられる
値はそれぞれ0或いは255に飽和しており、これらは8
ビットの符号のない2進値によって表わされ得る最小値
及び最大値である。
従来型の加算と飽和を伴う2重加算動作との間で切替
を行うために、従来型でない加算器がALC414に使用され
る。
第4B図には、ALC414に使用されるのに適した加算器が
ブロック図で示されている。従来型の16ビットの算術論
理演算回路であれば、2個の16ビットから成る2の補数
とキャリーイン信号とを加算して16ビットから成る2の
補数の出力値とキャリーアウト信号とを生成できる16ビ
ット加算器が含まれている。第4B図に示される回路は、
信号SPLITに応答してこの信号SPLITが0の時は従来型の
16ビットの2の補数加算器として動作し、信号SPLITが
1の時は従来の飽和を伴う2重加算モードで2個の独立
した8ビット加算器として動作する。
第4B図において入力ポートA及びBに供給される2個
の16ビット入力値は各々8個のMSBの部分(以下8MSB部
分と呼ぶ)と8個のLSBの部分(以下8LSB部分と呼ぶ)
とに分割される。A入力値及びB入力値の8MSB部分はそ
れぞれ加算器450の異なる入力ポートに供給される。A
入力値及びB入力値の8LSB部分はそれぞれ加算器452の
異なる入力ポートに供給される。この実施例に使用され
る加算器450及び452は従来型の8ビットの2の補数加算
器である。加算器452へのキャリーイン入力信号はALC41
4へ供給される信号CINである。加算器450へのキャリー
イン入力信号はANDゲート454によって与えられる。この
信号は、加算器452によって与えられるキャリーアウト
信号CO0とインバータ456によって与えられる信号SPLIT
の論理反転分である信号▲▼との論理AND
(論理積)である。加算器450によって与えられる8ビ
ット出力信号のMSB位置の信号は、ALC414によって与え
られる値の極性を示す条件信号SIGNである。加算器450
のキャリーアウト信号CO1は、ALC414によって与えられ
る信号CARRY OUTである。
加算器450によって与えられる8ビット値は、ALC414
の入力ポートA及びBに供給された値の8個のMSBの2
の補数和である。この出力値のMSBは排他的ORゲート472
の一方の入力端子に供給され、このORゲート472の他方
の入力端子は信号SPLITを受取る。排他的ORゲート472に
よって与えられる出力信号は、加算器450によって与え
られる値の7個のLSBと連結され、8ビットの変形和が
生成される。信号SPLITが0の時、この変形和は、2個
の8ビットの2の補数値の和を表わす8ビットの2の補
数値である。しかし、信号SPLITが1である時、この変
形和は8ビットの符号のない2進値と8ビットのオフセ
ット128の2進値との和を表わす8ビットの符号のない
2進値である。
ALC加算器に供給される入力値の形の変更は加算器の
回路の機能ではなくビデオ信号プロセッサ210をプログ
ラムするために定められた約束である。この約束によっ
て、信号SPLITが0の値を持つ時、ALC加算器に供給され
る値は従来型の16ビットの2の補数値である。しかし信
号SPLITが1の値を持つ時、加算器450及び452の各々に
供給される値の一方は8ビットの符号のない2進値であ
り、他方はオフセット128表記の8ビット値である。こ
れらの値は、バスA BUS或いはB BUSに対する出所として
動作し得る如何なる装置の如何なるレジスタによっても
与えられる。
信号SPLITが1の時、8ビットの符号のない2進入力
値は0と255の間の値の範囲を占め、オフセット128はそ
れぞれに対して−128と+127の間の値の範囲を占めるこ
とが出来る。従って、変形和は−128と382を含めてその
間の値を表わすことが出来る。しかし、このモードでの
変形和は8ビットの符号のない2進数であるため、0と
255の間の数だけが有効である。図4B図に示されるALC加
算器には、この有効な範囲外にある値を検知し、変形和
の値を0より小さい値に対しては0に又は255より大き
い値に対しては255に飽和させる即ち限定する。
ANDゲート470が、変形和の値が255より大きいことを
示す正のオーバフロー信号POV1を発生する。ANDゲート4
70への3つの入力信号は、信号SPLITと、加算器450から
のキャリーアウト信号CO1と、加算器450によって与えら
れる8ビット値のMSBである。信号POV1は、信号SPLITが
0の時、或いは信号SPLITが1で変形和の値が256より小
さい時に0となる。信号POV1は8個のNORゲート474の各
々の一方の入力端子に供給される。NORゲート474の各々
の他方の入力端子は、それぞれ変形和の8ビットの異な
る1つを受取る。
NORゲート468が信号▲▼と、信号CO1と、
加算器450によって与えられる8ビット値のMSBとに応答
して負のオーバフロー信号NOV1を発生する。この信号NO
V1は、変形和が0より小さい値を持つことを示す。信号
NOV1は8個のNORゲート476の各々の一方の入力端子に供
給される。NORゲート476の各々の他方の入力端子は、そ
れぞれ8個のNORゲート474によって与えられる信号のう
ちの異なる1つを受取る。NORゲート476の8個の出力信
号は、ALC加算器の16ビット出力信号の8個のMSBであ
る。
加算器452は、上述した値制限回路と同様の回路に結
合されている。NORゲート476に相当する8個のNORゲー
ト466の8個の出力信号は、ALC加算器の16ビット出力信
号の8個のLSBである。
マイクロコード制御語のビット45及び46がそれぞれ0
及び1の値を持つ時、信号SPLITは1でALC加算器は飽和
を伴う2重加算モードで動作するように制御される。マ
イクロコード制御語のビット45及び46の値の他の組合わ
せに対して、信号SPLITは0でALC加算器は従来型の16ビ
ットの2の補数加算器として動作するように制御され
る。
次にALC加算器のその2つのモードの各々における動
作について説明する。信号SPLITが0である時、ANDゲー
ト454は加算器452の出力端子CO0からのキャリーアウト
信号を加算器450のキャリーイン入力端子CT1に供給する
ように制御され、加算器450及び452は1個の16ビットの
2の補数加算器として構成される。0の値の信号SPLIT
が排他的ORゲート462及び472に供給されると、これらの
ゲートは加算器452及び450によって与えられる8ビット
の出力値のMSBをそのまま通過させてそれぞれ各NORゲー
ト464及び474に供給する。0の値の信号SPLITがANDゲー
ト460及び470に供給されると、これらのゲートは0の値
の正のオーバフロー信号POV0及びPOV1をそれぞれ各NOR
ゲート464及び474に供給する。同様に、論理1の値の信
号▲▼がNORゲート458及び468に供給される
と、これらのゲートは0の値の負のオーバフロー信号NO
V0及びNOV1をそれぞれ各NORゲート466及び476に供給す
る。0の値の信号POV0及びNOV0がNORゲート464及び466
に供給された結果、加算器452によって与えられる出力
値は2回反転され従って加算器452の出力ポートにおけ
る値はALC加算器によって与えられる16ビット値の8個
のLSBとして与えられる。加算器450によって与えられNO
Rゲート474及び476を介してALC加算器の出力ポートに供
給される8個のMSBの値についても同様である。
信号SPLITが論理1の値を持つ時、インバータ456によ
って与えられる信号▲▼は論理0の値を持
ち、ANDゲート454による加算器452からのキャリーアウ
ト信号の加算器450のキャリーイン入力端子CI1への供給
が止められる。これによって、加算器450及び452は2個
の別個の8ビット加算器ととして構成される。論理1の
信号SPLITが排他的ORゲート462及び472に供給される
と、これらのゲートは加算器452及び450によって与えら
れたそれぞれの8ビット値のMSBを論理的に反転する。
このMSBの反転は、加算器452及び450の各々によって与
えられる8ビットの符号のない2進値が8ビットの符号
のない2進値とオフセット128の2進値との和を適切に
表わすように行われる。
信号SPLITが論理1の値を持つ時、ANDゲート460及び4
70はそれぞれ正のオーバフロー信号POV0及びPOV1を発生
し、NORゲート458及び468はそれぞれ負のオーバフロー
信号NOV0及びNOV1を発生する。負のオーバフロー信号NO
V1が論理1の時、8個のNORゲート476の出力信号はすべ
て論理0となり、ALC加算器によって生成される値の最
上位のバイトの値は0となる。信号POV1が論理1の時、
8個のNORゲート474の出力値はすべて論理0となる。こ
れらの信号はNORゲート476によって反転される。従っ
て、ALC加算器の出力値の8個のMSBはすべて論理1の値
を持つ。これは255の符号のない2進値に相当する。NOR
ゲート466及び464にそれぞれ供給される信号NOV0及びPO
V0についても同様である。
表3に示す動作の何れかを行うことによって得られた
結果は出力レジスタ416に記憶される。このレジスタ416
は、マイクロコード制御語のフィールドA SRC及びB SRC
の適切な値に応答するデマルチプレクシング回路418に
よってバスA BUS及びB BUSの一方或いは両方に結合でき
る。
この実施例に使用されるALCは代表的な例である。デ
ジタル論理設計の当業者であれば、上述したものと等し
い動作を行うことが可能な代りの回路を設計製作でき
る。
ALUの入力レジスタ410及び412は、マイクロコード制
御語のバスの出所フィールド及び宛先フィールドA SR
C、A DST、B SRC及びB DSTにかかわりなくそれぞれバス
A BUS及びB BUSをアクセスする。従って、1つの動作
で、マイクロコードRAM・シーケンシング回路226はデー
タ値をバスA BUS及びB BUSの各々の出所から宛先まで転
送するように命令し、同時に、ALUが転送されるデータ
値の一方或いは両方について動作するように命令でき
る。
ALU244への入力値の1つの出所とALU244からの出力値
の宛先とは、データパス回路242中のレジスタファイル5
10である。第5図はこの実施例に使用されるデータパス
回路242をブロック図で示している。代表的な例である
この実施例に使用されるレジスタファイル510には、R
0、R1、R2及びR3の計4個の汎用レジスタが含まれてい
る。これらのレジスタの各々は、バスA BUS及びB BUSの
両方に結合されている。バスMCWを介して与えられるマ
イクロコード制御語のフィールドA SRC及びB SRCの制御
によってこれらのレジスタの何れも一方或いは両方のバ
スに値を供給できる。しかし、レジスタは、フィールド
A DST及びB DSTに応答してどの1つのマイクロコード命
令サイクルにおいてもバスA BUS及びB BUSの一方のみの
宛先となることが出来る。上述のようにレジスタR0に
は、マイクロコード制御語のSHIFT CONTフィールドに応
答してレジスタの内容をより上位の桁或いはより下位の
桁のビット位置にシフトする或いはレジスタに供給され
る値の8個のMSB及び8個のLSBを交換する回路が含まれ
ている。
レジスタR0のMSB及びLSBは、それぞれ条件コードレジ
スタ512の異なる入力端子に供給される。これらの値に
加えて条件コードレジスタ512は、デジタル値源513から
の0の値と、ALU244によって与えられる条件値SIGN、ZE
RO、OVFLOW及びCARRY OUTと、ループカウンタ514によっ
て保持される値が0であることを示す条件値とを受取
る。条件コードレジスタ512はマイクロコード制御語のL
ATCH COND CODEフィールドに応答してマイクロコード命
令サイクルの終りにALU244によって得られる条件値を記
憶する。他の条件コードは、それらの発生と非同期的に
条件コードレジスタ512中へラッチされる。
条件コード論理518が、マイクロコード制御語のCOND
CODE SELフィールドに応答して、上述のようにマイクロ
コードRAM・シーケンシング回路226において条件分岐動
作を行うのに使用される条件信号CDとして条件コードレ
ジスタ512に保持される条件値のうちの1つを選択す
る。また条件コード論理518は、マイクロコード制御語
のLIT SELフィールドに応答して、COND CODE SELフィー
ルドがA SRCフィールドと共に使用されている時条件の
選択を抑止してリテラル値をバスA BUSに供給する。
ループカウンタ514は、マイクロコード制御語のフィ
ールドA SRC及A DSTの制御によってバスA BUS上でデー
タ値の出所或いは宛先の何れかとして動作できる16ビッ
トのカウンタである。ループカウンタ514はマイクロコ
ード制御語のビット30が論理1の値を持つ時にクロック
信号CKBに同期して減少する。このカウンタ514は、反復
ループにおける命令がマイクロコードシーケンサ226に
よって遂行される回数をカウントするのに使用される。
動作の一般的なモードでは、バスA BUS及びB BUSは完
全に独立している。しかし、ビデオ信号プロセッサ210
は、これらの2つのバスが単一のバスとして結合される
状態中に置かれることがある。このモードはHALTモード
である。プロセッサ210はマイクロプロセッサ224によっ
てHALTモードに置かれることがある。マイクロプロセッ
サ224によって与えられるHALTによって、双方向ゲート
回路520が両バスを結合する。このモードの時、マイク
ロプロセッサ224はどのレジスタをもこの結合されたバ
ス上で出所或いは宛先としてアクセスすることが出来
る。この特徴ある構成によって、ビデオ信号プロセッサ
210のテストは容易になり、マイクロプロセッサ224はプ
ロセッサ210をこれが多数の所定状態の何れにおいても
開始するように接続できる。この実施例では示していな
いが、バスゲート回路520はマイクロコード制御語の1
つにビット例えばビット47によって制御するようにして
もよい。マイクロコード命令の制御によって、ゲート回
路520はバスA BUSとB BUSとを結合し、両バスの一方の
上にある出所によって与えられるデータを他方のバスに
結合された宛先へ転送することも可能である。
4個の汎用レジスタR0、R1、R2及びR3に加えてビデオ
信号プロセッサ210は、データ値の一時記憶のためデー
タRAM回路228を使用する。第6図はこの実施例と共に使
用されるデータRAM回路228の細部をブロック図で示して
いる。データRAM回路228には、256×16ビットのRAM61
0、4個のアドレスレジスタDR0、DR1、DR2及びDR3を持
つレジスタファイル612、増加/減少回路(INC/DEC)62
2及び制御回路614が含まれている。制御回路614はマイ
クロコード制御語のフィールドA SRC、A DST、B SRC及
びB DSTに応答して、RAM610への及びRAM610からデータ
を転送し、まりレジスタファイル612の種々のレジスタ
中のアドレス値をロードし、またこれらのアドレス値を
増加或いは減少させることも可能である。
正規動作モードにおいて、マイクロコード制御語の関
連フィールドがバスMCWを介して制御回路614に供給され
る。RAM610をアクセスするためのアドレスを表わす値
は、例えばALU回路244によって、マルチプレクサ(MU
X)616の1つの入力ポートにバスA BUSの8個のLSB位置
として供給される。マルチプレクサ616のもう1つの入
力ポートには、以下に述べるように増加/減少回路622
によって発生される8ビットアドレス値が供給される。
マルチプレクサ616は、制御回路614によって与えられる
信号MC1によって制御されて入力ポートに供給される2
個のアドレス値のうちの一方をレジスタDR0乃至DR3に供
給する。レジスタDR0乃至DR3は、8ビット並列入力並列
出力レジスタであり、それぞれ信号L0、L1、L2及び
3に応答して各入力ポートに供給される値をロードす
る。レジスタDR0乃至DR3によって与えられる出力値は、
それぞれマルチプレクサ(MUX)618の異なる入力ポート
に供給される。マルチプレクサ618は、制御回路614によ
って与えられる制御信号MC2によって制御されてレジス
タDR0乃至DR3によって保持されるアドレス値のうちの1
つを8ビットアドレスレジタ(ADDR REG)620の入力ポ
ートに供給する。このアドレス値は、制御回路614によ
って与えられる制御信号LAに応答するアドレスレジス
タ620中へロードされる。アドレスレジスタ620に保持さ
れるアドレス値はRAM610のアドレス入力ポートと増加/
減少回路622の入力ポートとに供給される。この増加/
減少回路622は、制御回路614によって与えられる信号I/
Dによって制御されて入力ポートに供給されたアドレス
値を増加或いは減少させてこの変形アドレス値を上述の
ようにマルチプレクサ616の第2の入力ポートに供給す
る。
マルチプレクサ618によって与えられるアドレス値
は、3状態のゲート619を介してバスA BUSに供給される
ことがある。このゲート619は、制御回路614によって与
えられる信号R0に応答して、マルチプレクサ618とソー
ス621とによって与えられる16ビット値か或いは高イン
ピーダンスの何れかをバスA BUSに供給する。この実施
例ではゲート619の使用により、レジスタDR0乃至DR3に
保持される値を8ビットデータ値としてバスA BUSに供
給することが出来る。バスA BUSに供給される値の8個
のMSBは0に設定される。バスMCWを介して与えられるマ
イクロコード制御語A SRCフィールドが、レジスタDR0乃
至DR3の1つがバスA BUSを介して転送されるべきデータ
値の出所であることを示す時、信号R0がゲート619を制
御して値をバスA BUSに供給するようにする。
RAM610中へ記憶すべきデータ値は、2個の16ビットバ
スA BUS及びB BUSを介してデータRAM回路228に供給され
る。16ビットの3状態のゲート624が、制御回路614によ
って与えられる信号AINに応答してバスA BUSからのデー
タ値或いは高インピーダンスの何れかをRAM610のI/Oバ
スに供給する。同様のゲート626が、制御回路614によっ
て与えられる信号BINに応答してバスB BUSからのデータ
値或いは高インピーダンスを選択的にRAM610のI/Oバス
に供給する。
RAM610のI/Oバスに供給されたデータ値は、アドレス
レジスタ620に保持されるアドレス値によってアドレス
されたデータセルに書込まれる。制御回路614は書込可
動W信号WEを発生し、RAM610はこの信号WEに応答して所
定のメモリサイクル中にデータ値をアドレスされたセル
に書込む。
データ値は、メモリサイクルの少なくとも一部中に信
号WEを論理0の状態に保持することによってRAM610のア
ドレスされたセルから読取ることが出来る。RAM610から
読取られた値は、バスA BUS及びB BUSの一方或いは両方
にそれぞれゲート628及び630を介して供給することが出
来る。これらのゲート628及び630は、ゲート624及び626
と同様であり、それぞれ制御回路614によって与えられ
る信号AOUT及びBOUTに応答して、RAM610によってそのI/
Oバスを介して与えられる出力値或いは高インピーダン
スをそれぞれバスA BUS及びB BUSに供給する。
上述のようにデータRAM回路228が行う動作はマイクロ
コード制御語のフィールドA SRC、A DST、B SRC及びB D
STの値によって決定される。下の表4には、これら4つ
のフィールドの種々の値に応じて行われる動作が示され
ている。
表4の機能は、ビデオ信号プロセッサ210に対するマ
イクロコード制御語を発生するのに使用されるアセンブ
ラ言語のように符号化される。レジスタの記号の前に付
けられている*印は、書込まれる値或いは読取られる値
がレジスタに保持される値によってアドレスされるRAM
セルへ転送される値或いはそのRAMセルから転送される
値であることを示している。レジスタの記号の前に*印
がない場合は、書込まれる値或いは読取られる値はその
記号のレジスタに保持される8ビット値である。レジス
タの記号の後に付けられた「++」及び「−−」は、そ
れぞれそのレジスタ中の値が、アドレスされたメモリセ
ルがアクセスされた後に増加或いは減少させられること
を示している。
符号化された動作がA SRC或いはB SRCの欄にある場
合、その動作は読取動作であり、その出力値はそれぞれ
バスA BUS或いはB BUSへとゲートされる。符号化された
動作がA DST或いはB DSTの欄にある場合、その動作は書
込動作であり、その入力値はそれぞれバスA BUS或いはB
BUSによって与えられる。
第7A図乃至第7E図は、マイクロコード制御語のフィー
ルドA SRC、A DST、B SRC及びB DSTに対応して制御回路
614が与える種々の信号を示すタイミング図である。第7
A図乃至第7E図のタイミング図には本願の他のタイミン
グ図と比較するためにマイクロコードRAM・シーケンシ
ング回路226によって与えられるクロック信号CKAが示さ
れている。
第7A図には、8ビット値をバスA BUSからレジスタDR0
に書込む要求(即ちA DST=28)に応答して制御回路614
が与える種々の信号のタイミングが示されている。命令
サイクル中の初期の所定時点で、レジスタDR0に書込ま
れるべき値VALがバスA BUSに供給される。この命令サイ
クル中、制御回路614は信号MC1を論理1に保持し、この
信号に応答してマルチプレクサ616はバスA BUSの8個の
LSB位置によって運ばれる値をレジスタDR0乃至DR3の入
力ポートに供給する。バスA BUSに供給された値が安定
すると、制御回路614はパルス信号L0を発生し、この信
号L0に応答してレジスタDR0はその入力ポートに供給さ
れた値をロードする。レジスタDR1、DR2及びDR3をロー
ドさせる指令も同様であり、パルス信号L1、L2及びL
3のうちの1つが第7図Aに示すパルス信号L0の代りに
発生される。
第7B図には、レジスタDR0に保持される値をバスA BUS
の8個のLSB位置に転送する(即ちA SRC=28)ために制
御回路614が発生する信号のタイミングが示されてい
る。命令サイクルが開始したすぐ後の所定時点で制御回
路614は信号MC2が0の値を持つように変える。この信号
MC2に応答してマルチプレクサ618は、レジスタDR0に保
持される値をゲート619の入力ポートに供給する。信号M
C2を換えた後、制御回路614は信号R0として論理1をゲ
ート619に供給する。この信号R0に応答してゲート619
は、レジスタDR0に保持される値をバスA BUSの8個のLS
B位置に供給し、0の値をバスA BUSの8個のMSB位置に
供給する。レジスタDR1、DR2及びDR3中の値も同様の信
号変更シーケンスを用いて読取ることが出来る。唯一の
違いとしては、信号MC2の値が第7B図に示す0の代りに
それぞれ1、2及び3となる。
第7C図には、レジスタDR0に保持されるアドレス値に
よってアドレスされるRAM610のメモリセルから値を読取
る(即ちA SRC=16)のに使用される信号のタイミング
が示されている。この動作のため、制御回路614はま
ず、信号MC2を0の値を持つように変え、この信号MC2に
応答してマルチプレクサ618はレジスタDR0に保持される
アドレス値をアドレスレジスタ620の入力ポートに供給
する。この信号が安定すると、制御回路614はパルス信
号LAを発生し、これによってアドレス値がアドレスレ
ジスタ620中へロードされる。アドレス値がRAM610のア
ドレスデコード論理を通過するとアドレスされた値はRA
M610のI/Oバス上に得られる。次に制御回路614は、信号
AOUTの値を論理1に変えることによってこのアドレスさ
れた値をバスA BUSへとゲートする。レジスタDR1によっ
てアドレスされる値も、信号MC2の値が0の代りに1と
なること以外は同じ命令シーケンスを用いて読取ること
が出来る。この実施例において、レジスタDR2或いはDR3
によってアドレスされるRAM610中のデータは、バスB BU
Sのみを介して読出すことも出来る。これらの信号を読
取るための信号のシーケンスは、第7C図のMC2の値をそ
れぞれ2或いは3に変え、ゲート用信号AOUTの代りに信
号BOUTを使用することによって得ることが出来る。
第7D図には、データRAM回路228がバスB BUSによって
与えられる値をレジスタDR2中に保持されるアドレス値
を持つRAM610のセルへ書込む(即ち、B DST=2)よう
に制御する信号が示されている。この動作における第1
段階として、制御回路614は信号MC2の値を2に変える。
この信号MC2に応答してマルチプレクサ618は、レジスタ
DR2中に保持されるアドレス値をアドレスレジスタ620の
入力ポートに供給する。アドレス値が安定すると、制御
回路614はパルス信号LAを発生し、この信号LAに応答
してアドレスレジスタ620は入力ポートに供給された値
をロードする。RAM610へ供給されたアドレス値が安定し
た後、制御回路614が信号BINを論理1の値に変え、この
信号BINに応答してゲート626はバスB BUS上の値をRAM61
0のI/Oバスへ供給する。安定期間後に制御回路614はパ
ルス信号WEを発生し、この信号WEに応答してRAM610はそ
のI/Oバス上のデータをそのアドレス入力ポートに供給
されたアドレス値を持つセルに書込む。レジスタDR3中
のアドレス値を使用してデータ値をバスB BUSからRAM61
0に書込むのに使用される信号は、信号MC2が2ではなく
3の値を持つこと以外は第7D図に示されるものと同じで
ある。この実施例では、バスA BUS上のデータを使用す
るメモリ書込動作はレジスタDR0及びDR1のみを使用して
もよい。従って、これらの動作(A DST=28或いは29)
に使用される信号を表わすとすると、第7D図は、3つの
点即ち信号B BUSが信号A BUSになり、信号MC2の値がそ
れぞれ0或いは1になり、信号BINが信号AINになって変
えられることになる。
第7E図は、第7D図と同様の動作を表わすが、アドレス
値がデータ値の記憶後に増加させられる点で異なる。こ
の動作は、フィールドB DST中の値が4の時に呼出され
る。信号B BUS、MC2、LA、BIN及びWEは、第7D図に関し
て説明したものと同じである。更に、信号BINの値を変
えるとすぐに、制御回路614は信号I/Dを論理1の値を持
つように変える。この信号I/Dに応答して増加/減少回
路622は、アドレスレジスタ620に保持される値を増加さ
せてその結果得られた値をマルチプレクサ616の第2の
入力ポートに供給する。この値が安定すると、制御回路
614はパルス信号MC1を発生し、これによって増加したア
ドレス値はレジスタテDR0乃至DR2に供給される。信号MC
1が論理1の状態にある間、制御回路614はパルス信号L
2を発生し、これによって増加したアドレス値はレジス
タDR2にロードされる。
命令サイクルの間ずっと信号I/Dの値を論理0に保持
することによって、第7E図に示す信号を変えてアドレス
値を増加させる代りに減少させることが出来る。レジス
タDR0、DR1及びDR3を使用する書込動作用の信号は、第7
E図に基づいて、信号B BUS、MC2及びBINを第7D図に関し
て上述したように変えることによって得ることが出来
る。更に、読取・増加動作(A SRC=18及び19とB SRC=
4及び5)と読取減少動作(A SRC=20及び21とB SRC=
6及び7)に使用される信号は、第7E図から信号MC1、I
/D及びL2を適切に変えて第7C図に示される信号に付加
えることにより得られる。
この実施例において、第7A図乃至第7E図に示されるパ
ルス信号は、クロック信号源225によってデータRAM回路
228に与えられる25MHzの信号CLKのパルスを選択的にゲ
ートすることによって及びゲートされたクロックパルス
を縦続接続されたゲート素子を介して遅延させることに
よって生成することが出来る。クロック信号CLKがその
制御信号を生成するのに使用されても、データRAM回路2
28はクロック信号CKA及びCKBに応答し、これらのクロッ
ク信号がPAUSE或いはHALTの指令によって凍結される時
その動作を停止する。
デジタル信号処理回路設計の当業者であれば、第6
図、第7A図乃至第7E図及びこれに関連する説明から容易
にデータRAM回路228に使用するに適した制御回路614を
作ることが出来る。
第1B図に関して上述したように、映像セグメントは、
前の映像からの対応するセグメントの変形として符号化
できる。相対的エンコーディングと呼ばれるこの符号化
の形には、2個のセグメント(例えば第1B図からのΔX
及びΔY)における対応するピクセル位置相互間の水平
及び垂直方向のオフセットを表わすパラメータが含まれ
ている。上述したように、これらのオフセットの値は隣
接するピクセル相互間の距離の分数で表わすことが出来
る。ピクセルオフセット値の分数部分が0でない映像を
適切にデコードするために、ビデオ信号プロセッサ210
には前のフィールドにおけるセグメントのピクセルから
疑似ピクセルを発生する回路が含まれていることが望ま
しい。これらの疑似ピクセルは、分数で表わされるよう
にオフセットされたピクセルの値に近似した値を持つ。
この実施例において、疑似ピクセルはピクセル補間器24
6によって生成される。
ピクセル補間器246は、垂直方向に補間されるピクセ
ルに対応する中間値の対を計算及び記憶するように構成
されている。これらの中間値の対は次に補間器246に帰
還され、補間器246は、連続する中間値に基づいて動作
して水平方向の補間を行い、水平及び垂直の両方向にお
いて補間されるピクセル値を生成する。即ち、ピクセル
補間器246は、交互に垂直及び水平補間計算を行って出
力疑似ピクセル値を生成する。
第8A図には、ピクセル補間器246として使用するのに
適した回路がブロック図で示されている。第8A図で、16
ビットバスA BUSがレジスタ(REG)802と812のそれぞれ
の入力ポートに結合されており、それぞれ例えばデータ
RAM228からのピクセルデータと例えばALU244からの制御
値とをピクセル補間器246に供給する。レジスタ802及び
812は、それぞれマイクロコード制御語のA DSTフィール
ドが5及び6の値を持つ時、バスA BUSからの値をロー
ドする。マイクロコード制御語は、制御バスMCWを介し
てピクセル補間器246に供給される。レジスタ812は制御
回路814に結合されており、この制御回路814は次に述べ
るようにピクセル補間器246の種々の構成部分に対する
制御信号を発生する。
レジスタ802へロードされた16ビット値は、A DSTフィ
ールドが5の値を持つ時、ピクセル補間器246によって
入力ビデオ信号の水平線上の連続する位置を持つ2個の
8ビットピクセル値として解釈される。信号LR1及びLR0
に応答して、レジスタ802に保持される値はそれぞれ16
ビットレジスタ(REG)804及び806に交互に転送され
る。ピクセル補間器246の正規動作において、レジスタ8
02に供給される1つ置きの値は、入力ビデオ信号の連続
する線からの対応するサンプル対である。例えば、入力
ビデオ信号のピクセルを三角形で表わした第9A図におい
て、レジスタ802に供給される最初の値にはピクセルS
00及びS01を表わす値が含まれることになり、その次に
レジスタ802に供給される値にはビデオ信号の次の線か
らの対応するピクセル値であるピクセルS10及びS11
表わす値が含まれることになる。
第9A図乃至第9C図に関して次に述べるように、ピクセ
ル補間器246は、レジスタ804及び806に記憶されたピク
セル対を水平方向に隣接するピクセル値から垂直方向に
隣接するピクセル値に変換することが望ましい。この目
的のため、レジスタ804及び806の8個のMSB位置はそれ
ぞれレジスタ(REG)808の8個のMSB位置及び8個のLSB
位置に結合され、またレジスタ804及び806の8個のLSB
位置はそれぞれレジスタ(REG)810の8個のMSB位置及
び8個のLSB位置に結合されている。レジスタ808及び81
0は、制御回路814によって与えられる信号XFに応答して
それぞれの入力ポートに供給される値をロードする。上
述の例で、レジスタ808及び810では、それぞれ制御回路
814がパルス信号XFを発生した直後にピクセル値対S00
とS10及びピクセル値対S01とS11が収容される。
レジスタ808及び810によって与えられる16ビット値
は、それぞれマルチプレクサ(MUX)811の異なる入力ポ
ートに供給される。マルチプレクサ811は、制御回路814
によって与えられる信号MVに応答して入力ポートのうち
の選択された1つに供給される16ビット値を通過させて
マルチプレクサ(MUX)816及び818に送る。マルチプレ
クサ811の出力値の8個のMSB位置は、マルチプレクサ81
6の1つの入力ポートに供給される。マルチプレクサ811
の出力値の8個のLSB位置は、マルチプレクサ818の対応
する入力ポートに供給される。
マルチプレクサ816及び818は、制御回路814によって
与えられる信号MLに応答して、マルチプレクサ811によ
って与えられる2個のピクセル値かそれぞれマルチプレ
クサ(MUX)861及び863によって与えられる2個の8ビ
ットの垂直方向に補間されたピクセル値かの一方を通過
させる。マルチプレクサ816及び818によって通過させら
れたピクセル値はそれぞれレジスタ(REG)820及び822
に供給される。レジスタ820及び822は、マイクロコード
RAM・シーケンシング回路226によって与えられるクロッ
ク信号CKAに応答して、それぞれの入力ポートに供給さ
れた値をロードする。次に減算器824がレジスタ822に保
持されるピクセル値をレジスタ820に保持されるピクセ
ル値から引く。減算器824によって得られたピクセル差
の値は乗算器回路825に供給される。
この実施例に使用される乗算器825は、プログラム可
能なシフト及び加算型の乗算器である。第8B図には、乗
算器825として使用するのに適した回路が示されてい
る。乗算すべき値が2つのデータパスに供給される。こ
のデータパスの各々には直列に結合された3個のシフタ
(SHIFT)・マルチプレクサ(MUX)対が含まれている。
第1及び第2のデータパスの両方は9ビット値を運ぶ。
減算器824によって与えられる8ビット値は、シフタ826
及び840とマルチプレクサ828及び842とに供給される9
ビット値の8個のMSB位置として供給される。この値のL
SBは0である。付加的な精度ビットが乗算器825で使用
されて、シフト及び加算の乗算技術の為に生じる可能性
のある切捨て誤差が軽減される。
第1のデータパスに含まれるシフタ826は、減算器824
によって与えられるピクセル差の値を受取り、この値の
ビットシフトされたものをマルチプレクサ828の1つの
入力ポートに供給する。マルチプレクサ828の他方の入
力ポートは、減算器824の出力ポートに直接結合されて
いる。シフタ826、及び乗算器825の他のシフタの各々
は、9ビット入力値の8個のMSB位置を9ビット出力値
の8個のLSB位置として供給する。論理0の値がその出
力値のMSB位置に挿入される。デジタル信号処理回路設
計の当業者であればこの種のシフトが2で割る割算に等
しいものであることが判るであろう。マルチプレクサ82
8は制御回路814によって与えられる信号MA1に応答して
出力ポートにシフトされた値或いはシフトされていな値
を与える。マルチプレクサ828の出力ポートは、シフタ8
30の入力ポートとマルチプレクサ832の一方の入力ポー
トとに結合されている。シフタ830及びマルチプレクサ8
32は、シフトタ826及びマルチプレクサ828と同様に構成
されている。マルチプレクサ832は、制御信号MA2に応答
してマルチプレクサ828の出力値或いはこの出力値のビ
ットシフト後の値の何れか選択的に供給する。マルチプ
レクサ832は、出力値をこれに結合されたシフタ834及び
マルチプレクサ836とに供給する。これらのシフタ834及
びマルチプレクサ836は、シフタ830及びマルチプレクサ
832と同様に構成されている。マルチプレクサ836は、制
御回路814によって与えられる信号MA3によって制御され
る。
第2のデータパスには、3個のシフタ・マルチプレク
サ対840と842、844と846及び848と850が含まれており、
各対は第1のデータパスのシフタ・マルチプレクサ対と
同様に構成されている。マルチプレクサ842、846及び85
0はそれぞれ信号MB1、MB2及びMB3によって制御される。
マルチプレクサ850により与えられる出力値は選択的
2の補数回路(SEL 2′S COMP)852に供給される。この
回路852は、制御回路814によって与えられる制御信号CP
に応答して入力値或いはその入力値の2つの補数の何れ
かをレジスタ(REG)854の入力ポートに供給する。第1
のデータパスのマルチプレクサ836によって与えられる
出力値は、レジスタ(REG)838の入力ポートに直接供給
される。レジスタ838及び854の両方は、マイクロコード
RAM・シーケンシング回路226によって与えられるクロッ
ク信号CKBに応答してそれぞれの入力ポートに供給され
た値をロードする。レジスタ838及び854によって与えら
れる出力値はそれぞれ加算器856の異なる入力ポートに
供給される。この加算器856によって与えられる値が乗
算器825の出力値となる。
乗算器825は、信号MA1、MA2、MA3、MB1、MB2及びMB3
の値が制御されることによって、8分の1から1までの
8分の1ごとの値を持つスケールファクタ(scale fact
or)で減算器824によって与えられる値を乗算する。表
5はスケール処理した(スケールファクタによって処理
した)出力値を得るのに必要な種々の制御信号の値の一
覧表である。表5において、MA信号或いはMB信号の1つ
が0の制御値を持つ時、対応するマルチプレクサはそれ
に応答してシフトされていない値を通過させ、1の制御
値を持つ時、対応するマルチプレクサはそれに応答して
シフトされた値を通過させる。信号CPの値が1の時、選
択的2の補数回路852はこれに応答して入力ポートに供
給された値の補数をとる。
加算器856によって与えられるスケール処理されたピ
クセル差値は、レジスタ(REG)857によって与えられる
ピクセル値に加えられる。レジスタ857に保持されるピ
クセル値は、マイクロコードRAM・シーケンシング回路2
26によって与えられるクロック信号CKBに同期してレジ
スタ822からロードされる。減算器824、乗算器825、加
算器856及び加算器858によって行われる作用は次の等式
(2)によって表わすことが出来る。
ここで、A及びBはそれぞれレジスタ820及び822に保
持されるピクセル値。SFは、例えばALU244によって制御
値におけるフィールドとして与えられ且つレジスタ812
に保持されるスケールファクタの値。このスケールファ
クタSFはMA、MB及びCPの信号を介して乗算器825に供給
される。Rは加算器858によって与えられる値である。
式(2)を代数的に操作すると、従来型の線形補間動作
を表わす式(3)が得られる。
従って、減算器824、乗算器825、加算器856及び加算
器858の組合せは線形補間器となる。
加算器858によって与えられる値は、レジスタ(REG)
860及び862のそれぞれの入力ポートと、マルチプレクサ
861及び863のそれぞれの第1の入力ポートに供給され
る。マルチプレクサ861及び863の第2の入力ポートは、
それぞれレジスタ860及び862の出力ポートに結合されて
いる。レジスタ860及び862は、入力ポートに供給された
値をそれぞれクロック信号φ2及びφ1が負方向に移行
すると同時にロードする。マルチプレクサ861及び863
は、それぞれクロック信号φ2及びφ1が論理1の値を
持つ時、加算器858によって与えられる値を通過させて
それぞれマルチプレクサ816及び818に供給し、クロック
信号φ2及びφ1が論理1の値を持たない時、レジスタ
860及び862に保持される値を通過させる。レジスタ860
及び862とマルチプレクサ861及び863のこの構成によっ
て、加算器858によって与えられる値をレジスタ860及び
820の両方に或いはレジスタ862及び822の両方に同時に
ロードできる。これが可能であることの重要性を後で第
9C図を参照しつつ説明する。
加算器858によって与えられるピクセル値は更に16ビ
ットレジスタ(REG)864の8個のMSB位置と8個のLSB位
置の両方に供給される。レジスタ864の8個のMSB位置は
制御回路814によって与えられる信号LO1に同期してロー
ドされ、レジスタ864の8個のLSB位置は制御回路814に
よって与えられる信号LO0に同期してロードされる。レ
ジスタ864に保持されるピクセル値は、制御回路814によ
って与えられる信号XOに応答してレジスタ(REG)866に
転送される。次にこれらのピクセル値は、バスMCWを介
してレジスタ866に供給されるマイクロコード制御語A S
RCフィールドによって制御されてレジスタ866からバスA
BUSに供給される。
正規動作モードにおいて、ビデオ信号プロセッサ210
の構成部分としてピクセル補間器246は、現在の映像に
対するピクセル値を発生する1つの段階として前の映像
のピクセル値から補間された疑似ピクセル値を発生す
る。第9A図乃至第9C図はピクセル補間器246の動作を示
している。
第9A図において、三角形点S00乃至S07及びS10乃至
17は、入力FIFO232及びデータパス242を介してVRAM21
6中のビット・マップから与えられる前の映像の2本の
連続する線からの対応するピクセル値を表している。円
形点I00乃至I07は、補間された疑似ピクセル値を表わ
している。第9A図に示されるように、補間された疑似ピ
クセル値は、前の映像のピクセルに対して水平方向にピ
クセル相互間隔の4分の1また垂直方向にピクセル相互
間隔の8分の5だけオフセットされている。
第9B図は、ピクセル補間器246がどのようにバスA BUS
に供給されたデータ値によって制御されて疑似ピクセル
値I00乃至I03を発生するかを示している。第9B図で、
期間T0乃至T16はビデオ信号プロセッサ210の17の連続
する命令サイクルを表わしている。命令サイクルT
0中、マイクロコード制御語のフィールドA DSTは4の値
を持ち、これによってピクセル補間器246は例えばバスA
BUSを介してALU244から供給される16ビット制御値をロ
ードする。ピクセル補間器246は、この16ビット制御値
の8個のMSB位置に制御されて同相モードで動作する。
このモードにおいて、入力ピクセル値及び対応する出力
ピクセル値は共にVRAM216中の偶数のアドレスを持つ。
ピクセル補間器246はもう一方のモードである離相モー
ドで動作することが出来る。この離相モードにおいて、
入力ピクセルアドレス値は奇数個であり、出力ピクセル
アドレスは偶数個ある。期間T0においてピクセル補間
器246に供給される制御値は、更にビット0〜3及び4
〜7にそれぞれ値5及び2を持つ。値2は水平方向のオ
フセット或いはスケールファクタ/2/8即ち1/4に相当
し、値5は垂直方向の5/8のオフセットに相当する。こ
の実施例では、値5及び2は、第1B図に示されるものの
ような相対的コードレコードの値ΔX及びΔYの分数部
分から得られる。
命令サイクルT1及びT2中、マイクロコード制御語A
DSTフィールドが5の値を持ち、それぞれピクセル値対
00、S01及びS10、S11がピクセル補間器246のレジ
スタ802へ供給される。命令サイクルT3の間、ピクセル
補間器246に関してバスA BUS上には作業がない。命令サ
イクルT4中、補間されたピクセル値の無効対(X、
X)がピクセル補間器246の出力ポートに得られる。こ
れらの値は、ビデオ信号プロセッサ210によって無視さ
れる。
命令サイクルT5及びT6中、それぞれピクセル対
02、S03及びS12、S13がピクセル補間器246のレジ
スタ802へ供給される。命令サイクルT7中、ピクセル補
間器246に対してバスA BUS上には作業がない。命令サイ
クルT8中、補間されたピクセル値の第2の無効対がピ
クセル補間器246の出力ポートに得られる。これらの値
は無視される。命令サイクルT9及びT10中、それぞれ
ピクセル値対S04、S05及びS14、S15がピクセル補間
器246のレジスタ802に供給される。命令サイクルT
11中、ピクセル補間器246に関するバスA BUS上の作業は
ない。命令サイクルT12中、マイクロコード制御語のA
SRCフィールドは5の値を持ち、これによってピクセル
補間器246は、補間されたピクセル値I00及びI01を表
わす16ビット値をバスA BUSに供給する。
命令サイクルT13乃至T16は命令サイクルT9乃至T
12と同様で、ピクセル補間器246に供給されるピクセル
値及びピクセル補間器246によって与えられるピクセル
値が異なるだけである。一般に、マイクロコードシーケ
ンサ226は、所望の補間された疑似ピクセル値すべてを
生成するのに必要な多数の期間と異なる入出力ピクセル
値とを使用して命令サイクルT9乃至T12中の動作を繰
返す。
この実施例に使用されるピクセル補間器246は高度に
パイプライン構成された装置である。パイプライン遅延
は、11命令サイクル即ちT1において最初の入力値が供
給されてからT12において最初の有効出力値を与えるま
での間の遅延である。
第9C図は信号タイミング図であり、第9B図に示した例
の制御回路814によって生成される種々の信号のタイミ
ングを示している。信号CKA及びCKBは、1つの命令サイ
クル期間中に実質的に等しい期間を持つ離相クロック信
号である。クロック信号CKA及びCKBは、マイクロコード
RAM・シーケンシング回路226によってピクセル補間器24
6に供給される。
第8図に示されるピクセル補間器回路246に使用され
るレジスタすべては、立下がり端でトリガされる型式で
ある。即ち、これらのレジスタすべては、その入力ポー
トに供給された値をそのクロック信号或いはロード信号
が負方向に移行すると同時にロードするように制御され
る。第8図におけるレジスタは、クロック信号CKA或い
はクロック信号CKBの何れかに同期する。
第9B図および第9C図を参照する。ピクセル補間器に対
する制御値は信号CKAの負方向変化と一致した命令サイ
クルT0の期間中レジスタ812にロードされる。この値は
命令サイクルT0の終りまでに制御回路814中で安定化
し、各信号MA1、MA2、MA3、MB1、MB2、MB3、およびCPに
対する値1、0、0、1、1、1、および0を供給する
ように回路814の動作を設定する。これらの値は5/8のス
ケールファクタに相当し、このスケールファクタはこの
実施例では垂直に配列された対をなすピクセル値相互間
を補間するために使用される。
ピクセル値の第1の対S00とS01は信号CKAの負方向
変化と一致する命令サイクルT1の期間中にレジスタ802
にロードされる。これらのピクセル値は信号LR0の負方
向端と一致する命令サイクルT1の終了端でレジスタ806
に転送される。
ピクセル値の第2のS10とS11は命令サイクルT2
期間中に生ずるクロック信号CKAの負方向変化と一致し
てレジスタ802にロードされる。これらのピクセル値は
命令サイクルT2の終了時に生ずる信号LR1の負方向変化
と一致してレジスタ804に転送される。
命令サイクルT3の期間中にレジスタ804および806の
8個のMSB位置に保持されたピクセル値はレジスタ808の
各8個のMSBと8個のLSB位置に転送され、レジスタ804
および806の8個のLSB位置に保持されたピクセル値はレ
ジスタ810の各8個のMSBと8個のLSB位置に転送され
る。この転送は信号XFの負方向変化と一致して行なわれ
る。この転送によって、各レジスタ804および806中の水
平方向に配列されたピクセル値S00、S01およびS10
11をそれぞれレジスタ808、810中で垂直方向に配列さ
れたピクセル値S01、S11およびS00、S10に変換する
効果が得られる。
サイクルT4の期間中、制御回路814は信号MAI乃至MA
3、MB1、乃至MB3、およびCPを、5/8のスケールファクタ
と一致した値をもつように変更する。制御回路814は、
さらに信号MVとして論理1の値を発生し、信号MLとして
論理0の値を発生して、信号MVによって制御されるマル
チプレクサ811、信号MLによって制御されるマルチプレ
クサ816および818を、レジスタ810に保持された2個の
ピクセル値をレジスタ820、822の各入力ポートに結合す
るようにする。信号CKAの負方向端に一致して、命令サ
イクルT4の期間中、ピクセル値S00はレジスタ822にロ
ードされ、ピクセル値S10はレジスタ820にロードされ
る。命令サイクルT4の残りの期間中は、レジスタ820お
よび822に保持された値は、前述のように減算器824およ
びマルチプレクサ825の第1および第2のデータパスを
経由して伝播する。マルチプレクサ836および選択的2
の補数器852によって供給されるスケール処理されたピ
クセル差値は、命令サイクルT4の終了時に生ずる信号C
KBの負方向端と一致して各レジスタ838、854にロードさ
れる。これと同時にレジスタ822からのピクセル値S00
はレジスタ857にロードされる。
命令サイクルT5において、レジスタ838および854に
保持されたピクセル差分値は加算器856によって加算さ
れる。得られた和は加算器858においてレジスタ857から
供給されるピクセル値S00と加算される。ピクセル値S
10の5/8倍とピクセル値S00の3/8倍との和を表わす加算
器858によって与えられた和は信号φ1の負方向端と同期
してレジスタ862に記憶される。
また、命令サイクルT5の期間中、バスA BUSを経て供
給されるピクセル値S02とS03はレジスタ802にロード
され、次いで信号LR0の負方向変化と同期してレジスタ8
06に転送される。命令サイクルT6の期間中、ピクセル
値S12およびS13はバスA BUSに供給され、レジスタ802
にロードされ、次いで信号LR1の負方向変化と同期して
レジスタ804に転送される。
命令サイクルT6の中間において、レジスタ808に保持
されたピクセル値S01およびS11はマルチプレクサ81
1、816および818を経て各レジスタ820、829に供給され
て、信号CKAの負方向端に応答してこれらの各レジスタ
にロードされる。これらのピクセル値は命令サイクルT
6の残りの期間中と命令サイクルT7の第1の半部の期間
中に減算器824、マルチプライヤ825、レジスタ857およ
び加算器858を通って伝播される。
命令サイクルT7の第1の半部の期間中、各レジスタ8
06、804に保持された水平に配列されたピクセル値
02、S03およびS12、S13は垂直に配列されたピクセ
ル値S02、S12およびS03、S13に変換されて、命令サ
イクルT7の中間点で生ずる信号XFの負方向変化と同期
して各レジスタ810、808に記憶される。
命令サイクルT7の期間中に加算器858によって供給さ
れた垂直に補間されたピクセル値(S01、S11)はレジ
スタ860にロードされ、さらにマルチプレクサ861および
816を経由して、命令サイクルT7の中間点で生ずる信号
CKAの負方向端に同期してレジスタ820にロードされる。
信号MLは、マルチプレクサ861から供給された値をレジ
スタ820に通過させるようにマルチプレクサ816を動作さ
せ、またマルチプレクサ861から供給された値をレジス
タ820に通過させるようにマルチプレクサ816を動作さ
せ、またマルチプレクサ863によって供給された垂直に
補間されたピクセル値(S00、S10)をレジスタ822に
供給するようにマルチプレクサ818を動作させる。この
ピクセル値は命令サイクルT7の中間点で生ずるクロッ
ク信号CKAの負方向変化と同期してレジスタ822にロード
され、信号MAI乃至MA3、MB1乃至MB3および信号CPは、
1、0、0、1、1、0および1の各値をもつように変
化させられる。これらの値はスケールファクタ1/4に相
当する。命令サイクルT7の第2の半部の期間中および
命令サイクルT8の第1の半部の期間中、減算器824、マ
ルチプライヤ825および加算器858は、この垂直補間され
たピクセル値の対からピクセル値を水平補間してピクセ
ル値I00を生成する。この値I00は、命令サイクルT8
の中間点で発生するLO0の負方向端と一致してレジスタ8
64の8個のLSB位置に記憶される。
また、命令サイクルT8の期間中にレジスタ810に保持
されたピクセル値S02、S12の対はマルチプレクサ81
1、816および818を経て各レジスタ822、820に転送され
る。これらのピクセル値は命令サイクルT8の中間点で
生ずる信号CKAの負方向変化と同期してレジスタ822およ
び820に転送される。命令サイクルT8の残りの期間およ
び命令サイクルT9の第1の半部の期間中に、減算器82
4、マルチプライヤ825および加算器858は対をなすピク
セル値S02、S12から垂直補間されたピクセル値を計算
する。この補間されたピクセル値は、命令サイクルT9
の中間点で生ずる信号φ1およびCKA各負方向変化と同期
してレジスタ862および822にロードされる。命令サイク
ルT9の残りの期間および命令サイクルT10の第1の半
部の期間中に、水平補間されたピクセル値I01は、マル
チプレクサ861および863によって供給された垂直補間さ
れたピクセル値から発生される。信号MA1乃至MA3、MB
1、乃至MB3、およびCPは、命令サイクルT9の期間中に
各々0、0、0、1、1、0および1の値をもつように
セットされる。これらの値はスケールファクタ3/4に相
当する。ピクセル値I01は、命令サイクルT10の中間点
で生ずる信号LO1の負方向変化と同期してレジスタ864の
8個のMSB位置に記憶される。ピクセル対I00、I
01は、信号XOの負方向変化と同期して命令サイクルT10
の終了時にレジスタ864からレジスタ866に転送される。
また、命令サイクルT10の中間点において、レジスタ
808に保持されたピクセル値S03およびS13は、信号CKA
の負方向端と同期して各レジスタ822および820にロード
される。命令サイクルT10の残りの期間および命令サイ
クルT11の第1の半部の期間中、垂直補間されたピクセ
ル値がピクセル値S03およびS13から生成される。この
ピクセル値は、命令サイクルT11の中間点で発生する各
信号φ2およびCKAの負方向変化と同期してレジスタ860
および820に記憶される。
命令サイクルT9およびT10の期間中、各ピクセルS
04、S05、およびS14、S15は各レジスタ806、804にロ
ードされる。命令サイクルT11の中間点で、これらのピ
クセル値は垂直配列されたピクセル対S04、S14、およ
びS05、S15に配列され、これらは各レジスタ810、808
に記憶される。
命令サイクルT11の第2の半部と命令サイクルT12
第1の半部の期間中に、減算器824、マルチプライヤ825
および加算器858はピクセル値I02を計算し、該ピクセ
ル値I02は命令サイクルT12の中間点で生ずる信号LO0
の負方向変化と同期してレジスタ864の8個の位置に記
憶される。また、命令サイクルT12の中間点において、
ピクセル対I00、I01はレジスタ866からバスA BUSに供
給される。
命令サイクルT12およびT13の期間中、垂直補間され
たピクセル値はピクセル対S04、S14に対して生成され
る。この補間されたピクセル値は、命令サイクルT13
中間点で生ずる信号φ2およびCKAの各負方向変化と同期
してレジスタ860および820にロードされる。命令サイク
ルT13およびT14の期間中に、ピクセル値I03は3/4の
スケールファクタを使用して発生される。このピクセル
値は命令サイクルT14の中間点においてレジスタ864の
8個のMSB位置に記憶される。命令サイクルT14の終了
時に、ピクセル対I02、I03はレジスタ864からレジス
タ866に転送される。このピクセル対は命令サイクルT
16の期間中にバスA BUSに供給される。
ピクセル補間器246を駆動する信号は4つの命令サイ
クル毎にくり返す。例えば、命令サイクルT13乃至T16
に対する信号は命令サイクルT9乃至T12に対する命令
と同じである。この信号くり返しのシーケンスは所望の
数の疑似ピクセル値を生成するのに必要な回数をくり返
される。
水平補間されるべき1対のピクセル値の第1の垂直補
間されたピクセル値はレジスタ820、822を交互に占有す
る。その結果、加算器858においてスケール処理された
垂直補間差値に加算される垂直補間された値は、連続す
る水平補間値を発生するために合成される垂直補間され
た値の連続する対の第1および第2の垂直補間値間で交
番する。水平補間の計算のためにこの交番を適合させる
ために、制御回路814は信号MA1乃至MA3、MB1乃至MB3、
およびCPに対してスケールファクタSFHおよび(1−S
FH)に対応する値を交互に供給する。ここで、SFHは水
平補間スケールファクタである。この例では、1対の第
1のピクセル値がレジスタ822にあるときは、1/4の水平
補間率は正しい疑似ピクセル出力値を生成する。しかし
ながら、1対の第1のピクセル値がレジスタ820にある
ときは、水平補間率は3/4に変化させられて正しい疑似
ピクセル出力値を発生する。
上述の説明では、命令サイクルT0の期間中にピクセ
ル補間器246に供給される制御値は補間器を同相モード
で動作するように設定する。第9D図および第9E図は離相
モードのピクセル補間器の動作を説明するものである。
上述のように、離相モードは、入力ピクセル対のアドレ
スがVRAM216中の16ビット値のアドレスと一致しないと
きにピクセル補間器246に対して選ばれる。この状態
は、対をなす入力ピクセル値がVRAM語の境界を横切って
分割されるときに生ずる。第9E図はこの状態を示してい
る。
ピクセル補間器246の同相モードと離相モードにおけ
る動作の基本的な相違が第9E図と第9F図に示されてい
る。第9E図に示すように、ピクセル値I00およびI
01は、その同相モードに示すように命令サイクルT12
期間中よりもむしろ命令サイクルT16の期間中に出力レ
ジスタ866において得られる。この動作の変更は、第9F
図に示すように、信号LO0とLO1とを切換え、信号XOを信
号CKAの2周期だけ遅延させることによって達成され
る。
ピクセル補間器246はビデオ映像に対する空間的補間
ピクセル値用装置として説明されているが、このピクセ
ル補間器246はさらに一般的には、水平方向、垂直方向
のいずれかにおけるピクセル値を平均するためにも使用
することができる。この機能は各種の濾波演算方式にお
いて有用である。例えば、第9A図のピクセル値がS00
01、S00、S01;S02、S03、S02、S03等のシーケン
スでピクセル補間器246に供給されると、補間器によっ
て与えられる出力値は、水平方向にのみ補間あるいは平
均されるピクセルを表わす。
上述の説明および第8A図、第8B図、第9A図乃至第9F図
を見れば、デジタルビデオ信号処理回路設計の技術分野
の技術者にとっては、ピクセル補間器246として使用す
るのに適した回路を設計し、製造することは容易であ
る。
VRAM216に保持されたピクセル値およびデータは、統
計的デコーダ230、入力FIFO232および234、出力FIFO236
を経てビデオ信号処理器210によってアクセスされる。
これらの装置を使用してVRAM216に関して実行されるす
べてのデータの呼出しおよびデータ書込み動作はVRAM制
御ユニット238によって調整される。統計的デコーダお
よび各FIFOは関連するVRAMアドレスおよび制御値をもっ
ている。マイクロコード・シーケンサ226はFIFOのパラ
メータを初期化し、その後各FIFOは自動的に動作を開始
する。ビデオ信号プロセッサ210から見ると、3個の入
力命令と1個の出力命令とが存在する。これらの3個の
入力命令は統計的デコーダ230、入力FIFO232あるいは入
力FIFO234からピクセル値を受取ることであり、出力命
令はは出力FIFO236にピクセル値を送ることである。こ
れらの装置はそれぞれVRAM216へ、あるいはVRAM216から
32ビット語用のメモリアクセス要求を発生し、また、8
あるいは16ビットピクセル値とVRAM216に記憶された32
ビット語との間の変換、あるいは統計的にコード化され
たデータをピクセル値に変換するために必要なパッキン
グ(Packing)あるいはアンパッキング(Unpacking)を
行なう。
統計的デコーダ230はVRAM216に保持された可変長コー
ド化データを16ビット2進値に変換し、該16ビット2進
値はマイクロコード制御語のB SRCフィールド中の14の
値に応答してバスB BUSに供給される。第10A図は統計的
デコーダ230として使用するのに適した回路のブロック
図を示す。
第13A図を参照して以下に説明するように、統計的デ
コーダ230に対するVRAM216をアクセスするために使用さ
れるアドレス値は、例えば、データRAM228から2段階で
VRAM制御ユニット238にロードされる。第1段階で、22
ビットのアドレス値の8個のMSB位置を表わす値は、マ
イクロコード制御語B DSTフィールドが31の値をもって
いる間にバスB BUSに供給される。次に、アドレス値の1
4個のLSB位置は、B DSTフィールドが30の値をもってい
る間にバスB BUSに供給された値の14個のMSB位置からロ
ードされる。マイクロコード制御語のB DSTフィールド
中の30の値は、統計的デコーダ230をリセットし、統計
的デコーディング動作を初期化するように制御回路1018
を動作させる。
命令の代表的なシーケンスは次のように進行する。2
つの連続する命令サイクルの期間中、アドレス値の8個
のMSBおよび14個のLSBはそれぞれVRAM制御ユニット238
中の1対のレジスタにロードされる。アドレス値の14個
のLSBがロードされる同じ命令サイクル中に、統計的デ
コーダ230はリセットされ、動作を開始する。
リセット動作は、フリップ・フロップ1017に対する信
号RVとして論理1の値を供給する制御回路1018によって
行なわれ、出力レジスタ1016に保持された8ビット値を
無効なものとしてマークする。同時に、制御回路1018は
パルス信号RDRを発生して、これをフリップ・フロップ1
022のセット入力端子Sに供給する。この動作によって
フリップ・フロップ1022の出力信号SDRを論理1の値に
変化させる。信号SDRはバスR/Sを経てVRAM制御ユニット
238に供給されて、VRAM216中のアドレスされた位置にお
ける読出し動作を要求する。フリップ・フロップ1022の
出力信号SDRは制御回路1018にも供給されて、データがV
RAM216から要求されていることを指示する。
VRAM制御ユニット238が要求された読出し動作を処理
し、VRAM216が要求された32ビット値をバスD BUSに供給
すると、VRAM制御ユニット238はバスR/Sを経て供給され
るパルス上ストローブ信号SDSを発生する。この信号は
レジスタ1010を、バスD BUSからの32ビット値をロード
するように動作させる。信号SDSはまたフリップ・フロ
ップ1022のリセット入力端子Rにも供給されて、32ビッ
トデータ値をレジスタ1010にロードされたとき、信号SD
Rの状態を論理0に変化させる。SDSが論理0になって信
号CKの1周期の1/2の期間後、制御回路1018は信号SRLを
発生し、レジスタ1010からの32ビット値をシフトレジス
タ1012に供給し、カウンタ1020に保持された値を0にリ
セットする。
統計的デコーダ230は、常にVRAM216から読出された32
ビット値のLSBと共にデコヒディング動作を開始する。
以下に述べるように、入力FIFO232および234と、出力FI
FO236は、VRAM216から読出され、あるいはVRAM216に書
込まれる4バイト値から転送されるべき最初のバイトと
してバイト位置の値を特定する。これらの装置に対する
バイト位置の値は、24ビットのアドレス値の2個のLSB
位置としてコード化される。この発明の実施例では、統
計的デコーダ230はこのバイト位置の値を無視する。そ
の結果、統計的デコーダ230に供給されるデータは、VRA
M216中の32ビット語のLSB位置と共に開始すると仮定さ
れる。
制御回路1018がレジスタ1010からの32ビットデータ値
を転送するためのパルス信号SRTを発生するときは、該
制御回路1018は記憶されたアドレス値を増加させるよう
にVRAM制御ユニット238を動作させるパルス信号RDRを発
生して、VRAM216からの次の連続する32ビットデータ値
をレジスタ1010に供給する。パルス信号SRLおよびRDRが
発生して信号CKの1周期の1/2の期間後に、回路1018は
信号ENとして論理1の値を統計的デコーディング回路10
14に供給し、回路1014にシフトレジスタ1012中に保持さ
れた値のデコーディングを開始させる。
この発明の実施例で使用される統計的デコーディング
回路1014は、例えば、ここに参考として示す米国特許第
4,396,906号、発明の名称「デジタル・ハフマン・エン
コーディングの方法と装置(Method and Apparatus for
Digital Huffman Encoding)」の明細書に記載されて
いる形式のものでよい。回路1014は可動化(イネイブ
ル)されると、システム・クロック記号CKを信号SRCKと
してシフトレジスタ1012およびカウンタ1020にゲートす
る。シフトレジスタ1012は、信号SRCKの各サイクル毎
に、LSB位置から開始し、MSB位置に向けて続く上記シフ
トレジスタ1012が保持する値の1ビットを供給する。各
ビットがシフトレジスタ1012によって供給されると、カ
ウンタ1020中の値は1だけ増加される。
統計的デコーディング回路1014が充分な数のビットを
処理して16ビットの出力値を発生すると、換言すれば、
統計的デコーディング回路1014が1個の可変長コード化
された値をデコードすると、該統計的デコーディング回
路1014はデコードされた16ビット値を出力レジスタ1016
の入力ポートに供給し、さらに論理1の値を信号RDYと
して制御回路1018に供給する。これによって制御回路10
18はパルス信号ORLを発生して、回路1014によって供給
された値を出力レジスタ1016にロードし、フリップ・フ
ロップ1017をセットして、レジスタ1016によって保持さ
れたデータを有効なものとする。
出力レジスタ1016に保持された値が、値14または15を
もったB SRCフィールドを有するマイクロコード制御語
を使用してバスB BUSに対する信号源としてアクセスさ
れると、このデコーディング動作はは完了する。制御回
路1018がB SRCフィールド中でこの値を検出した後、次
のクロック期間で、制御回路1018はパルス信号RVを発生
し、レジスタ1016に保持されたデータを無効なものとし
てマークする。B SRCに対する14の値により多くのデー
タ値を持つことを示し、15の値はアクセスされたデータ
値がシーケンスの最後であることを指示する。
上述の説明では、レジスタ1016中のデータは、それが
有効になるまでアクセスされないと仮定している。無効
データ(例えばB SRC=14、ORV=0)をアクセスするた
めの試みがなされると、制御回路1018はパルス信号PRを
発生する。このパルス信号PRはフリップ・フロップ1023
のセット入力端子Sに供給される。パルス信号PRが発生
されると、フリップ・フロップ1023の出力信号SDPAは論
理1の値に変化する。この信号は休止(ポーズ)論理24
0に供給されて、マイクロコードRAMおよびシーケンサ22
6によってビデオ信号プロセッサを休止状態にする。こ
の信号SDPAはさらにアンド・ゲート1025の一方の入力端
子に供給され、その他方の入力端子は信号SDRを受信す
るように結合されている。もしSDR、SDPAの双方が論理
1の値をもっていると、アンド・ゲート1025の出力信号
SDPは論理1になる。この信号は休止論理240を経てVRAM
制御ユニット238に供給されて要求された読出し動作の
優先度を増加させる。信号SPDは統計的デコーダ230から
の緊急読出し動作要求信号である。制御回路1018が信号
ORLを休止してレジスタ1016に保持された値を有効なも
のとしてマークすると、信号SDPAは論理0になって休止
状態を解く。
上述の例は統計的デコーダ230の内部動作を、1個の1
6ビット出力値を生成する場合について説明した。一般
には、デコーダ230は一連のこのような値を生成する。
このシーケンスの第1の値を生成するために、第10図に
示す回路は上述のように動作する。一旦その値が出力レ
ジスタ1016に転送されると、制御回路1018は論理1の値
を信号ENとして供給して、統計的デコーディング回路10
14を付勢す、次のデコードされた値を発生させる。第1
のデコードされた値が出力レジスタ1016からアクセスさ
れると、信号ORVは論理値0をもつように変化させら
れ、制御回路1018はパルス信号ORLを発生して第2の値
をロードする。第1の値がアクセスされたとき第2の値
がデコードされていないと、信号RDYが統計的デコーデ
ィング回路によって論理1の値に変化されるまで制御回
路1018はパルス信号ORLを発生しない。この動作シーケ
ンスは、マイクロ制御語のB SRCフィールド中の15の値
を使用して出力レジスタ1016中の値がアクセスされるま
でくり返される。出力レジスタ1016中の値が、そのB SR
Cフィールド中の15の値をもったマイクロコード制御語
に応答してアクセスされると、制御回路1016は信号ENの
値を論理0に変化させることによって統計的デコーディ
ング回路230の動作を終了させる。デコーダ230で使用さ
れるVRAMのアドレス値の14個のLSB位置に対する新しい
値が設定されるまでデータは統計的デコーダ230を用い
てアクセスされることはない。
上述のデコーディング動作のいずれにおいても、必要
に応じて32ビットのデータ値がVRAM216からレジスタ101
0に供給される。カウンタ1020がそのときの32ビット値
のMSBが回路1014に供給されたことを示す31の値をもつ
ように増加されると、制御回路1018はパルス信号SRLを
発生してレジスタ1010からの次の32ビット値をシフトレ
ジスタ1012に転送して、カウンタ1020の値をリセットす
る。同時に制御回路1018はパルス信号RDRを発生して、V
RAM216から次の連続する32ビット値を要求する。
カウンタ1020中の値が31に等しいとき、信号SDRの値
が論理1であると、レジスタ1010を満たすための読出し
動作は未だ完了していないので、制御回路1018はレジス
タ1010からの値をレジスタ1012に転送することはできな
い。この例では制御回路1018は信号ENを論理0の値をも
つように変化させ、デコーディング回路1014を非可動化
する。要求された読出し動作が完了すると、制御回路10
18はパルス信号SRLを発生してレジスタ1010からの新し
い32ビット値をレジスタ1012に転送し、信号ENの値を論
理1に変化させ、パルス信号RDRを発生する。これらの
信号は統計的デコーダ230を付勢して正規の動作を再開
させ、VRAM216から新しい32ビットの値を要求する。
第10B図は2個のデータ値がデコードされるときの制
御回路1018によって生成される信号の相対的タイミング
を示すタイミング図である。
第10A図および第10B図、さらに上述の説明から明らか
なように、デジタル処理回路の設計技術者にとっては統
計的デコーダ230として使用するのに適した回路を設計
し、製作することは容易なことである。
入力FIFO232および234は、ビデオ信号プロセッサ210
がそのピクセル処理素子を用いて処理するために、VRAM
216用のランダムな8ビットまたは16ビット値を読出す
ようにし、あるいは一連の8ビットまたは16ビット値を
読出すようにする。ランダムモード、シーケンシャルモ
ードのいずれの場合も、マイクロコードRAMおよびシー
ケンサ回路226によって実行されるマイクロコード制御
語命令はVRAM制御ユニット238に初期アドレス値を供給
する。選択された入力FIFOはVRAM制御ユニット238を経
てVRAM216をアクセスし、マイクロコードRAMおよびシー
ケンサ226による別の干渉なしに要求された1あるいは
複数の値をバスB BUSに供給する。
例えばデータRAM228によって供給されたFIFO232、234
に対する開始アドレス値は、統計的デコーダ230に対す
るアドレス値が特定される態様と同じ態様でVRAM制御ユ
ニット238において発生される。アドレス値の8個のMSB
位置は、23および27の各値をもったマイクロコード制御
語のB DSTフィールドに応答して、バスB BUSを経由して
各入力FIFO232および234に転送される。入力FIFO232お
よび234用のアドレス値の14個のLSB位置は、マイクロコ
ード制御語のB DSTがそれぞれ22および26の値をもった
とき、バスB BUSに供給される値の14個のMSB位置から転
送される。B DSTフィールドが22および26の値をもつと
き、バスB BUSに供給される値の2個のLSB位置は各入力
FIFO232および234内に記憶される。これらの2個のビッ
トによって表わされる値は、バスB BUSに供給されるべ
き第1のバイトとしてVRAM216によって与えられる4個
のバイト値の安定のバイトをポイントする。
第11A図は入力FIFO232あるいは234のいずれかとして
使用するのに適した回路を示すブロック図である。以下
ではFIFO232用の回路について説明する。入力FIFO234に
関する説明をも含ませるために、FIFO232の説明と異な
る部分については、その変更部分を括弧書きした。第11
A図に示す回路は、入力FIFOがランダムモードで動作す
るようにセットされた正規動作シーケンスに関して説明
されている。この説明の後にFIFOがシーケンシャルモー
ドで動作するようにセットされたときに動作シーケンス
の変更について説明されている。
シーケンスの第1のステップで、そのB DSTフィール
ドにおける21(FIFO234に対しては29)の値をもったマ
イクロコード制御語を使用してB BUSに制御値を供給す
る。このB DST値に応答して、例えばALU244によって供
給される制御値はレジスタ1112にロードされる。この例
で使用される制御値は入力FIFO232をそのシーケンシャ
ルモードとは対照的にそのランダムモードで動作させる
ようにし、バスB BUSに16ビット値ではなく8ビット値
を供給する。
シーケンスの次のステップで、前述のようにVRAM制御
ユニット238中のFIFO232内のアドレス値を設定する。FI
FO232内のレジスタ1110は22(26)後をもったマイクロ
コード制御語のB DSTフィールドに応答してバイト位置
の値、すなわちバスB BUSを経由して供給される16ビッ
トアドレス値の2個のLSBをロードする。制御回路1116
はまたこのB DSTフィールドの値によって、入力FIFO232
を初期状態にリセットし、VRAM読出し動作を開始させる
ように設定される。
このリセット動作では、制御回路1116はパルス信号CO
を発生してフリップ・フロップ1134をリセットする。信
号CKの1周期の1/2の期間の後、制御回路1116はパルス
信号PCを発生して、レジスタ1110からのバイト位置の値
をカウンタ1128とフリップ・フロップ1132にロードす
る。この動作信号CKの1周期1/2の期間後、制御回路111
6はフリップ・フロップ1133のセット入力端子Sに供給
されるパルス信号IRを発生する。フリップ・フロップ11
33によって発生された信号IFORは制御バスR/Sを経てVRA
M制御ユニット238に供給され、該VRAM制御ユニット238
をVRAM216中のアドレスされたメモリ位置に対する読出
し動作を開始させるようにする。信号IFORはまた制御回
路1116に供給されて、読出し動作が進行中であることを
指示する。
VRAM制御ユニット238が読出し動作を処理し、またVRA
M216が要求されたデータをバスD BUSに供給すると、VRA
M制御ユニット238はバスR/Sを経て供給されるパルス状
ストローブ信号IFSOを発生し、バスD BUSからの32ビッ
ト値をロードするようにレジスタ1118を動作させるよう
にする。信号IFOSはさらにフリップ・フロップ1133のリ
セット入力端子Rに供給されて、フリップ・フロップ11
33の内部状態をリセットし、メモリの読出し動作が完了
したことを示す信号IFORを論理値0にリセットする。
信号IFORが論理0になった後、信号CKの第1の周期の
期間中、制御回路1116はパルス信号LRを発生して、レジ
スタ1118に保持された32ビットの値をレジスタ1120に転
送する。
レジスタ1120のビットは、それぞれビット0〜7、8
〜15、16〜23、24〜31を包含する4個の8ビットセグメ
ントB0、B1、B2、B3に分割される。8ビットの値B0、B
1、B2、B3はマルチプレクサ1124の各異なる入力ポート
に供給される。マルチプレクサ1124はカウンタ1128によ
って、またはマルチプレクサ1130によって供給される値
によって制御されて、その入力に供給される4つの値の
1つを出力レジスタ1114の8個のLSB位置に供給する。
この例では、レジスタ1112中の制御値は、8ビット値
は出力レジスタ1114によって与えられるものであること
を示す。その結果、制御回路1116は信号MXCとして論理
値1をマルチプレクサ1126に供給する。信号MXCのこの
値は、マルチプレクサ1126がカウンタ1128に保持された
値をマルチプレクサ1124の制御入力ポートに供給する。
第1のバイト位置の値であるこの値は、マルチプレクサ
1124がアドレスされたバイト出力レジスタ1114の8個の
LSB位置に供給するように動作させる。パルス信号LRの
発生後信号CKの次の連続する周期の間に、制御回路1116
はパルス信号LLをおよびRHを発生し、マルチプレクサ11
24によって供給された値をレジスタ1114の8個のLSB位
置にロードし、レジスタ1114の8個のMSB位置をリセッ
トし、フリップ・フロップ1134をセットする。フリップ
・フロップ1134はセットされるので、その出力信号OV
は、出力レジスタ1114の値が有効であることを示す論理
1である。
この例に対する動作のシーケンスは、マイクロコード
RAMおよびシーケンサ回路226がB SRCフィールドが12の
値(入力FIFO234に対しては13の値)をもつマイクロコ
ード制御語を実行するとき完了する。レジスタ1114に供
給されたこの値はレジスタがその記憶された値をバスB
BUSに供給するようにする。制御回路1116はまたB SRCフ
ィールドの12(13)の値に応答してパルス信号COを発生
し、またそれによってフリップ・フロップ1134をリセッ
トして、出力レジスタ1114中の値を無効なものとしてマ
ークする。
制御レジスタ1112中の値が、16ビット値がバスB BUS
に供給されるべきであることを指示すると、制御回路11
16は論理0の値を信号MXCとしてマルチプレクサ1126の
制御入力端子に供給する。この制御値はは、マルチプレ
クサ1126がマルチプライヤ1130によって供給される値を
マルチプレクサ1124の制御入力ポートに供給するように
条件付ける。
マルチプライヤ1130はフリップ・フロップ1132の出力
端子に結合されている。上述のように、フリップ・フロ
ップ1132はレジスタ1110に記憶されたバイト位置の位の
MSBにプリセットされる。この1ビットの値はマルチプ
ライヤ1130によって上位桁に向けて1ビット位置シフト
される(つまり2倍にされる)。従って、マルチプレク
サ1124によって与えられる値はは2か0のいずれかであ
る。かくして、マルチプレクサはバイトB0あるいはB2の
いずれかを出力レジスタ1114の8個のLSB位置に供給す
る。
フリップ・フロップ1132の出力端子はさらにマルチプ
レクサ1122の制御入力端子に結合されている。マルチプ
レクサ1122はレジスタ1120のB3およびB1セクションに結
合されている。フリップ・フロップ1132によって与えら
れる値が論理0あるいは論理1であると、マルチプレク
サ1122はレジスタ1120の各B1またはB3セクションに保持
された値はレジスタ1114の8個のMSB位置に供給する。1
6ビットモードでは、制御回路1116は同時にパルス信号L
LおよびLMを発生して、選択された8個のMSBおよび8個
のLSBの双方をレジスタ1114にロードする。この値がB S
RCフィールド中の12(13)の値をもったマイクロコード
制御語によってアクセスされると、VRAM216によって与
えられる32ビットの値の16個のMSBあるいは16個のLSBが
読出されるようになる。レジスタ1110中に保持されたバ
イト位置の値が1または3であると、それはそれぞれ0
あるいは2と解釈され、バイトB1またはB2を含む16ビッ
トの値はこの発明の実施例で使用される入力FIFO232お
よび234によって供給されない。
上述の例では、入力FIFOに供給される制御値は、該入
力FIFOをランダムモードで動作させるように設定する。
このモードでは、FIFOはアドレスされた値のみをバスB
BUSに供給する。そのシーケンシャルモードでは、入力F
IFO232および234は、VRAM216中の特定されたアドレスを
有する値から開始し、順次に連続してより大きな値に向
って変化する連続する値を供給する。シーケンシャルモ
ードにおけるFIFO232および234の動作については、その
ランダムモードにおける動作との違いについて説明す
る。
ランダムモードとシーケンシャルモードの第1の相違
点は、シーケンシャルモードでは、制御回路1116がパル
ス信号LRを発生して新しい32ビットの値をレジスタ1120
にロードすると、該制御回路1116はVRAM216から次の新
しい32ビットの値を要求するためにパルス信号IRを発生
する。
ランダムモードでは、カウンタ1128とフリップ・フロ
ップ1132は、レジスタ1110に記憶されたバイト位置の値
を保持するためのレジスタとしてのみ使用される。シー
ケンシャルモードでは、カウンタ1128およびフリップ・
フロップ1132は、レジスタ1120からの連続する8ビット
あるいは16ビットの値をそれぞれ出力レジスタ1114に順
次供給するために使用される。カウンタ1128はプリッセ
ト値入力ポートおよびプリセット入力端子をもった通常
の2ビット2進カウンタである。プリセット入力端子に
供給されるパルス信号が発生すると、カウンタ1128は、
そのプリセット値入力端子に供給される値をその内部値
としてロードするように設定される。フリップ・フロッ
プ1132は通常のトリガ形式あるいはTフリップ・フロッ
プである。このフリップ・フロップはプリセット値を有
し、入力端子に供給される信号によって上述のように動
作するように設定されるプリセット入力端子をもってい
る。制御回路1116によって発生されるクロック信号CCK
はカウンタ1128およびフリップ・フロップ1132の双方の
クロック信号入力端子に供給される。クロック信号CCK
の連続するパルスに応答して、カウンタ1128はその内部
の値CVを値0、1、2、3を経て循環させる。フリップ
・フロップ1132は信号CCKの連続するパルスに応答し
て、その内部の状態を0と1との間で変化させる。この
発明の実施例では、入力FIFOがそのシーケンシャルモー
ドにあるとき、信号CCKは信号LLと同じであり、FIFOが
そのランダムモードにあるときは、信号CCKは一定の論
理0値を持つ。その結果、値が出力レジスタ1114にロー
ドされるや否や、カウンタ1128あるいはフリップ・フロ
ップ1132は、マルチプレクサ1122および1124を、次のシ
ーケンシャル値をレジスタ1114の入力ポートに供給する
ように設定する。新しい値が出力レジスタ1114にロード
される毎に該レジスタ1114の入力ポートに供給される値
は変化するので、レジスタ1114中の値がバスB BUSに供
給されるや否や上記の供給された値は出力レジスタにロ
ードされる。
カウンタ1128の出力値CVは制御回路1116に供給され
る。この制御回路1116はこの信号をモニターして、レジ
スタ1118からの32ビット値を何時レジスタ1120に転送す
べきかを決定する。レジスタ1112中に保持された制御値
が、入力FIFO232がその8ビットモードで動作している
ことを指示すると、制御回路1116はパルス信号LRを発生
して、信号CVの値が3から0に変化すること(すなわち
信号CVのMSBが1から0に変化するとき)と一致してレ
ジスタ1118からの32ビット値をレジスタ1120に転送す
る。入力FIFOが16ビット・モードで動作しているとき、
信号CVの値が1から2、あるいは3から0に変化すると
(すなわち信号CKのLSBが1から0に変化すると)、制
御回路1116はパルス信号LRを発生する。
上述の例では、VRAM制御ユニット238およびVRAM216は
定常ストリーム中で入力FIFO232および234に32ビットデ
ータ値を供給するものと仮定している。信号CVの値が3
から0に変わるとき、このストリームが遮断されるべき
であり、また、例えば信号IFORが読出し動作が進行中で
あることを示す論理値1の値をもっていると仮定する
と、制御回路1116はパルス信号LRを発生しない。この例
では、信号IFORが、要求されたVRAMの読出し動作が行な
われ、従ってレジスタ1118が有効なデータを含んでいる
ことを示す論理0の値に変化するまで回路1116はその初
期状態を凍結する。信号IFORが0になると、制御回路11
16はその動作を再開する。
制御回路1116の内部状態が凍結されている間、レジス
タ1114の内容をバスB BUSに読出す要求を受信すると
(すなわち、B SRC=12)、制御回路1116はフリップ・
フロップ1135のセット入力端子Sに供給されるパルス信
号IPを発生する。この動作によりフリップ・フロップ11
35によって供給される信号IFOPAの状態を論理1に変化
させる。信号IFOPAは休止論理回路240に供給され、該休
止論理回路240はマイクロコードRAMおよびシーケンサ回
路210を休止状態にするように設定する。第3A図を参照
して前に説明したように、クロック信号CKAおよびCKB
休止状態で無効状態にされて、データパス回路242、ALU
244、データRAM228およびピクセル補間器246の内部状態
を有効に凍結する。信号IFOPAおよび信号IFORはANDゲー
ト1136の入力端子に供給される。これらの信号の両方
が、読出し動作が要求され、プロセッサ210が入力FIFO2
32からの値を持つ休止状態にあることを示す論理1の値
をもっていると、ANDゲート1136の出力信号IFOPは論理
1に変化する。信号IFOPは休止論理240を経てVRAM制御
ユニット238に供給される。信号IFOPに対する論理1の
値は、緊急要求すなわち優先度が高くなったものとして
FIFO232に対する読出し要求動作を処理するようにVRAM
制御ユニット238を設定する。読出し動作が完了する
と、信号IFOSはフリップフロップ1133をリセットし、信
号IFORおよびIFOPを論理0の値に変化させる。レジスタ
1118からの要求値が出力レジスタ1114に伝播されると、
制御回路1116はフリップ・フロップ1134をセットし、そ
の出力OVはフリップ・フロップ1135をリセットしてプロ
セッサ回路210をその休止状態から解放する。
第11B図は入力FIFO232の2個の連続する8ビットデー
タ要求に対して制御回路1116によって発生された信号の
相対的タイミングを示すタイミング図である。
出力FIFO236は入力FIFO232および234によって実行さ
れた機能と本質的に反対の機能を実行し、該出力FIFO23
6は、ビデオ信号プロセッサ210のピクセル処理素子から
一度に1バイトあるいは2バイトのデータを受入れ、こ
のデータを32ビットのブロックに形成して、このブロッ
クをVRAM216に転送する。出力FIFO236は、1個の8ビッ
トまたは16ビットのデータの値が与えられたアドレス値
を使用してVRAM216に書込まれるランダムモードと、一
連の8ビットまたは16ビットのデータの値が連続的に増
加するアドレス値を使用して書込まれるシーケンシャル
モードの2つの動作モードを持っている。
ランダム転送のために使用されるアドレス値あるいは
シーケンシャル転送のために使用される開始アドレス値
は、統計的デコーダ230と入力FIFO232および234とにつ
いて前に説明した態様と同じ態様でVRAM制御ユニット23
8中で設定される。8個のMSB用に使用されるB DSTフィ
ールドの値、22ビット・アドレス値の14個のLSBはそれ
ぞれ15、14である。B DSTが14のとき、バスB BUSに供給
される16ビットの値の2個のLSBの位置の値は出力FIFO2
36内部のレジスタに記憶される。この値は、VRAM216に
供給された32ビット(4バイト)の最下位バイト、ある
いは書込まれるべき唯一のバイトとなる特定のバイト位
置をポイントする。出力FIFO236およびVRAM制御ユニッ
ト238は、VRAM216に書込まれない32ビット値中の他のバ
イト位置に対応するVRAM216中のデータの劣化を防止す
る回路を含んでいる。
第12A図は出力FIFO236として使用するのに適した回路
を示すブロック図である。この回路は、予め定められた
アドレス値を使用して1個の8ビット値がVRAM216書込
まれるべきランダムモードにおける正規の動作シーケン
スについて示されている。この説明の後に、FIFOがラン
ダムモードの代りにシーケンシャルモードで動作し、8
ビット値の代りに16ビットのデータ値が使用されるとき
の出力FIFOの動作の相違点について説明されている。
VRAM216のランダム位置に1バイトのデータを書込む
動作シーケンスの第1ステップは、出力FIFOをランダム
モードで動作させ、8ビットの入力値を持つように設定
する出力FIFO236に制御値を供給することである。この
発明の実施例ではB DSTフィールドの13の値をもったマ
イクロコード制御語に応答して、例えばALU244によって
2ビット制御値がバスB BUSに供給される。マイクロコ
ード制御語B DSTフィールドはバスMCWを経て制御レジス
タ1212に供給される。レジスタ1212は13の値をもったマ
イクロコード制御語のB DSTフィールドに応答して、出
力FIFO236用の制御値としてバスB BUSの2個のLSB位置
によって伝達される値をロードする。
出力FIFO236の内部の制御回路1216はまたはB DSTフィ
ールド中の13の値に応答して、レジスタ1220中に保持さ
れたデータをVRAM216に転送する書込み動作を開始させ
る。このデータは先のデータ出力動作からのデータの最
後の部分的ブロックである。
フリップ・フロップ1232によって与えられる信号OFR
が、FIFO236用のメモリ書込み動作が進行していないこ
とを示す論理0の値をもっていると、制御回路1216はパ
ルス信号LORを発生し、レジスタ1220中の値を出力レジ
スタ1218に転送し、またラッチ1228に保持された4ビッ
トバイトマスクを4ビットレジスタ1230に転送する。制
御回路がパルス信号LORを発生して信号CKの1周期の1/2
の期間の後、制御回路1216はフリップ・フロップ1232の
入力端子Sをセットするために供給されるパルス信号WR
を発生する。この動作は、フリップ・フロップ1232によ
って与えられた信号OFRの状態を論理1の値に変化させ
る。
信号OFRはバスR/Sを経てVRAM制御ユニット238に供給
される。信号OFRからの論理1の値は、FIFO236に対する
VRAM制御ユニットに保持されたアドレス値を使用して、
またレジスタ1218中に保持された32ビットのデータ値を
使用して、VRAM書込み動作用の要求としてVRAM制御ユニ
ット238によって解釈される。レジスタ1230中のバイト
マスクはバスCASMを経てVRAM制御ユニット238に供給さ
れる。このマスクVRAM制御ユニット238中で使用され
て、VRAM218を、バイトマスク信号CASMに応答するバイ
ト位置をもったレジスタ1218中のこれらのバイトのみ、
すなわちレジスタ1220にロードされたとき制御回路1216
によって有効であるとしてマークされたこれらのバイト
のみを記憶するように動作させる。バイトが有効である
とマークされる方法、VRAM制御ユニット238における信
号CASMの使用態様については以下に説明する。
制御回路1216がパルス信号WRを発生すると同時に、ラ
ッチ1228中の4個のフリップ・フロップの各々のリセッ
ト入力端子Rに供給されるパルス信号RMを発生する。こ
の信号はラッチ1228中のフリップ・フロップFF0乃至FF3
をリセットし、各バイト位置B0ないしB3の値を無効とし
てマークする。
上述のように、制御ユニット1216は、もし信号OFRが
0であるならば書込み動作を開始させる。制御レジスタ
1212中の値が変化するとき信号OFRが論理1であると、V
RAM制御ユニット238によって与えられる信号OFSが要求
されたメモリ書込み動作が行なわれたことを示すまで制
御回路1216はその内部状態を凍結する。信号OFSはレジ
スタ1218の出力可動化端子OEに供給され、このレジスタ
1218をその記憶された値をバスD BUSに供給するように
動作させる。信号OFSが論理1をもっている間、レジス
タ1218の中のデータはVRAM216に転送される。信号OFSは
またフリップ・フロップ1232をリセットし、信号OFRの
値を論理0に変化させる。制御回路1216は論理0の値を
もった信号OFRに応答してその正規の動作を再開させ
る。
電源がビデオ信号プロセッサ210に供給された後、謝
ったデータが第1の出力FIFOの要求によってVRAM216に
書込まれるのを防止するために、フリップ・フロップ12
28は例えば通常の電源オンリセット回路によって論理0
の初期値をもつように設定される。後述のように、これ
らのフリップ・フロップ中の論理0の値は、レジスタ12
20からのデータがVRAM216に書込まれるのを防止する。
先の読出し動作からのデータはレジスタ1220からレジ
スタ1218に転送され、メモリ読出し動作が行なわれる
と、ここに述べた代表的なランダム出力動作用のアドレ
ス値が特定される。この動作は上述されている。バイト
位置レジスタ1210はB DSTフィールド中の14の値に応答
して、バスB BUSの2個のLSBによって伝送された値をロ
ードする。上述のように、この値はレジスタ1220のどの
バイト位置B0、B1、B2あるいはB3が供給されたデータ値
を保持するかを指示する。
制御回路1216はB DSTフィールド中の14の値に応答し
てパルス信号OPCを発生し、バイト位置レジスタがロー
ドされて信号CKの1周期の1/2の期間の後、2ビットカ
ウンタ1226の内部値としてバイト位置の値を設定する。
この値は信号OCVとして制御回路1216に供給される。パ
ルス信号OPCの発生と同時に制御回路1216はパルス信号L
Rを発生して、フリップ・フロップ1234をセットし、入
力レジスタ1214中のデータを無効としてマークする。フ
リップ・フロップ1234の出力信号INVは制御回路1216に
供給されて、バスB BUSからのデータがレジスタ1214に
ロード可能であることを指示する。
代表的動作シーケンスの次のステップは8ビットデー
タ値を出力FIFO236に供給することである。このステッ
プは、マイクロコード制御語がB DSTフィールド中の20
の値をもつときに生ずる。B DSTフィールド中のこの値
は、例えばALU244によって供給され、バスB BUSによっ
て伝送された16ビットの値をロードするようにレジスタ
1214を設定する。制御レジスタ1212中の値は、8ビット
の値がプロセッサされるべきことを指示するので、レジ
スタ1214中の値の8個のLSB位置の値のみが関連する。
ある値がレジスタ1214にロードされると、制御回路1216
はフリップ・フロップ1234のリセット入力端子に供給さ
れるパルス信号COを発生する。この動作によって信号IN
Vの状態を論理0に変化させ、入力レジスタ1214中に保
持された値を有効なものとしてマークする。
入力レジスタ1214の8個のLSB位置は、レジスタ1220
のビット位置0−7(バイト位置B0)および16-23(バ
イト位置B2)に直接結合され、また3状態ゲート1224を
経てレジスタ1220のビット位置8−15(バイト位置B1)
および24-31(バイト位置B3)に結合される。入力レジ
スタ1214の8個のMSB位置は3状態ゲート1222を通って
レジスタ1220のバイト位置B1およびB3に結合される。3
状態ゲート1222および1224は制御回路1216によって発生
される各信号UBEおよびLBEによって制御される。この発
明の例においては、レジスタ1212中の制御値が出力FIFO
236が8ビットの値を処理する状態にあることを指示す
ると、制御信号UBEは、3状態ゲート1222の出力ポート
のインピーダンスが高インピーダンスを呈するように該
3状態ゲート1222の動作を設定し、また、制御信号LBE
は、3状態ゲート1224がそのデータ入力をその出力ポー
トに、従ってレジスタ1220のバイト位置B1およびB3
供給するように上記3状態ゲート1224の動作を制御す
る。従って、この例では、レジスタ1214の8個のLSB位
置はレジスタ1220のバイト位置B0乃至B3の各々に結合さ
れる。
制御回路1216はまたB DSTフィールド中の20の値に応
答する。この値が検出されて信号CKの1周期の1/2の期
間の後、制御回路1216は信号LR0、LR1、LR2またはLR3の
うちの1個のパルス信号を発生し、レジスタ1214からの
8ビット値をレジスタ1220のバイト位置の1つにロード
し、ラッチ1228中の各フリップ・フロップFF0、FF1、FF
2あるいはFF3をセットすることによって有効データを含
むものとして選択されたバイト位置をマークする。同時
に、制御回路1216はパルス信号LRを発生して、入力レジ
スタ1214に保持されたデータを無効であるとマークす
る。選択されたレジスタ1220中のバイト位置は、カウン
タ1226によって発生された信号OCVによって決定され
る。この例では、この信号すなわちカウンタ1226の出力
信号はレジスタ1210に保持されたバイト位置の値と同じ
である。
出力FIFO236に供給された1バイト・データ値がレジ
スタ1220中のバイト位置の1つを占める。この値は、新
しい制御値が前述のようにレジスタ1212に供給されると
VRAM216に書込まれる。
上述の例では、出力FIFO236に供給された初期制御値
は、該FIFO236をそのランダムモードで動作するように
設定する。上記の動作状態とは違って、シーケンシャル
モードが使用されることを制御値が特定するならば、上
述の例はバイト転送動作のシーケンスの最初のもののみ
について説明することになる。シーケンシャルモードで
は、カウンタ1226によって保持された値は信号CCKのパ
ルスによって増加される。この発明の実施例では、出力
FIFO236がそのシーケンシャルモード動作するようにセ
ットされると、制御回路1216は、パルス信号LR0乃至LR3
の1つを発生すると、信号CCKを発生する。
シーケンスの第2のバイトがレジスタ1214に供給され
ると、増加した計数値をもった信号OCVは制御回路1216
が信号LR0、LR1、LR2またはLR3の中の次のものを発生
し、従って、入力バイトをレジスタ1220の次のバイト位
置B0、B1、B2またはB3の各々にロードする。カウンタ12
26は2ビットカウンタであるので、該カウンタ1226はモ
ジュロ4出力値、すなわち値0、1、2、3、0、1…
…等を発生する。
カウンタ値OCVが3から0に増加すると、レジスタ122
0の最後のバイト位置B3が充満される。制御回路1216は
パルス信号LORを発生し、レジスタ1220中のデータをレ
ジスタ1218に転送し、またパルス信号WRを発生し、VRAM
制御ユニット238によってレジスタ1218中に保持された
データ用のVRAM書込み動作のスケジュールを作る。信号
OCVが3から0に変化したとき、信号OFRが、書込み動作
が進行中であることを示す論理1の値をもつと、制御回
路1216は信号LORを発生しない。しかし、VRAM制御ユニ
ット238によって供給された信号OFSがフリップ・フロッ
プ1232をリセットし、信号OFRの状態を論理0に変化さ
せるまで、その内部状態を凍結する。
フリップ・フロップ1234によって供給される信号INV
がレジスタ1214中のデータは有効であること(すなわ
ち、未だレジスタ1220へ転送されていない)を示してい
る時に、バスB BUSからレジスタ1214にデータを転送し
ようとすると、制御回路1216はパルス信号OPを送ってフ
リップ・フロップ1233をセットし、このフリップ・フロ
ップ1233が生成する信号OFPAを休止論理230に送ること
によって、回路210を休止状態にする。信号OFPAは、AND
ゲート1236によって信号OFRと論理的にAND処理されて信
号OFPを生成する。この信号OFPは休止論理230を介してV
RAM制御ユニット238に印加される。この信号はそのとき
進行中のVRAM書込み動作の優先順位を上げる。この書込
み動作が完了すると、VRAM制御ユニット238は、パルス
信号OFSを発してフリップ・フロップ1232をリセット
し、信号OFRとOFPの値を論理0に変える。
信号OFRの値の論理1から論理0への転換に応じて、
回路1216はパルス信号LORを発して、レジスタ1220中の
値をレジスタ1218中にロードし、またラッチ1228の値を
レジスタ1230中にロードする。次に制御回路1216はパル
ス信号WRを発してVRAM書込み動作を要求する。制御回路
1216がパルス信号LORを発して信号CKの2分の1周期
後、制御回路1216はこれがパルス信号RMを発してラッチ
1228のフリップ・フロップFF0、FF1、FF2およびFF3をリ
セットする。動作シーケンス中のこの時点で、出力FIFO
236は次の入力データ・バイトを受取りそれをレジスタ1
220のバイト位置B0に記憶するように調整される。従っ
て、制御回路1216はパルス信号LO0、LR1、LR2およびLR3
の中の1つのパルス信号を発生し、レジスタ1214中に保
持されていた値をレジスタ1220の対応するバイト位置B0
乃至B3中にロードする。これと同時に、制御回路1216は
パルス信号LRを発してフリップ・フロップ1234をセット
して入力レジスタ1214中の値を無効とマークし、信号IN
Vを通してフリップ・フロップ1233をリセットし処理器2
10をその休止状態から解放する。
出力FIFO236の動作のこの最後の変形は16−ビットの
データ転送である。このモードで、この出力FIFOは、バ
スB BUSから16−ビット値を受取り、それをVRAM216中に
ランダムにまたは順次的に書込む。この出力FIFO236は
制御レジスタ1212中へロードされている制御値にによっ
て16−ビットのデータ転送モードにされる。出力FIFOが
このモードのときは、制御回路1216によって供給される
信号UBEは3状態ゲート1222を調整して、レジスタ1214
の8個のMSB位置にある値をレジスタ1220のビット位置B
1とB3に印加する。信号LBEは、このモードで、3状態ゲ
ート1224がその出力ポートを高インピーダンスとするよ
うにする。
この16−ビット転送モードでは、レジスタ1210中のバ
イト位置値のMSBはカウンタ1226のLSB位置にロードさ
れ、制御回路1216は信号OCVのLSBのみに応動する。この
ビットが0でデータ値がレジスタ1214中にロードされる
と、制御回路はパルス信号LR0、LR1およびLRを発して16
−ビット値をレジスタ1214からレジスタ1220のバイト位
置B0とB1に転送してラッチ1228中のフリップ・フロップ
FF0とFF1をセットし、レジスタ1214は無効データを持っ
ているものとしてマークする。また、信号OCVのLSBが1
のときは、制御回路1216はパルス信号LR2、LR3、および
LRを発して16−ビット値をレジスタ1220のビット位置B2
とB3に転送して、ラッチ1228中のフリップ・フロップFF
2とFF3をセットし、レジスタ1214は無効データを持って
いるものとしてマークする。制御回路1216は信号OCVのL
SBの値の1から0への転換に応じて、レジスタ1220中に
保持されているデータをレジスタ1218へ転送しかつVRAM
書込み動作をスケジュールする。
第12B図は、出力FIFO236を介して行なわれる5つの順
次単一バイト・データ転送の相対的タイミングを示すタ
イミング図である。
この発明のこの実施例で使用している休止論理240は
2個のORゲート(図示せず)を持っている。入力信号SD
P、IF0P、IF1PおよびOFPがその第1ゲートに印加され、
何ゲートは出力信号UREQを発生する。信号UREQは、次に
説明するようにVRAM制御ユニット238に印加されて、統
計的デコーダ230、入力FIFO232と234または出力FIFO236
のうちの1つが急いでメモリ動作することを要求してい
る旨を示す。信号SDP、IF0P、IF1PおよびOFPもバスURを
介してVRAM制御ユニット238に供給される。
第2のORゲートに対する入力信号は、諸信号SDPA、IF
0PA、IF1PAおよびOFPAとVRAM制御ユニット238から供給
される信号VCUPAである。第2ORゲートの出力信号は信号
PAUSEで、前述したようにマイクロコードRAMとシーケン
サ回路226に印加される。
第13A図と第13B図とはVRAM制御回路238として使用す
るに適した回路を示すブロック図を構成している。上述
したように、VRAM制御ユニット238は、マイクロコード
制御語のB DSTフィールドに応答する回路を有し、これ
は統計的デコーダ230、入力FIFO232と234および出力FIF
O236に対するVRAMアドレス値を記憶する。更に、VRAM制
御ユニット238は、表示器用プロセッサ218にピクセル値
を生成するのに使われるビット・マップ・アドレスと、
VRAM216が使用するダイナミック・ランダムアクセス・
メモリ回路の内容を周期的に復元(リフレッシュ)する
のに使用されるリフレッシュ・アドレスを記憶するため
の回路を持っている。VRAM制御ユニット238は、また、
統計的デコーダ230、入力FIFO232と234および出力FIFO2
36が発生したメモリ読出し信号とメモリ書込み信号に応
答して表示器用プロセッサ218に対する要求信号を読出
し、圧縮されたビデオ信号212の源に対する要求信号を
書込み、また内部で発生したリフレッシュ要求信号に応
じて種々の要求されたメモリ動作を開始してそれらが適
切に完了したことを伝えるように働く回路を持ってい
る。
種々のアドレス値を記憶する回路は制御回路1310によ
って制御される。この回路1310は、クロック信号CK′、
バスMCWによって供給されるマイクロコード制御語のB D
STフィールド、および下記するようにマルチプレクサ13
78によって供給される装置選択値、信号源222によって
供給される垂直フィールド同期信号VSに応動する。制御
回路1310は、主として、種々の装置に対するアドレス値
のローディングの制御を行なう。
統計的デコーダ230用のアドレス値をロードするに
は、たとえばB DSTフィールドにおいて値31を有するマ
イクロコード制御語により、ビデオ信号処理器210中の
他の回路たとえばALU244をB SRCフィールド中のある一
つの値を介して制御し(コンディション)て、それがそ
のアドレス値の8個のMSBをバスB BUSに印加されるある
値の8個のLSBとして供給するようにする。B DSTフィー
ルドの値31に応じてこの制御回路1310は、信号CK′の1
周期に亙り1対のマルチプレクサ1312と1316に信号STM
として論理1の値を印加する。この信号によって、マル
チプレクサ1312は、バスB BUSから送られた8ビット値
をレジスタ1314の入力ポートに供給するようにされる。
信号STMが論理1の値を持っている間、制御回路1310は
パルス信号STHLを発生し、レジスタ1314が自己の入力ポ
ートに印加されたその値をロードするようにする。
次に命令サイクルでは、そのB DSTに値30を有するマ
イクロコード制御語によって、制御ユニット1310は、信
号CK′の1周期間にわたり論理1の値をもった信号STM
を保持しパルス信号STLLを発生するようにされる。これ
らの信号の組合せによって、マルチプレクサ1316はバス
B BUSの14MSB位置によって伝えられた値を14ビット・レ
ジスタ1318の入力ポートに供給するように制御され、ま
たレジスタ1318はその入力ポートに印加された値を記憶
するように制御される。このレジスタ1314と1318に保持
された値は、マルチプレクサ1356の入力ポート0に印加
される22ビットのアドレス値を形成するように連結され
る。
入力FIFO232と234および出力FIFO236に対するアドレ
ス値の記憶動作のシケーンスのタイミングは統計的デコ
ーダ230に対するアドレス値の記憶動作のシーケンス・
タイミングと同じである。入力FIFO232に対するアドレ
ス値の記憶には、制御回路1310により供給される信号IF
OMによって、マルチプレクサ1320と1324を制御して、ア
ドレス値の8個のMSBと14個のLSBを、それぞれレジスタ
1322と1326の入力ポートに印加させるようにする。レジ
スタ1322と1326は、各々その入力ポートに印加された値
を、制御回路1310によって供給される信号IFOHLおよびI
FOLLに応じてロードする。マルチプレクサ1320と1324、
およびレジスタ1322と1326は、マルチプレクサ1312と13
16およびレジスタ1314と1318にそれぞれ対応している。
信号IFOM、IFOHLおよびIFOLLは信号STM、STHLおよびSTL
Lにそれぞれ対応する。IFOLLとIFOHLは22と23というB D
ST値によってそれぞれ付活される。この両値は信号IFOM
を付活する。
マルチプレクサ1328と1332およびレジスタ1330と1334
は、それぞれマルチプレクサ1312と1316およびレジスタ
1314と1318と同一構成を持っている。これらのマルチプ
レクサおよびレジスタは、制御回路1310によって供給さ
れる信号IF1M、IF1HLおよびIH1LLに応動して22−ビット
のアドレス値を入力FIFO234にロードする。この値の8
個のMSBは、B DSTフィールドの値が27であればレジスタ
1330にロードされ、B DSTフィールドの値が26であれば
レジスタ1334にロードされる。
出力FIFO236のアドレス値は、制御回路1310により発
生した信号OFM、OPHLおよびOPLLに応じて、各マルチプ
レクサ1336と1340を介してレジスタ1338と1342にロード
される。上記の信号は前期の各信号STM、STHLおよびSTL
Lに対応している。制御回路1310は、B DSTフィールドが
値14を有するときはパルス信号OFMとOPLLを発生してこ
のアドレス値の14個のLSBをレジスタ1342にロードし、B
DSTフィールドの値が15のときは、パルス信号OFMとOPH
Lを発生してこのアドレス値の8個のMSBをレジスタ1338
中にロードする。各レジスタ対1322と1326、1330と133
4、および1338と1342中に保持されている値を連結する
ことによって形成された22−ビットのアドレス値はマル
チプレクサ1356の各入力ポート1、2、3に印加され
る。
統計的デコーダ230に対するアドレス値をパスする各
マルチプレクサ1312と1316の第2入力ポートは、入力FI
FO232と234および出力FIFO236に対するアドレス値をパ
スする対応マルチプレクサ対の第2入力ポートと同様
に、加算器1392の出力ポートに結合される。下記するよ
うに、この加算器1392は増加(インクレメンテッド)ア
ドレス値を供給する。
この増加したアドレス値は、統計的デコーダ230、入
力FIFO232と234および出力FIFO236に対すると同じ様に
使用される。次に、統計的デコーダ230での使用につい
てだけ説明する。増加したアドレス値の8個のMSBはマ
ルチプレクサ1312の第2入力ポートに印加され、14個の
LSBはマルチプレクサ1316の第2入力ポートに印加され
る。信号STMが論理0の値を持っているときは、マルチ
プレクサ1312と1316は、これらの値をアドレス・レジス
タ1314と1318の入力ポートにそれぞれパスするように制
御される。統計的デコーダ230のメモリ読出し動作が進
行している間、制御回路1310はパルス信号STHLとSTLLを
発生してこの増加したアドレス値をレジスタ1314と1318
にロードする。もし、統計的デコーダ230が順次モード
で動作するようにセットされているか、デコーダ230が
そのランダム・モードで動作するようにセットされてい
るときもし第2の32ビット値をVRAM216が要求すれば、
この増加したアドレス値は統計的デコーダ230の次のメ
モリ読出し動作を行なうために使用される。
加算器1392の出力ポートは更に22−ビット・レジスタ
1346の入力ポートに結合されていて、このレジスタはVR
AM216のメモリ・リフレッシュ動作を行なうために使用
されるアドレス値を保持する。レジスタ1346の出力ポー
トはマルチプレクサ1356の入力ポート5に結合されてい
る。リフレッシュ・アドレス・レジスタ1346から供給さ
れる値はあるサイクルで変化し、4ミリ秒ごとにVRAM21
6中の各行(ロウ)をアドレスする。この発明のこの実
施例では、このリフレッシュ動作はVRAM制御ユニット23
8の内部にある下記の回路によって制御される。
この実施例で使用されるVRAM制御ユニット238に保持
されているこの最後のアドレス値はビット・マップ・ア
ドレスである。このアドレス値は、たとえばB DST値が
それぞれ19と18である2つの別々のマイクロコード制御
語に応じて各パルス制御信号BMHLとBMLLを発生すること
によって、レジスタ1348と1350中に書込まれる。このレ
ジスタ1348と1350中に書込まれたアドレス値は、圧縮さ
れたビデオ信号212の信号源により生成された、画像の
圧縮表現から、ビデオ信号処理回路210により発生され
たルミナンス信号ビット・マップの開始アドレスであ
る。表示器用プロセッサ218のデータのアクセスに使用
されるこのビット・マップ・アドレス値はレジスタ1354
中に保持される。レジスタ1348中の8−ビット値とレジ
スタ1350中の14−ビット値とを連結して得られた22−ビ
ット・アドレスは、信号源222から供給される垂直フィ
ールド同期信号VSのパルスに応じてレジスタ1354中にロ
ードされる。正規動作モードでは、ビデオ信号処理器21
0は、信号VSの2パルスごとに1回ずつレジスタ1348と1
350中に新しいビット・マップ・アドレス値をロードす
る。従って各ビット・マップは動きのあるビデオ情景を
再生するために2回表示される。
レジスタ1348と1350の内容は次のようにしてレジスタ
1354に転送される。信号VSのパルスと同時に、制御回路
1310は信号BMMの状態を信号CKの一周期中論理1に変更
する。これによってマルチプレクサ1352は、レジスタ13
48と1350中に保持されているアドレス値をレジスタ1354
の入力ポートに印加する。信号BMMが論理1状態にある
間に制御回路1310はパルス信号BMLを発してレジスタ135
4がその入力ポートに供給される値をロードするように
する。レジスタ1354に保持されたこの値はマルチプレク
サ1356の入力ポート6に印加される。
信号BMMが論理0状態にあるときは、マルチプレクサ1
352は加算器1392から供給された22−ビットの増加され
たアドレス値をレジスタ1354の入力ポートに供給するよ
うにされる。表示器用プロセッサ218のメモリ読出し動
作中、制御回路1310はパルス信号BMLを発し、またこの
信号BMMを論理0状態に保持して、増加されたビット・
マップ・アドレス値をレジスタ1354にロードして、表示
器用プロセッサ218の次の読出し動作の用意をする。
その時のアドレス値が増加されつつある間に、統計的
デコーダ230、入力VFIFO232と234、および出力FIFO236
のうちの1つに対する新しいアドレス値のロードを行な
おうとすると、VRAM制御ユニット238中に競合(コンフ
リクト)が生ずる可能性がある。この競合は、新しいア
ドレス値がロードされ、次に加算器1392から供給される
増加された以前のアドレス値がその上に書込まれると、
発生する。競合の可能性が検出されると、制御回路1310
は信号VCUPAの状態を論理1に変更し、一方アドレス値
は増加されレジスタ対1314と1318、1322と1326、1330と
1334または1338と1342のうちの1つに記憶される。この
信号は、休止論理240に印加されてプロセッサ210を増加
されたアドレス値が記憶されてしまうまで休止状態とす
る。制御回路1310は、この競合の可能性がある場合、す
なわち上記レジスタ対の1つにデータを記憶させようと
する試みが増加されたアドレス値を記憶させようとする
試みと同時に生じたとき、のみプロセッサ210を休止さ
せる。
アドレス・ロード動作のタイミング関係を例示するも
のとして、第13C図は、統計的デコーダ230に対して初期
のアドレス値と増加されたアドレス値がロードされると
き制御回路1310によって生成され幾つかの信号のタイミ
ング図を表わしている。
次に述べるように、各装置230、232、234および236
は、正規メモリ要求または緊急メモリ要求を発生するこ
とができる。VRAM制御ユニット238は、一般にラウンド
ロビンと呼ばれる繰返しシーケンスで各装置の正規メモ
リ要求信号を処理する。各装置230、232、234および236
はすべて実質的に同等の優先度を有するものとして取扱
われる。
装置230、232、234および236によって発生した緊急メ
モリ要求動作は第2のスケジューリング機構によって取
扱われる。この第2のスケジューラは、また、リフレッ
シュ動作、圧縮されたビデオ源212からの書込み動作、
およびプロセッサ218のビット・マップ読出し動作も取
扱う。このスケジューラは或る固定的な優先度計画に従
って動作する。ビット・マップ読出し動作は最高の優先
度を有し、以下優先度が順番に低下する形で、リフレッ
シュ動作、圧縮されたデータ書込み動作、出力FIFO236
に対する緊急メモリ書込み動作、入力FIFO234と232に対
する緊急メモリ読出し動作、および統計的デコーダ230
に対する緊急読出し動作の順に続いている。スケジュー
リングと上記の諸動作の開始を制御する回路については
次に説明する。
上述のようにメモリ要求信号OFR、IF1R、IF0RおよびS
DRはバスP/Sを介してVRAM制御ユニット238に印加され
る。第13A図と第13B図において、それらの信号はバスR/
Sによって伝えられる他の信号から分離されてバレルシ
フタ1360に印加される。バレルシフタ1360では、4−ビ
ット要求信号が循環シフタ1362、マルチプレクサ1364の
1入力ポートとに印加される。シフタ1362は、この4−
ビット要求信号の3個のMSBを1ビット位置だけ下位に
向けてシフトし、かつ4−ビット要求信号のLSBを出力
信号のMSB位置にシフトする。シフト1362の出力信号は
マルチプレクサ1364の第2の入力ポートに印加される。
マルチプレクサ1364によって供給される信号は循環シフ
タ1366と、マルチプレクサ1368の1入力ポートとに供給
される。循環シフタ1366は、その入力値の2個のLSBと
2個のMSBの位置を入換えて、マルチプレクサ1368の第
2入力ポートに印加する出力値を生成する。マルチプレ
クサ1364と1368はレジスタ1376から供給される2−ビッ
ト信号のそれぞれ下位ビットと上位ビットとにより制御
される。値0、1、2または3を有するこの信号に応じ
て、バレルシフタ1360は0、1、2または3ビット位置
をそれぞれ下位のビット位置へ循環シフトさせる作用を
行なう。
バレルシフタ1360から供給される出力信号は4−ビッ
ト優先度デコーダ1370に印加される。優先度デコーダ13
70の出力信号は、その入力ポートに印加された値の最上
位の1の値をもつビットのビット位置番号0、1、2ま
たは3である。たとえば、4ビット入力の値が0101であ
ったとすれば優先度デコーダ1370の出力値は2になる。
それは1の値を有する最上位ビットがビット位置2にあ
るからである。優先度デコード1370の出力信号はレジス
タ1372に印加され、このレジスタは制御回路1310から供
給される信号CCKに応じて入力ポートに印加された上記
の値をロードする。
レジスタ1372中に保持された値は2−ビット加算器13
74の1つの入力ポートに供給される。加算器1374の出力
ポートは2−ビット・レジスタ1376の入力ポートに接続
されている。レジスタ1376の出力ポートは、バレルシフ
タ1360と加算器1374の第2入力ポートとに結合されてい
る。レジスタ1376と加算器1374とのこの組合せはモジュ
ロ4アキュムレータを構成している。どの時点において
もレジスタ1376中に保持されている値は、その時までに
レジスタ1372によって加算器1374に供給された値全部の
モジューロ4の累算された和である。レジスタ1376中に
保持された値はメモリ動作が行なわれるべき装置の番号
である。0は統計的デコーダ230に相当し、1は入力FIF
O232に、2は入力FIFO234に、そして3は出力FIFO236に
対応している。バレルシフタ1360の動作により、この選
ばれた装置に対するメモリ要求値が優先度デコーダ1370
に対する入力値のLSB位置へシフトされ、次のメモリ動
作ではこの装置が最低優先度で選ばれるようにする。バ
レルシフタ1360、優先度デコーダ1370、レジスタ1372と
1376、および加算器1374を含んでいるこの回路はスケジ
ューラであって、装置230、232、234および236の発生す
るメモリ要求が確実に実質的に同等の優先度で処理され
るようにする。
レジスタ1376の出力信号はMSB位置に論理0を連結す
ることによって3ビットに引伸ばされている。この3−
ビット信号はマルチプレクサ1378の1つの入力ポートに
印加される。マルチプレクサ1378の2番目の入力ポート
は、緊急要求、リフレッシュ要求、圧縮されたデータ書
込み要求およびビット・マップ読出し要求を取扱うスケ
ジューラの出力信号を受入れるように、結合されてい
る。統計的デコーダ230、入力FIFO232と234および出力F
IFO236に対する緊急メモリ要求は各信号SDP、IF0P、IF1
PおよびOFPによって伝達される。これらの信号は、優先
度デコーダ1380の入力ポートのビット位置0、1、2お
よび3にそれぞれ印加される。ビット・マップ読出し要
求信号は信号源220から供給される水平線同期信号HSで
ある。この信号は優先度デコーダ1380の入力ポートのビ
ット位置6に印加される。リフレッシュ要求信号はカウ
ンタ1382によって発生される。このカウンタ1382は普通
の7−ビットラッチング・カウンタである。このカウン
タは、信号CKのパルスを128個カウントして、その論理
1の値をもつ1ビット出力信号RFを、このカウンタがリ
セットされるまでラッチする。この発明の実施例では、
信号RFは優先度デコーダ1380の入力ポートのビット位置
5に印加される。カウンタ1382のリセット入力端子VRAM
信号発生器1388から供給される信号RFSに結合されてい
る。この信号はリフレッシュ動作の終りに発生器1388に
よりパルスとして送り出されてカウンタ1382をリセット
する。圧縮されたデータ読出し要求信号CVRは、前述の
ように、圧縮されたビデオの信号源212によってVRAM制
御ユニット238に印加される。この信号は優先度デコー
ダ1380の入力ポートのビット位置4に結合される。
優先度デコーダ1380の出力ポートはレジスタ1384の入
力ポートに結合されている。レジスタ1384は制御回路13
10から供給される信号CCK′のパルスに応動して、その
入力ポートに印加された値をロードするように制御され
ている。レジスタ1384の3−ビット出力信号はマルチプ
レクサ1378の第2の入力ポートに供給される。
マルチプレクサ1378はORゲート1386によって発生した
信号によって制御される。この信号は、休止論理240に
より発生した信号UREQ、および信号HS、CVR、RFの論理
的ORである。ORゲート1386の出力信号は、優先度デコー
ダ1380への入力信号の1つまたはそれ以上のものが論理
1であるときのみ、論理1である。マルチプレクサ1378
は、その制御入力信号が論理0のとき、レジスタ1376か
ら供給された3−ビット値をパスさせその他の場合には
レジスタ1384から供給された3−ビット値をパスさせる
ように、調整されている。マルチプレクサ1378でパスさ
れた値は、マルチプレクサ1356に印加され6個のアドレ
ス値のうちのどれをVRAM216のアドレス入力ポートとバ
ンク選択論理に、および加算器1392の第1入力ポートに
印加すべきかを、表わす。マルチプレクサ1378から供給
される値はROM1390にも印加され、このROMは増分値を加
算器1392の第2入力ポートに供給する。ROM1390は、た
とえば、統計的デコーダ230、入力FIFO232または234、
或いは出力FIFO236によりメモリ動作が行なわれるとき
は増分値1をメモリ動作がビット・マップ読出し動作で
あれば増分値64を、メモリ動作がリフレッシュ動作であ
れば増分値256を供給するように、プログラムされてい
る。前述のように、制御回路1310はマルチプレクサ1278
から供給される3−ビット値に応動して、適当なレジス
タに対するロード信号を付活して、増加されたアドレス
値をメモリ・サイクル中にレジスタ中にロードする。
VRAM信号発生器1388は、マルチプレクサ1378により供
給される3−ビット信号に応じて、ランダム読出しまた
は書込み動作、直列読出し動作またはリフレッシュ動作
を行なうようにVRAM216に対する制御信号を発生し、ま
たメモリ動作が完了すれば、適切なストローブ信号をパ
ルス状に発生する。このVRAM信号発生器は出力FIFO236
から供給される4−ビット信号CASMを受取るように結合
されている。この信号は、メモリ書込み動作中、列(コ
ラム)アドレス・ストローブ信号▲▼、▲
▼、▲▼および▲▼を選択的に非
可動化するために使用されるもので、上記列アドレス・
ストローブ信号はその1つがVRAM216内のメモリ集積回
路の8列の各対に印加される。前述のように、この実施
例で使用されているVRAM216は、8列16行のマトリクス
の集積回路として構成されている。各集積回路は4ビッ
トのデータを受取りまたは供給する。メモリの8列のす
べてから供給される32ビットを8−ビット値に分割する
ために、上記の列は対をなすようにされ、列アドレス・
ストローブ信号▲▼、▲▼、▲
▼および▲▼のそれぞれ異なる1つが4つの
列対のそれぞれに印加される。参考資料としてここに引
用するNECエレクトロニクス社発行の1985年「メモリ製
品データブック」3−45乃至3−54頁に記載されている
ように、μPD41264集積回路に対するメモリ書込み動作
に関して列アドレス・ストローブが動作状態にされなけ
れば、アドレスされたメモリセルにデータは書込まれな
い。従って、もし信号CASMの4ビットのうちの何れかが
論理0であれば、信号発生器1388は対応する▲▼
信号を非可動化し、バスD BUSの対応するバイト位置の
データはVRAM216中に書込まれず、アドレスされた32−
ビット語中の上記バイト位置に前からあった内容は損な
われずに残っている。
VRAM信号発生器1388は、行なわれるメモリ動作の形式
に対して適した、列アドレス・ストローブ信号▲
▼、▲▼、▲▼および▲▼
と行アドレス・ストローブ信号▲▼、書込み可動
化信号▲▼、出力可動化信号▲▼、直列制御信
号SCおよび直列出力可動化信号▲▼と同様に生成
する有限ステートマシンである。これらの信号のタイミ
ング図は上掲のメモリ製品データブックの引用頁に記載
されている。
VRAM信号発生器1388は、VRAM216を構成する個々の集
積回路を制御する信号を発生するだけでなく、統計的デ
コーダ230、入力FIFO232、234、出力FIFO236およびリフ
レッシュ・カウンタ1382に対して要求を受けたメモリ動
作は遂行されたことをそれぞれ知らせるストローブ信号
SDS、SF0S、IF10、OFSおよびRFSを供給する。これらの
信号はメモリサイクルの終りに発生する。前述した刊行
物「メモリ製品データブック」の引用部に開示されてい
るタイミング図および既述の説明から、メモリ回路設計
分野の技術者はVRAM信号発生器1388として使用するに適
した回路を、容易に設計し製造することが可能であろ
う。
VRAM信号発生器は、更に、マルチプレクサ1378から供
給される信号の値4に応じてその制御出力端子に高イン
ピーダンスを与える。この高インピーダンス状態によっ
て合成ビデオ信号源212は、VRAM216のメモリ書込み動作
を制御することができる。この発明のこの実施例では、
マルチプレクサ1378から供給される4つ値は、マルチプ
レクサ1356に結合されたデコーダ1355によってデコード
される。デコーダ1355に供給された4の値はこのデコー
ダを制御して論理1の値をマルチプレクサ1376の入力端
子ENに印加されるようにする。この信号によって、マル
チプレクサ1356はVRAM216のアドレス入力ポートに高イ
ンピーダンスを与えるようにされる。この高インピーダ
ンスにより圧縮されたビデオ信号源212は可動化され
て、VRAM216のアドレス入力ポートを1メモリサイクル
の間制御する。
各VRAMメモリサイクルは信号CK′の4周期の間にわた
っている。制御回路1310は、この信号CK′を使って信号
CCK′を発生する。この信号CCK′は、VRAMメモリサイク
ルより信号CK′の1周期の2分の1だけ進んでいる。信
号CCKの前縁から信号CK′の1周期後、すなわちVRAMメ
モリサイクルの開始点で、スケジューリング回路はスケ
ジュールされているメモリ動作の中から或るメモリ動作
を選択しており、かつどの動作が選択されているかを示
す値がマルチプレクサ1378の出力ポートから取出せる。
この選択された値は、マルチプレクサ1356を制御して
選ばれたレジスタ中のアドレスまたは高インピーダンス
をVRAM216のアドレス入力端子とバンク選択論理に印加
させ、またVRAM信号発生器1388を制御して、もし水平線
同期信号HS、カウンタ1382、出力FIFO232によって或い
は統計的デコーダ230、入力FIFO232または入力FIFO234
のうちの1つによって選択されたメモリ要求が発生する
と、直列読出し動作リフレッシュ動作、ランダム書込み
動作またはランダム読出し動作をそれぞれ行なうために
信号を発生させる。メモリサイクルの終りよりも信号C
K′の1周期分前に、VRAM信号発生器1388は適当なパル
ス信号RFS、OFS、SDS、IF0SまたはIF1Sを送り出して、
要求されたメモリ動作は実行されたことを示す。
VRAM制御ユニットは、圧縮されたビデオ信号の信号源
212が周期的にVRAMメモリサイクルを使用して圧縮され
たビデオデータをVRAM216にロードするので、すべてのV
RAMメモリサイクルを使用するとは限らない。VRAM216の
使用に関する競合の可能性は、緊急メモリ要求を取扱う
スケジューリング回路によって解決される。
圧縮されたビデオの信号源212は、VRAM216中に記憶す
べき32−ビットの値を持っているときは、信号CVRの状
態を論理1に変える。信号CVRは優先度デコーダ1380の
ビット位置4入力ポートに印加される。スケジューリン
グ回路がこの形式の要求を取扱うときは、4の値を、VR
AM信号発生器1388、制御回路1310、およびマルチプレク
サ1356に結合されているデコーダ1355に供給する。この
値は、信号発生器1388とマルチプレクサ1356を制御し
て、それらの出力端子の高インピーダンスを呈するよう
にする。この両出力端子はバスAD/CTLを介してVRAM216
に結合されている。更に、この4という値は、制御回路
1310を制御して圧縮されたビデオ信号源212に信号GRANT
として論理1の値を供給する。この信号は、信号源212
内のアドレスおよび制御回路を可動化して、メモリ書込
み動作の信号を発生させ、信号源212からVRAM216中にデ
ータを記憶させる。
VRAM信号発生器1388を、スケジューラから供給された
値をランダム読出し、ランダム書込み、直列読出しまた
はリフレッシュ動作を行なうべきかを表わす信号に変換
する第1の回路と、この様な信号からVRAM集積回路に供
給する実際の信号を生成する第2の回路との2つの別々
の回路に区分することが考えられている。第1の回路は
VRAM制御ユニット238の一部になり、従って第2の回路
は回路210の内部にあることになろう。しかし第2の回
路は回路210の外部に形成されて、圧縮されたビデオの
信号源212と共有することになろう。
ここで説明するこの発明の実施例は、ルミナンス・ビ
ット・マップのアドレスを記憶するために1対のビット
・マップ・アドレス・レジスタを持っているが、カラー
・ビデオ信号を処理するこの発明の実施例として2つの
色差信号ビット・マップのアドレスを記憶するために2
個の付加ビット・マップ・レジスタを持つ形にすること
も考えられる。更に、すべてのビット・マップ・アドレ
ス・レジスタに対する最初のビット・マップ・アドレス
値を、ビデオ信号プロセッサ210が停止状態にある間マ
イクロプロセッサ224に記憶しておくようにすることも
考えられる。
以上はビデオ信号プロセッサ210の回路に関する詳細
な説明である。次にこのプロセッサを使用して、圧縮さ
れたビデオ信号をデコード(すなわち引伸ばし)する方
法を説明する。
第1図に関連して上述したように、このプロセッサに
より再構成される画像は、絶対または相対的双線形多項
式(Ax+By+C)の形で、またDPCMエンコード技法を使
って個々にコード化されたピクセルとして、矩形領域
(以下、セルという)を表わす記録(レコード)にコー
ド化されている。第1図に示された記録フォーマットは
概念的には有効なものであるが、好ましいコード化デー
タの配列が第14図に示されている。このデータは、5つ
の部分すなわち各セルに割当てられるデータを含んでい
る“セルテーブル”、統計的にコード化されたデータの
別々のブロック(以下、“データ”という)、双線形多
項式を作るために使用されるテーブル(以下、スローブ
・リストという)DPCMコード化データをデコードするた
めに使用するテーブル(以下、テーブルDという)との
対をなす2テーブル、およびその時表示されている画像
のビット・マップ、で構成されている。統計的にコード
化されたデータセグメントはその統計的デコーダ230を
使ってプロセッサ210で読出し得るように、個々別々の
ものである。セルテーブル、データ値、スロープ・リス
ト、テーブルDおよびビット・マップはすべてVRAM216
中に記憶される。更に、デコード動作の進行につれて、
新しいすなわち現在のビット・マップが生成され、それ
は次に表示すべき画像を表わしている。
セルテーブルは、各セルごとに、数としてコード化さ
れた(たとえば、1=絶対、2=相対的、3=DPCM)そ
の形式T、その左上隅におけるピクセル値のビット・マ
ップ中の座標値(X POS、Y POS)、およびその寸法
(H、W)を含んでいる。そのセルが相対的セルか絶対
セルであれば、多項式の係数A、BおよびCに関する情
報も与えられる。もしそのセルが相対的セルであれば、
その時のセル中のピクセル値の、その時表示されている
画像のビット・マップ中のセルの対応するピクセル値に
対する変位値ΔXとΔYが与えられる。デコーディング
を簡単化するために、記録は長さが一定であるもの(記
録当り10個の16−ビット・ワード)とする。データが10
ワードより少ない記録(DPCMのような)は10ワードに埋
込まれる(パッデングされる)。
多項式Ax+By+C中のスローブ項を表わす係数AとB
は特殊な形にコード化される。セルテーブルは実際の
A、Bの値を含む代りに、そのスローブ・リスト中にイ
ンデクス値を含んでいる。このスローブ・リストは各画
像と共に(或いは、各画像のシーケンスと共に)デコー
ダに伝達される。スナープ・リストに関するこの理由
は、デコード作用の効率を改善するため、次に述べるよ
うにデコーダがスロープテーブルを利用できるようにす
るためである。
圧縮された画像全体をデコードするに使用するマイク
ロコードは、一般にプロセッサの利用可能なマイクロコ
ードRAM310にフィットしないであろうから、デコーディ
ング動作は幾つかの“パス”に分けられる。その第1の
パスはすべての絶対セルをデコードし、続いて相対的セ
ル用の他のパスおよびDPCMセル用の別のパスがある。こ
のプロセスは第15図に概要が示されており、すなわち、
スイッチ1510の順次選択作用によって3回呼出される同
一のプロセス1520(特定形式のセル全部をデコードする
ため)で、構成されている。
プロセス1520の詳細は第16図に示されている。最初、
統計的デコーダ230と入力FIFO232はステップ1610と1620
で、統計的にコード化されたデータとセルテーブルとを
それぞれ含むVRAMのセグメントをアドレスするように初
期化される。ステップ1630ではセルテーブルの記録から
値Tを読出す。この値Tはセル形式を特定する。ステッ
プ1640では値Tを特別の“テーブルの終り”の値と比較
する。この“テーブルの終り”のフラッグとしては通常
は0が使用され、比較動作が迅速に行なわれるようにさ
れる。もし、テーブルの終りに達しない場合には、この
値Tを処理されるセルの形式と比較する(ステップ165
0)。もしこのコードがそのとき処理されている形式で
あれば、記録がデコードされ(ステップ1660)、そうで
ない場合にはその記録はスキップされる(ステップ167
0)。
次にセルのデコーディング・プロセスについて詳しく
説明する。初めに、絶対および相対的セルのデコードを
効率的の行なうためのこのプロセスのキー要素がある
“スナープ・テーブル”の概念を導入して説明すること
が必要である。
“スナープ・テーブル”の概念は第17A図と第17B図に
例示されている。第17A図は双線形多項式関数Ax+By+
Cでフィルされる矩形領域を表わしている。この様な双
線形関数は、この関数からの値で直接フィルされる絶対
セルと、この関数によって与えられる値をそのときより
前のビデオ画像のセルからのピクセル値に加算する相対
的セルとの双方に使用されるものであることを、想起さ
れたい、スロープ・テーブルは絶対および相対的セルの
双方に対して同一のものである。
関数P(x,y)=Ax+By+Cの値は、第1行の値P0、P
1、P2等として、および第2行P0′、P1′、P2′等とし
て示されている。この関数の値をリアルタイムで計算し
ようとする場合、2つの問題が生じる。第1の問題は2
つの乗算(AxとBy)が必要なことである。もし係数
(A、B、C)がすべて整数であれば、周知の増分加算
法によってこの問題は解決することができる。これは、
P(x+1,y)=P(x,y)+Aという事実、すなわち、
セル内の1つの水平線内の相連続するピクセルの値は累
算器に値Aを順次加算することによって計算できるとい
うことを利用している。しかし、この発明の場合には、
係数Cの値は常に整数であるが、AとBの値はそうでは
ない。その理由は、画像のルミナンス値の空間的変化は
通常1ピクセル当り1グレーレベルよりも小さいからで
ある。それで、事実、A、Bは小数部をもっているだけ
でなく、普通は絶対値1よりも小さい。また、2つのピ
クセル値は1命令サイクル中に計算されるから、これら
のピクセル値の計算に飽和を伴う2重加算動作(デュア
ル・アッド・ウイズ・サチュレート・オペレーション)
を使用することも望ましい。しかし、この飽和を伴う2
重加算動作は整数の加算だけに適用できるもので、小数
のスロープ値を累算することはできない。
この第2の問題を解決するために、“スローブ・リス
ト”と“スロープ・テーブル”を使用する。スロープ・
リストは、処理される全画像に対して排他的なスロープ
値として使用される、AとBの特定値(1/256の精度で
特定されている)の小さなセットである。換言すれば、
その画像内で自然に発生するAとBの値のそれぞれは、
このスロープ・リスト中の1つの値で近似される。次
に、このスロープ・リスト中で見られるAの特定値に対
する関数P(x,y)を評価した結果を示す第17A図につい
て考察する。差の値D0、D1、D2、D3等は、1つの中間ピ
クセル値を介して隔てられたピクセル値相互間の差の整
数部として計算されている。たとえば、D2はP2-P0の値
の整数部に等しく、D3はP3-P1の整数部に等しく、以下
同様という具合になっている。最初の差の値D0とD1の対
は実際のピクセル値P0とP1から値P0ををそれぞれ差引い
て得たものであることに注意された。
この差の値の組は、多項式中のAの値にのみ依存する
ものであるから、スロープ・リスト内のAの各値に対し
て差の値を算出することができる。与えられたスロープ
・リストについてその様なすべてのテーブルの組を“X
スロープ・テーブル”と名付ける。特定のスロープ・リ
ストが与えられると、整数の値を含むスロープ・テーブ
ルは、リアルタイムのデコーディング・コストがほとん
どなしで完全に予め算出されたVRAM216中に記憶するこ
とができる。
この図にはピクセルが対をなして示されているが、そ
れは第4B図を参照して前述したデコーディング・プロセ
ッサ中でデコーディング・プロセスに飽和を伴う2重加
算ALU動作を使用するからである。この図に示されてい
る値はすべて8−ビット値であり、各値の対は1つの16
−ビット・ワードにパックされている。このXスロープ
・テーブルを利用できるものとすれば、関数P(x,y)
の値は、たとえば次の様な単一のALU演算で計算するこ
とができる。
(P4、P5)=(P2、P3)+〕(D4、D5)ここに、+〕
は飽和を伴う2重加算動作を表わしている。初めに、累
加レジスタに対をなす8−ビット値(P0、P0)をロード
し、順次スロープ・テーブルからの対をなす値を加算す
ることによって、各ピクセル値の対に対して1回だけの
ALU動作を使ってP(x,y)値の正確な再構成を行なうこ
とができる。
上記の方法は1走査線上の値を発生するだけである。
次の走査線を発生させるには値(P0′、P0′)が必要と
なる。それは、次の計算で得られる。
(P0′、P0′)=(P0,P0)+〕(Q0、Q0) ここに、(Q0、Q0)は、Xスロープ・テーブルから類
推できるがそれとは異なる構成をもつ“Yスロープ・テ
ーブル”からの値である。第17A図に示されるようにY
スロープ・テーブルでは、関数P(x,y)の垂直方向に
隣接する値を減算してそのスロープ・テーブル値を得て
いる。この点が、1つの中間ピクセルで隔てられている
値同士が減算されるXスロープ・テーブルと違う点であ
る。また、Yスロープ・テーブルでは、2つの8−ビッ
ト・ワードの両半部に同一値が重複している。
要約すると、ビデオ信号プロセッサ210は、圧縮され
たビデオ・データの一部として現在の画像に使用される
スロープのリストを含んでいるスロープ・リストを受入
れる。プロセッサ210は次に、絶対または相対的セルを
デコーディングするに先立って、スロープ・リスト中の
各スロープに1個のベクトル・エントリーをもってXと
Yの両スロープ・テーブルを構成する。これらのスロー
プ・テーブルはVRAM216中の予め定められた位置に記憶
される。スロープ・テーブルはスロープ・リストにでは
なくセル・テーブルにコード化することも考えられる
が、スロープ・リストの方がよりコンパクトであるから
コード化効率の面で有効である。
スロープ・リストとXおよびYスロープ・テーブルの
概念が第17B図の例に示されている。上述のように、X
とYスロープ・テーブルはそれぞれスロープ・リスト中
のどのスロープ値に対してもエントリーを持っている。
エントリーは、Xスロープ・エントリーについては1つ
おきのピクセル値相互間の差に相当する一連の値で、ま
たYスロープ・エントリーについては隣接ピクセル値相
互間の差に相当する一連の値で構成されている。下記の
例では、スロープ・リスト中の項目(アイテム)6、1.
25に対するXスロープ・テーブル・エントリーとスロー
プ・リスト中の項目10、2.25に対するYスロープ・テー
ブル・エントリーとが発生される。
Xスロープ・テーブル・エントリーは、16−ビットの
スロープ値を前の和に繰返し加算することによってラン
ニング和を累加することにより発生させられる。各加算
動作の後、累加された和の整数部(すなわち、8個のMS
B)が記憶された値の1つおきのものの差をとることに
よって生成される。これらの値は選ばれたスロープ値に
対するXスロープ・テーブル・エントリーとして記憶さ
れる。Xスロープ・テーブル・エントリーを発生するア
ルゴリズムは、中間の介在値によって隔てられている値
相互間の差を記憶する。その理由はXスロープ・テーブ
ル・エントリーから絶対または相対的セルを再構成する
のに飽和を伴なう2重加算動作を使用するからである。
この動作は並列的に2つの加算を行なうので、絶対また
は相対的セルに2つの加算を行なうので、絶対または相
対的セルを再構成するためのアルゴリズムは、サンプル
の1つおきのものの各和を別々に累加する。このXスロ
ープ・テーブル・エントリーはこの2重累加動作が正し
く効率的に行なわれるように配列される。
Yスロープ・テーブル・エントリーを発生させるに
は、選ばれたスロープ値を上記と同様に累加しその累加
和の整数部を記憶する。しかし、Yスロープ・テーブル
・エントリー中に記憶される差の値は、記憶サンプルの
隣接するもの同士から生成される。
第18図は、プロセッサが絶対セルのデコードを実行す
る動作のシーケンスを示している。最初のステップ1810
は、デコーディング・プロセスの残余の期間中、より効
率良くアクセスするために、入力FIFO232を使ってセル
・テーブルからデータRAM228へ値を転送することであ
る。ステップ1812は、値Aに相当するXスロープ・テー
ブル・エントリーを、入力FIFO234を使ってセル・テー
ブル・エントリーからデータRAM228へ転送することであ
る。これは、セル・テーブル・エントリーを、下記する
プロセスの“インナ・ループ”中の高速アクセスに利用
できるように行なわれる。ステップ1814は出力FIFO236
を、そのセルの開始点に相当する現在の画像ビット・マ
ップ中のアドレスに対して初期化する。ステップ1816は
入力FIFO234をYスロープ・テーブル中の第1エントリ
ーに対する点に初期化する。次のステップ1818では、た
とえばデータ・パス242中のR3(記号的に“値”とい
う)レジスタを値(C、C)に、すなわちセル・テーブ
ル記録から得られ上位8ビット位置と下位8ビット位置
の双方に一定値Cをもつ16−ビット・ワードに、初期化
する。ステップ1820では、他のレジスタたとえばyカウ
ントと呼ぶレジスタR2をセル・テーブル・エントリーか
らの値Hに初期化する。
ステップ1822は、プロセス中の“アウタ・ループ(ou
ter loop)”、すなわち処理されるセルの各走査線に
対して1回行なわれるループ、を始める。先ず(ステッ
プ1822)、データRAM228中のポインタ・レジスタの1個
たとえばDR2を、既にステップ1812でデータRAM228中に
転送されている、Xスロープ・テーブル中の第1エント
リーに対する点に初期化する。ステップ1824では、デー
タ・パス回路242のループ・カウンタ514(記号的には
‘cnt'という)を値W/2に初期化する。これは、セルの
各水平線に対して発生されるピクセル値対の数である。
約束として、このコードWシステムは1線当り偶数個の
ピクセルを有するセルを発生するだけとする。従って、
Wは常に偶数である。ステップ1826はレジスタ“値”中
にある値をALU244の出力レジスタ416にパスさせ、これ
はスロープ・テーブルの説明で前述したように出力ピク
セル値を累加するのに使用されるものである。ステップ
1828はこのプロセスの“インナ・ループ”であって、詳
細に下記するが、セル線の水平線上における各ピクセル
対に対して1回行なわれる。そのセルに対してピクセル
・データの1水平線の処理の後、次のステップ1830で
は、“値”にYスロープ・テーブル値を加算する。これ
らは第17A図に関連して前述したように、計算値=値
+〕(Q0、Q0)と等価である。ステップ1832は、出力FI
FO236をセル中の次の水平線の開始ピクセル・アドレス
に再初期化し、ステップ1834は‘yカウント’の値を減
少させる。テスト1836は、‘yカウント’が0に到達し
たか、ステップ1822へループバックしたか(もし上記が
0に到達しなければ)或いはループを出た(0に到達し
て)か、どうかをチェックする。これで、1つの絶対セ
ルの処理が完了する。
第19図は第18図のプロセスのインナ・ループ1828を実
際のマイクロコード制御ワードまたは命令の形で示して
いる。インナ・ループ1828は、ループ・カウンタ514の
制御下で交互に実行される2つの命令から成っている。
ここに掲示されている命令アドレスは例示目的だけのも
のであるが、下記するように、条件付きのブランチ動作
(分岐動作)がマイクロコードRAMとシーケンシング回
路226によって行なわれるやり方のために、それらの番
号は完全には任意的なものではない。
第1の命令(1)は、計算ALU=ALU+〕*DR2++を行
なう。ここに、記号*DR2++はテーブル4に関連して前
述した通りである。この計算は、Xスロープ・テーブル
・エントリーからの1対の値をALU出力レジスタ416(双
線形関数値の累算器として使用されている)に加算し、
またデータRAM228のポインタ・レジスタDR2をスロープ
・テーブル中の次の対をなす値に対する点に自動増加さ
せる。この命令は、また、ループ・カウンタを減少さ
せ、次でマイクロコードRAMとシーケンシング回路226を
次のマイクロコード制御ワードである命令2をロードす
るような条件付けも行なう。命令2は、回路210を制御
してALU出力レジスタ416中の値を出力FIFO236を通して
送るようにし、こうしてVRAM中に2つのピクセル値を書
込む。この命令に関して、ループ・カウンタ0の条件を
使用して条件付きブランチがセットされる。もしこの条
件が偽(不成立)であれば、制御は命令1へパスしてル
ープが継続する。水平線のピクセル・データが完了する
と、ループ・カウンタは0になり、その条件は真(成
立)となり、マイクロコード・シーケンサはアドレスの
LSBを強制的に0にするようにさせられる。これによっ
て、命令0へのジャンプが起こり、従ってインナ・ルー
プから出口へ出ていく。
これは2命令ループであり、かつループを一周するご
とに2個のピクセル値が発生されるので、このインナ・
ループは1ピクセル値当り1命令の速度で実行される。
一例として、命令サイクル時間が80nsで画像が256×240
ピクセルを有しプロセッサ210に休止状態が無いものと
すれば、このインナ・ループの可能最大実行時間(すな
わち画像が1絶対セルで表わされるとすれば)0.3フィ
ールド期間(約1/200秒)である。アウタ(外部)ルー
プのような、このシステムの上記とは別のプロセスおよ
び第16図の処理には更にデコード時間が加わる。また、
画像は通常は完全に一つの形のセルで構成されているも
のでないことを想起されたい。相対的およびDPCMセルで
はデコードするのに絶対セルの場合よりも長い時間を要
することが理解されよう。しかし、この様な因子があっ
ても、通常は2フィールド期間未満で画像をデコードす
ることができる。2フィールド期間というデコード時間
は所望のTVフレーム率30分の1秒に相当することに注意
されたい。
第20図は、プロセッサ210が相対的セルのデコードを
実行する動作のシーケンスを示している。多くのステッ
プは絶対セルのデコーディング・プロセスにおけるステ
ップと同様なものであるが、幾つかの重要な相違点があ
る。この相対的セルのデコーディング・プロセスでは、
双線形多項式Ax+By+Cの値を発生させることの他に、
この関数の値を前の画像ビット・マップの矩形領域から
得られるピクセル値に加算する。こうして得た和は、次
に現在の画像ビット・マップに書込まれる。更に、この
ピクセル値は、前の画像のビット・マップから直接取出
されるのではなく、ピクセル補間器246を使ってそれら
のピクセル群から補間することにより得られる。
ピクセル補間器246は、パイプライン構成であるか
ら、その出力値は入力値に対し遅延する。この時間的遅
延は、現在のおよびそれより前の画像セル中のピクセル
を通して行なわれる走査動作を複雑なものとする。その
理由は入力および出力FIFOの歩調が揃っていないからで
ある。この問題は、インナ・ループを2つの同じ命令グ
ループに分割することによって解決される。W/2回実行
される1つのインナ・ループ(絶対デコーディングの場
合のように)の代りに、N1回実行されるものとN2回実行
されるもの(但し、N1+N2=W/2)との2つのインナ・
ループがある。この値N1とN2は次のように予め計算され
る。すなわち、第1のインナ・ループの後入力FIFO232
が前の画像ビット・マップにおける連続する次の水平線
中の開始ピクセル位置に対する点に進められるように、
および第2のインナ・ループの後出力FIFO236が現在の
画像ビット・マップにおける現在のセルの連続する次の
水平線の開始ピクセル位置に対する点へ進められ得るよ
うに、計算される。
最後に、第9図について論議したように、2本のピク
セル・データ走査線が前の画像から読出されて現在のセ
ルにおける1本のピクセル水平線を生成することを想起
されたい。VRAM216に対するアクセス回路を減らす、従
ってデコーディング時間を減少させるために、第20図の
プロセスは、このプロセスのYループを通じてある時に
使用される2本の線のうちの下側の線は、Yループを通
じて次に使用される2本の線のうちの上側の線と同じ線
であるという事実を利用している。従って、回路210
は、VRAMからこのデータを2回読出す代りに、このルー
プを1周するごとに次のループ1周で使用するためにこ
のデータをデータRAM228中の“ライン・バッファ”に記
憶させる。
第20図に示したプロセスは、セル・テーブル記録から
データRAM228に対して値を転送するステップ2010から始
まる。ステップ2012は、現在のセル・テーブル記録から
得られる値AのXスロープ・テーブル・エントリーを、
VRAM216からデータRAM228へ転送する。これらの転送動
作には入力FIFO232を使用する。ステップ2014、2016お
よび2018は、それぞれ、現在の画像ビット・マップに対
する点への出力FIFO236の初期化、前の画像ビット・マ
ップに対する点への入力FIFO232の初期化、その時のセ
ル・テーブル記録からの値Bに相当するYスロープ・テ
ーブル・エントリーに対する点への入力FIFO234の初期
化を行なうステップである。ステップ2020は、ΔXとΔ
Yの小数部に等しい変位値でピクセル補間器246を初期
化する。このピクセル補間器は、前の画像の開始点アド
レスのLSBが0であれば“同相(イン・フェーズ)”モ
ードに初期化され、そうでなければ“離相(アウト・オ
ブ・フェーズ)”モードで働くようにセットされる。ス
テップ2022は、デコーディング・プロセスの残部で使用
するためにWの値を2等分する。ステップ2024は2つの
インナ・ループのカウント値であるN1とN2の値を計算す
る(矩形枠2024では、この可変“位相”は前の画像の開
始点アドレスLSBと同一値を持っている)。ステップ202
6は、レジスタをセル・テーブル・レコードからのHの
値に初期化して、セル中の水平線をカウントするように
する。ステップ2028は、前の画像セルの1本の水平線を
データRAM228中の線バッファ中にロードし、ポインタ・
レジスタDR1とDR2をその線バッファ中の第1の16−ビッ
ト値に対する点にリセットする。ステップ2030は、ピク
セル補間器246のパイプラインを、最初の有効な結果を
そこから読出すことのできる点までロードする。たとえ
ば、第9B図を参照すれば、ステップ2030は命令サイクル
1乃至T11を含んでいる。
ステップ2032はこのプロセスの“アウタ・ループ”の
出発点である。先ず、(ステップ2032)、データRAM228
中の1つのポインタ(例えばDR0)を、Xスロープ・テ
ーブル・エントリー中の第1の値に対する点に初期化す
る。次に、現在のセル・テーブル・レコードからの複製
(ジュープリケーテッド)定数項である値(C、C)
が、双線形関数P(x,y)の値を累加するのに使用され
るALU244のB入力ラッチ412中にロードされる。ステッ
プ2036、2038および2039は、インナ・ループ命令を初期
化しN1回(ただし、N1は0のこともある)実行する。ス
テップ2040は、次に入力FIFO232を前の画像からのセル
における次の水平線の開始点に対する点にリセットす
る。ステップ2042は線バッファ・ポインタ(DR1とDR2)
をこの線バッファの開始点に対する点にリセットする。
ステップ2044、2046および2048はインナ・ループ命令を
初期化しN2回実行する(ここに、N2は0のこともあ
る)。
ステップ2050では、出力FIFO236が使用したアドレス
値を、現在のビット・マップ用のセルの次の線における
第1ピクセル位置に対する点に進める。ステップ2052
は、ピクセル補間器を通してもう1つの値の組(4ピク
セル)をパスさせる。これらの値は、前の画像における
セルの右端を少し越えた位置を有するピクセルに相当
し、線上の最後の補間結果を生成するのに使用される。
しかし、このステップは、また、ピクセル補間器に別の
1対の結果を生じさせる。この結果はステップ2052で読
出され、簡単に破棄される。ステップ2054は‘yカウン
ト’の値を減少させ、テスト2056では、そのセルのピク
セル値の最終水平線の処理が完了したかどうかをチエッ
クする。もし完了していれば、プロセッサはアウタ・ル
ープを出て、そうでなければステップ2032でこのループ
を継続する。
第21図は、第20図に示したプロセスのインナ・ループ
を示している。このループは4つの命令で構成されてい
る。第1の命令(1)はALU244のB入力レジスタ412に
おける値をある値*DR0(すなわち、レジスタDR0に保持
されているアドレス値を有するデータRAMセル中の値)
に加算する。この値はXスロープ・テーブルから与えら
れる。またこの命令の期間中、DR0中に保持されている
アドレス値は1だけ増分増加される。ALU244のB入力レ
ジスタ412は双線形関数Ax+By+Cの値を累加するのに
使用されていることを想起すべきである。命令1は、ま
た入力FIFO232を使って1対のピクセル値を読出し、そ
れをデータ・パルス回路242のレジスタR0中にロードす
る。これらのピクセル値は、ピクセル補間器に印加され
て1対の補間ピクセル値を発生させる4つのピクセルの
うちの下側の対に相当する。次の命令2は、ALU出力値
(命令1の結果)をB入力レジスタ412に戻して配置す
る。これは、また、この値をピクセル補間器246の出力
値に加算して、連続する2つのピクセルに対する、関数
Ax+By+C+前の画像の値を生成する。この対をなすピ
クセル値は次の命令3で出力FIFO236を介してVRAM216中
に書込まれる。その上、命令3は、レジスタDR1に保持
されているアドレス値を使って、データRAM228に保持さ
れた線バッファからの値(2ピクセル)をピクセル補間
器にロードする。これらのピクセルは補間器246に供給
されている4ピクセルのうちの上側の対に相当する。こ
の命令はまたデータ・パス回路242のループ・カウンタ5
14を増分減少(decrement)させる。最後に命令4は、
補間器246に対するピクセル値の下側の対である、レジ
スタR0中の値をとって、この値をピクセル補間器246と
データRAM228中の線バッファの双方にロードする(レジ
スタDR2中のアドレスを使って)。条件付きブランチ動
作は、ループ・カウンタが0に到達したか否かに基づい
て動作するものであり、所要数のピクセル値の発生が完
了するまではループ中でその命令を繰返させる。
このインナ・ループは4つの命令サイクルで2ピクセ
ル値を発生し、これは休止状態が無いものとすれば、25
6×240の画像の0.6フィールドの最大総経過時間に相当
する(これは、インナ・ループだけについてのオーバヘ
ッドで、前述した他のものは無視している)。
第22図は、DPCMセルのデコーディングに含まれている
動作のシーケンスを示す。DPCMセル中の各ピクセル値は
圧縮されたビデオ画像のデータ・セグメント中の1個の
値Vでコード化される。この値Vは、現在の画像におけ
る可能性のあるすべてのピクセル−ピクセル間の差を含
んでいる値のテーブル(テーブルD)に対するインデク
スをなしていると解釈される。このテーブルDはデータ
RAM228に記憶されている。DPCMセルの大部分のピクセル
値は、テーブルDから得られる差のピクセル値をターゲ
ット・ピクセルのすぐ左のピクセル値に加えることによ
り、発生される。セルの左端のピクセル値はテーブルD
からの差のピクセル値を前の線の対応する値に加えるこ
とによって発生される。セルの左上隅のピクセルの“上
にある”仮想ピクセルは一定値128を有するものと見な
す。
DPCMデコーディング・プロセスは、VRAM216中のセル
・テーブルからの値X POS、Y POS、H、W、を入力FIFO
232を介してデータRAM228に転送する(ステップ2210)
ことによって始まる。次に、出力FIFO236が現在のセル
の左上隅のピクセルに相当するアドレス(X POS、Y PO
S)に対する点へ、初期化される(ステップ2212)。ス
テップ2214ではレジスタ、たとえばR3(‘最後の線’)
が値128にセットされる。このレジスタ‘最後の線’
は、現在の線の第1ピクセルを発生させるときに使用す
るため、前の線の第1ピクセル値を記憶するのに使用さ
れる。ステップ2216は、セル中の水平線数を保持してい
る、たとえばR2のようなレジスタ‘yカウント’をロー
ドする。
ステップ2218はデータ・パス回路242のループ・カウ
ンタ514にセル・テーブル記録からの値Wをロードす
る。ステップ2220は値*DR2(すなわちテーブルDからの
値)を読出すレジスタDR2中に統計的デコーダ230からの
値V(すなわちテーブルDに対するインデクス)をロー
ドすることによって、水平線上の第1ピクセルの値を計
算し、次に計算“最後の線=最後の線+〕*DR2"を行な
う。次に、インナ・ループが実行される(ステップ222
2)。最後に、出力FIFOがその時のビット・マップの次
の水平線の第1ピクセル値に対する点にリセットされ
(ステップ2224)、レジスタ‘yカウント’は増分減少
させられてループが終了する(すなわち、yカウント=
0のとき)までテストされる(ステップ2226、2228)。
第23図はDPCMデコーディング・プロセスのインナ・ル
ープに対するマイクロコード命令を示している。最初の
命令2は、現在の累加値(ALU出力レジスタ416中の)を
出力FIFO236を介してVRAM216に書込み、またこの値をデ
ータ・パス回路242のレジスタR1中に記憶させる。この
ループの最初の命令は、ループ・カウンタ514に保持さ
れている値が0かどうかによって、ループを出るかまた
は継続する条件付きブランチを持っている。次の命令1
は、統計的デコーダ230を使ってVRAM216からV値を読出
してこれをレジスタR0中に記憶させる。次の命令3は、
レジスタR0からのこの値をデータRAM回路228のレジスタ
DR2に転送する。このループの最後の命令4は、レジス
タR1中の前ピクセル値を値*DR2(データRAM228中のテー
ブルDからの差の値である)に加算し、ループの一番上
にブランチバックさせる。
DPCMデータのデコードに使用されるこの命令シーケン
スのインナ・ループは飽和を伴う2重加算動作である。
この命令シーケンスは、A BUSとB BUSの両バスの8個の
LSB位置によって運ばれるデータの1個のバイトについ
て動作している。この飽和を伴なう2重加算動作は、実
際の差の値ではなくテーブルDから得られる近似的な差
の値を使用することから生ずるどの様な謝った差の値を
も飽和させるために使用される。この形式の飽和加算法
は、飽和を伴なう2重加算動作においてALU244によって
のみ支持される。
このDPCMデコーディング命令シーケンスのインナ・ル
ープは4つの命令ごとに1ピクセルを発生し、これは休
止状態が無いとすれば、インナ・ループのみについて、
256×240の画像に対して1.2フィールドの最大総経過時
間に相当する。
これまでの、ビデオ信号プロセッサ210の内部回路、
デコーディング・プロセス、およびインナ・ループの実
際のマイクロコード命令に関する説明を利用すれば、当
該専門家にとって、完全なデコーディング・プロセスを
構成するマイクロコード命令シーケンスを作ることは容
易な筈である。
上述したこの発明の実施例では、信号源212から供給
される圧縮されたデータはセル・テーブルの形式である
が、他の形式たとえば2進トリーの形でデータを供給す
ることも考えられる。その場合には、プロセッサ210は
2進トリー・データをセル・テーブル形式に変換するよ
うにプログラムされることになろう。
フロントページの続き (72)発明者 ケイツ,ジヨン マイケル アメリカ合衆国 ペンシルバニア州 18977 ワシントン・クロツスイング オークデール・アベニユ 115 (72)発明者 パテイ,マイケル フランシス アメリカ合衆国 ニユージヤージ州 08536 プレーンズボロ メイジヤー・ レーン 15 (72)発明者 ハーニー,ケビン アメリカ合衆国 ニユーヨーク州 11218 ブルツクリン リーブ・プレイ ス 30 (72)発明者 ライアン,ローレンス デービツド アメリカ合衆国 ニユージヤージ州 08550 プリンストン・ジヤンクシヨン ランカシヤイアー・ドライブ 4 (72)発明者 フエデーレ,ニコラ ジヨン アメリカ合衆国 ニユージヤージ州 08528 キングストン プロスペクト・ ストリート 1 (72)発明者 アストル,ブライアン アメリカ合衆国 ニユージヤージ州 08512 クランベリ マデイソン・アベ ニユ 1 (56)参考文献 特開 昭58−121887(JP,A) 特開 昭61−296864(JP,A)

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】圧縮されたビデオデータとピクセルデータ
    とを含むビデオ画像を表わすデジタルデータであって、
    その一部が統計的にコード化されているデジタルデータ
    を供給する入力手段(228)と、 この入力手段に結合されており、制御信号に応答して、
    上記入力手段によって供給される統計的にコード化され
    たデジタルデータをデコードして、デコードされたデジ
    タルデータを生成する統計的デコーディング手段(23
    0)と、 上記制御信号と上記入力手段によって供給されるピクセ
    ルデータとに応答して、上記ピクセルデータによって表
    わされる上記ビデオ画像中のピクセル間に位置する上記
    ビデオ画像中のピクセルを表わす補間ピクセル値を生成
    するピクセル補間手段(246)と、 上記制御信号に応答し、上記統計的デコーディング手段
    により供給されるデジタルデータと上記ピクセル補間手
    段によって供給される補間ピクセル値とに対して算術演
    算を実行する算術データ処理手段(244)と、 この算術データ処理手段に結合されており、この算術デ
    ータ処理手段からの処理されたビデオデータを出力信号
    として供給する出力手段(236)と、 制御語バス(MCW)によって上記統計的デコーディング
    手段、上記算術データ処理手段及び上記ピクセル補間手
    段に結合されており、上記統計的デコーディング手段、
    上記算術データ処理手段及び上記ピクセル補間手段が同
    時に動作してデコードされ復元されたピクセルデータを
    上記出力信号として生成するようにし、また、上記算術
    データ処理手段が、上記統計的デコーディング手段によ
    って供給された上記デジタルデータの絶対デコーディン
    グ、相対的デコーディングまたはDPCMデコーディングを
    選択的に実行するようにする上記制御信号を発生するシ
    ーケンス手段(226)と、 を含む、ビデオ画像を表わす信号を処理するビデオ信号
    プロセッサ。
  2. 【請求項2】ビデオランダムアクセスメモリを含み、圧
    縮されたビデオデータと処理されたビデオデータとを記
    憶するメモリ手段(216)と、このメモリ手段中の上記
    圧縮されたビデオデータと処理されたビデオデータとに
    応答する、上記処理されたビデオデータを発生する集積
    回路(210)と、を含み、 上記集積回路は、 上記ビデオランダムアクセスメモリからの処理されたビ
    デオデータに応答して、この処理されたビデオデータに
    よって表わされるピクセル値の間のピクセル値を生成す
    るピクセル補間器(246)と、 制御信号と、上記ピクセル補間器と上記メモリ手段の一
    方からの処理されたビデオデータと、上記メモリ手段か
    らの圧縮されたビデオデータとに応答して、さらに処理
    されたビデオデータを生成する演算処理手段(244)
    と、 上記圧縮されたビデオデータに応答して、上記演算処理
    手段が上記圧縮されたビデオデータの絶対デコーディン
    グ、相対的デコーディングまたはDPCMデコーディングを
    選択的に実行するようにするための上記制御信号を生成
    する制御手段(226)と、 上記メモリ手段に結合されており、可変長コード化され
    た圧縮されたビデオデータをデコードし、デコードされ
    た圧縮されたビデオデータを上記制御手段と上記演算処
    理手段とに供給する統計的デコーディング手段(230)
    と、 上記メモリ手段に結合されており、上記制御手段からの
    別の制御信号に応答して、上記メモリ手段からの処理さ
    れたビデオデータを上記補間器に結合し、また、上記演
    算処理手段からの処理されたビデオデータを上記メモリ
    手段に結合するI/O手段(232、234、236)と、 上記制御手段からの制御信号と、上記I/O手段と、上記
    統計的デコーディング手段とに応答して、上記ビデオラ
    ンダムアクセスメモリをアドレスするためのアドレス信
    号を生成するメモリ制御手段(238)と、 を含む、圧縮されたビデオデータを処理するための装
    置。
  3. 【請求項3】上記制御手段が、 複数の制御信号を記憶するメモリ手段と、 この制御信号を記憶するメモリ手段から上記複数の制御
    信号の中のいくつかのものを順次供給する手段と、 を含んでいるものである、請求項2に記載の装置。
  4. 【請求項4】上記制御信号の中のいくつかのものを順次
    供給する手段が、上記制御信号の中のいくつかのものに
    応答して上記制御信号を供給するものである、請求項3
    に記載の装置。
  5. 【請求項5】上記I/O手段が少なくとも1つの入力FIFO
    (232、234)と1つの出力FIFO(236)とを含むもので
    ある、請求項2に記載の装置。
  6. 【請求項6】上記I/O手段、上記統計的デコーディング
    手段、上記演算処理手段及び上記メモリ制御手段が第1
    のデータバスによって相互接続されており、上記制御手
    段、上記演算処理手段及び上記ピクセル補間器が第2の
    データバスによって相互接続されており、上記第1と第
    2のデータバスが双方向性の制御可能なデータパスによ
    って相互接続されているものである、請求項2に記載の
    装置。
  7. 【請求項7】上記双方向性のデータパスが、各々が上記
    第1と第2のデータバスへの入力接続と上記第1と第2
    のデータバスへの出力接続とを有する複数の複数ビット
    レジスタ(510)を含み、この複数のレジスタは、それ
    に記憶されている値を上記第1と第2のデータバスの一
    方または双方に供給するか、あるいは、上記第1のデー
    タバスまたは上記第2のデータバスのいずれかによって
    供給される値を記憶するように、上記制御手段からの信
    号によって選択的に制御可能とされているものである、
    請求項6に記載の装置。
  8. 【請求項8】複数の複数ビットレジスタの中の少なくと
    も1つが、上記制御手段からの信号に応答して、それに
    記憶されているサンプルのビット位置を変更する回路を
    含んでいるものである、請求項7に記載の装置。
  9. 【請求項9】セグメントが絶対コード化法、相対的コー
    ド化法またはDPCMコード化法を含む相異なるコード化法
    を用いてコード化されている圧縮されたビデオ信号を処
    理して、動画像を表わす復元されたビデオ信号を生成す
    る集積回路であって、 この集積回路をメモリ手段に結合するためのI/Oポート
    (232、234、236)と、 アドレス信号を上記メモリ手段に結合するためのアドレ
    ス出力ポートと、 上記I/Oポートに結合されており、可変長コード化され
    た圧縮されたビデオ信号をデコードするための統計的デ
    コーダ(230)と、 上記I/Oポートに結合されており、処理されたビデオ信
    号を上記I/Oポートに供給し、また、上記I/Oポートから
    の処理されたビデオ信号を供給するI/O回路と、 上記処理されたビデオ信号によって表わされるピクセル
    値の間のピクセルを表わす値を生成するピクセル補間器
    と、 演算処理制御信号に応答して、2進値に対して算術関数
    及びブール関数の演算を実行する演算処理手段と、 接続制御信号に応答して、上記統計的デコーダ、上記I/
    Oポート、上記ピクセル補間器及び上記演算処理手段を
    選択的に相互接続する手段と、 上記演算処理制御信号と上記接続制御信号とを生成し
    て、選択的に、上記演算処理手段が上記I/Oポートに供
    給される圧縮されたビデオデータに対して複数のデコー
    ディング・アルゴリズムの1つを実行するようにする制
    御手段と、 上記アドレス出力ポートに結合されており、少なくとも
    上記制御手段に応答して、メモリアドレス信号を生成す
    るアドレス生成手段と、 を含む、集積回路。
  10. 【請求項10】上記制御手段が、 複数の制御信号を記憶するメモリ手段(310)と、 この制御信号を記憶するメモリ手段から上記複数の制御
    信号の中のいくつかのものを順次供給する手段と、 を含むものである、請求項9に記載の集積回路。
  11. 【請求項11】上記複数の制御信号の中のいくつかのも
    のを順次供給する上記手段が、上記複数の制御信号の中
    のいくつかのものに応答して上記制御信号を供給するも
    のである、請求項10に記載の集積回路。
  12. 【請求項12】上記I/Oポートが少なくとも1つの入力F
    IFOと1つの出力FIFOを含んでいるものである、請求項
    9に記載の集積回路。
JP1501081A 1987-11-16 1988-11-03 ビデオ信号プロセッサ、圧縮されたビデオデータを処理するための装置、および復元されたビデオ信号を生成する集積回路 Expired - Lifetime JP2750462B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/121,753 US4823201A (en) 1987-11-16 1987-11-16 Processor for expanding a compressed video signal
US121,753 1987-11-16

Publications (2)

Publication Number Publication Date
JPH03501556A JPH03501556A (ja) 1991-04-04
JP2750462B2 true JP2750462B2 (ja) 1998-05-13

Family

ID=22398580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1501081A Expired - Lifetime JP2750462B2 (ja) 1987-11-16 1988-11-03 ビデオ信号プロセッサ、圧縮されたビデオデータを処理するための装置、および復元されたビデオ信号を生成する集積回路

Country Status (6)

Country Link
US (1) US4823201A (ja)
EP (1) EP0386137A1 (ja)
JP (1) JP2750462B2 (ja)
KR (1) KR0134070B1 (ja)
CA (1) CA1303725C (ja)
WO (1) WO1989005084A1 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9405914D0 (en) * 1994-03-24 1994-05-11 Discovision Ass Video decompression
EP0576749B1 (en) * 1992-06-30 1999-06-02 Discovision Associates Data pipeline system
US4967196A (en) * 1988-03-31 1990-10-30 Intel Corporation Apparatus for decoding variable-length encoded data
US4991010A (en) * 1989-11-13 1991-02-05 Eastman Kodak Company Dual-mode image interpolation filter operable in a first mode for storing interpolation coefficients and in a second mode for effecting television standards conversion at a pixel rate
CA2045773A1 (en) * 1990-06-29 1991-12-30 Compaq Computer Corporation Byte-compare operation for high-performance processor
US6020894A (en) * 1990-08-16 2000-02-01 Canon Kabushiki Kaisha Full-color desktop publishing system
US5216518A (en) * 1990-09-04 1993-06-01 Canon Kabushiki Kaisha Image processing method and apparatus for encoding variable-length data
US5157517A (en) * 1991-04-29 1992-10-20 E. I. Du Pont De Nemours And Company Parallel interpolator for high speed digital image enlargement
US5493687A (en) * 1991-07-08 1996-02-20 Seiko Epson Corporation RISC microprocessor architecture implementing multiple typed register sets
US5539911A (en) * 1991-07-08 1996-07-23 Seiko Epson Corporation High-performance, superscalar-based computer system with out-of-order instruction execution
JPH07500437A (ja) * 1991-10-24 1995-01-12 インテル コーポレイシヨン データ処理システム
US5361370A (en) * 1991-10-24 1994-11-01 Intel Corporation Single-instruction multiple-data processor having dual-ported local memory architecture for simultaneous data transmission on local memory ports and global port
DE69311330T2 (de) * 1992-03-31 1997-09-25 Seiko Epson Corp Befehlsablauffolgeplanung von einem risc-superskalarprozessor
WO1993022722A1 (en) * 1992-05-01 1993-11-11 Seiko Epson Corporation A system and method for retiring instructions in a superscalar microprocessor
US5289577A (en) * 1992-06-04 1994-02-22 International Business Machines Incorporated Process-pipeline architecture for image/video processing
US5450599A (en) * 1992-06-04 1995-09-12 International Business Machines Corporation Sequential pipelined processing for the compression and decompression of image data
US7095783B1 (en) 1992-06-30 2006-08-22 Discovision Associates Multistandard video decoder and decompression system for processing encoded bit streams including start codes and methods relating thereto
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
US6034674A (en) * 1992-06-30 2000-03-07 Discovision Associates Buffer manager
US5768561A (en) * 1992-06-30 1998-06-16 Discovision Associates Tokens-based adaptive video processing arrangement
US5809270A (en) * 1992-06-30 1998-09-15 Discovision Associates Inverse quantizer
US6067417A (en) * 1992-06-30 2000-05-23 Discovision Associates Picture start token
US6417859B1 (en) 1992-06-30 2002-07-09 Discovision Associates Method and apparatus for displaying video data
US6330665B1 (en) 1992-06-30 2001-12-11 Discovision Associates Video parser
US5603012A (en) * 1992-06-30 1997-02-11 Discovision Associates Start code detector
US6435737B1 (en) * 1992-06-30 2002-08-20 Discovision Associates Data pipeline system and data encoding method
US6079009A (en) * 1992-06-30 2000-06-20 Discovision Associates Coding standard token in a system compromising a plurality of pipeline stages
US6047112A (en) * 1992-06-30 2000-04-04 Discovision Associates Technique for initiating processing of a data stream of encoded video information
US5442718A (en) * 1992-09-07 1995-08-15 Sony Corporation Apparatus and method for storing and reproducing digital image data yielding high resolution and high quality video image data
US5628021A (en) * 1992-12-31 1997-05-06 Seiko Epson Corporation System and method for assigning tags to control instruction processing in a superscalar processor
JP3531166B2 (ja) * 1992-12-31 2004-05-24 セイコーエプソン株式会社 レジスタ・リネーミングのシステム及び方法
US5805914A (en) * 1993-06-24 1998-09-08 Discovision Associates Data pipeline system and data encoding method
JP2682402B2 (ja) * 1993-10-28 1997-11-26 日本電気株式会社 データ処理装置
US6141122A (en) * 1993-11-18 2000-10-31 Sega Enterprises, Ltd. Data compressing method, image data memory, and method and device for expanding compressed data
CA2145361C (en) * 1994-03-24 1999-09-07 Martin William Sotheran Buffer manager
CA2145379C (en) * 1994-03-24 1999-06-08 William P. Robbins Method and apparatus for addressing memory
CA2145365C (en) * 1994-03-24 1999-04-27 Anthony M. Jones Method for accessing banks of dram
US5475754A (en) * 1994-04-22 1995-12-12 Thomson Consumer Electronics, Inc. Packet video signal inverse transport processor memory address circuitry
US6217234B1 (en) * 1994-07-29 2001-04-17 Discovision Associates Apparatus and method for processing data with an arithmetic unit
GB9417138D0 (en) 1994-08-23 1994-10-12 Discovision Ass Data rate conversion
JP3082585B2 (ja) * 1994-09-09 2000-08-28 富士ゼロックス株式会社 画像情報符号化処理装置、画像情報復号化処理装置及び画像情報符号化復号化処理装置
US5719594A (en) * 1995-10-06 1998-02-17 International Business Machines Corporation Method and system in a data processing system for improved video image resolution when enlarging a video sequence
US6580828B1 (en) 1999-06-30 2003-06-17 Logitech Europe, S.A. Fast decoding
US7009644B1 (en) 1999-12-15 2006-03-07 Logitech Europe S.A. Dynamic anomalous pixel detection and correction
US6320813B1 (en) * 2000-03-02 2001-11-20 Sun Microsystems, Inc. Decoding of a register file
US20030156639A1 (en) * 2002-02-19 2003-08-21 Jui Liang Frame rate control system and method
US7296030B2 (en) * 2003-07-17 2007-11-13 At&T Corp. Method and apparatus for windowing in entropy encoding
US10567118B2 (en) * 2016-08-15 2020-02-18 Qualcomm Incorporated Coding to improve transmission and reception processing time

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3999308A (en) * 1975-03-12 1976-12-28 The Singer Company Real-time simulation of a point system having textured areas as viewed by a moving observer
GB1568378A (en) * 1976-01-30 1980-05-29 Micro Consultants Ltd Video processing system
US4068266A (en) * 1976-06-03 1978-01-10 Xerox Corporation Statistical resolution conversion technique
US4127873A (en) * 1977-05-20 1978-11-28 Rca Corporation Image resolution enhancement method and apparatus
US4125861A (en) * 1977-08-18 1978-11-14 Bell Telephone Laboratories, Incorporated Video signal encoding
US4564915A (en) * 1980-04-11 1986-01-14 Ampex Corporation YIQ Computer graphics system
US4428059A (en) * 1980-07-30 1984-01-24 Honeywell Inc. Real time fill circuit
US4396906A (en) * 1980-10-31 1983-08-02 Sri International Method and apparatus for digital Huffman encoding
US4587621A (en) * 1982-03-08 1986-05-06 The Mead Corporation Device for electrical variable magnification of document image
US4430670A (en) * 1982-03-12 1984-02-07 Bell Telephone Laboratories, Incorporated Reconstruction of quantized DPCM or PCM signals
US4603347A (en) * 1982-05-06 1986-07-29 Nippon Telegraph & Telephone Public Corporation Intraframe coding and decoding equipment for video signals of different quality
CA1211219A (en) * 1982-06-30 1986-09-09 Hideo Kuroda Digital data code conversion circuit for variable- word-length data code
US4689823A (en) * 1984-01-04 1987-08-25 Itek Corporation Digital image frame processor
SE465347B (sv) * 1984-04-25 1991-08-26 Matsushita Electric Works Ltd Bildsaendningssystem foer sampling och komprimering av bilddata i ett tv-bildfaelt
US4660156A (en) * 1984-07-23 1987-04-21 Texas Instruments Incorporated Video system with single memory space for instruction, program data and display data
US4656516A (en) * 1985-03-25 1987-04-07 Rca Corporation Vertical subsampling and memory synchronization system for a picture within a picture television receiver
US4667222A (en) * 1985-04-29 1987-05-19 Digital Services Corporation Television effects system for manipulating composite color television signals
US4661987A (en) * 1985-06-03 1987-04-28 The United States Of America As Represented By The Secretary Of The Navy Video processor
US4663660A (en) * 1986-06-20 1987-05-05 Rca Corporation Compressed quantized image-data transmission technique suitable for use in teleconferencing

Also Published As

Publication number Publication date
US4823201A (en) 1989-04-18
KR0134070B1 (en) 1998-04-22
CA1303725C (en) 1992-06-16
EP0386137A1 (en) 1990-09-12
WO1989005084A1 (en) 1989-06-01
JPH03501556A (ja) 1991-04-04

Similar Documents

Publication Publication Date Title
JP2750462B2 (ja) ビデオ信号プロセッサ、圧縮されたビデオデータを処理するための装置、および復元されたビデオ信号を生成する集積回路
JP2750438B2 (ja) 2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法
US5047975A (en) Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode
US5189636A (en) Dual mode combining circuitry
US5088053A (en) Memory controller as for a video signal processor
US4835607A (en) Method and apparatus for expanding compressed video data
US5870497A (en) Decoder for compressed video signals
EP0572263A2 (en) Variable length code decoder for video decompression operations
KR970005454B1 (ko) 데이타 처리 시스템 및 내장 프로그램 제어기 장치
US5781134A (en) System for variable length code data stream position arrangement
US5978508A (en) Two-dimensional inverse discrete cosine transformation circuit for MPEG2 video decoder
AU622879B2 (en) Pixel interpolation circuitry as for a video signal processor
AU622128B2 (en) Processor for expanding a compressed video signal
AU623874B2 (en) Stored program controller with a conditional branch facility as for a video signal processor
AU625151B2 (en) Memory controller as for a video signal processor
AU626847B2 (en) Dual mode adder circuitry
EP0928114B1 (en) Video data decoding apparatus
US20030161397A1 (en) Data manipulation

Legal Events

Date Code Title Description
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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 11