JPH0727571B2 - ラスタ走査表示装置及び図形データ転送方法 - Google Patents

ラスタ走査表示装置及び図形データ転送方法

Info

Publication number
JPH0727571B2
JPH0727571B2 JP63253681A JP25368188A JPH0727571B2 JP H0727571 B2 JPH0727571 B2 JP H0727571B2 JP 63253681 A JP63253681 A JP 63253681A JP 25368188 A JP25368188 A JP 25368188A JP H0727571 B2 JPH0727571 B2 JP H0727571B2
Authority
JP
Japan
Prior art keywords
pixel
address
data
vector
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP63253681A
Other languages
English (en)
Other versions
JPH01129371A (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 JPH01129371A publication Critical patent/JPH01129371A/ja
Publication of JPH0727571B2 publication Critical patent/JPH0727571B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/20Function-generator circuits, e.g. circle generators line or curve smoothing circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/024Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour registers, e.g. to control background, foreground, surface filling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ラスタ走査表示装置及び図形データ転送方
法、特に、画像プロセッサをフレーム・バッファに対し
てインタフェースするバス技術及び通信方法に関する。
〔従来の技術及び発明が解決しようとする課題〕
半導体メモリの価格が下がるに従って、ラスタ走査型フ
レーム・バッファ表示器は、益々一般的になってきてい
る。表示すべき画像は、大容量メモリ内に表され、この
大容量メモリは、スクリーン上の各画素、即ち、ピクセ
ルの輝度及び/又は色をデジタル的に表す。フレーム・
バッファ・メモリは、表示をリフレッシュするために映
像信号を発生するハードウエアと、表示した画像を変更
するためにホスト・コンピュータ又は表示プロセッサが
フレーム・バッファ・メモリを変更できるようにするメ
モリ・ポートと共に設けられる。この分野の概論は、19
80年に米国カリフォルニア州コビナのコンラック・コー
ポレーションのコンラック・ディビジョンが発行した
「ラスタ・グラフィックス・ハンドブック」に記載され
ている。
会話型グラフィック・アプリケーションは、表示された
画像を素早く変更する必要があり、これには、フレーム
・バッファ・メモリを素早く変更する必要がある。ホス
ト・プロセッサ及び表示プロセッサの速度は、高性能に
明らかに重要であるが、更新帯域、即ち、ホスト・プロ
セッサ、又はデータ・プロセッサが各ピクセルをアクセ
スする速度の如きメモリ・システムの性能も重要であ
る。ある種のバスにより、画像描画エンジンがフレーム
・バッファから分離されるように、多くの図形が分割さ
れる。描画エンジンが汎用マイクロプロセッサであり、
フレーム・バッファがデュアル・ポート・メモリである
低機能システムにおいて、このバスはシステム・バスで
も良い。描画エンジンが特殊目的の画像プロセッサであ
るエンジニア・ワークステーションの如き高機能システ
ムにおいて、このバスは、画像プロセッサ及びフレーム
・バッファ間の高速専用バスでも良い。いずれの場合
も、任意の方向のベクトルを描くために、書き込むべき
総てのピクセルに対してバスにアドレス及びデータを送
る必要がある。これは、アドレス及びデータを同時に送
るのに充分なバス信号ラインが必要であるか、又は、マ
ルチプレクス・アドレス/データ・バスの場合、データ
・サイクルが続くアドレス・サイクルに総てのピクセル
書込みを行わなければならないことを意味している。
従来のラスタ走査装置において、フレーム・バッファ内
にデータの2次元ブロック(カラー・システムでは、3
次元)を生成して、表示すべき画像を表す。各データ要
素がピクセルを定義する。なお、ピクセル・データは、
そのピクセルの2次元座標を定義するアドレスと、モノ
クロ・システムでは単一の2進ビットで、またカラー・
システムでは多くのビットで表される値とから構成され
る。ピクセル・データを発生し、1度に1ピクセルを、
即ち、初めにアドレスを次にピクセル値をフレーム・バ
ッファ制御回路に転送する。この回路は、アドレスを読
取り、対応するピクセル値をフレーム・バッファに記憶
させる。画像に変更すべき総てのピクセルに対して、こ
の処理を繰返す。ピクセル値を転送する度にアドレスを
転送することは、表示プロセッサ及びフレーム・バッフ
ァ間の通信インタフェースの広い帯域幅を必要とする。
ほとんどのバス・システムは、データ転送帯域幅を増加
するために「ブロック転送」モードを具えている。この
モードでは、1つのアドレスの後に、この初期アドレス
から始まる連続した記憶位置に書き込まれる多くのデー
タ・ワードが続く。このモードを用いて、X軸又はY軸
に沿ったベクトルを送ることができるが、任意方向のベ
クトルをフレーム・バッファに描画するには、一般的に
有用でない。これは、フレーム・バッファがX−Y配列
として論理的な方向になっておらず、また、物理的メモ
リ・アドレスがX及びYアドレスの組合わせのためであ
る。任意方向のベクトルは、任意方向に進むので、一般
に、隣接したピクセル・アドレスは、連続したメモリ・
アドレスではない。
ロゼナー(Rosener)等による米国特許第4586037号明細
書は、オクタント(8分円)、レジスタ回路及び動作モ
ードを開示しており、この動作モードでは、ベクトルの
開始点を定めるために、ピクセル値と共に、フレーム・
バッファ・メモリに転送される全アドレスをイネーブル
する。オクタント定める3ビット・アドレスと並列に連
続的なピクセル・データを転送するが、次のピクセル値
は、前のアドレスに関連して配置される。よって、各ピ
クセルの前に全アドレスを送ることなく、3ビット・オ
クタント・データが、直前のピクセルに隣接して書き込
むべき次のピクセルの位置を定義する。特に、大容量メ
モリ配列の直接描画アルゴリズムのアプリケーションに
おいて、このアプローチを用いると、効率を大幅に改善
できるが、データの他に少なくとも3ビットを必要とす
る。
関心のある他の領域では、既に表示した画像の上に、カ
ーソル及び直線の如き画像を描画し、フレーム・バッフ
ァに蓄積された下の画像を破壊する事なく直線又はカー
ソル画像を移動させる。スコニック(Sukonick)等によ
る米国特許第4197590号明細書は、消去した直線と交差
又は同時に存在する直線を再生する選択的消去を可能に
する排他的論理和、即ちXOR機能を開示している。このX
OR機能により図の他の部分を消去する事なく、この図の
一部を適当な位置に移動又はドラックできる。このアプ
ローチは、かなりの計算のための費用を必要とし、ま
た、多くの動作制限がある。ゼロックス・パルアルト・
リサーチ・センターで開発され、デー・エッチ・エッチ
・イングレス(D.H.H.Engles)がバイト(BYTE)1981年
8月号の168ページ〜194ページの「スモール・トーク・
グラフィックス・カーネル」に記した他のアプローチ
は、「ビット・ブリット(Bit Blt)」と呼ばれる動作
である。このビット・ブリット処理は、フレーム・バッ
ファに書き込むべき画像を定義する矩形ビット・マップ
を用いる。画像をフレーム・バッファに書き込むとき
に、同じアドレス位置の前の情報を読出し、別のメモリ
に蓄積する。新たな画像を移動又は削除する際、古い情
報をフレーム・バッファの元の位置に再生する。この方
法は、ピクセル・データのほぼ矩形ブロックに適用する
とき、特に、カーソル画像のように小さなサイズに適用
するとき、非常に効率的である。しかし、予め存在する
画像を蓄積且つ再生しなければならないときは、その効
率が大幅に低下する。これは、直線、曲線又は簡単な多
角形のような比較的簡単な新たな画像を表示上に配置す
る場合である。
従来のラスタ表示装置における他の通信インタフェース
制限は、多数のデータ処理段によるリレー、即ちパイプ
ラインである。ガーラチョル(Gharachorloo)による米
国特許第4658247号は、実時間画像発生を実現するため
に、一連のピクセル・プロセッサを接続したライン・バ
ッファ・パイプラインを用いた従来のグラフィック表示
システムの例を開示している。このシステムによる理想
的なパイプラインでは、全段が、対応するデータを同じ
時間で処理している。各段間のデータ転送機構は、簡単
なレジスタでよく、このレジスタは、全パイプライン段
に共通なパイプライン・クロックにより、各処理サイク
ルの終わりにて新たなデータをロードする。しかし、パ
イプラインの1つが、データを処理するのに1パイプラ
イン・クロック・サイクル以上かかると、問題が生じ
る。この問題が生じると、その段がその処理を終わるま
での間、前段からのデータの流れを停止しなければなら
ない。すなわち、その処理が2パイプ段以上に分離す
る。その入力データ、又は、そのパイプ段にて生じるあ
るランダム又は擬似ランダム事象に応じて、パイプ段が
その処理を完了するのに必要な時間が可変ならば、この
問題が悪化する。この場合できることは、遅い下流の処
理が新たなデータを受け入れる準備ができるまで、前
の、即ち、上流の処理が新たなデータを送るのを停止す
ることである。これは、各処理が、後段の総てのパイプ
段の状態を知らなければならないこと、即ち、これら後
段が新たなデータを受ける準備ができたかを知らなけれ
ばならないことを意味する。これを実現する簡単な方法
は、現在の段から前のパイプ段にホールド信号を送るこ
とである。このホールド信号は、現在の段からのビジィ
信号であり、次段、即ち下流段からのホールド信号と論
理的にオアされる。しかし、各オア・ゲートに関連した
信号遅延のために、この技術は、特に、バス構成システ
ムに実現すると、多段の高速システムに適さない。
したがって本発明の目的は、ピクセル・データを発生す
ると共に、フレーム・バッファとの間でこのピクセル・
データを伝送する改良されたアーキテクチャ及び通信プ
ロトコルを用いたラスタ走査表示装置及び図形データ転
送方法の提供にある。
〔課題を解決するための手段及び作用〕
本発明は、ベクトル・ピクセル・データを発生し、フレ
ーム・バッファとの間で転送する方法を改善する。埋め
込まれた(imbedded)ベクトル方向制御と呼ぶ本発明
は、マルチプレクス・アドレス/データ・バス・システ
ム用の強調「ブロック転送」モードを与えるので、ベク
トルの各ピクセル用の1データ・サイクルが続く1アド
レス・サイクルで、任意方向のベクトルを描画できる。
好適には、各アドレス・ワードは、X及びY開始アドレ
スの他に、(1)X方向、(2)Y方向、及び(3)X
又はYのいずれが「大きな(メジャー)」軸か、即ち、
X又はYのいずれがベクトルの各次のピクセル用に増分
すべき軸かを定める3ビットの情報を含んでいる。フレ
ーム・バッファに書込むか読出すかにより、各次のピク
セル用にデータ・ワードを転送する。このデータ・ワー
ドは、メジャー軸に直交する「小さな(マイナー)」軸
に沿ってステップを行うか否かを特定する1ビットの情
報を含んでいる。このビットは、交換可能に、小さな軸
のビット、又はFBSelと呼ばれる。フレーム・バッファ
に書込む際、データ・ワードの各々において、ピクセル
値をフレーム・バッファに送る。フレーム・バッファか
らの読出しの際、ピクセル値を送らない。即ち、データ
・ラインは、フレーム・バッファからの読み出したり、
システム・メモリ又は他のオフ・スクリーン(オフ表
示)メモリに戻すピクセル値用に、開放されたままであ
る。好適な動作において、第1ワードは、完全な開始点
アドレスと、そのベクトルのメジャー軸方向及びマイナ
ー軸方向情報と共に送られる。続いて、転送したり読み
出したりする各ピクセル値用に、第2ワードを送る。こ
の第2ワードは、開始アドレスと共に転送される軸用の
方向ビットが示す方向におけるマイナー軸に沿ってステ
ップするか否かを特定するマイナー軸ビットを含んでい
る。フレーム・バッファ内にピクセル・データを書き込
むために、各第2ワードは、ピクセル値も含んでいる。
各第2ワードを受けると、フレーム・バッファ制御回路
は、特定情報の3ビットが指示する特定のメジャー軸方
向に沿って増分し、マイナー軸ビットにより決まるよう
に、第1ワードで特定された方向におけるマイナー軸に
沿って増分するか増分しない。このアプローチは、ベク
トルを描画するためのバス・ライン及び付加的なバス・
サイクルを節約するので、有効帯域幅が増加する。幾分
効率が下がるか、バス・ラインが増えるが、第1ワード
において、メジャー軸選択ビット及びメジャー軸の方向
ビットを送り、第2ワードにおいて、マイナー軸ビット
及びマイナー軸方向の両方を送ることによっても、この
アプローチを実現できる。この方法は、曲線及び直線の
描画に適用でき、また、幾何学的図形の適当なオクタン
ト遷移点、即ち、頂点にて、新たな開始アドレス及び方
向情報を転送することにより、より複雑な曲線又は多角
形の画像を形成するのに、この方法を利用できる。
また、「ベクトル・ブリット(Vector Blt)」と呼ばれ
る本発明は、フレーム・バッファの一連のアドレスにお
いて、ピクセル値を読み出したり、書き込んだりする方
法であり、デジタル直線描画アルゴリズムによりアドレ
スを発生し、システム・バスを介して、フレーム・バッ
ファ及びオフ・スクリーン・メモリ間でピクセル値を転
送する。これは、エンティティがベクトル・リストで記
載されているとき、カーソル、アイコン又は他の図形エ
ンティティを非破壊的にフレーム・バッファに配置する
方法として利用できる。この方法は、曲線及び他の走査
変換図形エンティティにまで拡張できる。ベクトル・ブ
リットを用いて、ベクトルで定義されるカーソル、アイ
コン等を一時的に配置するとき、オフ・スクリーン・メ
モリへ画像の部分をセーブでき、ピクセル・データをフ
レーム・バッファ内に再生できる。ベクトル・ブリット
は、十字、円及び他の簡単な形の如きわずかな直線で構
成され、大領域をスパンする図形エンティティのピクセ
ルをセーブ/再生するのにより効率的な方法である。よ
って、ベクトル・ブリットを用いて、フレーム・バッフ
ァのX及びY軸に沿った矩形に限定されない多角形が定
義する情報のブロックを移動できる。ベクトル・ブリッ
トを用いて、カーソルの下の予め存在する画像のピクセ
ルを読出し、オフ・スクリーン・メモリにセーブする。
カーソルは、これらピクセルの上に非破壊的に書き込ま
れており、このカーソルを削除又は移動するとき、他の
ベクトル・ブリット動作を用いて、セーブされたピクセ
ルをオフ・スクリーン・メモリから再生する。適切なア
プリケーション及び表示プロセッサ・ソフトウエアによ
り、ビット・ブリットと交換可能に、又は組み合わせて
ベクトル・ブリットを用いることにより、ベクトル、曲
線及びブロック情報の組合わせをフレーム・バッファ内
で、一時的な配置及び移動を行うのに最適な効率とする
ことができる。フレーム・バッファのピクセル・データ
を読出すと共に書き込むために埋め込まれたベクトル方
向制御を用いてインプリメンテーションすることによ
り、ベクトル・ブリットの速度及び効率を更に強調でき
る。
さらに、本発明は、パイプライン構造及び方法であり、
パイプ段の処理時間が異なるか、可変しても、性能に影
響を及ぼす事なく、パイプラインを容易に拡張できる。
これは、パイプ段間にファースト・イン・ファースト・
アウト(FIFO)を分布させることにより実現できる。透
明ラッチを各パイプ段の前に付加する。現在の段がデー
タを受ける準備ができていないとき、このFIFOは、前
段、即ち、上流段から送られるデータを蓄積するための
各パイプ段の入力における深さ1のFIFOとして作用す
る。パイプライン・クロックによりクロックされるレジ
スタを各段に付加した、次段、即ち、下流段から送られ
た現在のホールド信号が、前段、即ち、上流段に送られ
る前に、この信号をラッチする。データをラッチし、ホ
ールド信号を転送する処理がパイプラインで継続してい
るので、次のクロック・サイクル期間中、ある段のホー
ルド信号により、次の上流段が別のホールド信号を発生
する。実際には、各段のホールド信号が、データと逆方
向にパイプラインされる。ホールド信号は、各パイプ段
において1クロック・サイクルだけ遅延されるので、1
クロック・サイクル分のデータをFIFOにラッチする能力
が必要になる。しかし、ホールド信号をパイプラインす
ることにより、総てのパイプ段からビィジィ信号を収集
するのに、カスケード接続又は広範囲なロジックが必要
でなくなる。その結果、構成は、パイプ段の数に限定さ
れないで、容易に拡張できる。
本発明の上述及びその他の目的、特徴及び利点は、添付
図を参照した以下の説明から、より明かになろう。
〔実施例〕
(図形システムの概略) 第1図は、本発明が実施される図形システムの機能ブロ
ック図である。この第1図に示すように、図形システム
(20)は、3つの形式のサブシステム、即ち、アプリケ
ーション・システム(図形データ発生手段)(22)、図
形表示システム(24)、及びこれらアプリケーション・
システム及び図形表示システムをリンクする通信チャン
ネル(26)に分割できる。アプリケーション・システム
及び表示システムを分けることにより、ユーザの要求に
応じたアプリケーション・システム、通信システム及び
表示システムの性能特性を有する多くの異なる方法で、
図形システム機能をまとめることができる。
アプリケーション・システム(22)は、アプリケーショ
ン・エンジン、アプリケーション・プログラム、アプリ
ケーション・データ・ベース、及びインタフェースを含
んでいる。このインターフェースは、表示システムとリ
ンクできる通信チャンネル用である。アプリケーション
・エンジンは、ローカル・ワークステーション計算エン
ジンから最上位のメインフレーム・スーパ・コンピュー
タまでの範囲のものであり、広範囲な機能にわたって、
アプリケーション・プログラムを実行する。アプリケー
ション・システム(22)は、アプリケーション・エンジ
ン又は汎用コンピュータで構成する。このアプリケーシ
ョン・システム(22)は、アプリケーション・ソフトウ
エア(22A)、ソフトウエア・インタフェース・ライブ
ラリ(22B)及びオペレーティング・システム(22C)に
より実行され、これらは、第2図に示すように相互接続
されている。アプリケーション・システム(22)のこれ
以上の詳細は、本発明と密接な関係がないので省略す
る。
第3図は、第1図の表示システムの機能ブロック図であ
る。この第3図の表示システム(24)は、会話型装置を
扱い、図形データ構造を管理し、表示画像を発生し、ア
プリケーション・システムを接続する通信チャンネルを
インタフェースする。この図形システムは、ユーザ入力
からユーザの図形帰還までのループを閉じる総ての要素
を含んでいる。通信チャンネルが低い帯域幅のとき、高
度な会話型図形アプリケーションを実行できる。表示シ
ステムは、図形データ構造を蓄積でき、表示画像を発生
できる。通信帯域幅が非常に高くても、この能力は、ア
プリケーション・システムで実行するプログラムからか
なりの量の仕事を除く。
アプリケーション・システム及び表示システム間の通信
チャンネル(26)には、多くの形式が可能である。この
チャンネルの帯域幅は、非同期直列通信ラインの帯域幅
から、高速データ・バスによる直接接続の帯域幅までの
間で変化する。このチャンネルのデータ・プロトコル
は、非同期RS232Cのように簡単にもなるし、IEEE802.3
(イーサネット)のように複雑にもなる。
(表示システムの概略) 表示システム(24)は、機能的に、通信/制御コマンド
/入力(CCCI)(通信チャンネル・ハンドラー)(3
0)、表示リスト及び構造蓄積(DLSS)(32)、図形パ
イプライン(GP)(34)、及び画像蓄積及び表示(IS
D)(36)のサブシステムに分割できる。これらサブシ
ステム及びこれらの相互接続を第3図に示す。
通信チャンネル・ハンドラー(30)は、ハードウエア・
ドライバ及びソフトウエア・プロトコルの両方を含んで
いる。通信装置用のハードウエア・ドライバは、ハード
ウエア信号レベル、タイミング及びプロトコルの詳細を
扱う。特殊な集積回路チップを制御するドライバ・ソフ
トウエアと同様に、これら集積回路は、最も大きな通信
プロトコルを駆動するのに利用できる。ソフトウエア通
信プロトコルを通信ハードウエアと用いて、チャンネル
によりメッセージ及びデータを渡すのを制御する。
表示システム制御には、ラン・タイム・コントロール、
データ・パス・コントロール、及び表示システムをモニ
タ及び制御するコンテキスト・コントロールがある。シ
ステムの動作開始において、表示システムの電源を入
れ、初期化する。診断及び自己試験は、システム初期化
期間中に実行するが、システム動作後にコマンドに応じ
て実行することもできる。表示システムのラン・タイム
環境における監視サービスには、メッセージ転送、処理
同期及びリソース割り当てがある。データ経路及びデー
タ転送の制御は、表示システム監視の重要な部分であ
る。例えば、システムの構造及び状態に応じて、多くの
異なるデータ消費処理が、通信チャンネルからのコマン
ドの流れを扱ってもよい。ウィンドウ及び仮想ターミナ
ルの図形環境に対する表示システム状況(コンテキス
ト)の監視は、通信、コマンド、会話型入力装置、図形
構造及び表示リスト蓄積に対する状況の調整及び制御を
意味する。全体として、通信チャンネル、会話型装置、
画像蓄積及び表示制御を含む表示システムの資源は、専
用使用又は共用のいずれかにおいて、種々の状況に割り
当てられる。
アプリケーション・システムからのコマンドの流れは、
アプリケーション・プログラムに表示システムの機能を
使用させる。ユーザ・コマンド・インタフェースは、表
示システムのユーザに、コマンドをローカルに実行でき
るようにする。会話型入力装置を用いると、このシステ
ムは、装置制御、読出し及び処理装置データを与え、ウ
ィンドウ及び仮想ターミナルを有する図形環境用の表示
システム状況内で、図形動作を開始する。
会話型装置からの入力により開始する図形動作には、図
形オブジェクトの移動、可視オブジェクトの選択、即ち
「ピッキング」、入力装置の図形状況又はアプリケーシ
ョン・システムからのコマンドの流れの切替えがある。
入力装置の制御により、図形オブジェクトを移動、回
転、及び転送することができる。図形構造又はオブジェ
クトの任意の属性(連続又は分離)は、入力装置からの
データにより変更できる。これには、位置及び方向と共
に、色、シェーディング及びライティング・モデルがあ
る。図形オブジェクト及びメニュ項目の選択は、一般
に、会話型位置決め装置により行う。
表示リスト蓄積(32)は、CCCI(30)及び図形パイプラ
イン(GP)(34)の両方が用いる表示リスト及び構造を
維持する。これら表示リスト及び構造は、CCC1及びGP間
の通信において、キー・ロールとして作用する。表示リ
スト(GPによりインタプレット(翻訳)されるように構
成されている)、及び表示スクリーン上に画像を発生す
るのに用いる制御構造により、図形「オブジェクト」を
表す。図形オブジェクトの作成とは、これら表示リスト
及び制御構造の両方を作ることを意味する。オブジェク
トを作成した後、これら表示リスト及び制御構造を変更
して、表示された画像を変えることができる。図形デー
タ構造変数が、システムの「状態」を決める。ウィンド
ウ及び仮想ターミナルの図形状況の制御は、図形セグメ
ント又はオブジェクトを表すデータ変数及び構造、ビュ
ーイング、表示リスト、及び画像発生処理の状態の切替
えを意味する。
図形パイプライン(GP)(34)は、図形エンティティの
表示リスト記述を低レベルのピクセル記述に走査変換す
るために、また、ピクセル配列又はビット・マップの如
きピクセル記述の直接操作用に、表示リストの読出し及
びインタプレットを容易にする。システムが表示画像を
発生する必要があるとき、制御プロトコルを用いて、図
形パイプライン表示リスト・トラバーサ(traverser)
に画像を表す表示リストを与える。これにより、表示リ
スト・トラバーサは、表示リストの検討を開始する。表
示リストは、図形プリミティブ、ピクセル配列の基準、
モード設定、及び属性設定インストラクションの如き図
形コマンド、並びに制御インストラクションの流れを含
んでいる。変形により、プログラミング言語におけるサ
ブルーチン・コールに類似した方法で繰り返し用いられ
る単純なプリミティブ形状を用いる複雑なオブジェクト
を達成できる。
走査変換は、図形プリミティブ(例えば、線、文字、多
角形等)の記述を、フレーム・バッファに蓄積する1組
のピクセルに変換する処理に関連する。この処理に入力
される記述は、非常に高レベルであり、テキストの位置
及び大きさ、線の端点及び色、多角形の縁、その内側を
塗りつぶすのに用いるパターンの如き幾何学的情報及び
属性情報である。
ピクセル/ラスタ動作には、ピクセル・ブロックのフレ
ーム・バッファ自体内における移動、フレーム・バッフ
ァ及び汎用システム・メモリ間での移動、又は汎用シス
テム・メモリ内での移動がある。本明細書で述べるアー
キテクチャには、これら2つのメモリ・アドレス空間間
に区別がある。ピクセルを転送する際、処理のいくつか
の限定された形式が、ピクセル毎に実行される。
画像蓄積及び表示システム(36)は、ユーザ/操作者に
主要な帰還を行う。この機能は、ユーザに、アプリケー
ションからの図形出力、及びローカル・ユーザ入力用の
図形帰還を与える。この画像蓄積は、一般にピクセルを
基本としたメモリ・システムであり、このメモリ・シス
テムは、画像発生システムにより書込み及び読出しがで
き、通常は、フレーム・バッファである(即ち、表示さ
れた各ピクセルを記述する情報を蓄積する)。画像を蓄
積する他に、このシステムは、データを制御し、物理的
表示器にデータを出力する。ほとんどのピクセルを基本
とした表示は、リフレッシュしなければならないので、
このシステムも、物理的表示器への高速出力チャンネル
を具えなければならない。この物理的表示器は、画像蓄
積システムの制御により、画像又は映像が形成される装
置である。好適には、これは、完全なカラー画像が発生
できるラスタ走査映像型表示器である。この表示装置の
分解能は、画像発生システムの大きさ及びアドレス指定
能力に釣り合う。
(表示システム・アーキテクチャ) 表示システム(24)の物理的配置を第4図に示す。会話
型装置及びブート装置(38)を除いて、総ての制御プロ
セッサ機能は、好適には、CPボード(40)と呼ばれる1
個の大きな多層回路板に実現でき、CPボード上のマイク
ロプロセッサにてソフトウエアを実行できる。キーボー
ド(42)、マウス(44)及び図形入力タブレット(46)
の如き会話型入力装置は、直列RS−232ポート又は他の
適当なインタフェースを介してCPボード(40)に接続す
る。CPボード(40)は、システム・バス(VME)(48)
を介して図形パイプライン(34)と通信する。このCPボ
ードのブロック図を第5図に示し、後述する。
3次元(3D)シェーディングの最終段を除いた図形パイ
プライン(34)の総ての機能は、画像プロセッサ2(処
理手段)(PP2)(50)と呼ばれる単一の回路板上に実
現できる。3Dシェーディングの最終段を、オプションの
Zバッファ・ボード(第8図)に実現する。PP2は、VME
システム・バス(48)を介してCP及び共用メモリ(52)
と通信をすると共に、特別目的のローカル表示バス(5
6)を介してフレーム・バッファ・システム(54)とも
通信をする。図形プロセッサ(パイプライン)(34)の
高レベルの機能は、ビット・スライス・エンジンと呼ぶ
マイクロコード・エンジン(第12A図)上で実行される
マイクロコードに実現する一方、画像転送及び埋め込ま
れたベクトル方向制御の如き低レベルの機能は、特別目
的のハードウエア(第12B、第12C及び第12D図)により
実現する。
フレーム・バッファ(54)には、種々の実現法がある。
例えば、カラー表示の場合、単一ボードが8プレーン
(256色)システムでもよいし、2ボードが12プレーン
(4096色)システムでもよい。第2フレーム・バッファ
・ボードを付加することにより、12プレーン・システム
を24プレーン・システムのようにも構成できる。8プレ
ーン・ボードを減らすことにより、単一ボードの4プレ
ーン(16色)システムを構成できる。単一プレーン・ボ
ードは、単色表示に充分である。好適な実施例では、60
Hzノンインタレースで動作する1280×1024のカラーCRT
モニタである。
第5図は、第4図の制御プロセッサ(40)のブロック図
である。この制御プロセッサ(40)は、高レベル図形及
びI/O制御タスクを実行する。これらタスクには、アプ
リケーション・エンジン(AE)(22)との通信処理、こ
のAEからのコマンドの流れの翻訳又はルーティング(ro
uting)、適当な時に図形パイプライン用のコマンドの
生成、内部図形D構造の生成及び管理、ユーザからの入
力の管理、及び図形パイプラインの管理がある。極端に
は、CPは、AE及びユーザから見ると、図形表示システム
(20)の機能及びシマンティクス(semantics)を決定
する表示システムの一部である。好適な実施例におい
て、制御プロセッサ(CP)(40)は、モトローラ社製16
MHz68020型マイクロプロセッサ(CPU)(60)及び68881
型フローティング・ポイント・コプロセッサ(FPU)(6
2)を含んでいる。また、CP(40)は、68020をシステム
・バス(VME)(48)にインタフェースするシステム・
バス・インタフェース回路(64)も含んでいる。よっ
て、CPは、他のプロセッサ又はメモリ・システムとバス
を介して通信できる。CPメモリ(66)は、ボードRAM上
に4メガバイトを与える。通信インタフェース(68)に
より、CPは、外部装置と通信ができる。このインタフェ
ースは、38400ボー以上のRS−232直列通信(非同期)
(外部クロックによって、より高速が可能になる)、2
個のRS−232C直列通信ポート及びセントロニクス型ハー
ドコピー・ポート、及びIEEE802.3(イーサネット)ネ
ットワークをサポートしている。
電源投入直後に、マイクロプロセッサは、初期診断試験
を実行して、システムがブート装置から確実にロードで
きるようにする。初期自己試験後、ブート装置を用い
て、DSソフトウエア及びGPマイクロコードをロードす
る。ブート装置は、蓄積容量が1メガバイトの5.25イン
チ・フロッピ・ディスクでもよい。CPシステムの電源投
入用コード、初期自己試験、及びブート・ロードは、PR
OM/ROMに記憶されており、このPROM/ROMは、マイクロプ
ロセッサ・アドレス空間(66)の特定の「電源投入」部
分に存在する。
制御プロセッサ・サブシステム(40)(ワークステーシ
ョン構成の場合は、アプリケーション・エンジン(AE)
サブシステム(22)も)は、論理的には、共用メモリ
(52)内の表示リスト及び他のデータ構造(32)によ
り、また、物理的には、VMEシステム・バス(48)によ
り、図形パイプラインと通信を行う。(第7図参照)バ
スによりアクセス可能な任意のメモリ(例えば、基本的
なターミナル構造の場合、CPボード上のメモリ(66))
を、後述する画像プロセッサの如きバス・マスタである
パイプライン段によりアクセスできる。
この通信は、CPボード(40)及びPP2ボード間で行う。C
P及びPP2は、VMEバス(48)に対して、マスタ及びスレ
ーブ・インタフェースの両方を具えている。マスタ・イ
ンタフェースは、通常システム動作期間中に用いる主要
なインタフェースである。これらを用いて、表示リスト
を検査し、データ構造をアクセスする(これらは、CP又
は他のVMEバス・マスタを論理的に共用しても、しなく
てもよい)。PP2のVMEスレーブ・インタフェースは、初
期化期間中、マイクロコード・デバッキング期間中、自
己試験実行期間中、及び割り込み要求を受ける期間中に
用いる。スレーブ・インタフェースは、VMEバスを介し
て、CP/AEにPP2のあるハードウエア要素が見えるように
する。
図形パイプライン・サブシステム用にCPが組み立てた最
も重要なデータ構造は、表示リスト(32)(第3図)で
あり、この表示リストは、図形コマンド及び関連したデ
ータを含むインストラクションのバイト構成の流れを与
える。フレーム・バッファ・サブシステムにおいて、ボ
ード上で実行される動作などの総ての図形操作は、表示
リストにより、制御される(少なくとも監視される)。
(図形パイプライン・サブシステム) 図形パイプライン(34)(第3図)の機能のトップ・レ
ベルのブレークダウンを、データ流れ図の形式で第6図
に示す。この図において、円は処理を表し、水平線はデ
ータ構造を表す。矢印はデータの流れを表し、箱はI/O
装置(データ・ソース/シンク)を表す。以下、このデ
ータ流れ図に示したエンティティを簡単に説明する。図
形パイプラインを3つの主な処理サブシステム、即ち、
空間処理及び制御(MSPC)サブシステムのモデル化(MS
PC)(80)、変換サブシステム(82)、及びスクリーン
空間及びピクセル処理(SSPP)サブシステム(84)に分
割する。共通メモリ内の多くのデータ構造を、種々のサ
ブシステムにより、アクセス(いくらかは変更)する。
3つの総てのサブシステムは、固定小数点及び浮動小数
点演算を実行できる。
図形パイプラインの状況内において、用語「空間のモデ
ル化」を用いて、表示リストにて定義される幾何学座標
空間を記述する。MSPCサブシステム(80)は、制御プロ
セッサ(及び/又はアプリケーション・エンジン(A
E))、図形パイプライン及びフレーム・バッファ・シ
ステム間の総てのインタフェースを監視すると共に、図
形パイプライン内の多くの状況/タスクの管理及び調整
に対して応答可能である。このMSPCサブシステム(80)
は、「前置変換」(空間モデル化)表示リスト座標デー
タにて、必要ならば、かかる演算を実行する。
変換サブシステム(82)は、スケール、点(座標変
換)、ベクトル(ドット及び交差積、長さの正規化)、
及びマトリクス(マトリクス乗算、決定評価、線形シス
テムの解法)における集中的操作を数値的に扱う。
スクリーン空間及びピクセル処理サブシステム(84)
は、図形プリミティブ(線、テキスト、パネル及び面)
の走査変換、及びピクセル・データの直接操作(ビット
・ブリット、ベクトル・ブリット)を容易にし、後述の
如く、これは、フレーム・バッファの矩形領域及び直線
又は曲線に対するクリッピング/シザリング(scissori
ng)を含んでいる。
図形パイプラインは、インストラクション・セット・プ
ロセッサとして動作し、システム・メモリ内に存在する
表示プログラムを実行する。このシステム・メモリは、
アプリケーション・エンジン、制御プロセッサ、及び図
形パイプライン.サブシステムにより共用されている。
このプログラムを表示リスト(86)と呼ぶ。この表示リ
ストは、アプリケーション・エンジン及び/又は制御プ
ロセッサにより生成できる。図形インストラクション・
セットは、図形プリミティブを描画すると共に、それら
の属性を制御するオペコードと呼ぶ命令を含んでいる。
通常の図形オペコードの他に、図形パイプライン・アー
キテクチャは、単純な「汎用」インストラクション・セ
ットを付加できるようにする。これは、自発的なアルゴ
リズミック表示リストの生成を(実時間力学、プログラ
ムしたアニメーション及びCPのないシステムを援護し
て)容易にできる。別に定義したオペコードをパイプラ
イン命令セットに付加して、カストマイズした操作用の
マイクロコードにアクセスできる。表示リストの他に、
共用メモリには、制御ブロック(88)がある。これら
は、パイプライン制御ブロック、表示タスク制御ブロッ
ク、及び関連したデータ(例えば、スタック)を含んで
いる。これらの構造は、種々の表示リスト用の「環境状
態」情報を維持している。各「独立した」表示リスト
は、それ自体のタスク制御ブロック及びスタックを具え
ている。
MSPCサブシステム(80)は、表示リストのパイプライン
側、及び制御ブロック・アクセス・プロトコルを扱う。
これは、表示リスト・パーサ及びディスパッチング・メ
カニズムを具えている。これは、表示リスト・フォーマ
ットからのデータを内部パイプライン・フォーマットに
変換する。これは、各表示リストに関連したスタックを
管理する。MSPCサブシステムが、汎用パイプライン・オ
ペコードを実行する。MSPCは、「ホット・サイド・デー
タ」、パイプ・データ、ピクセル・プリミティブ、及び
/又は制御情報又は他のパイプライン・サブシステムを
送り、種々のサブシステムからの状態及び/又は結果を
受ける。MSPCモジュールは、図形パイプライン用のデー
タ流れネットワーク内の中央制御及び通信ノードを含ん
でいる。表示リスト検査及び他の外部プロトコル用のサ
ポートは、論理的にこのモジュール内に含まれる。その
機能が主に制御指向(モード設定動作、制御動作の変更
等)である表示リスト・オペコードは、MSPCサブシステ
ム内で実行される。ホット・サイド機構にCPをアクセル
させるコードも、MSPCサブシステム内に論理的に存在す
る。用語「ホット・サイド」は、フレーム・バッファの
映像出力側であり、このハードウエアは、ラスタ走査に
おいて、フレーム・バッファを助け、CRT(58)用の映
像及びタイミング信号を発生する。他の総ての映像信号
源も、このカテゴリに含まれ、それらの出力をCRTへの
経路上にてデジタル映像の流れに混合する。それに対し
て、フレーム・バッファの「コールド・サイド」は、ラ
ンダム・アクセス・ポートであり、これにより、走査変
換及びラスタ動作を行う。ホット・サイド機構への総て
のアクセスは、パイプラインを介して生じ、表示リスト
・オペコードによりホット・サイド・データをアクセス
する。「ピクセル・プリミティブ」は、図形プリミティ
ブ(直線、テキスト、マーカー、パネル等)であり、そ
れらの幾何学的座標はフレーム・バッファ・ピクセル座
標内に直接表す。このようなものなので、変換する必要
がない。ピクセル空間プリミティブは、総ての変換処理
をバイパスすることにより、表示リストからの最高に達
成可能なパイプライン・スループットをフレーム・バッ
ファに与える。変換処理をディスエーブルする表示リス
ト・インストラクションにより、ピクセル空間プリミテ
ィブをマイクロコード/ソフトウエア内に設ける。
変換サブシステム(82)の主な目的は、表示リスト座標
データにおける変換をモデル化し、観察することであ
る。これはまた、座標データにおけるマトリクス乗算も
実行する。さらにこれは、(複雑な変換マトリクスを生
成するための)マトリクス乗算、及び透視分割も実行す
る。他の高度な算術動作は、変換サブシステム内で実行
される。主として、「パイプ・データ」は、MSPCサブシ
ステムから変換サブシステムを介してSSPPサブシステム
に流れる(空間内、スクリーン空間外をモデル化する)
図形プリミティブ座標のながれである。
SSPPサブシステム(84)は、ビューポート/ビューボッ
クス・クリッピング、図形プリミティブの走査変換、及
びピクセル配列におけるラスタ動作に対して応答可能で
ある。SSPPは、ピクセル空間(及びZバッファ)座標内
に特定された図形エンティティの記述を行い、ピクセル
の適当なセットを発生(又は検索)し、フレーム・バッ
ファ又はメイン・メモリに/から移動する。SSPPサブシ
ステムが実行するこのアルゴリズムは、マイクロコード
及びハードウエアの組合わせにより実現する。
アーキテクチャ的には、システム・メモリ(52)内のピ
クセル配列(92)は、ビットブリット及びベクトル・ブ
リット動作のソース及び/又はディストネーションとす
ることができる。SSPPサブシステムによる図形プリミテ
ィブの走査変換は、これらメイン・メモリ・ピクセル配
列及びフレーム・バッファ内のピクセルを変更できる。
走査変換が(任意の領域を)枠にはめ込むと、SSPPサブ
システムは、「サイディング・リスト」、「走査ライン
・リスト」及び「フィル・パターン・データ構造」を含
む走査変換データ構造を用いる。ビット・マップによる
文字フォント及びマーカ・フォントは、他のピクセル配
列と同様なフォーマットで蓄積されている。各文字/マ
ーカ定義は、全体的なフォント・ピクセル配列のほぼ矩
形を占める。直線用のダッシュ・パターン並びにビット
・ブリット及びベクトル・ブリット用の中間調パターン
は、それ自体の特別なデータ・フォーマットを具えてい
る。
最後に、フレーム・バッファ・サブシステム(54)への
/からのいくつかのデータの流れがある。制御レジスタ
・データ(96)は、1つである。多くの制御レジスタ
が、スレーム・バッファ・サブシステム内に存在する。
これらのいくつかは、映像マルチプレクサ経路制御レジ
スタ及びフレーム・バッファ可視マスクの如き「ホット
・サイド」上にある。他のものは、ピクセル組合わせル
ール・レジスタ、読出し/書込みマスク、及びローカル
表示バス・アドレス・マッピング・レジスタの如き「コ
ールド・サイド」上にある。
パイプライン・サブシステム及びフレーム・バッファ・
サブシステム間を流れる主なデータの流れは、ピクセル
・データ(98)の流れである。変換の基本的なモード
は、フレーム・バッファのアドレス空間におけるブレゼ
ンハム(Bresenham)アルゴリズムの経路に沿って、フ
レーム・バッファの記憶位置に順次書き込まれた(ピク
セル(98))又は読み出された(ピクセル(100))デ
ータの線形ブロックのようなものである。埋め込まれた
方向制御を用いると、アドレス・サイクルの必要制が、
各ブロックの初めのみにおいて生じるが、このデータ・
サイクルは、各ピクセルにて生じる。
全体的なビット・プラン・インデックス・テーブル用の
データと共に、赤、緑及び青映像ルックアップ・テーブ
ル用のカラー・マップ・データ(102)を、図形パイプ
ラインにより、これらテーブルに転送する。パイプライ
ンを介して、戻り経路を読み出すことにより、出力カラ
ー・データ(104)がシステム診断試験に利用できる。
「バグ」データ(104)は、ローカル表示バス活動レジ
スタに蓄積されたデータである。これを用いると、VME
バス・マスタは、初めにフレーム・バッファに向かうパ
イプライン出力データを捕らえることができ、システム
・メモリ内の「仮想」フレーム・バッファの更新、又は
診断試験の如き他の目的に利用できる。バグは、フレー
ム・バッファ・サブシステム内の制御レジスタに書き込
むことにより、起動/非起動される。これが起動される
と、フレーム・バッファ・メモリ用に定めた各LDB書込
みサイクルが阻止され、バグに蓄積される。また、VME
バス・マスタがこのサイクルをロードしなくなるまで、
パイプラインがオフに維持される。
第7図は、図形パイプラインの構成の2つの例の簡略化
したブロック図である。この第7図に示す2つのブロッ
ク図において、パイプライン・データは、ボードの位置
に応じて、左から右に流れる。制御プロセッサ・サブシ
ステム(40)は、論理的に、(PP2(50)及びLDB(56)
を含む)図形パイプライン(34)の左であり、フレーム
・バッファ・サブシステム(54)は、論理的に右であ
る。好適な実施例では、画像プロセッサ(PP2)ボード
及びそのマイクロコードを含んでおり、オプションとし
て、Zバッファ(ZB)ボードを含むこともできる。ZBボ
ードを用いる際、このZBボードは、LDBを2つの部分(5
6A)及び(56B)に分割する。
第8図は、ZBボードの高レベルのブロック図である。こ
の図の中央部分に実現されたZバッファ・アルゴリズム
(110)は、簡単であり、ラスタ表示上の3D幾何学面の
画像の描写において用いる隠面消去用の既知の技術なの
で、詳細説明を省略する。好適な実施例において、Zバ
ッファ(110)は、各ピクセル位置の奥行情報を蓄積す
るために、1280×1024×16ビットのZバッファ・メモリ
(112)を有する。ZBボードには、3角形の面当てを行
うための特別なハードウエアも含まれている。このハー
ドウエアは、プログラムされたロジック制御ユニット、
及びプレーン等式発生器(PGE)チップと呼ばれるデー
タ経路ゲート配列(114)から構成される。このハード
ウエアの機能は、(1)各3角形の各ピクセルにおける
奥行及び輝度を計算し、(2)(3角形の見える部分
の)ピクセルの輝度値をフレーム・バッファに渡し、
(3)(常に、各ピクセル位置が、見る位置に最も近い
3角形からのZ値を含むように)更新されたZバッファ
・メモリを維持することである。また、ZBボードは、Z
バッファ機能の周囲でデータをバイパスするために、パ
ススルー経路(116)も具えている。
PP2の「右側」、即ち「下流」におけるPP2及びZバッフ
ァ間のハードウエア・インタフェースは、クロックさ
れ、双方向の32ビットでマルチプレクスされたアドレス
及びデータ・バスであり、このバスは、ローカル表示バ
ス(LDB)である。このバスには、入力側(ILDB)(56
A)及び出力側(56B)がある。したがって、ZBボードに
は、入力(左、上流)側のILDB(56A)に対するスレー
ブ・インタフェースと、出力(右、下流)側のLDB(56
B)に対するマスタ・インタフェース(118)がある。デ
ータは、2ディープ・バス・ユニット(120)を介して
入力し、16ディープ・データFIFO(122)を介してLDBバ
ス・ドライバ(124)に出力する。このバス・ドライバ
(124)は、データをフレーム・バッファ・サブシステ
ム(54)に転送する。ZBボードには、ZB(110)をバイ
パスする戻りデータ経路(12)もある。戻りデータは、
LDB(56B)から2ディープFIFO(126)に入り、ILDBド
ライバ(128)によりPP2に出力する。このFIFO及びその
動作は、第17図を参照して更に後述する。
以下の説明では、図形パイプライン及びフレーム・バッ
ファ間のインタフェース(ローカル表示バス)、画像プ
ロセッサ(PP2)、及びフレーム・バッファ制御(FBC)
について述べる。
(ローカル表示バス(LDB)) 上述の如く、図形パイプラインは、ローカル表示バス
(LDB)によりフレーム・バッファに対してインタフェ
ースされる。以下、第9図、第10A〜第10F図を参照し
て、LDBの構造及び機能について簡単に説明する。
LDBは、PP2をZBボードに接続すると共に、ZBをFBフレー
ム・バッファ(54)に接続する(又は、ZB(110)を用
いなければ、PP2をFBに直接接続する)。(第15図によ
り詳細に示す)バスは、好適には、74ナノ秒の共通クロ
ックにより同期された32ビットのマルチプレックスされ
たアドレス・データ・バスである。各アドレス又はデー
タ・サイクルは、1クロック・サイクルに存在する。多
くのデータ・サイクルが各アドレス・サイクルに対して
可能になり、アドレス増分(スレーブに前に通信された
増分値)を暗示する。各ボードは、データ(又はアドレ
ス)を受けるために、2以上の奥行のFIFOを有する。ZB
は、両側からのデータを受けることが出来るので、上述
の如く、2個の左から右へのFIFO(120)、(122)及び
戻り、即ち読出しFIFO(126)を有する。フレーム・バ
ッファ・サブシステム(54)は、FB入力FIFO(130)及
びFB読出しFIFO(132)を有し、フレーム・バッファ・
メモリ(130)内のピクセル・データを書込み又は読出
しする。以下、単に「TAGチップ」(138)と呼ぶベクト
ル・アドレス発生器又はタイリング・アドレス発生器に
より、PP2ボード(50)の通信インタフェースを設け
る。(好適には、タイリング機能を設けて、ZBボードを
利用できるようにするが、本発明には直接関係がない。
これに関しては、1985年4月5日に出願された米国特許
出願第720659号明細書(特開昭61−276074号公報に対
応)に詳細に開示されている。)TAGチップ(138)は、
出力FIFO(140)及び入力FIFO(142)を含んでおり、こ
れらは、1個のFIFOに容易に組み合わせて、マルチプレ
クスされるアドレス/データ・バス上の交互I/OFIFOと
して利用できる。
入力レディ及び出力レディ信号により、ハンドシェーキ
ングを行う。ボードの送り側は、FIFOを必要としない
が、出力レディ信号を発生し、入力レディ信号を受けな
ければならない。ZBのないシステムにおいて、PP2がマ
スタであり、FBがスレーブである。FBからのピクセル・
データを読出す際、FIFO(130)、(132)、(140)及
び(142)がパイプラインを制御する。ZBがあるが、ア
クティブでない時、LDBは、各方向に3パイプ段の遅延
により伝達を行う(バースト・レートには影響なく、待
ち時間のみである)。ZBもスレーブとして聴く。(タイ
リングが開始しようとする時に、ZB制御レジスタに書き
込むことにより)アクティブであることが告げられる
と、ZBは、LDBを2つのバス(56A)及び(56B)に分割
し、PP2に対してはスレーブとして、またFBに対しては
マスタとして働く。タイリング期間中、PS2は、各水平
ライン・セグメント用の開始アドレス及びプレーン等式
増分をZBに送り、ZBは、ピクセル・データ書込み及びア
ドレス更新をFBに送る。
第15図(フレーム・バッファ制御回路のブロック図)に
おいて、LDB(56)は、32本のアドレス/データ・ライ
ン(150)及び7本の制御ラインから構成されており、
リセット及びクロック信号ライン(図示せず)を含んで
いない。アドレス/データ・ラインは、トライステート
であるが、制御ラインではない。FBSELと呼ぶ制御ライ
ン(152)は、FB及びZB上の2つのアドレス増分値の間
で選択を行う。PP2(又はZB)が送った読出し、書込み
及びアドレス制御信号を2本のライン(154)及び(15
6)にエンコードする。これら2本のラインの論理和
(オア)により、PP2からの出力レディ信号(155)を得
る。FBは、オープン・コレクタ・ワイヤ・アンド・ライ
ンを介して、入力レディ(IR)信号(158)をPP2に戻
す。IRは、「非保持」信号を上流のFIFOに与えることに
より、入力FIFO(130)がアドレス、書込みデータ又は
読出しコマンドを受け入れる準備ができたことを示す。
読出しデータは、別の方向(FBからPP2)で伝わり、2
つの異なるハンドシェーク信号、即ち、読出し出力レデ
ィ(ROR)(162)及び読出し出力レディ(RIR)(164)
を用いる。読出しデータが出力FIFO(132)にて利用可
能なとき、FBがROR(162)をPP2に送る。これは、オー
プン・コレクタ・ワイヤ・アンド・ラインである。FB
は、利用可能なデータを読み出したときばかりでなく、
解除したときにも、このラインをセットする(「高」に
上昇させることができる)。PP2がRIR(164)をFBに送
り、読出しデータを受け取る準備ができたことを示す。
2つの読出しハンドシェーク信号の他に、読出し出力イ
ネーブル(ROE)(160)と呼ぶ第3ラインがある。この
ラインは、1クロック遅延で、スレーブの出力バッファ
・イネーブルを明らかに制御する(即ち、スレーブは、
このバス・ラインを登録して、このラインを出力バッフ
ァ・イネーブルに接続しなければならない)。
これら信号の利用をより明瞭にするためのいくつかのタ
イミング例を、次に説明する。これらタイミング図(第
10A〜第10F図)は、どのクロックサイクルにどの信号が
アサート(出力)するかを示すものであり、クロック・
サイクル内の遅延時間を示すものではない。垂直線は、
立ち上がり(アクティブ)のクロック縁を示す。1対の
垂直線間の空間は、1クロック・サイクル(74ナノ秒)
を示す。信号名は、図の左側に示すが、対応する物理的
バス・ラインの極性は表さない。各クロック・サイクル
に引いた水平線は、信号がアサートされていることを示
す。残った空間には、信号がアサートされていない。ア
ドレス/データ・バスでは、水平線セグメントの部分に
3文字のコードを用いて、そのバスの情報が何かを表
す。「aaa」でアドレスを表し、「rd1」で読出しデータ
の第1ワードを表し、「wd1」で書込みデータの第1ワ
ードを表し、以下同様である。ブランクは、アドレス/
データ・バスの高インピーダンス状態を表す。Xは「ド
ント・ケア」状態(レシーバは、無視しなければなら
ず、ドライバは、ガーベージを送るのが自由である)を
表す。
第10A図は、9回書込みの単純なバーストを示す。この
例は、垂直ベクトルを画素表示する典型である。マスタ
(PP2)は、アドレス・サイクルを実行した後、9回の
書込みデータ・サイクルを実行する。FBから入力レディ
(IR)が送られないときは常に、PP2が次のクロック期
間中、同じ書込みデータをバス上に維持する。この例に
おいて、FBは最初の5ワードをそのFIFOに取り込んで、
メモリ・サイクル中待たなければならない。垂直ベクト
ルの2ピクセルを各メモリ・サイクルにて書き込めるの
で、各メモリ・サイクル後、更に2ワードを取り込む。
次に、第10B図は、6回読出しのバーストを示す。FBか
らのIRラインを用いて、仮とえデータが渡されてなくて
も、読出しコマンドを受け入れる準備ができたことを表
す。この例では、FBは、5つの読出しコマンドをバッフ
ァし、6番目の余裕ができるまで、IRをなくす。これ
は、(垂直読出しに対して生じたように)2つのバース
トにおいて、読出しからのデータを戻す。PP2は、常に
データを受け入れる準備ができているので、その読出し
入力レディ・ライン(RIR)を除去しない。ROR及びRIR
の初めにおけるXXXは、「ドント・ケア」であり、これ
は、前の状態が判らないためである。非常に高速なスレ
ーブによっても、第3サイクル前に、第1読出しデータ
・ワードを多分戻せない。よって、その点まで(即ち、
第1読出しリクエストが送られる期間のサイクルにわた
って)、関連したハンドシェーク・ライン(ROR及びRI
R)を未定義にできる。これにより、スレーブ(FB)
は、これらが選択されたか否かを決定する。バッファさ
れたパス・スルー・ボー(ZB)は、後のアドレス・サイ
クルで、それらの読出しデータFIFOロジックをクリアし
て、未知の制御ラインのいかなる影響も取り除く。次の
例は、PP2が読出しデータの全バーストを一度に受け取
れないときに、何が生じるかを示す。
第10C図は、短い待ち時間による4回の読出しのバース
トを示す。ここでは、FBが読出しコマンドの全バースト
をフル・レートで受け取るが、PP2は、フル・レート・
データ戻りを扱えない。PP2は、最初の2ワードを受け
取って、RIRを除去する。2クロック後、PP2は、更に1
つのワードに対して準備され、RIRを再アサートする。
更に、2クロック後、他のワードに対して準備される。
この第4ワードの後、RIRを再び除去して、PP2が更に他
のワードに対して準備できていないことを示す。最早、
読出しデータは利用可能ではないので、今度のRIRは影
響しない。次のサイクルでデータを戻す準備ができた場
合、スレーブの出力バッファをイネーブルするために、
RDの第1サイクルと同時に、ROEをセットする。マスタ
により読出しデータの最終ワードがクロックされるの
で、ROEを除去する。
第10D図は、2回の書込みが続く2回の読出しを示す。
データ・バスの競合を避けるために、ROEが除去された
2サイクルまで、書込み(アドレス・サイクルを含む)
を開始してはいけない。これにより、スレーブ用の1サ
イクルは、ROEの非アサート及びバスのデッド・サイク
ルに応答して、それらのドライバをディスエーブルし
て、競合を防ぐ。
第10E図は、遅い書込み(制御レジスタ・ロードの典
型)を示す。この例は、夫々アドレス・サイクルを有す
る2回の書込みを表す。これは、ZB又はFB上での制御レ
ジスタのロードの典型である。データ・サイクルは、ア
ドレスの直後に続かないことに留意されたい。かかるギ
ャップは、他の例のあるものでは同様に許されている。
また、次に示すように、多くの読出し又は書込みサイク
ルの途中において、ギャップを有することも許されてい
る。
第10F図は、遅い読出しを示す。この例では、3回の読
出しの遅いバーストを示す。第1読出しリクエスト後の
クロックまで(この例では、サイクル5まで)、スレー
ブは、RORの既知の状態に応答する必要がない。ROEがセ
ットされた後の1クロックまで、スレーブはデータ・バ
スを駆動しないことに留意されたい。
(LDBアドレス・マップ) 次に、ローカル表示バスのアドレス・マップ、その構造
の定義、LDBを介して通信されたデータの機能について
説明する。LDBは、232個の32ビット・ワードを夫々アド
レス指定する。バイト又は他の部分的なワード変換は、
サポートされていない。32ビット未満の装置は、読出し
期間中に、利用しないライン上の未定義データ(ガーベ
ージ)を単に戻し、書込み期間中に、余分なビットを無
視する。
アドレス空間は、各々が228個のワードである16個のセ
クションに分割する。最上位セクションは、I/O空間
(ビット31、30、29及び28が総て1)である。最下位セ
クション(ビット31〜28は、総て0)は、フレーム及び
Zバッファ・メモリ空間である。それらの間の残りの14
セクションは、LDB上に存在する将来のシステム用に確
保しておく。FBもZBも、これらアドレスに応答しない。
I/O空間を、各々が224個のワードの16個のスロットに更
に分割する。各スレーブLDBボードは、背面コネクタ
(図示せず)の4個のスロット・ピンにより定義される
物理的スロット・アドレスに応答する。それはまた、そ
れなりに構成されていれば、他のソフト・スロット・ア
ドレスにも応答する。総てのソフト・スロット・アドレ
スをリセットによりクリア(ディスエーブル)する。ハ
ード・スロットでは、I/O空間は、1111SSSSaaaaaaaaaaa
aaaaaaaaaaaaaである。ここで、SSSSは、スロット番号
であり、aは、所定ボード内のI/O位置をデコードする
のに利用可能な残りの24本のアドレス・ラインを表す。
FB及びZBのメモリ空間は、2進で0000HXYMyyyyyyyyyyyy
xxxxxxxxxxxxである。ここで、Hは、「ためらい」ビッ
ト(セットされた時、このビットは、第1ピクセルの前
にステップのないことを示す)であり、Xは、Xステッ
プ方向(セットが右から左を示す)であり、Yは、Yス
テップ方向(セットが上から下を示す)であり、Mは、
メジャー軸指示ビット(セットは、X軸がメジャー軸を
示す)であり、yyyyyyyyyyyyは、初期y位置であり、xx
xxxxxxxxxxは、初期x位置である。ダブル・バッファ・
システムZBの両フレーム・バッファと、オーバレィー・
フレーム・バッファの総ては、この1つのアドレス空間
を占める。I/O空間を介してアクセス可能な制御レジス
タにより、各バッファをイネーブル及びディスエーブル
できる。任意の1個のバッファをアクセスすることは、
それをイネーブルし、他の総てをディスエーブルするこ
とにより達成できる。
FBSELを用いて、メモリ空間のデータ・サイクル期間
中、アドレス増分を制御する。FBSELがセットされる
と、データを転送する前に、メジャー及びマイナー軸の
両方をステップさせる。FBSELがセットされないと、メ
ジャー軸のみがステップされる。アドレス・サイクル内
でためらいビットがセットされると、第1データ・サイ
クルは、FBSELを無視し、どの軸もステップしない。さ
らに、データ・サイクルは、通常FBSELに従う。
FBSELは、ZBに対して付加的な意味がある。メモリ空間
に対するアドレス・サイクル期間中、FBSELは、どのプ
レーン等式増分が利用のために登録するかを決める。こ
の機能は、3Dタイリングで用いる。PP2は、アドレス・
サイクル期間中、FBSELを送り、新たなX位置が2つの
可能性のうちの左(小さいほう)になる。
(画像プロセッサ(PP2)) 第11図は、第7図の図形パイプラインで用いた画像プロ
セッサ(PP2)の全体的なブロック図である。この画像
プロセッサ(50)は、多くの機能要素を具えている。VM
Eマスタ・インタフェース(170)により、PP2をVMEバス
に接続する。これは、また、VMEバスに接続されたブー
ト及びデバック回路(172)を含んでいる。これの実現
は、ほとんど従来技術であり、本発明と直接関係がな
い。VMEマスタ・インタフェース(170)を介して、VME
バスにより通信される情報は、内部画像プロセッサ・バ
ス(PBUS)(174)に転送される。このバスは、ビット
・スライス・エンジン(176)が用いる主要なデータ・
バスである。ベクトル又はタイリング・アドレス発生器
(TAGチップ)(138)が、ローカル表示バス(56)に対
してインタフェースをする。TAGチップ(138)は、変換
エンジン(178)に接続するように示している。更に後
述する如く、PBUS(174)の情報を、変換エンジン(17
8)によって、変換する事なく、TAGチップ(138)を介
してローカル表示バスに直接渡すことができる。
第12A図は、マイクロコード又はビット・スライス・エ
ンジン(176)の好適な実現と、PBUS(174)を介しての
VMEマスタ・インタフェース(170)と変換エンジン(17
8)の相互接続の詳細を示す。ビット・スライス・エン
ジンの一般的な構造及び動作は、当業者に周知なので、
本発明に関係する部分のみ説明する。
第12A1、第12A2、第12B、第12C及び第12D図は、第11図
の画像プロセッサのより詳細なブロック図である。動作
を説明すれば、VMEバス・インタフェースは、プログラ
ム・カウンタの制御により動作する。このプログラム・
カウンタは、実行すべき表示リスト内の次のインストラ
クションにポインタを与える。このプログラム・カウン
タに追従して、次に、インタフェースは、各コマンドを
フェッチする。このインタフェースが各ワードを処理す
るにつれ、このインタフェースは、各ワードを回転レジ
スタ(180)に読み込み、マップ・オフし、このワード
の1バイトをシーケンサ(182)に読み込み、そのワー
ドの残りをデータ・スクラッチ・パッドRAM(184)に蓄
積する。ワードが、移動インストラクスションのような
画像コマンドならば、このインストラクションは、次の
2つの32ビット・ワードがベクトルの第1アドレスのX
及びY座標であることを伝える。シーケンサにロードさ
れたバイトは、ルックアップ・テーブル内の相対位置を
アドレス指定し、インストラクションの配列は、シーケ
ンサにロードされたバイトが制御するジャンプを有す
る。これにより、シーケンサは、移動、又はベクトルの
第1点に進むルーチンに分岐する。移動インストラクシ
ョンにおけるシーケンサの制御の流れにより、そのイン
ストラクションは、終わり、VMEバス・インタフェース
から次の2つのワードを読出し、シーケンサ内のインス
トラクションのリストによりチェーンを持続し、これら
ワードを変換エンジン(178)に渡す。これらワードが
ベクトルの開始点の相対座標ならば、ビット・スライス
・エンジンは、演算ロジック・ユニット(ALU)(186)
にて適当な加算又は他の減算を実行する。これらワード
が、ALU処理を必要としないフォーマットならば、これ
がベクトルの第1点であると告げるコマンドにより、こ
れらを直接変換エンジンに転送する。変換が要求されな
ければ、変換エンジンは、ベクトル情報をエンコード用
のTAGチップに単に渡す。ベクトルの終点も同様に処理
され、TAGチップに送られる。この時、TAGチップは、エ
ンコードするのに充分なデータを有しており、ベクトル
をフレーム・バッファ・サブシステムに送る。
ビット・スライス・エンジンは、分配されたFIFO制御を
有する単一のパイプ段処理を構成する。この制御は、TA
Gチップ及び変換エンジン内の同様なFIFO制御により、
フレーム・バッファ又はZバッファから保持信号を受け
れば、処理を遅延できる。1つの下流段、例えば、フレ
ーム・バッファが処理の遅延に出会うと、これは、パイ
プライン内の次の上流の処理に保持信号を送る。保持信
号が除去されるまで、この処理は、更にデータを送るの
を停止する。そのFIFOが一杯になると、それは、保持信
号を次の上流段に送る。この方法において、中間のFIFO
段の数に対応するクロック・サイクルの数の後、非保持
信号を受けるまで、ビット・スライスにおける処理は、
保持される。
ビット・スライス・エンジンは、フレーム・バッファの
読出し及び書込みに用いるベクトルを処理して、ベクト
ル・ブリット動作を実行する。これは、VMEからのベク
トル用のコマンド(オペコード)及び座標を得て、変換
エンジン用の出力コマンド及びデータを発生するコマン
ドを実行し、データを更に処理(転送)し、TAGチップ
にデータ及びコマンドを出力して、埋め込まれたベクト
ル制御を用いるベクトルを発生する。フレーム・バッフ
ァ内のベクトルを読み取るために、ビット・スライス・
エンジンは、読出しモード・コマンドを受け、これをTA
Gチップに転送して、その後のベクトル・アドレス情報
をフレーム・バッファ・サブシステムに送るために、TA
Gチップを読出しモードにする。しかし、今度は、TAGチ
ップは、データを送らない。これは、フレーム・バッフ
ァ・データを読み出すようにロジック回路をイネーブル
するので、ベクトルに沿って蓄積されたピクセルを、ロ
ーカル表示バスに沿ってビット・スライス・エンジン用
のTAGチップに読み戻し、オフ表示メモリに蓄積する。
フレーム・バッファ内に蓄積されたピクセル・データの
全ベクトルが読み出された後、ベクトル・ブリット動作
を用いて、新たなピクセル・データを、同じベクトルが
定義するフレーム・バッファ位置に書き込める。
第12B図は、変換エンジン(178)の詳細と、ローカル表
示バス(156)に対するTAGチップ(162)によるインタ
フェースを示す。変換エンジン(178)の構造及び動作
は、当該分野において周知であり、動作は、本発明の状
況において、本質的に透明であり(影響せず)、この変
換を簡単に説明する。一般に、Pバス(174)を介し
て、変換エンジンに入力する。変換コマンドをコマンド
・レジスタ(190)に入力し、シーケンサ(192)に送
る。他のコマンド及びデータは、変換が実行すべきもの
ならば、レジスタ(194)を介して入力でき、そうでな
ければ、このレジスタをバイパスして、内部バス(TBU
S)(196)に直接入力する。変換エンジンは、シーケン
サ(192)により制御される乗算器(193)及び加算器
(195)を含んでおり、変換を実行する。これらが変換
されなければ、ベクトル座標は、レジスタ(194)を迂
回して、TBUSのTAGチップ(138)に直接渡される。ベク
トルが変換されるべきならば、適当な変換コマンド(オ
ペコード)は、コマンド・レジスタ(190)に送られ、
シーケンサ(192)に送られ、従来方法で変換エンジン
の動作を制御し、レジスタ(194)に入力されるベクト
ル座標を従来形式で変換する。変換されたベクトル座標
をTAGチップ(138)に出力する。
第12C及び第12D図は、TAGチップ(138)をより詳細に示
す。まず、第12C図を参照する。TAGチップは、左側のTB
US(196)及び右側のローカル表示バス(56)をインタ
フェースする。この図の右側に示した他の入力及び出力
ラインは、後述する第15図の左側に示した入力及び出力
ラインに対応する。TAGチップは、制御ステート・マシ
ンを含んでおり、本発明に関連したその動作は、第16
A、第16B及び第16C図を参照して、後述する。このステ
ート・マシンは、埋め込まれたベクトル制御情報を発生
するアドレス・エンジン(202)を制御する。カラー・
レジスタ(204)は、フレーム・バッファ内に書き込む
べきピクセルに関するカラー情報を受け、リレーする。
この情報は、ピクセル値となるピクセル・データの一部
になる。アドレス・エンジンからのアドレス出力、及び
カラー・レジスタからのデータ出力は、マルチプレクサ
(206)に入力する。このマルチプレクサをステート・
マシン(200)からの制御ラインにより制御して、アド
レス及びデータ・ワードをFIFO(140)を介してローカ
ル表示バスに選択的に出力する。TBUSは、マルチプレク
サ(206)に直接入力され、カラー・レジスタの代わり
にベクトル・ブリット書込み動作のために選択され、ロ
ーカル表示バス(56)に出力する。
読出し、書込み、FBSEL、入力レディ(IR)制御ライン
(152)〜(158)もFIFO(140)から同様に出力する。
読出し、書込み及びFBSELビットは、ステート・マシン
(200)からFIFOに入力する。「入力レディ」を上流に
パイプラインし、出力FIFO(140)の非ロードを制御す
る。TAGチップは、入力又は読出しFIFO(142)も含んで
おり、このFIFOを介して、フレーム・バッファからの読
出しピクセル・データをTBUS(196)に転送する。ステ
ート・マシン(200)が、「読出し出力イネーブル」信
号を発生する。「読出し出力レディ」信号(162)を用
いて、FIFO(142)のロードを制御する。「エンプテ
ィ」ライン(165)は、FIFO(142)が読出すワードを含
んでいるかをステート・マシン(200)に伝える。「読
出し入力レディ」信号ライン(164)は、フレーム・バ
ッファ・サブシステムの出力又は読出しFIFOに保持又は
非保持信号を与える。
第12D図において、TAGチップ・アドレス・エンジン(20
1)は、TBUS(196)をインタフェースする入力マルチプ
レクサ(210)を具えている。アドレス・エンジン(20
2)は、ブレセンハムのアルゴリズム又は同様なベクト
ル・描画アルゴリズムを実現するのに一般的に用いる形
式の従来のデジタル微分解析器によるハードウエア・イ
ンプリメンテーションである。この例としては、1987年
7月30日に出願した米国特許出願第709629号を参照され
たい。アドレス・エンジンは、一連のレジスタ(212)
〜(224)を具えており、ブレセンハムのアルゴリズム
を計算する際に用いる変数を保持している。これら変数
は、第16A、第16B及び第16C図の流れ図に示す処理にて
発生する。これらレジスタの夫々の出力を2個のマルチ
プレクサ(226)、(228)に並列に入力し、それらの出
力を加算/減算ALU(230)に入力する。ALU(230)の出
力をマルチプレクサ(210)及び読出しカウンタ(23
2)、ピクセル・カウンタ(234)の両方に入力する。ア
ドレス・ラッチ(236)を介して、X及びYアドレスを
マルチプレクサ(206)(第12C図)に入力する。独立し
たオクタント・ラッチ(238)は、4つの付加ビットを
受け、マルチプレクサに出力して、埋め込まれたベクト
ル制御方向情報を与える。これらビットの2つは、レジ
スタ(222)、(224)の符号ビットであり、Y軸及びX
軸における方向に対応する。第3ビットは、ALU出力の
符号であり、メジャー軸として、開始点から終了点まで
のベクトルの最大成分(X又はY)を表す。第4ビット
は、移動フラグ(H)レジスタ(240)を介してステー
ト・マシン(200)から受けたためらいビットである。
(フレーム・バッファ制御) 第13図は、第3図のシステムにおける画像データ蓄積用
の画像データを蓄積するフレーム・バッファ制御回路の
ブロック図であり、第14図は、第13図に用いるフレーム
・バッファ制御器の好適な実施例であり、第15図は、フ
レーム・バッファ制御回路の動作を示すブロック図であ
る。フレーム・バッファ・サブシステム(54)及び表示
器(58)は、図形パイプラインへの高性能接続を行い、
高分解能でフリッカのない表示を与える。FBサブシステ
ムの概略的なブロック図を第13図に示す。単一のピクセ
ル(ベクトル)性能をピクセル・ブロック転送動作に平
衡するように設計された柔軟なフレーム・バッファ制御
器により、高いシステム・スループットを得る。このフ
レーム・バッファの構成により、いくつかのメモリ・サ
イクルはメモリの分離したセクションに同時に進むの
で、ランダムな方向のベクトルが、利用可能な最大の帯
域幅に近いメモリに影響を及ぼす。VMEシステム・バス
とフレーム・バッファとの間には、直接接続がない。よ
って、CP又はAEにとって、フレーム・ハッファが汎用実
メモリのように、これらフレーム・バッファと直接作用
する方法がない。その代わり、フレーム・バッファ・イ
ンタフェース(248)がこの可能性をサポートするが、
本発明に直接関係がないので、これ以上の説明を省略す
る。
好適な実施例は、2個のボード・セットとして構成され
た12プレーンのフレーム・バッファを用いており、一方
のボードが、フレーム・バッファ・メモリ及び関連した
制御器(FBCチップ)を含んでおり、一方、他方のボー
ドが、カラー・マップRAM、DAC、関連した映像回路(25
0)を含んでいる。タイミング回路(254)を設けて、60
Hzノンインタレースのカラー・モニタを駆動するのに適
切なタイミング信号を発生し、また、フレーム・バッフ
ァ及び図形パイプライン・サズシステムに必要な総ての
タイミング信号を与える。
ゲート・アレイ、フレーム・バッファ制御器(FBC)IC
(260)が、各4ビット・プレーン・フレーム・バッフ
ァ・メモリを制御する。FBC(260)の1つを第14図に一
般的なブロック図形式で示す。第15図は、より詳細なロ
ジック図であるが、本発明に適する特徴に限定されてお
り、フレーム・バッファ・サブシステムの代わりのイン
プリメンテーションを示している。これらインプリメン
テーションを次に説明するが、同様な要素を同じ参照番
号で示す。
FBC(260)は、ローカル表示バス(LDB)の読出し/書
込み用のレジスタ(262)、(264)を設けると共に、ス
クリーン・リフレッシュアドレス発生用のレジスタ(26
6)を設ける。FBCの常駐は、小さなALU(266)であり、
フレーム・バッファ・メモリ(136)から/へのピクセ
ル・データの動作を実行する。
データ及び制御信号を受けて、フレーム・バッファ制御
器から、入力及び出力FIFO(130)、(132)によりロー
カル表示バス(56)を介して出力する。ベクトルの開始
点用のアドレスを意味する第1ワードをマルチプレクサ
されたデータ/アドレス・ライン(150)(第15図)で
受けると、X及びYアドレス・カウンタ(280)、(28
2)は、第1ワードのX及びYアドレス部分に含まれた
アドレスにセットされる。バス制御ステート・マシン
(286)により制御されるマルチプレクサ(284)は、第
1ワードに続く第2ワード及びそれに続くワードからの
ピクセル値をデータ・レジスタ(264)に入力する。ス
テート・マシン(286)は、入力及び出力として、種々
の信号ライン(151)〜(164)(第15図)を具えてい
る。ピクセル・データの第2及び続くワードを受ける
と、ステート・マシンは、メジャー軸アドレス・カウン
タを増分し、FBSELがセットされると、マイナー軸カウ
ンタも増分する。増分されたX及びYアドレスを対応す
るピクセル値と共にデータ・レジスタ(264)に入力す
る。
アドレス及びピクセル値データをラッチ(266)に渡
し、NディープFIFO(288)に渡す。このFIFOは、FIFO
制御器(290)により制御され、その動作の詳細は、198
5年2月19日に出願された米国特許出願第702982号(特
開昭61−190387号公報に対応)に開示されている。この
システムの詳細は、本発明と直接関係ないので、詳細な
説明を省略する。
ピクセル・データのアドレス部分により指示されたフレ
ーム・バッファ位置をアクセルするために従来の回路
(292)を含むメモリ・インタフェース・セクションに
ピクセル・データを出力する。ALU(268)を含むデータ
出力回路(294)は、フレーム・バッファのアドレス指
定された位置にピクセル値を書込む。このデータ回路
は、読出し動作が実行されるとき、フレーム・バッファ
からピクセル・データが入力されるレジスタ(269)も
含んでいる。
第15図は、ステート・マシンでなく、ハード・ロジック
を用いた本発明の上述の状況を実現している。第15図に
示す多くの機能は、LDB構造(ライン(150)〜(16
4))、FIFOS(130)、(132)、フレーム・バッファ・
メモリ(136)及びX及びYアドレス・カウンタ(28
0)、(282)の如く既に説明したものである。
オクタント・ラッチ(270)は、各ベクトルの第1アド
レス・ワード内に送られ埋め込まれたベクトル制御情報
を受け、蓄積する。このラッチは、アドレス・カウンタ
へのX及びY方向出力を有しており、これらカウンタが
開始点アドレスからカウント・アップするか、カウント
・ダウンするかを制御する。メジャー軸ビットは、1組
のゲート(271)、(272)に出力される。これらゲート
は、どのカウンタ(メジャー軸カウンタ)が、その後の
各「読出し」又は「書込み」信号(ライン(154))に
応じて、増分するか(減分するか)を決める。読出し及
び書込み信号を他の1組のゲート(273)、(274)に入
力する。これらゲートは、メジャー軸カウンタを増分
(又は減分)するために、各カウンタに出力を与え、FB
SELライン(152)がセットされていると、マイナー軸カ
ウンタを増分(又は減分)する。「読出し」及び「書込
み」ライン(ライン(155))の両方がセットされる
と、これは、アドレス・サイクルを示し、ロジック(27
1)〜(274)は、「ロード」信号をカウンタに与えて、
新たなX及びYアドレスを入力する。
データ・レジスタ(265)は、第14図のレジスタ(264)
の低位の部分に対応し、「読出し/非書込み」ラインが
「低」にセットされた場合、アドレスがアドレス・カウ
ンタから出力されると、フレーム・バッファ・メモリ
(136)にピクセル値を出力する。このラインを、ロジ
ック(274)のダイオード(オア・ゲート)段及びレジ
スタ(275)を介してライン(156)により制御する。こ
のラインが「高」にセットされると、ピクセル値をフレ
ーム・バッファから読出し、データ出力ラインを介して
出力FIFO(132)に送る。ゲート(274)の出力からの
「サイクル要求」ラインは、レジスタ(276)を介し
て、フレーム・バッファ開始サイクル制御に入力する。
FIFO制御ブロック(278)が、入力及び出力FIFOの両方
を制御する。この動作を支配する論理式は、以下の通り
である。
IUnload=GReadアンドGWriteオアGreadアンドDoneアン
ドnotOFullオアGWriteアンドDone OLoad=GReadアンドnotGWriteアンドDoneアンドnotOFul
l このブロックは、書込み動作期間中に、入力FIFOからの
データの非ロードを制御し、読出し動作期間中に、出力
FIFOへのデータのロードを制御する。
(埋め込みベクトル制御処理) 第16A、第16B及び第16C図は、制御ステート・マシン(2
00)及びアドレス・エンジン(202)(第12C図)が、埋
め込まれたベクトル制御プロトコルを実現して、フレー
ム・バッファ内のベクトルに沿ったピクセル・データを
書込み又は読出しする処理を示す。
第16A図に示す処理部分は、入力ベクトルを受け、ベク
トル開始及び終了点から、どの軸がメジャー軸であり、
その開始点からベクトルのX及びY成分の方向(プラス
又はマイナス)を決める。初期点をレジスタXold及びYo
ldに配置する。終了点をレジスタX、Yに配置する。こ
れらレジスタを第12B図に示す。第1ステップは、 Xold及びYoldデータをラッチし、このベクトルの開始点
を定め、開始点アドレスとしてアドレス・ラッチ(23
6)(第12D図)にセーブする。次に、X及びY軸の各々
に沿って、開始及び終了点間の差を計算して、開始点か
らの移動の方向の符号を定める。また、ベクトルX及び
Y成分の大きさの差を決め、長い方の成分軸をメジャー
軸として選択する。
第16B図に示す次のサブプロセスを進める準備として、
この処理は、左経路及び右回路に分岐する。左経路は、
右経路よりわずかに能率的であり、ベクトルのX成分の
大きさがY成分以上の時に選択される。第16A図の処理
部分の最終ステップは、オクタント・ビット、X軸方
向、Y軸方向及び選択したメジャー軸をオクタント・ラ
ッチ(238)(第12D図)にラッチすることである。
第16B図において、ベクトルに沿った次のアドレス位置
を決める際に、いずれの経路が選択されても、ALU(23
0)による次の計算用に、その経路は、レジスタ(212)
〜(224)内のブレセンハム・アルゴリズム変数を計算
する。さらに、ベクトルの第1ピクセルが読み出される
か、描画されるかを示す「移動フラグ」と呼ばれるビッ
トを、メジャー軸成分用のピクセル及び読出し計数に加
算する。ビット・スライス・エンジンは、「移動」オペ
コードに応じて、「移動フラグ」ビットをセットする。
レジスタ(240)を介してこのビットをオクタント・ラ
ッチ(238)内の第4ビット位置に転送して、ためらい
ビットとする。第16B図の左及び右経路の残りのステッ
プは、当該分野で既知であるので、これ以上の説明を省
略する。
このサブプロセスの最終ステップは、開始アドレス及び
オクタント・ラッチの内容を送り、デジタル微分解析器
(DDA)サブプロセスを開始させ、動作がベクトル書込
みかベクトル読出し動作かに応じて、処理を分岐させ
る。左側の分岐は、DDAを開始させるが、この処理を第1
6C図の左側に示す。右の分岐は、動作がベクトル書込み
でなくベクトル読出しであるかの判断に進む。ベクトル
読出しでなければ、この処理は終わり、DDA処理に動作
は、ベクトル書込みとして実行される。それがベクトル
読出し動作ならば、この分岐は、第16C図の右側に示す
読出し処理に進む。
第16C図の左側に示しDDA処理は、動作がベクトル書込み
又はベクトル読出しかに従う。本質的には、このサブプ
ロセスは、プレセンハムのアルゴリズムを実行して、ベ
クトルの各連続したピクセルが書き込まれるか、読み出
される位置を決める。しかし、まず、これは、「移動フ
ラグ」又はためらいビットから、現在のベクトルの開始
点に対応して、第1ピクセルを書込みか読出すかを決め
る。現在のベクトルが、前のベクトルの終点と一致する
開始点を有しているならば、これを用いて(即ち、セッ
トしないで)、かかるピクセルが2回目に重ね書きされ
るか、読み出されるのを防ぐ。第1ピクセルが描画され
るか読み出されるとき、これはセットされない。ベクト
ルの終点に達する(ピクセル計数=ゼロ)まで、DDAサ
ブプロセスは、メジャー軸に沿って、各ステップ中、持
続する。
動作がベクトル読出しならば、第16C図の右側のサブプ
ロセスは、信号ラインをセットするステップを開始し、
第16C図の左側のサブプロセスが追跡するベクトルに沿
って、出力データがフレーム・バッファから読み出され
るようにイネーブルする。次のステップは、読出しFIFO
がエンプティかを決める。通常、フレーム・バッファか
ら読出しFIFOに読出す第1ピクセル値に対して、数サイ
クル使う。このサブプロセスは、これが生じるまで、ル
ープする。そして、このサブプロセスは、読出しカウン
タを減分し、読出しFIFOから第1ワードを読出し、これ
をマイクロコード・エンジンに送る。次に、サブプロセ
スは、マイクロコード・エンジンがこのワードを受け入
れたかを調べる。そうでなければ、パイプラインの遅延
の場合、サブプロセスは、1サイクル待ち、再び試験す
る。1度ワードが受け入れられると、この処理は、初め
にループし、読出しFIFOの次のワードの存在をチェック
し、読出しカウンタを減分し、そのワードをマイクロコ
ード・エンジンに戻す。ベクトルの終点に達するまで、
これは、このベクトルに沿った各連続したワード用に進
む。そして、このサブプロセスが、読出し出力イネーブ
ルをクリアし、終わる。
通常ベクトル描画動作(読出しではない)にとって、DD
A処理は、LDB書込みラインをセットし、LDBデータ・ラ
イン上にピクセル値を出力する。第16C図の左側の処理
で決まるように、FBSELラインがセット又はセットされ
ず、フレーム・バッファ内にて、どこにピクセル値を蓄
積するかを決める。これは、メジャー軸に沿った次のス
テップで蓄積されるか、オクタント・データが指示する
方向にて、メジャー及びマイナー軸の両方に沿ったステ
ップに対応する診断ステップにて蓄積される。このピク
セル値は、以前にロードされたカラー・レジスタからや
ってくる。
例えば、本発明を用いて、表示器に8角形を描画でき
る。8角形の各セグメントを、始点及び終点を有するベ
クトルとして定義する。次に各ベクトルを描画するが、
第1ベクトルの開始点から開始して、幾何学図を閉じる
最終ベクトルの終点まで持続する。8角形の各頂点に
て、次のベクトルの方向を変更する必要に応じて、新た
なオクタント情報を送って、オクタント・ビットの1つ
以上を変更する。円も同様に描画できる。従来方法で
は、一連の短い直線セグメントにより円を近似するの
に、各短い直線セグメントの開始にて新たなアドレスを
送った。しかし、本発明では、弧のセグメントを含むよ
うにベクトルの定義を拡張して、上述の8角形を基にし
て、円を描画できる。弧の傾きの変更が、マイナー軸方
向におけるメジャ軸から0度及び45度の範囲外になると
きに、新たなアドレスを送る必要がある。これら原理を
任意の曲線にも拡張できる。
(ベクトル・ブリット・モード) 第18図において、表示リスト内の8ビット・オペコード
の存在により、ベクトル・ブリット動作が開始し、これ
により、マイクロコード・エンジンは、上述のベクトル
・ブリット書込み又は読出し処理を実行する。コマンド
構造は、ベクトルに沿ってフレーム・バッファに書き込
まれるピクセルの配列のオフ・スクリーン・メモリ位置
に対する、又はベクトルに沿ってフレーム・バッファか
ら読み出したピクセルを蓄積すべきポインタを含んでい
る。これには、移動、描画又は読出しコマンドの従来の
シーケンサが続き、これにより、書込み又は読出しを実
行すべきベクトルの開始及び終点を定義する。
8角形又は円又は他のベクトル定義図をスクリーン上に
一時的に配置するならば、ベクトルを2回横切る。最初
は、ベクトル・ブリット読出しを実行して、フレーム・
バッファからのベクトルに沿った前のピクセル値をオフ
・スクリーン・メモリにセーブする。次に、ベクトル描
画をベクトルの同じセットに沿って実行し、新たなベク
トル定義図をスクリーン表示用フレーム・バッファ内に
書込む。図が除去または移動されるとき、ベクトル・ブ
リット書込み手順を読出して、前に蓄積したデータをフ
レーム・バッファに再生し、蓄積された図のピクセルを
重ね書きする。これらベクトル・ブリット動作の各々
は、TBUSを介して、メイン・メモリ及びフレーム・バッ
ファ間でピクセル値を転送する。各ベクトル・ブリット
動作は、ベクトル・ブリット・モードを終わらせるオペ
コードにより、終了する。
(分布されたFIFO制御) 第17図は、分布されたFIFOパイプライン構造及び方法の
原理を示す。仮とえ、パイプ段の処理時間が異なる又は
変化しても、これは、性能に影響することなく、パイプ
ラインを容易に拡張できる。これは、第9図に示すよう
に、パイプ段の間にファースト・イン・ファースト・ア
ウト(FIFO)を分布することにより実現される。透明ラ
ッチ(300)、(301)を各パイプ段の前段に付加し、各
パイプ段処理(302)、(304)の入力にて、1ディープ
FIFOとして動作させる。代わりに、透明ラッチ及びレジ
スタ(図示せず)を用いて、2(又はそれ以上の)ディ
ープFIFOとして動作させることができる。また、各パイ
プ段は、出力レジスタ(306)、(308)も具えている。
現在の段が、前の、即ち、上流段から送られたデータを
受ける準備ができていないとき、FIFOを用いて、このデ
ータを蓄積する。パイプライン・クロック(ライン(31
2))がクロックする制御レジスタ(310)、(311)を
各段に付加して、次の保持信号(ライン(314))を前
の、即ち、上流段に送る前に、次の、即ち、下流段(図
示せず)から送られた現在の保持(IR)信号(ライン
(315))をラッチする。各段にて、制御レジスタに入
力された保持信号とそれ自体の段からのビジィ信号との
論理和を取るので、下流保持信号(ライン(315))又
はビジィ信号(ライン(317))の一方又は両方がセッ
トされた時、次の上流保持信号(ライン(314))をセ
ットする。
便宜上、現在の段(301)を段nとして、表している。
前の、即ち、上流段(300)は、n−1で示し、次の、
即ち、下流段(300)は、n+1で示す。パイプ段nが
次のデータの準備ができている限り、それは「ビジィ
n」信号(ライン(318))を発生しないので、次のク
ロック・サイクル期間中、「保持n」信号をパイプ制御
ライン(314)に送らない。パイプ段nが新たなデータ
に対して準備ができていないならば、この段は、「ビジ
ィn」信号を発生する。「ビジィn」信号をクロック・
サイクルの終わりにて、レジスタnにラッチし、ライン
(314)に「保持n」信号を発生する。「保持n」信号
の存在により、ラッチn(301)は、前のクロック・サ
イクルからのデータ及びパイプ段n−1(302)の信号
を保持でき、「保持n」信号がなくなるまで、現在のデ
ータを送り続ける。データをラッチし、保持信号を転送
する処理がパイプラインを進み続けるので、「保持n」
信号の存在により、次のクロック・サイクル期間中、
「保持n−1」信号がライン(313)上に発生される。
事実、保持信号は、データと逆方向に、パイプラインす
る。
本発明の好適な実施例について説明したが、本発明の要
旨を逸脱することなく種々の変更が可能である。
〔発明の効果〕
上述の如く本発明によれば、図形データをベクトルとし
て処理して、処理手段およびフレーム・バッファ間を転
送するので、転送が効率的に行え、また、処理手段にお
けるベクトル化も簡単に行える。
【図面の簡単な説明】
第1図は、本発明を用いた図形システムの機能ブロック
図である。 第2図は、第1図に示したアプリケーション・システム
のソフトウエア・アーキテクチャの機能ブロック図であ
る。 第3図は、第1図に示した表示システムの機能ブロック
図である。 第4図は、第3図に示した表示システムの好適な物理的
インプリメンテーションのブロック図である。 第5図は、第4図に示した制御プロセスのブロック図で
ある。 第6図は、第3図に示した図形パイプラインのデータ流
れ図である。 第7図は、図形パイプラインの構造の2つの例の簡略化
したブロック図である。 第8図は、第7図の図形パイプラインに用いるZバッフ
ァの高レベルなブロック図である。 第9図は、第7図の図形パイプラインのローカル表示バ
ス部分のより詳細なブロック図である。 第10A〜第10F図は、ローカル表示バスによる読出し及び
書込み動作例のタイミング図である。 第11図は、第7図の図形パイプラインに用いる画像プロ
セッサ(PP2)の全体的なブロック図である。 第12A1、第12A2、第12B、第12C及び第12D図は、第11図
の画像プロセッサのより詳細なブロック図である。 第13図は、第3図のシステムに蓄積された画像データ用
のフレーム・バッファ制御回路の全体的なブロック図で
ある。 第14図は、第13図の回路に用いているフレーム・バッフ
ァ制御器の好適なインプリメンテーションのより詳細な
ブロック図である。 第15図は、フレーム・バッファ制御回路の動作を示すブ
ロック図である。 第16A、第16B及び第16C図は、第12C図のプロセッサの動
作の処理を示す流れ図である。 第17図は、第8及び第15図の回路に用いた分布FIFO処理
のより詳細なブロック図である。 第18図は、インストラクション処理を示す図である。 図において、(22)は図形データ発生手段、(34)は図
形パイプライン、(50)は処理手段、(54)はフレーム
・バッファ、(58)はラスタ走査表示手段である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジォン・シー・デリムプル アメリカ合衆国 オレゴン州 97219ポー トランド サウスウエストトェルブス・ア ベニュー 7108 (56)参考文献 特開 昭62−144283(JP,A) 特開 昭62−106562(JP,A)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】表示画像を定義する図形コマンドを発生す
    る図形データ発生手段と、 夫々一連のピクセルを有し並行な一連のラスタ走査線上
    に図形データを視覚的に表示するラスタ走査表示手段
    と、 各ピクセルのアドレス及び値を含むピクセル・データに
    上記図形コマンドを変換する処理手段と、 上記表示手段の上記走査線及びピクセルに寸法的に対応
    するメモリ要素から成る少なくとも1個のプレーンを有
    し、上記ピクセル・データを蓄積し、一度に1走査線ず
    つ且つ各走査線で一度に1ピクセルずつ上記ピクセルの
    値を上記表示手段に出力するフレーム・バッファ手段
    と、 上記処理手段からのピクセル・データを受け、上記フレ
    ーム・バッファ内に上記ピクセル・データを蓄積するの
    を制御するフレーム・バッファ制御手段とを具え、 上記処理手段は、 上記図形コマンドに対応する上記表示画像を構成する線
    分を表し、少なくとも始点及び方向を有するベクトルを
    上記図形コマンドに応じて発生する手段と、 上記ベクトルに応じて、上記ベクトルの上記始点に対応
    する第1ピクセルの第1アドレス、増分位置、及び上記
    始点のピクセル近傍の第2ピクセルの第2ピクセル値を
    含む上記ベクトル用の第1及び第2ピクセル・データを
    発生する手段と、 上記第1及び第2ピクセル・データを第1ワード及び第
    2ワードにて上記制御手段に夫々送る手段とを具え、 上記第1ワードは、上記第1アドレスと、上記ベクトル
    のX軸成分及びY軸成分の内の大きい成分の方の軸を大
    きな軸として定める第1ビットと、及び上記選択した軸
    に沿って上記第1アドレスから上記第2ピクセルに向か
    う方向を定める第2ビットとから構成され、 上記第2ワードは、上記第2ピクセル用のピクセル値
    と、上記ベクトルのX軸成分及びY軸成分の内の小さい
    成分の方の軸である小さな軸上で、上記第2ピクセルが
    上記大きな軸と横方向に隣接した第2アドレスに位置す
    るか否かを決める小さな軸のビットとから構成され、 上記制御手段は、 上記第1ワードに応答し、上記第1アドレスに応じて上
    記フレーム・バッファ内の第1アドレス位置をアドレス
    指定し、上記第1及び第2ビットに応じて上記選択した
    大きな軸に沿った増分移動の方向を設定する手段と、 上記第2ワードに応答し、上記増分移動の設定した方向
    に応じて上記大きな軸に沿って上記第1アドレス位置か
    ら、上記小さな軸のビットに応じて上記小さな軸に沿っ
    て第2アドレス位置に増分的に移動する手段と、 上記第2アドレス位置に上記第2ピクセル軸の値を書き
    込む手段とを有することを特徴とするラスタ走査表示装
    置。
  2. 【請求項2】ラスタ走査表示用フレーム・バッファが各
    アドレスのピクセル値を蓄積し、1度に1走査線毎に且
    つ各走査線で1度に1ピクセル毎にピクセル・データを
    上記表示用に出力するメモリ要素の少なくとも1個のプ
    レーンを含み、各ピクセルのアドレス及び値を含むピク
    セル・データ形式の図形データを、画像プロセッサ及び
    上記ラスタ走査表示用フレーム・バッファ間で転送する
    方法であって、 上記図形コマンドに対応する上記表示画像を構成する線
    分を表し、少なくとも始点及び方向を有するベクトルを
    上記図形コマンドに応じて発生し、 上記画像プロセッサにて、上記始点に対応する第1ピク
    セル用の第1アドレス、増分位置及び上記始点ピクセル
    に隣接する第2ピクセル用のピクセル値を含む上記ベク
    トル用の第1及び第2ピクセル・データを発生し、 上記第1及び第2ピクセル・データを第1ワード及び第
    2ワードにエンコードし、 上記第1ワードは、第1アドレス、上記ベクトルのX軸
    成分及びY軸成分の内の大きい成分の方の軸を大きな軸
    として定める第1ビット、上記第1アドレスから上記第
    2ピクセル方向に上記選択した軸に沿った方向を定める
    第2ビットから構成され、 上記第2ワードは、上記ベクトルのX軸成分及びY軸成
    分の内の小さい成分の方の軸である小さな軸上で、上記
    大きな軸に横方向に隣接する第2アドレスに上記第2ピ
    クセルが位置するか否かを決める小さな軸のビットから
    構成され、 上記第1ワード及び上記第2ワードを上記フレーム・バ
    ッファに送り、 上記第1ワードをデコードし、上記第1アドレスに応じ
    て上記フレーム・バッファ内の第1アドレス位置をアド
    レス指定し、上記第1及び第2ビットに応じて上記大き
    な軸に沿って増分移動の方向を設定し、 上記第2ワードをデコードし、上記第1アドレス位置か
    ら、上記増分移動の設定された方向に応じて上記大きな
    軸に沿って、また上記小さな軸のビットによって定めら
    れた上記小さな軸に沿って第2アドレス位置に増分的に
    移動し、 上記第2アドレス位置内に第2ピクセル値を読出し、書
    込むことを特徴とする図形データ転送方法。
JP63253681A 1987-10-26 1988-10-07 ラスタ走査表示装置及び図形データ転送方法 Expired - Lifetime JPH0727571B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11392787A 1987-10-26 1987-10-26
US113927 1987-10-26

Publications (2)

Publication Number Publication Date
JPH01129371A JPH01129371A (ja) 1989-05-22
JPH0727571B2 true JPH0727571B2 (ja) 1995-03-29

Family

ID=22352341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63253681A Expired - Lifetime JPH0727571B2 (ja) 1987-10-26 1988-10-07 ラスタ走査表示装置及び図形データ転送方法

Country Status (2)

Country Link
JP (1) JPH0727571B2 (ja)
GB (3) GB2211706B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0999031A (ja) * 1995-10-05 1997-04-15 Rieko Moto 血行促進器具

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0410783B1 (en) * 1989-07-28 1996-08-28 Hewlett-Packard Company Methods and apparatus for accelerating windows in graphics systems
CA2050658C (en) * 1990-09-14 1997-01-28 John M. Peaslee Dual hardware channels and hardware context switching in a graphics rendering processor
US5289577A (en) * 1992-06-04 1994-02-22 International Business Machines Incorporated Process-pipeline architecture for image/video processing
US5450599A (en) * 1992-06-04 1995-09-12 International Business Machines Corporation Sequential pipelined processing for the compression and decompression of image data
US6002411A (en) * 1994-11-16 1999-12-14 Interactive Silicon, Inc. Integrated video and memory controller with data processing and graphical processing capabilities
US6067098A (en) * 1994-11-16 2000-05-23 Interactive Silicon, Inc. Video/graphics controller which performs pointer-based display list video refresh operation
US5838334A (en) * 1994-11-16 1998-11-17 Dye; Thomas A. Memory and graphics controller which performs pointer-based display list video refresh operations
US5611041A (en) * 1994-12-19 1997-03-11 Cirrus Logic, Inc. Memory bandwidth optimization
TW498273B (en) * 1997-07-25 2002-08-11 Koninkl Philips Electronics Nv Digital monitor
US6694379B1 (en) * 1999-04-09 2004-02-17 Sun Microsystems, Inc. Method and apparatus for providing distributed clip-list management
US6567091B2 (en) 2000-02-01 2003-05-20 Interactive Silicon, Inc. Video controller system with object display lists
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
WO2004110021A2 (en) 2003-06-02 2004-12-16 Qualcomm Incorporated Generating and implementing a signal protocol and interface for higher data rates
US8705571B2 (en) * 2003-08-13 2014-04-22 Qualcomm Incorporated Signal interface for higher data rates
AU2004303402A1 (en) 2003-09-10 2005-03-24 Qualcomm Incorporated High data rate interface
KR100882164B1 (ko) 2003-10-15 2009-02-06 퀄컴 인코포레이티드 높은 데이터 레이트 인터페이스
CA2544030A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
BRPI0416895A (pt) 2003-11-25 2007-03-06 Qualcomm Inc interface de alta taxa de dados com sincronização de link melhorada
EP1698146A1 (en) 2003-12-08 2006-09-06 QUALCOMM Incorporated High data rate interface with improved link synchronization
EP2375677B1 (en) 2004-03-10 2013-05-29 Qualcomm Incorporated High data rate interface apparatus and method
KR20060130749A (ko) 2004-03-17 2006-12-19 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US8650304B2 (en) 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
CA2569106C (en) 2004-06-04 2013-05-21 Qualcomm Incorporated High data rate interface apparatus and method
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
US8471870B2 (en) * 2009-07-02 2013-06-25 Freedom Scientific, Inc. Vector-based magnified pointer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2426296A1 (fr) * 1978-05-18 1979-12-14 Thomson Csf Generateur de vecteurs pour console graphique
JPS62106562A (ja) * 1985-11-01 1987-05-18 Mitsubishi Electric Corp デジタル信号処理ユニツト
JPS62144283A (ja) * 1985-12-18 1987-06-27 Fujitsu Ltd パイプライン制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0999031A (ja) * 1995-10-05 1997-04-15 Rieko Moto 血行促進器具

Also Published As

Publication number Publication date
GB2245130B (en) 1992-04-08
GB2211706A (en) 1989-07-05
GB8824331D0 (en) 1988-11-23
GB2211706B (en) 1992-04-08
GB2245129B (en) 1992-04-08
JPH01129371A (ja) 1989-05-22
GB9114232D0 (en) 1991-08-21
GB2245130A (en) 1991-12-18
GB2245129A (en) 1991-12-18
GB9114231D0 (en) 1991-08-21

Similar Documents

Publication Publication Date Title
US5185599A (en) Local display bus architecture and communications method for Raster display
JPH0727571B2 (ja) ラスタ走査表示装置及び図形データ転送方法
KR960003041B1 (ko) 그래픽 시스템용의 확장 가능한 다영상 버퍼
US5706478A (en) Display list processor for operating in processor and coprocessor modes
US5838334A (en) Memory and graphics controller which performs pointer-based display list video refresh operations
US5917502A (en) Peer-to-peer parallel processing graphics accelerator
JP3286331B2 (ja) ブロックテクスチャコンプレックスクリップマスクプロセッサ
US7075542B1 (en) Selectable multi-performance configuration
JP4234217B2 (ja) サイズ変更ビットブロック転送処理の一部として透過イネーブルビットの埋込みを行うシステム、装置および方法
US6624819B1 (en) Method and system for providing a flexible and efficient processor for use in a graphics processing system
US7196710B1 (en) Method and apparatus for buffering graphics data in a graphics system
US5664162A (en) Graphics accelerator with dual memory controllers
US6154223A (en) Integrated graphics subsystem with message-passing architecture
US6377266B1 (en) Bit BLT with multiple graphics processors
US5251322A (en) Method of operating a computer graphics system including asynchronously traversing its nodes
US6166743A (en) Method and system for improved z-test during image rendering
US7525547B1 (en) Programming multiple chips from a command buffer to process multiple images
US6864892B2 (en) Graphics data synchronization with multiple data paths in a graphics accelerator
EP0329771A1 (en) High performance graphics workstation and method of operating therefor
JPH03241480A (ja) 並列多角形/画素描出用エンジン
JPH04246790A (ja) ベクトル/円錐曲線/エリアフィルプリミティブジェネレータ
US5265203A (en) Hardware multiprocess scheduler in a graphics rendering processor
US5990911A (en) Immediate mode drawing interface for the construction of graphics software
US20030160793A1 (en) Synchronizing data streams in a graphics processor
US7145570B2 (en) Magnified texture-mapped pixel performance in a single-pixel pipeline