JPH09230837A - グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサ - Google Patents
グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサInfo
- Publication number
- JPH09230837A JPH09230837A JP8290658A JP29065896A JPH09230837A JP H09230837 A JPH09230837 A JP H09230837A JP 8290658 A JP8290658 A JP 8290658A JP 29065896 A JP29065896 A JP 29065896A JP H09230837 A JPH09230837 A JP H09230837A
- Authority
- JP
- Japan
- Prior art keywords
- graphics
- graphics processor
- triggering circuit
- programmable register
- programmable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control 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/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control 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/363—Graphics controllers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Digital Computer Display Output (AREA)
- Controls And Circuits For Display Device (AREA)
- Advance Control (AREA)
- Image Processing (AREA)
Abstract
自動的に各種グラフィックス動作を実現するための方法
および装置を提供する。 【解決手段】 ホストコンピュータと、ホストコンピュ
ータに接続されたフレームバッファメモリと、ホストコ
ンピュータおよびフレームバッファメモリに接続されて
いるグラフィックスプロセッサであって、第1のグラフ
ィックス動作を開始する第1のトリガリング回路、およ
びプログラマブルレジスタを有し、第1のトリガリング
回路に接続されているブロック転送エンジンであって、
フレームバッファメモリへの転送および該フレームファ
イルメモリからの転送を制御し、かつ、プログラマブル
レジスタの内容に基づき、第1のトリガリング回路に応
答して第1のグラフィックス動作を実行する、ブロック
転送エンジンを有しているグラフィックスプロセッサ
と、を備える。
Description
スシステムの分野に関する。より詳細には、本発明はホ
ストコンピュータとグラフィックスプロセッサとの間の
インタフェースおよびインタラクションに関する。
ーションは、各種汎用能力を有するホストコンピュー
タ、および専用の各種グラフィック動作を実行する特殊
ハードウェアグラフィックスプロセッサから構成され
る。グラフィックスプロセッサは、例えば直線を描く動
作、ブロックを塗りつぶす動作、ブロック転送(BL
T)といった時間のかかる各種タスクを実行する内蔵型
ハードウェア回路を備えている。また、大多数のグラフ
ィックスプロセッサは、ビデオ表示用のビデオ制御信号
を発生するようにプログラムすることが可能である。ホ
ストコンピュータは、グラフィックスプロセッサに対し
てコマンドを送り、その全ソフトウェアの一部としてグ
ラフィックスプロセッサからステータスを受け取る。ホ
ストからコマンドを受け取るとただちに、グラフィック
スプロセッサは、各種動作を独立して実行することがで
きる。また、ホストは、内部レジスタにアクセスするこ
とによって、またはある場合にはグラフィックスプロセ
ッサ信号をモニタすることによって、グラフィックスプ
ロセッサの状態を読み取ることができる。しかし、情報
をやりとりする際には、それでもいくらかのオーバーヘ
ッドがもたらされることになる。このような問題は、ホ
ストが一連のコマンドをグラフィックスプロセッサに送
ることを望む場合には、より顕著になる。したがって、
グラフィックス動作およびビデオ制御機能を管理するタ
スクをホストに負わせないようにするためには、ホスト
とグラフィックスプロセッサとの間のインタラクション
を最適化することが必要である。
ションスキームをホストは採用することができる。ま
ず、ポーリングスキームの場合には、ホストは(例えば
状態ビットを読み取ることによって)グラフィックスプ
ロセッサをモニタし、それによって直前の1セットのコ
マンドが遂行されたどうかを判定することができる。そ
の結果、ホストは新しいセットのコマンドを送ることが
可能になる。このポーリングスキームの最も深刻な欠点
は、ホストの時間が浪費されることである。なぜなら、
ホストは、全グラフィックシーケンスが遂行されるまで
その通常の機能に戻ることができないからである。次
に、割り込みスキームの場合には、グラフィックスプロ
セッサは、1セットのコマンドを完了した時に、割り込
み信号をホストに送ることができる。この割り込みスキ
ームに伴う問題は、ホストが応答可能になるまでに依然
としてアイドル時間が存在することであり、連続的に割
り込みをおこなうとホストの能率が低下する可能性があ
ることである。したがって、ホストとグラフィックスプ
ロセッサとが互いに依存する度合いを緩和できるよう
に、ホストとグラフィックスプロセッサとの間のインタ
ラクションを最小限にとどめることを可能にする、さら
に優れたインタラクションスキームを開発するのが望ま
しい。
は、インタラクションの問題はさらに深刻になる。この
ような用途では、2種類の更新レートがある。すなわち
アニメーション更新(またはイメージ更新)とスクリー
ンリフレッシュの2つである。アニメーション更新レー
トとは、古いイメージを新しいイメージに置き換える際
のレートのことである。スクリーンリフレッシュレート
とは、ビデオコントローラが新しい垂直帰線サイクルを
開始する際のレートのことである。アニメーション更新
レートが、イメージシーケンスの性格や、グラフィック
スプロセッサの速度に依存する一方で、スクリーンリフ
レッシュレートは、表示モニタのタイプや、プログラム
されたビデオ制御パラメータに依存する。これら2つの
更新レートは、互いに全く独立したものである。
キームとしては、基本的には2つのスキームがある。第
1のスキームにおいては、表示が更新されている間に表
示メモリに書き込みがおこなわれる。表示メモリのどの
部分が現在表示されており、また、どの部分が現在変更
されているかということに関して、両者の調整が図られ
ることはないので、表示には「バンディング(bandin
g)」あるいは「ティアリング(tearing)」と呼ばれる
悪影響が及ぼされることがある。その場合、古いイメー
ジの一部と新しいイメージの一部とが表示されるので、
イメージがジャンプしたり、歪んだりする。第2のスキ
ームにおいては、新しいイメージまたは新しいイメージ
の一部が、目に見えないメモリスペースに書き込まれ
る。スクリーンリフレッシュがバンディングが起こりう
る点を過ぎるとき、このメモリの内容が表示メモリに転
送される。このスキームに伴う問題は、転送コマンドを
送るのに安全な点にいつスクリーンリフレッシュがいた
るかということを、ホストが独立して予測できないこと
である。この理由としては、スクリーンリフレッシュが
ホストから独立した動作であること、および表示クロッ
クとホストクロックとの間には何の関係もないことが挙
げられる。割り込みの場合でも、ソフトウェアオーバー
ヘッド、初期化および信頼性に関わる問題が依然として
ある。
れたものであり、その目的とするところは、以上の従来
技術の概略から明らかなように、遅延を最小限にとど
め、グラフィックに悪影響が及ぼされる事態を回避する
ために、ホストとグラフィックスプロセッサとの間のイ
ンタラクションスキームを最適化することにある。そう
すれば、ホストの介入なしに、各種グラフィックス動作
を自動的に実行することが可能となる。
クスシステムは、自動的にグラフィックス動作を実行す
るグラフィックスシステムであって、ホストコンピュー
タと、該ホストコンピュータに接続されたフレームバッ
ファメモリと、該ホストコンピュータおよび該フレーム
バッファメモリに接続されているグラフィックスプロセ
ッサであって、第1のグラフィックス動作を開始する第
1のトリガリング回路、およびプログラマブルレジスタ
を有し、該第1のトリガリング回路に接続されているブ
ロック転送エンジンであって、該フレームバッファメモ
リへの転送および該フレームファイルメモリからの転送
を制御し、かつ、該プログラマブルレジスタの内容に基
づき、該第1のトリガリング回路に応答して該第1のグ
ラフィックス動作を実行する、ブロック転送エンジンを
有しているグラフィックスプロセッサと、を備えてお
り、そのことにより上記目的が達成される。
ロセッサが、前記ブロック転送エンジンに接続されてお
り、第2のグラフィックス動作を開始する第2のトリガ
リング回路をさらに備えており、該ブロック転送エンジ
ンにおける前記プログラマブルレジスタが、該プログラ
マブルレジスタの内容に基づき、該第2のトリガリング
回路に応答して該第2のグラフィックス動作を実行す
る。
ロセッサが、複数のプログラマブルレジスタの内容に基
づき、前記第1のトリガリング回路または前記第2のト
リガリング回路に応答して複数のグラフィックス動作を
実行する、前記プログラマブルレジスタを複数個備えて
いる。
ジスタが、垂直走査線の最小値と該垂直走査線の最大値
とを格納する複数のレジスタからなる。
ジスタが、イネーブルビットが第1のイネーブル状態に
ある時には前記第1のトリガリング回路をトリガし、該
イネーブルビットが第2のイネーブル状態にある時には
前記第2のトリガリング回路をトリガするイネーブルビ
ットを有している。
ロセッサが垂直カウンタ値をインクリメントするビデオ
制御回路をさらに備えており、前記イネーブルビットが
前記第1のイネーブル状態にある時に前記第1のトリガ
リング回路がトリガされ、かつ、該垂直カウンタ値が、
前記垂直走査線の前記最小値と前記最大値との間の値で
ある。
ログラマブルレジスタの内容に基づいて前記第1のグラ
フィックス動作が実行され、該1サブセットの該プログ
ラマブルレジスタが、第1および第2の連鎖イネーブル
状態を有する連鎖イネーブルビットと、次のサブセット
の該プログラマブルレジスタのアドレスを示す少なくと
も1つの位置ポインタと、を含んでいる。
ロセッサが、前記次のサブセットの前記プログラマブル
レジスタの内容を前記アドレスから取り出し、前記連鎖
イネーブルビットが前記第1の連鎖イネーブル状態にあ
る時には前記第1のグラフィックス動作を実行し、か
つ、該連鎖イネーブルビットが前記第2の連鎖イネーブ
ル状態にある時には通常のモードに戻る。
は、ホストコンピュータに接続されたフレームバッファ
メモリを設けるステップと、第1のグラフィックス動作
を開始する第1のトリガリング回路を有するグラフィッ
クスプロセッサであって、該ホストコンピュータおよび
該フレームバッファメモリに接続されているグラフィッ
クスプロセッサを設けるステップと、該第1のトリガリ
ング回路に接続されており、該フレームバッファメモリ
からの転送および該フレームバッファメモリへの転送を
制御するブロック転送エンジンであって、プログラマブ
ルレジスタの内容に基づき、該第1のトリガリング回路
に応答して該第1のグラフィックス動作を実行するのに
用いられるプログラマブルレジスタを有している、ブロ
ック転送エンジンを設けるステップと、を含んでおり、
そのことにより上記目的が達成される。
ロセッサを設ける前記ステップが、前記ブロック転送エ
ンジンに接続されており、第2のグラフィックス動作を
開始する第2のトリガリング回路を設けるステップをさ
らに備えており、該ブロック転送エンジンにおける前記
プログラマブルレジスタが、該プログラマブルレジスタ
の内容に基づき、該第2のトリガリング回路に応答して
該第2のグラフィックス動作を実行する。
ジンを設ける前記ステップが、複数のプログラマブルレ
ジスタの内容に基づき、前記第1のトリガリング回路ま
たは前記第2のトリガリング回路に応答して複数のグラ
フィックス動作を実行する前記プログラマブルレジスタ
を複数個設けるステップをさらに備えている。
ジンを設ける前記ステップにおいて、前記プログラマブ
ルレジスタが、垂直走査線の最小値と該垂直走査線の最
大値とを格納する複数のレジスタからなる。
ジンを設ける前記ステップにおいて、前記プログラマブ
ルレジスタが、イネーブルビットが第1のイネーブル状
態にある時には前記第1のトリガリング回路をトリガ
し、該イネーブルビットが第2のイネーブル状態にある
時には前記第2のトリガリング回路をトリガするイネー
ブルビットを有している。
ロセッサを設ける前記ステップにおいて、前記グラフィ
ックスプロセッサが垂直カウンタ値をインクリメントす
るビデオ制御回路をさらに備えており、前記イネーブル
ビットが前記第1のイネーブル状態にある時に前記第1
のトリガリング回路がトリガされ、かつ、該垂直カウン
タ値が、前記垂直走査線の前記最小値と前記最大値との
間の値である。
ロセッサを設ける前記ステップにおいて、1サブセット
の前記プログラマブルレジスタの内容に基づいて前記第
1のグラフィックス動作が実行され、該1サブセットの
該プログラマブルレジスタが、第1および第2の連鎖イ
ネーブル状態を有する連鎖イネーブルビットと、次のサ
ブセットの該プログラマブルレジスタのアドレスを示す
少なくとも1つの位置ポインタと、を含んでいる。
ロセッサを設ける前記ステップにおいて、前記グラフィ
ックスプロセッサが、前記次のサブセットの前記プログ
ラマブルレジスタの内容を前記アドレスから取り出し、
前記連鎖イネーブルビットが前記第1の連鎖イネーブル
状態にある時には前記第1のグラフィックス動作を実行
し、かつ、該連鎖イネーブルビットが前記第2の連鎖イ
ネーブル状態にある時には通常のモードに戻る。
は、ホストコンピュータおよびフレームバッファメモリ
に接続されており、自動的にグラフィックス動作を実行
するグラフィックスプロセッサであって、第1のグラフ
ィックス動作を開始する第1のトリガリング回路と、プ
ログラマブルレジスタを有し、該第1のトリガリング回
路に接続されているブロック転送エンジンであって、該
プログラマブルレジスタの内容に基づき、該第1のトリ
ガリング回路に応答して該第1のグラフィックス動作を
実行する、ブロック転送エンジンと、を備えており、そ
のことにより上記目的が達成される。
ジンに接続されており、第2のグラフィックス動作を開
始する第2のトリガリング回路をさらに備えており、該
ブロック転送エンジンにおける前記プログラマブルレジ
スタが、該プログラマブルレジスタの内容に基づき、該
第2のトリガリング回路に応答して該第2のグラフィッ
クス動作を実行する。
ロセッサが、複数のプログラマブルレジスタの内容に基
づき、前記第1のトリガリング回路または前記第2のト
リガリング回路に応答して複数のグラフィックス動作を
実行する前記プログラマブルレジスタを複数個備えてい
る。
ジスタが、垂直走査線の最小値と該垂直走査線の最大値
とを格納する複数のレジスタからなる。
ジスタが、イネーブルビットが第1のイネーブル状態に
ある時には前記第1のトリガリング回路をトリガし、該
イネーブルビットが第2のイネーブル状態にある時には
前記第2のトリガリング回路をトリガするイネーブルビ
ットを有している。
ロセッサが垂直カウンタ値をインクリメントするビデオ
制御回路をさらに備えており、前記イネーブルビットが
前記第1のイネーブル状態にある時に前記第1のトリガ
リング回路がトリガされ、かつ、該垂直カウンタ値が、
前記垂直走査線の前記最小値と前記最大値との間の値で
ある。
ログラマブルレジスタの内容に基づいて前記第1のグラ
フィックス動作が実行され、該1サブセットの該プログ
ラマブルレジスタが、第1および第2の連鎖イネーブル
状態を有する連鎖イネーブルビットと、次のサブセット
の該プログラマブルレジスタのアドレスを示す少なくと
も1つの位置ポインタと、を含んでいる。
ロセッサが、前記次のサブセットの前記プログラマブル
レジスタの内容を前記アドレスから取り出し、前記連鎖
イネーブルビットが前記第1の連鎖イネーブル状態にあ
る時には前記第1のグラフィックス動作を実行し、か
つ、該連鎖イネーブルビットが前記第2の連鎖イネーブ
ル状態にある時には通常のモードに戻る。
徴を多数含む高性能グラフィックスプロセッサを備えて
いる。本発明のグラフィックスプロセッサの重要な部分
は、中央コントローラとして作用し、フェッチおよびプ
ロセスを開始し、リクエストを格納するBLTエンジン
である。このBLTエンジンの、本発明に関わる主要な
特徴は、自動トリガリングにある。自動BLTは、以下
に示す2つの方法のいずれかによってトリガされる。す
なわち、(1)スクリーン垂直カウントが所定値に達し
たとき、あるいは(2)トリガビットがホストにより設
定されるとき、の2つである。第1の方法によれば、ホ
ストは、CRTコントローラにおける安全領域を指定す
るために値をプログラムし、垂直カウンタがこの安全な
範囲に達すると、BLTがトリガされることになる。こ
の方法により、ホストプロセッサの介入なしに、スクリ
ーンリフレッシュを用いてイメージを更新する際の同期
の問題を解決することができる。第2の方法において
は、ホストは、自動BLTをトリガする時間を直接に制
御することができる。
数は、フレームバッファから制御パスへと転送されなけ
ればならない。これらの変数には、ソースおよびデステ
ィネーションの位置および範囲、ならびに連鎖における
次のBLTのソースが含まれる。1シーケンスのBLT
動作の連鎖は、グラフィックスプロセッサにおけるLN
CNTLレジスタのビットを設定することによって実現
される。
するために、CRT制御トリガリングメカニズムおよび
グラフィックスプロセッサの自動的連鎖を活用する。
のグラフィックス動作をバッファメモリにおける目に見
えない部分(オフスクリーンメモリ)における一連のヘ
ッダファイルとして組み立てる。各ヘッダファイルは、
レジスタデータとグラフィックス制御データとを含んで
いる。ヘッダファイルにおける最後のエントリは、実行
すべき次の動作を指示する。最後のヘッダファイルは、
連鎖プロセスをディセーブルするLNCNTL用の値を
含んでいる。1シーケンスのヘッダファイルをオフスク
リーンメモリに書き込んだ後、ホストはグラフィックス
プロセッサに実行開始のコマンドを与え、第1のヘッダ
ファイルの位置を与える。グラフィックスプロセッサ
は、これらのヘッダファイルを読み取り、ディセーブル
された連鎖ビットを含むヘッダに到達するまで、指定さ
れた各種グラフィックス動作を実行する。この時点にお
いて、すべての動作が完了する。全期間を通じて、ホス
トはその通常のタスクを自由に実行することができる。
様に、ホストは1シーケンスのヘッダファイルを組み立
てる。さらに、ホストは、グラフィックス動作を開始す
る点が含まれる垂直走査線範囲を指定できるように、レ
ジスタをプログラムする。すると、ホストは、自由にそ
の通常のタスクに戻ることができる。CRTコントロー
ラが指定された垂直走査線範囲内にあるときには、グラ
フィックスプロセッサは、上述したケースと同様に、グ
ラフィックス動作を開始する。
形態の説明により、最もよく理解することができる。
構成例を図示している。ホストコンピュータ10は、メ
モリ、周辺機器およびグラフィックスプロセッサとの間
のインタフェースとして作用するだけの通常のパワーお
よび能力を有する汎用のプロセッサであればどんなもの
でもよい。グラフィックスプロセッサ20は、グラフィ
ックス動作およびビデオ制御機能をより高速に実行す
る、内蔵型ハードウェア回路を有するプロセッサであ
る。ホストコンピュータ10は、インタフェースバス3
0を介してグラフィックスプロセッサ20と通信する。
ホストコンピュータ10およびグラフィックスプロセッ
サ20の両者ともに、フレームバッファメモリ40から
情報を得ることができる。また、グラフィックスプロセ
ッサ20は、表示モニタ50に対してビデオおよび各種
ビデオ制御信号を発生する。
ピュータ10は、例えばインテルX86型グラフィック
スプロセッサやパワーPCプロセッサのような拡張型プ
ロセッサ20を備えている。グラフィックスプロセッサ
20は、例えばビデオ制御機能、BLTエンジンおよび
自動BLT動作のようなハードウェア内蔵の各種特徴を
備えた高性能グラフィックスコントローラである。ま
た、インタフェースバス30は、周辺機器相互接続(P
CI)ローカルバスでも、VLビデオエレクトロニクス
標準接続(VESA)ローカルバスでもよい。PCIバ
スおよびVLバスは、ホストと、例えばグラフィックス
コントローラのような周辺機器とを局所的に相互接続す
るために広く用いられているバスである。PCIバス
は、フレームバッファメモリ40へのアクセスに際して
は、ホストに対するインタフェースとして作用する。
20を図示する詳細ブロック図である。
ものである。
ーカルバスあるいはVLローカルバス30にも直接に接
続される。また、グラフィックスプロセッサ20は、フ
レームバッファメモリ40に対するインタフェースとし
て作用する。フレームバッファメモリ40は、少なくと
も(1)加速された表示領域、(2)SVGA(スーパ
ーVGA)表示領域、および(3)オートBLTパラメ
ータ領域の3つに割り当てることができる。オートBL
Tパラメータ領域は、ホスト10がヘッダファイルを書
き込み、グラフィックスプロセッサ20がヘッダファイ
ルを取り出す領域である。
スタコントローラである。BLTエンジン54は、デー
タがフレームバッファメモリ40から内部スタティック
RAM56へとフェッチされるようにし、画素パス制御
動作を開始し、かつ、その結果がフレームバッファメモ
リ40、SRAM56またはホスト10に格納しなおさ
れるようにする。
ら受け取ったコマンドを復号化する。これらのコマンド
は、通常、ホストインタフェース52を通して伝えられ
てくる。BLTエンジン54は、各種低レベルグラフィ
ックス機能において用いられる複数のレジスタ56のす
べてを含んでいる。これらのレジスタ56は、フレーム
バッファ40、SRAM56、およびBLTの範囲に対
するポインタを含んでおり、BLTのソースおよび制御
レジスタのサイズを再び決める。
内に位置決めされており、メモリ空間の16キロバイト
を占めるメモリマップされたレジスタ56としてアクセ
ス可能である、1セットのグラフィックス加速器レジス
タ56を有している。これらのレジスタ56は、典型的
にはホスト10による書き込みの対象となり、グラフィ
ックスプロセッサ20によって実行される各種グラフィ
ックス動作をセットアップする。関連するレジスタ56
をいくつか以下に掲げる。
LT制御フラグ COMMAND:コマンド/データレジスタ OP{0〜2}_opRDRAM:カラーRDRAMア
ドレスレジスタ RESIZE(A〜C)_opRDRAM:自動BLT
ヘッダソースアドレスレジスタ START_BLT_i(i=1、2、3):ウィンド
ウi(i=1、2、3)のオートBLTをスタートする STOP_BLT_i(i=1、2、3):ウィンドウ
i(i=1、2、3)のオートBLTをストップする LNCNTL(ライン制御)レジスタは16ビットを有
している。また、LNCNTLレジスタは、複数のオー
トBLTを連鎖させるのに用いられる連鎖イネーブルビ
ットも有している。このビットがハイである時、オート
BLTは新しいヘッダを(完全である場合には)フェッ
チする。ローである時には、連鎖は終了する。
ある。このレジスタは、ホストとBLTエンジンとの間
のライトFIFOに直接アクセスすることを可能にす
る。
る。このレジスタは、コマンドパイプおよびリード/ラ
イトFIFOの各部分の状態を制御し、それらの状態を
リターンする。CONTROLレジスタは、AUTO_
BLT_ENビットを有している。AUTO_BLT_
ENが0である時、オートBLTアーム/トリガメカニ
ズムがディセーブルされる。1である時には、メカニズ
ムは通常どおりに動作する。
は、32ビットであり、RDRAMのXおよびYアドレ
スを選択されたOFU(オペランドフェッチユニット)
に供給する。OP0_opRDRAMレジスタは、結果
として得られたXバイトおよびYラインアドレスを格納
することができる。
レジスタは、32ビットであり、自動リサイズBLTに
対するソースアドレスと、自動グラフィックス動作用の
制御ビットとを含んでいる。各レジスタは、CRTコン
トローラから与えられた適切な垂直カウントによってト
リガされる別個のソースアドレスを含んでいる。また、
各レジスタは、TRIGGERおよびARMからなる2
つの制御ビットを有している。TRIGGERビット
は、オートBLTをトリガするために用いられる。TR
IGGERがハイである時、レジスタに書き込みがおこ
なわれるとただちににオートBLTがトリガされる。T
RIGGERがローである時には、レジスタはCRTコ
ントローラが適切な垂直カウントに達するのを待つ。A
RMビットは、自動BLTを準備するために用いられ
る。ARMがハイである時、自動BLTはアームド(ar
med)になる。つまり、CRTコントローラが適切な垂
直カウントに達すると、オートBLTがスタートするこ
とになる。ARMがローである時、オートBLTは外部
からアームドにされねばならない。これらの制御ビット
は、以下のように要約される。
るとトリガする。
ただちにオートBLTをトリガする。
トは、ソースデータがRDRAMメモリに存在する垂直
および水平方向の位置を指定するために用いられる。
タは、スキャンリフレッシュ時にどこで(32スキャン
ラインの倍数単位で)ウィンドウ1のオートBLTがイ
ネーブルされるかを規定し、それによってウィンドウの
ティアリングを防止する。オートBLTは、 STAR
T_BLT_1≦現在のスキャンライン<STOP_B
LT_1である時にイネーブルされる。このレジスタ
は、RESIZEA_opRDRAMのビット31が1
である時にディセーブルされる。
は、スキャンリフレッシュ時にどこで(32スキャンラ
インの倍数単位で)ウィンドウ1のオートBLTがディ
セーブルされるかを規定し、それによってウィンドウの
ティアリングを防止する。このレジスタは、RESIZ
EA_opRDRAMのビット31が1である時にディ
セーブルされる。また、このレジスタのビット7(MS
B)は、ウィンドウ1をイネーブルするのに用いられ
る。もしこのビットが1であるのなら、ウィンドウ1は
イネーブルされる。一方、もしこのビットが0であるの
なら、ウィンドウ1はディセーブルされる。つまり、オ
ートBLTはトリガされない。
LT_1とは違っていなければならない。
T_2、START_BLT_3およびSTOP_BL
T_3は、それぞれRESIZEB_opRDRAMお
よびRESIZEC_opRDRAMが代わりに用いら
れる点を除いて同様である。したがって、互いに異なる
3つの安全領域を用いて、3つのウィンドウを同時にア
クティブに設定することができる。
BLT_i(i=1、2、3)は、垂直カウント値によ
ってトリガされるオートBLTに対応する安全領域を規
定することによって、悪影響を全く及ぼすことなく、各
種グラフィックス動作を実行する。
必要がある。第1に、実行すべきグラフィックス動作を
指定するためには、ヘッダファイルを作成しなければな
らない。このヘッダファイルは、本来、グラフィックス
エンジンにロードされるグラフィックス変数を含んでい
る。第2に、ヘッダファイルを作成した後に、トリガリ
ングメカニズムを選択しなければならない。
ードされるべきデータを含んでいる。ヘッダファイル
は、ホストによってフレームバッファメモリ40の目に
見えない領域に書き込まれる。グラフィックスプロセッ
サは、このヘッダファイルを読み出し、指定された複数
のレジスタをそのヘッダファイルに含まれている複数の
値で満たす。ヘッダファイルにおいてその値が指定され
るレジスタは28個ある。それぞれの値が16ビットを
必要としているので、ヘッダファイルを満たすのに必要
な総バイト数は56となる。ヘッダファイルにおけるレ
ジスタの順番には従わなければならない。
ト直接制御の2つの方法のいずれかによってトリガする
ことができる。
c、垂直syncおよび画素クロックのような各種ビデ
オ制御信号を発生する固有のビデオ制御回路を有してい
る。いったん初期化されると、グラフィックスプロセッ
サ20は、BLTエンジン54およびホスト10から独
立して、これらの信号を発生する。スクリーンリフレッ
シュは、ビデオスクリーンが新しいイメージによって更
新されるメカニズムとして参照される。このことは、本
質的に垂直syncによって要求されることである。グ
ラフィックスプロセッサ20は、垂直ラインカウントを
インクリメントする垂直syncカウンタを有してい
る。アニメーションやビデオなどに適用する際には、イ
メージの更新とスクリーンリフレッシュとの間の同期を
とることによって、表示に悪影響が及ぼされる事態を回
避することが重要である。
におけるTRIGGERビットおよびARMビットが、
それぞれ0および1にプログラムされている時、垂直s
yncトリガリングメカニズムがイネーブルされる。S
TART_BLT_iおよびSTOP_BLT_iレジ
スタは、オートBLTがトリガされる垂直カウント範囲
を与える。垂直カウント値が対応するSTART_BL
T_iを超えると、(グラフィックスエンジンが他のタ
スクを実行するのに忙しくなければ)オートBLTがた
だちにスタートする。グラフィックスエンジンが他のタ
スクを実行するのに忙しいのなら、グラフィックスエン
ジンはそのタスクを完了した後(垂直カウント値が対応
するSTOP_BLT_iにおける値未満である限り)
ただちにオートBLT動作をスタートする。したがっ
て、START_BLT_i値およびSTOP_BLT
_i値によって、オートBLT動作をスタートできる最
も早いフレームタイムと最も遅いフレームタイムとが得
られる。いったんスタートされると、オートBLT動作
は、垂直カウント値には関わりなく、最後まで実行され
る。したがって、現在表示されているイメージの全部ま
たは一部に上書きすることなく、グラフィックス動作を
安全かつ確実に進めることができるようにするために
は、START_BLT_iおよびSTOP_BLT_
iに書き込まれる値を慎重に選択しなければならない。
トBLT動作をおこなうためのレジスタとしては、3セ
ットの独立したレジスタがあるのだから、スクリーン上
の3つのウィンドウをそれぞれ独立してリフレッシュす
る(例えば、更新する)ことができる。
ーン上のウィンドウとの間の対応関係を図示している。
スクリーン110は、イメージを表示するモニタのスク
リーンである。スクリーン上におけるウィンドウ11
1、112および113は、スクリーン上に表示され、
同時にアクティブとなる3つのウィンドウである。パラ
メータセット121、122および123は、ウィンド
ウ111、112および113にそれぞれ対応してい
る。ウィンドウ111、112および113の位置は、
パラメータセット121、122および123における
値によってそれぞれ指定される。これらパラメータセッ
トの位置は、RESIZE{A〜C}_opRDRAM
により指定される。垂直ライントリガリング用の安全領
域は、対応するSTART_BLT_iおよびSTOP
_BLT_iレジスタにおいて指定される。
セッサ20との間のインタラクションを説明するフロー
チャートを図示している。ブロック200は、ホスト1
0により実行される各ステップを含んでいる。ブロック
220は、グラフィックスプロセッサ20により実行さ
れる各ステップを含んでいる。どちらのブロックにおい
ても、ホストコンピュータ10は、各種周辺機器の保守
管理や、メインプログラムの実行や、割り込みへの応答
といった、実行すべき通常のタスクが他にあるものとす
る。同様に、グラフィックスプロセッサ20にも、例え
ばビデオ制御信号の発生といった専念すべき通常のタス
クが他にある。ホストコンピュータ10が自動グラフィ
ックス動作を開始する準備ができた状態になると、ホス
ト10は、まず、1個のヘッダファイルあるいは1シー
ケンスのヘッダファイルを作成する。この場合、(後述
するように)連鎖が用いられることになる。ステップ2
10において、ホスト10は、ヘッダファイルの56バ
イトをバッファメモリ40に書き込む。ステップ211
において、ホスト10は、安全領域を確定するために、
垂直走査線のスタート値およびストップ値を書き込む。
3つのアクティブウィンドウ、または3セットの自動グ
ラフィックス動作に対応して、3つ以下の安全領域を確
定することができる。ステップ212において、ホスト
10は、対応するRESIZE{A〜C}_opRDR
AMレジスタのTRIGGERを0に、ARMを1にプ
ログラムすることによって、スクリーンリフレッシュト
リガリングメカニズムをイネーブルする。グラフィック
スプロセッサ20がこれらの値によってプログラムされ
るとすぐに、グラフィックスプロセッサ20は自動動作
の準備完了状態になる。すると、ホスト10は、ステッ
プ213でその通常のタスクに戻ることができる。ブロ
ック220は、グラフィックスプロセッサによって実行
される各ステップを示している。以下の説明では、ただ
1つのウィンドウがアクティブであると仮定する。ただ
し、好ましい実施形態では、3つのウィンドウを同時に
イネーブルすることができる。ステップ221におい
て、もしホスト10がスクリーンリフレッシュトリガリ
ングのオプションをイネーブルしていないのなら、ステ
ップ230に示されているように、グラフィックスプロ
セッサ20は通常の動作を継続する。いったんスクリー
ンリフレッシュトリガリングのオプションがイネーブル
されると、グラフィックスプロセッサ20は、内部垂直
カウンタと、ホスト10によってプログラムされたスタ
ート値およびストップ値との比較をイネーブルする。こ
の比較は、グラフィックスエンジンから独立したハード
ウェアによりなされるので、グラフィックスプロセッサ
20は、このタスクのみに縛られるわけではない。各動
作の終了時にはいつも、ステップ222に示すように、
グラフィックスプロセッサ20はこの比較の結果をチェ
ックする。もし垂直カウンタが安全領域により確定され
た範囲外にあるのなら、グラフィックスエンジンは、ス
テップ230で通常の動作を継続する。一方、もし垂直
カウンタがこの範囲内にあれば、ステップ223に示す
ように、グラフィックスエンジンは通常の動作を中断
し、自動BLTヘッダをフェッチする。次に、これらの
値がレジスタに格納された(ステップ224)後、ステ
ップ225で自動BLTが実行される。いったん自動B
LTが完了すると、グラフィックスプロセッサ20はス
テップ221に戻る。
てBLT動作とスクリーンリフレッシュとの間の同期を
とることが可能になるとはいえ、ホストにより自動BL
T動作を直接に制御するほうが望ましい状況もある。換
言すれば、グラフィックスエンジンは、ホスト10によ
ってプログラムされた後ただちに、オートBLT動作を
実行することになる。
セッサ20との間のインタラクションを説明するフロー
チャートを図示している。ブロック300はホストによ
り実行される各ステップからなり、ブロック320はグ
ラフィックスプロセッサにより実行される各ステップか
らなる。(1)の場合と同様に、ホスト10は、ステッ
プ301でまずヘッダファイルをセットアップする。ホ
スト10がオートBLT動作の準備完了状態になると、
ステップ302で、ホスト10はTRIGGERビット
およびARMビットをそれぞれ1および0にプログラム
する。すると、ホスト10は、ステップ303で通常の
タスクに戻ることができる。グラフィックスプロセッサ
の側では、もしステップ321でホスト10が自動BL
Tをトリガしていないのなら、ステップ330で通常の
動作が継続される。一方、もしトリガがイネーブルされ
ているのなら、ステップ322で自動動作がスタートす
る。
におこなうのに十分な情報を含んではいるが、多数のヘ
ッダファイルを連鎖させることによって、ホスト10を
割り込ませずに1シーケンスのグラフィックス動作を実
行可能とするのが望ましい。そうすれば、非常に複雑な
グラフィックスタスクを遂行することができる。これ
は、グラフィックスエンジンには連鎖イネーブルビット
が存在するのであるから、実現可能である。連鎖をイネ
ーブルするには、LNCNTLレジスタの連鎖イネーブ
ルビットを用いる。このビットがハイであれば連鎖はイ
ネーブルされ、ローであれば連鎖はディセーブルされ
る。各ヘッダファイルは、次のヘッダファイルに対する
ポインタを有している。これらのポインタは、NEXT
_HEAD.pt.x.およびNEXT_HEAD.p
t.y.である(なお、バッファメモリの目に見えない
領域は、目に見える領域を2次元的に拡大したものとみ
なされること、および、ヘッダファイルは、ライン上の
どの位置(X値)を選択してもよいのと同様に、どの
「ライン」(Y値)に書き込んでもよいことには注意が
必要である)。連鎖がイネーブルされると、第1のBL
T動作が完了した後、グラフィックスエンジンは、NE
XT_HEAD.pt.x.およびNEXT_HEA
D.pt.y.により指定された位置から新しいパラメ
ータセットを読み出し、新しいBLTを実行する。LN
CNTLの連鎖イネーブルビットがローとなり、現在の
ヘッダファイルがシーケンスにおける最後のヘッダファ
イルであることが示されるまで、連鎖は継続される。
している。したがって、上述したように、スクリーンリ
フレッシュまたはホストのいずれかによって、1シーケ
ンスのオートBLT動作を連鎖させ、トリガすることが
できる。
明する図である。表示スクリーン400は、3つのアク
ティブウィンドウWA401、WBB’402およびW
C403を示す通常のスクリーンである。レジスタセッ
トRA411、RB412およびRC413は、それぞ
れWA、WBB’およびWCに対応するXY位置および
安全領域を指定するためのレジスタを含んでいる。ヘッ
ダメモリ領域HA414およびHC417は、0であり
連鎖をディセーブルするLNCNTL連鎖イネーブルビ
ットを含んでいる。したがって、オートBLT動作は、
ヘッダメモリ領域HA414およびHC417のみにお
いて指定されるとおりに実行される。ヘッダメモリ領域
HBは、連鎖を有している。すなわち、その連鎖ビット
は1である。HBにおける次のヘッダポインタがHB’
416を指示しており、HB’ヘッダは0である連鎖イ
ネーブルビットを含んでいると仮定する。その場合、ヘ
ッダメモリ領域BにおけるBLT動作が完了すると、グ
ラフィックスエンジンは、HB’ヘッダメモリ領域に含
まれているパラメータをフェッチし、そのBLT動作を
実行する。HB’BLT動作が完了した後、グラフィッ
クスエンジンはその通常のモードに戻る。したがって、
ウィンドウWBB’402は、HBおよびHB’におけ
る2つのBLT動作の結果を示している。
0のいずれかによりトリガされる自動グラフィックス動
作と、連鎖法とを組み合わせることによって、ホストの
大幅なオーバーヘッドをもたらすことなく、非常に複雑
で強化されたグラフィックス動作を実行することができ
る。したがって、ホストのインタラクションを最小限に
とどめることができる。本質的には、グラフィックスプ
ログラムは、ホスト10によってバッファメモリ40内
に作成されうるものであり、また、本発明による連鎖を
用いることによって、ホストの介入なしに、そのような
グラフィックスプログラムを実行し、結果を表示するこ
とができる。
明による自動グラフィックス動作を好ましい実施形態に
即して開示し、説明してきたが、本発明の装置および方
法には、本発明の着想および範囲を超えることなくさま
ざまな改変を加えることが可能であることは理解された
い。
め、グラフィックに悪影響が及ぼされる事態を回避する
ために、ホストとグラフィックスプロセッサとの間のイ
ンタラクションスキームを最適化するグラフィックスシ
ステムを提供することができる。
典型的グラフィックスシステムを示すブロック図であ
る。
細ブロック図である。
ス表示との間の対応関係を示す図である。
ムを用いて自動BLT動作を実行するための各ステップ
を示すフローチャートである。
LT動作を実行するための各ステップを示すフローチャ
ートである。
Claims (24)
- 【請求項1】 自動的にグラフィックス動作を実行する
グラフィックスシステムであって、 ホストコンピュータと、 該ホストコンピュータに接続されたフレームバッファメ
モリと、 該ホストコンピュータおよび該フレームバッファメモリ
に接続されているグラフィックスプロセッサであって、 第1のグラフィックス動作を開始する第1のトリガリン
グ回路、およびプログラマブルレジスタを有し、該第1
のトリガリング回路に接続されているブロック転送エン
ジンであって、該フレームバッファメモリへの転送およ
び該フレームファイルメモリからの転送を制御し、か
つ、該プログラマブルレジスタの内容に基づき、該第1
のトリガリング回路に応答して該第1のグラフィックス
動作を実行する、ブロック転送エンジンを有しているグ
ラフィックスプロセッサと、を備えているグラフィック
スシステム。 - 【請求項2】 前記グラフィックスプロセッサが、前記
ブロック転送エンジンに接続されており、第2のグラフ
ィックス動作を開始する第2のトリガリング回路をさら
に備えており、該ブロック転送エンジンにおける前記プ
ログラマブルレジスタが、該プログラマブルレジスタの
内容に基づき、該第2のトリガリング回路に応答して該
第2のグラフィックス動作を実行する、請求項1に記載
のグラフィックスシステム。 - 【請求項3】 前記グラフィックスプロセッサが、複数
のプログラマブルレジスタの内容に基づき、前記第1の
トリガリング回路または前記第2のトリガリング回路に
応答して複数のグラフィックス動作を実行する、前記プ
ログラマブルレジスタを複数個備えている、請求項2に
記載のグラフィックスシステム。 - 【請求項4】 前記プログラマブルレジスタが、垂直走
査線の最小値と該垂直走査線の最大値とを格納する複数
のレジスタからなる、請求項2に記載のグラフィックス
システム。 - 【請求項5】 前記プログラマブルレジスタが、イネー
ブルビットが第1のイネーブル状態にある時には前記第
1のトリガリング回路をトリガし、該イネーブルビット
が第2のイネーブル状態にある時には前記第2のトリガ
リング回路をトリガするイネーブルビットを有してい
る、請求項4に記載のグラフィックスシステム。 - 【請求項6】 前記グラフィックスプロセッサが垂直カ
ウンタ値をインクリメントするビデオ制御回路をさらに
備えており、前記イネーブルビットが前記第1のイネー
ブル状態にある時に前記第1のトリガリング回路がトリ
ガされ、かつ、該垂直カウンタ値が、前記垂直走査線の
前記最小値と前記最大値との間の値である、請求項5に
記載のグラフィックスシステム。 - 【請求項7】 1サブセットの前記プログラマブルレジ
スタの内容に基づいて前記第1のグラフィックス動作が
実行され、該1サブセットの該プログラマブルレジスタ
が、第1および第2の連鎖イネーブル状態を有する連鎖
イネーブルビットと、次のサブセットの該プログラマブ
ルレジスタのアドレスを示す少なくとも1つの位置ポイ
ンタと、を含んでいる、請求項1に記載のグラフィック
スシステム。 - 【請求項8】 前記グラフィックスプロセッサが、前記
次のサブセットの前記プログラマブルレジスタの内容を
前記アドレスから取り出し、前記連鎖イネーブルビット
が前記第1の連鎖イネーブル状態にある時には前記第1
のグラフィックス動作を実行し、かつ、該連鎖イネーブ
ルビットが前記第2の連鎖イネーブル状態にある時には
通常のモードに戻る、請求項7に記載のグラフィックス
システム。 - 【請求項9】 ホストコンピュータに接続されたフレー
ムバッファメモリを設けるステップと、 第1のグラフィックス動作を開始する第1のトリガリン
グ回路を有するグラフィックスプロセッサであって、該
ホストコンピュータおよび該フレームバッファメモリに
接続されているグラフィックスプロセッサを設けるステ
ップと、 該第1のトリガリング回路に接続されており、該フレー
ムバッファメモリからの転送および該フレームバッファ
メモリへの転送を制御するブロック転送エンジンであっ
て、プログラマブルレジスタの内容に基づき、該第1の
トリガリング回路に応答して該第1のグラフィックス動
作を実行するのに用いられるプログラマブルレジスタを
有している、ブロック転送エンジンを設けるステップ
と、を含む、自動グラフィックス動作方法。 - 【請求項10】 前記グラフィックスプロセッサを設け
る前記ステップが、前記ブロック転送エンジンに接続さ
れており、第2のグラフィックス動作を開始する第2の
トリガリング回路を設けるステップをさらに備えてお
り、該ブロック転送エンジンにおける前記プログラマブ
ルレジスタが、該プログラマブルレジスタの内容に基づ
き、該第2のトリガリング回路に応答して該第2のグラ
フィックス動作を実行する、請求項9に記載の方法。 - 【請求項11】 前記ブロック転送エンジンを設ける前
記ステップが、複数のプログラマブルレジスタの内容に
基づき、前記第1のトリガリング回路または前記第2の
トリガリング回路に応答して複数のグラフィックス動作
を実行する前記プログラマブルレジスタを複数個設ける
ステップをさらに備えている、請求項10に記載の方
法。 - 【請求項12】 前記ブロック転送エンジンを設ける前
記ステップにおいて、前記プログラマブルレジスタが、
垂直走査線の最小値と該垂直走査線の最大値とを格納す
る複数のレジスタからなる、請求項10に記載の方法。 - 【請求項13】 前記ブロック転送エンジンを設ける前
記ステップにおいて、前記プログラマブルレジスタが、
イネーブルビットが第1のイネーブル状態にある時には
前記第1のトリガリング回路をトリガし、該イネーブル
ビットが第2のイネーブル状態にある時には前記第2の
トリガリング回路をトリガするイネーブルビットを有し
ている、請求項12に記載の方法。 - 【請求項14】 前記グラフィックスプロセッサを設け
る前記ステップにおいて、前記グラフィックスプロセッ
サが垂直カウンタ値をインクリメントするビデオ制御回
路をさらに備えており、前記イネーブルビットが前記第
1のイネーブル状態にある時に前記第1のトリガリング
回路がトリガされ、かつ、該垂直カウンタ値が、前記垂
直走査線の前記最小値と前記最大値との間の値である、
請求項13に記載の方法。 - 【請求項15】 前記グラフィックスプロセッサを設け
る前記ステップにおいて、1サブセットの前記プログラ
マブルレジスタの内容に基づいて前記第1のグラフィッ
クス動作が実行され、該1サブセットの該プログラマブ
ルレジスタが、第1および第2の連鎖イネーブル状態を
有する連鎖イネーブルビットと、次のサブセットの該プ
ログラマブルレジスタのアドレスを示す少なくとも1つ
の位置ポインタと、を含んでいる、請求項9に方法。 - 【請求項16】 前記グラフィックスプロセッサを設け
る前記ステップにおいて、前記グラフィックスプロセッ
サが、前記次のサブセットの前記プログラマブルレジス
タの内容を前記アドレスから取り出し、前記連鎖イネー
ブルビットが前記第1の連鎖イネーブル状態にある時に
は前記第1のグラフィックス動作を実行し、かつ、該連
鎖イネーブルビットが前記第2の連鎖イネーブル状態に
ある時には通常のモードに戻る、請求項15に記載の方
法。 - 【請求項17】 ホストコンピュータおよびフレームバ
ッファメモリに接続されており、自動的にグラフィック
ス動作を実行するグラフィックスプロセッサであって、 第1のグラフィックス動作を開始する第1のトリガリン
グ回路と、 プログラマブルレジスタを有し、該第1のトリガリング
回路に接続されているブロック転送エンジンであって、
該プログラマブルレジスタの内容に基づき、該第1のト
リガリング回路に応答して該第1のグラフィックス動作
を実行する、ブロック転送エンジンと、を備えているグ
ラフィックスプロセッサ。 - 【請求項18】 前記ブロック転送エンジンに接続され
ており、第2のグラフィックス動作を開始する第2のト
リガリング回路をさらに備えており、該ブロック転送エ
ンジンにおける前記プログラマブルレジスタが、該プロ
グラマブルレジスタの内容に基づき、該第2のトリガリ
ング回路に応答して該第2のグラフィックス動作を実行
する、請求項17に記載のグラフィックスプロセッサ。 - 【請求項19】 前記グラフィックスプロセッサが、複
数のプログラマブルレジスタの内容に基づき、前記第1
のトリガリング回路または前記第2のトリガリング回路
に応答して複数のグラフィックス動作を実行する前記プ
ログラマブルレジスタを複数個備えている、請求項17
に記載のグラフィックスプロセッサ。 - 【請求項20】 前記プログラマブルレジスタが、垂直
走査線の最小値と該垂直走査線の最大値とを格納する複
数のレジスタからなる、請求項19に記載のグラフィッ
クスプロセッサ。 - 【請求項21】 前記プログラマブルレジスタが、イネ
ーブルビットが第1のイネーブル状態にある時には前記
第1のトリガリング回路をトリガし、該イネーブルビッ
トが第2のイネーブル状態にある時には前記第2のトリ
ガリング回路をトリガするイネーブルビットを有してい
る、請求項20に記載のグラフィックスプロセッサ。 - 【請求項22】 前記グラフィックスプロセッサが垂直
カウンタ値をインクリメントするビデオ制御回路をさら
に備えており、前記イネーブルビットが前記第1のイネ
ーブル状態にある時に前記第1のトリガリング回路がト
リガされ、かつ、該垂直カウンタ値が、前記垂直走査線
の前記最小値と前記最大値との間の値である、請求項2
1に記載のグラフィックスプロセッサ。 - 【請求項23】 1サブセットの前記プログラマブルレ
ジスタの内容に基づいて前記第1のグラフィックス動作
が実行され、該1サブセットの該プログラマブルレジス
タが、第1および第2の連鎖イネーブル状態を有する連
鎖イネーブルビットと、次のサブセットの該プログラマ
ブルレジスタのアドレスを示す少なくとも1つの位置ポ
インタと、を含んでいる、請求項17に記載のグラフィ
ックスプロセッサ。 - 【請求項24】 前記グラフィックスプロセッサが、前
記次のサブセットの前記プログラマブルレジスタの内容
を前記アドレスから取り出し、前記連鎖イネーブルビッ
トが前記第1の連鎖イネーブル状態にある時には前記第
1のグラフィックス動作を実行し、かつ、該連鎖イネー
ブルビットが前記第2の連鎖イネーブル状態にある時に
は通常のモードに戻る、請求項23に記載のグラフィッ
クスプロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US55079595A | 1995-10-31 | 1995-10-31 | |
US08/550,795 | 1995-10-31 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001280826A Division JP4079208B2 (ja) | 1995-10-31 | 2001-09-14 | グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09230837A true JPH09230837A (ja) | 1997-09-05 |
JP3280870B2 JP3280870B2 (ja) | 2002-05-13 |
Family
ID=24198599
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29065896A Expired - Lifetime JP3280870B2 (ja) | 1995-10-31 | 1996-10-31 | グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサ |
JP2001280826A Expired - Lifetime JP4079208B2 (ja) | 1995-10-31 | 2001-09-14 | グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001280826A Expired - Lifetime JP4079208B2 (ja) | 1995-10-31 | 2001-09-14 | グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサ |
Country Status (4)
Country | Link |
---|---|
US (1) | US6097401A (ja) |
EP (1) | EP0772119A3 (ja) |
JP (2) | JP3280870B2 (ja) |
TW (1) | TW316965B (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008522285A (ja) * | 2004-11-24 | 2008-06-26 | クゥアルコム・インコーポレイテッド | バッファを更新するための方法及びシステム |
US8694663B2 (en) | 2001-09-06 | 2014-04-08 | Qualcomm Incorporated | System for transferring digital data at a high rate between a host and a client over a communication path for presentation to a user |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8694652B2 (en) | 2003-10-15 | 2014-04-08 | Qualcomm Incorporated | Method, system and computer program for adding a field to a client capability packet sent from a client to a host |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4240543B2 (ja) * | 1997-05-28 | 2009-03-18 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 表示装置 |
US7554510B1 (en) | 1998-03-02 | 2009-06-30 | Ati Technologies Ulc | Method and apparatus for configuring multiple displays associated with a computing system |
EP0967588A1 (fr) * | 1998-06-23 | 1999-12-29 | Koninklijke Philips Electronics N.V. | Controleur d'ecran avec circuit d'animation |
JP3283005B2 (ja) * | 1998-11-05 | 2002-05-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 画像データの遷移を生じないようにするデータ転送方法 |
US6424320B1 (en) * | 1999-06-15 | 2002-07-23 | Ati International Srl | Method and apparatus for rendering video |
US6853381B1 (en) * | 1999-09-16 | 2005-02-08 | Ati International Srl | Method and apparatus for a write behind raster |
US6724390B1 (en) * | 1999-12-29 | 2004-04-20 | Intel Corporation | Allocating memory |
US6823525B1 (en) * | 2000-01-21 | 2004-11-23 | Ati Technologies Inc. | Method for displaying single monitor applications on multiple monitors driven by a personal computer |
US6597364B1 (en) * | 2000-08-04 | 2003-07-22 | Silicon Integrated Systems Corp. | Method and system for eliminating frame tears from an output display |
US6760772B2 (en) | 2000-12-15 | 2004-07-06 | Qualcomm, Inc. | Generating and implementing a communication protocol and interface for high data rate signal transfer |
US6894690B2 (en) | 2001-06-20 | 2005-05-17 | Engineering Technology Associates, Inc. | Method and apparatus for capturing and viewing a sequence of 3-D images |
US6741263B1 (en) | 2001-09-21 | 2004-05-25 | Lsi Logic Corporation | Video sampling structure conversion in BMME |
US6943804B2 (en) * | 2002-10-30 | 2005-09-13 | Hewlett-Packard Development Company, L.P. | System and method for performing BLTs |
FI114882B (fi) * | 2003-04-30 | 2005-01-14 | Nokia Corp | Kuvakehysten päivityksen synkronointi |
WO2004110021A2 (en) | 2003-06-02 | 2004-12-16 | Qualcomm Incorporated | Generating and implementing a signal protocol and interface for higher data rates |
RU2006107561A (ru) | 2003-08-13 | 2007-09-20 | Квэлкомм Инкорпорейтед (US) | Сигнальный интерфейс для высоких скоростей передачи данных |
RU2369033C2 (ru) | 2003-09-10 | 2009-09-27 | Квэлкомм Инкорпорейтед | Интерфейс высокоскоростной передачи данных |
WO2005043862A1 (en) | 2003-10-29 | 2005-05-12 | Qualcomm Incorporated | High data rate interface |
EP2247066B1 (en) | 2003-11-12 | 2012-09-26 | Qualcomm Incorporated | High data rate interface with improved link control |
KR20060096161A (ko) | 2003-11-25 | 2006-09-07 | 콸콤 인코포레이티드 | 향상된 링크 동기화를 제공하는 고속 데이터 레이트인터페이스 |
CN101867516B (zh) | 2003-12-08 | 2012-04-04 | 高通股份有限公司 | 具有改进链路同步的高数据速率接口 |
CA2775784A1 (en) | 2004-03-10 | 2005-09-22 | Qualcomm Incorporated | High data rate interface apparatus and method |
RU2355121C2 (ru) | 2004-03-17 | 2009-05-10 | Квэлкомм Инкорпорейтед | Устройство и способ интерфейса с высокой скоростью передачи данных |
MXPA06010873A (es) | 2004-03-24 | 2007-04-02 | Qualcomm Inc | Metodo y aparato de interfase de tasa de datos alta. |
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 |
BRPI0511783A (pt) | 2004-06-04 | 2008-01-15 | Qualcomm Inc | método e equipamento de interface com velocidade elevada de dados |
US20060017738A1 (en) * | 2004-07-23 | 2006-01-26 | Juraj Bystricky | System and method for detecting memory writes to initiate image data transfers |
US8699330B2 (en) | 2004-11-24 | 2014-04-15 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US8723705B2 (en) | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
US8667363B2 (en) | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8539119B2 (en) | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
US8730069B2 (en) | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
KR100827150B1 (ko) | 2006-07-10 | 2008-05-02 | 삼성전자주식회사 | 터치패드를 구비한 휴대 단말기의 구동 장치 |
US20080165200A1 (en) * | 2007-01-05 | 2008-07-10 | Raymond Chow | Hardware Background Tile Generation |
WO2013081600A1 (en) * | 2011-11-30 | 2013-06-06 | Intel Corporation | Reducing power for 3d workloads |
US9875195B2 (en) * | 2014-08-14 | 2018-01-23 | Advanced Micro Devices, Inc. | Data distribution among multiple managed memories |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL72685A (en) * | 1983-08-30 | 1988-08-31 | Gen Electric | Advanced video object generator |
US4583185A (en) * | 1983-10-28 | 1986-04-15 | General Electric Company | Incremental terrain image generation |
US4586038A (en) * | 1983-12-12 | 1986-04-29 | General Electric Company | True-perspective texture/shading processor |
EP0157254B1 (en) * | 1984-03-16 | 1990-08-08 | Ascii Corporation | Video display control system |
EP0481534B1 (en) * | 1984-07-23 | 1998-01-14 | Texas Instruments Incorporated | Video system |
US4715005A (en) * | 1984-08-08 | 1987-12-22 | General Electric Company | Terrain/seascape image generator with math model data base |
US4821212A (en) * | 1984-08-08 | 1989-04-11 | General Electric Company | Three dimensional texture generator for computed terrain images |
US4855937A (en) * | 1984-08-08 | 1989-08-08 | General Electric Company | Data block processing for fast image generation |
US5283863A (en) * | 1985-10-22 | 1994-02-01 | Texas Instruments Incorporated | Process for effecting an array move instruction, a graphics computer system, a display system, a graphics processor and graphics display system |
US4692880A (en) * | 1985-11-15 | 1987-09-08 | General Electric Company | Memory efficient cell texturing for advanced video object generator |
US4862388A (en) * | 1986-12-15 | 1989-08-29 | General Electric Company | Dynamic comprehensive distortion correction in a real time imaging system |
IL79822A (en) * | 1985-12-19 | 1990-03-19 | Gen Electric | Method of comprehensive distortion correction for a computer image generation system |
US4811245A (en) * | 1985-12-19 | 1989-03-07 | General Electric Company | Method of edge smoothing for a computer image generation system |
US5103499A (en) * | 1986-07-18 | 1992-04-07 | Commodore-Amiga, Inc. | Beam synchronized coprocessor |
US5046023A (en) * | 1987-10-06 | 1991-09-03 | Hitachi, Ltd. | Graphic processing system having bus connection control capable of high-speed parallel drawing processing in a frame buffer and a system memory |
US4905164A (en) * | 1986-12-19 | 1990-02-27 | General Electric Company | Method for modulating color for effecting color cell texture |
JPS63201791A (ja) * | 1987-02-12 | 1988-08-19 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 処理システム |
US4868771A (en) * | 1987-03-30 | 1989-09-19 | General Electric Company | Computer image generation with topographical response |
US5191642A (en) * | 1987-04-09 | 1993-03-02 | General Electric Company | Method for efficiently allocating computer resource for real time image generation |
US4825391A (en) * | 1987-07-20 | 1989-04-25 | General Electric Company | Depth buffer priority processing for real time computer image generating systems |
US4958305A (en) * | 1987-11-04 | 1990-09-18 | General Electric Company | Polygon edge clipping |
US4974176A (en) * | 1987-12-18 | 1990-11-27 | General Electric Company | Microtexture for close-in detail |
US4965745A (en) * | 1987-12-18 | 1990-10-23 | General Electric Company | YIQ based color cell texture |
US5367615A (en) * | 1989-07-10 | 1994-11-22 | General Electric Company | Spatial augmentation of vertices and continuous level of detail transition for smoothly varying terrain polygon density |
US5224210A (en) * | 1989-07-28 | 1993-06-29 | Hewlett-Packard Company | Method and apparatus for graphics pipeline context switching in a multi-tasking windows system |
US5126726A (en) * | 1989-12-27 | 1992-06-30 | General Electric Company | Picture element encoding |
US5265203A (en) * | 1990-09-14 | 1993-11-23 | Hughes Aircraft Company | Hardware multiprocess scheduler in a graphics rendering processor |
US5303321A (en) * | 1990-09-14 | 1994-04-12 | Hughes Aircraft Company | Integrated hardware generator for area fill, conics and vectors in a graphics rendering processor |
US5276798A (en) * | 1990-09-14 | 1994-01-04 | Hughes Aircraft Company | Multifunction high performance graphics rendering processor |
US5218674A (en) * | 1990-09-14 | 1993-06-08 | Hughes Aircraft Company | Hardware bit block transfer operator in a graphics rendering processor |
US5182800A (en) * | 1990-11-16 | 1993-01-26 | International Business Machines Corporation | Direct memory access controller with adaptive pipelining and bus control features |
US5268996A (en) * | 1990-12-20 | 1993-12-07 | General Electric Company | Computer image generation method for determination of total pixel illumination due to plural light sources |
US5420970A (en) * | 1991-03-13 | 1995-05-30 | Martin Marietta Corporation | Method for determining computer image generation display pixels occupied by a circular feature |
US5293467A (en) * | 1991-04-03 | 1994-03-08 | Buchner Gregory C | Method for resolving priority between a calligraphically-displayed point feature and both raster-displayed faces and other calligraphically-displayed point features in a CIG system |
US5187754A (en) * | 1991-04-30 | 1993-02-16 | General Electric Company | Forming, with the aid of an overview image, a composite image from a mosaic of images |
TW225595B (ja) * | 1991-09-03 | 1994-06-21 | Gen Electric | |
JP2892898B2 (ja) * | 1992-04-17 | 1999-05-17 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ウインドウ管理方法及びラスタ表示ウインドウ管理システム |
CA2162560A1 (en) * | 1993-05-10 | 1994-11-24 | Shannon Holland | Windowing system with independent windows for arbitrary resolution for display on multiple devices of arbitrary resolution |
US5583984A (en) * | 1993-06-11 | 1996-12-10 | Apple Computer, Inc. | Computer system with graphical user interface including automated enclosures |
US5553220A (en) * | 1993-09-07 | 1996-09-03 | Cirrus Logic, Inc. | Managing audio data using a graphics display controller |
US5493646A (en) * | 1994-03-08 | 1996-02-20 | Texas Instruments Incorporated | Pixel block transfer with transparency |
US5706478A (en) * | 1994-05-23 | 1998-01-06 | Cirrus Logic, Inc. | Display list processor for operating in processor and coprocessor modes |
US5694143A (en) * | 1994-06-02 | 1997-12-02 | Accelerix Limited | Single chip frame buffer and graphics accelerator |
US5838334A (en) * | 1994-11-16 | 1998-11-17 | Dye; Thomas A. | Memory and graphics controller which performs pointer-based display list video refresh operations |
US5798762A (en) * | 1995-05-10 | 1998-08-25 | Cagent Technologies, Inc. | Controlling a real-time rendering engine using a list-based control mechanism |
US5717904A (en) * | 1995-10-02 | 1998-02-10 | Brooktree Corporation | Apparatus and methods for automatically controlling block writes |
-
1996
- 1996-10-30 EP EP96307846A patent/EP0772119A3/en not_active Withdrawn
- 1996-10-30 TW TW085113269A patent/TW316965B/zh active
- 1996-10-31 JP JP29065896A patent/JP3280870B2/ja not_active Expired - Lifetime
-
1997
- 1997-11-26 US US08/984,183 patent/US6097401A/en not_active Expired - Lifetime
-
2001
- 2001-09-14 JP JP2001280826A patent/JP4079208B2/ja not_active Expired - Lifetime
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8694663B2 (en) | 2001-09-06 | 2014-04-08 | Qualcomm Incorporated | System for transferring digital data at a high rate between a host and a client over a communication path for presentation to a user |
US8694652B2 (en) | 2003-10-15 | 2014-04-08 | Qualcomm Incorporated | Method, system and computer program for adding a field to a client capability packet sent from a client to a host |
JP2008522285A (ja) * | 2004-11-24 | 2008-06-26 | クゥアルコム・インコーポレイテッド | バッファを更新するための方法及びシステム |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
Also Published As
Publication number | Publication date |
---|---|
TW316965B (ja) | 1997-10-01 |
JP4079208B2 (ja) | 2008-04-23 |
EP0772119A2 (en) | 1997-05-07 |
US6097401A (en) | 2000-08-01 |
JP3280870B2 (ja) | 2002-05-13 |
EP0772119A3 (en) | 1997-12-29 |
JP2002175174A (ja) | 2002-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3280870B2 (ja) | グラフィックスシステム、自動グラフィックス動作方法およびグラフィックスプロセッサ | |
US5644788A (en) | Burst transfers using an ascending or descending only burst ordering | |
US5347634A (en) | System and method for directly executing user DMA instruction from user controlled process by employing processor privileged work buffer pointers | |
US5969728A (en) | System and method of synchronizing multiple buffers for display | |
JPH0827707B2 (ja) | Fifoバッファの制御装置及び制御方法並びにデータ転送を制御する装置 | |
JP2009145932A (ja) | 画像情報の更新を検出するプログラム、方法および画像処理装置 | |
JPS5987569A (ja) | デ−タ自動連続処理回路 | |
EP0314440B1 (en) | Graphic display system with secondary pixel image storage | |
US6678755B1 (en) | Method and apparatus for appending memory commands during a direct memory access operation | |
EP0835490B1 (en) | Write cache for write performance improvement | |
JPH07210141A (ja) | 拡張グラフィックス・アレイ(xga)・ネイティブ・モードにおいて仮想ビデオ・グラフィックス・アレイ(vga)をサポートするディスプレイ・アダプタ | |
US6853381B1 (en) | Method and apparatus for a write behind raster | |
US5930470A (en) | Debugging system and debugging method | |
US5812150A (en) | Device synchronization on a graphics accelerator | |
US6061073A (en) | Tracking of graphics polygon data from different clock domains in a graphics processor | |
JPH10105154A (ja) | グラフィックス表示装置およびグラフィックスプロセッサ | |
US20050210172A1 (en) | Processing real-time command information | |
JP3756215B2 (ja) | インタフェイスコントローラおよび方法 | |
JPH0448358A (ja) | キャッシュ・メモリ制御方式 | |
JPH06102857A (ja) | フレームバッファアクセス装置 | |
JPH05342336A (ja) | 画像表示システム | |
JP2861159B2 (ja) | ウィンドウ表示制御装置 | |
JP2869198B2 (ja) | 情報処理装置 | |
JP2829051B2 (ja) | 文字表示方式 | |
JP2560757B2 (ja) | 表示データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020118 |
|
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 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080222 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090222 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100222 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100222 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110222 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120222 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120222 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130222 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130222 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140222 Year of fee payment: 12 |
|
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 |
|
EXPY | Cancellation because of completion of term |