JPH1069368A - グラフィックスコントローラ回路、コンピュータシステムおよびグラフィックスコントローラチップにおいてコマンドを実行する方法 - Google Patents

グラフィックスコントローラ回路、コンピュータシステムおよびグラフィックスコントローラチップにおいてコマンドを実行する方法

Info

Publication number
JPH1069368A
JPH1069368A JP9163015A JP16301597A JPH1069368A JP H1069368 A JPH1069368 A JP H1069368A JP 9163015 A JP9163015 A JP 9163015A JP 16301597 A JP16301597 A JP 16301597A JP H1069368 A JPH1069368 A JP H1069368A
Authority
JP
Japan
Prior art keywords
command
register
instructions
host
instruction
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.)
Withdrawn
Application number
JP9163015A
Other languages
English (en)
Inventor
Scott Mills Carl
スコット ミルズ カール
Charles Anrew Owen Richard
チャールズ アンリュー オウェン リチャード
Emiru Bonneriiku Mark
エミル ボンネリーク マーク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cirrus Logic Inc
Original Assignee
Cirrus Logic Inc
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
Priority claimed from US08/667,826 external-priority patent/US6563505B1/en
Application filed by Cirrus Logic Inc filed Critical Cirrus Logic Inc
Publication of JPH1069368A publication Critical patent/JPH1069368A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Image Input (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 バスボトルネックを解消することによってパ
フォーマンスを向上したグラフィックスシステムを提供
する。 【解決手段】 ホストから受け取られるデータの量を最
小化するグラフィックスコントローラ回路が提供され
る。このグラフィックスコントローラ回路は、複数のレ
ジスタを含むレジスタファイルを備えている。グラフィ
ックスコントローラは、仮想レジスタへとアドレシング
されたコマンドを受け取り、レジスタファイル内の複数
のレジスタのうちの1つへとアクセスするインストラク
ションを含む複数のインストラクションを生成する。コ
マンドにおいてこのような仮想レジスタの数を用い、こ
れに応答していくつかのインストラクションを生成する
ことによって、本発明によるグラフィックスコントロー
ラ回路は、ホストがシステムバスを介して送るデータの
量を最小化する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、広くはコンピュー
タグラフィックスシステムに関する。具体的には、本発
明は、グラフィックスコントローラチップにおいてコマ
ンドを実行する方法および装置に関する。
【0002】
【従来の技術】グラフィックスコントローラは、ホスト
システムからコマンドおよび表示データを受け取り、そ
れらの表示データおよびコマンドから表示信号を発生す
ることによって、ビデオイメージをディスプレイシステ
ム上に表示するように設計される。図1は、そのような
グラフィックスコントローラ120と、ホスト110
と、ディスプレイユニット130とを有するコンピュー
タシステム100のブロック図である。
【0003】グラフィックスコントローラ120は、ホ
スト110からシステムバス112を介してコマンドお
よび表示データを受け取り、ディスプレイバス123上
に表示信号を発生する過程でコマンドを実行することに
よって、表示データから構成されるビデオイメージをデ
ィスプレイユニット130上に表示することができる。
グラフィックスコントローラ120は、ホスト110か
ら受け取られたコマンドを実行する間に、さらなる表示
データを発生してもよい。表示データには、例えば、テ
キストデータや、RGBフォーマットによるグラフィッ
クス/ビデオデータなどが含まれている。
【0004】グラフィックスコントローラ120は、デ
ィスプレイバス123上に対応する表示信号を発生する
前に、ディスプレイメモリ140に表示データを格納し
てもよい。ディスプレイメモリ140に格納される表示
データの各要素は、ディスプレイユニット上の1画素に
対応していてもよい。以下の説明では、このようなデー
タ要素を「画素データム」と呼び、そのような画素の集
合体を、「画素データ」と呼ぶことにする。
【0005】ホスト110から受け取られたコマンド
は、例えば、移動ディスプレイブロック操作のような各
種操作を指定することができる。移動ディスプレイブロ
ック操作とは、グラフィックスコントローラ120に対
して、あるディスプレイブロック(以下、「ソースディ
スプレイブロック」と称する)を、ディスプレイメモリ
140のある領域からディスプレイメモリ140上の別
の領域(デスティネーションディスプレイブロック)へ
と移動することを指示する操作である。ある場合には、
ソースディスプレイブロックは、ホスト110内に位置
していてもよい。そのような場合、ホスト110は、ソ
ースディスプレイブロックの表示データをシステムバス
112を介して送ることもできる。これに応答して、グ
ラフィックスコントローラ120は、ソースディスプレ
イブロックの画素データを、ディスプレイメモリ140
内のデスティネーションディスプレイブロックに対応す
るメモリ位置へと移動させることができる。
【0006】ホスト110は、それぞれの操作をおこな
うために、いくつかのコマンドをグラフィックスコント
ローラ120に送ることができる。例えば、移動ディス
プレイブロック操作をおこなうために、ホスト110
は、ソースディスプレイブロックの開始位置のX/Y座
標を指定するコマンドを送り、ソースディスプレイブロ
ックのX範囲(つまり、ディスプレイブロックの、開始
アドレスに対するX軸方向の長さ)およびY範囲を指定
する別のコマンドを送った後、デスティネーションディ
スプレイブロックの開始アドレスのX/Y座標を指定す
るさらに別のコマンドを送ることができる。ホスト11
0は、最後に、ディスプレイメモリ140内のデスティ
ネーションディスプレイブロックに対応するメモリ位置
への表示データの移動開始を指定するさらに別のコマン
ドを送ることができる。
【0007】グラフィックス専用アプリケーション(通
常、「グラフィックスユーザインタフェース(GU
I)」と呼ばれる)の出現に伴って、コンピュータシス
テム100には、短い時間の間にいくつかのグラフィッ
クス操作をおこなうことが必要になることがある。例え
ば、コンピュータのユーザによるマウスのクリックが、
コンピュータシステム100に対し、いくつかのグラフ
ィックス操作の実行を求めることがある。それぞれの操
作には、いくつかのコマンドの実行が必要になるので、
ホスト110は、システムバス112を介して、これに
見合ったより多数のコマンドをグラフィックスコントロ
ーラ120に送ることがある。
【0008】
【発明が解決しようとする課題】従来の技術によるコン
ピュータシステム100に伴う問題としては、例えば、
システムバス112には、このように多数のコマンドお
よび表示データの転送をサポートできるだけの帯域幅が
ない場合があるので、コンピュータシステム100のパ
フォーマンスボトルネックになることがある点が挙げら
れる。このようなパフォーマンスボトルネックは、コン
ピュータシステム100のパフォーマンススループット
を下げる原因になる。
【0009】システムバス112におけるパフォーマン
スボトルネックは、ホスト110およびグラフィックス
コントローラ120が、システムバス112に比べてよ
り高速に、かつより広い帯域幅で動作するような場合に
は、一層深刻になる。例えば、ペンティアム(TM)プ
ロセッサを有するホスト110は、75MHzのクロッ
ク速度および64ビットの内部バスで動作し、グラフィ
ックスコントローラ120は、62.5MHzのクロッ
ク速度および64ビットの内部バスで動作することがあ
るのに対して、PCIバスなどのシステムバス112
は、33MHzのクロック速度および32ビット幅のバ
スで動作することがある。グラフィックス操作専用のG
UIアプリケーションでこのようなクロックレートおよ
びバス幅の違いが見られると、それは、システムバス1
12上でのデータスループットボトルネックになり、コ
ンピュータシステム100のパフォーマンスを下げる原
因になる。
【0010】本発明は、上記課題を解決するためになさ
れたものであり、その目的とするところは、バスボトル
ネックを解消することによってパフォーマンスを向上し
たグラフィックスシステムを提供することにある。
【0011】
【課題を解決するための手段】本発明によるバスおよび
ホストを有し、該ホストが該バスに結合されているコン
ピュータシステムに用いられるグラフィックスコントロ
ーラ回路は、該ホストからのコマンドを該バス上で受け
取り、該コマンドから複数のインストラクションを生成
する、ホストインタフェースと、該コマンドを実行する
ために、該複数のインストラクションを実行する実行回
路と、を備えており、そのことにより上記目的が達成さ
れる。
【0012】ある実施形態では、複数のレジスタを含む
レジスタファイルをさらに備えているグラフィックスコ
ントローラ回路であって、もし前記コマンドが、該レジ
スタファイル内の第1のレジスタへとアクセスするのな
ら、前記ホストインタフェースが第1のインストラクシ
ョンセットを生成し、もし該コマンドが、第2のレジス
タへとアクセスするのなら、該ホストインタフェースが
第2のインストラクションセットを生成し、該第1のイ
ンストラクションセットに含まれるインストラクション
の個数が、該第2のインストラクションセットに含まれ
るインストラクションの個数とは異なり、かつ該第1の
インストラクションセットが、該第1のレジスタへとア
クセスすることを含んでいる。
【0013】ある実施形態では、前記第2のレジスタが
仮想レジスタを含んでおり、前記第2のインストラクシ
ョンセットが、前記第1のレジスタへとアクセスする少
なくとも1つのインストラクションを含んでいる。
【0014】ある実施形態では、前記ホストインタフェ
ースが、前記システムバス上のデータを調べ、前記コマ
ンドが前記第1のレジスタにアドレシングされているの
か、あるいは前記第2のレジスタにアドレシングされて
いるのかを判定する、該システムバスに結合されたコマ
ンドエンコーダであって、もし該コマンドが該第1のレ
ジスタにアドレシングされているのなら、前記第1のイ
ンストラクションセットを生成し、もし該コマンドが該
第2のレジスタにアドレシングされているのなら、前記
第2のインストラクションセットを生成する、コマンド
エンコーダと、該コマンドエンコーダにより生成された
該インストラクションを格納し、該インストラクション
を前記実行ブロックに与える、FIFOキューと、を備
えている。
【0015】ある実施形態では、前記コマンドが、移動
ディスプレイブロック操作のための複数のコマンドの中
に含まれており、かつ前記ホストが、ホストデータと、
該移動ディスプレイブロック操作のための該複数のコマ
ンドと、を前記ホストバスを介して送る。
【0016】ある実施形態では、前記コマンドエンコー
ダが、前記ホストデータと、前記複数のコマンドに対応
するインストラクションのセットと、複数のエントリを
含む前記FIFOキューに格納し、該コマンドエンコー
ダが、該複数のエントリのそれぞれに格納されているデ
ータがホストデータムを含んでいるのか、あるいはイン
ストラクションを含んでいるのかを示すタグビットを発
生する。
【0017】ある実施形態では、前記複数のエントリそ
れぞれの前記タグビットを調べ、もし該タグビットが、
該複数のエントリの対応する1つに含まれるデータがホ
ストデータを含むことを示しているのなら、該エントリ
に含まれるデータを前記実行ブロックへと送る、FIF
O出力制御回路をさらに備えている。
【0018】本発明によるコンピュータシステムは、コ
マンドのセットおよび画素データをバスを介して送るホ
ストと、ディスプレイユニットと、該ディスプレイユニ
ット上のディスプレイイメージに対応する画素データの
セットを格納するディスプレイメモリと、該画素データ
のセットを該ディスプレイメモリに供給するグラフィッ
クスコントローラ回路であって、該ホストから該バス上
で該コマンドのセットおよび該画素データを受け取るホ
ストインタフェースであって、該コマンドのセットのそ
れぞれから複数のインストラクションを生成する、ホス
トインタフェース、および該画素データを該ディスプレ
イメモリに格納するために該複数のインストラクション
を実行する実行回路を含む、グラフィックスコントロー
ラ回路と、を備えており、そのことにより上記目的が達
成される。
【0019】ある実施形態では、前記グラフィックスコ
ントローラ回路が、複数のレジスタを含むレジスタファ
イルをさらに備えている、コンピュータシステムであっ
て、もしコマンドが、該レジスタファイル内の第1のレ
ジスタへとアクセスするのなら、前記ホストインタフェ
ースが第1のインストラクションセットを生成し、もし
該コマンドが、第2のレジスタへとアクセスするのな
ら、該ホストインタフェースが第2のインストラクショ
ンセットを生成し、該第1のインストラクションセット
に含まれるインストラクションの個数が、該第2のイン
ストラクションセットに含まれるインストラクションの
個数とは異なり、該第1のインストラクションセット
が、該第1のレジスタへとアクセスすることを含んでい
る。
【0020】ある実施形態では、前記第2のレジスタが
仮想レジスタを含んでおり、前記第2のインストラクシ
ョンセットが、前記第1のレジスタへとアクセスする少
なくとも1つのインストラクションを含んでいる。
【0021】ある実施形態では、前記ホストインタフェ
ースが、前記システムバス上のデータを調べ、前記コマ
ンドが前記第1のレジスタにアドレシングされているの
か、あるいは前記第2のレジスタにアドレシングされて
いるのかを判定する、該システムバスに結合されたコマ
ンドエンコーダであって、もし該コマンドが該第1のレ
ジスタにアドレシングされているのなら、前記第1のイ
ンストラクションセットを生成し、もし該コマンドが該
第2のレジスタにアドレシングされているのなら、前記
第2のインストラクションセットを生成する、コマンド
エンコーダと、該コマンドエンコーダにより生成された
該インストラクションを格納し、該インストラクション
を前記実行ブロックに与える、FIFOキューと、を備
えている。
【0022】ある実施形態では、前記コマンドのセット
が前記コマンドを含んでおり、該コマンドのセットが、
移動ディスプレイブロック操作をおこなうために設計さ
れる。
【0023】ある実施形態では、前記コマンドエンコー
ダが、前記ホストデータおよび前記コマンドのセットに
対応するインストラクションのセットを、複数のエント
リを含む前記FIFOキューに格納し、該コマンドエン
コーダが、該複数のエントリのそれぞれに格納されてい
るデータが画素データムを含んでいるのか、あるいはイ
ンストラクションを含んでいるのかを示すタグビットを
発生する。
【0024】ある実施形態では、前記複数のエントリそ
れぞれの前記タグビットを調べ、もし該タグビットが、
該複数のエントリの対応する1つに含まれるデータが画
素データムを含むことを示しているのなら、該エントリ
に含まれるデータを前記実行ブロックへと送る、FIF
O出力制御回路をさらに備えている。
【0025】本発明によるグラフィックスコントローラ
回路は、グラフィックス操作のためのパラメータを格納
する、メモリ位置としてアドレシング可能な、物理レジ
スタと、該物理レジスタへとアクセスする第1のコマン
ドと、仮想レジスタへとアクセスする第2のコマンド
と、を受け取り、該第1のコマンドに応答して第1のイ
ンストラクションセットを生成し、該第2のコマンドに
応答して第2のインストラクションセットを生成する、
エンコーダであって、該第1のインストラクションセッ
トおよび該第2のインストラクションセットがともに、
該物理レジスタへとアクセスするインストラクションを
含んでおり、該第2のインストラクションセットが該第
1のインストラクションセットを含んでいる、エンコー
ダと、該第1のインストラクションセットおよび該第2
のインストラクションセットを格納するFIFOと、該
物理レジスタおよび該FIFOに結合されたFIFO出
力制御回路であって、該物理レジスタへとアクセスする
該インストラクションに応答して、該物理レジスタへと
アクセスする制御信号を発生する、FIFO出力制御回
路と、を備えており、そのことにより上記目的が達成さ
れる。
【0026】本発明によるグラフィックスコントローラ
チップにおいてコマンドを実行する方法は、該コマンド
を受け取るステップと、該コマンドから複数のインスト
ラクションを生成するステップと、該複数のインストラ
クションをコマンドキューに格納するステップと、該コ
マンドキューにおける該複数のインストラクションを実
行するステップと、を含んでおり、そのことにより上記
目的が達成される。
【0027】ある実施形態では、前記コマンドが物理レ
ジスタへとアクセスするのか、仮想レジスタへとアクセ
スするのかを判定するために、該コマンドを調べるステ
ップをさらに含む方法であって、もし該コマンドが該物
理レジスタへとアクセスするのなら、複数のインストラ
クションを生成する前記ステップが、第1のインストラ
クションセットを生成し、もし該コマンドが該仮想レジ
スタへとアクセスするのなら、第2のインストラクショ
ンセットを生成する、ステップをさらに含んでおり、該
第1のインストラクションセットおよび該第2のインス
トラクションセットが、共に該物理レジスタへとアクセ
スするインストラクションを含んでおり、該第2のイン
ストラクションセットが、該第1のインストラクション
セットを含んでいる。
【0028】以下に作用を説明する。
【0029】本発明のグラフィックスコントローラ回路
は、ホストからコマンドを受け取り、そのコマンドから
複数のインストラクションを発生することができるホス
トインタフェースを備えている。実行回路は、ホストか
ら受け取られたコマンドを実際に実行するために、複数
のインストラクションを実行する。
【0030】このグラフィックスコントローラ回路は、
さらに、複数のレジスタから構成されるレジスタファイ
ルを備えていてもよい。ホストインタフェースは、もし
コマンドがレジスタファイルにおける第1のレジスタに
アクセスするのなら、第1セットのインストラクション
を生成し、もしコマンドが第2のレジスタにアクセスす
るのなら、第2セットのインストラクションを生成する
ことができる。第1セットのインストラクションは、第
1のレジスタへのアクセスを含んでいてもよい。本発明
による第2のレジスタは、仮想レジスタでありうる。第
2セットのインストラクションは、第1のレジスタへの
アクセスを命ずるインストラクションを含んでいてもよ
い。
【0031】仮想レジスタに宛てて発せられるこのよう
なコマンドを設け、かつ、レジスタファイルにおけるレ
ジスタへのアクセスを命ずるコマンドを含む多数のイン
ストラクションを生成することによって、本発明による
グラフィックスコントローラでは、あるレジスタへのア
クセスコマンドを、その他いくつかのコマンドと組み合
わせて、システムバス上の単一のコマンドとすることが
できる。システムバス上でいくつかのコマンドを組み合
わせて単一のコマンドにすることができるので、システ
ムバス上で転送されるデータの量を最小化することがで
きる。
【0032】本発明によるホストインタフェースは、バ
ス上のデータを調べ、そのコマンドが第1のレジスタに
アドレシングされているのか、第2のレジスタにアドレ
シングされているのかを判定するコマンドエンコーダを
備えていてもよい。このコマンドエンコーダは、もしそ
のコマンドが第1のレジスタにアドレシングされている
のなら、第1セットのインストラクションを生成し、も
しそのコマンドが第2のレジスタにアドレシングされて
いるのなら、第2セットのインストラクションを生成す
ることができる。
【0033】ホストインタフェースは、また、コマンド
エンコーダにより生成されたインストラクションを格納
し、かつそれらのインストラクションを実行ブロックに
与える、FIFOキューを備えていてもよい。ホストイ
ンタフェースが、それぞれのコマンドから多数のインス
トラクションを生成するとき、グラフィックスコントロ
ーラ用のインストラクションパス、および、ホストに供
給されるデータ用のパスは、より狭いバス幅で動作する
ことができるので、シリコンスペースを節約することが
できる。このグラフィックスコントローラは、たとえシ
ステムバスよりも高速で動作するような場合でも、この
ようにより多数のインストラクションを実行することが
できる。
【0034】本発明では、移動ディスプレイブロック操
作をおこなうための複数のコマンドには、ホストに供給
されるデータが含まれていてもよい。ホストは、ホスト
データおよび移動ディスプレイブロック操作用の複数の
コマンドをホストバスを介して送ることができる。コマ
ンドエンコーダは、ホストデータと、複数のコマンドに
対応するインストラクションのセットとを、複数のエン
トリを含むFIFOキューに格納することができる。コ
マンドエンコーダは、それぞれのエントリに格納されて
いるデータがホストデータムを含んでいるのか、あるい
はインストラクションを含んでいるのかを示すタグビッ
トを発生することができる。
【0035】グラフィックスコントローラ回路内のFI
FO出力制御回路は、それぞれのエントリのタグビット
を調べ、もしそのタグビットが、対応するエントリに含
まれているデータがインストラクションを含むことを示
しているのなら、そのエントリに含まれているデータを
実行ブロックへと送り、もしそのタグビットが、対応す
るエントリに含まれているデータがホストデータを含む
ことを示しているのなら、そのエントリに含まれている
データを画素処理ブロックへと送る。
【0036】
【発明の実施の形態】本願は、1995年6月23日に出願さ
れ、「バイトイネーブルFIFOアーキテクチャ」と題
された仮出願第60/000,490号により優先権を主張してい
る。
【0037】本発明によるグラフィックスコントローラ
120は、図4の(a)〜(d)に図示されているように、シ
ステムバス112を介して受け取られるコマンドの個数
を減らすことができるように設計されている。図4の
(a)に示されているように、グラフィックス操作をおこ
なうにあたって、従来の技術によるホスト110は、3
つのコマンドを送る。すなわち、レジスタAのセットを
命ずる第1のコマンド(410)、レジスタBのセット
を命ずる第2のコマンド(420)、ならびにAおよび
Bを用いて操作の実行開始を命ずる第3のコマンド(4
30)の3つである。
【0038】本発明では、等価なグラフィックス操作を
おこなうにあたって、ホスト110はわずか2つのコマ
ンドを送るだけでよい。すなわち、レジスタAのセット
を命ずるコマンド(411)、および、レジスタBのセ
ットを命じ、かつAおよびBを用いた実行の開始を命ず
るコマンド(412)の2つである。よって、本発明に
よれば、従来の技術による2つのコマンドを1つのコマ
ンドに組み合わせることができる。図4の(b)〜(d)も図
4の(a)と同様に説明される。すなわち、いずれの図に
おいても、従来の技術では2つのコマンドが、1つのコ
マンドに組み合わされている。
【0039】例えば、従来の技術では、グラフィックス
コントローラ120は、移動ディスプレイブロック操作
を実行するために、ホスト110から4つのコマンドを
受け取ることがある。すなわち、第1のコマンドは、ソ
ースディスプレイブロックのアドレスを指定し、第2の
コマンドは、デスティネーションディスプレイブロック
のアドレスを指定し、第3のコマンドは、ソースディス
プレイブロックのX範囲およびY範囲を指定し、第4の
コマンドは、グラフィックスコントローラ120に対し
て、最初の3つのコマンドでセットされうるパラメータ
を用いた実行の開始するを指令することがある。第4の
コマンドに応答して、グラフィックスコントローラ12
0は、(第1および第3のコマンドにより指定された)
ソースディスプレイブロックの画素データを、(第2の
コマンドにより指定された)デスティネーションディス
プレイブロックに対応する、ディスプレイメモリ140
内のメモリ位置へと移動させることがある。
【0040】これに対し、本発明では、移動ディスプレ
イブロック操作をおこなうにあたって、グラフィックス
コントローラ120は、ホスト110から3つのコマン
ドを受け取るだけでよい。第1および第2のコマンド
は、従来の技術と同様に、ソースブロックおよびデステ
ィネーションブロックのアドレスを指定する。しかし、
第3のコマンドは、X範囲またはY範囲のいずれかまた
はその両者を指定するのみならず、本発明のグラフィッ
クスコントローラ120に、ソースディスプレイブロッ
クの画素データの移動を開始させる。本発明のグラフィ
ックスコントローラ120では、移動ディスプレイブロ
ック操作をおこなうために受け取るコマンドの個数が少
なくなるので、ホスト110がシステムバス112上で
送るデータの量も減らすことができる。加えて、仮想レ
ジスタ空間が用いられるので、このような仮想レジスタ
の空間には追加の物理レジスタが必要なくなり、シリコ
ンスペースをさらに節約することができる。
【0041】グラフィックスコントローラ120は、レ
ジスタにXおよびY範囲を格納させることによって、転
送されるデータの量のこのような削減を達成することが
できる。グラフィックスコントローラ120は、Xおよ
びY範囲をこれらのレジスタに格納することを命ずるあ
るタイプのコマンドを受け取り、仮想レジスタに宛てて
発せられた別のタイプのコマンドを受け取ることができ
る。仮想レジスタに宛てられたこのようなコマンドに応
答して、(図2に示されている)ホストインタフェース
210は、XおよびY範囲をレジスタに格納することを
命ずるインストラクションのみならず、その他のインス
トラクションを生成することもできる。上述した例で
は、仮想レジスタにアクセスすることを命ずるコマンド
に応答して、ホストインタフェース120は、Xおよび
Y範囲を対応するレジスタに格納することを命じ、ソー
スディスプレイブロックの画素データの移動開始を命ず
る多数のインストラクションを生成することができる。
よって、本発明では、仮想レジスタを用いることによっ
て、従来の技術による第3および第4のコマンドをシス
テムバス112上で1つのコマンドに組み合わせること
ができる。
【0042】本発明では、従来の技術で用いられる多数
のコマンドを1つのコマンドに組み合わせることができ
るので、システムバス112上のデータの量を減らすこ
とができる。ここでは、本発明は移動ディスプレイブロ
ック操作に適用されるものとして説明されているが、そ
の他のタイプの操作をおこなうことも、本発明の範囲お
よび精神内であることは理解されたい。
【0043】図2は、ホストインタフェース210と、
実行ブロック220と、画素処理ブロック230とを有
する本発明によるグラフィックスコントローラ120の
ブロック図である。ホストインタフェース210は、シ
ステムバス112を介してホスト110からコマンドお
よびホストデータを受け取り、それぞれのコマンドに対
応する多数のインストラクションを生成することができ
る。それぞれのコマンドに対応するこのように多数のイ
ンストラクションを生成することによって、グラフィッ
クスコントローラ120は、ホスト110からグラフィ
ックスコントローラ120に転送されるデータの量を減
らすことができる。ホストインタフェース210は、コ
マンドをあるクロックレート(すなわち、システムバス
112のクロックレート)で受け取り、別のレート(す
なわち、グラフィックスコントローラ120の内部クロ
ックレート)でインストラクションを生成することがで
きる。
【0044】実行ブロック220は、ホストインタフェ
ース210により生成されたインストラクションを実行
することによって、ホスト110からのコマンドにより
指定された操作をおこなう。実行ブロック220により
実行されるインストラクションには、ソースディスプレ
イブロックの画素データを、ディスプレイメモリ140
内のデスティネーションディスプレイブロックに対応す
るメモリ位置へと移動させる操作のようなさまざまな操
作が含まれている。ホスト110は、システムバス11
2を介してソースディスプレイブロックの画素データを
送ることもできるし、また、ホスト110は、ソースデ
ィスプレイブロックの画素データが存在しているディス
プレイメモリ140内のメモリ位置を指定することもで
きる。実行ブロック220は、ホスト110またはディ
スプレイメモリ140からの画素データの、制御バス1
14を介した移動を制御する。
【0045】画素処理ブロック230は、画素データを
処理することによって、追加画素データを発生する。こ
のような処理には、この技術ではよく知られているラス
タ操作の実行が含まれていてもよい。画素処理ブロック
230は、このような処理により生じた画素データを、
実行ブロック220により指定されたメモリ位置に格納
することができる。
【0046】図3は、アドレスレジスタ333と、デー
タレジスタ336と、コマンドエンコーダ330と、コ
マンド/データFIFO 340とを含む、本発明によ
るホストインタフェース210の詳細ブロック図であ
る。本発明のエンコーダ330は、受け取られたコマン
ドのそれぞれから多数のインストラクションを生成し、
それらのインストラクションをコマンド/データFIF
O 340に格納することができる。
【0047】図3は、さらに、FIFO出力制御回路3
60と、実行エンジン370と、レジスタファイル35
0とを含む、本発明による実行ブロック220の詳細ブ
ロック図を含んでいる。FIFO出力制御回路360
は、いつデータがレジスタファイル350に格納される
かを制御することができる。FIFO出力制御回路36
0は、また、各種操作の実行をいつ開始するかを決定
し、バス366を介して実行エンジン370の操作を制
御することもできる。FIFO出力制御回路360は、
コマンド/データFIFOバス212のバス213およ
び214上で受け取られたコマンド/タグ情報に基づ
き、それらの操作のそれぞれをおこなう。
【0048】レジスタファイル350は、それぞれが所
定のパラメータに対応する値を格納する、複数のレジス
タを含みうる。例えば、レジスタ0および1は、移動デ
ィスプレイブロック操作のためのソースディスプレイブ
ロックおよびデスティネーションディスプレイブロック
それぞれの開始アドレスのXおよびY座標をそれぞれ格
納することができる。レジスタ2は、ソースディスプレ
イブロックのXおよびY範囲を格納することができる。
本願明細書では、レジスタファイル350に含まれるレ
ジスタは、「物理レジスタ」とも呼ばれる。
【0049】好ましい実施の形態では、レジスタファイ
ル350におけるそれぞれのレジスタは、32ビットを
格納することができる。その場合、XおよびY範囲なら
びにXおよびY座標はそれぞれ、16ビットで格納され
る。レジスタファイル350は、メモリマッピングされ
たレジスタセットとしてアドレシング可能な(つまり、
それぞれのレジスタが所定のメモリアドレスをもつ)多
数のレジスタを含んでいてもよい。好ましい実施の形態
では、レジスタファイル350は、8つのレジスタを含
む。
【0050】したがって、例えばソースおよびデスティ
ネーションディスプレイブロックの開始アドレスを指定
するコマンドのようなコマンドは、データをレジスタフ
ァイル350内の対応するレジスタへと書き込むことを
伴う。システムバス112には、32ビット幅のPCI
バスが含まれていてもよい。よって、ホスト110は、
コマンドを送るために、(システムバス112の)1ク
ロックサイクルのあいだに32ビットのアドレス情報を
送り、後続する1クロックサイクルのあいだに対応する
32ビットのデータを送ることができる。
【0051】例えば、ホスト110は、ソースディスプ
レイブロックの開始アドレスをセットするために、1ク
ロックサイクルのあいだにレジスタ0の32ビットのメ
モリアドレスを送り、後続する1クロックサイクルのあ
いだに対応するデータを送ることができる。32ビット
のデータは、開始アドレスのXおよびY座標のそれぞれ
に対応する16ビットを含んでいてもよい。同様に、ホ
スト110は、移動操作のためのソースディスプレイブ
ロックのXおよびY範囲をセットするために、レジスタ
2のアドレスと、対応するデータとを送ることができ
る。
【0052】ホスト110は、また、仮想レジスタ数
(例えば、レジスタファイル350が、0〜7の番号の
付けられた8つのレジスタを含む時には8になる)のメ
モリアドレスを送ることもできる。このような仮想レジ
スタ数の受け取りに応答して、本発明によるグラフィッ
クスコントローラ120は、インストラクションを生成
し、次のクロックサイクルで受け取られたデータを所定
のレジスタ0〜7のいずれかに格納し、画素データを、
ディスプレイメモリ140内のデスティネーションディ
スプレイブロックに対応するメモリ位置へと移動させる
ことができる。
【0053】このような仮想レジスタアドレシングを用
い、格納・移動を命ずるインストラクションを生成する
ことによって、グラフィックスコントローラ120は、
画素データの移動開始を命ずるコマンドを追加する必要
はなくなる。その結果、システムバス112を介して転
送されるコマンドデータの量を減らすことができる。従
来の技術によるグラフィックスコントローラ120が、
デスティネーションディスプレイブロックのメモリアド
レスへの画素データの移動を開始するためにはそのよう
な追加コマンドが必要であることは理解できるであろ
う。また、このような仮想レジスタアドレシングに応答
して、異なる複数のインストラクションが生成されるよ
うにしても、本発明の範囲および精神からはずれること
がないことも理解できるであろう。
【0054】さらに図3を参照すると、アドレスレジス
タ333およびデータレジスタ336は、それぞれのバ
スサイクルの間にシステムバス112を介して受け取ら
れたアドレスおよびデータ情報をそれぞれ格納すること
ができる。ホスト110からのアドレスは、レジスタフ
ァイル350内のレジスタのメモリマッピングされたア
ドレスを含んでいてもよいし、仮想レジスタのアドレス
を含んでいてもよい。
【0055】コマンドエンコーダ330は、アドレスレ
ジスタ333に格納されたアドレスを調べることによっ
て、対応するインストラクションを生成することができ
る。例えば、もしアドレスがレジスタ0に対応するのな
ら、コマンドエンコーダ330は、2つのインストラク
ションを生成することができる。第1のインストラクシ
ョンは、(データレジスタ336に格納されている)3
2ビットのデータのうちの16ビットを占めるY座標を
レジスタ0に格納し、第2のインストラクションは、残
りの16ビットを占めるX座標をレジスタ0に格納する
ことができる。
【0056】アドレスレジスタ333に格納されたアド
レスが仮想レジスタに対応するのなら、コマンドレジス
タは、格納インストラクション以外の追加のインストラ
クションを生成することができる。例えば、好ましい実
施の形態では、グラフィックスコントローラ120は、
移動ディスプレイブロック操作をおこなう間にホスト1
10により用いられうる3つの仮想レジスタ(範囲・実
行・Xレジスタ、範囲・実行・Yレジスタおよび範囲・
実行・X・Yレジスタ)を含んでいてもよい。
【0057】範囲・実行・X仮想レジスタ(レジスタ番
号8)への書き込み操作は、X範囲のみが変更される必
要があることを示しているので、画素データの移動操作
は、変更されたX範囲を用いて直ちに開始される。この
ような範囲・実行・X書き込み操作に応じて、コマンド
エンコーダ330は、X範囲の変更を命ずるインストラ
クションを生成し、レジスタ1により指定されたアドレ
スへの表示データの移動操作の開始を命ずる別のインス
トラクションを生成する。同様に、コマンドエンコーダ
330は、範囲・実行・Yレジスタに対する書き込み操
作に対応する2つのインストラクションを生成すること
ができる。
【0058】コマンドエンコーダ330は、範囲・実行
・X・Y仮想レジスタ(レジスタ番号10)への書き込
みコマンドに対応する3つのインストラクションを生成
することができる。第1のインストラクションは、32
ビットのデータのうちの16ビットのX成分を書き込ま
せ、第2のインストラクションは、32ビットのデータ
のうちの残りの16ビットのY成分を書き込ませる。第
3のインストラクションは、ソースディスプレイブロッ
クの画素データの、デスティネーションディスプレイブ
ロックへの移動開始を命ずる移動インストラクションで
ありうる。
【0059】コマンドエンコーダ330により生成され
るインストラクションはそれぞれ、32ビットを含むこ
とができる。そのうちの16ビットは、X範囲、Y範
囲、X座標、Y座標のいずれか1つに充てられる。残り
の16ビットは、インストラクションのタイプ(例え
ば、レジスタ1への格納、ディスプレイデータ移動操作
の開始など)を示すことができるインストラクションコ
ードを指定できる。コマンドエンコーダ330は、その
ような32ビットのインストラクションをインストラク
ション/データバス334を介して送ることができる。
【0060】コマンドエンコーダ330は、また、信号
ライン343上にタグビットを送ることによって、イン
ストラクション/データバス334上に送られている情
報がインストラクションに対応しているのか、あるい
は、ホストデータムに対応しているのかを示すことがで
きる。コマンドエンコーダ330は、インストラクショ
ン/データバス334を介してインストラクションを送
りながら、タグビットとして論理値0を送り、ホストデ
ータムを送りながら論理値1を送ることができる。
【0061】このようなホストデータは、システムバス
112を介してホスト110から受け取られ、ソースデ
ィスプレイブロックの画素データに対応する。レジスタ
0は、ソースディスプレイブロックの画素データがホス
ト110により供給されることを示す値をもつことがで
きる。そのような場合、ホスト110は、移動ディスプ
レイブロック操作のためのソースディスプレイブロック
の画素データを送ることができる。
【0062】コマンド/データFIFO 340は、イ
ンストラクション/データバス334を介して受け取ら
れたそれぞれのインストラクションまたはホストデータ
ムを格納し、かつ信号ライン343を介して受け取られ
た対応するタグビットを格納することができる。コマン
ド/データFIFO 340は、好ましい実施の形態で
は、32のエントリを含むことができる。ここで、それ
ぞれのエントリは33ビットを含む。つまり、それぞれ
のエントリは、32ビットのインストラクションまたは
ホストデータムと、対応する1タグビットとを格納する
ことができる。コマンド/データFIFO 340にお
けるそれぞれのタグビット(タグビットフィールド34
6に格納される)は、対応する32ビットがインストラ
クションを表しているのか、あるいはホストデータムを
表しているのかを示すことができる。
【0063】もしコマンド/データFIFO 340の
エントリにおける33ビットがインストラクションを表
しているのなら、インストラクションコードフィールド
347は、インストラクションコードに対応する16ビ
ットを格納することができる。また、データフィールド
348は、インストラクションのデータ部分に対応する
残りの16ビットを格納することができる。もしコマン
ド/データFIFO340のエントリにおける33ビッ
トがホストデータを表しているのなら、コマンド/デー
タFIFO 340は、データフィールド347および
348を用いて、ホストデータの32ビットをエントリ
に格納することができる。もしホストデータが供給され
れば、そのデータは、バス213上でタグビットにより
示されるように、バス212を介して画素処理ブロック
230により処理される。
【0064】単一のコマンドから多数のインストラクシ
ョンを生成することによって、本発明によるコマンド/
データFIFO 340は、システムバス212よりも
狭いデータ幅(33ビット)で効果的に動作できること
は理解されたい。このように多数のインストラクション
を生成しなければ、コマンド/データFIFOは、64
ビットのデータ幅で動作しなければならなくなる。グラ
フィックスコントローラ120は、システムバス112
よりも高いクロックレートで動作することができるの
で、グラフィックスコントローラ120は、その結果、
より多数のインストラクションを実行可能となる。例え
ば、PCIバスなどのシステムバス112は、33MH
zで動作するが、グラフィックスコントローラ120は
62.5MHzで動作可能である。
【0065】さらに図3を参照すると、FIFO出力制
御回路360は、コマンド/データFIFO 340の
各エントリにおける33ビットのデータを取り出し、タ
グビット346を調べることによって、取り出されたデ
ータがインストラクションに対応するのか、あるいはホ
ストデータに対応するのかを判定することができる。も
し33ビットのエントリがインストラクションを表すの
なら、FIFO出力制御回路360は、インストラクシ
ョンコード(フィールド347に格納されている)を調
べることによって、そのインストラクションが、データ
をレジスタファイル350内のレジスタへと格納するこ
とを命ずるインストラクションであるかどうかを判定す
る。もしそうなら、FIFO出力制御回路360は、ア
サート信号365を発生することによって、16ビット
をインストラクションコードにより示されたレジスタ内
のデータフィールド348に格納する。
【0066】もし33ビットのエントリが実行インスト
ラクションを表すのなら、FIFO出力制御回路360
は、制御バス366上の実行エンジン370を介して実
行を開始することができる。実行エンジン370は、制
御信号を画素処理ブロック230へと発生することによ
って、ホストデータを適正に処理する。例えば、ホスト
データは、先行する移動ディスプレイブロックコマンド
の画素データに対応しうる。その場合、実行エンジン3
70は、レジスタファイル350内のレジスタにより示
されたメモリ位置に画素データを格納することができ
る。グラフィックスコントローラ120は、ディスプレ
イメモリ140に格納された画素データからディスプレ
イユニット130へと表示信号を発生することができ
る。
【0067】よって、本発明によるホストインタフェー
ス210は、ホスト110から受け取られたそれぞれの
コマンドから多数のインストラクションを生成すること
ができる。これにより、ホスト110がグラフィックス
コントローラ120に送るデータの量を減らすことがで
きる。このように多数のインストラクションを生成する
ことによって、グラフィックスコントローラ120は、
狭いバス幅で効果的に動作することができる。
【0068】以上の説明では、本発明は、ディスプレイ
ブロック移動操作に適用されるものとしたが、本発明の
範囲および精神から外れることなく、その他のタイプの
操作をおこなうこともできる。例えば、レジスタへの読
み出しアクセス時に、多数のインストラクションを生成
することもできる。このようなレジスタは、上述した説
明と同様に仮想レジスタであってもよいし、物理的に存
在するものであってもよい(例えば、レジスタファイル
350におけるレジスタ0〜7の1つであってもよ
い)。読み出しおよび書き込みコマンドは、本願明細書
では、合わせて「アクセスコマンド」と称される。
【0069】本発明が、上述した目的のすべてを達成で
きることは、当業者には容易に理解できるであろう。以
上の詳細な説明を読めば、当業者には、本明細書に広く
開示されている本発明について、さまざまな改変を施し
たり、等価である構成に置き換えたり、ここには言及さ
れていないその他さまさざまな局面を実施したりするこ
とができるであろう。よって、本発明に与えられるべき
保護の範囲は、添付の請求の範囲およびそれに等価であ
る範囲に含まれる定義によってのみ限定されるように意
図されている。
【0070】
【発明の効果】本発明によれば、バスボトルネックを解
消することによってパフォーマンスを向上したグラフィ
ックスシステムを提供することができる。
【図面の簡単な説明】
【図1】グラフィックスコントローラと、ホストと、デ
ィスプレイメモリと、ディスプレイユニットとを含むコ
ンピュータシステムのブロック図である。
【図2】ホストインタフェースと、実行ブロックと、画
素処理ブロックとを含む本発明によるグラフィックスコ
ントローラのブロック図である。
【図3】本発明によるホストインタフェースおよび実行
ブロックのより詳細なアーキテクチャを示すブロック図
である。
【図4】グラフィックス操作をおこなうのに用いられる
コマンドの個数における従来の技術と本発明との間の違
いを示す図である。
【符号の説明】
112 システムバス 114 制御バス 210 ホストインタフェース 212 コマンド/データFIFOバス 213、214、215 バス 220 実行ブロック 230 画素処理ブロック 330 コマンドエンコーダ 333 アドレスレジスタ 334 インストラクション/データバス334 336 データレジスタ 340 コマンド/データFIFO 343 信号ライン 346 タグビットフィールド 347 インストラクションコードフィールド 348 データフィールド 350 レジスタファイル 360 FIFO出力制御回路 365 アサート信号 366 制御バス 370 実行エンジン
───────────────────────────────────────────────────── フロントページの続き (71)出願人 595158337 3100 West Warren Aven ue,Fremont,Californ ia 94538,U.S.A. (72)発明者 リチャード チャールズ アンリュー オ ウェン アメリカ合衆国 ワシントン 98106, シアトル, 39ティーエイチ アベニュー サウス 3810 (72)発明者 マーク エミル ボンネリーク アメリカ合衆国 ワシントン 98105, シアトル, 41エスティー アベニュー エヌイー 4625

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 バスおよびホストを有し、該ホストが該
    バスに結合されているコンピュータシステムに用いられ
    るグラフィックスコントローラ回路であって、 該ホストからのコマンドを該バス上で受け取り、該コマ
    ンドから複数のインストラクションを生成する、ホスト
    インタフェースと、 該コマンドを実行するために、該複数のインストラクシ
    ョンを実行する実行回路と、を備えているグラフィック
    スコントローラ回路。
  2. 【請求項2】 複数のレジスタを含むレジスタファイル
    をさらに備えているグラフィックスコントローラ回路で
    あって、 もし前記コマンドが、該レジスタファイル内の第1のレ
    ジスタへとアクセスするのなら、前記ホストインタフェ
    ースが第1のインストラクションセットを生成し、もし
    該コマンドが、第2のレジスタへとアクセスするのな
    ら、該ホストインタフェースが第2のインストラクショ
    ンセットを生成し、 該第1のインストラクションセットに含まれるインスト
    ラクションの個数が、該第2のインストラクションセッ
    トに含まれるインストラクションの個数とは異なり、か
    つ該第1のインストラクションセットが、該第1のレジ
    スタへとアクセスすることを含んでいる、請求項1に記
    載のグラフィックスコントローラ回路。
  3. 【請求項3】 前記第2のレジスタが仮想レジスタを含
    んでおり、 前記第2のインストラクションセットが、前記第1のレ
    ジスタへとアクセスする少なくとも1つのインストラク
    ションを含んでいる、請求項2に記載のグラフィックス
    コントローラ回路。
  4. 【請求項4】 前記ホストインタフェースが、 前記システムバス上のデータを調べ、前記コマンドが前
    記第1のレジスタにアドレシングされているのか、ある
    いは前記第2のレジスタにアドレシングされているのか
    を判定する、該システムバスに結合されたコマンドエン
    コーダであって、もし該コマンドが該第1のレジスタに
    アドレシングされているのなら、前記第1のインストラ
    クションセットを生成し、もし該コマンドが該第2のレ
    ジスタにアドレシングされているのなら、前記第2のイ
    ンストラクションセットを生成する、コマンドエンコー
    ダと、 該コマンドエンコーダにより生成された該インストラク
    ションを格納し、該インストラクションを前記実行ブロ
    ックに与える、FIFOキューと、を備えている、請求
    項3に記載のグラフィックスコントローラ回路。
  5. 【請求項5】 前記コマンドが、移動ディスプレイブロ
    ック操作のための複数のコマンドの中に含まれており、
    かつ前記ホストが、ホストデータと、該移動ディスプレ
    イブロック操作のための該複数のコマンドと、を前記ホ
    ストバスを介して送る、請求項4に記載のグラフィック
    スコントローラ回路。
  6. 【請求項6】 前記コマンドエンコーダが、前記ホスト
    データと、前記複数のコマンドに対応するインストラク
    ションのセットと、複数のエントリを含む前記FIFO
    キューに格納し、 該コマンドエンコーダが、該複数のエントリのそれぞれ
    に格納されているデータがホストデータムを含んでいる
    のか、あるいはインストラクションを含んでいるのかを
    示すタグビットを発生する、請求項5に記載のグラフィ
    ックスコントローラ回路。
  7. 【請求項7】 前記複数のエントリそれぞれの前記タグ
    ビットを調べ、もし該タグビットが、該複数のエントリ
    の対応する1つに含まれるデータがホストデータを含む
    ことを示しているのなら、該エントリに含まれるデータ
    を前記実行ブロックへと送る、FIFO出力制御回路を
    さらに備えている、請求項6に記載のグラフィックスコ
    ントローラ回路。
  8. 【請求項8】 コマンドのセットおよび画素データをバ
    スを介して送るホストと、 ディスプレイユニットと、 該ディスプレイユニット上のディスプレイイメージに対
    応する画素データのセットを格納するディスプレイメモ
    リと、 該画素データのセットを該ディスプレイメモリに供給す
    るグラフィックスコントローラ回路であって、 該ホストから該バス上で該コマンドのセットおよび該画
    素データを受け取るホストインタフェースであって、該
    コマンドのセットのそれぞれから複数のインストラクシ
    ョンを生成する、ホストインタフェース、および該画素
    データを該ディスプレイメモリに格納するために該複数
    のインストラクションを実行する実行回路を含む、グラ
    フィックスコントローラ回路と、を備えている、コンピ
    ュータシステム。
  9. 【請求項9】 前記グラフィックスコントローラ回路
    が、複数のレジスタを含むレジスタファイルをさらに備
    えている、コンピュータシステムであって、 もしコマンドが、該レジスタファイル内の第1のレジス
    タへとアクセスするのなら、前記ホストインタフェース
    が第1のインストラクションセットを生成し、もし該コ
    マンドが、第2のレジスタへとアクセスするのなら、該
    ホストインタフェースが第2のインストラクションセッ
    トを生成し、 該第1のインストラクションセットに含まれるインスト
    ラクションの個数が、該第2のインストラクションセッ
    トに含まれるインストラクションの個数とは異なり、 該第1のインストラクションセットが、該第1のレジス
    タへとアクセスすることを含んでいる、請求項8に記載
    のコンピュータシステム。
  10. 【請求項10】 前記第2のレジスタが仮想レジスタを
    含んでおり、 前記第2のインストラクションセットが、前記第1のレ
    ジスタへとアクセスする少なくとも1つのインストラク
    ションを含んでいる、請求項9に記載のコンピュータシ
    ステム。
  11. 【請求項11】 前記ホストインタフェースが、 前記システムバス上のデータを調べ、前記コマンドが前
    記第1のレジスタにアドレシングされているのか、ある
    いは前記第2のレジスタにアドレシングされているのか
    を判定する、該システムバスに結合されたコマンドエン
    コーダであって、もし該コマンドが該第1のレジスタに
    アドレシングされているのなら、前記第1のインストラ
    クションセットを生成し、もし該コマンドが該第2のレ
    ジスタにアドレシングされているのなら、前記第2のイ
    ンストラクションセットを生成する、コマンドエンコー
    ダと、 該コマンドエンコーダにより生成された該インストラク
    ションを格納し、該インストラクションを前記実行ブロ
    ックに与える、FIFOキューと、を備えている、請求
    項10に記載のコンピュータシステム。
  12. 【請求項12】 前記コマンドのセットが前記コマンド
    を含んでおり、該コマンドのセットが、移動ディスプレ
    イブロック操作をおこなうために設計される、請求項1
    1に記載のコンピュータシステム。
  13. 【請求項13】 前記コマンドエンコーダが、前記ホス
    トデータおよび前記コマンドのセットに対応するインス
    トラクションのセットを、複数のエントリを含む前記F
    IFOキューに格納し、 該コマンドエンコーダが、該複数のエントリのそれぞれ
    に格納されているデータが画素データムを含んでいるの
    か、あるいはインストラクションを含んでいるのかを示
    すタグビットを発生する、請求項12に記載のコンピュ
    ータシステム。
  14. 【請求項14】 前記複数のエントリそれぞれの前記タ
    グビットを調べ、もし該タグビットが、該複数のエント
    リの対応する1つに含まれるデータが画素データムを含
    むことを示しているのなら、該エントリに含まれるデー
    タを前記実行ブロックへと送る、FIFO出力制御回路
    をさらに備えている、請求項13に記載のコンピュータ
    システム。
  15. 【請求項15】 グラフィックス操作のためのパラメー
    タを格納する、メモリ位置としてアドレシング可能な、
    物理レジスタと、 該物理レジスタへとアクセスする第1のコマンドと、仮
    想レジスタへとアクセスする第2のコマンドと、を受け
    取り、該第1のコマンドに応答して第1のインストラク
    ションセットを生成し、該第2のコマンドに応答して第
    2のインストラクションセットを生成する、エンコーダ
    であって、該第1のインストラクションセットおよび該
    第2のインストラクションセットがともに、該物理レジ
    スタへとアクセスするインストラクションを含んでお
    り、該第2のインストラクションセットが該第1のイン
    ストラクションセットを含んでいる、エンコーダと、 該第1のインストラクションセットおよび該第2のイン
    ストラクションセットを格納するFIFOと、 該物理レジスタおよび該FIFOに結合されたFIFO
    出力制御回路であって、該物理レジスタへとアクセスす
    る該インストラクションに応答して、該物理レジスタへ
    とアクセスする制御信号を発生する、FIFO出力制御
    回路と、を備えている、グラフィックスコントローラ回
    路。
  16. 【請求項16】 グラフィックスコントローラチップに
    おいてコマンドを実行する方法であって、 該コマンドを受け取るステップと、 該コマンドから複数のインストラクションを生成するス
    テップと、 該複数のインストラクションをコマンドキューに格納す
    るステップと、 該コマンドキューにおける該複数のインストラクション
    を実行するステップと、を含む方法。
  17. 【請求項17】 前記コマンドが物理レジスタへとアク
    セスするのか、仮想レジスタへとアクセスするのかを判
    定するために、該コマンドを調べるステップをさらに含
    む方法であって、 もし該コマンドが該物理レジスタへとアクセスするのな
    ら、複数のインストラクションを生成する前記ステップ
    が、第1のインストラクションセットを生成し、もし該
    コマンドが該仮想レジスタへとアクセスするのなら、第
    2のインストラクションセットを生成する、ステップを
    さらに含んでおり、 該第1のインストラクションセットおよび該第2のイン
    ストラクションセットが、共に該物理レジスタへとアク
    セスするインストラクションを含んでおり、 該第2のインストラクションセットが、該第1のインス
    トラクションセットを含んでいる、請求項16に記載の
    方法。
JP9163015A 1996-06-20 1997-06-19 グラフィックスコントローラ回路、コンピュータシステムおよびグラフィックスコントローラチップにおいてコマンドを実行する方法 Withdrawn JPH1069368A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/667,826 1996-06-20
US08/667,826 US6563505B1 (en) 1995-06-23 1996-06-20 Method and apparatus for executing commands in a graphics controller chip

Publications (1)

Publication Number Publication Date
JPH1069368A true JPH1069368A (ja) 1998-03-10

Family

ID=24679812

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9163015A Withdrawn JPH1069368A (ja) 1996-06-20 1997-06-19 グラフィックスコントローラ回路、コンピュータシステムおよびグラフィックスコントローラチップにおいてコマンドを実行する方法

Country Status (1)

Country Link
JP (1) JPH1069368A (ja)

Similar Documents

Publication Publication Date Title
US6219073B1 (en) Apparatus and method for information processing using list with embedded instructions for controlling data transfers between parallel processing units
US6119217A (en) Information processing apparatus and information processing method
US6002409A (en) Arbitration for shared graphics processing resources
US7180522B2 (en) Apparatus and method for distributed memory control in a graphics processing system
US5687357A (en) Register array for utilizing burst mode transfer on local bus
JP3218029B2 (ja) グラフィックス・システム、グラフィックス・オペレーションを実行する方法及びコンピュータ読取り可能媒体
KR100196333B1 (ko) 디엠에이 명령의 프리-로딩을 이용한 디엠에이 데이터 전송방법
US6108722A (en) Direct memory access apparatus for transferring a block of data having discontinous addresses using an address calculating circuit
JP2005525617A (ja) ゾーン・レンダリング用の自動メモリ管理
US6678755B1 (en) Method and apparatus for appending memory commands during a direct memory access operation
US6952217B1 (en) Graphics processing unit self-programming
US6563505B1 (en) Method and apparatus for executing commands in a graphics controller chip
KR20030048415A (ko) 능률화된 ata 장치 초기화 방법 및 장치
US6789140B2 (en) Data processor and data transfer method
US6795874B2 (en) Direct memory accessing
JPH06214945A (ja) コンピュータシステム及び情報の高速転送方法
JPH1069368A (ja) グラフィックスコントローラ回路、コンピュータシステムおよびグラフィックスコントローラチップにおいてコマンドを実行する方法
US6799247B1 (en) Remote memory processor architecture
US6028613A (en) Method and apparatus for programming a graphics subsystem register set
US5764865A (en) Page printer controller
US6025855A (en) Store double word and status word write graphics primitives
US20090046103A1 (en) Shared readable and writeable global values in a graphics processor unit pipeline
KR20040066559A (ko) 이차원 그래픽 가속방법 및 장치
JP4846097B2 (ja) グラフィクスサブシステムのレジスタセットのための方法及び装置
KR940001013B1 (ko) 영상처리 장치 및 그것을 사용하는 시스템

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040907