JPH10171766A - グラフィックアクセラレータ - Google Patents
グラフィックアクセラレータInfo
- Publication number
- JPH10171766A JPH10171766A JP8344570A JP34457096A JPH10171766A JP H10171766 A JPH10171766 A JP H10171766A JP 8344570 A JP8344570 A JP 8344570A JP 34457096 A JP34457096 A JP 34457096A JP H10171766 A JPH10171766 A JP H10171766A
- Authority
- JP
- Japan
- Prior art keywords
- command
- graphic
- fifo
- size
- graphics
- 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.)
- Pending
Links
Landscapes
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】
【課題】 複数のグラフィックプロセッサのうち特定の
グラフィックプロセッサに負荷が集中することを回避
し、描画性能の低下を防止することのできるグラフィッ
クアクセラレータを提供する。 【解決手段】 必要に応じてグラフィックコマンドを加
工するコマンドエンジン30と、複数のグラフィックプ
ロセッサ421〜42nを並列に備えるジオメトリエン
ジン40と、ピクセルイメージを作成するレンダリング
エンジン50とを備え、コマンドエンジン30が、グラ
フィックコマンドを所定のサイズに分割するGAコマン
ド分割部33と、グラフィックコマンドの種類及びサイ
ズに基づき必要に応じてGAコマンド分割部33にグラ
フィックコマンドを分割させると共に、ジオメトリエン
ジン40の複数のグラフィックプロセッサ421〜42
nに分配するGAコマンド転送制御部32とを備える。
グラフィックプロセッサに負荷が集中することを回避
し、描画性能の低下を防止することのできるグラフィッ
クアクセラレータを提供する。 【解決手段】 必要に応じてグラフィックコマンドを加
工するコマンドエンジン30と、複数のグラフィックプ
ロセッサ421〜42nを並列に備えるジオメトリエン
ジン40と、ピクセルイメージを作成するレンダリング
エンジン50とを備え、コマンドエンジン30が、グラ
フィックコマンドを所定のサイズに分割するGAコマン
ド分割部33と、グラフィックコマンドの種類及びサイ
ズに基づき必要に応じてGAコマンド分割部33にグラ
フィックコマンドを分割させると共に、ジオメトリエン
ジン40の複数のグラフィックプロセッサ421〜42
nに分配するGAコマンド転送制御部32とを備える。
Description
【0001】
【発明が属する技術分野】本発明は、コンピュータシス
テムに搭載され描画処理を実行するグラフィックアクセ
ラレータに関し、特に、複数のグラフィックプロセッサ
を搭載し、グラフィックコマンドを並列に処理するグラ
フィックアクセラレータに関する。
テムに搭載され描画処理を実行するグラフィックアクセ
ラレータに関し、特に、複数のグラフィックプロセッサ
を搭載し、グラフィックコマンドを並列に処理するグラ
フィックアクセラレータに関する。
【0002】
【従来の技術】コンピュータシステムに搭載されて描画
処理を実行するグラフィックアクセラレータには、複数
のグラフィックプロセッサを搭載してグラフィックコマ
ンドを当該複数のグラフィックプロセッサに並列に処理
させることにより、描画処理の高速化を図っているもの
が有る。この種の従来技術としては、例えば、特開昭6
3−8693号公報に開示されたグラフィックアクセラ
レータがある。同公報には、グラフィックアクセラレー
タ内に、複数のグラフィックプロセッサと、図形表示装
置の画面上の区画に応じて処理を分担しグラフィックプ
ロセッサとは独立して並列に動作可能な複数のピクセル
プロセッサとを備え、グラフィックプロセッサの出力と
ピクセルプロセッサの入力との間に、行ディストリビュ
ータと列ディストリビュータとを備える。そして、複数
のグラフィックプロセッサが同時に同じピクセルプロセ
ッサの処理を必要とする出力を行った場合、当該出力を
ディストリビュータで一括して受け取ることにより、グ
ラフィックプロセッサがピクセルプロセッサの処理の順
番待ちとなるケースを減少している。
処理を実行するグラフィックアクセラレータには、複数
のグラフィックプロセッサを搭載してグラフィックコマ
ンドを当該複数のグラフィックプロセッサに並列に処理
させることにより、描画処理の高速化を図っているもの
が有る。この種の従来技術としては、例えば、特開昭6
3−8693号公報に開示されたグラフィックアクセラ
レータがある。同公報には、グラフィックアクセラレー
タ内に、複数のグラフィックプロセッサと、図形表示装
置の画面上の区画に応じて処理を分担しグラフィックプ
ロセッサとは独立して並列に動作可能な複数のピクセル
プロセッサとを備え、グラフィックプロセッサの出力と
ピクセルプロセッサの入力との間に、行ディストリビュ
ータと列ディストリビュータとを備える。そして、複数
のグラフィックプロセッサが同時に同じピクセルプロセ
ッサの処理を必要とする出力を行った場合、当該出力を
ディストリビュータで一括して受け取ることにより、グ
ラフィックプロセッサがピクセルプロセッサの処理の順
番待ちとなるケースを減少している。
【0003】しかし、上記従来のグラフィックアクセラ
レータは、特定のグラフィックプロセッサに負荷が集中
した場合、処理の並列度が低下し、全体として描画性能
が低下する場合があった。
レータは、特定のグラフィックプロセッサに負荷が集中
した場合、処理の並列度が低下し、全体として描画性能
が低下する場合があった。
【0004】図9に、図7に示す図形(連続三角形)を
描画する場合における従来のグラフィックアクセラレー
タによるデータの流れを示す。なお、条件として、グラ
フィックプロセッサの数を2個(GP1、GP2)、グ
ラフィックプロセッサの入力FIFOのサイズをそれぞ
れ32ワード、連続三角形を描画するための法線データ
及び頂点データのデータ長をそれぞれ3ワードとする。
描画する場合における従来のグラフィックアクセラレー
タによるデータの流れを示す。なお、条件として、グラ
フィックプロセッサの数を2個(GP1、GP2)、グ
ラフィックプロセッサの入力FIFOのサイズをそれぞ
れ32ワード、連続三角形を描画するための法線データ
及び頂点データのデータ長をそれぞれ3ワードとする。
【0005】1つのグラフィックプロセッサへは、5つ
の法線データ及び5つの頂点データを転送可能である。
しかし、1つのグラフィックプロセッサのみにデータを
転送するため、図9の第5列に示すように、グラフィッ
クプロセッサGP1の入力FIFOの空き待ちの状態が
発生してしまうことになる。この時、グラフィックプロ
セッサGP2がfreeとなっており、処理の並列度が
低下し、描画性能が低下してしまう。
の法線データ及び5つの頂点データを転送可能である。
しかし、1つのグラフィックプロセッサのみにデータを
転送するため、図9の第5列に示すように、グラフィッ
クプロセッサGP1の入力FIFOの空き待ちの状態が
発生してしまうことになる。この時、グラフィックプロ
セッサGP2がfreeとなっており、処理の並列度が
低下し、描画性能が低下してしまう。
【0006】
【発明が解決しようとする課題】上述したように、従来
の技術は、特定のグラフィックプロセッサに負荷が集中
してしまうと、グラフィックプロセッサ全体の処理効率
が低下し、さらに、ピクセルプロセッサへの入力効率も
低下するため、ピクセルプロセッサによる処理効率も低
下し、描画性能が低下するという欠点があった。
の技術は、特定のグラフィックプロセッサに負荷が集中
してしまうと、グラフィックプロセッサ全体の処理効率
が低下し、さらに、ピクセルプロセッサへの入力効率も
低下するため、ピクセルプロセッサによる処理効率も低
下し、描画性能が低下するという欠点があった。
【0007】本発明は、上記従来の欠点を解決し、特定
のグラフィックプロセッサに負荷が集中することを回避
し、描画性能の低下を防止することのできるグラフィッ
クアクセラレータを提供することを目的とする。
のグラフィックプロセッサに負荷が集中することを回避
し、描画性能の低下を防止することのできるグラフィッ
クアクセラレータを提供することを目的とする。
【0008】
【課題を解決するための手段】上記の目的を達成する本
発明は、SYSTEM−FIFOを経由してCPUから
転送されたグラフィックコマンドを複数のグラフィック
プロセッサにて並列に処理するグラフィックアクセラレ
ータにおいて、前記SYSTEM−FIFOから前記グ
ラフィックコマンドを受け取り、必要に応じて加工する
コマンドエンジンと、前記複数のグラフィックプロセッ
サを並列に備えるジオメトリエンジンと、ジオメトリエ
ンジンの出力に基づいてピクセルイメージを作成するレ
ンダリングエンジンとを備え、前記コマンドエンジン
が、前記サイズの大きいグラフィックコマンドを所定の
サイズに分割するコマンド分割手段と、前記SYSTE
M−FIFOから受け取った前記グラフィックコマンド
の種類及びサイズに基づき必要に応じて前記コマンド分
割手段に前記グラフィックコマンドを分割させると共
に、前記SYSTEM−FIFOから受け取った前記グ
ラフィックコマンドまたは前記コマンド分割手段に分割
させた前記グラフィックコマンドを前記ジオメトリエン
ジンの複数のグラフィックプロセッサに分配するコマン
ド転送制御手段とを備えることを特徴とする。
発明は、SYSTEM−FIFOを経由してCPUから
転送されたグラフィックコマンドを複数のグラフィック
プロセッサにて並列に処理するグラフィックアクセラレ
ータにおいて、前記SYSTEM−FIFOから前記グ
ラフィックコマンドを受け取り、必要に応じて加工する
コマンドエンジンと、前記複数のグラフィックプロセッ
サを並列に備えるジオメトリエンジンと、ジオメトリエ
ンジンの出力に基づいてピクセルイメージを作成するレ
ンダリングエンジンとを備え、前記コマンドエンジン
が、前記サイズの大きいグラフィックコマンドを所定の
サイズに分割するコマンド分割手段と、前記SYSTE
M−FIFOから受け取った前記グラフィックコマンド
の種類及びサイズに基づき必要に応じて前記コマンド分
割手段に前記グラフィックコマンドを分割させると共
に、前記SYSTEM−FIFOから受け取った前記グ
ラフィックコマンドまたは前記コマンド分割手段に分割
させた前記グラフィックコマンドを前記ジオメトリエン
ジンの複数のグラフィックプロセッサに分配するコマン
ド転送制御手段とを備えることを特徴とする。
【0009】請求項2の本発明のグラフィックアクセラ
レータは、前記ジオメトリエンジンが、前記複数のグラ
フィックプロセッサの入力側と出力側とにそれぞれFI
FOを備え、前記コマンド分割手段が、前記グラフィッ
クコマンドのサイズが前記グラフィックプロセッサの入
力側に位置する前記FIFOの容量よりも大きい場合
に、該グラフィックコマンドを前記FIFOの容量より
も小さくなるように分割し、前記グラフィックコマンド
のサイズが前記FIFOの容量よりも小さい場合は、該
グラフィックコマンドを分割しないことを特徴とする。
レータは、前記ジオメトリエンジンが、前記複数のグラ
フィックプロセッサの入力側と出力側とにそれぞれFI
FOを備え、前記コマンド分割手段が、前記グラフィッ
クコマンドのサイズが前記グラフィックプロセッサの入
力側に位置する前記FIFOの容量よりも大きい場合
に、該グラフィックコマンドを前記FIFOの容量より
も小さくなるように分割し、前記グラフィックコマンド
のサイズが前記FIFOの容量よりも小さい場合は、該
グラフィックコマンドを分割しないことを特徴とする。
【0010】請求項3の本発明のグラフィックアクセラ
レータは、前記コマンド転送制御手段が、前記SYST
EM−FIFOから受け取った前記グラフィックコマン
ドが描画プリミティブである場合に、該グラフィックコ
マンドを前記コマンド分割手段に分割させ、かつ分割し
た前記グラフィックコマンドを前記ジオメトリエンジン
の所定の前記グラフィックプロセッサに分配し、前記S
YSTEM−FIFOから受け取った前記グラフィック
コマンドが描画プリミティブでない場合に、該グラフィ
ックコマンドを前記ジオメトリエンジンの全ての前記グ
ラフィックプロセッサに転送することを特徴とする。
レータは、前記コマンド転送制御手段が、前記SYST
EM−FIFOから受け取った前記グラフィックコマン
ドが描画プリミティブである場合に、該グラフィックコ
マンドを前記コマンド分割手段に分割させ、かつ分割し
た前記グラフィックコマンドを前記ジオメトリエンジン
の所定の前記グラフィックプロセッサに分配し、前記S
YSTEM−FIFOから受け取った前記グラフィック
コマンドが描画プリミティブでない場合に、該グラフィ
ックコマンドを前記ジオメトリエンジンの全ての前記グ
ラフィックプロセッサに転送することを特徴とする。
【0011】請求項4の本発明グラフィックアクセラレ
ータは、前記コマンド転送制御手段が、前記SYSTE
M−FIFOから受け取った前記グラフィックコマンド
が描画プリミティブである場合に、該グラフィックコマ
ンドを前記コマンド分割手段に分割させ、かつ分割した
前記グラフィックコマンドを前記ジオメトリエンジンの
所定の前記グラフィックプロセッサに分配し、前記SY
STEM−FIFOから受け取った前記グラフィックコ
マンドが描画プリミティブでない場合に、該グラフィッ
クコマンドを前記ジオメトリエンジンの全ての前記グラ
フィックプロセッサに転送し、前記コマンド分割手段
が、前記グラフィックコマンドのプリミティブの種類と
属性とに基づいて該グラフィックコマンドの分割サイズ
を決定し分割することを特徴とする。
ータは、前記コマンド転送制御手段が、前記SYSTE
M−FIFOから受け取った前記グラフィックコマンド
が描画プリミティブである場合に、該グラフィックコマ
ンドを前記コマンド分割手段に分割させ、かつ分割した
前記グラフィックコマンドを前記ジオメトリエンジンの
所定の前記グラフィックプロセッサに分配し、前記SY
STEM−FIFOから受け取った前記グラフィックコ
マンドが描画プリミティブでない場合に、該グラフィッ
クコマンドを前記ジオメトリエンジンの全ての前記グラ
フィックプロセッサに転送し、前記コマンド分割手段
が、前記グラフィックコマンドのプリミティブの種類と
属性とに基づいて該グラフィックコマンドの分割サイズ
を決定し分割することを特徴とする。
【0012】
【発明の実施の形態】以下、本発明の実施例について図
面を参照して詳細に説明する。
面を参照して詳細に説明する。
【0013】図1は本発明の1実施例によるグラフィッ
クアクセラレータの構成を示すブロック図である。
クアクセラレータの構成を示すブロック図である。
【0014】図示のように、本実施例のグラフィックア
クセラレータ10は、CPUにより発行された描画を指
示するGAコマンドを受け付けて蓄積するSYSTEM
−FIFO20と、SYSTEM−FIFO20に蓄積
されたGAコマンドを読み出して加工し分配転送するコ
マンドエンジン30と、GAコマンドを実行するジオメ
トリエンジン40と、ジオメトリエンジン40の出力に
基づいてピクセルイメージを作成するレンダリングエン
ジン50と、作成されたピクセルイメージを格納するフ
レームバッファ60とを備える。図1には、本実施例の
特徴的な構成のみを記載し、他の一般的な構成について
は記載を省略してある。
クセラレータ10は、CPUにより発行された描画を指
示するGAコマンドを受け付けて蓄積するSYSTEM
−FIFO20と、SYSTEM−FIFO20に蓄積
されたGAコマンドを読み出して加工し分配転送するコ
マンドエンジン30と、GAコマンドを実行するジオメ
トリエンジン40と、ジオメトリエンジン40の出力に
基づいてピクセルイメージを作成するレンダリングエン
ジン50と、作成されたピクセルイメージを格納するフ
レームバッファ60とを備える。図1には、本実施例の
特徴的な構成のみを記載し、他の一般的な構成について
は記載を省略してある。
【0015】コマンドエンジン30は、SYSTEM−
FIFO20からGAコマンドを取得するGAコマンド
取得部31と、GAコマンドをジオメトリエンジン40
の所定のグラフィックプロセッサに転送するGAコマン
ド転送制御部32と、必要に応じてGAコマンドを分割
するGAコマンド分割部33とを備える。
FIFO20からGAコマンドを取得するGAコマンド
取得部31と、GAコマンドをジオメトリエンジン40
の所定のグラフィックプロセッサに転送するGAコマン
ド転送制御部32と、必要に応じてGAコマンドを分割
するGAコマンド分割部33とを備える。
【0016】GAコマンド取得部31は、SYSTEM
−FIFO20からGAコマンドを取り出し、取り出し
たコマンドをGAコマンド転送制御部32へ渡す。
−FIFO20からGAコマンドを取り出し、取り出し
たコマンドをGAコマンド転送制御部32へ渡す。
【0017】GAコマンド転送制御部32は、GAコマ
ンド取得部31からGAコマンドを受け取り、ジオメト
リエンジン40の所定のグラフィックプロセッサに転送
する。また、必要に応じてGAコマンドをGAコマンド
分割部33へ送り、分割させる。具体的には、GAコマ
ンドが描画プリミティブである場合は、当該GAコマン
ドをGAコマンド分割部33により分割し、分割したG
Aコマンドをジオメトリエンジン40の適当なグラフィ
ックプロセッサへ転送する。GAコマンドが描画プリミ
ティブでない場合には、当該GAコマンドを全てのグラ
フィックプロセッサへ転送する。
ンド取得部31からGAコマンドを受け取り、ジオメト
リエンジン40の所定のグラフィックプロセッサに転送
する。また、必要に応じてGAコマンドをGAコマンド
分割部33へ送り、分割させる。具体的には、GAコマ
ンドが描画プリミティブである場合は、当該GAコマン
ドをGAコマンド分割部33により分割し、分割したG
Aコマンドをジオメトリエンジン40の適当なグラフィ
ックプロセッサへ転送する。GAコマンドが描画プリミ
ティブでない場合には、当該GAコマンドを全てのグラ
フィックプロセッサへ転送する。
【0018】GAコマンド分割部33は、GAコマンド
が描画プリミティブである場合に、当該GAコマンドを
GAコマンド転送制御部32から受け取り、ジオメトリ
エンジン40のグラフィックプロセッサの入力FIFO
のサイズと当該GAコマンドのサイズとに基づいて、当
該GAコマンドを最適な長さに分割する。
が描画プリミティブである場合に、当該GAコマンドを
GAコマンド転送制御部32から受け取り、ジオメトリ
エンジン40のグラフィックプロセッサの入力FIFO
のサイズと当該GAコマンドのサイズとに基づいて、当
該GAコマンドを最適な長さに分割する。
【0019】ジオメトリエンジン40は、GAコマンド
を並列に実行する複数のグラフィックプロセッサ421
〜42nを備え、各グラフィックプロセッサ421〜4
2nを挟んで前後にそれぞれFIFO411〜41n、
431〜43nを備える。グラフィックプロセッサ42
1〜42nは、それぞれFIFO411〜41nを介し
て受け取ったGAコマンドに基づいて、座標変換や光源
等の計算を行い、計算結果をFIFO431〜43nに
格納する。
を並列に実行する複数のグラフィックプロセッサ421
〜42nを備え、各グラフィックプロセッサ421〜4
2nを挟んで前後にそれぞれFIFO411〜41n、
431〜43nを備える。グラフィックプロセッサ42
1〜42nは、それぞれFIFO411〜41nを介し
て受け取ったGAコマンドに基づいて、座標変換や光源
等の計算を行い、計算結果をFIFO431〜43nに
格納する。
【0020】SYSTEM−FIFO20、レンダリン
グエンジン50及びフレームバッファ60は、この種の
グラフィックアクセラレータに従来から用いられている
ものと同様である。
グエンジン50及びフレームバッファ60は、この種の
グラフィックアクセラレータに従来から用いられている
ものと同様である。
【0021】次に、図2ないし図6のフローチャートを
参照して本実施例の動作について説明する。図2はGA
コマンド取得部31の動作を示すフローチャート、図3
ないし図5はGAコマンド転送制御部32の動作を示す
フローチャート、図6はGAコマンド分割部33の動作
を示すフローチャートである。
参照して本実施例の動作について説明する。図2はGA
コマンド取得部31の動作を示すフローチャート、図3
ないし図5はGAコマンド転送制御部32の動作を示す
フローチャート、図6はGAコマンド分割部33の動作
を示すフローチャートである。
【0022】図2に示すように、GAコマンド取得部3
1は、SYSTEM−FIFO20がEMPTYなら、
SYETEM−FIFO20からGAコマンドを取り出
し(ステップ301、302)、取り出したGAコマン
ドをGAコマンド転送制御部32へ渡す(ステップ30
3)。
1は、SYSTEM−FIFO20がEMPTYなら、
SYETEM−FIFO20からGAコマンドを取り出
し(ステップ301、302)、取り出したGAコマン
ドをGAコマンド転送制御部32へ渡す(ステップ30
3)。
【0023】GAコマンド転送制御部32は、図3に示
すように、まず、カレントグラフィックプロセッサを決
定(例えば、グラフィックプロセッサ421)し(ステ
ップ301)、GAコマンドをGAコマンド取得部31
から受け取る(ステップ302、303)。そして、受
け取ったGAコマンドが描画プリミティブかどうかを判
定する(ステップ304)。GAコマンドが描画プリミ
ティブならば、GAコマンド分割部34を呼び出し、G
AコマンドをGAコマンド1〜GAコマンドm(1≦m
≦n,n:グラフィックプロセッサ数)のm個のコマン
ドに分割する(ステップ305)。そして、分割したm
個のGAコマンドをジオメトリエンジン40へ転送して
並列に処理させる(ステップ306、307、図4参
照)。
すように、まず、カレントグラフィックプロセッサを決
定(例えば、グラフィックプロセッサ421)し(ステ
ップ301)、GAコマンドをGAコマンド取得部31
から受け取る(ステップ302、303)。そして、受
け取ったGAコマンドが描画プリミティブかどうかを判
定する(ステップ304)。GAコマンドが描画プリミ
ティブならば、GAコマンド分割部34を呼び出し、G
AコマンドをGAコマンド1〜GAコマンドm(1≦m
≦n,n:グラフィックプロセッサ数)のm個のコマン
ドに分割する(ステップ305)。そして、分割したm
個のGAコマンドをジオメトリエンジン40へ転送して
並列に処理させる(ステップ306、307、図4参
照)。
【0024】図4に示すGAコマンドの並列処理におい
て、まず、カレントグラフィックプロセッサ421の入
力FIFO411の空きデータサイズとGAコマンドの
サイズとを比較する。そして、GAコマンドのサイズの
方が大きいならば、グラフィックプロセッサ421がF
IFO411内コマンドを処理してFIFO411内の
コマンド量が減るのを待ち合わせる(ステップ40
1)。
て、まず、カレントグラフィックプロセッサ421の入
力FIFO411の空きデータサイズとGAコマンドの
サイズとを比較する。そして、GAコマンドのサイズの
方が大きいならば、グラフィックプロセッサ421がF
IFO411内コマンドを処理してFIFO411内の
コマンド量が減るのを待ち合わせる(ステップ40
1)。
【0025】一方、FIFO411の空きデータサイズ
の方が大きい場合、GAコマンドをカレントグラフィッ
クプロセッサ421へ転送する(ステップ402)。そ
して、どのグラフィックプロセッサ421〜42nがカ
レントグラフィックプロセッサとなっているかを判定
し、グラフィックプロセッサ42nがカレントグラフィ
ックプロセッサであるならば、改めてグラフィックプロ
セッサ421をカレントグラフィックプロセッサとして
ステップ306へ戻る(ステップ403、404)。グ
ラフィックプロセッサ42n以外のグラフィックプロセ
ッサ42h(1≦h<n)がカレントグラフィックプロ
セッサであるならば、改めてグラフィックプロセッサ4
2h+1をカレントグラフィックプロセッサとしてステ
ップ306へ戻る。
の方が大きい場合、GAコマンドをカレントグラフィッ
クプロセッサ421へ転送する(ステップ402)。そ
して、どのグラフィックプロセッサ421〜42nがカ
レントグラフィックプロセッサとなっているかを判定
し、グラフィックプロセッサ42nがカレントグラフィ
ックプロセッサであるならば、改めてグラフィックプロ
セッサ421をカレントグラフィックプロセッサとして
ステップ306へ戻る(ステップ403、404)。グ
ラフィックプロセッサ42n以外のグラフィックプロセ
ッサ42h(1≦h<n)がカレントグラフィックプロ
セッサであるならば、改めてグラフィックプロセッサ4
2h+1をカレントグラフィックプロセッサとしてステ
ップ306へ戻る。
【0026】ステップ304においてGAコマンドが描
画プリミティブでないと判定した場合、当該GAコマン
ドを分割せずにジオメトリエンジン40へ転送して処理
させる(ステップ308、図5参照)。
画プリミティブでないと判定した場合、当該GAコマン
ドを分割せずにジオメトリエンジン40へ転送して処理
させる(ステップ308、図5参照)。
【0027】図5に示すGAコマンドの処理において、
まず、カレントグラフィックプロセッサをグラフィック
プロセッサ421とし(ステップ501)、カレントグ
ラフィックプロセッサ421の入力FIFO411の空
きデータサイズとGAコマンドのサイズとを比較する。
そして、GAコマンドのサイズの方が大きいならば、グ
ラフィックプロセッサ421がFIFO411内コマン
ドを処理してFIFO411内のコマンド量が減るのを
待ち合わせる(ステップ503)。
まず、カレントグラフィックプロセッサをグラフィック
プロセッサ421とし(ステップ501)、カレントグ
ラフィックプロセッサ421の入力FIFO411の空
きデータサイズとGAコマンドのサイズとを比較する。
そして、GAコマンドのサイズの方が大きいならば、グ
ラフィックプロセッサ421がFIFO411内コマン
ドを処理してFIFO411内のコマンド量が減るのを
待ち合わせる(ステップ503)。
【0028】以後、ステップ504〜507において、
図4に示したステップ402ないしステップ405と同
様の処理が行われた後、ステップ302へ戻る(ステッ
プ502)。
図4に示したステップ402ないしステップ405と同
様の処理が行われた後、ステップ302へ戻る(ステッ
プ502)。
【0029】GAコマンド分割部33は、GAコマンド
転送制御部32に呼び出された場合に、図6に示すよう
に、まず、カレントグラフィックプロセッサのFIFO
サイズとGAコマンドのサイズとを比較する(ステップ
601)。GAコマンドのサイズの方が大きいならば、
プリミティブの種類と属性情報とに基づいて、最適な分
割サイズを計算し、GAコマンドをGAコマンド1、・
・・、GAコマンドm(1≦m≦n、n:グラフィック
プロセッサ数)のm個のコマンドに分割する(ステップ
602)。一方、カレントグラフィックプロセッサのF
IFOのサイズの方が大きい場合は、当該GAコマンド
を分割しない(ステップ603)。
転送制御部32に呼び出された場合に、図6に示すよう
に、まず、カレントグラフィックプロセッサのFIFO
サイズとGAコマンドのサイズとを比較する(ステップ
601)。GAコマンドのサイズの方が大きいならば、
プリミティブの種類と属性情報とに基づいて、最適な分
割サイズを計算し、GAコマンドをGAコマンド1、・
・・、GAコマンドm(1≦m≦n、n:グラフィック
プロセッサ数)のm個のコマンドに分割する(ステップ
602)。一方、カレントグラフィックプロセッサのF
IFOのサイズの方が大きい場合は、当該GAコマンド
を分割しない(ステップ603)。
【0030】次に、本実施例によるデータの流れを、具
体的な動作例を参照して説明する。ここでは、図7に示
す図形を描画する場合について説明する。条件として、
グラフィックプロセッサの数を2個(GP1、GP2)
とし、グラフィックプロセッサの入力FIFOのサイズ
をそれぞれ32ワードとする。また、1プリミティブの
GAコマンドを図7に示す連続三角形とする。同図に示
す連続三角形では、14個の頂点が指定され、各頂点に
は法線データが付加される。そして、連続三角形を描画
するための法線データ及び頂点データのデータ長をそれ
ぞれ3ワードとする。
体的な動作例を参照して説明する。ここでは、図7に示
す図形を描画する場合について説明する。条件として、
グラフィックプロセッサの数を2個(GP1、GP2)
とし、グラフィックプロセッサの入力FIFOのサイズ
をそれぞれ32ワードとする。また、1プリミティブの
GAコマンドを図7に示す連続三角形とする。同図に示
す連続三角形では、14個の頂点が指定され、各頂点に
は法線データが付加される。そして、連続三角形を描画
するための法線データ及び頂点データのデータ長をそれ
ぞれ3ワードとする。
【0031】本実施例によれば、14個の頂点データ及
び法線データはグラフィックプロセッサGP1とグラフ
ィックプロセッサGP2とに分割して転送される。これ
により、1個のグラフィックプロセッサ当たりの負荷が
分散され、図9に示した従来技術の場合における第5列
のようなグラフィックプロセッサGP1の入力FIFO
の空き待ちのタイミングがなくなる。このため、グラフ
ィックプロセッサ全体の処理の並列度が高まり、描画性
能が向上することとなる。
び法線データはグラフィックプロセッサGP1とグラフ
ィックプロセッサGP2とに分割して転送される。これ
により、1個のグラフィックプロセッサ当たりの負荷が
分散され、図9に示した従来技術の場合における第5列
のようなグラフィックプロセッサGP1の入力FIFO
の空き待ちのタイミングがなくなる。このため、グラフ
ィックプロセッサ全体の処理の並列度が高まり、描画性
能が向上することとなる。
【0032】以上好ましい実施例をあげて本発明を説明
したが、本発明は必ずしも上記実施例に限定されるもの
ではない。
したが、本発明は必ずしも上記実施例に限定されるもの
ではない。
【0033】
【発明の効果】以上説明したように、本発明は、1プリ
ミティブの描画を行うためのグラフィックコマンドのサ
イズが大きい場合に、当該グラフィックコマンドを適当
に分割し、複数のグラフィックプロセッサに分担して処
理させることにより、特定のグラフィックプロセッサに
負荷が集中することを回避することができる。したがっ
て、グラフィックプロセッサ全体の処理効率を高めるこ
とができ、図形の描画性能を向上させることができると
いう効果がある。
ミティブの描画を行うためのグラフィックコマンドのサ
イズが大きい場合に、当該グラフィックコマンドを適当
に分割し、複数のグラフィックプロセッサに分担して処
理させることにより、特定のグラフィックプロセッサに
負荷が集中することを回避することができる。したがっ
て、グラフィックプロセッサ全体の処理効率を高めるこ
とができ、図形の描画性能を向上させることができると
いう効果がある。
【図1】 本発明の1実施例によるグラフィックアクセ
ラレータの構成を示すブロック図である。
ラレータの構成を示すブロック図である。
【図2】 GAコマンド取得部の動作を示すフローチャ
ートである。
ートである。
【図3】 GAコマンド転送制御部の動作を示し、GA
コマンドの大きさを判定して分割するまでの処理を示す
フローチャートである。
コマンドの大きさを判定して分割するまでの処理を示す
フローチャートである。
【図4】 GAコマンド転送制御部の動作を示し、GA
コマンドを分割した場合のグラフィックプロセッサへの
コマンド転送処理を示すフローチャートである。
コマンドを分割した場合のグラフィックプロセッサへの
コマンド転送処理を示すフローチャートである。
【図5】 GAコマンド転送制御部の動作を示し、GA
コマンドを分割しない場合のグラフィックプロセッサへ
のコマンド転送処理を示すフローチャートである。
コマンドを分割しない場合のグラフィックプロセッサへ
のコマンド転送処理を示すフローチャートである。
【図6】 GAコマンド分割部の動作を示すフローチャ
ートである。
ートである。
【図7】 本実施例の具体的な動作例を説明するための
描画図形の例を示す図である。
描画図形の例を示す図である。
【図8】 図7の図形を描画する場合の本実施例の動作
を示す図である。
を示す図である。
【図9】 図7の図形を描画する場合の従来技術の動作
を示す図である。
を示す図である。
10 グラフィックアクセラレータ 20 SYSTEM−FIFO 30 コマンドエンジン 31 GAコマンド取得部 32 GAコマンド転送制御部 33 GAコマンド分割部 40 ジオメトリエンジン 411〜41n、431〜43n FIFO 421〜42n グラフィックプロセッサ 50 レンダリングエンジン 60 フレームバッファ
Claims (4)
- 【請求項1】 SYSTEM−FIFOを経由してCP
Uから転送されたグラフィックコマンドを複数のグラフ
ィックプロセッサにて並列に処理するグラフィックアク
セラレータにおいて、 前記SYSTEM−FIFOから前記グラフィックコマ
ンドを受け取り、必要に応じて加工するコマンドエンジ
ンと、 前記複数のグラフィックプロセッサを並列に備えるジオ
メトリエンジンと、 ジオメトリエンジンの出力に基づいてピクセルイメージ
を作成するレンダリングエンジンとを備え、 前記コマンドエンジンが、 前記サイズの大きいグラフィックコマンドを所定のサイ
ズに分割するコマンド分割手段と、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドの種類及びサイズに基づき必要に応じて
前記コマンド分割手段に前記グラフィックコマンドを分
割させると共に、前記SYSTEM−FIFOから受け
取った前記グラフィックコマンドまたは前記コマンド分
割手段に分割させた前記グラフィックコマンドを前記ジ
オメトリエンジンの複数のグラフィックプロセッサに分
配するコマンド転送制御手段とを備えることを特徴とす
るグラフィックアクセラレータ。 - 【請求項2】 前記ジオメトリエンジンが、前記複数の
グラフィックプロセッサの入力側と出力側とにそれぞれ
FIFOを備え、 前記コマンド分割手段が、前記グラフィックコマンドの
サイズが前記グラフィックプロセッサの入力側に位置す
る前記FIFOの容量よりも大きい場合に、該グラフィ
ックコマンドを前記FIFOの容量よりも小さくなるよ
うに分割し、前記グラフィックコマンドのサイズが前記
FIFOの容量よりも小さい場合は、該グラフィックコ
マンドを分割しないことを特徴とする請求項1に記載の
グラフィックアクセラレータ。 - 【請求項3】 前記コマンド転送制御手段が、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブである場合に、該グ
ラフィックコマンドを前記コマンド分割手段に分割さ
せ、かつ分割した前記グラフィックコマンドを前記ジオ
メトリエンジンの所定の前記グラフィックプロセッサに
分配し、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブでない場合に、該グ
ラフィックコマンドを前記ジオメトリエンジンの全ての
前記グラフィックプロセッサに転送することを特徴とす
る請求項1または請求項2に記載のグラフィックアクセ
ラレータ。 - 【請求項4】 前記コマンド転送制御手段が、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブである場合に、該グ
ラフィックコマンドを前記コマンド分割手段に分割さ
せ、かつ分割した前記グラフィックコマンドを前記ジオ
メトリエンジンの所定の前記グラフィックプロセッサに
分配し、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブでない場合に、該グ
ラフィックコマンドを前記ジオメトリエンジンの全ての
前記グラフィックプロセッサに転送し、 前記コマンド分割手段が、 前記グラフィックコマンドのプリミティブの種類と属性
とに基づいて該グラフィックコマンドの分割サイズを決
定し分割することを特徴とする請求項1または請求項2
に記載のグラフィックアクセラレータ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8344570A JPH10171766A (ja) | 1996-12-09 | 1996-12-09 | グラフィックアクセラレータ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8344570A JPH10171766A (ja) | 1996-12-09 | 1996-12-09 | グラフィックアクセラレータ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10171766A true JPH10171766A (ja) | 1998-06-26 |
Family
ID=18370299
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8344570A Pending JPH10171766A (ja) | 1996-12-09 | 1996-12-09 | グラフィックアクセラレータ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH10171766A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002086816A1 (en) * | 2001-04-20 | 2002-10-31 | Digital Vision Ab | Method for processing a stream of pictures |
| US6570571B1 (en) | 1999-01-27 | 2003-05-27 | Nec Corporation | Image processing apparatus and method for efficient distribution of image processing to plurality of graphics processors |
| JP2008530828A (ja) * | 2004-12-17 | 2008-08-07 | エヌヴィディア コーポレイション | 集積無線回路を有するグラフィックプロセッサ |
| JP2011175656A (ja) * | 2006-05-11 | 2011-09-08 | Panasonic Corp | 処理装置 |
| WO2021157315A1 (ja) * | 2020-02-05 | 2021-08-12 | 株式会社ソニー・インタラクティブエンタテインメント | グラフィックプロセッサ及び情報処理システム |
-
1996
- 1996-12-09 JP JP8344570A patent/JPH10171766A/ja active Pending
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6570571B1 (en) | 1999-01-27 | 2003-05-27 | Nec Corporation | Image processing apparatus and method for efficient distribution of image processing to plurality of graphics processors |
| WO2002086816A1 (en) * | 2001-04-20 | 2002-10-31 | Digital Vision Ab | Method for processing a stream of pictures |
| JP2008530828A (ja) * | 2004-12-17 | 2008-08-07 | エヌヴィディア コーポレイション | 集積無線回路を有するグラフィックプロセッサ |
| US7843458B2 (en) | 2004-12-17 | 2010-11-30 | Nvidia Corporation | Graphics processor with integrated wireless circuit |
| TWI409636B (zh) * | 2004-12-17 | 2013-09-21 | 輝達公司 | 具有整合無線電路之繪圖處理器 |
| JP2011175656A (ja) * | 2006-05-11 | 2011-09-08 | Panasonic Corp | 処理装置 |
| WO2021157315A1 (ja) * | 2020-02-05 | 2021-08-12 | 株式会社ソニー・インタラクティブエンタテインメント | グラフィックプロセッサ及び情報処理システム |
| JPWO2021157315A1 (ja) * | 2020-02-05 | 2021-08-12 | ||
| US12014443B2 (en) | 2020-02-05 | 2024-06-18 | Sony Interactive Entertainment Inc. | Graphics processor and information processing system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6864896B2 (en) | Scalable unified memory architecture | |
| EP0470782A2 (en) | Image rendering process and apparatus | |
| US6327050B1 (en) | Printing method and apparatus having multiple raster image processors | |
| HK1007014B (en) | Image rendering process and apparatus | |
| US7079146B2 (en) | Image producing device | |
| EP0817009A2 (en) | Three-dimensional graphics accelerator with direct data channels | |
| EP0817117A2 (en) | Command processor for a three-dimensional graphics accelerator which includes geometry decompression capabilities | |
| US20090135190A1 (en) | Multimode parallel graphics rendering systems and methods supporting task-object division | |
| JP2552078B2 (ja) | 増減自在な複数の処理ノードを用いてグラフィックス・データ・ストリームを処理する方法及びシステム | |
| US6108722A (en) | Direct memory access apparatus for transferring a block of data having discontinous addresses using an address calculating circuit | |
| US20140327923A1 (en) | Image processing apparatus, image processing method, and storage medium | |
| JP2003178293A (ja) | 画像処理装置およびその方法 | |
| JP2012242855A (ja) | データ処理装置及びデータ処理方法 | |
| JPH10171766A (ja) | グラフィックアクセラレータ | |
| EP1532582B1 (en) | Method and apparatus for image data processing using image strips and circular addressing arrangement | |
| JPH1131052A (ja) | 文書処理システム | |
| US6101290A (en) | Bandwidth efficient image transformations on a multiprocessor | |
| US7916151B1 (en) | Partial texture loads | |
| JP2007087137A (ja) | 印刷制御装置、画像形成方法および記憶媒体 | |
| EP1210691B1 (en) | Method, system, and computer program product for overlapping graphics data collection and transmission using a single processor | |
| JPH08101911A (ja) | 画像記録装置 | |
| US20240370522A1 (en) | Methods and systems of depth-wise separable (dwd) convolution on a multi-dimensional memory fabric | |
| JPH09190539A (ja) | 画像描画装置 | |
| JP2006031160A (ja) | グラフィックオブジェクト処理方法 | |
| JP2000353152A (ja) | 図形処理装置 |