JPH03501553A - 2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法 - Google Patents

2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法

Info

Publication number
JPH03501553A
JPH03501553A JP63509545A JP50954588A JPH03501553A JP H03501553 A JPH03501553 A JP H03501553A JP 63509545 A JP63509545 A JP 63509545A JP 50954588 A JP50954588 A JP 50954588A JP H03501553 A JPH03501553 A JP H03501553A
Authority
JP
Japan
Prior art keywords
value
signal
register
values
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.)
Granted
Application number
JP63509545A
Other languages
English (en)
Other versions
JP2750438B2 (ja
Inventor
ハーニー,ケビン
ケイツ,ジヨン マイケル
スプレイグ,デービツド リロイ
アストル,ブライアン
Original Assignee
インテル コーポレーシヨン
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インテル コーポレーシヨン filed Critical インテル コーポレーシヨン
Publication of JPH03501553A publication Critical patent/JPH03501553A/ja
Application granted granted Critical
Publication of JP2750438B2 publication Critical patent/JP2750438B2/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
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 ビデオ信号プロセッサ等用の ビクセル補間回路 この発明は、2つの次元においてビクセルデータを補間するバイブライン形回路 に関するものである。
近年、ビデオ信号圧縮の分野では大きな進歩がなされている。≠ジタル的にコー ド化されたビデオ信号の伝送あるいは記憶を容易にするために、その信号の冗長 度を減じるために、いくつかの方法か開発されている。この出願においては、3 つの方法、以下では、絶対コー1(化2差分パルスコード変調(DPCM)コー ド化及び相対的コード化と称する方法が特に関係がある。これらのビデオ圧縮技 法を以下に説明する。
絶対コード化された画像というのは、ある画像を複数の隣接したセグメントに分 割し、各セグメントにフィル(fill)値を割当てることによって生成される 。このフィル値は、一定のルミナンス及び/またはクロミナンス値とすることも できるし、またセグメント中のビクセルの位置の関数としてビクセル毎に変わる 値である場合もある。絶対コード化画像がデコー1くされて表示されると、再構 成されたセグメントからなるモザイクが生じる。
絶対コード化法は、各々が元の画像の異なるセグメントを記述する複数のデータ 記録を作り出す。これらの記録の各々には、いくつかのフィールドが含まれてお り、各フィールドには1個以上の2進語が含まれている。絶いる、この記録は、 セグメントの左上隅のピクセルの水平及び垂直方向の位置を示す2つの1バイト のフィールドx posとy posを含んでいる。この記録はさらに、そのセ グメントを規定する水平及び垂直方向における。それぞれのピクセル数を示す1 バイトのフィールドWと1バイトのフィールドHとを含んている。絶対コード記 録中の最後の3つのフィールドA、B及びCはセグメントがどのようにフィルさ れるかを決定する。これらの値は、ある特定のピクセルの値Pwがどのように決 めるかを記述する双線形(bilinear)式(1)の係数である。
P V −A X + B Y + C(1)この式(1)において、Cはセグ メントの左上隅における、例えば、ルミナンスレベルを表わすlバイト値である 。AとBは、各々、水平及び垂直方向に連続するピクセル間てルミナンス値が変 化する量を表わす2バイトの値である。XとYは、セグメントの左上隅に対する ピクセルのそのセグメント内の位置を示す値である。絶対コードの記録のこの例 では、ビデオ信号のルミナンス及び/またはカラー情報信号成分の各々について 別々の記録群があり、また、セグメントの全てが方形であるとしてる。絶対コー ド化システムのより一般的な例は、ここに参考として挙げる“Signal P rocessing” (オランダ)Vol、 1!、 No、 1.1986 年7月、47−60頁のコーチャCM。
Kocher)氏及びレオナルデ((R,Leonardi)氏による論文 r  Adaptive Region Growing Technique U sing Poly−nominal Functions For Imag e Approximation (画像近似用の多項関数を用いた適応型領域 成長技法)」に見出される。
前述した第2のコード化法、DPCMは、一般的には、画像中の各ピクセルを、 予測ピクセル値と差分ピクセル値との和として記述する。この方法は、絶対コー ド記録あるいは相対的コード記録によっては簡単に記述できない画像中のセグメ ントに適用される。DPCM記録の一例が第1C図に示されている。この記録に おけるフィールドX POS、Y POS、W及びHは、前述した絶対コード記 録及び相対的コード記録の場合と同しである。DPCMコード記録の残余の部分 はNバイトからなるシリーズである。ここでNはW及びHフィールドに保持され ている値の積である。これらNバイトの中の第1のものDP、は、一定の予測値 、例えば、128に加算されると、セグメントの左上隅のピクセルを生成するよ うな差の値である0次のバイトDP、は、和128+DP0に加算されてセグメ ントの最上部の線上の次に続くピクセル値を生成する差の値である。同様に、値 DP2は、128とDP、とDP、の累算和に加算されて、セグメントの最上部 の線上の第3番目のピクセル値を生成する差の値である。DPCMコート記録中 のこれらの連続する値は、各々、記録中の先行する値の累算値としてビクセル値 を記述する。DPCMコード化技術を用いたビデオ信号圧縮システムの一例は、 ここに参考として挙げる米国特許第4,125,861号r Video Si gnal Encoding(ビデオ信号のコード化)」に見出すことができる 。
DPCMデータが第1C図に示すように記憶または伝送される場合、ピクセルを 記述する値の各々が、コード化されていないピクセル値を同じように1データバ イトを占有するので、DPCMコート化技法全技法る利点が殆どあるいは全くな い、しかし、参考として挙げた特許第4,125,861号に記載されているよ うに、比較的に小さな値を有するコード化されたバイトの発生する頻度は、比較 的大きな値を持つコード化されたバイトの発生頻度よりはるかに大きい、このコ ード化されたバイトの不均一な分布が、上記の参考として挙げた特許においては 、より大きな値のサンプルに対して用いられるビット数よりも少ないビット数で より小さな値のサンプルをコード化することによりビデオデータストリームを更 に圧縮するために利用されている。この形式の圧縮を行なう可変長統計的エンコ ーダはこの技術分野では公知である。この形式のコード、八ツマン(Huffs an)コード、を生成するためのアルゴリズムは、ここに参考として挙げるアブ ラムソン(N、Abramson)著、r Information Theo ry andCoding (情報論理及びコード化) J 、Mcilira w−Hil1社刊、1963年、77−85頁に記載されている。
前述した3番目のビデオ信号圧縮法に相対的コード化法で、この出願が最も関係 するものである。この相対的コード化では1画像を、複数画像(multi−i ■age)シーケンス中の前の画像から対応セグメントを用いて規定される互い に隣接したセグメントに分割される。このコード化法はフルモーション(全運動 )ビデオを表わす一組のビデオフィールド用に適している。この方法を用いてコ ード化した画像は複数のデータ記録により表わされる。
記録の一例が第1B図に示されている。フィールドXpos、y pos、w及 びHは絶対記録の場合と同じである。2つの1バイトのフィールドΔXとAYは 、その前のビデオフィールドにおける対応したセグメントに対するその時のビデ オ信号フィールド中のセグメントの水平及び垂直方向のピクセル偏位を示す、こ れらの偏位を表わす値は、表示画像中の互いに隣接するピクセル間の距離の分数 を単位としたものとすることがてきる。
相対的コード記録におけるフィールドA、B及びCは絶対コード記録における対 応するフィールドと同じである。これらの値は、セグメント中のビクセル値に加 えられる値を作るために、双線形の式(1)の係数として用いられる。
相対的コート化記録は、その前の画像から対応するピクセル値を得、そのピクセ ル値をパラメータA%B及びCを用いて双線形式(1)に従って改変することに よってデコードされる。前の画像からの対応するビクセル値は、x posから AXを減算し、Y POSからAYを減算することによって得られる。これらの 演算の結果は、前の画像におけるビクセル値のブロック左上隅を規定する一対の 座標である。
この演算は、値ΔXとΔYが整数の場合はうまくいくが、この例におけるように 、ΔXとΔYが非整数価を持つ可能性がある場合には、前のフィールドからのビ クセル値を補間して、非整数オフセット(偏位)に近似する値を有する疑似ビク セルを得るのが望ましい。
相対的記録をデコートする動作の典型的なシーケンスには、前の画像のビット・ マツプから4つのビクセル値を読出し、これらの4つのビクセル値を水平及び垂 直方向に補間して1つの疑似ビクセル値を得、この疑似ビクセル値を式(1)に 従って修正して1つのデコードされたピクセル値を得ることが含まれている。
この動作シーケンスを実行するために従来の直列処理技法を用いると、現在利用 可能な最高速度のビデオ信号処理装置を除いては、相対的コード化画像のリアル タイム・デコーディングが出来ない。従って、相対的コード化された画像のリア ルタイム・デコーディングを可能とするに充分な速度で動作できる安価な2次元 ビクセル値補間器を得ることが望ましい。
この発明の原理によれば、システムは2次元ビクセル値補間を行う。この回路は 、ピクセル値を供給するための入力ボートと、第1と第2の補間縮小率(sca le fac−tOr )の源とを含んでいる。システムは、第1の値を有する 制御信号に応答1ノて、入力ボートを介して供給される2つのピクセル値を、第 1の補間縮小率を用いて組合わせるビクセル補間器を含んでいる。これらの演算 の連続するものの結果が第1と第2のデータ記憶手段に交互に供給される。この ビクセル補間は、第2の値を有する制御信号にも応答して、第1と第2のデータ 記憶手段からの値を、第2の補間縮小率を用いて組合わせて、補間器の出力ビク セル値を生成する。
この発明の推奨実施例においては5制御回路が第1と第2の値を交互にとる制御 信号を発生して、ビクセル補間器が、入力ボートから供給されるビクセル値の組 合わせと!slと第2のデータ記憶手段からのビクセル値の組合わせとを交互に 行つて、2次元的に補間された出力ビクセル値のシーケンスを作るようにする。
前述した第1A図、第1B図及び第tC図は、3つのデータ圧縮法により作られ る記録のデータフォーマットを示す図である。
第2図は、この発明の実施例を含むビデオ信号処理回路のブロック図である。
第3A図は、第2図に示すビデオ信号処理回路のマイクロコードRAM・シーケ ンシング回路として用いるに適した回路を示すブロック図である。
第3B図は、第3A図に示す回路の動作を説明する際に有用ないくつかの信号に ついての、時間の関数としての信号振幅を示すタイミング図である。
第3C図は、第2図に示す回路で使用されるマイクロコー1< RA M・シー ケンサのためのマイクロコード制御語のデータフォーマットを示す図である。
第4A図は、第2図に示す発明の実施例で使用される算術論理演算ユニッ1−の ブロック図である。
第4B図は、第4A図に示す算術論理演算回路の一部ブロック図である。
第5図は、第2図に示す発明の実施例と共に使用されるデータバス回路のブロッ ク図である。
第6図は、第2図に示す発明の実施例と共に使用されるデータRAM回路のブロ ック図である。
第7A図、第7B図、第7C図、第7D図及び第7E図は、第6図に示すデータ RAM回路の動作を説明するために有用なタイミング図である。
第8A図は、この発明を実施したビクセル補間器のブロック図である。
第8B図は、第8A図に示すピクセル補間器で使用される乗算器のブロック図で ある。
@9A9A第9B図、第9C図、第9p図、第9E図及び第9F図は、第8図に 示すピクセル補間器の動作の説明に用いる図である。
第10A図は、第2図に示すビデオ信号処理回路で使用するに適した統計的デコ ーダのブロック図である。
第10B図は、第10A図に示す回路の動作を理解する際に有用なタイミング図 である。
第11A図は、第2図に示すビデオ信号処理回路で用いるに適した入力FIFO 回路のブロック図である。
第11B図は、第11A図に示した回路の動作を理解する際に有用なタイミング 図である。
第12A図は、第2図に示すビデオ信号処理回路で用いるに適した出力FIFO 回路のブロック図である。
第12B図は、第12A図に示す回路の動作を理解する際に有用なタイミング図 である。
第13A図と第13B図は、第2図に示す発明の実施例と共に使用されるVRA M制御ユニットのブロック図である。
第13c図は、第13A図に示す回路の動作を理解する際に有用なタイミング図 である。
第14図は、第2図のビデオランダムアクセスメモリに、圧縮されたデータがど のように記憶されるかを示すメモリマツプ図である。
第15図乃至第23図は、第2図乃至第13図に示す回路の動作を説明する際に 有用な制御フロー図及び他の図である。
図面において、輻の広い矢印は、複数ビットの並列デジタル信号を伝送するため のバスを表わし、線の矢印は、ナナログ信号または1ビツトのデジタル信号を伝 送する接続を示す、装置の処理速度に応じて、信号バスのあるものにおいては補 償用遅延が必要となることがある。デジタル信号処理回路の設計の分野での当業 者には、ある特定のシステムのどの部分にそのような遅延が必要とされるかは分 かる筈である。
第2図は、ビデオ信号処理回路210とそれに付随する周辺回路を示すブロック 図である。この発明のこの実施例においては、回路210は1つの集積回路とし て具体化されている。このビデオ信号処理システムを第2図のみを参照して簡単 に説明し、その後で、第2図〜第13図を参照して詳細に説明する。この出願の 第3の部分は第14図〜第23図を参照し、システムの各構成要素がどのように 平行して動作して、第1A図、第1B図及び第1c図に示すようなフォーマット の圧縮ビデオデータなピクセル偏に変換するかを説明する。
第2図において、圧縮されたビデオ信号の信号11212は、前述したビデオ信 号圧縮技術の1またはそれ以上を用いて圧縮され、また、統計的にコード化され たデータを含んでいるビデオ信号データを供給する0発明のこの実施例において は、信号源212により供給されるデータは、ビデオ信号プロセッサ210の内 部にあるVRAM制御ユニット238の制御の下にビデオランダムアクセスメモ リ(VRAM)216に供給される0発明のこの実施例で用いられる信号源z1 2はコンパクトディスク読出し専用メモリ(CD ROM)である、この信号源 は、圧縮されたデータ(圧縮データ)を1例えば、各々が32ビツトで構成され たブロックとしてV RA M 216に連続的に供給する。VRAM制御ユニ ット238は、信号源212と回路210からのVRAM216へのデータアク セス要求を調整して、信号源212により供給されるデータの全てが確実にVR AM216に書込まれるようにする。
発明のこの実施例で用いられるVRAM216はNECエレクトロニクス社によ り製造されているJA P D 4126464K x 4ビツトデユアルポー ト・ランダムアクセスメモリ集積回路128個で構成されている。このメモリ集 積回路は、16行8列のマトリクスに配列されている。このような構成では、V RAM216は、各々32ピツ)(7)1,048゜576語として配列された 、4メガバイト(4MB)の記憶を提供する。
表示器用プロセッサ218は、直列出力ボートを介してVRAM216にアクセ スして、表示されたビ苧オ信号の右動ビデオ部分を生成する。ビデオ信号処理回 路210と圧縮ビデオ信号源212は標準的な入力−出力バスを介してV RA  M 216のデータセルにアクセスする。ビデオ信号プロセッサ210と表示 器用プロセッサ218とによるVRAM216へのアクセスは全テ1回路210 のVRAM制御ユニット238により制御される。
V RA M 216に保持されたデータは、統計的デコーダ2コ0と、大刃先 入れ先出し回路(以下、FIFOと称する)232と234とによりて処理回路 210に供給される。
また、データは回路210によって、出力FIFO回路236を介してV RA  M 216に供給される。統計的デコーダ230と入力FIFO232と23 4により供給されるデータ値は、データバス回路242.算術論理演算ユニット (ALU)244及びデータRA M 228に対し、双方向データバスB B usを介して供給される。バスB BUSはVRAM制御ユニット2コ8に対し てアドレス値を供給するためにも用いられる。第2の双方向バスA BUSが回 路210に設けられていて、データ値をデータバス回路242 、 ALU24 4及びデータRA M 22Bの間でバスさせ、また、ピクセル補間器246と の間でデータの授受を行うための代替手段を形成する。上述した接続に加えて、 データバスA BusはマイクロコードRAM・シーケンサ226に接続されて おり、場合によってはマイクロプロセッサ224にも結合される。
概括的に説明すると、第2図に示す回路は次のように動作する。信号源212に より供給される圧縮ビデオ信号はV RA M 216に書込まれる。これらの 圧縮ビデオ信号はシーケンシング回路226の制御の下に、統計的デコーダ23 0と入力FIFO232と234とを介してアクセスされる。デコーダ2コ0と F I FO232、234ニより供給される値は、同じくシーケンシング回路 226の制御の下に、データバス242 、 ALU244及びビクセル補間器 246に供給されて、圧縮されたビデオ信号を伸張し、また、コート化された画 像を記述するビクセル値を生成する。このようにして生成されたビクセル値は1 例えば240行256列のマトリクスとして、出力PIFO236を介してV  RA M 216に書込まれる。これらの行と列は、各線が256のビクセル値 を持つビデオ信号の240本の線に相当する。以下、このマトリクスをビットマ ツプと称する。このビットマツプは、表示用プロセッサ218によってV RA  M 216から読出され1画像が再生される0発明のこの実施例と共に使用さ れる表示器用プロセッサは、ビットマツプ中のピクセル値をビデオ信号に変換し 、また、画像をラスク走査表示装置上に再生できるようにするために必要な水平 及び垂直同期信号を加える。
VRAM21&から表示器用プロセッサ218へのデータの転送を調整するため に、水平線同期信号HSと垂直フィールド同期信号vSかそれぞれの信号@ 2 20と222からプロセッサ210と218へ供給される。この発明の推奨実施 例では、これらの信号は表示器用プロセッサ218で生成するようにしてもよい 。
発明のこの実施例では、クロック信号の信号源225がマイクロコー)CRAM 轡シーケンサ回路226に、 25 Mllzのクロック信号CLKを供給する 0回路226は、各々12.5 Mllzの周波数を有する信号CKとCK’、 信号CKと実質的に同じ周波数と位相を持つ信号CKA及び、信号CKと実質的 に逆位相の信号CK11とを発生する。信号CKAとCK+aはデータバス24 2 、 ALU244及びビクセル補間器245に供給される。信号CKは統計 的デコーダ230、入力F I F 0232 、234及び出力FIFO23 6ニ供給すtl、ル。信号CK ’ !;L V RA M 1tdl ’IN  ユ= ’/ト2コ8に供給される。
第2図に示す回路の説明を簡単にするために、圧縮ビデオ信号源はコード化され たルミナンス信号のみを供給し、回路210はビットマツプを1つだけ、即ち、 ルミナンスビットマツプのみを形成するものとする。現実のシステムでは、カラ ー情報信号、例えば、l及びQ色羨信号用の別のビットマツプも作られる。
前述したように、ビデオ信号処理回路210における中心の制御素子はマイクロ コー1(RA M・シーケンサ回路225である。第3A図は、マイクロコート RAM・シーケンサ225として用いるに適した回路を示すブロック図である。
マイクロコードRAM310は、各々が96ビツ1−を有するiza語として構 成されている通常のランダムアクセスメモリである0通常動作時は、マイクロコ ー1< RA M 310は5アドレスレジスタ322に保持されているアドレ ス値の7個のMSHによりアドレスされて、96ビツトからなる語(96ビツト 語)をレジスタ312の入力ボートに供給する。レジスタ312は、制御回路3 08により供給される信号LDによって、その入力ボートに供給される値をロー ドするようにされる。マイクロコード制御語コlOにより供給される96ビツト 値の各々は、2つの48ビツトマイクロコ一ド制御語、即ち、命令を含んでいる 。
レジスタ312の48個のMSB位置にあるこれらの命令の一方は、マルチプレ クサ(MUX)314の一方の入力ボートに供給され、レジスタ312の48個 のLSB位置にある他方の命令がマルチプレクサ314の第2の入力ボートに供 給される。マルチプレクサ314はフリップ・フロップ31Bにより供給される 1ビツトの信号により、48ビツト命令の一方を命令レジスタ316の入力ボー トに通過させるようにされる。命令レジスタ316は、制御回路308により供 給される信号LXに応答して、その入力ボートに供給されたマイクロコート制御 語をロードする。
命令レジスタ316の個々のビットはバスMCWを介して、ビデオ信号処理回路 210の構成素子の各々の制御入力端子に接続されている。マイクロコートRA  M :llOにより供給されるマイクロコート制御語が命令レジスタ316を 通ってシーケンスすると、回路210の個々の構成素子は、協同して、圧縮ビデ オデータなビットマツプビクセルデータに変換する動作を行うようにされる。マ イクロコード制御:bの各ビットの機部は第3C図を参照して後述する。
ビデオ信号プロセッサ210によって用いられるクロック信号CKとCに′はマ イクロコートRA M・シーケンサ226に含まれている回路によつ′C発生さ れる。信号源225により供給される25 Mtlzのクロック信号CL Kは 。
この信号CLKの周波数を2分の1に分周して、12.5MHzのクロック信号 CK’を作る分周回路304に供給される。信号CLKはさらにANDゲート3 06の一方の入力端子にも供給されている。ANDゲート306の他方の入力端 子はインバータ302に結合されており、マイクロプロセッサ224により供給 される信号HALTを反転して得られ信号を受取る。ANDゲート306の出力 信号は、その周波数を2分の1に分周して12゜5 MHzのクロック信号CK を作る分周回路307に供給される。信号HALTが論理θ値を持つ時は、信号 Cには12.51Ezの方形発振信号となる。1ノかし、信号HALTが論理l に変化すると、クロック信号CKの状態は、信号HALTの変化が生じた時の状 態、論理lまたは論理0に凍結される。
以下に述べるように、マイクロコート制御語の8個のLSBはNEXT ADD RESSフィールドを規定する。どのマイクロコード制御語でも、このフィール ドは、マイクロコードRA M 310中の、命令レジスタにロートされるべき 次のマイクロコート制御語のアドレスを含んでい!、NEXT ADDRESS フィーJL4に保持されている値はマルチプレクサ(MUX)320を介1ノて アドレスレジスタ322に供給される。NEXT ADDRESS値のLSBは フリップ・フロップ31Bの入力端子りに供給される。アドレスレジスタ322 とフリップ・フロップ318は信号CKによって、それデれの入力ボートに供給 された値をロードするようにされる。
後述するようにデータバス回路242により供給される信号CDがフリップ・フ ロップ318のリセット入力端子Rに結合されている。信号CDの値は、マイク ロコード制御語の条件コード選択(COND C0DE S EL)フィールド (後述)によって制御される。この信号は2命令レジスタ316に供給されるマ イクロコード制御語のシーケンスを条件(状態)に応じて変化させるために、マ イクロコードRAM・シーケンシング回路226で用いられる。@号CDは、信 号処理中で前に生起した状態、例えば、ALU244の出力値が0であるという ような状態を表わす0選択された条件が真の時は、フリップ・フロップ318に より供給される出力信号Qは論理0になる。この値はマルチプレクサ314がレ ジスタ312の48個のLSB位置に保持されている値を命令レジスタ316に 送るようにする。
この回路が、マイクロコードRAM・シーケンサ回路226の制御の流れ(フロ ー)を条件に応じて変える、すなわち1条件付き分岐(ブランチ)を行うために どのように用いられるかを理解するために、マイクロコード制御語AがそのC0 ND C0DE SELフィールドに非0値(0でない値)を有し、かつ、NE XT ADDRESSフィールドに値81を持つものと仮定する。このマイクロ コード制御語が命令レジスタ316にロードされると、NEXT ADDRES Sフィー71/ト中の8ビツト値はアドレスレジスタ322に供給され、マイク ロコードRA M 310のアドレス80と81にあるマイクロコード制御語が レジスタ312にロードされる0条件信号CDの値が論理0なら、レジスタ31 2の48個のMSB位置(アドレス81)を占めているマイクロコード制御語が 次に用いられることになる。信号CDの値が論理0てない場合は、レジスタ31 2の48個のLSB位置(アドレス80)を占めているマイクロコード制御語が 次に用いられる。これらの命令の各々はそれぞれ異るNEXT ADDRESS フィールドであり、従9て、各々がマイクロコート制御語の異るシーケンス、即 ち、ビデオ信号プロセッサ210の異る作用を規定する。マイクロコードRA  M 310が条件コードの可能な値の両方についての次の命令を供給するので、 条件コードの値がめられると、次のマイクロコート制御語を取出すために時間を ロスすることがない。
マイクロコードRAM・シーケンサ回路226は、バスA Busを介して供給 されるマイクロコート制御語をマイクロコードRA M 310にロードするこ とができる。
各々がマイクロコート制御語の3分の1を表わす3個の16ビツト値が3個のレ ジスタ324に次々に供給される。
最初の16ビツト値がレジスタMROに、第2の16ビツト値がレジスタMRI に、そして、第3の16ビツト値がレジスタMR2にそれぞれ記憶される0次に 、同じく入力FIFO232とデータRAM228を介してVRAM216によ り供給されるようなアドレス値がアドレスレジスタ322に供給される。このア ドレス値のLSB、即ち、信号DXCは、デマルチプレクサ(DEMUX) 3 26 ニlaいて、3つのレジスタMRO,MRI、MR2により供給される4 8ビツト値が、マイクロコードRA M 310に対するI10バスの48個の MSB位置と48個のLSB位置のいずれか一方に供給されるようにする。同時 に、書込み可動化(イネーブル)信号WEが生成され、REM310が48ビツ ト値をアドレスされたメモリセルに記憶するようにする。
これらの動作によつてマイクロコー)CRAMIIOに書込まれたマイクロコー ド制御語は、VRAM216から。
例えば、入力FIFO232とデータRAM回路228とを介して供給される。
VRAM216からのマイクロコート命令をロードすることができることにより 、圧縮ビデオ信号源212は、圧縮されたデータとそれを伸張するために必要な 命令の双方をビデオ信号プロセッサ210に供給することが可能となる0例えば 、最初、後述するようにプロセッサ210を制御するマイクロプロセッサ224 によって、ブートストラッププログラムがマイクロコードRA M 310にロ ートされる。このブートストラッププログラム中の命令に応答して、マイクロコ ードRAM・シーケンサ回路226は、圧縮ビデオデータなデコードするように プロセッサ210を可動化する。VRAM216からの命令をロードする。
第3B図は、マイクロコード制御語MCがマイクロコートRA M 310に記 憶される時のマイクロコートRAM・シーケンシング回路226の動作を説明す るタイミング図である。このタイミング図において、記号T0〜Tsは6つのマ イクロコート命令を表わしている。各命令サイクルは信号CKAの正方向への遷 移て始まり、終る。
命令サイクルT0においては、命令レジスタ316に保持されているマイクロコ ード制御命令はそのA DSTフィールドにある値(例えば8)を有し、この値 は、バスA Busにより伝送される16ビツト値がレジスタMROに記憶され ることを示す、この命令サイクルでは。
値MC01即ち、マイクロコード制御語MCの16個のしSBが、例えばデータ RAM回路228によつてバスABUSにゲートされる。命令サイクルT0にお いては。
レジスタMROは信号A DSTによって、バスABUSにより供給される16 ビツト値MCOを記憶するようにされる。この記憶動作は、命令サイクルT0の 中間点における信号CKAの負方向への遷移に一致して生じる。値MCOがレジ スタMROに記憶されるのと実質的に同時に、命令レジスタ316中のマイクロ コート制御語のNEXT ADDRESSフィールド中の値がアドレスレジスタ 322に記憶され、かつ、このアドレス値のLSBがフリップ・70ツブ318 に記憶される。アドレスレジスタ322に記憶された値は、マイクロコートRA M310が1次の命令を含んでいる96ビツト値をレジスタ312に供給するよ うにする。この96ビツト値は、命令サイクルT0の中間点よりもいくらか後で 生じる信号LDの負方向への遷移と一致して、レジスタ312にロードされる。
フリップ・フロップ318に保持されている1ビツト値に応答して、アドレスさ れた48ビツトのマイクロコート制御語が命令レジスタ316の入力ボートに供 給される。このマイクロコード制御語は、命令サイクルT0の終了時に生じる信 号LXの負方向のエツジと一致して。
命令レジスタ316にロードされる。命令サイクルT、においては、新しくロー ドされたマイクロコード制御語が2マイクロコ一ド制御語MCの中間の16ビツ トを表わす値MCIを、MRlがロードするようにする。同じようにして、命令 サイクルT、の終了時に命令レジスタ316にロードされたマイクロコード制御 語がレジスタMR2に働いて、命令サイクルT2においてマイクロコー1く制御 語MCの16個のMSBをロードするようにする。
命令サイクルT2の終りに命令レジスタコ16にロートされたマイクロコート制 御=5は、レジスタ324からマイクロコードRA M 310へのマイクロコ ード制御語MCの転送を制御する。マイクロコード制御語MCを記憶するために 用いられるアドレスは、バスA Busを介して供給される。命令サイクルT、 の開始時において、命令レジスタ316中のマイクロコード制5aHrJのA、 DSTフィールドは値11を持ち、これは、ハスA BtJSにより供給される 16ビツト値がアドレスレジスタ322にロートされることを示す、A DST フィールド中のこの値に応答して、制御回路308が、信号MXCとして論理1 値を信号CKのほぼ1サイクルの間、マルチプレクサ320に供給する。この信 号はマルチプレクサ320をして、ハスA Busによフて供給される値の8個 のLSBをアドレスレジスタ322の入力ボートに供給せしめる。このアドレス 値は、命令サイクルT、における信号CKの最初の負方向遷移に一致してレジス タ322にロードされる。アドレスl/ラスタ322に保持されている値のLS B、即ち、信号DXCはデマルチプレクサ326の制御入力端子に供給される。
デマルチプレクサ326は、論理1または論理Oの値を持った信号DXCによっ て、レジスタ324により供給される48ビツト値をゲートして、110バスの 各48個のMSB位置または48のLSB位置に供給するようにされる。
信号DXCは、ANDゲート311と313を介しテ、マイクロコートRA M  310の各半部に対する別々の書込み可動化信号を生成する。前述したように 、マイクロコー1< RA M 310は、各々が96ビツトを有する125語 として構成されている。このメモリは2つの部分に分割されている。左側の半部 は128語の48個のMSBを含んでおり、右側の半部はのLSBを含んでいる 。信号DXCは、ANDゲート313において、制御回路308により供給され る書込み可動化信号WEと組合わされて、マイクロコー1<RAM310の左半 部のための書込み可動化信号を生成する。信号DXCは反転され、ゲート311 によって信号WEと論理的にAND処理されて、マイクロコードRA M 31 0の右半部のための書込み可動化信号を生成する。
この例においては、信号DXCは、命令サイクルT3の開始時の信号CKのほぼ 1周期の間、論理lの値を持つ、従ワて、マイクロコート制御語MCは、アドレ スレジスタ322に保持された7個のMSBの値によって表わされるアドレス値 を持った。マイクロコードRA M 310中のセルの48個のMSB位置に書 込まれる。マイクロコート制御語は、第3B図に示1ノ信号WEと一致してマイ クロコートRA M 310に書込まれる。
命令サイクルT3はメモリ書込み動作を行うので、次のマイクロコート制御語は 、信号CKの最初の周期では、命令レジスタ316にロードされない、この動作 は命令サイクルT、中の信号CKの2番目の周期で生じる。
命令サイクルT、中の信号CKの2番目の正方向への遷移と一致して、信号MX Cの債は論理0に変り、命令サイクルT0について前述したように、命令取出し 動作が行われる。マイクロコー1< RA M・シーケンシング回路226は、 命令サイクルT4及びT、の間、命令期T0について述べたような態様で動作す る。
第3B図に示した例では、誤ったマイクロコート制御語がレジスタ312と31 6にロードされないようにするために、命令1/ジスタT3の前半部では、信号 LDとLXは禁止されている。またビデオ信号処理回路を休止状態に置くために 、命令サイクルT3の後半部では、制御回路コ08によって信号CKAとCK  nは凍結されている。
これはALU244.データRA M 228及びビクセル補間器246の間の 同期動作を維持するために行われる。命令サイクルTyの後半部ではクロック信 号CKAとCK。
は非可動化(ディスエーブル)されるので、ALU244、データRA M 2 28及びビクセル補間器246の内部状態はこの期間中は変化しない。
この発明のこの実施例においては、マイクロコードRA M 310に対するデ ータ読出し動作とデータ書込み動作は信号CKの別々の周期に行われるつしかし 、そうする代りに、マイクロコートRAM・シーケンシング回路226を、信号 CKの1つの周期中で2つの動作を行うように構成してもよい。
制御回路30Bは、休止論理240により供給される信号PAUSEにも応答し 、クロック信号CKAとCK aを凍結させる。さらに、制御回路308はマイ クプロセッサ224により供給される信号HALTに応答し、信号CKを禁止し て、実効的に、VRAM制御ユニッh238を除くビデオ信号プロセッサ210 全体の内部状態を凍結させる。
信号HALTを用いてマイクロプロセッサ224はビデオ信号プロセッサ210 の制御機能を実効的に引受ける。
信号HALTは命令レジスタ316に供給されて、このレジスタをして、ゲート 回路223を介してマイクロプロセッサ224により供給されるバスMCWから データを受入れしめる。マイクロプロセッサ224はレジスタ316をして、信 号HALTを論理lから論理0に変化させることにより、供給されたマイクロコ ード制御語をロードさせしめる。上記変化後のクロック信号CKの次の周期にお いて、マイクロコートRAMφシーケンサ回路226はこのマイクロコード命令 が実行されるようにする。このクロック周期が完了すると、マイクロプロセッサ 224は再び信号HALTを論理1偏に変化させ、別のマイクロコード命令をレ ジスタ316に供給する。このような動作により、マイクロプロセッサ224は 、マイクロコーPRAM・シーケンサ回路226をしてバスA BusまたはB BUSに接続されたレジスタにデータを書込ませ、あるいは、前に述べたように 、ブートストラッププログラムをロードするようにする。さらに、マイクロプロ セッサ224がバスA Busに接続されていることと、第5図を参照して後述 するバスゲート520とにより、マイクロプロセッサ224はどのレジスタの内 容でも、また、バスA BusあるいはB Busの内容でも読出せる。
fflsc図はマイクロコードRAM・シーケンシング回路226によって用い られるマイクロコート制御=6、即ち、命令のフォーマットを示す、制御語は1 3のフィールドを含んでいる。各フィールドを、以下、そのフィールドが持ち得 る値と、その値がビデオ信号プロセッサ210の各構成素子に対して持つ作用と によりて説明する。制御される構成素子の構造は第4図乃至第13図を参照して 後述する。
マイクロコート制御語のビット0〜7は、NEXTADDRESSを形成する。
これらのビットにより表わされる値は、マイクロコードRA M 310におけ る。命令レジスタ316にロードされるべき次のマイクロコード制御語のアドレ スである。ある与えられたマイクロコート命令サイクル中、このフィールドによ りて表わされた値はマイクロコードアドレスレジスタ322に記憶される。
条件コート選択フィールドC0ND C0DE SELはマイクロコード制御語 のビット8〜lOを占める。これらの3ビツトは、後述するデータバス回路24 2中の条件レジスタに保持されている条件値の1つを選択する。
選択された条件値が信号CDである。この信号は条件付き分岐動作を行うために 用いられる。前に述べたように1条件付き分岐は命令レジスタ316に供給され るマイクロコート制御語のシーケンスの変更であり、これは選択された条件が満 足される時(即ち、CDが論理lの時)のみに生じる0表1は条件コード選択値 とそれに対応する記述をリストしたものである。
表 1 COND C0DE SEL 選択されたフィールドの値 条件の記述 ONULL条件付き分岐なし l ALUキャリーアウトフラグ 2 ALUオーバフローフラグ 3 ALU出力値は負である 4 ALU出力値は0である 5 データバス242中のループカウンタの値は0である。
6 データバス242中のレジスタROのLB 7 データバス242中のレジスタROのMB マイクロコード制御語のビット11〜29は、バスABUSとB Busを介し て回路210の各構成素子間でデータ値がどのように転送されるかを制御する4 つのフィールドを含んでいる。ビット1l−IsはA SRCフィールドである 。このフィールドは、構成素子のうちのどの構成素子が、あるいは、ある構成素 子中のどのレジスタが出力値をバスA Busに供給することにより信号源とし て働くかを示す、マイクロコート制御語のビット16〜20はA DSTフィー ルドで、このフィールドは、構成素子のうちのどれが1.あるいは、ある構成素 子中のどのレジスタが、バスA BUS上にある値をその入力値として受入れる ことにより宛先として働くかを示す、同様にフィールドB SRC、ビット21 〜24.及びフィールドB DST、ビット25〜29は、それぞれ、回路21 0のどの構成素子がバスB BUSに値を供給し、どの素子がバスB Busか ら値を受取るかを決める。バスA BusとB BUSは、ビデオ信号プロセッ サ210の種々の構成素子にデータと制御情報の両方を伝送することができる。
バスA BusとB Busに結合されるレジスタとこれらのバスによつて伝送 される制御情報については1回路210の適当する構成素子を参照して以下に述 べる。
一般的に、バスA BusとB Busに結合されたレジスタは、マイクロコー ド制御語のフィールドASRC,A DST、B SRCまたはB DSTの1 つに結合される通常のデコーディング回路(図示せず)を含んでいる。このデコ ーディング回路は、レジスタへのアクセスを許容する制御値が検出されると、論 理l値を生じさせる。ASRCフィールドに応答するデコーディング回路は、マ イクロコート制御語のLIT SELフィールド、ビット31、における論理1 の値によって禁止される。このビットが論理1の時は、ASRCフィールド中の 値は有効なA SRC値ではなく、後述する8ビツトのリテラル値の一部である 。フィールドASRCとB SRCとによりて制御されるレジスタに対し、デコ ーディング回路の出力値がレジスタの出力可動化入力端子に結合される。この入 力端子に論理l値が供給されると、レジスタはその記憶されている値を該当する バスに供給するようにされ、論理0値が供給された場合は、そのレジスタはバス に対して高インピーダンスを呈する。フィールドA DST及びB DSTによ り制御されるレジスタに対しては、デコーディング回路の出力値がレジスタのデ ーターロード入力端子に結合される。これらのレジスタは、デコーディング回路 によつて供給される信号が論理l値を持っている間は、該当するバスによって伝 送されてきた値をロートするようにされる。
マイクロコード制御語のビット30はフィールドDECLOOP CTRである 。このフィールドが値1を持っている時は、データバス回路242中のループカ ウンタは、マイクロコード命令サイクル中、その値を減じるようにされる。
マイクロコード制御語のビット31はフィールドLIT SELである。このフ ィールドに1の値があると、マイクロコートRAM・シーケンシング回路226 は、その時のマイクロコード制御語のビット8〜15をリテラル値として扱うよ うにされる。この値の出所(ソース)値として、バスA BUSの8個のLSB 位置に、マイクロコード制御語のビット31により可動化されるゲート回路31 7を介して供給される。デジタル値@315からの0偏が、リテラル値が選択さ れた時に、バスA BLIS上の8個のMSB81黴に供給される。
マイクロコート制御語のとット31は、さらに、前述したようにバスA Bus を出所として用いるレジスタと、後述するようにデータバス回路の条件コード論 理518にも供給される。
マイクロコード制御語のビット32は、INT ppフィールドである。このビ ットが論理1値を持っている時は、マイクロプロセッサ224が中断される。こ の制御機能は、例えば、あるマイクロコード命令シーケンスが完了したことをマ イクロプロセッサ224に知らせるために使用できる。
マイクロコート制御語のビット33は、LATCHC0ND C0DEフイール ドで、このフィールドが1の値を持つ時は、データバス回路242は、ALU2 44により生成された種々の条件の値を条件コートレジスタにラッチする。この 制御機能は、一般には2条件付き分岐動作に対する条件を選択する命令に先行す る命令中に含まれている。
マイクロコード制94語のビット34と35は、5HIFT C0NTフイール ドである。このフィールドは、データバス回路242のレジスタROによって行 われるビットシフト動作を制御する0表2は、5HIFT CO・NTフィール ドの種々の値に応答すてレジスタROによフて達成される機能を示す。
一見一ユー 値 機 能 0 シフトなし l 全てのピッ1−をLSBの方へ1ビツト位置シフトさせる。シフト動作前の 値のMSBはシフト動作で生じた値のMSB位置に複写される。
2 全てのビットをMSBの方へ1ビツト位置シフトさせる。シフトされた値の LSBは0である。
3 その時の命令サイクル中にレジスタROに供給される値の上位と下位のバイ トをいれかえるマイクロコート制御語のビット38〜46は、マイクロコード命 令サイクル中のA L U 244の機能を決定する。ALU244の機能を理 解するために、初めにその構造を説明することが理解を助ける。第4A図に示す A L U 244は5つの部分、即ち、2つのオペランド入力レジスタ410 と412、算術論理演算回路(ALC)414.出力レジスタ416及びデマル チプレクサ(DEMUX)41B 。
からなる、レジスタ412はバスB BUSに接続されており、バスMCWを通 して与えられるマイクロコート制御語のビット36中の値lによって可動化され て、バスB Busからの値をロードする。レジスタ410はバスA Busに 接続されておりマイクロコード制御語のビット37中の1の値によって可動化さ れて、バスA BUSからの値をロートする。ALC414はレジスタ410と 412に保持されている値について種々の算術論理演算を行う、任意の1つの命 令サイクル中に実行されるyi算は、バスMCWを通してALUに供給されるマ イクロコート制御語のビット38〜46のフィールドALU 0PCODHに保 持されている9ビツト値によりて制御される。この9ビツトのフィールドにおい て、ピッ1−38〜44に保持されている値は、表3の通りに、ALUによって 実行される機能を決定する。表3において5A及びBはそれぞれレジスタ410 と412に保持されている値を表わし、CINは、A L C414のキャリー イン入力端子CINに供給される値を表わす。
コI AとBL:y)OR(A ORB)C13NOT A 34y4算なし 36 NOT B 47 AとBのX0R 65NOT A+ClN 67 A+CXN HNOT B+ClN 71 A−B−NOT ClN 76 B+ClN 77 B−A−NOT ClN 79 A+B+ClN 85 AとBのAND (A AND B)この表において、rNOTJはlの 補数演算を表わし。
rXORJは排他的OR@算を表わす。
マイクロコード制御語のビット45と46は、バスMCWを介してマルチプレク サ(MυX ) 420に加えられて、キャリーイン信号CINを変化させ、ま た、ADD動作(OP COD E 79)を飽和を伴う2重A D D (d ual−ADD−with−saturaLe )動作に変える。ビット45と 46が両方共0の時、あるいは、ビット45が0でビット46はlの0の値を信 号CINとして供給する。ビット45が1でビット46が0の時は、マルチプレ クサ420はデジタル値源424からの1の値を信号CINとして供給する。ビ ット45と46の両方が1の値を持つ時は、マルチプレクサ420により供給さ れるCIN入力値は、データバス回路242の条件コードレジスタにより供給さ れるキャリーアウト条件値C0UTである。
A L C414に生成される信号CARRY OUTは、第4B図に示される 16ピツト加算器のMSB段により与えられるキャリーアウト信号である。信号 5IONは。
A L C414により生成される16ビツトの出力MSBである。 信号0V ERFLOWは、A L C414に供給される2個の入力値の符号ビットとA  L C414によって生成される出力値の符号ビットとの論理的組合わせであ る。この信号は、2個の負の入力値によって正の出力値が生成される時或いは2 個の正の入力値によりて負の出力値が生成される時に論理1を持つている。3個 の符号ビットの他の組合わせすべてに対して、信号0VERFLOWは論理0の 値を持つている。
加算動作は、ビット45が0でビット46がlである時に飽和を伴う2重加算動 作になる。この飽和を伴う2重加算動作では、 16ビツトのレジスタ410及 び412の各々は2個の8ビツト値を収容しているものとして処理される。レジ スタ410に保持される値の8個のMSBとレジスタ412に保持される値の8 個のMSBとが加算され、その加算結果が出力レジスタ416の8個のMSBに 記憶される。同様に、レジスタ410及び412に保持される値のそれぞれの8 個のLSBが互いに加算され、その加算結果がレジスタ416の8個のLSBに 記憶される。これらの加算動作の何れによってもオーバフロー状態が生じする。
もし2重加算動作への入力値が8個のLSBの和或いは8個のMSBの和の何れ かによって負のオーバフロー状態或いは正のオーバフロー状態が生じるようなも のであれば、加算用に与えられる値はそれぞれ0或いは255に飽和しており、 これらは8ビツトの符号のない2進値によって表わされ得る最小値及び最大値で ある。
従来型の加算と飽和を伴う2重加算動作との間で切替を行うために、従来型でな い加算器がA L C414に使用される。
第4B図には、A L C414に使用されるのに適した加算器がブロック図で 示されている。従来型の16ビツトの算術論理演算回路であれば、2個の16ビ ツトから成る2の補数とキャリーイン信号とを加算して16ビツトから成る2の 補数の出力値とキャリーアウト信号とを生成できる16ビツト加算器が含まれて いる。第4B図に示される回路は、信号5PLITに応答してこの信号5PLI Tが0の時は従来型の16ビツトの2の補数加算器として動作し、信号5PLI Tが1の時は上述の飽和を伴う2重加算モードで2個の独立した8ビツト加算器 として動作する。
第4B図において入力ボートA及びBに供給される2個の16ビツト入力値は各 々8個のMSBの部分(以下8M5B部分と呼ぶ)と8個のLSHの部分(以下 8LSB部分と呼ぶ)とに分割される。八人力値及びB入力値の8M5B部分は それぞれ加算器450の異なる入力ボートに供給される。A入力値及びB入力値 の8LSB部分はそれぞれ加算器452の異なる入力ボートに供給される。この 実施例に使用される加算器450及び452は従来型の8ビツトの2の補数加算 器である。加算器452へのキャリーイン入力信号はA L C414へ供給さ れる信号CINである。加算器450へのキャリーイン入力信号はANDゲート 454によって与えられる。この信号は、加算器452によって与えられるキャ リーアウト信号COoとインバータ456によって与えられる信号5PLITの 論理反転分である信号5PLITとの論理AND (論理a)である、加算器4 50によって与えられる8ビット出力値号のMSB位置の信号は、A L C4 14によって与えられる値の極性を示す条件信号5IGNである。加算器450 のキャリーアウト信号CO,は、ALC414によって与えられる信号CARR Y OUTである。
加算器450によって与えられる8ビツト値は、ALC414の入力ボートA及 びBに供給された値の8個のMSBの2の補数和である。この出力値のMSBは 排他的ORゲート472の一方の入力端子に供給され、このORゲート472の 他方の入力端子は信号5PLITを受取る。
排他的ORゲート472によって与えられる出力信号は。
加算器450によって与えられる値の7個のLSBと連結され、8ビツトの変形 和が生成される。信号5PLITが0の時、この変形和は、2個の8ビツトの2 の補数値の和を表わす8ビツトの2の補数値である。しかし、信号5PLITが 1である時、この変形和は8ビツトの符号のない2進値と8ビツトのオフセット 128の2進値との和を表わす8ビツトの符号のない2進値である。
ALC加算器に供給される入力値の形の変更は加算器の回路の機能ではなくビデ オ信号プロセッサ210をプログラムするために定められた約束である。この約 束によりて、信号5PLITが0の値を持つ時、ALC加算器に供給される値は 従来をの16ビツトの2の補数値である。しかし信号5PLITが1の値を持つ 時、加算器450及び452の各々に供給される値の一方は8ビツトの符号のな い2進偵であり、他方はオフ上95128表記の8ビツト値である。これらの値 は、バスA Bus或いはB Busに対する出所として動作し得る如何なる装 置の如何なるレジスタによっても与えられる。
信号5PLITが1の時、8ビツトの符号のない2進入力値は0と255の間の 値の範囲を占め、オフセット128はそれぞれに対して−1213と+127の 間の値の範囲を占めることが出来る。従って、変形和は−128と382を含め てその間の値を表わすことが出来る。しかし、このモードでの変形和は8ビツト の符号のない2進数であるため、0と255の間の数だけが有効である0図4B 図に示されるALC加算器には、この有効な範囲外にある値を検知し、変形和の 値をOより小さい値に対してはOに又255より大きい値に対しては255に飽 和させる即ち限定する。
ANDゲート470が、変形和の値が255より大きいことを示す正のオーバフ ロー信号pov、を発生する。ANDゲート470への3つの入力信号は、信号 5PLITと、加算器450からのキャリーアラ1−信号CO0と、加算器45 0によって与えられる8ピツI・値のMSBである。信号pov、にk、信号5 PLIT;6(0(7)時、或イハ信号5PLITが1で変形和の値が256よ り小さい時に0となる。信号pov、は8個のNORゲート474の各々の一方 の入力端子に供給される。NORゲート474の各々の他方の入力端子は、それ ぞれ変形和の8ビツトの異なる1つを受取る。
NORゲート468か信号「ロコ7と、信号Co。
と、加算器450によって与えられる8ビツト値のMSBとに応答して負のオー バフロー信号N0VIを発生する。この信号NOV、は、変形和か0より小さい 値を持つことを示す、信号N0Vlは8憫のN ORグー1−476の各々の一 方の入力端子に供給される。NORゲート476の各々の他方の入力端子は、そ れぞれ8個のNORゲート474によって与えられる信号のうちの異なる1つを 受取る。NORゲート476の8個の出力信号は、ALC加算器の16ビツト出 力信号の8個のMSBである。
加算器452は、上述した値制限回路と同様の回路に結合されている。NORゲ ー1〜476に相当する8個のN。
Rゲート466の8個の出力信号は、ALC加算器の16ビツト出力信号の8個 のLSBである。
マイクロコー1く制御語のピッ1−45及び46がそれぞれO及びlの値を持つ 時、信号5PLITは工でALC加算器は飽和を伴う2重加算モートで動作する ように制御される。マイクロコード制御語のビット45及び46の値の他の組合 わせに対して、信号5PLITは0でALC加算器は従来型の16ビツトの2の 補数加算器として動作するように制御される。
次にALC加算器のその2つのモートの各々における動作について説明する。信 号5PLITがOである時。
ANDゲート454は加算器452の出力端子CO,かうのキャリーアウト信号 を加算器450のキャリーイン入力端子CT、に供給するように制御され、加算 器450及び452は1個の16ビツトの2の補数加算器として構成される。0 の値の信号5PLITが排他的ORゲート462及び472に供給されると、こ れらのゲー1−は加算器452及び450によって与えられる8ピツl〜の出力 値のMSBをそのまま通過させてそれぞれ各NORゲート4s4及び474に供 給する。Oの値の信号5PLITがANDゲート460及び470に供給される と、これらのゲートは0の値の正のオーバフロー信号pov、及びPOvlをそ れぞれ各NORゲート454及び474に供給する。同様に2論理lの値の信号 5PLITがNORゲート458及び468に供給されると、これらのゲートは 0の値のオーバフロー信号N0VO及びNOV!をそれぞれ各NORゲート46 6及び476に供給する。0の値の信号pov、及びN0VOがNORゲート4 64及び466に供給された結果、加算器452によって与えられる出力値は2 回反転され礎って加算器452の出力ボートにおける値はALC加算器によって 与えられる16ビツト値の8個のLSBとして与えられる。加算器450によっ て与えられNORゲート474及び476を介してALC加算器の出力ボートに 供給される8個のMSBの値についても同様である。
信号5PLITが論理1の値を持つ時、インバータ456によって与えられる信 号5PLITは論理0の値を持ち、ANDゲート454による加算器452から のキャリーアウト信号の加算器450のキャリーイン入力端子C1、への供給が 止められる。これによって、加算器450及び452は2個の別個の8ビツト加 算器ととして構成される。論理lの信号5PLITが排他的ORゲート462及 び472に供給されると、これらのゲートは加算器452及び450によって与 えられたそれぞれの8ビツト値のMSBを論理的に反転する。このMSBの反転 は、加算器452及び450の各々によりて与えられる8ビツトの符号のない2 進値が8ビツトの符号のない2進値とオフセット128の2進偵との和を適切に 表わすように行われる。
信号5PLITが論理lの値を持つ時、ANDゲート460及び470はそれぞ れ正のオーバフロー信号pov0及びPOVIを発生し、NORゲート458及 び468(:tソれぞれ負のオーバフロー信号N0VO及びNOV、を発生する 。負のオーバフロー信号NOV、が論理1の時、8個のNORゲート476の出 力信号はすべて論理0となり、ALC加算器によって生成される値の最上位のバ イトの値はOとなる。信号POVIが論理lの時、8個のNORゲート474の 出力値はすべ°C論理0となる。これらの信号はNORゲート476によって反 転される。従りて、ALC加算器の出力値の8個のMSBはすべて論理lの値を 持つ、これは255の符号のない2進値に相当する。NORゲート456及び4 64にそれぞれ供給される信号NOV、及びpov、についても同様である。
表3に示す動作の何れかを行うことによって得られた結果は出力レジスタ416 に記憶される。このレジスタ416は、マイクロコード制御語のフィールドA  SRC及びB SRCの適切な値に応答するデマルチプレクシング回路418に よりてバスA BUS及びBBUSの一方或いは両方に結合できる。
この実施例に使用されるALCは代表的な例である。
デジタル論理設計の当業者てあれば、上述したものと等る。
ALUの入力レジスタ410及び412は、マイクロコート制御語のバスの出所 フィールド及び宛先フィールドASRC,A DST%B SRC及びB DS TにかかわりなくそれぞれバスA Bus及びB Busをアクセスする。従っ て、1つの動作で、マイクロコードRAM・シーケンシング回路226はデータ 値をバスABUS及びB Busの各々の出所から宛先まで転送するように命令 し、同時に、ALUが転送されるデータ値の一方或いは両方について動作するよ うに命令できる。
A L U 244への入力値の1つの出所とA L U 244からの出力値 の宛先とは、データバス回路242中のレジスタファイル510である。第5図 はこの実施例に使用されるデータバス回路242をブロック図で示している0代 表的な例であるこの実施例に使用されるレジスタファイル52Gには、凡0.R 1,R2及びR3の計4個の汎用レジスタが含まれている。これらのレジスタの 各々は、バスA Bus及びB Busの両方に結合されている。
バスMCWを介して与えられるマイクロコード制御語のフィールドA SRC及 びB SR’Cの制御によりてこれらのレジスタの何れも一方或いは両方のバス に値を供給てきる。しかし、レジスタは、フィールドA DST及びB DST に応答してどの1つのマイクロコート命令サイクルにおいてもバスA Bus及 びB Busの一方のみの宛先となることが出来る。上述のようにレジスタRO には、マイクロコード制御語の5HIFT C0NTフイールドに応答してレジ スタの内容をより上位の桁或いはより下位の桁のビット位置にシフトする或いは レジスタに供給される値の8個のMSB及び8個のしSBを交換する回路が含ま れている。
レジスタROのMSB及びLSBは、それでれ条件コードレジスタ512の異な る入力端子に供給される。これらの値に加えて条件コートレジスタ512は、デ ジタル値源513からの0の値と、ALU244によつて与えられる条件値5I GN、ZERO,0VFLOW及びCARRy ou”rと、ループカウンタ5 14によフて保持される値が0であることを示す条件値とを受取る0条件コート レジスタ5!2はマイクロコート制御語のLATCHC0ND C0DEフイー ルドに応答してマイクロコート命令サイクルの終りにA L U 244によっ て得られる条件値を記憶する。他の条件コードは、それらの発生と非同期的に条 件コートレジスタ512中ヘラツチされる。
条件コード論理518が、マイクロコード制御語のC0ND C0DE SEL フィールドに応答して、上述のようにマイクロコートRAM・シーケンシング回 路225において条件分岐動作を行うのに使用される条件信号CDとして条件コ ードレジスタ512に保持される条件値のうちの1つを選択する。また条件コー ド論理518は、マイクロコード制御語のLIT SELフィールドに応答して 、C0ND C0DE SELフィールドがASRCフィールドと共に使用され ている時条件の選択を禁止してリテラル値をバスA Busに供給する。
ループカウンタ514は、マイクロコード制御語のフィールドA SRC及A  DSTの制御によりてバスABUS上でデータ値の出所或いは宛先の何れかとし て動作できる16ビツトのカウンタである。ループカウンタ514はマイクロコ ード制御語のビット30が論理1の値を持つ時にクロック信号CK、に同期して 減少する。このカウンタ514は、反復ループにおける命令がマイクロコードシ ーケンサ22Gによって遂行される回数をカウントするのに使用される。
動作の一般的なモードでは、バスA Bus及びBBUSは完全に独立している 。しかし、ビデオ信号プロセッサ21Gは、これらの2つのバスが単一のバスと して結合される状態中に置かれることがある。このモードはHALTモードであ る。プロセッサ210はマイクロプロセッサ224によりてI(ALTモードに 置かれることがある。マイクロプロセッサ224によって与えられる信号HAL Tによつて、双方向ゲート回路520が両バスを結合する。このモードの時、マ イクロプロセッサ224はどのレジスタをもこの結合されたバス上で出所或いは 宛先としてアクセスすることが出来る。この特徴ある構成によって、ビデオ信号 プロセッサ210のテストは容易になり、マイクロプロセッサ224はプロセッ サ210をこれが多数の所定状態の何れにおいても開始するように接続できる。
εの実施例では示していないが、バスゲート回路520はマイクロコード制御語 の1つにビット例えばビット47によって制御するようにしてもよい、マイクロ コード命令の制御によって、ゲート回路520はバスA BUSとB Busと を結合し、P1バスの一方の上にある出所によりて与えられるデータを他方のバ スに結合された宛先へ転送することも可能である。
4個の汎用レジスタRO1R1,R2及びR3に加えてビデオ信号プロセッサ2 10は、データ値の一時記憶のためデータRAM回路228を使用する。第6図 はこの実施例と共に使用されるデータRAM回路228の細部をブロック図で示 している。データRAM回路228には。
2Slx16ビツトのRAM610.4個のアドレスレジスタDRO,DRI% DR2及びDR3を持つレジスタファイル612.増加/減少回路(I NC/ DEC)622及び制御回路614が含まれている。制御回路614はマイクロ コード制御語のフィールドA SRC%A DST。
B SRC及びB DSTに応答して、RAM610への及びRA M 610 からデータを転送し、またレジスタファイル612の種々のレジスタ中のアドレ ス値をロートし、またこれらのアドレス値を増加或いは減少させることも可能で ある。
正規動作モードにおいて、マイクロコード制御語の関連フィールドがバスMCW を介して制御回路614に供給される。RAM610をアクセスするためのアド レスを表わす値は、例えばALυ回路244によりて、マルチプレクサ<MUX )616の1つの入力ポートにバスA BUSの8債のLSB位置として供給さ れる。マルチプレクサ616のもう1つの入力ポートには、以下に述べるように 増加/減少回路622によりて発生される8ビツトアドレス値が供給される。マ ルチプレクサ616は4制御回路$14によフて与えられる信号MCIによりて 制御されて入力ポートに供給される2個のアドレス値のうちの一方をレジスタD RO乃至DR3に供給する。レジスタDRO乃至DR3は、8ビット並列入力並 列出力レジスタであり、それでれ信号LO,L、、L、及びL3に応答して各入 力ポートに供給される値をロードする。レジスタDRO乃至DR,3によって与 えられる出力値は、それぞれマルチプレクサ(MUX)618の異なる入力ポー トに供給される。マルチプレクサ618は、制御回路614によりて与えられる 制御信号MC2によって制御されてレジスタDRO乃至DR3によって保持され るアドレス値のうちの1つを8ビツトアドレスレジスタ(ADDRREG)li 20の入力ポートに供給する。このアト1ノス値は、制御回路614によって与 えられる制御信号L^に応答するアドレスレジスタ6z口中ヘロートされる。ア ドレス1/ジスタロ20に保持されるアト1ノス値はRA M 610のアドレ ス入力ボートと増加/減少回路622の入カポ−1〜とに供給される。この増加 /減少回路622は5制御回路614によって与えられる信号1/Dによつて制 御されて入力ポートに供給されたアドレス値を増加或いは減少させてこの変形ア ドレス値を上述のようにマルチプレクサ616の第2の入力ポートに供給する。
マルチプレクサ618によって与えられるアドレス値は、3状悪のゲート519 を介してバスA Busに供給されることがある。このゲート619は、制御回 路614によりて与えられる信号ROに応答して、マルチプレクサ618とソー ス621とによって与えられる16ビツト値か或いは高インピーダンスの何れか をバスA Busに供給する。この実施例ではゲート619の使用により、レジ スタDRO乃至DR3に保持される値を8ビツトデータ値としてバスA Bus に供給することが出来る。バスA Busに供給される値の8個のMSBは0に 設定される。バスMCWを介して与えられるマイクロコード制御語A SRCフ ィールドが、レジスタDRO乃至DR3の1つがバスA Busを介して転送さ れるべきデータ値の出所であることを示す時、信号RO・がゲー1−619を制 御して値をバスA Busに供給するようにする。
RA M 61G中へ記憶すべきデータ値は、2個の16ビツトバスA Bus 及びB Busを介してデータRAM回路228に供給される。16ビツトの3 状態のゲート624が、制御回路614によって与えられる信号AINに応答し てバスA Busからのデータ値或いは高インピーダンスの何れかをRA M  610のI10バスに供給する。同様のゲート626が、制御回路614にょフ て与えられる信号BINに応答してバスB BUSからのデータ値或いは高イン ピーダンスを選択的にRA M 610のI10バスに供給する。
RA M 610のI10バスに供給されたデータ値は、アドレスレジスタ62 0に保持されるアl(レス値によってアドレスされたデータセルに書込まれる。
制御回路6!4は書込可動化信号WEを発生し、RAM610はこの信号WEに 応答して所定のメモリサイクル中にデータ値をアドレスされたセルに書込む。
データ値は、メモリサイクルの少なくとも一部中に信号WEを論FJOの状態に 保持することによってRAM610のアドレスされたセルから読取ることが出来 る。RA M 610から読取られた値は、バスA BUS及びBBUSの一方 或いは両方にそれぞれゲート628及び153[1を介して供給することが出来 るゆこれらのゲート628及び630は、ゲート624及び621iと同様であ り、それでれ制御回路614によりて与えられる信号AOUT及びBOUTに応 答して、RA M 610によってそのI10バスを介して与えられる出力値或 いは高インピーダンスをそれぞれバスA Bus及びB Busに供給する。
上述のようにデータRAM回路228が行う動作はマイクロコード制御語のフィ ールドA SRC,A D ST、BSRC及びB DSTf7)値によりて決 定される。下の表4には、これら4つのフィールドの種々のイ1に応じて行われ る動作が示されている。
2 ”DR2”DR2 コ”DR3”DR3 4”D R2÷φ 1IDR24−÷ 5 ”DR3÷◆ ”D R3◆+ 6 ’DR−2−”DR2−− 7”DR3−”DR3−− 16”D RO”D R0 !? ”D Rl ”D R1 18”DRO◆◆ ”DRO条令 19 ”DRI ÷+ ”DRI 条令20 ”D RO−−”D RO−− 21”DRI−”DRI’−− 28DRODRO 29DRI DRI 30 DR,2DR2 コI DR3DR3 R2O3能は、ビデオ信号プロセッサ210に対するマイクロコード制御=6を 発生するのに使用されるアセンブラ言語のように符号化される。レジスタの記号 の前に付けられている*印は、書込まれる値或いは読取られる値がレジスタに保 持される値によってアドレスされるRAMセルへ転送される値或いはそのRAM セルから転送される値であることを示している。レジスタの記号の前に*印がな い場合は、書込まれる値或いは読取られる値はその記号のレジスタに保持される 8ビツト値である。レジスタの記号の後に付けられた「++」及び「−−」は、 それでれそのレジスタ中の値が、アドレスされたメモリセルがアクセスされた後 に増加或いは減少させられることを示している。
符号化された動作がA SRC或いはB SRCの欄にある場合、その動作は読 取動作てあり、その出力値はそれぞれバスA BUS或いはBBυSへとゲート される。符号化された動作がA DST或いはB DSTの欄にある場合、その 動作は書込動作であり、その入力値はそれぞれバスA BUS或いはBBυSに よって与えられる。
第7A図乃至第7E図は、マイクロコード制御語のフィールドA SRC,A  DST、B SRC及びBDSTに対応して制御回路614が与える種々の信号 を示すタイミング図である。第7A図乃至第7E図のタイミング図には本願の他 のタイミング図と比較するためにマイクロコードRAM・シーケンシング回路2 26によって与えられるクロック信号CKAが示されている。
第7A図には%8ビット値をバスA BusからレジスタDROに書込む要求( 即ちA DST−28)に応答して制御回路614が与える種々の信号のタイミ ングが示されている。命令サイクル中の初期の所定時点で、レジスタDROに書 込まれるべき値VALがバスA Busに供給される。この命令サイクル中、制 御回路614は信号MCIを論理lに保持し、この信号に応答してマルチプレク サ616はバスABυSの8個のLSB位置によって運ばれる値をレジスタDR O乃至DR3の入力ポートに供給する。バスA BUSに供給された値が安定す ると、制御回路614はパルス信号L0を発生し、この信号L0に応答してレジ スタDROはその入力ポートに供給された値をロードする。レジスタDR1,D R2及びDR3をロードさせる指令も同様であり、パルス信号L * 、 L  *及びL3のうちの1つが第7図Aに示すパルス信号り、の代りに発生される。
第7B図には、レジスタDROに保持される値をバスABυSの8個のLSB位 置に転送する(即ちAsRC−2JI)ために制御回路614が発生する信号の タイミングが示されている。命令サイクルが開始したすぐ後の所定時点で制御回 路614は信号MC2が0の値を持つように変える。この信号MC2に応答して マルチプレクサ618は、レジスタDROに保持される値をゲート619の入力 ポートに供給する。信号MC2を変えた後、制御回路614は信号ROとして論 理lをゲート619に供給する。この信号ROに応答してゲート619は、レジ スタDROに保持される値をバスA Busの8個のLSB位置に供給し、0の 値をバスA Busの8個のMSB位置に供給する。レジスタDR1,DR2及 びDR3中の値も同様の信号変更シーケンスを用いて読取ることが出に示す0の 代りにそれぞれ1.2及び3となる。
第7C図には、レジスタDROに保持されるアドレス値によってアドレスされる R A M 610のメモリセルから値を読取る(即ちA 5RC−16)のに 使用される信号のタイミングが示されている。この動作のため、制御回路614 はまず、信号MC2を0の値を持つように変え。
この信号MC2に応答してマルチプレクサ618はレジスタDROに保持される アドレス値をアドレスレジスタ620の入力ポートに供給する。この信号が安定 すると。
制御回路614はパルス信号L^を発生し、これによフてアドレス値がアドレス レジスタ620中ヘロードされる。
アドレス値がRA M 610のアドレスデコート論理を通過するとアドレスさ れた値はRA M 610のI10バス上に得られる0次に制御回路614は、 信号AOUTの値を論理lに変えることによってこのアドレスされた値をバスA BυSへとゲートする。レジスタDRIによってアドレスされる値も、信号MC 2の値がOの代りに1となること以外は同じ命令シーケンスを用いて読取ること が出来る。この実施例において、レジスタDR2或いはDR3によってアドレス されるR A M 610中のデータは。
バスB Busのみを介して読出すことも出来る。これらの信号を読取るための 信号のシーケンスは、第7C図のMC2の値をそれぞれ2或いは3に変え、ゲー ト用信号AOUTの代りに信号BOUTを使用することによって得ることが出来 る。
第7D図には、データRAM回路228がバスB BUSによって与えられる値 をレジスタDRZ中に保持されるアドレス値を持つRA M 610のセルへ書 込む(即ち。
B DST−2)ように制御する信号が示されている。
この動作における第1段階として、制御回路614は信号MC2の値を2に変え る。この信号MC2に応答してマルチプレクサ618は、レジスタDRZ中に保 持されるアドレス値をアドレスレジスタ620の入力ポートに供給する。アドレ ス値が安定すると、制御回路614はパルス信号LAを発生し、この信号L^に 応答してアドレスレジスタ620は入力ポートに供給された値をロードする。R A M 610へ供給されたアドレス値が安定した後、制御回路614が信号B INを論理lの値に変え、この信号BINに応答してゲート626はバスB B US上の値をRAM61GのI10バスへ供給する。安定期間後に制御回路61 4はパルス信号WEを発生し、この信号WEに応答してRA M 610はその I10バス上のデータをそのアドレス入力ボートに供給されたアドレス値を持つ セルに書込む。レジスタDR3中のアドレス値を使用してデータ値をバスB B usからRA M 61Gに書込むのに使用される信号は、信号MC2が2では なく3の値を持つこと以外は第7D図に示されるものと同じである。この実施例 では、バスA BUS上のデータを使用するメモリ書込動作はレジスタDRO及 びDRIのみを使用してもよい。従って、これらの動作(A DST−28或い は29)に使用される信号を表わすとすると、第7D図は、3つの点即ち信号B  Busが信号A BUSになり、信号MC2の値がそれぞれO或いはlになり 、信号BINが信号AINになりて変えられることになる。
第7E図は、第7D図と同様の動作を表わすが、アドレス値がデータ値の記憶後 に増加させられる点で異なる。この動作は、フィールドB DST中の値が4の 時に発動される。信号B BUS、MC2、LA、BIN及びWEは、第7D図 に関して説明したものと同じである。更に、信号BIHの値を変えるとすぐに、 制御回路614は信号1/Dを論理lの値を持つように変える。この信号1/D に応答して増加/減少回路622は、アドレスレジスタ620に保持される値を 増加させてその結果得られた値をマルチプレクサ616の第2の入力ボートに供 給する。この値が安定すると、制御回路614はパルス信号MCIを発生し、こ れによフて増加したアドレス値はレジスタDRO乃至D R2に供給される。信 号MCIが論理lの状態にある間、制御回路614はパルス信号L2を発生し、 これによって増加したアドレス値は1/ジスタDR2にロートされる。
命令サイクルの間ずっと信号1/Dの値を論理0に保持することによって、第7 E図に示す信号を変えてア1くレス値を増加させる代りに減少させることが出来 る。レジスタDRO,DRI及びDR3を使用する書込動作用の信号は、第7E 図に基づいて、信号B Bus、MC2及びBINを第7D図に関して上述した ように変えることによりて得ることか出来る。更に、読取・増加動作(A SR ,C=18及び19とB SRC寓4及び5)と読取減少動作(A 5RC−2 0及び21とB 5RC=6及び7)に使用される信号は、第7E図から信号M CI。
1/D及びし、を適切に変えて第7C図に示される信号に付加えることにより得 られる。
この実施例において、第7A図乃至第7E図に示されるパルス信号は、クロック 信号源225によってデータRAM回路228に与えられる25 MHzの信号 CLKのパルスを選択的にゲートすることによって及びゲートされたクロックパ ルスを縦続接続されたゲート素子を介して遅延させることによって生成すること が出来る。クロック信号CLKがその制御信号を生成するのに使用されても、デ ータRAM回路228はクロック信号CKA及びc x< laに応答し、これ らのクロック信号がPAUSE或いはHALTの指令によって凍結される時その 動作を停止する。
デジタル信号処理回路設計の当業者であれば、第6図、第7A図乃至第7E図及 びこれに関連する説明から容易にデータRAM回路2?8に使用するに適した制 御回路614を作ることが出来る。
第1B図に関して上述したように、映像セグメン1〜は、前の映像からの対応す るセグメントの変形として符号化できる。相対的エンコーディングと呼ばれるこ の符号化の形には、2個のセグメント(例えば第1B図からのΔX及びΔY)に おける対応するビクセル位置相互間の水平及び垂直方向のオフセットを表わすパ ラメータが含まれている。上述したように、これらのオフセットの値は隣接する ビクセル相互間の距離の分数で表わすことが出来る。ビクセルオフセット値の分 数部分が0でない映像を適切にデコードするために、ビデオ信号プロセッサ21 0には前のフィールドにおけるセグメントのビクセルから疑似ビクセルを発生す る回路が含まれていることが望ましい、これらの疑似ビクセルは、分数で表わさ れるようにオフセットされたビクセルの値に近似した値を持つ、この実施例にお いて、疑似ビクセルはビクセル補間器24Bによって生成される。
ビクセル補間器246は、垂直方向に補間されるビクセルに対応する中間値の対 を計算及び記憶するように構成されている。これらの中間値の対は次に補間器2 46に帰還され、補間器246は、連続する中間値に基づいて動作して水平方向 の補間を行い、水平及び垂直の両方向において補間されるビクセル値を生成する 。即ち、ビクセル補間器24Bは、交互に垂直及び水平補間計算を行りて出力疑 似ビクセル値を生成する。
第8A図には、ビクセル補間器246として使用するのに適した回路がブロック 図で示されている。第8A図で、16ビツトバスA Busがレジスタ(REG )802と812のそれぞれの入力ボートに結合されており、それぞれ例えばデ ータRA M 22Bからのビクセルデータと例えばA L U 244からの 制御値とをビクセル補間器246に供給する。レジスタ802及び812は、そ れぞれマイクロコート制御語のA DSTフィールドが5及び6の値を持つ時、 バスA BUSからの値をロートする。マイクロコード制御語は、制御バスMC Wを介してビクセル補間器246に供給される。レジスタ812は制御回路81 4に結合されており、この制御回路814は次に述べるようにビクセル補間器2 46の種々の構成部分に対する制御信号を発生する。
レジスタ802ヘロートされた16ビツト値は、A DSTフィールドが5の値 を持つ時、ビクセル補間器246によって入力ビデオ信号の水平線上の連続する 位置を持つ2個の8ビツトピクセル値として解釈される。信号LR4及びLR, に応答して、レジスタ802に保持される値はそれでれ16ビツトレジスタ(R EG)804及び806に交互に転送される。ピクセル補間器246の正規動作 において、レジスタ802に供給される1つ置きの値は、入力ビデオ信号の連続 する線からの対応するサンプル対である0例えば、入力ビデオ信号のピクセルを 三角形で表わした第9A図において、レジスタ802に供給される最初の値には ピクセルS0゜及びSOIを表わす値が含まれることになり、その次にレジスタ 802に供給される値にはビデオ信号の次の線からの対応するピクセル値である ピクセルS、。及びS□、を表わす値が含まれることになる。
第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位置に結合されている。レジスタ8 08及び810は、制御回路814によって与えられる信号XFに応答してそれ デれの入力ポートに供給される値をロードする。上述の例で、レジスタ808及 び810では、それぞれ制御回路814がパルス信号XFを発生した直後にビク セル値対S0゜とSl。及びピクセル値対S。lとSllが収容される。
レジスタ808及び810によって与えられる16ビツト値は、それぞれマルチ プレクサ(MUX)811の異なる入力ポートに供給される。マルチプレクサ8 11は、制御回路814によって与えられる信号MVに応答して入力ポートのう ちの選択された1つに供給される16ビツト値を通過させてマルチプレクサ(M UX)816及び818に送る。マルチプレクサ811の出力値の8個のMSB 位置は、マルチプレクサ816の1つの入力ポートに供給される。マルチプレク サ811の出力値の8個のLSB位置は、マルチプレクサ818の対応する入力 ポートに供給される。
マルチプレクサ816及び818は、制御回路814によって与えられる信号M Lに応答して、マルチプレクサ811によりて与えられる2個のピクセル値かそ れぞれマルチプレクサ(MUX)861及び863によって与えられる2個の8 ビツトの垂直方向に補間されたピクセル値かの一方を通過させる。マルチプレク サ816及び818によって通過させられたピクセル値はそれぞれレジスタ(R EG)820及び822に供給される。レジスタ820及び822は、マイクロ コードRAM・シーケンシング回路226によって与えられるクロック信号CK  Aに応答して、それでれの入力ポートに供給された値をロードする0次に減算 器824がレジスタ822に保持されるピクセル値をレジスタ820に保持され るピクセル値から引く、減算器824によって得られたピクセル差の値は乗算器 回路825に供給される。
この実施例に使用される乗算器825は、プログラム可能なシフト及び加算型の 乗算器である。第8B図には、乗算器825として使用するのに適した回路が示 されている0乗算すべき値が2つのデータバスに供給される。このデータバスの 各々には直列に結合された3個のシック(S)lI FT)・マルチプレクサ( MUX)対が含まれている。第1及び第2のデータバスの両方は9ビツト値を運 ぶ、減算器824によって与えられる8ビツト値は、シフタ826及び840と マルチプレクサ828及び842との供給される9ビツト値の8個のMSB位置 として供給される。この値のLSBは0である。付加的な精度ビットが乗算器8 25で使用されて、シフト及び加算の乗算技術の為に生じる可能性のある切捨て 誤差が軽減される。
第1のデータバスに含まれるシフタ826は、減算器824によって与えられる ピクセル差の値を受取り、この値のビットシフトされたものをマルチプレクサ8 28の1つの入力ポートに供給する。マルチプレクサ828の他方の入力ポート は、減算器824の出力ボートに直接結合されている。シック826、及び乗算 器825の他のシックの各々は、9ビツト入力値の8個のMSB位置を9ビツト 出力値の8個のLSB位置として供給する。論理0の値がその出力値のMSB位 置に挿入される。デジタル信号処理回路設計の当業者であればこの種のシフトが 2で割る割算に等しいものであることが判るであろう、マルチプレクサ828は 制御回路814によりて与えられる信号MAIに応答して出力ボートにシフトさ れた値或いはシフトされていな値を与える。マルチプレクサ828の出力ボート は、シフタ830の入力ボートとマルチプレクサ832の一方の入力ポートとに 結合されている。シフタ830及びマルチプレクサ832は、シフタ826及び マルチプレクサ828と同様に構成されている。マルチプレクサ832は、制御 信号MA、に応答してマルチプレクサ828の出力値或いはこの出力値のビット シフト分の何れかを選択的に供給する。マルチプレクサ832は、出力値をこれ に結合されたシフタ834とマルチプレクサ836とに供給する。これらのシフ タ834及びマルチプレクサ836は、シフタ830及びマルチプレクサ832 と同様に構成されている。マルチプレクサ836は、制御回路814によつて与 えられる信号MA3によって制御される。
第2のデータバスには、3個のシフタ奉マルチプレクサ対840と842 、8 44と846及び848と850が含まれており、各対は第1のデータバスのシ ック・マルチプレクサ対と同様に構成されている。マルチプレクサ842゜84 6及び850はそれでれ信号MB、、MBfi及びMB3によって制御される。
マルチプレクサ850により与えられる出力値は選択的2の補数回路(SEL  2’ S COMP)852に供給される。この回路852は、制御回路814 によって与えられる信号CPに応答して入力値或いはその入力値の2の補数の何 れかをレジスタ(REG)854の入力ポートに供給する。第1のデータバスの マルチプレクサ8コロによヮて与えられる出力値は、レジスタ(REG)831 1の入力ボートに直接供給される。レジスタ838及び854の両方は、マイク ロコートRAM・シーケンシング回路225によって与えられるクロック信号C K aに応答してそれぞれの入力ボートに供給された値をロードする。レジスタ 838及び854にようて与えられる出力値はそれぞれ加算器855の異なる入 力ボートに供給される。この加算器856によって与えられる値が乗算器825 の出力値となる。
乗算器825は、信号MA+ 、MAs 、MAs 、MB+、MB、及びM  B 3の値が制御されることによって、8分のlかう1までの8分の1ごとの値 を持つ縮小率(scalefactor)で減算器824によりて与えられる値 を乗算する0表5は縮小した出力値を得るのに必要な種々の制御信号の値の一覧 表である0表5において、MA信号或いはMB信号の1つが0の制御値を持つ時 、対応するマルチプレクサはそれに応答してシフトされていない値を通過させ、 lの制御値を持つ時、対応するマルチプレクサはそれに応答してシフトされた値 を通過させる。信号CPの値が1の時、選択的2の補数回路852はこれに応答 して入力ボートに供給された値の補数をとる。
M A 、M A * M A s M B t M B * M B 3 C P 縮小率信号MA、、MAオ、MAs 、MBm 、MBm 、MB3及びC Pの値は、制御回路814がレジスタ812によって与えられる制御値に応答し て発生する。
加算器856によって与えられる縮小されたビクセル差値は、レジスタ(REG )857によって与えられるビクセル値に加えられる。レジスタ857に保持さ れるビクセル値は、マイクロコートRAM・シーケンシング回路226によって 与えられるクロック信号CK、に同期してレジスタ8z2からロードされる。減 算器824、乗算器825、加算器856及び加算器858によって行われる作 用は次の等式(2)によって表わすことが出来る。
FL−5F大(A−B)+B (2) ここで、A及びBはそれぞれレジスタ820及び822に保持されるビクセル値 、SFは1例えばA L U 244によヮて制御値におけるフィールドとして 与えられ且つレジスタ812に保持される縮小率の値、この縮小率SFはMA、 MB及びCPの信号を介して乗算器825に供給される。Rは加算器858によ って与えられる債である0式(2)を代数的に操作すると、従来型の線形補間動 作を表わす式(3)が得られる。
R−SFIA+ (1−5F) ス B (コ)従つて、減算器824、乗算器 825、加算器856及び加算器858の組合せは線形補間器となる。
加算器858によって与えられる値は、レジスタ(REG)860及び862の それぞれの入カポ−1−と、マルチプレクサ861及び863のそれぞれの第1 の入力ボートに供給される。マルチプレクサ861及び863の第2の入力ボー トは、それぞれレジスタ860及び862の出力ポートに結合されている。レジ スタ860及び852は、入力ボートに供給された値をそれぞれクロック信号φ 2及びφlが負方向に移行すると同時にロードする。マルチプレクサ851及び 863は、それぞれクロック信号φ2及びφ1が論理lの値を持つ時、加算器8 58によって与えられる値を通過させてマルチプレクサ816及び818に供給 し、クロック信号φ2及びφlが論理lの値を持たない時、レジスタ860及び 862に保持される値を通過させる。レジスタ860及び862とマルチプレク サ1361及び863のこの構成によりて、加算器858によって与えられる値 をレジスタ860及び820の両方に或いはレジスタ862及び822の両方に 同時にロードできる。これが可能であることの重要性を後で第9C図を参照しつ つ説明する。
加算器858によって与えられるビクセル値は更に16ビツトレジスタ(REG )864の8個のMSB位置と8個のLSB位置の両方に供給される。1/ジス タ864の8個のMSB位置は制御回路814によって与えられる信号LO1に 同期してロードされ、 I/ジスタ864の8個のLSB位置は制御回路814 によって与えられる信号LO,に同期してロードされる。レジスタ864に保持 されるビクセル値は、制御回路814によって与えられる信号XOに応答してレ ジスタ(REG)866に転送される0次にこれらのビクセル値は、バスMCW を介してレジスタ866に供給されるマイクロコード制御語A SRCフィール ドによって制御されてレジスタ866からバスA BUSに供給される。
正規動作モードにおいて、ビデオ信号プロセッサ210の構成部分としてビクセ ル補間器246は、電流映像に対するビクセル値を発生する1つの段階として前 の映像のビクセル値から補間された疑似ビクセル値を発生する。
第9A図乃至第9C図はビクセル補間器246の動作を示している。
第9A図において、三角形点S0゜乃至S。?及びS、。乃至SI、は、入力F IFO232及びデータバス242を介してVRAM216中のビット・マツプ から与えられる前の映像の2本の連続する線からの対応するビクセル値を表して いる0円形点10゜乃至No?は、補間された疑似ビクセル値を表わしている。
第9A図に示されるように、補間された疑似ビクセル値は、前の映像のビクセル に対して水平方向にビクセル相互間隔の4分の1また垂直方向にピクセル相互間 隔の8分の5だけオフセットされている。
第9B図は、ピクセル補間器246がどのようにバスABUSに供給されたデー タ値によって制御されて疑似ピクセル値!。。乃至l。ユな発生するかを示して いる。第9B図で1期間T0乃至Toはビデオ信号プロセッサ210の17の連 続する命令サイクルを表わしている。命令サイクルTo中、マイクロコート制御 語のフィールドA DSTは4の値を持ち、これによってピクセル補間器246 は例えばバスABυSを介してA L U 244から供給される16ビツト制 御値をロードする。ピクセル補間器246は、この16ビツト制御値の8個のM SB位置に制御されて同相モードて動作する。このモードにおいて、入力ピクセ ル値及び対応する出力ピクセル値は共にVRA M 216中の偶数のアドレス を持つ、ピクセル補間器246はもう一方のモードである離相モードで動作する ことが出来る。この離相モードにおいて、入力ビクセルアドレス値は奇数個であ り、出力ビクセルアドレスは偶数個ある0期間T0においてピクセル補間器24 6に供給される制御値は、更にビット0〜3及び4〜7にそれぞれ値5及び2を 持つ、値2は水平方向のオフセット或いは縮小率278即ち1/4に相当し、値 5は垂直方向の5/8のオフセットに相当する。この実施例では、値5及び2は 、第1B図に示されるもののような相対的コードレコードの値ΔX及びΔYの分 数部分から得られる。
命令サイクルT、及びT2中、マイクロコード制04語A DSTフィールドが 5の値を持ち、それぞれピクセル値対S0゜、So、及び5IO1Sttがピク セル補間器246のレジスタ802へ供給される。命令サイクルT3の間。
ピクセル補間器246に関してバスABUS上には作業がない、命令サイクルT 4中、補間されたピクセル値の無効対(X、X)がピクセル補間器246の出力 ボートに得られる。これらの値は、ビデオ信号プロセッサ210によって無視さ れる。
命令サイクルT、及びT、中、それでれピクセル対S O*+ S O2及び5 IfilS13がピクセル補間器246のレジスタ802へ供給される。命令サ イクルエフ中、ビクセル補間器246に対してバスA Bus上には作業がない 。
命令サイクルT8中、補閲されたピクセル値の第2の無効対がピクセル補間器2 46の出力ボートに得られる。これらの値は無視される。命令サイクルT、及び T1゜中、それぞれピクセル値対S、、、S、、及び5141SISがピクセル 補間器246のレジスタ802に供給される。命令サイクルT、中、ピクセル補 間器246に関するバスA Bus上の作業はない、命令サイクルT、中、マイ クロコード制御語のA SRCフィールドは5の値を持ち、これによってピクセ ル補間器246は、補間されたピクセル値■。。及び101を表わす16ビツト 値をバスA Busに供給する。
命令サイクルT13乃至T0は命令サイクルT、乃至T12と同様で、ピクセル 補間器246に供給されるとクセル値及びピクセル補間器246によって与えら れるとクセル値が異なるだけである。一般に、マイクロコードシーケンサ226 は、所望の補間された疑似ピクセル値すべてを生成するのに必要な多数の期間と 異なる入出力ピクセル値とを使用して命令サイクルT、乃至Tlt中の動作をこ の実施例に使用される補間器246は高度にパイブラへ イン構成された装置である。パイプライン遅延は、 11命令サイクル即ちT、 において最初の入力値が供給されてからTI2において最初の有効出力値を与え るまでの間の遅延である。
第9C図は信号タイミング図であり、第9B図に示した例の制御回路814によ って生成される種々の信号のタイミングを示している。信号CKA及びCK、は 、1つの命令サイクル期間中に実質的に等しい期間を持つ離相クロック信号であ る。クロック信号CKA及びCに3は、マイクロコードRAM・シーケンシング 回路226によりてピクセル補間器246に供給される。
第8図に示されるピクセル補間器回路246に使用されるレジスタすべては、立 下がり端でトリガされる型式である。即ち、これらのレジスタすべては、その入 力ボートに供給された値をそのクロック信号或いはロード信号が負方向に移行す ると同時にロードするように制御される。第8図におけるレジスタは、クロック 信号CKA或いはクロック信号CK、の何れかに同期する。
第9B図および第9C図を参照する。ピクセル補間器に対する制御値は信号Cに 、の負方向変化と一致した命令サイクルT0の期間中レジスタ812にロードさ れる。
この値は命令サイクルT0の終りまでに制御回路814中で安定化し、各信号M AL、MA2、MA3.MBI、MB2、MB3、およびcpに対する値1.O ,O11,1% l、および0を供給するように回路814の動作を設定する。
これらの値は5/8の縮小率に相当し、この縮小率はこの実施例では垂直に配列 された対をなすピクセル値相互間を補間するために使用される。
ピクセル値の第1の対S0゜とSOIは信号CKAの負方向変化と一致する命令 サイクルTIの期間中にレジスタ802にロードされる。これらのピクセル値は 信号LR。
の負方向端と一致する命令サイクルT、の終了端でレジスタ806に転送される 。
ピクセル値の第2のS、。とSllは命令サイクルT2の期間中に生ずるクロッ ク信号CKAの負方向変化と一致してレジスタ802にロードされる。これらの ピクセル値は命令サイクルT2の終了時に生ずる信号LR,の負方向変化しと一 致してレジスタ804に転送される。
命令サイクルT、の期間中にレジスタ804および806の8個のMSB位置に 保持されたピクセル値はレジスタ808の各8個のMSBと8個のLSB位置に 転送され、レジスタ804および806の8個のLSB位置に保持されたビクセ ル値はレジスタ810の各8個のMSBと8個のLSB位置に転送される。この 転送は信号XFの負方向変化と一致して行なわれる。この転送によフて、各レジ スタ804および806中の水平方向に配列されたビクセル値S OOh S  OXおよび5IO1S11をそれぞれレジスタ808.810中で垂直方向に配 列されたビクセル値SOI、SllおよびSOO+ S 10に変換する効果が 得られる。
サイクルT4の期間中、制御回路814は信号MAN乃至MA3、MBI、乃至 MB3.およびcp?:%5/8の縮小率と一致した値をもつように変更する。
制御回路814は、さらに信号MVとして論理lの値を発生し、信号MLとして 論理0の値を発生して、信号MVによって制御されるマルチブ1/クサ811、 信号MLによって制御されるマルチプレクサ816および818を、レジスタ8 10に保持された2個のビクセル値をレジスタ820 、822の各入力ボート に結合するようにする。信号CKAの負方向端に一致して、命令サイクルT4の 期間中、ビクセル値S0゜はレジスタ822にロードされ、ビクセル値S1゜は レジスタ820にロードされる。命令サイクルT4の残りの期間中は、レジスタ 82Gおよび822に保持された値は、前述のように減算器824およびマルチ プライヤ825の第1および第2のデータバスを経由して伝播する。マルチプレ クサ836および選択的2の補数器852によフて供給される縮小(スケール) されたビクセル差値は、命令サイクルT4の終了時に生ずる信号CK、の負方向 端と一致して各レジスタ838 、854にロートされる。これと同時にレジス タ822からのビクセル値S0゜は1/ジスタ857にロートされる。
命令サイクルT、において、1/ジスタ838および854に保持されたビクセ ル差分値は加算器856によりて加算される。得られた和は加算器858におい てレジスタ857から供給されるビクセル値S。0と加算される。ビクセル値S IOの5ノ8倍とビクセル値S0゜の3ノ8倍との和を表わす加算器858によ って与えられた和は信号φ嶌の負方向端と同期してレジスタ862に記憶される 。
また、命令サイクルT、の期間中、バスA Busを経て供給されるビクセル値 So鵞とS。3は1/ジスタ802にロードされ1次いで信号LR,の負方向変 化と同期してレジスタ806に転送される。命令サイクルT8の期間中、ビクセ ル値5illおよびS13はバスA Busに供給され、レジスタ802にロー ドされ、次いで信号LR,の負方向変化と同期してレジスタ804に転送される 。
命令サイクルT、の中間において、1/ジスタ808に保持されたビクセル値S 。iおよびSllはマルチブ1/クサ811 、816および818を経て各レ ジスタ822 、829に供給されて、信号CKAの負方向端に応答1ノてこれ らの各レジスタにロードされる。これらのビクセル値は命令サイクルT6の残り の期間中と命令サイクルT7の第1の半部の期間中に減算器824、マルチプラ イヤ825.レジスタ857および加算器858を通って伝播される。
命令サイクルT、の第1の半部の期間中、各レジスタ806 、804に保持さ れた水平に配列されたビクセル値S 01 S 03およびSlz*Slsは垂 直に配列されたビクセル値S。よ+’SIm およびS。3、S13に変換され て、命令サイクルT7の中間点で生ずる信号XFの負方向変化と同期して各レジ スタ810 、808に記憶されるゆ命令サイクルT、の期間中に加算器858 によりて供給された垂直に補間されたビクセル値(So+、、S 11)はレジ スタ860にロードされ、さらにマルチプレクサ851および81Bを経由して 、命令サイクルT7の中間点で生ずる信号CKAの負方向端に同期してレジスタ 820にロードされる。信号MLは、マルチプレクサ861から供給された値を レジスタ820に通過させるようにマルチプレクサ616を動作させ、またマル チプレクサ863によって供給された垂直に補間されたビクセル値(SOo、S  +o)をレジスタ822に供給するようにマルチプレクサ818を動作させる 。このビクセル値は命令サイクルT、の中間点で生ずるクロック信号CKAの負 方向変化と同期してレジスタ822にロートされ、信号MAI乃至MA3.MB l乃至MB3および信号cpは、1.0.0.1、l。
0および1の6偵をもつように変化させられる。これらの値は縮小率1/4に相 当する。命令サイクルT、の第2の半部の期間中および命令サイクルT6の第1 の半部の期間中、減算9824.マルチプライヤ825および加算器858は、 この垂直補間されたビクセル値の対からビクセル値を水平補間してピクセル値工 。0を生成する。この値工0゜は、命令サイクルT、の中間点で発生するL O 。
の負方向端と一致してレジスタ864の8個のLSB位置に記憶される。
また、命令サイクルTaの期間中にレジスタ810に保持されたビクセル値S。
2、SIRの対はマルチプレクサ811 、816および818を経て各レジス タ822 、820に転送される。これらのビクセル値は命令サイクルT6の中 間点て生ずる信号CKAの負方向変化と同期してレジスタ822および820に 転送される。命令サイクルT8の残りの期間および命令サイクルT9の第1の半 部の期間中に、減算器824、マルチプライヤ825および加算器858は対を なすビクセル値S。2.5l11から垂直補間されたビクセル値を計算する。こ の補間されたビクセル値は、命令サイクルT−の中間点で生ずる信号φ、および CK^各負力負方向変化期してレジスタ862および822にロードされる。命 令サイクルT、の残りの期間および命令サイクルT、。の第1の半部の期間中に 、水平補間されたビクセル値I。Iは、マルチプレクサ861および863によ って供給された垂直補間されたビクセル値から発生される。信号MAN乃至MA 3.MBI、乃至MB3.およびCPは、命令サイクルT、の期間中に各々01 O10,1,1,Oおよびlの値をもつようにセットされる。これらの値は縮小 率3/4に相当する。ビクセル値101は、命令サイクルT、。の中間点で生ず る信号L O1の負方向変化と同期してレジスタ864の8個のMSB位置に記 憶される。ビクセル対■。。+、IOAは、信号XOの負方向変化と同期して命 令サイクルT1oの終了時にレジスタ864からレジスタ866に転送される。
また、命令サイクルT、。の中間点において、レジスタ808に保持されたビク セル値S。3およびSI!は、信号CK^の負方向端と同期して各レジスタ82 2および820にロードされる。命令サイクルT、。の残りの期間および命令サ イクルTllの第1の半部の期間中、垂直補間されたピクセル値がピクセル値S 。3およびS+3から生成される。このピクセル値は、命令サイクルTllの中 間点で発生する各信号φ2およびCに、の負方向変化と同期してレジスタ860 Sよび820に記憶される。
命令サイクルT、およびT、。の期間中、各ビクセルS 041 S os+お よび514、S、は各レジスタ806 、804にロードされる。命令サイクル T1mの中間点で、これらのピクセル値は垂直配列されたピクセル対S。4、S I4、およびS。5.S、に配列され、これらは各レジスタ810.808に記 憶される。
命令サイクルTllの第2の半部と命令サイクル”lftの第1の半部の期間中 に、減算器824、マルチプライヤ825および加算器858はピクセル値■。
2を計算し、該ピクセル値I。2は命令サイクルT、の中間点で生ずる信号LO Gの負方向変化と同期してレジスタ864の8個の位置に記憶される。また、命 令サイクルT1.の中間点において、ピクセル対I0゜+Iotはレジスタ86 6からバスABυSに供給される。
命令サイクルTI*およびTt3の期間中、垂直補間されたピクセル値はピクセ ル対S 04* S 14に対して生成される。この補間されたピクセル値は、 命令サイクルT13の中間点で生ずる信号φまおよびCKAの各負方向変化と同 期してレジスタ860および820にロードされる。命令サイクルT、およびT 14の期間中に、ピクセル値I。3は3/4の縮小率を使用して発生される。こ のピクセル値は命令サイクルT 14の中間点においてレジスタ864の8個の MSB位置に記憶される。命令サイクルTI4の終了時に、ピクセル対l。*n 103はレジスタ864からレジスタ866に転送される。このピクセル対は命 令サイクルT、。の期間中にバスA Busに供給される。
ビクセル補間器246を駆動する信号は4つの命令サイクル毎にくり返す0例え ば、命令サイクルT、3乃至T、。
に対する信号は命令サイクルT、乃至T、2に対する命令と同じである。この信 号くり返しのシーケンスは所望の数の疑似ビクセル値を生成するのに必要な回数 をくり返される。
水平補間されるべき1対のピクセル値の第1の垂直補間されたピクセル値はレジ スタ820 、822を交互に占有する。その結果、加算器858において縮小 された垂直補間差値に加算される垂直補間された値は、連続する水平補間値を発 生するために合成される垂直補間された値の連続する対の第1および第2の垂直 補間値間て交番する。水平補間の計算のためにこの交番を適合させるために、制 御回路814は信号MAL乃至MA3、MBI乃至MB3.およびCPに対して 縮小率S F Nおよび(1−5F工)に対応する値を交互に供給する。ここで 、SF□は水平補間縮小率である。この例では、1対の第1のピクセル値がレジ スタ822にあるときは、l/4の水平補間率は正しい疑似ビクセル出力値を生 成する。しかしながら、1対の第1のピクセル値がレジスタ820にあるときは 、水平補間率は3/4に変化させられて正しい疑似ビクセル出力値を発生する。
上述の説明では、命令サイクルT0の期間中にビクセル補間器246に供給され る制御値は補間器を同相モードで動作するように設定する。第9D図および9B 図は隣相モートのビクセル補間器の動作を説明するものである。上述のように、 隣相モートは、入力ビクセル対のアドレスがV RA M 216中の16ピツ ト値のアドレスと一致しないときにビクセル補間器246に対して選ばれる。こ の状態は、対をなす入力ビクセル値がVRAM語の境界を横切って分割されると きに生ずる。第9E図はこの状態を示している。
ビクセル補間器246の同相モードと隣相モードにおける動作の基本的な相違が 第9E図と第9F図に示されている。第9E図に示すように、ピクセル値I0゜ および!。、は、その同相モードに示すように命令サイクルTtmの期間中より もむしろ命令サイクルT4の期間中に出力レジスタ866において得られる。こ の動作の変更は、第9F図に示すように、@号LO0とLO,とを切換え。
信号xOを信号CKAの2周期だけ遅延させることによりて達成される。
ビクセル補間器246はビデオ映像に対する空間的補間ビクセル使用装置として 説明されているが、このビクセル補間器246はさらに一般的には、水平方向、 垂直方向のいずれかにおけるピクセル値を平均するためにも使用することができ る。この機部は各種の濾波演算方式において有用である0例えば、第9A図のピ クセル値がSOO+ sow、5OO1301;Sol、Sow、SOI、So w等のシーケンスでビクセル補間器246に供給されると、補間器によって与え られる出力値は、水平方向にのみ補間あるいは平均されるビクセルを表わす。
上述の説明および第8A図、第8B図、第9A図乃至第9F図を見れば、デジタ ルビデオ信号処理回路設計の技術分野の技術者にとっては、ビクセル補間器24 6として使用するのに適した回路を設計し、製造することは容易である。
V RA M 216に保持されたピクセル値およびデータは、統計的デコーダ 230.入力FIFO232および234、出力FIFO236を経てビデオ信 号処理器210によってアクセスされる。これらの装置を使用してV RA M  216に関して実行されるすべてのデータの読出しおよびデー夕書込み動作は V R,AM制御ユニッ1〜238によって調整される。統計的デコーダおよび 各FIFOは関連するVRAMアドレスおよび制御値をもっている。マイクロコ ード・シーケンサ226はFiFOのパラメータを初期化し、その抜力FIFO は自動的に動作を開始する。ビデオ信号プロセッサ210から見ると、3個の入 力命令と1個の出力命令とが存在する。これらの3個の入力命令は統計的デコー ダ230、入力FIFO!32あるいは入力FIFO234からビクセル値を受 取ることであり、出力命令は出力FIFO236にビクセル値を送ることである 。
これらの装置はそれぞれV RA M 216へ、あるいはVRA M 215 かも32ビツト語用のメモリアクセス要求を発生し、また、8あるいは16ビツ トビクセル値とVRAM216に記憶された32ビツト語との間の変換、あるい は統計的にコード化されたデータをビクセル値に変換するために必要なバッキン グ(Paeking)あるいはアンバッキング(Unpacking)を行なう 。
統計的デコーダ230はV RA M 216に保持された可変長コード化デー タを16ビツト2進僅に変換し、該16ビツト2進値はマイクロコード制御語の B SRCフィールド中の14の値に応答してバスBBυSに供給される。
第10A図は統計的デコーダ230として使用するのに適した回路のブロック図 を示す。
第i 3A図を参照して以下に説明するように、統計的デコーダ230に対する VRAM21Bをアクセスするために使用されるアドレス値は、例えば、データ RA M 228から2段階でVRAM制御ユニット238にロートされる。
第1段階で、22ビツトのアドレス値の8個のMSB位置を表わす値は、マイク ロコード制御語B DSTフィールドが31の値をもっている間にバスB Bu sに供給される0次に、アドレス値の14個のLSB位置は、BDSTフィール ドが30の値をもっている間にバスB BUSに供給された値の14mのMSB 位置からロートされる。マイクロコード制御語のB DSTフィールド中の30 の値は、統計的デコーダ2コ0をリセットし、統計的デコーディング動作を初期 化するように制御回路1018を動作させる。
命令の代表的なシーケンスは次のように進行する。2つの連続する命令サイクル の期間中、アドレス値の8個のMSBおよび14個のLSBはそれぞれVRAM 制御ユニット238中の1対のレジスタにロードされる。アドレス値の14個の LSBがロートされる同じ命令サイクル中に、統計的デコーダ230はリセット され、動作を開始する。
リセット動作は、フリップ・フロップ1017に対する信号RVとして論理1の 値を供給する制御回路1018によって行なわれ、出力レジスタ1016に保持 された8ピッI−値を無効なものとしてマークする。同時に、制御回路103B はパルス信号R,DRを発生して、これをフリップ・フロップ1022のセラ1 −入力端子Sに供給する。この動作によりてフリップ・フロップ1022の出力 信号SDRを論理lの値に変化させる。信号SDRはバスR/Sを経てVRAM 制御ユニット238に供給されて、VRAM21S中のアドレスされた位置にお ける読出し動作を要求する。フリップ・フロップ1022の出力信号SDRは制 御回路1018にも供給されて、データがv 托A M 21Bから要求されて いることを指示する。
VRAM制御ユニット238が要求された読出し動作を処理し、V RA M  216が要求された32ビツト値をバスDBUSに供給すると、 V RA M  !til]’a:Lニット238はバスR/Sを経て供給されるパルス状スト ロボ信号SOSを発生する。この信号はレジスタ1010を、バスD BUSか らの32ビツト値をロードするように動作させる。信号SDSはまたフリップ・ フロップ1022のリセット入力端子Rにも供給されて、32ビツトデータ値が レジスタ1010にロードされたとき、信号SDRの状態を論理0に変化させる 。、SDSが論理Oになって信号CKの1周期の1/2の期間後、制御回路10 18は信号SRLを発生し、レジスタ1010からの32ビツト値をシフトレジ スタ1012に供給し、カウンタ1020に保持された値を0にリセットする。
統計的デコーダ230は、常にVRAM216から読出された32ビツト値のL SBと共にそのデコーディング動作を開始する。以下に述べるように、入力FI FO232および234と、出力PIFO236は、VRAMから読出され、あ るいはVRAMに書込まれる4バイト偵から転送されるべき最初のバイトとして バイト位置の値を特定する。これらの装置に対するバイト位置の値は、24ビツ トのアドレス値の2個のLSB位置としてコード化される。この発明の実施例で は、統計的デコーダ230はこのバイト位置の値を無視する。その結果、統計的 デコーダ2コロに供給されるデータは、VRAM21S中の32ビツト語のLS B位置と共に開始すると仮定される。
制御回路1018がレジスタ1010からの32ビツトデータ値を転送するため のパルス信号SRLを発生するときは、該制御回路1018は記憶されたアト1 /ス値を増加させるようにVRAM¥A御ユニッl−238を動作させるパルス 信号RDRを発生して、V RA M 211iからの次の連続する32ビツト データ値をレジスタ101Gに供給する。パルス信号SRLおよびFLDRが発 生して信号Cにの1周期の1/2の期間後に、回路101Bは信号ENとして論 理lの値を統計的デコーディング回路1014に供給し、回路1014にシフト レジスタ1012中に保持された値のデコーディングを開始させるゆ この発明の実施例で使用される統計的デコーディング回路1014は1例えば5 ここに参考として示す米国特許第4.396,906号、発明の名称「デジタル ・八ツマン・エンコーディングの方法と装置0ethod and Appar atus forDigital Huffman Encoding) Jの 明細書に記載されている形式のものでよい0回路1014は可動化(イネイブル )されると、システム・クロック信号CKを信号sacmとしてシフトレジスタ 1012およびカウンタ1020にゲートする。シフトレジスタ1012は、信 号SRCにの各サイクル毎に、LSB位置から開始し、MSB位置に向けて続く 上記シフトレジスタ1012が保持する値の1ビツトを供給する。各ビットがシ フトレジスタ1012によりて供給されると、カウンタ1020中の値はlたけ 増加される。
統計的デコーディング回路1014が充分な数のビットを処理して16ビツトの 出力値を発生すると、換言すれば。
統計的デコーディング回路1014が1個の可変長コート化された値をデコード すると、該統計的デコーディング回路1014はデコートされた16ビツト値を 出力レジスタ1016の入力ボートに供給し、さらに論理lの値を信号RDYと して制御回路1018に供給する。これによって制御回路1018はパルス信号 ORLを発生して、回路1014によって供給された値を出力レジスタ1016 にロードし、フリップ・フロップ1017をセットして、レジスタ1otaによ りて保持されたデータを有効なものとする。
出力レジスタ1016に保持された値が、値14または15をも9たB SRC フィールドを有するマイクロコード制御語を使用してバスB Busに対する信 号源としてアクセスされると、このデコーディング動作は完了する。
制御回路1018がB SRCフィールド中でこの値を検出した後、次のり、ロ ック期間で、制御回路1018はパルス信号RVを発生し、レジスタ1016に 保持されたデータな無効なものとしてマークする。BSRCに対する14の値は より多くのデータ値を持つことを示し、15の値はアクセスされたデータ値がシ ーケンスの最後であることを指示する。
上述の説明では、レジスタ1016中のデータは、それが有効になるまでアクセ スされないと仮定している。無効データ(例えばB 5RC−14,0RV=O )をアクセスするための試みがな゛されると、制御回路1018はパルス信号P Rを発生する。このパルス信号PRはフリップ・フロップ1023のセット入力 端子Sに供給される。パルス信号PRが発生されると、フリップ・フロップ10 23の出力信号5DPAは論理lの値に変化する。この信号は休止(ポーズ)論 理240に供給されて、マイクロコードRAMおよびシーケンサ226によって ビデオ信号プロセッサを休止状態にする。この信号5DPAはさらにアンド・ゲ ー) 1025の一方の入力端子に供給され、その他方の入力端子は信号SDR を受信するように結合されている。もしSDR,5DPAの双方が論理lの値を もっていると、アンド・ゲート1025の出力信号SDPは論理lになる。この 信号は休止論理240を経てVRAM制御ユニット238に供給されて要求され た読出し動作の優先度を増加させる。信号SPDは統計的デコーダ2コ0からの 緊急読出し動作要求信号である。制御回路1018が信号ORLを休止してレジ スタ1016に保持された値を有効なものとしてマークすると、信号5DPAは 論理0になワて休止状態を解く。
上述の例は統計的デコーダ2コ0の内部動作を、1個の16ビツト出力値を生成 する場合について説明した。一般には、デコーダ230は一連のこのような値を 生成する。
このシーケンスの第1の値を生成するために、第10図に示す回路は上述のよう に動作する。一旦その値が出力レジスタ1016に転送されると、制御回路10 18は論理1の値を信号ENとして供給して、統計的デコーディング回路101 4を付勢す、次のデコードされた値を発生させる。第1のデコードされた値が出 力レジスタ1016からアクセスされると、信号ORVは論理値0をもつように 変化させられ、制御回路1018はパルス信号ORLを発生して第2の値をロー ドする。第1の値がアクセスされたとき第2の値がデコートされていないと、信 号RDYが統計的デコーディング回路によって論理1の値に変化されるまで制御 回路1018はパルス信号ORLを発生しない、この動作シーケンスは、マイク ロ制御語のB SRCフィールド中の15の値を使用して出力レジスタ1011 i中の値がアクセスされるまでくり返される。出力レジスタ1016中の値が、 そのB SRCフィールド中の15の値をもったマイクロコート制御語に応答し てアクセスされると、制御回路1016は信号ENの値を論理0に変化させるこ とによりて統計的デコーディング回路230の動作を終了させる。
デコーダ230で使用されるVRAMのアドレス値の14個のLSB位置に対す る新しい値が設定されるまでデータは統計的デコーダ230を用いてアクセスさ れることはない。
上述のデコーディング動作のいずれにおいても、必要に応じて32ビツトのデー タ値がV RA M 216からレジスタ1010に供給される。カウンタ10 20がそのときの32ビツト値のMSBが回路1014に供給されたことを示す 31の値をもつように増加されると、制御回路1018はパルス信号SRLを発 生してレジスタ101Oからの次の32ビツト値をシフトレジスタ1012に転 送して、カウンタ1020の値をリセットする。同時に制御回路1018はパル ス信号RDRを発生して、VRAM211iから次の連続する32ビツト値を要 求する。
カウンタ1020中の値が31に等しいとき、信号SDRの値が論理1であると 、レジスタ1010を満たすための読出し動作は未だ完了していないので、制御 回路1018はレジスタ1010からの値をレジスタ1012に転送することは できない、この例では制御回路101Bは信号ENを論理0の値をもつように変 化させ、デコーディング回路1014を非可動化する。要求された読出し動作が 完了すると、制御回路101Bはパルス信号SRLを発生してレジスタ1010 からの新しい32ビツト値をレジスタ1012に転送し、信号ENの値を論理1 に変化させ、パルス信号RDRを発生する。これらの信号は統計的デコーダ23 0を付勢して正規の動作を再開させ、V RA M 216から新しい32ビツ トの値を要求する。
第10B図は2個のデータ値がデコートされるときの制御回路1018によつて 生成される信号の相対的タイミングを示すタイミング図である。
第10A図および第10B図、さらに上述の説明から明らかなように、デジタル 処理回路の設計技術者にとっては統計的デコーダ230として使用するのに適し た回路を設計し、製作することは容易なことである。
入力FIFO232および234は、ビデオ信号プロセッサ210がそのピクセ ル処理素子を用いて処理するために、VRAM216用のランダムな8ビツトま たは16ビツト値を読出すようにし、あるいは一連の8ビツトまたは16ビツト 値を読出すようにする。ランダムモード、シーケンシャルモートのいずれの場合 も、マイクロコートRAMおよびシーケンサ回路226によりて実行されるマイ クロコート制Wi!命令はVRAM制御ユニット238に初期アドレス値を供給 する。選択された入力FIFOはVRAM制御ユニット238を経てV RA  M 216をアクセスし、マイクロコードRAMおよびシーケンサ226による 別の干渉なしに要求された1あるいは複数の値をバスB BL+Sに供給する。
例えばデータRA M 228によりて供給されたFIFO232、234に対 する開始ア1(レス値は、統計的デコーダ230に対するアト1/ス値が特定さ れる態様と同じ態様でVRAM制御ユニット23Bにおいて発生される。アドレ ス値の8個のMSB位置は、23および27の4値をもったマイクロコード制御 語のB DSTフィールドに応答して、バスB BUSを経由して各入力FIF O232および234に転送される。入力FIFO232および234用のアド レス値の14個のLSB位置は2マイクロコ一ド制御語のB DSTがそれぞれ 22および26の値をもつたとき、バスBBυSに供給される値の14個のM  S B位置から転送される。BDSTフィールドが22および26の値をもつと き、バスB Busに供給される値の2個のLSB位置は各入力FIFO232 および234内に記憶される。これらの2個のビットによって表わされる値は、 バスB Busに供給されるべき第1のバイトとしてVRA M 216によっ て与えられる4個のバイト値の特定のバイトをポイントする。
第11A図は入力FIFO232あるいは234のいずれかとして使用するのに 適した回路を示すブロック図である。以下ではFIFO232用の回路について 説明する。
入力FIFO234に関する説明をも含ませるために、FIFO232の説明と 異なる部分については、その変更部分を括弧書きした。第11A図に示す回路は 、入力FIFOがランダムモードで動作するようにセットされた正規動作シーケ ンスに関して説明されている。この説明の後にFIFOがシーケンシャルモート で動作するようにセットされたときに動作シーケンスの変更について説明されて いる。
シーケンスの第1のステップで、そのB DSTフィールドにおける21 (F  I FO234に対しては29)の値をもったマイクロコー1(制御語を使用 してB BUSに制御値を供給する。このB DST値に応答して、例えばA  L U 244によって供給される制御値はレジスタ1112にロードされる。
この例で使用される制御値は入力FIF0232をそのシーケンシャルモードと は対照的にそのランダムモートで動作させるようにし5バスB BUSに1!i ビツト値ではなく8ビツト値を供給する。
シーケンスの次のステップで、前述のようにVRAM制御ユニット238中でF IFO232内のアドレス値を設定する。FIF0232内のレジスタ1110 は22(26)の値をもったマイクロコート制御語のB DSTフィールドに応 答してバイト位置の値、すなわちバスB Busを経由して供給される16ピツ トアドレス値の2個のLSBをロートする。制御回路1116はまたこのB D STフィールドの値によって、入力FIFO232を初期状態にリセットし、V RAM読出し動作を開始させるように設定される。
このリセット動作では、制御回路1116はパルス信号COを発生してフリップ ・フロップ1134をリセットする。
信号CKの1周期の1/2の期間の後、制御回路1116はパルス信号PCを発 生して、レジスタ111Oからのバイト位置の値をカウンタ1128とフリップ ・フロップ1132にロートする。この動作信号CKの1周期1/2の期間後、 制御回路1116はフリップ・フロップ1133のセット入力端子Sに供給され るパルス信号IRを発生する。フリップ・フロップ1133によつて発生された 信号I FORは制御バスR/Sを経てV RA M 制御ユニット238に供 給され、該V RA M @m :t−= ット238をVRAM216中ノア ドレスされたメモリ位置に対する読出し動作を開始させるようにする。信号r  FORはまた制御回路1116に供給されて、読出し動作が進行中であることを 指示する。
VRAM制御ユニット238が読出し動作を処理し、またV RA M 216 が要求されたデータをバスD BUSに供給すると、VRAM制御ユニット23 8はバスR/Sを経て供給されるパルス状ストローブ信号I FSOを発生し、 バスD Busからの32ビツト値をロードするようにレジスタ1118を動作 させるようにする。信号I FO3はさらにフリップ・70ツブ1133のリセ ット入力端子Rに供給されて、フリップ・70ツブ1133の内部状態をリセッ トし、メモリの読出し動作が完了したことを示す信号I FORを論理値Oにリ セットする。
信号I FORが論理0になった後、信号CKの第1の周期の期間中、制御回路 1116はパルス信号LRを発生して、レジスタ111.8に保持された32ビ フトの値をレジスタ1120に転送する。レジスタ1120のビットは、それぞ れビット0〜7.8〜15.16〜23.24〜31を包含する4個の8ビット セグメントBO1Bl、B2、B3に分割される。8ビツトの値BO,Bl、B 2、B3はマルチプレクサ1124の6異なる入力ボートに供給される。マルチ ブレクサ1124はカウンタ1128によって、またはマルチプレクサ1130 によって供給される値によって制御されて、その入力に供給される4つの値の1 つを出力レジスタ1114の8個のLSB位置に供給する。
この例では、レジスタ1112中の制御値は、8ビツト値は出力レジスタ111 4によって与えられるものであることを示す、その結果、制御回路1116は信 号MXCとして論理値lをマルチプレクサ1126に供給する。信号MXCのこ の値は、マルチプレクサ1126がカウンタ1128に保持された値をマルチプ レクサ1124の制御入力ボートに供給する。第1のバイト位置の値であるこの 値は、マルチプレクサ1124がアドレスされたバイト出力レジスタ1114の 8個のLSB位置に供給するように動作させる。パルス信号LRの発生後信号C Kの次の連続する周期の間に、制御回路1116はパルス信号LLをおよびRH を発生し、マルチプレクサ1124によって供給された値をレジスタ1114の 8個のLSB位置にロードし、レジスタ1114の8個のMSB位置をリセット し、フリップ・フロップ1134をセットする。フリップ・フロップ1134は セットされるので、その出力信号Ovは、出力レジスタ1114の値が無効であ ることを示す論理1である。
この例に対する動作のシーケンスは、マイクロコードRAMおよびシーケンサ回 路226がB SRCフィールドが12の値(入力FIFO234に対しては1 3の値)をもつマイクロコード制御語を実行するとき完了する。レジスタ111 4に供給されたこの値はレジスタがその記憶された値をバスBBυSに供給する ようにする。制御回路1116はまたB SRCフィールドの12(13)の値 に応答してパルス信号COを発生し、またそれによりてクリップ・フロップ11 34をリセットして、出力レジスタ1114中の値を無効なものとしてマークす る。
制御レジスタ1112中の値が、16ビツト値がバスBBUSに供給されるべき であることを指示すると、制御回路1116は論理0の値を信号MXCとしてマ ルチプレクサ1126の制御入力端子に供給する。この制御値は、マルチプレク サ1126がマルチプレクサ1130によって供給される値をマルチプレクサ1 124の制御入力ボートに供給するように条件付ける。
マルチプレクサ1130はフリップ・フロップ1132の出力端子に結合されて いる。上述のように、フリップ・フロップ1132はレジスタ1110に記憶さ れたバイト位置の位のMSBにプリセットされる。この1ビツトの値はマルチプ ライヤ1130によって上位桁に向けて1ビツト位置シフトされる(つまり2倍 にされる)、従って、マルチプレクサ1124によって与えられる値は2か0の いずれかである。かくして、マルチプレクサはバイトBOあるいはB2のいずれ かを出力レジスタ1114の8個のLSB位置に供給する。
フリップ・フロップ1132の出力端子はさらにマルチプレクサ1122の制御 入力端子に結合されている。マルチプレクサ1122はレジスタ1120のB3 およびB1セクシBンに結合されている。クリップ・フロップ1132によって 与えられる値が論理0あるいは論理lであると、マルチプレクサ1122はレジ スタ1120の各BlまたはB3セクションに保持された値はレジスタ1114 の8個のMSB位置に供給する。16ビツトモートでは、制御回路1116は同 時にパルス信号LLおよびLM?:発生して1選択された8個のMSBおよび8 個のLSHの双方をレジスタ1114にロードする。この値がB SRCフィー ルド中の12(13)の値をもったマイクロコード制御語によフてアクセスされ ると、V RA M 21fiによって与えられる32ビツトの値の16個のM SBあるいは16個のLSBが読出されるようになる。レジスタ1110中に保 持されたバイト位置の値が1または3であると、それはそれぞれ0あるいは2と 解釈され、バイトBlまたはB2を含む16ビツトの値はこの発明の実施例で使 用される入力FIFO232および234によつて供給されない。
上述の例では、入力FIFOに供給される制御値は。
該入力F!FOをランダムモードで動作させるように設定する。このモードでは 、FIFOはアドレスされた値のみをバスBBυSに供給する。そのシーケンシ ャルモードでは、入力FIFO232および234は、VRAM216中の特定 されたアドレスを有する値から開始し、順次に連続してより大きな値に向って変 化する連続する値を供給する。シーケンシャルモードにおけるPIFO232お よび234の動作については、そのランダムモードにおける動作との違いについ て説明する。
ランダムモートとシーケンシャルモードの第1の相違点は、シーケンシャルモー ドでは、制御回路1116がパルス信号LRを発生して新しい32ビツトの値を レジスタ1120ニa−ドすると、該制御回路1116はV RA M 216 から次の新しい32ビツトの値を要求するためにパルス信号IRを発生する。
ランダムモードでは、カウンタ1128とフリップ・フロップ1132は、レジ スタ111Gに記憶されたバイト位置の値を保持するためのレジスタとしてのみ 使用される。シーケンシャルモードでは、カウンタ1tzaおよびフリップ・フ ロップ1132は、レジスタ1120からの連続する8ビツトあるいは16ビツ トの値をそれでれ出力レジスタ1114に順次供給するために使用される。カウ ンタ1128はプリセット値入力ボートおよびプリセット入力端子をもった通常 の2ビツト2進カウンタである。プリセット入力端子に供給されるパルス信号が 発生すると、カウンタ1128は、そのプリセット値入力端子に供給される値を その内部値としてロードするように設定される。フリップ・フロップ1132は 通常のトリガ形式あるいはTフリップ・フロップである。このフリップ・フロッ プはプリセット値を有し、入力端子に供給される信号によって上述のように動作 するように設定されるプリセット入力端子をもっている。制御回路1116によ って発生されるクロック信号CCにはカウンタ1128およびフリップ・フロッ プ1132の双方のクロック信号入力端子に供給される。クロック信号CCKの 連続するパルスに応答して、カウンタ1128はその値CVを値0.1.2.3 を経て循環させる。フリップ・フロップ1132は信号CCKの連続するパルス に応答して、その内部の状態を0と1との間で変化させる。この発明の実施例で は、入力FIFOがそのシーケンシャルモートにあるとき、信号CCKは信号L Lと同じであり、FIFOがそのランダムモートにあるときは、信号CCKは一 定の論理0値を持つ、その結果、値が出力レジスタ1114にロードされるや否 や、カウンタ1128あるいはフリップ・フロップ1132は、マルチプレクサ 1122および1124を1次のシーケンシャル値をレジスタ1114の入力ボ ートに供給するように設定する。新しい値が出力レジスタ1114にロートされ る毎に該レジスタ1114の入力ボートに供給される値は変化するので、レジス タ1114中の値がバスB Busに供給されるや否や上記の供給された値は出 力レジスタにロートされる。
カウンタ1128の出力値CVは制御回路1116に供給される。この制御回路 1116はこの信号をモニターして、レジスタ1118からの32ビツト値を何 時レジスタ1120に転送すべきかを決定する。レジスタ1112中に保持され た制御値が、入力PIFO232がその8ビツトモードで動作していることを指 示すると、制御回路1116はパルス信号LRを発生して、信号Cvの値が3か ら0に変化すること(すなわち信号CvのMSBが1からOに変化するとき)と 一致してレジスタ1118からの32ピッ1−値をレジスタ1120に転送する 。入力FIFOが16ビツト・モートで動作しているとき、信号CVの値が1か ら2.あるいは3から0に変化すると(すなわち信号CにのLSBが1から0に 変化すると)、制御回路1116はパルス信号LRを発生する。
上述の例では、VRAM制御ユニット238およびVRA M 216は定常ス トリーム中で入力FIFO232および234に32ビツトデータ値を供給する ものと仮定している。信号Cvの値が3からOに変わるとき、このストリームが 遮断されるべきであり、また、例えば信号IFORが読出し動作が進行中である ことを示す論理値lの値をもっていると仮定すると、制御回路1116はパルス 信号LRを発生しない、この例では、信号IFORが、要求されたVRAMの読 出し動作が行なわれ、従ってレジスタ1118が有効なデータを含んでいること を示す論理Oの値に変化するまで回路1116はその初期状態を凍結する。
信号X FORが0になると、制御回路1116はその動作を再開する。
制御回路1116の内部状態が凍結されている間、レジスタ1114の内容をバ スB Busに読出す要求を受信すると(すなわち、B 5RC−12)、制御 回路1116はフリップ・フロップ1135のセット入力端子Sに供給されるパ ルス信号IPを発生する。この動作によりクリップ・フロップ1135によって 供給される信号I FOPAの状態を論理lに変化させる。信号I FOPAは 休止論理回路240に供給され、該休止論理回路240はマイクロコードRAM およびシーケンサ回路21Gを休止状態にするように設定する。第3A図を参照 して前に説明したように、クロック信号CKAおよびCK、は休止状態で無効状 態にされて、データバス回路242 、 A L U244 、データRA M  228およびビクセル補間器246の内部状態を有効に凍結する。信号I F OPAおよび信号I FORはANDゲート1136の入力端子に供給される。
これらの信号の両方が、読出し動作が要求され、プロセッサ210が入力FIF O232からの値を持つ休止状態にあることを示す論理lの値をもっていると、 ANDゲーhl136の出力信号I FOPは論理1に変化する。信号IFOP は休止論理240を経てVRAM制御ユニット2コ8に供給される。信号I F OPに対する論理1の値は、緊急要求すなわち優先度が高くなったものとしてF IFO232に対する読出し要求動作を処理するようにVRAM制御ユニット2 38を設定する。読出し動作が完了すると、@号I FO3はフッリプフロップ 1133をリセットし、信号I FORおよびI FOPを論理0の値に変化さ せる。レジスタ111Bからの要求値が出力レジスタ1114に伝播されると、 制御回路1116はフリップ・フロップ1134をセットし、その出力Ovはク リップ・フロップ1135をリセットしてプロセッサ回路210をその休止状態 から解放する。
第11B図は入力FIFO232の2個の連続する8ビツトデータ要求に対して 制御回路1116によって発生された信号の相対的タイミングを示すタイミング 図である。
出力FIFO236は入力FiFO232および234によって実行された機能 と木質的に反対の機能を実行し、該出力FIFO236は5ビデオ信号プロセッ サ210のビクセル処理素子から一度に1パイ1〜あるいは2バイトのデータを 受入れ、このデータを32ビツトのブロックに形成して、このブロックをV R A M 216に転送する。出力FIF0236は、1個の8ビツトまたは16 ビツ1−のデータの値が与えられたアドレス値を使用してVRAMH6に書込ま れるランダムモートと、一連の8ビツトまたは16ビツトのデータの値が連続的 に増加するアIり1/ス値を使用して書込まれるシーケンシャルモートの2つの 動作モードもりている。
ランダム転送のために使用されるアドレス値あるいはシーケンシャル転送のため に使用される開始アドレス値は、統計的デコーダ230と入力FIFO232お よび234とについて前に説明した態様と同じ態様でVRAM制御ユニット23 8中で設定される。8個のMSB用に使用されるB DSTフィールドの値、2 2ビツト・アドレス値の14個のLSBはそれぞれ15.14である。B DS Tが14のとき、バスB Busに供給される16ビツトの値の2個のLSBの 位置の値は出力PIFO236内部のレジスタに記憶される。この値は、VRA M216に供給された32ビツト(4バイト)の最下位バイト、あるいは書込ま れるべき唯一のバイトとなる特定のバイト位置をポイントする。出力FIFO2 36およびVRAM制御ユニット238は、VRAM215に書込まれない32 ビツト値中の他のバイト位置に対応するVRAM216中のデータの劣化を防止 する回路な含んている。
第12A図は出力PIF0236として使用するのに適した回路を示すブロック 図である。この回路は、予め定められたアドレス値を使用して1個の8ビツト値 がVRAM216書込まれるべきランダムモードにおける正規の動作シーケンス について示されている。この説明の後に。
FIFOがランダムモードの代りにシーケンシャルモードで動作し、8ビツト値 の代りに16ビツトのデータ値が使用されるときの出力FIFOの動作の相違点 について説明されている。
VRAM216のランダム位置に1バイトのデータを書込む動作シーケンスの第 1ステツプは、出力FIFOをランダムモートで動作させ、8ビツトの入力値を 持つように設定する出力PIFO236に制御値を供給することである。この発 明の実施例ではB DSTフィールドの13の値をもったマイクロコート制御語 に応答して、例えばA L U 244によって2ビツト制御語がバスBBυS に供給される。マイクロコード制御語B DSTフィールドはバスMCWを経て 制御レジスタ1212に供給される。レジスタ1212は13の値をもワたマイ クロコード制御語のB DSTフィールドに応答して、出力FIFO236用の 値としてバスB Busの2個のLSB位置によって伝達される値をロードする 。
出力FIFO236の内部の制御回路1216はまたBDSTフィールド中の1 3の値に応答して、レジスタ1220中に保持されたデータをV RA M 2 16に転送する書込み動作を開始させる。このデータは先のデータ出力動作から のデータの最後の部分的ブロックである。
フリップ・70ツブ1232によって与えられる信号OFRが、FIFO236 用のメモリ書込み動作が進行していないことを示す論理0の値をもっていると、 制御回路121Bはパルス信号LORft発生し、レジスタ1220中の値を出 力レジスタ1218に転送し、またラッチ1228に保持された4ピツトバイト マスクを4ビツトレジスタ1230に転送する。制御回路がパルス信号LORを 発生して信号CKの1周期の1/2の期間の後、制御回路1216はフリップ・ フロップ1232の入力端子Sをセットするために供給されるパルス信号WRを 発生する。この動作は、フリップ・フロップ1232によって与えられた信号O FRの状態を論理1の値に変化させる。
信号OFRはバスR/Sを経てVRAM制御ユニット238に供給される。信号 OFRからの論理lの値は、FIFO236に対するVRAM制御ユニットに保 持されたアドレス値を使用して、またレジスタ1218中に保持された32ビツ トのデータ値を使用して、VRAM書込み動作用の要求としてVRAM制御ユニ ット238によって解釈される。レジスタ1230中のバイトマスクはバスCA SMを経てVRAM制御ユニット238に供給される。このマスクVRAM制御 ユニット238中で使用されて、VRAM218を、バイトマスク信号CASM に応答するバイト位置をもったレジスタ1218中のこれらのバイトのみ、すな わちレジスタ1220にロードされたとき制御回路1216によって有効である としてマークされたこれらのバイトのみを記憶するように動作させる。バイトが 有効であるとマークされる方法、VRAM制御ユニット238における信号CA SMの使用態様については以下に説明する。
制御回路1216がパルス信号WRを発生すると同時に、ラッチ1228中の4 個の7リツプ・フロップの各々のリセット入力端子凡に供給されるパルス信号R Mを発生する。この信号はラッチ1228中のフリップ・フロップFFO乃至F F3をリセットし、各バイト位置BOないしB3の値を無効としてマークする。
上述のように、制御ユニット1216は、もし信号OFRが0であるならば書込 み動作を開始させる。制御レジスタ1212中の値が変化するとき信号OFRが 論理0であると、VRAM制御ユニット238によって与えられる信号OFSが 要求されたメモリ書込み動作が行なわれたことを示すまで制御回路1216はそ の初期動作を凍結する。信号OFSはレジスタ1218の出力可動化端子OEに 供給され、このレジスタ1218をその記憶された値をバスDBUSに供給する ように動作させる。信号OFSが論理lをもっている間、レジスタ1218のデ ータ中のデータはVRA M 216に転送される。信号OFSはまたフリップ ・フロップ1232をリセットし、信号OFRの値を論理Oに変化させる。制御 回路1216は論理0の値をもつた信号OFRに応答してその正規の動作を再開 させる。
電源がビデオ信号プロセッサ210に供給された後、誤りたデータが第1の出力 FIFOの要求によってVRAM 216に書込まれるのを防止するために、フ リップ・フロップ1228は例えば通常の電源オンリセット回路によって論理0 の初期値をもつように設定される。後述のように、これらの7リツプ・70ツブ 中の論理Oの値は、レジスタ1220からのデータがVRAM216に書込まれ るのを防止する。
先の読出し動作からのデータはレジスタ1220からレジスタ1218に転送さ れ、メモリ読出し動作が行なわれると、ここに述べた代表的なランダム出力動作 用のアドレス値が特定される。この動作は上述されている。バイト位置レジスタ 1210はB DSTフィールド中の14の値に応答して、バスB Busの2 個のLSHによつて伝送された値をロードする。上述のように、この値はレジス タ1220のどのバイト位置BO,B1、B2あるいはB3が供給されたデータ 値を保持するかを指示する。
制御回路1216はB DSTフィールド中の14の値に応答してパルス信号O pCを発生し、バイト位置レジスタがロードされて信号CKの1周期の172の 期間の後。
2ビツトカウンタ1226の初期値としてバイト位置の値を設定する。この値は 信号OCVとして制御回路1211iに供給される。パルス信号OPCの発生と 同時に制御回路1211iはパルス信号LRを発生して、フリップ・フロップ1 234をセットし、入力レジスタ1214中のデータを無効としてマークする。
クリップ・フロップ1234の出力信号lNVは制御回路1216に供給されて 、バスB BLJSからのデータがレジスタ1214にロード可能であることを 指示する。
代表的動作シーケンスの次のステップは8とットデータ値を出力FIFO231 iに供給することである。このステップは、マイクロコード制御語がB DST フィールド中の20の値をもっときに生ずる。BDSTフィールド中のこの値は 、例えばALυ244によりて供給され。
バスB BUSによって伝送された16ビツトの値をロートするようにレジスタ 1214を設定する。制御レジスタ1212中の値は、8ビツトの値がプロセッ サされるべきことを指示するので、レジスタ1214中の値の8個のLSB位置 の値のみが関連する。ある値がレジスタ1214にロードされると、制御回路1 21Bはフリップ・フロップ】234のリセット入力端子に供給されるパルス信 号Coを発生する。この動作によって信号INVの状態を論理0に変化させ、入 力レジスタ1214中に保持された値を有効なものとしてマークする。
入力レジスタ1214の8個のLSB位置は、レジスタ1220のビット位置0 −7(バイト位置BO)および16−23(バイト位置B2)に直接結合され、 また3状態ゲート1224を経てレジスタ1220のビット位118−Is(バ イ1−位置Bl)および24−31 (バイト位置B3)に結合される。入力レ ジスタ1214の8個のMSB位置は3状態ゲー)−1222を通ってレジスタ 1220のバイト位11B1およびB3に結合される。3状態ゲート1222お よび1224は制御回路1216によって発生される各信号υBEおよびLBE によりて制御される。この発明の例においては、レジスタ1212中の制御値が 出力PIFO236が8ビツトの値を処理する状態にあることを指示すると、制 御信号UBEは、3状態ゲー)−1222の出力ボートのインピーダンスが高イ ンピーダンスを呈するように該3状態ゲート1222の動作を設定し、また、制 御信号LBHは、3状悪ゲート1224がそのデータ入力をその出力ボートに、 従って1/ジスタ122Gのバイト位置B1およびB、に供給するように上記3 状態ゲート1224の動作を制御する。従って、この例ては、レジスタ1214 の8個のLSB位置は1/ジスタ122Gのバイト位置BO乃至B3の各々に結 合される。
制御回路1216はまたB DSTフィールド中の20の値に応答する。この値 が検出されて信号CKの1周期のl/2の期間の後、制御回路1216は信号L RO1LRI、LR2またはLR3のうちの1個のパルス信号を発生し、レジス タ1214からの8ビツト値をレジスタ1220のバイト位置の1つにロー1− シ、ラッチ1228中の各フリップ・フロップFF01FFI、FF2あるいは FF3をセットすることによフて有効データを含むものとして選択されたバイト 位置をマークする。同時に、制御回路1216はパルス信号LRを発生して、入 力レジスタ1214に保持されたデータを無効であるとマークする。選択された レジスタ1220中のバイト位置は、カウンタ1226によって発生された信号 OCvによって決定される。この例では、この信号すなわちカウンタ1226の 出力信号はレジスタ1210に保持されたバイト位置の値と同じである。
出力PIF0236に供給された1バイト・データ値がレジスタ122[1中の バイト位置の1つを占める。この値は、新しい制御値が前述のようにレジスタ1 212に供給されるとV RA M 216に書込まれる。
上述の例では、出力PIF023Bに供給された初期制御値は、該PIFO23 6をそのランダムモートで動作するように設定する。上記の動作状態とは違って 、シーケンシャルモートが使用されることを制御値が特定するならば、上述の例 はバイト転送動作のシーケンスの最初のもののみについて説明することになる。
シーケンシャルモードでは、カウンタ1226によって保持された値は信号CC Kのパルスによって増加される。この発明の実施例ては、出力PIF0236か そのシーケンシャルモード動作するようにセットされると、制御回路1216は 、パルス信号LRO乃至LR3の1つを発生すると、信号CCKを発生する。
シーケンスの第2のバイトかレジスタ1214に供給されると、増加した計数値 をもった信号OCVは制御回路1216が信号LRO2LRI、LR2またはL R3の次のものを発生し、従りて、入力バイI−をレジスタ1220の次のバイ ト位置BO1Bl、B2またはB3の各々にロードする。カウンタ1226は2 ビツトカウンタであるので、該カウンタ1226はモジュロ4出力値、すなわち 偵0゜l、2.3,0.1・・・・等を発生する。
カウンタ値OCVが3から0に増加すると、レジスタ1220の最後のバイト位 !B3が充満される。制御回路]216はパルス信号LORを発生し、レジスタ 122o中のデータをレジスタ1218に転送し、またパルス信号WRを発生し 、V RA M fljJil−Lニット238 ニよッY: し’) ス’3 1218中に保持されたデータ用のVRAM書込み動作のスケジュールを作る。
信号OCvが3から0に変化したとき、信号OFRが、書込み動作が進行中であ ることを示す論理1の値をもつと、制御回路1216は信号LORを発生しない 、しかし、V RA M rfJ制御ユニット238によって供給された信号O FSがフリップ・フロップ1232をリセッ1〜し、信号OFRの状態を論理O に変化させるまで、その内部状態を凍結する。
フリップ・フロップ1234によって供給される信号INVがレジスタ1214 中のデータは有効であること(すなわち、未だレジスタ1220へ転送されてい ない)を示してぃる時に、バスB Busからレジスタ1214にデータを転送 しようとすると、制御回路1216はパルス信号oPを送ってフリップ・フロッ プ1233をセットし、このフリップ・フロップ1233が生成する信号0FP Aを休止論理240に送ることによって、回路210を休止状態にする。信号0 FPAは、ANDゲート1231iニよッテ信号OFRと論理的にAND処理さ れて信号OFFを生成する。この信号OFFは休止論理240を介してVRAM 制御ユニット238に印加される。この信号はそのとき進行中のVRAM書込み 動作の優先順位を上げる。この書込み動作が完了すると、VRAM制御ユニット 238は、パルス信号OFSを発してクリップ・70ツブ1232なリセットし 、信号OFRとOFFの値を論理0に変える。
信号OFRの値の論理lから論理0への転換に応じて、回路1216はパルス信 号LORを発して、レジスタ1220中の値をレジスタ1218中にロードし、 またラッチ1228の値をレジスタ1230中にロードする0次に制御回路12 16はパルス信号WRを発してVRAM書込み動作を要求する。信号CKの2分 の1周期後、制御回路1216はパルス信号LORを発し、これがパルス信号R Mを発してラッチ1228のフリップ・70ツブFFO,FFI、FF2および FF3をリセットする。動作シーケンス中のこの時点で、出力PIFO236は 次の入力データ・バイトを受取りそれをレジスタ1220のバイト位置BOに記 憶するように調整される。従りて、制御回路1216はパルス信号LRO中の1 つのパルス信号を発生し、LR3を介して、レジスタ1214中に保持されてい た値をレジスタ1220の対応するバイト位置BO乃、至B3φにロードする。
これと同時に、制御回路1216はパルス信号LRを発してフリップ・フロップ 1234をセットして入力レジスタ1214中の値を無効とマークし、信号IN Vを通してフリップ・フロップ1233をリセットし処理器210をその休止状 態から解放する。
出力PIFO236の動作のこの最後の変形はI6−ビットのデータ転送である 。このモートて、この出力FIFOは、バスB Busから16−ビット値を受 取り、それをV RA M 216中にランダムにまたは順次的に書込む。
この出力PIF0236は制御レジスタ1212中ヘロートされている制御値に によって16−ビットのデータ転送モードにされる。出力FIFOがこのモード のときは、制御回路1216によつて供給される信号UBEは3状態ゲート12 22を調整して、レジスタ1214の8個のMSB位置にある値をレジスタ12 20のビット位置Blと83に印加する。信号LBHは、このモードで、3状態 ゲート1224がその出力ボートを高インピーダンスとするようにする。
この16−ビット転送モードでは、レジスタ1zlO中のバイト位置値のMSB はカウンタ1226のLSBにロードされ、制御回路1211iは信号OCvの LSBのみに応動する。このビットが0でデータ値がレジスタ1214中にロー ドされると、制御回路はパルス信号LRO1LRIおよびLRを発して16−ビ ット値をレジスタ1214から1220のバイト位置BOとBlに転送してラッ チ1228中のフリップ・70ツブFFOとFFIをセットし、レジスタ121 4は無効データを持っているものとしてマークする。また、信号OCVのLSB が1のときは、制御回路1216はパルス信号LR2,LR3、およびLRを発 して16−ビット値をレジスタ1220のビット位置B2とB3に転送して、ラ ッチ1228中のフリップ・フロップFF2とFF3をセットし、レジスタ12 14は無効データを持っているものとしてマークする。制御回路1216は信号 OCvのLSBの値の1から0への転換に応じて、レジスタ1220中に保持さ れているデータをレジスタ1218へ転送しかつVRAM書込み動作をスケジュ ールする。
第12B図は、出力PIFO236を介して行なわれる5つの順次単一バイト・ データ転送の相対的タイミングを示すタイミング図である。
この発明のこの実施例で使用している休止論理240は2個のORゲート(図示 せず)を持っている。入力信号SDP、IFOP%IFIPおよびOFPがその 第1ゲートに印加され、同ゲートは出力信号UREQを発生する。信号UREQ は、次に説明するようにVRAM制御ユニット238に印加されて、統計的デコ ーダ230、入力FIFO2コ2と234または出力PIF0230のうちの1 つが急いでメモリ動作することを要求している旨を示す、信号SDP、IFOP 、IFIPおよびOFFもバスυRを介してVRAM制御ユニット238に供給 される。
第2のORゲートに対する入力信号は、語信号5DPA、IFOPA、IFIP Aおよび0FPAとVRAM制御ユニット238から供給される信号VCUPA である。第2ORゲートの出力信号は信号PAUSEで、前述したようにマイク ロコードRAMとシーケンサ回路226に印加される。
第13A図と第13B図とはVRAMlIJill1M238として使用するに 適した回路を示すブロック図を構成している。上述したように、VRAM制御ユ ニット238は、マイクロコード制御語のB DSTフィールドに応答する回路 を有し、これは統計的デコーダ230、入力FIFO232と234オよび出力 P I F0236 ニ対す!VRAM7ドレス値を記憶する。更に、VRAM 制御ユニット238は1表示器用プロセッサ218にビクセル値を生成するのに 使われるビット・マツプ・アドレスと、VRAM216が使用するダイナミック ・ランダムアクセス・メモリ回路の内容を周期的に復元(リフレッシュ)するの に使用されるリフレッシュ・アドレスを記憶するための回路を持9ている。VR AM制御ユニット238は、また、統計的デコーダ230、入力FIFO232 と234および出力PIF0236が発生したメモリ読出し信号とメモリ書込み 信号に応答して表示器用プロセッサ218に対する要求信号を読出し、圧縮され たビデオ信号212の源に対する要求信号を書込み、また内部で発生したリフレ ッシュ要求信号に応じて種々の要求されたメモリ動作を開始してそれらが適切に 完了したことを表示するように働く回路を持りている。
種々のアドレス値を記憶する回路は制御回路1310によって制御される。この 回路1310は、クロック信号CK’、バスMCWによって供給されるマイクロ コード制v4語のB DSTフィールド、および下記するようにマルチプレクサ 1378によフて供給される装置選択値、信号源222によって供給される垂直 フィールド同期信号vSに応動する。制御回路131Oは2主として、種々の装 置に対するアドレス値のローディングの制御を行なう。
統計的デコーダ230用のアドレス値、たとえばBDSTフィールドにおいて値 31を有するマイクロコート制御語をロードするには、ビデオ信号処理器210 中の他の回路たとえばA L U 244をB SRCフィールド中のある一つ の値を介して制御しくコンディション)て、それがそのアドレス値の8個のMS BをバスB Busに印加されるある値の8個のLSBとして供給するようにす る。BDSTフィールドの値31に応じてこの制御回路1310は、信号CK’ の1周期に亙りl対のマルチプレクサ1コ12と1316に信号STMとして論 理lの値を印加する。この信号によって、マルチプレクサ1312は、バスB  Busから送られた8ビツト値をレジスタ1314の入力ボートに供給するよう にされる。信号STMが論理lの値な持っている間、制御回路1310はパルス 信号5THLを発生し、レジスタ1314が自己の入力ボートに印加されたその 値をロードするようにする。
次の命令サイクルでは、そのB DSTに値30を有するマイクロコード制御語 によって、制御ユニット1310は、信号CK’の1周期間にわたり論理1の値 をもった信号STMを保持しパルス信号5TLLを発生するようにされる。これ らの信号の組合せによりて、マルチプレクサ1315はバスB Busの14M  S B位置によって伝えられた値を14ビツト・レジスタ1318の入力ボー トに供給するように制御され、またレジスタ1318はその入力ボートに印加さ れた値を記憶するように制御される。このレジスタ1314と1318に保持さ れた値は、マルチプレクサ1356の入力ボート0に印加される22ビツトのア ドレス値を形成するように連結される。
入力FIFO232と234および出力PIFO236に対するアドレス値の記 憶動作のシケーンスのタイミングは統計的デコーダ230に対するアドレス値の 記憶動作のシーケンス・タイミングと同じである。入力FIFO232に対する アドレス値の記憶には、制御回路1310により供給される信号I FOMによ って、マルチプレクサ13zOと1324を制御して、アドレス値の8個のMS Bと14個のしSBを、それぞれレジスタ1322と1326に印加させるよう にする。レジスタ1322と1326は、各々その入力ボートに印加された値を 、制御回路1310によって供給される信号I FOHLおよびI FOLLに 応じてロードする。マルチプレクサ1320と1324.およびレジスタ132 2と1326は。
マルチプレクサ1312と1316およびレジスタ1314と1318にそれぞ れ対応している。信号IFOM、IFOHLおよびI FOLLは信号STM、 5THLおよび5TLLにそれぞれ対応する。I FOLLとIFO)(Lは2 2と23というB DST値によってそれぞれ付活される。この両値は信号IF OMを付活する。
マルチプレクサ1328と1332およびレジスタ1330と1334は、それ ぞれマルチプレクサ1312と1316およびレジスタ1314と1318と同 一構成を持っている。これらのマルチプレクサおよびレジスタは、制御回路13 10によって供給される信号IPIM、IFIHLおよびIHILLに応動して 22−ビットのアドレス値を入力FIFO234にロードする。この値の8個の MSBは、B DSTフィールドの値が27であればレジスタ1330にロート され、B DSTフィールドの値が26であればレジスタ1334にロードされ る。
出力FIFD236のアト1/ス値は、制御回路1310により発生した信号O FM、0PHLおよび0PLLに応じて、各マルチプレクサ1336と1.34 0を介してレジスタ1338と1342にロートされる。上記の信号は前記の各 信号STM、5THLおよび5TLLに対応している。制御回路1310は、B  DSTフィールドが値14を有するときはパルス信号OFMと0PLLを発生 してこのアドレス値の14個のLSBを1/ジスタ1342にロードし、B D STフィールドの値が15のときは、パルス信号OFMと0PHLを発生してこ のアドレス値の8個のMSBをレジスタ1338中にロードする。各レジスタ対 1322と1326.1330と1334、および1338と1342中に保持 されている値を連続することによって形成された22−ビットのアドレス値はマ ルチプレクサ1356の各入力ボートl、2.3に印加される。
統計的デコーダ230に対するアドレス値をバスする各マルチプレクサ1312 と1316の第2人力ボートは、入力FIFO232と234および出力P I  F0236 ニ対すルアドレス値をバスする対応マルチプレクサ対の第2人力 ボートと同様に、加算器1392の出力ボートに結合される。下記するように、 この加算器1392は増加(インフレメンチット)アドレス値を供給する。
この増加したアドレス値は、統計的デコーダ230、入力FIFO232と23 4および出力FIFO231iに対すると同じ様に使用される0次に、統計的デ コーダ230での使用についてだけ説明する。増加したアドレス値の8個のMS Bはマルチプレクサ1312の第2人力ボートに印加され、14個のLSBはマ ルチプレクサ1316の第2人力ボートに印加される。信号STMが論理Oの値 を持っているときは、マルチプレクサ1312と1316は、これらの偵をアド レス・レジスタ1314と1318の入力ボートにそれぞれバスするように制御 される。統計的デコーダ230のメモリ読出し動作が進行している間、制御回路 1310はパルス信号5THLと5TLLを発生してこの増加したアドレス値を レジスタ1314と1318にロードする。もし、統計的デコーダ230が順次 モードで動作するようにセットされているか、デコーダ230がそのランダム・ モードで動作するようにセットされているときもし第2の32ビツト値をV R A M 216が要求すれば、この増加したアドレス値は統計的デコーダ230 の次のメモリ読出し動作を行なうために使用される。
加算器1392の出力ボートは更に22−ビット・レジスタ1346の入力ボー トに結合されていて、このレジスタはVRA M 216のメモリ・リフレッシ ュ動作を行なうために使用されるアドレス値を保持する。レジスタ1346の出 力ボートはマルチプレクサ1356の入力ボート5に結合されてシ)る、リフレ ッシュ・アドレス・レジスタ1346から供給される値はあるサイクルで変化し 、4ミリ秒ごとにVRA M 216中の各行(ロウ)をアドレスする。この発 明のこの実施例では、このリフレッシュ動作はVRAM制御ユニット238の内 部にある下記の回路によりて制御される。
この実施例で使用されるVRAM制御ユニット238に保持されているこの最後 のアドレス値はビット・マツプ・アドレスである。このアドレス値は、たとえば BDST値がそれデれ19と18である2つの別々のマイクロコード制御語に応 じて各パルス制御信号BMHLとBMLLを発生することによフエ、レジスタ1 348と1350中に書込まれる。このレジスタ1348と1350中に書込ま れたアドレス値は、圧縮されたビデオ信号212の信号源により生成された、画 像の圧縮表現から、ビデオ信号処理回路21Gにより発生されたルミナンス信号 ビット・マツプの開始アドレスである0表示器用プロセッサ218のデータのア クセスに使用されるこのビット・マツプ・アドレス値はレジスタ1354中に保 持される。レジスタ1348中の8−ビット値とレジスタ1350中の14−ビ ット値とを連結して得られた22−ビット・アドレスは、信号源222から供給 される垂直フィールド同期信号vSのパルスに応じてレジスタ1354中にロー ドされる。正規動作モードでは。
ビデオ信号処理器210は、信号vSの2パルスごとに1回ずつレジスタ134 8と1350中に新しいビット・マツプ・アドレス値をロードする。従って各ビ ット・マツプは動きのあるビデオ情景を再生するために2回表示される。
レジスタ1348と1350の内容は次のようにしてレジスタ1354に転送さ れる。信号vSのパルスと同時に、制御回路1310は信号BMMの状態を信号 Cにの一周期中論理1に変更する。これによってマルチプレクサ1352は、レ ジスタ1348と1350中に保持されているアドレス値をレジスタ1354の 入力ボートに印加する。信号BMMが論理l状態にある間に制御回路1310は パルス信号BMLを発してレジスタ1354がその入力ボートに供給される値を ロードするようにする。レジスタ1354に保持されたこの値はマルチプレクサ 1356の入力ポートロに印加される。
信号BMMが論理0状態にあるときは、マルチプレクサ1352は加算器139 2から供給された22−ビットの増加されたアドレス値をレジスタ1354の入 力ボートに供給するようにされる0表示器用プロセッサ218のメモリ読出し動 作中、制御回路1310はパルス信号BMLを発し、またこの信号BMMを論理 O状態に保持して、増加されたビット・マツプ・アドレス値をレジスタ1354 にロードして1表示器用プロセッサ218の次の読出し動作の用意をする。
その時のアドレス値が増加されつつある間に、統計的デコーダ230、入力FI FO232と234、および出力FIFO236のうちの1つに対する新しいア ドレス値のロードを行なおうとすると、VRAM制御ユニット238中に混乱( コンフリクシ纏ン)が生ずる可能性がある。この混乱は、新しいアドレス値がロ ードされ、次に加算器1392から供給される増加された以前のアドレス値がそ の上に書込まれると、発生する。混乱の可能性が検出されると、制御回路131 0は信号VCUPAの状態を論理lに変更し、一方アドレス値は増加されレジス タ対1314と1318、 1322と1326、lココ0と1334または1 338と1342のうちの1つに記憶される。この信号は、休止論理240に印 加されてプロセッサ210を増加されたアドレス値が記憶されてしまうまで休止 状態とする。制御回路1310は、この混乱の可能性がある場合、すなわち上記 レジスタ対の1つにデータを記憶させようとする試みが増加されたアドレス値を 記憶させようとする試みと同時に生じたとき、のみプロセッサ210を休止させ る。
アドレス・ロード動作のタイミング関係を例示するものとして、第13C図は、 統計的デコーダ230に対して最初のアドレス値と増加されたアドレス値がロー ドされるとき制御回路1310によって生成され幾つかの信号のタイミング図を 表わしている。
次に述べるように、各装!1230 、232%234および236は、正規メ モリ要求または緊急メモリ要求を発生することができる。VRAM制御ユニット 238は、一般にラウントロピンと呼ばれる繰返しシーケンスで各装置の正規メ モリ要求信号を処理する。各装置230 、232.234および236はすべ て実質的に同等の優先度を有するものとして取扱われる。
装置230.232 、234および236によって発生した緊急メモリ要求動 作は第2のスケジューリング機構によって取扱われる。この第2のスケジューラ は、また、リフレッシュ動作、圧縮されたビデオ源212からの書込み動作、お よびプロセッサ218のビット・マツプ読出し動作も取扱う、このスケジューラ は成る固定的な優先度計画に従9て動作する。ビット・マツプ読出し動作は最高 の優先度を有し、以下優先度が順番に低下する形で、リフレッシュ動作、圧縮さ れたデータ書込み動作、出力PIF O236に対する緊急メモリ書込み動作、 入力PIFO234と232に対する緊急メモリ読出し動作、および統計的デコ ーダ230に対する緊急読出し動作の順に続いている。スケジューリングと上記 の開動作の開始を制御する回路については次に説明する。
上述のようにメモリ要求信号OFR,IFIR,IFORおよびSDRはバスP /Sを介してVRAM制御ユニット238に印加される。第13A図と第13B 図において、それらの信号はバスR/Sによって伝えられる他の信号から分離さ れてバレルシフタ1360に印加される。バレルシフタ1360では、4−”! ?’ット要求信号が循環シフタ1362、マルチプレクサ1364の1入力ボー トとに印加される。シフタ1362は゛、この4−ビット要求信号の3傭のMS Bを1ビット位置だけ下位に向けてシフトし、かつ4−ビット要求信号のLSB を出力信号のMSB位置にシフトする。シフタ1362の出力信号はマルチプレ クサ1364の第2の入力ポートに印加される。マルチプレクサ1364によっ て供給される信号は循環シフタ1366と、マルチプレクサ1368の1入力ボ ートとに供給される。@環シフタ1366は、その入力値の2個のLSBと2個 のMCBの位置を入換えて、マルチプレクサ1368の第2人力ボートに印加す る出力値を生成する。マルチプレクサ1364と1368はレジスタ1376か ら供給される2−ビット信号のそれぞれ下位ビットと上位ビットとにより制御さ れる。値0゜二、2または3を有するこの信号に応じて、バレルシフタ1360 は0.l、2または3ピッ1〜位置をそれぞれ下位のピット位置へ循環シフトさ せる作用を行なう。
バレルシフタ1360から供給される出力信号は4−ビット優先度デコーダ13 70に印加される。優先度デコーダ1370の出力信号は、その入力ポートに印 加された値の最上位の1の値をもつビットのビット位置番号0.1.2または3 である。たとえば、4ビツト入力の値が0101であったとすれば優先度デコー ダ1370の出力値は2になる。それはlの値を宥する最上位ビットがピット位 置2にあるからである。優先度デコーダ1370の出力信号はレジスタ1372 に印加され、このレジスタは制御回路1310から供給される信号CCにに応じ て入力ポートに印加された上記の値をロードする。
レジスタ1372中に保持された値は2−ビット加算器1374の1つの入力ポ ートに供給される。加算器1374の出力ボートは2−ビット・レジスタ137 6の入力ポートに接続されている。レジスタ1376の出力ボートは、バレルシ フタ1360と加算器1374の第2人力ボートとに結合されている。レジスタ 1376と加算器1374とのこの組合せはモジュロ4アキユムレータを構成し ている。どの時点においてもレジスタ1376中に保持されている値は、その時 までに1/ジスタ1372によって加算器1374に供給された値全部のモジュ ーロ4の累算された和である。レジスタ1376中に保持された偵はメモリ動作 が行なわれるべき装置の番号である。0は統計的デコーダ230に相出し、1は 入力FIF0232に、2は入力FIFO234に、そして3は出力FIFO2 3fiに対応している。バレルシフタ1360の動作により、この選ばれた装置 に対するメモリ要求値が優先度デコーダ1370に対する入力値のLSB位置ヘ シフトされ1次のメモリ動作ではこの装置が最低優先度て選ばれるようにする。
バレルシフタ1360、優先度デコーダ1370、レジスタ1372と1376 、および加算器1374を含んでいるこの回路はスケジューラであって、装置! 230 、232.234および236の発生するメモリ要求が確実に実質的に 同等の優先度で処理されるようにする。
レジスタ1376の出力信号はMSB位置に論理0を連続することによって3ビ ツトに引伸ばされている。この3−ビット信号はマルチプレクサ1378の1つ の入力ポートに印加される。マルチプレクサ1378の2番目の入力ポートは、 緊急要求、リフレッシュ要求、圧縮されたデータ書込み要求およびビット・マツ プ読出し要求を取扱うスケジューラの出力信号を受入れるように、結合されてい る。統計的デコーダ230、入力FIFO232と234および出力PIF02 3Sに対する緊急メモリ要求は各信号SDP、IFOP、IFIPおよびOFF によって伝達される。これらの信号は、優先度デコーダ1380の入力ポートの ビット位置0.1.2および3にそれぞれ印加される。ビット・マツプ読出し要 求信号は信号源220から供給される水平線同期信号H3である。この信号は優 先度デコーダ1380の入力ポートのピット位置6に印加される。リフレッシュ 要求信号はカウンタ1382によって発生される。このカウンタ1コ82は普通 の7−ピッドラッチング・カウンタである。このカウンタは、信号CKのパルス を1211個カウントして、その論理lの値をもつ1ビット出力値号RFを、コ ノカウンタがリセットされるまでラッチする。この発明の実施例では、信号RF は優先度デコーダ1380の入力ポートのビット位15に印加される。カウンタ 1382のリセット入力端子VRAM@号発生器1388から供給される信号R FSに結合されている。この信号はリフレッシュ動作の終りに発生器1388に よりパルスとして送り出されてカウンタ1382をリセットする。
圧縮されたデータ読出し要求信号CVRは、前述のように5圧縮されたビデオの 信号源212によつてVRAM制御ユニット238に印加される。この信号は優 先度デコーダ1380の入力ポートのピット位置4に結合される。
優先度デコーダ1380の出カポ−1−はレジスタ1384の入力ポートに結合 されている。レジスタ1384は制御回路1310から供給される信号CCK’ のパルスに応動して、その入力ポートに印加された値をロー1(するように制御 されている。レジスタ1384の3−ビット出力信号はマルチプレクサ1378 の第2の入力ポートに供給される。
マルチプレクサ1378はORゲート1386によって発生した信号によって制 御される。この信号は、休止論理240により発生した信号tJREQ、および 信号HS、CVR,RFの論理的ORである。ORゲート1386の出力信号は 、優先度デコーダ1コ80への入力信号の1つまたはそれ以上のものが論理lで あるときのみ、論理lである。′マルチプレクサ1378は、その制御入力信号 が論理0のとき、レジスタ1376から供給された3−ビット値をバスさせその 他の場合にはレジスタ1384から供給された3−ビット値をバスさせるように 、調整されている。マルチプレクサ1378でバスされた値は、マルチプレクサ 1356に印加され6個のアドレス値のうちのどれをV RA M 216のア ドレス入力ボートとバンク選択論理に、および加算器1392の第1入力ボート に印加すべきかを1表わす、マルされ、このROMは増分値を加算器1392の 第2人力ボートに供給する。 ROM1390は、たとえば、統計的デコーダ2 30、入力FIFO232または234、或いは出力PIF O236によりメ モリ動作が行なわれるときは増分値lをメモリ動作がビット・マツプ読出し動作 であれば増分値64を、メモリ動作がリフレッシュ動作であれば増分値256を 供給するように、プログラムされている。前述のように、制御回路1310はマ ルチプレクサ1378から供給される3−ビット値に応動して、適当なレジスタ に対するロード信号を付活して、増加されたアドレス値をメモリ・サイクル中に レジスタ中にロードする。
VRAM信号発生器1388は、マルチプレクサ1378により供給される3− ビット信号に応じて、ランダム読出しまたは書込み動作、直列読出し動作または リフレッシュ動作を行なうようにV RA M 216に対する制御信号な発生 し、またメモリ動作が完了すれば、適切なストローブ信号をパルス状に発生する 。このVRAM信号発生器は出力FIFO236から供給される4゛−ビット信 号CASMを受取るように結合されている。この信号は、メモリ書込み動作中1 列(コラム)アドレス・ストローブ信号CASO,CAS1.CAS2およびC AS3を選択的に非可動化するために使用されるもので、上記列アドレス・スト ローブ信号は、その1つがVRAM216内のメモリ集積回路の8列の6対に印 加される。前述のように。
この実施例で使用されているVRAM216は、8列16行のマトリクスの集積 回路として構成されている。各集積回路は4ビツトのデータを受取りまたは供給 する。メモリの8列のすべてから供給される32ビツトを8−ビット値に分割す るために、上記の列は対をなすようにされ。
列アドレス・ストローブ信号CASO,CASI、CAS2およびCAS3のそ れでれ異なる1つが4つの列対のそれでれに印加される。参考資料としてここに 引用するNECエレクトロニクス社発行の1985年「メモリ製品データブック J3−45乃至3−54頁に記載されているように、 、PD41264集積回 路に対するメモリ書込み動作に関して列アドレス・ストローブが動作状態にされ なければ、アドレスされたメモリセルにデータは書込まれない、従って、もし信 号CASMの4ビツトのうちの何れかが論理0であれば、信号発生器1388は 対応するCAS信号を非可動化し、バスD Busの対応するバイト位置のデー タはV RA M 216中に書込まれず、アドレスされた32−ビット語中の 上記バイト位置に前からあった内容は損なわれずに残フている。
VRAM信号発生器1388は1行なわれるメモリ動作の・ストローブ信号RA S、書込み可動化信号11.出力可動化信号OE、直列制御信号SCおよび直列 出力可動化信号SOEと同様に生成する。これらの信号のタイミング図は1掲の メモリ製品データブックの引用部に記載されている。
VRAM信号発生器1388Lt、V RA M 216を構成する個々の集積 回路を制御する信号を発生するだけでなく、統計的デコーダ230.入力F I  FO232,234、出力FIFO236およびリフレッシュ・カウンタ13 82に対して要求を受けたメモリ動作は遂行されたことをそれでれ知らせるスト ローブ信号SDS、IFO3,IFIOlOFSおよびRESを供給する。これ らの信号はメモリサイクルの終りに発生する。前述した刊行物「メモリ製品デー タブック」の引用部に開示されているタイミング図および既述の説明から、この 分野の技術者はVRAM信号発生器1388として使用するに適した回路を、容 易に設計し製造することが可能であろう。
VRAM信号発生器は、更に、マルチプレクサ1378から供給される信号の値 4に応じてその制御出力端子に高インピーダンスを与える。この高インピーダン ス状態によって合成ビデオ信号源212は、VRAM216のメモリ書込み動作 を制御することができる。この発明のこの実施例では、マルチプレクサ1378 から供給される4の値は、マルチプレクサ1356に結合されたデコーダ135 5によってデコードされる。デコーダ1355に供給された4の値はこのデコー ダを制御して論理lの値をマルチプレクサ1376の入力端子ENに印加させる ようにする。この信号によつて、マルチプレクサ1356はVRAM216のア ドレス入力ボートに高インピーダンスを与えるようにされる。この高インピーダ ンスにより圧縮されたビデオ信号源212は可動化されて、VRAM216のア ドレス入力ボートを1メモリサイクルの量制御する。
各VRAMメモリサイクルは信号CK’の4周期の間にわたフている。制御回路 1310は、この信号CK’を使j ”CII 号CCK ’を発生すルウコノ 信号CCK’ 、VRAMメモリサイクルより信号CK’の1周期の2分の1だ け進んでいる。信号CCKの前縁から信号CK’の1周期後、すなわちVRAM メモリサイクルの開始点で。
スケジューリング回路はスケジュールされているメモリ動作の中から成るメモリ 動作を選択しており、かつどの動作が選択されているかを示す値がマルチプレク サ1378の出力ボートから取出せる。
この選択された値は、マルチプレクサ1356を制御して選ばれたレジスタ中の アドレスまたは高インピーダンスをV RA M 216のアドレス入力端子と バンク選択論理に印加させ、またVRAM信号発生器1388を制御して、もし 水平線同期信号H3,カウンタ1382、出力FIFO232によって或いは統 計的デコーダ230、入力FIFO232または入力FIFO234のうちの1 つによって選択されたメモリ要求が発生すると、直列読出し動作リフレッシュ動 作、ランダム書込み動作またはランダム読出し動作をそれでれ行なうための信号 を発生させる。メモリサイクルの終りよりも信号CK’の1周期分前に、VRA M信号発生器1388は適当なパルス信号RES、OFS、SDS、IFOSま たはIFISを送り出して、要求されたメモリ動作は実行されてことを示す。
VRAM制御ユニットは、圧縮されたビデオ信号の信号源212が周期的にVR AMメモリサイクルを使用して圧縮されたビデオデータをVRAM211iにロ ートするので、すべてのVRAMメモリサイクルを使用するとは限らない、VR AM216の使用に関する競合の可能性は、緊急メモリ要求を取扱うスケジュー リング回路によって解決される。
圧縮されたビデオの信号源212は、VRAM216中に記憶すべき32−ビッ トの値を持っているときは、信号CVRの状態を論理1に変える。信号CVRは 優先度デコーダ1380のビット位置4入カボートに印加される。スケジューリ ング回路がこの形式の要求を取扱うときは、4の値を、VRAM信号発生器13 98、制御回路131G、およびマルチプレクサ1356に結合されているデコ ーダ1355に供給する。この値は、信号発生器1388とマルチプレクサ13 56を制御して、それらの出力端子の高インピーダンスを呈するようにする。こ の両出力端子はバスAD・/CTLを介してV RA M 216に結合されて いる。更に、この4という値は、制御回路1310を制御して圧縮されたビデオ 信号源212に信号GRANTとして論理lの値を供給する。この信号は、信号 源212内のアドレスおよび制御回路を可動化して、メモリ書込み動作の信号を 発生させ、信号源212かうVRAM216中にデータを記憶させる。
VRAM信号発生器1388を、スケジューラから供給された値をランダム読出 し、ランダム書込み、直列読出しまたはリフレッシュ動作を行なうべきかを表わ す信号に変換する第1の回路と、この様な信号からVRAM集積回路に供給する 実際の信号を生成する第2の回路との2つの別々の回路に区分することが考えら れている。第1の回路はVRAM制御ユニット238の一部になり、従って処理 器集積回路210の内部にあることになろう。しかし第2の回路は回路210の 外部に形成されて、圧縮されたビデオの信号源212と共有することになろう。
ここで説明するこの発明の実施例は、ルミナンス・ビット・マツプのアドレスを 記憶するために1対のビット・マツプ・アドレス・レジスタを持っているが、カ ラー・ビデオ信号を処理するこの発明の実施例として2つの色差信号ピッ1〜・ マツプのアドレスを記憶するために2個の付加ビット・マツプ・レジスタを持つ 形にすることも考えられる。更に、すべてのビット・マツプ・アドレス・レジス タに対する最初のビット・マツプ・アドレス値を、ビデオ信号プロセッサ210 が停止状態にある間マイクロプロセッサ224に記憶しておくようにすることも 考えられる。
以上はビデオ信号プロセッサ210の回路に関する詳細な説明である0次にこの プロセッサを使用して2圧縮されたビデオ信号をデコード(すなわち引伸ばし) する方法を説明する。
第1図に関連して上述したように、このプロセッサにより再構成される画像は、 絶対または相対的双線形多項式(Am +By +(:)の形で、またDPCM エンコード技法を使うて個々にコート化されたピクセルとして、矩形領域(以下 、セルという)を表わす記録(レコード)にコード化されている。第1図に示さ れた記録フォーマットは概念的には有効なものであるが、好ましいコートされた データの配列が第14図に示されている。このデータは、5つの部分すなわち各 セルに割出てられるデータを含んでいる“セルテーブル”、統計的にコード化さ れたデータの別々のブロック(以下、“データ”という)5双線形多項式を作る ために使用されるテーブル(以下、スロープ・リストという)DPCMコート化 データをデコードするために使用するテーブル(以下、テーブルDという)との 対をなす2テーブル、およびその時表示されている画像のビット・マツプ、で構 成されている。統計的にコード化されたデータセグメントはその統計的デコーダ 230を使ってプロセッサ21口で読出し得るように、個々別々のものである。
セルテーブル、データ値、スロープ・リスト、テーブルDおよびビット・マツプ はすべてVRAM216中に記憶される。更に、デコード動作の進行につれて、 新しいすなわちその時々のビット・マツプが生成され、それは次に表示すべき画 像を表わしている。
セルテーブルは、各セルごとに、数としてコード化された(たとえば、l冨絶対 、2冨相対的、3=DPCM)その形式T、その左上隅におけるビクセル値のビ ット・マツプ中の座標値<x pos、y pos)、およびその寸法(H,W )を含んでいる。そのセルが相対的セルか絶対セルであれば、多項式の係数A、 BおよびCに関する情報も与えられる。もしそのセルが相対的セルであれば、そ の時のセル中のビクセル値の、その時表示されている画像のビット・マツプ中の セルの対応するビクセル値に対する偏差値ΔXとΔYが与えられる。デコーディ ングを簡単化するために、記録は長さが一定であるもの(記録出り10個の16 −ビット・ワード)とする、データがlOワードより少ない記録(DPCMのよ うな)は10ワードに付加(水増し的に)される。
多項式Ax +B、+C中のスロープ項を表わす係数AとBは特殊な形にコード 化される。セルテーブルは実際のA、Bの値を含む代りに、そのスロープ・リス ト中にインデクス値を含んでいる。このスロープ・リストは各画像と共に(或い は、各画像のシーケンスと共に)デコーダに伝達される。スロープ・リストに関 するこの理由は、デコード作用の効率を改善するため、次に述べるようにデコー ダがスロープテーブルを利用できるようにするためである。
圧縮された画像全体をデコードするに使用するマイクロコードは、一般にプロセ ッサの利用可能なマイクロコー)CRAM310にフィツトしないであろうから 、デコーディング動作は幾つかの“バス”に分けられる。その第1のバスはすべ ての絶対セルをデコードし、続いて相対的セル用の他のバスおよびDPCMセル 用の別のバスがある。このプロセスは第15図に概要が示されており、すなわち 、スイッチ1510の順次選択作用によって3回呼出される同一のプロセス15 20 (特定形式のセル全部をデコートするため)で、構成されている。
プロセス1520の詳細は第16図に示されている。最初、統計的デコーダ23 0と入力FIFO232はステップ1610と1620で、統計的にコード化さ れたデータとセルテーブルとをそれぞれ含むVRAMのセグメントをアドレスす るように始動される。ステップ1630ではセルテーブルの記録から偵Tを読出 す、この値Tはセル形式を特定する。ステップ1640では値Tを特別の“テー ブルの終り”の値と比較する。この“テーブルの終り”のフラッグとしては通常 は0が使用され、比較動作が迅速に行なわれるようにされる。もし、テーブルの 終りに達しない場合には、この値Tを処理されるセルの形式と比較する(ステッ プ1650) 、もしこのコードがそのとき処理されている形式であれば、記録 がデコートされ(ステップ1660)、そうでない場合にはその記録はスキップ される(ステップ1670) 。
次にセルのデコーディング・プロセスについて詳しく説明する。初めに、絶対お よび相対的セルのデコードを効率的の行なうためのこのプロセスのキー要素があ る“スロープ・テーブル”の概念を紹介して説明することが必要である。
“スロープ中テーブル”の概念は第17A図と第17B図に例示されている。第 17A図は双線形多項式関数へ〇十B、+Cでフィルされる矩形領域を表わして いる。この様な双線形関数は、この関数からの値で直接フィルされる絶対セルと 、この閏、数によりて与えられる値をそのときより前のビデオ画像のセルか、ら のビクセル値に加算する相対的セルとの双方に使用されるものであることを。
想起されたい、スロープ・テーブルは絶対および相対的セルの双方に対して同一 のものである。
関数P(x、y)=A、+B、+Cの値は、第1行の値PO1P1.22等とし て、および第2行po’、Pi’、P2′等として示されている。この関数の値 を即時計算しようとする2つの問題が生じる。第1の問題は2つの乗算(A、と ay)が必要なことである。もし係数(A、B、C)がすべて整数であれば、周 知の増分加算法によりてこの問題は解決することができる。これは、P(X◆1 .y)冨P (x、y) + Aという事実、すなわち、セル内の1つの水平線 内の相連続するビクセルの値は累算器に値Aを順次加算することによって計算で きるということを利用している。しかし、この発明の場合には、係数Cの値は常 に整数であるが、AとBの値はそうではない。
その理由は1画像のルミナンス値の空間的変化は通常1ビクセル当り1グレーレ ベルよりも小さいからである。
それで、事実、A、Bは小数部をもフているだけでなく、普通は絶対値lよりも 小さい、また、2つのピクセル値は1命令サイクル中に計算されるから、これら のピクセル値の計算に飽和を伴う2重加算動作(デュアル・アット・ウィズ・サ チュレート・オバレーシ纏ン)を使用することも望ましい、しかし、この飽和を 伴う2重加算動作は整数の加算だけに適用できるもので、小数のスロープ値を累 算することはできない。
この第2の問題を解決するために、“スロープ・リスト”と“スロープ・テーブ ル”を使用する。スロープ・リストは、処理される全画像に対して排他的なスロ ープ値として使用される。AとBの特定値(17256の精度で特定されている )の小さなセットである。換言すれば、その画像内で自然に発生するAとBの値 のそれぞれは、このスロープ・リスト中の1つの値で近似される。
次に、このスロープ・リスト中で見られるAの特定値に対する関数P (x、y )を評価した結果を示す第17A図について考察する。差の値DO1DI、D2 、D3等は、1つの中間ビクセル値を介して隔てられたピクセル値相互間の差の 整数部として計算されている。たとえば、D2はP2−POの値の整数部に等し く、D3はP3−P 1の整数部に等しく、以下同様という具合になっている。
最初の差の値DoとDiの対は実際のピクセル値POとPIから値POををそれ ぞれ差引いて得たものであることに注意された。
この差の値の組は、多項式中のAの値にのみ依存するものであるから、スロープ ・リスト内のAの6値に対して差の値を算出することができる。与えられたスロ ープ・リストについてその様なすべてのテーブルの組を″Xスロープ・テーブル ”と名付ける。特定のスロープ・リストが与えられると、整数の値を含むスロー プ・テーブルは、非常に少なくなり即時デコーディング・コストで完全に予め算 出されたV RA M 216中に記憶することができる。
この図にはビクセルが対をなして示されているが、それは第4B図を参照して前 述したデコーディング・プロセッサ中でデコーディング・プロセスに飽和を伴う 2重加算ALU動作を使用するからである。この図に示されている値はすべて8 −ビット値であり、6値の対は1つのIB−ビット・ワードにバックされている 。このXスロープ・テーブルを利用できるものとすれば、関数P (x、y)の 値は、たとえば次の様な単一のALU演算で計算することができる。
(P4、P5)−(P2、p3)+)(D4.D5)ここに、+)は飽和を伴う 2重加算動作を表わしている。初めに、累加レジスタに対をなす8−ビット値( POlPO)をロードし、順次スロープ・テーブルからの対をなす値を加算する ことによつて5各ビクセル値の対に対して1回だけのALU動作を使ってP ( x、y)値の正確な再構成を行なうことができる。
上記の方法は1走査線上の値を発生するだけである。
次の走査線を発生させるには値(PO2、PO2)が必要となる。それは1次の 計算で得られる。
(PO2、PO2)冨(PO,PO)+)(QOlQO)ここに、(QOlQO )は、Xスロープ・テーブルから類推できるがそれとは異なる構成をもつ“Yス ロープ・テーブル”からの値である。第17A図に示されるようにYスロープ・ テーブルでは、関数P(x、y)の垂直方向に#接する値を減算してそのスロー プ・テーブル値を得ている。この点が、1つの中間ビクセルで隔てられている値 同士が減算されるXスロープ・テーブルと違う点である。また、Yスロープ・テ ーブルでは、2つの8−ビット・フードの両半部に同一値が重複している。
要約すると、ビデオ信号プロセッサ210は、圧縮されたビデオ・データの一部 としてそのときの画像に使用されるスロープのリストを含んでいるスロープ・リ ス1−を受入れる。プロセッサ210は次に、絶対または相対的セルをデコーデ ィングするに先立9て、スロープ・リスト中の各スロープに1(1のベクトル・ エントリーをもってXとYの両スロープ・テーブルを構成する。これらのスロー プ・テーブルはVRAM216中の予め定められた位置に記憶される。スロープ ・テーブルはスロープ・リストにではなくセル・テーブルにコート化することも 考えられるが、スロープ・リストの方がよりコンパクトであるからコート化効率 の面で有効である。
スロープ・リストとXおよびYスロープ・テーブルの概念が第17B図の例に示 されている。上述のように、XとYスロープ・テーブルはそれぞれスロープ・リ スト中のどのスロープ値に対してもエントリーを持)ている。
エントリーは、Xスロープ・エントリーについては1つおきのビクセル値相互間 の差に相当する一連の値で、またYスロープ・エントリーについては隣接ピクセ ル値相互間の差に相当する一連の値で構成されている。下記の例では、スロープ ・リスト中の項目(アイテム)6に対するXスロープ・テーブル・エントリー、  1.25とスロープ・リスト中の項目lOに対するYスロープ・テーブル・エ ントリー、2.25とが発生される。
Xスロープ・テーブル・エントリーは、15−ビットのスロープ値を前の和に繰 返し加算することによってランニング和を累加することにより発生させられる。
各加算動作の後、累加された和の整数部(すなわち、8個のMSB)が記憶され る。このXスロープ・テーブル・エントリーはこの記憶された値の1つおきのも のの差をとることによりて生成される。これらの値は選ばれたスロープ値に対す るXスロープ・テーブル・エントリーとして記憶される。Xスロープ・テーブル ・エントリーを発生するアルゴリズムは、中間の介在値によって隔てられている 値相互間の差を記憶する。その理由はXスロープ・テーブル・エントリーから絶 対または相対的セルを再構成するのに飽和を伴なう2重加算動作を使用するから である。この動作は並列的に2つの加算を行なうので、絶対または相対的セルを 再構成するためのアルゴリズムは、サンプルの1つおきのものの各相を別々に累 加する。このXスロープ・テーブル・エントリーはこの2重累加動作が正しく効 率的に行なわれるように配列される。
Yスロープ・テーブル・エントリーを発生させるには、選ばれたスロープ値を上 記と同様に累加しその累加和の整数部を記憶する。しかし、Yスロープ・テーブ ル・エントリー中に記憶される差の値は、記憶サンプルの隣接するもの同士から 生成される。
!fG18図は、プロセッサが絶対セルのデコートな実行する動作のシーケンス を示している。最初のステップ1810は、デコーディング・プロセスの残余の 期間中、よ、り効率良くアクセスするために、入力FIFO232を使ってセル ・テーブルからデータRA M 228へ値を転送することである。ステップ1 812は、値Aに相当するXスロープ・テーブル・エントリーを、入力FIFO 234を使ってセル・テーブル・エントリーからデータRA M 228へ転送 することである。これは、セル・テーブル・エントリーを、下記するプロセスの “インナ・ループ中の急速アクセスに利用できるように行なわれる。ステップ1 814は出力FIFO236を、そのセルの開始点に相当するその時の画像ビッ ト・マツプ中のアドレスに対して初期化する。ステップ1816は入力FIFO 234をYスロープ・テーブル中の第1エントリーに対する点に初期化する。
次のステップ1818では、たとえばデータ・バス242中のR3(記号的に“ 値”という)レジスタを値(C,C)に、すなわちセル・テーブル記録から得ら れ上位8ビット位置と下位8ピッ1〜位置の双方に一定値Cをもつ16−ビット ・ワードに、初期化する。ステップ1820では、他のレジスタたとえばyカラ ン1〜と呼ぶレジスタR2をセル・テーブル・エントリーからの値Hに初期化す る。
ステップ1822は、プロセス中の“アウタ・ループ(ou−ter 1oop )”、すなわち処理されるセルの各走査線に対して1回行なわれるループ、を始 める。先ず(ステップ1822) 、データRA M 22B中のポインタ・レ ジスタの1個たとえばDR2を、既にステップ18工2でデータRAM228中 に転送され′Cいる、Xスロープ・テーブル中の第lエントリーに対する点に初 期化する。ステップ1824では、データ・バス回路242のループ・カウンタ 514(記号的には“cnt ’という)を値W/2に初期化する。これは、セ ルの各水平線に対して発生されるビクセル値対の数である。約束として、このコ ート化システムは1線当り偶数個のビクセルを有するセルを発生するだけとする 。従つて、Wは常に偶数である。ステップ1826はレジスタ“値”中にある値 をA L U 244の出力レジスタ416にバスさせ、これはスロープ・テー ブルの説明で前述したように出力ビクセル値を累加するのに使用されるものであ る。ステップ1828はこのプロセスの“インナ・ループ”てあつて、詳細に下 記するが、セル線の水平線上における各ビクセル対に対して1回行なわれる。そ のセルに対してビクセル・データの1水平線の処理の後1次のステップ1830 では、“値”にYスロープ・テーブル値を加算する。これは第17A図に関連し て前述したように、計算 値ツ値+)(QO,QO)と等価である。ステップ1 832は、出力PIFO236をセル中の次の水平線の開始ビクセル・アドレス に再初期化し、ステップ18コ4は°yカウントの値を減少させる。テスト18 36は、°yカウント°が0に到達したか、ステップ1822ヘループバツクし たか(もし上記が0に到達しなければ)或いはループを出た(Oに到達して)か 、どうかをチェックする。これで、1つの絶対セルの処理が完了する。
第19図は第18図のプロセスのインナ・ループ1828を実際のマイクロコー ド制御ワードまたは命令の形で示している。インナ・ループ1828は、ループ ・カウンタ514の制御下で交互に実行される2つの命令から成りている。
ここに掲示されている命令アドレスは例示目的だけのものであるが、下記するよ うに1条件付きのブランチ動作がマイクロコードRAMとシーケンシング回路2 26によって行なわれるやり方のために、それらの番号は完全には任意的なもの ではない。
第1の命令(1)は、計算ALU=ALU+)” DR2◆◆を行なう、ここに 、記号”DR2◆十はテーブル4に関連して前述した通りである。この計算は、 Xスロープ・テーブル・エントリーからの1対の値をALU出力レジスタ416  (X線形関数値の累算器として使用されている)に加算し、またデータRA  M 228のポインタ・レジスタDR2をスロープ・テーブル中の次の対をなす 値に対する点に自動増加させる。この命令は、また、ループ・カウンタな減少さ せ、次でマイクロコードRAMとシーケンシング回路226を次のマイクロコー ト制御ワードである命令2をロードするような条件付けも行なう、命令2は1回 路210を制御してALU出力レジスタ416中の値を出力PIF0236を通 して送るようにし、こうしてVRAM中に2つのビクセル値を書込む、この命令 ニ関して、ループ・カウンタ0条件を使用して条件付きブランチがセットされる 。もしこの条件が誤りであれば。
制御は命令lヘバスしてループが継続する。水平線のビクセル・データが完了す ると、ループ・カウンタは0になり、その条件は真であり、マイクロコード中シ ーケンサはアドレスのLSBを強制的にOにするようにさせられる。これにより て、命令0へのジャンプが起こり、従ってインナ・ループから出口へ出て行く。
これは2命令ループであり、かつループを一周するごとに2個のビクセル値が発 生されるので、このインナ・ループはlピクセル値当りl命令の速度で実行され る。
−例として、命令サイクル時間が80nsで画像が256×240ピクセルを有 しプロセッサ210に休止状態が無いものとすれば、このインチ・ループの可能 最大実行時間(すなわち画像が1絶対セルで表わされるとすれば)0.3フィー ルド期間(約17200秒)である、アウタ(外部)ループのような、このシス テムの上記とは別のプロセスおよび第16図の処理には更にデコード時間が加わ る。また、画像は通常は完全に一つの形のセルて構成されているものでないこと を想起されたい、相対的およびDPCMセルではデコードするのに絶対セルの場 合よりも長い時間を要することが理解されよう、しかし、この様な因子があフて も1通常は2フィールド期間未満で画像をデコードすることができる。2フィー ルド期間というデコード時間は所望のTVフレーム率30分の1秒に相当するこ とに注意されたい。
第20図は、プロセッサ210が相対的セルのデコートな実行する動作のシーケ ンスを示している。多くのステップは絶対セルのデコーディング・プロセスにお けるステップと同様なものであるが、幾つかの重要な相違点がある。この相対的 セルのデコーディング・プロセスでは。
双線形多項式A、+B、 十〇の値を発生させることの他に、この関数の値を前 の画像ビット・マツプの矩形領域から得られるビクセル値に加算する。こうして 得た和は1次にその時の画像ビット・マツプに書込まれる。更に、このビクセル 値は、前の画像のビット・マツプから直接取出されるのではなく、ビクセル補間 器246を使9てそれらのビクセル群から補間することにより得られる。
ピクセル補間器246は、パイプライン構成であるから、その出力値は入力値に 対し遅延する。この時間的遅延は、その時のおよびそれより前の画像セル中のビ クセルを通して行なわれる走査動作を複雑なものとする。その理由は入力および 出力FIFOの歩調が揃っていないからである。この問題は、インナ・ループを 2つの同じ命令グループに分割することによって解決される。W/2回実行きれ る1つのインナ・ループ(絶対デコーディングの場合のように)の代りに、N1 回実行されるものとN2回実行されるもの(但し、N1+N2−w/2)との2 つのインナ・ループがある。この値N1とN2は次のように予め計算される。す なわち、第1のインナ・ループの後入力FIFO232が前の画像ビット・マツ プにおける連続する次の水平線中の開始ビクセル位置に対する点に進められるよ うに、および第2のインナ・ループの後出力PIFO236がその時の画像ピッ I−・マツプにおけるその時のセルの連続する次の水平線の開始ビクセル位置に 対する点へ進められ得るように、計算される。
最後に、第9図について論議したように、2木のビクセル・データ走査線が前の 画像から読出されてその時のセルにおける1本のビクセル水平線を生成すること を想起されたい、VRAM216に対するアクセス回数を減らす、従ワてデコー ディング時間を減少させるために、第20図のプロセスは、このプロセスのYル ープを通じである時に使用される2木の線のうちの下側の線は、Yループを通じ て次に使用される2本の線のうちの上側の線と同じ線であるという事実を利用し ている。従って、VRAMからこのデータを2回読出す代りに、このループを1 周するごとに次のループ1周で使用するためにこのデータをデータRA M 2 2B中の”ライン・バッファ”に記憶させる。
第20図に示したプロセスは、セル・テーブル記録からデータRA M 228 に対して値を転送するステップ2010から始まる。ステップ2012は、その 時のセル・テーブル記録から得られる値AのXスロープ・テーブル・エントリー を、VRAM216からデー9 RA M 228 ヘ転送する。
これらの転送動作には入力FIFO232を使用する。ステップ2014.20 16および2018は、それぞれ、その時の画像ビット・マツプに対する点への 出力F!F023Bの初期化、前の画像ビット・マウブに対する点への入力FI FO232の初期化、その時のセル・テーブル記録からの値Bに相当するYスロ ープ・テーブル・エントリーに対する点への入力FIFO234の初期化を行な うステップである。ステップ2020は、ΔXとΔYの小数部に等しい変位値で ビクセル補間器246を初期化する。このビクセル補間器は、前の画像の開始点 アドレスのLSBが0であれば“同相(イン・フェーズ)″モードに初期化され 、そうでなければ“敲相(アウト・オブφフェーズ)″モードで働くようにセッ トされる。ステップ2022は、デコーディング・プロセスの残部で使用するた めにWの値を2等分する。ステップ2024は2つのインチ・ループのカウント 値であるNlとN2の値を計算する(矩形枠2024では、この可変“位相”は 前の画像の開始点アドレスLSBと同一値を持ワている)。ステップ2026は 、レジスタをセル・テーブル記録からのHの値に初期化して、セル中の水平線を カウントするようにする。ステップ2028は、前の画像セルの1本の水平線を データRA M 22a中の線バッファ中にロードし、ポインタ・レジスタDR YとDR2をその線バッファ中の第1の16−ビット値に対する点にリセットす る。ステップ2030は、ビクセル補間器246のバイブラインを、最初の有効 な結果をそこから読出すことのできる点までロードする。たとえば、第9B図を 参照すれば、ステップ2030は命令サイクルT1乃至T、lを含んでいる。
ステップ2032はこのプロセスの“アウタ・ループの出発点である。先ず、( ステップ2032) 、データRAM228中の1つのポインタ(例えばDRO )を、Xスロープ・テーブル・エントリー中の第1の値に対する点に初期化する 0次に、その時のセル・テーブル記録からの複製(ジューブリケーテッド)定数 項である値(C%C)が、双線形関数P(x、y)の値を累加するのに使用され るA L U 244のB入力ラッチ412中にロートされる。ステップ203 6、z038および2039は、インナ・ループ命令を開始しN1回(ただし、 Nlは0のこともある)実行する。ステップ2040は、次に入力FIFO23 2を前の画像からのセルにおける次の水平線の開始点に対する点にリセットする 。ステップ2042は線バッファ・ポインタ(DRlとDR2)をこの線バッフ ァの開始点に対する点にリセットする。ステップ2044.2046および20 48はインナ・ループ命令を開始しN2回実行する(ここに、N2は0のことも ある)。
ステップ2050では、出力PIFO235が使用したアドレス値を、その時の ピッ1−・マツプ用のセルの次の線における第1ビクセル位置に対する点に進め る。ステップ2052は、ビクセル補間器を通してもう1つの値の組(4ビクセ ル)をバスさせる。これらの値は、前の画像におけるセルの右端を少し越えた位 置を有するビクセルに相当し、線上の最後の補間結果を生成するのに使用される 。しかし、このステップは、また、ビクセル補間器に別の1対の結果を生じさせ る。この結果はステップ2052で読出され、簡単に破棄される。ステップ20 54は゛yカウント°の値を減少させ、テスト2056では、そのセルのビクセ ル値の最終水平線の処理が完了したかどうかをチェックする。もし完了していれ ば、プロセッサはアウタ・ループへ出力し、そうでなければステップ2031で このループを継続する。
第21図は、第20図に示したプロセスのインナ・ループを示している。このル ープは4つの命令で構成されている。第1の命令(1)はA L U 244の B入力レジスタ412における値をある値”DRO(すなわち、レジスタDRO に保持されているアドレス値を有するデータRAMセル中の値)に加算する。こ の値はXスロープ・テーブルから与えられる。またこの命令の期間中、DRO中 に保持されているアドレス値は1だけ増分増加される。ALU244のB入力レ ジスタ412は双線形関数A、+B、+Cの値を累加するのに使用されているこ とを想起すべきである。命令lは、また入力FIFO232を使って1対のビク セル値を読出し、それをデータ・パルス回路242のレジスタRO中にロートす る。これらのビクセル値は、ビクセル補間器に印加されて1対の補間ビクセル値 を発生させる4つのビクセルのうちの下側の対に相当する0次の命令2は、AL U出力値(命令lの結果)をB入力レジスタ412に戻して配置する。これは、 また5この値をビクセル補間器246の出力値に加算して、連続する2つのビク セルに対する。関数A、+B、+C十前の画像の値を生成する。この対をなすピ クセル値は次の命令3で出力FIFO236を介してVRAM216中に書込ま れる。その上、命令3は、レジスタDRIに保持されているアドレス値を使って 、データRA M 228に保持された線バッファからの値(2ビクセル)をピ クセル補間器にロードする。これらのビクセルは補間器246に供給されている 4ビクセルのうちの上側の対に相当する。この命令はまたデータ・パス回路24 2のループ・カウンタ514を増分減少させる。最後に命令4は、補間器246 に対するピクセル値の下側の対である、レジスタRO中の値をとりて、これをビ クセル補間器246とデータRAM228中の線バッファの双方にロードする( レジスタR1中のアドレスを使つて)、ループ・カウンタを基礎とする条件付き ブランチ動作が0に到達すると、所要数のピクセル値が発生されるまてループ中 でこの命令が繰返されるようにする。
このインナ・ループは4つの命令サイクルで2ピクセル値を発生し、これは休止 状態が無いものとすれば。
256 x240の画像の0.6フイールドの最大総経過時間に相当する(これ は、インナ・ループだけについてのもので、前述した他のものは無視している) 。
第22図は、DPCMセルのデコーディングに含まれている動作のシーケンスを 示す、DPCMセル中の各ピクセル値は圧縮されたビデオ画像のデータ・セグメ ント中の1個の値Vでコート化される。この値Vは、その時の画像における可能 性のあるすべてのビクセル−ピクセル間の差を含んでいる値のテーブル(テーブ ルD)に対するインデクスをなしている。このテーブルDはデータRA M 2 28に記憶されている。DPCMセルの大部分のピクセル値は、テーブルDから 得られる差のピクセル値をターゲット・ビクセルのすぐ左のピクセル値に加える ことにより、発生される。セルの左端のピクセル値はテーブルDからの差のピク セル値を前の線の対応する値に加えることによりて発生される。セルの左上隅の ビクセルの“上にある”仮想ピクセルは一定値128を有するものと見なす。
DPCMデコーディング・プロセスは、V RA M 216中のセル・テーブ ルからの値x pos%Y POS。
H,W、を入力FIFO232を介してデータRA M 228に転送する(ス テップ221G)ことによりて始まる6次に、出力PIFO236がその時のセ ルの左上隅のビクセルに相当するアドレス(X POS、Y PO3)に対する 点へ、初期化される(ステップ2212) 、ステップ2214ではレジスタ、 たとえばR3(“最後の線”)が値128にセットされる。このレジスダ最後の 線9は、その時の線の第1ピクセルを発生させるときに使用するため、前の線の 第1ピクセル値を記憶するのに使用される。ステップ2216は、セル中の水平 線数を保持している。たとえばR2のようなレジスダyカウント°をロステップ 2218はデータ・パス回路242のループ・カウンタ514にセル・テーブル 記録からの値Wをロードする。ステップ2220は値″DR2(すなわちテーブ ルDからの値)を読出すレジスタR1中に統計的デコーダ230からの値V(す なわちテーブルDに対するインデクス)をロードすることによって、水平線上の 第1ピクセルの値を計算し1次に計算“最後の線=最後の線+)1DR2″を行 なう0次に、インナ・ループが実行される(ステップ2!22) 、最後に、出 力FIFOがその時のビット・マツプの次の水平線の第1ピクセル値に対する点 にリセットされ(ステップ2224) 、レジスダyカウント°は増分減少させ られてループが終了する(すなわち、yカウント−0のとき)までテストされる (ステップ1226.2228) 。
第23図はDPCMデコーディング・プロセスのインチ・ループに対するマイク ロコード命令を示している。最初の命令2は、その時の累加値(ALU出力レジ スタ416中の)を出力FIFO236を介しrVRAM216 に書込み、ま たこの値をデータ・パス回路242のレジスタR2中に記憶させる。このループ の最初の命令は、ループ・カウンタ514に保持されている値が0かどうかによ って、ループを出るかまたは継続する条件付きブランチを持っている0次の命令 lは、統計的デコーダ230を使りてV RA M 216からV値を読出して これをレジスタRO中に記憶させる0次の命令3は、レジスタROからのこの値 をデータRAM回路228のレジスタR2に転送する。このループの最後の命令 4は、レジスタR1中の前のピクセル値を値”DR2(データRA M 228 中のテーブルDからの差の値である)に加算し、ループの一番上にブランチバッ クさせる。
DPCMデータのデコートに使用されるこの命令シーケンスのインチ・ループは 飽和を伴う2重加算動作である。この命令シーケンスは、ABUSとB Bus の両バスの8個のLSB位置によフて運ばれるデータの1個のバイトについて動 作している。この飽和を伴なう2重加算動作は、実際の差の値ではなくテーブル Dから得られる近似的な差の値を使用することから生ずるどの様な誤った差の値 をも飽和させるために使用される。この形式の飽和加算法は、飽和を伴なう2重 加算動作においてA L U 244によりてのみ支持される。
このDPCMデコーディング命令シーケンスのインチ・ループは4つの命令ごと に1ピクセルを発生し、これは休止状態が無いとすれば、インナ・ループのみに ついて、2sa x240の画像に対して1.2フイールドの最大総経過時間に 相当する。
これまでの、ビデオ信号プロセッサ210の内部回路、デコーディング・プロセ ス、およびインナ・ループの実際のマイクロコード命令に関する説明を利用すれ ば、当該専門家にとりて、完全なデコーディング・プロセスを構成するマイクロ コード命令シーケンスを作ることは古島な筈である。
上述したこの発明の実施例では、信号源212から供給される圧縮されたデータ はセル・テーブルの形式であるが、他の形式たとえば2進トリーの形でデータを 供給することも考えられる。その場合には、プロセッサ210は2進トリー・デ ータをセル・テーブル形式に変換するようにプログラムされることになろう。
nσ9B Fit;、 9E で in;、us Hθ、/4 Fit;、 //’、4 閏m謹審報失 に−1−m’m Am−m−m、 PCT/US 8B103818□□−一一 一 国際調査報告 PCT/us 8810313185A 25493

Claims (5)

    【特許請求の範囲】
  1. (1)ピクセル値を供給する入力手段と、第1と第2の補間縮小率の源と、 第1と第2の制御信号のそれぞれに応答して、中間の補間済ピクセル値を保持す る第1と第2のデータ記憶手段と、 上記入力手段と上記源と上記第1と第2のデータ記憶手段とに結合されており、 第1の値を持つ補間器制御信号に応答して、上記入力手段によって供給される2 つのピクセル値を上記第1の補間縮小率によって決まる割合いで組合わせて、上 記中間の補間済ピクセル値の1つを生成し、また、第2の値を持つ上記補間器制 御信号に応答して、上記中間の補間済ピクセル値の中の2つを上記第2の補間縮 小率によって決まる割合いで組合わせて、2次元的に補間されたピクセル値を生 成するピクセル値補間手段と、 上記第1と第2のデータ記憶手段と上記ピクセル値補間手段とに結合されており 、上記第1と第2の制御信号と上記補間器制御信号とを発生する制御手段と、を 含む、2次元ピクセル値補間器。
  2. (2)nを1水平線または1垂直列中のピクセルの数に対応する整数で、かつ、 長い次元を規定するものであるとして、2×nのピクセル値のマトリクスを供給 するステップと、 1次元補間器を交互に、 (A)上記マトリクスからの一対のピクセル値であって、上記長い次元に直角な 方向に整列しているものを用いて、第1の補間係数に従って1次元補間を行わせ て、1次元補間値を生成させ、 (B)上記ステップ(A)で生成された2つに最も新しい1次元補間値に対応す る一対の値を用いて、第2の補間係数に従って1次元補間を行わせて、2次元補 間値を生成させる、 ステップと、 を含む、2次元において補間されたピクセル値を生成する方法。
  3. (3)隣接する行中のピクセルに対応する対をなすピクセル値を連続的に供給す る手段と、 補間係数を変える手段を含む1次元補間器と、上記1次元補間器に結合されてお り、上記補間器によって生成された対をなす値を供給する手段であって、上記対 をなす値は、上記補間器によって供給される交番出力値と、さらに、1次元的に 補間されたピクセル値とに対応するものであるような手段と、 上記1次元補間器と、上記対をなすピクセル値を供給する手段と、上記対をなす 値を供給する手段とに結合されており、上記1次元補間器が、交互に、(a)上 記対をなすピクセル値を供給する手段からの一対のピクセル値を用いて、第1の 補間係数に従って、1次元的に補間されたピクセル値を生成し、(b)上記対を なす値を供給する手段からの上記対をなす値の1つを用いて、第2の補間係数に 従って、2次元的に補間されたピクセル値を生成するようにする手段と、 を含む、2次元ピクセル補間器。
  4. (4)ピクセル値からなる隣接する水平線から対をなす垂直方向に整列したピク セル値を次々に供給する手段と、第1と第2の入力ポート及び出力ポートを有し 、信号を減算的に組合わせる第1の合成手段と、この第1の合成手段の出力ポー トに組合された被乗数入力ポートと、乗数入力ポートと、出力ポートとを有する 乗算器と、 この乗算器の出力ポートと、上記第1の合成手段の上記第1と第2の入力ボート の一方とにそれぞれ結合されている第1と第2の入力ポートを有する、信号を加 算的に組合わせる第2の合成手段と、 この第2の合成手段の出力ポートに結合されており、上記第2の合成手段によっ て生成された1つおきの和の対を同時に供給する手段と、 上記対をなす垂直方向に整列したピクセル値を供給する手段と、上記1つおきの 和の対を同時に供給する手段とに結合されており、上記第1の合成手段の第1と 第2の入力ポートに、上記対をなす垂直方向に整列したピクセル値と上記1つお きの和の対とを交互に供給する手段と、 上記第2の合成手段の出力ポートに結合されており、補間されたサンプルに対応 する和を選択する手段と、上記乗算器の乗数入力ポートに対し、水平縮小率と垂 直縮小率とにそれぞれ対応する乗数値を交互に供給する手段と、 を含む、2次元ピクセル補間器。
  5. (5)ピクセル値が対をなしてデータバス上に生じ、各対が画像線に沿って水平 方向に配置された2つの連続するピクセル値からなり、データバス上に生じるピ クセル値の1つおきの対が隣接する水平画像線相互間で交番し、ピクセル値の連 続する1つおきの対が画像中の垂直方向に整列したピクセルに対応するように構 成されており、上記垂直方向に整列したピクセル値を供給する手段が、上記デー タバスに結合されており、ピクセル値の1つおきの対を連続的に記憶する第1の レジスタ手段と、上記データバスに結合されており、ピクセル値の中間に位置す る対を連続的に記憶する第2のレジスタ手段と、 上記第1と第2のレジスタ手段に結合されており、上記第1と第2のレジスタ手 段に記憶されているピクセル値の各対のピクセル値の第1のものからなる対を連 続的に記憶する第3のレジスタ手段と、 上記第1と第2のレジスタ手段に結合されており、上記第1と第2のレジスタ手 段に記憶されているピクセル値の各対のピクセル値の第2のものからなる対を連 続的に記憶する第4のレジスタ手段と、 上記第3と第4のレジスタ手段に結合されており、上記第3と第4のレジスタ手 段からのピクセル値の対を交互に供給するマルチプレクサと、 を含む、請求の範囲(4)に記載の補間器。
JP63509545A 1987-11-16 1988-11-03 2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法 Expired - Lifetime JP2750438B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/121,021 US4816913A (en) 1987-11-16 1987-11-16 Pixel interpolation circuitry as for a video signal processor
US121,021 1987-11-16

Publications (2)

Publication Number Publication Date
JPH03501553A true JPH03501553A (ja) 1991-04-04
JP2750438B2 JP2750438B2 (ja) 1998-05-13

Family

ID=22393983

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63509545A Expired - Lifetime JP2750438B2 (ja) 1987-11-16 1988-11-03 2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法

Country Status (7)

Country Link
US (1) US4816913A (ja)
EP (1) EP0390818B1 (ja)
JP (1) JP2750438B2 (ja)
KR (1) KR970003048B1 (ja)
CA (1) CA1319420C (ja)
DE (1) DE3850117T2 (ja)
WO (1) WO1989005082A1 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63245085A (ja) * 1987-03-31 1988-10-12 Pioneer Electronic Corp サブサンプル内挿方法
DE3851718T2 (de) * 1987-06-09 1995-01-26 Sony Corp Fernsehnormwandler.
US4951139A (en) * 1988-03-30 1990-08-21 Starsignal, Inc. Computer-based video compression system
US4897717A (en) * 1988-03-30 1990-01-30 Starsignal, Inc. Computer-based video compression system
US5025394A (en) * 1988-09-09 1991-06-18 New York Institute Of Technology Method and apparatus for generating animated images
JP2765012B2 (ja) * 1989-03-10 1998-06-11 ソニー株式会社 補間信号形成回路
US4970663A (en) * 1989-04-28 1990-11-13 Avid Technology, Inc. Method and apparatus for manipulating digital video data
US5233689A (en) * 1990-03-16 1993-08-03 Hewlett-Packard Company Methods and apparatus for maximizing column address coherency for serial and random port accesses to a dual port ram array
WO1992001260A1 (en) * 1990-07-09 1992-01-23 Eastman Kodak Company Selectable power of two coefficient signal combining circuits
US5124804A (en) * 1990-09-10 1992-06-23 Ncr Corporation Programmable resolution video controller
US5499328A (en) * 1991-02-22 1996-03-12 Network Computing Devices, Inc. Line draw method for generating, storing and displaying lines in a display system
US6055335A (en) * 1994-09-14 2000-04-25 Kabushiki Kaisha Toshiba Method and apparatus for image representation and/or reorientation
US5790714A (en) * 1994-11-01 1998-08-04 International Business Machines Corporation System and method for scaling video
JPH08289305A (ja) * 1995-04-14 1996-11-01 Philips Japan Ltd 画像データ圧縮/伸張システム
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
JPH09114443A (ja) * 1995-10-20 1997-05-02 Seiko Epson Corp 映像スケーリング装置
US6061477A (en) * 1996-04-18 2000-05-09 Sarnoff Corporation Quality image warper
US6252576B1 (en) 1998-08-06 2001-06-26 In-System Design, Inc. Hardware-efficient system for hybrid-bilinear image scaling
WO2001016702A1 (en) 1999-09-01 2001-03-08 Intel Corporation Register set used in multithreaded parallel processor architecture
AU7099000A (en) 1999-09-01 2001-03-26 Intel Corporation Branch instruction for processor
US6650704B1 (en) 1999-10-25 2003-11-18 Irvine Sensors Corporation Method of producing a high quality, high resolution image from a sequence of low quality, low resolution images that are undersampled and subject to jitter
US7681018B2 (en) 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US20020053017A1 (en) * 2000-09-01 2002-05-02 Adiletta Matthew J. Register instructions for a multithreaded processor
AU2002350949A1 (en) * 2001-06-25 2003-01-08 Redhawk Vision Inc. Video event capture, storage and processing method and apparatus
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
US7437724B2 (en) 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
US7643679B2 (en) * 2003-02-13 2010-01-05 Ati Technologies Ulc Method and apparatus for block based image compression with multiple non-uniform block encodings
US7091982B2 (en) * 2004-05-14 2006-08-15 Nvidia Corporation Low power programmable processor
US7250953B2 (en) 2004-05-14 2007-07-31 Nvidia Corporation Statistics instrumentation for low power programmable processor
US7268786B2 (en) * 2004-05-14 2007-09-11 Nvidia Corporation Reconfigurable pipeline for low power programmable processor
US7389006B2 (en) * 2004-05-14 2008-06-17 Nvidia Corporation Auto software configurable register address space for low power programmable processor
US7199799B2 (en) * 2004-05-14 2007-04-03 Nvidia Corporation Interleaving of pixels for low power programmable processor
US7142214B2 (en) * 2004-05-14 2006-11-28 Nvidia Corporation Data format for low power programmable processor
US8295364B2 (en) * 2009-04-02 2012-10-23 Sony Corporation System and method of video data encoding with minimum baseband data transmission
CN111444475B (zh) * 2020-03-24 2023-07-14 广东海洋大学深圳研究院 一种应用在飞行测试数据分析的容错ckf滤波融合方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6193786A (ja) * 1984-10-15 1986-05-12 Kokusai Denshin Denwa Co Ltd <Kdd> 画像信号の適応補間方式
JPS61140289A (ja) * 1984-12-12 1986-06-27 Sony Corp テレビジヨン信号の高能率符号化方法
JPS62250712A (ja) * 1986-04-23 1987-10-31 Mitsubishi Electric Corp 適応型サブサンプル用フイルタ装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2921124A (en) * 1956-12-10 1960-01-12 Bell Telephone Labor Inc Method and apparatus for reducing television bandwidth
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
US4163257A (en) * 1977-12-27 1979-07-31 Rockwell International Corporation Spatial toner for image reconstitution
US4303947A (en) * 1978-06-21 1981-12-01 Xerox Corporation Image interpolation system
JPS5676683A (en) * 1979-11-28 1981-06-24 Ricoh Co Ltd Processing method for picture deformation
US4354243A (en) * 1980-04-11 1982-10-12 Ampex Corporation Two dimensional interpolation circuit for spatial and shading error corrector systems
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
GB8306339D0 (en) * 1982-03-19 1983-04-13 Quantel Ltd Video processing systems
DE3211323C2 (de) * 1982-03-27 1984-02-09 Standard Elektrik Lorenz Ag, 7000 Stuttgart System zur redundanzvermindernden digitalen Übertragung von Fernsehbildsignalen
GB2160051A (en) * 1984-04-26 1985-12-11 Philips Electronic Associated Video signal processing arrangement
US4694414A (en) * 1984-12-19 1987-09-15 Rca Corporation Digital delay interpolation filter with amplitude and phase compensation
US4656516A (en) * 1985-03-25 1987-04-07 Rca Corporation Vertical subsampling and memory synchronization system for a picture within a picture television receiver
US4661987A (en) * 1985-06-03 1987-04-28 The United States Of America As Represented By The Secretary Of The Navy Video processor
US4723163A (en) * 1985-12-26 1988-02-02 North American Philips Consumer Electronics Corp. Adaptive line interpolation for progressive scan displays

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6193786A (ja) * 1984-10-15 1986-05-12 Kokusai Denshin Denwa Co Ltd <Kdd> 画像信号の適応補間方式
JPS61140289A (ja) * 1984-12-12 1986-06-27 Sony Corp テレビジヨン信号の高能率符号化方法
JPS62250712A (ja) * 1986-04-23 1987-10-31 Mitsubishi Electric Corp 適応型サブサンプル用フイルタ装置

Also Published As

Publication number Publication date
DE3850117T2 (de) 1995-02-23
DE3850117D1 (de) 1994-07-14
EP0390818B1 (en) 1994-06-08
KR970003048B1 (en) 1997-03-13
WO1989005082A1 (en) 1989-06-01
CA1319420C (en) 1993-06-22
EP0390818A1 (en) 1990-10-10
US4816913A (en) 1989-03-28
JP2750438B2 (ja) 1998-05-13

Similar Documents

Publication Publication Date Title
JPH03501553A (ja) 2次元ピクセル補間器および2次元で補間されたピクセル値を生成する方法
JPH03502260A (ja) 二重モード加算回路
JPH03501556A (ja) ビデオ信号プロセッサ、圧縮されたビデオデータを処理するための装置、および復元されたビデオ信号を生成する集積回路
JPH03501539A (ja) ビデオ信号処理システム
US5189636A (en) Dual mode combining circuitry
US4835607A (en) Method and apparatus for expanding compressed video data
US7155601B2 (en) Multi-element operand sub-portion shuffle instruction execution
JPH01232463A (ja) データプロセッサシステムとそれを備えるビデオプロセッサシステム
KR970005454B1 (ko) 데이타 처리 시스템 및 내장 프로그램 제어기 장치
US8327108B2 (en) Slave and a master device, a system incorporating the devices, and a method of operating the slave device
AU622879B2 (en) Pixel interpolation circuitry as for a video signal processor
AU622128B2 (en) Processor for expanding a compressed video signal
AU625151B2 (en) Memory controller as for a video signal processor
AU623874B2 (en) Stored program controller with a conditional branch facility as for a video signal processor
AU626847B2 (en) Dual mode adder circuitry
JP2004139156A (ja) 演算処理装置
JPH11150459A (ja) パルス出力回路
JPH02242353A (ja) アドレス演算回路

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