JPH10171766A - Graphic accelerator - Google Patents

Graphic accelerator

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
Application number
JP8344570A
Other languages
Japanese (ja)
Inventor
Akihiro Kotake
章博 小竹
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP8344570A priority Critical patent/JPH10171766A/en
Publication of JPH10171766A publication Critical patent/JPH10171766A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

PROBLEM TO BE SOLVED: To evade the concentration of load and to improve the whole processing efficiency and graphic plotting performance by suitably dividing a graphic command and allowing plural graphic processors to dividedly process these divided graphic commands when the size of a graphic command for plotting one primitive is large. SOLUTION: A command division means 33 in a command engine 30 divides a graphic command of large size into plural graphic commands of prescribed size. A command transfer control means 32 allows the means 33 to divide a graphic command received from a SYSTEM-FIFO based on the sort and size of the graphic command as necessity and distributes the graphic command received from the SYSTEM-FIFO or graphic commands divided by the means 33 to plural. graphic processors in a geometry engine.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明が属する技術分野】本発明は、コンピュータシス
テムに搭載され描画処理を実行するグラフィックアクセ
ラレータに関し、特に、複数のグラフィックプロセッサ
を搭載し、グラフィックコマンドを並列に処理するグラ
フィックアクセラレータに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a graphic accelerator mounted on a computer system and executing drawing processing, and more particularly to a graphic accelerator mounted with a plurality of graphic processors and processing graphic commands in parallel.

【0002】[0002]

【従来の技術】コンピュータシステムに搭載されて描画
処理を実行するグラフィックアクセラレータには、複数
のグラフィックプロセッサを搭載してグラフィックコマ
ンドを当該複数のグラフィックプロセッサに並列に処理
させることにより、描画処理の高速化を図っているもの
が有る。この種の従来技術としては、例えば、特開昭6
3−8693号公報に開示されたグラフィックアクセラ
レータがある。同公報には、グラフィックアクセラレー
タ内に、複数のグラフィックプロセッサと、図形表示装
置の画面上の区画に応じて処理を分担しグラフィックプ
ロセッサとは独立して並列に動作可能な複数のピクセル
プロセッサとを備え、グラフィックプロセッサの出力と
ピクセルプロセッサの入力との間に、行ディストリビュ
ータと列ディストリビュータとを備える。そして、複数
のグラフィックプロセッサが同時に同じピクセルプロセ
ッサの処理を必要とする出力を行った場合、当該出力を
ディストリビュータで一括して受け取ることにより、グ
ラフィックプロセッサがピクセルプロセッサの処理の順
番待ちとなるケースを減少している。
2. Description of the Related Art A graphic accelerator mounted on a computer system for executing a drawing process is equipped with a plurality of graphic processors, and the graphic commands are processed in parallel by the plurality of graphic processors, thereby speeding up the drawing process. Some are trying to. For example, Japanese Patent Application Laid-Open No.
There is a graphic accelerator disclosed in Japanese Patent Application Publication No. 3-8693. In this publication, a graphic accelerator is provided with a plurality of graphic processors and a plurality of pixel processors which share processing according to a section on the screen of the graphic display device and can operate in parallel independently of the graphic processor. A row distributor and a column distributor between the output of the graphics processor and the input of the pixel processor. When multiple graphics processors output simultaneously that require processing by the same pixel processor, the output is collectively received by the distributor to reduce the number of cases where the graphics processor waits for the processing of the pixel processor. doing.

【0003】しかし、上記従来のグラフィックアクセラ
レータは、特定のグラフィックプロセッサに負荷が集中
した場合、処理の並列度が低下し、全体として描画性能
が低下する場合があった。
However, in the above-described conventional graphic accelerator, when the load is concentrated on a specific graphic processor, the degree of parallelism of processing is reduced, and the drawing performance may be reduced as a whole.

【0004】図9に、図7に示す図形(連続三角形)を
描画する場合における従来のグラフィックアクセラレー
タによるデータの流れを示す。なお、条件として、グラ
フィックプロセッサの数を2個(GP1、GP2)、グ
ラフィックプロセッサの入力FIFOのサイズをそれぞ
れ32ワード、連続三角形を描画するための法線データ
及び頂点データのデータ長をそれぞれ3ワードとする。
FIG. 9 shows a data flow by a conventional graphic accelerator when drawing the graphic (continuous triangle) shown in FIG. As conditions, the number of graphic processors is two (GP1, GP2), the size of the input FIFO of the graphic processor is 32 words, and the data length of normal data and vertex data for drawing a continuous triangle is 3 words, respectively. And

【0005】1つのグラフィックプロセッサへは、5つ
の法線データ及び5つの頂点データを転送可能である。
しかし、1つのグラフィックプロセッサのみにデータを
転送するため、図9の第5列に示すように、グラフィッ
クプロセッサGP1の入力FIFOの空き待ちの状態が
発生してしまうことになる。この時、グラフィックプロ
セッサGP2がfreeとなっており、処理の並列度が
低下し、描画性能が低下してしまう。
[0005] Five normal data and five vertex data can be transferred to one graphics processor.
However, since data is transferred to only one graphic processor, as shown in the fifth column of FIG. 9, a state of waiting for the input FIFO of the graphic processor GP1 to be empty occurs. At this time, the graphic processor GP2 is in the free state, the degree of parallelism of the processing is reduced, and the drawing performance is reduced.

【0006】[0006]

【発明が解決しようとする課題】上述したように、従来
の技術は、特定のグラフィックプロセッサに負荷が集中
してしまうと、グラフィックプロセッサ全体の処理効率
が低下し、さらに、ピクセルプロセッサへの入力効率も
低下するため、ピクセルプロセッサによる処理効率も低
下し、描画性能が低下するという欠点があった。
As described above, in the prior art, when the load is concentrated on a specific graphic processor, the processing efficiency of the entire graphic processor is reduced, and the input efficiency to the pixel processor is further reduced. Therefore, the processing efficiency of the pixel processor is also reduced, and the drawing performance is reduced.

【0007】本発明は、上記従来の欠点を解決し、特定
のグラフィックプロセッサに負荷が集中することを回避
し、描画性能の低下を防止することのできるグラフィッ
クアクセラレータを提供することを目的とする。
SUMMARY OF THE INVENTION It is an object of the present invention to provide a graphic accelerator which solves the above-mentioned drawbacks of the related art, avoids concentration of a load on a specific graphic processor, and prevents a decrease in drawing performance.

【0008】[0008]

【課題を解決するための手段】上記の目的を達成する本
発明は、SYSTEM−FIFOを経由してCPUから
転送されたグラフィックコマンドを複数のグラフィック
プロセッサにて並列に処理するグラフィックアクセラレ
ータにおいて、前記SYSTEM−FIFOから前記グ
ラフィックコマンドを受け取り、必要に応じて加工する
コマンドエンジンと、前記複数のグラフィックプロセッ
サを並列に備えるジオメトリエンジンと、ジオメトリエ
ンジンの出力に基づいてピクセルイメージを作成するレ
ンダリングエンジンとを備え、前記コマンドエンジン
が、前記サイズの大きいグラフィックコマンドを所定の
サイズに分割するコマンド分割手段と、前記SYSTE
M−FIFOから受け取った前記グラフィックコマンド
の種類及びサイズに基づき必要に応じて前記コマンド分
割手段に前記グラフィックコマンドを分割させると共
に、前記SYSTEM−FIFOから受け取った前記グ
ラフィックコマンドまたは前記コマンド分割手段に分割
させた前記グラフィックコマンドを前記ジオメトリエン
ジンの複数のグラフィックプロセッサに分配するコマン
ド転送制御手段とを備えることを特徴とする。
According to the present invention, there is provided a graphic accelerator for processing graphic commands transferred from a CPU via a SYSTEM-FIFO in parallel by a plurality of graphic processors. A command engine that receives the graphic command from the FIFO and processes it as needed; a geometry engine including the plurality of graphic processors in parallel; and a rendering engine that creates a pixel image based on an output of the geometry engine. A command dividing means for dividing the large-sized graphic command into a predetermined size by the command engine;
Based on the type and size of the graphic command received from the M-FIFO, the graphic command is divided by the command dividing means as necessary, and the graphic command received from the SYSTEM-FIFO or the command is divided by the command dividing means. Command transfer control means for distributing the graphic command to a plurality of graphic processors of the geometry engine.

【0009】請求項2の本発明のグラフィックアクセラ
レータは、前記ジオメトリエンジンが、前記複数のグラ
フィックプロセッサの入力側と出力側とにそれぞれFI
FOを備え、前記コマンド分割手段が、前記グラフィッ
クコマンドのサイズが前記グラフィックプロセッサの入
力側に位置する前記FIFOの容量よりも大きい場合
に、該グラフィックコマンドを前記FIFOの容量より
も小さくなるように分割し、前記グラフィックコマンド
のサイズが前記FIFOの容量よりも小さい場合は、該
グラフィックコマンドを分割しないことを特徴とする。
According to a second aspect of the present invention, in the graphic accelerator, the geometry engine may be configured so that the input and output sides of the plurality of graphic processors are FI
FO, wherein when the size of the graphic command is larger than the capacity of the FIFO located on the input side of the graphic processor, the command dividing means divides the graphic command so as to be smaller than the capacity of the FIFO. If the size of the graphic command is smaller than the capacity of the FIFO, the graphic command is not divided.

【0010】請求項3の本発明のグラフィックアクセラ
レータは、前記コマンド転送制御手段が、前記SYST
EM−FIFOから受け取った前記グラフィックコマン
ドが描画プリミティブである場合に、該グラフィックコ
マンドを前記コマンド分割手段に分割させ、かつ分割し
た前記グラフィックコマンドを前記ジオメトリエンジン
の所定の前記グラフィックプロセッサに分配し、前記S
YSTEM−FIFOから受け取った前記グラフィック
コマンドが描画プリミティブでない場合に、該グラフィ
ックコマンドを前記ジオメトリエンジンの全ての前記グ
ラフィックプロセッサに転送することを特徴とする。
According to a third aspect of the present invention, in the graphic accelerator according to the third aspect, the command transfer control means may include the SYST
When the graphic command received from the EM-FIFO is a drawing primitive, the graphic command is divided by the command dividing means, and the divided graphic command is distributed to a predetermined graphic processor of the geometry engine. S
When the graphic command received from the YSTEM-FIFO is not a drawing primitive, the graphic command is transferred to all the graphic processors of the geometry engine.

【0011】請求項4の本発明グラフィックアクセラレ
ータは、前記コマンド転送制御手段が、前記SYSTE
M−FIFOから受け取った前記グラフィックコマンド
が描画プリミティブである場合に、該グラフィックコマ
ンドを前記コマンド分割手段に分割させ、かつ分割した
前記グラフィックコマンドを前記ジオメトリエンジンの
所定の前記グラフィックプロセッサに分配し、前記SY
STEM−FIFOから受け取った前記グラフィックコ
マンドが描画プリミティブでない場合に、該グラフィッ
クコマンドを前記ジオメトリエンジンの全ての前記グラ
フィックプロセッサに転送し、前記コマンド分割手段
が、前記グラフィックコマンドのプリミティブの種類と
属性とに基づいて該グラフィックコマンドの分割サイズ
を決定し分割することを特徴とする。
According to a fourth aspect of the present invention, in the graphic accelerator, the command transfer control means includes the SYSTE
When the graphic command received from the M-FIFO is a drawing primitive, the graphic command is divided by the command dividing means, and the divided graphic command is distributed to a predetermined graphic processor of the geometry engine. SY
When the graphic command received from the STEM-FIFO is not a drawing primitive, the graphic command is transferred to all the graphic processors of the geometry engine, and the command dividing unit determines the type and attribute of the primitive of the graphic command. The size of the graphic command is determined and divided based on the graphic command.

【0012】[0012]

【発明の実施の形態】以下、本発明の実施例について図
面を参照して詳細に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0013】図1は本発明の1実施例によるグラフィッ
クアクセラレータの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a graphic accelerator according to one embodiment of the present invention.

【0014】図示のように、本実施例のグラフィックア
クセラレータ10は、CPUにより発行された描画を指
示するGAコマンドを受け付けて蓄積するSYSTEM
−FIFO20と、SYSTEM−FIFO20に蓄積
されたGAコマンドを読み出して加工し分配転送するコ
マンドエンジン30と、GAコマンドを実行するジオメ
トリエンジン40と、ジオメトリエンジン40の出力に
基づいてピクセルイメージを作成するレンダリングエン
ジン50と、作成されたピクセルイメージを格納するフ
レームバッファ60とを備える。図1には、本実施例の
特徴的な構成のみを記載し、他の一般的な構成について
は記載を省略してある。
As shown in the figure, a graphic accelerator 10 according to the present embodiment receives and accumulates a GA command issued by a CPU for instructing rendering.
A FIFO 20, a command engine 30 for reading, processing, distributing and transferring GA commands stored in the SYSTEM-FIFO 20, a geometry engine 40 for executing the GA commands, and rendering for creating a pixel image based on the output of the geometry engine 40. It comprises an engine 50 and a frame buffer 60 for storing the created pixel image. FIG. 1 illustrates only the characteristic configuration of the present embodiment, and omits the description of other general configurations.

【0015】コマンドエンジン30は、SYSTEM−
FIFO20からGAコマンドを取得するGAコマンド
取得部31と、GAコマンドをジオメトリエンジン40
の所定のグラフィックプロセッサに転送するGAコマン
ド転送制御部32と、必要に応じてGAコマンドを分割
するGAコマンド分割部33とを備える。
The command engine 30 has a SYSTEM-
A GA command acquisition unit 31 for acquiring a GA command from the FIFO 20;
A GA command transfer control unit 32 for transferring the command to a predetermined graphic processor, and a GA command dividing unit 33 for dividing the GA command as necessary.

【0016】GAコマンド取得部31は、SYSTEM
−FIFO20からGAコマンドを取り出し、取り出し
たコマンドをGAコマンド転送制御部32へ渡す。
The GA command acquisition section 31 is a SYSTEM
-Extract the GA command from the FIFO 20, and pass the extracted command to the GA command transfer control unit 32.

【0017】GAコマンド転送制御部32は、GAコマ
ンド取得部31からGAコマンドを受け取り、ジオメト
リエンジン40の所定のグラフィックプロセッサに転送
する。また、必要に応じてGAコマンドをGAコマンド
分割部33へ送り、分割させる。具体的には、GAコマ
ンドが描画プリミティブである場合は、当該GAコマン
ドをGAコマンド分割部33により分割し、分割したG
Aコマンドをジオメトリエンジン40の適当なグラフィ
ックプロセッサへ転送する。GAコマンドが描画プリミ
ティブでない場合には、当該GAコマンドを全てのグラ
フィックプロセッサへ転送する。
The GA command transfer control unit 32 receives a GA command from the GA command acquisition unit 31 and transfers the GA command to a predetermined graphic processor of the geometry engine 40. In addition, the GA command is sent to the GA command dividing unit 33 as necessary, and is divided. Specifically, when the GA command is a drawing primitive, the GA command is divided by the GA command dividing unit 33 and the divided G command
Transfer the A command to the appropriate graphics processor of the geometry engine 40. If the GA command is not a drawing primitive, the GA command is transferred to all graphic processors.

【0018】GAコマンド分割部33は、GAコマンド
が描画プリミティブである場合に、当該GAコマンドを
GAコマンド転送制御部32から受け取り、ジオメトリ
エンジン40のグラフィックプロセッサの入力FIFO
のサイズと当該GAコマンドのサイズとに基づいて、当
該GAコマンドを最適な長さに分割する。
When the GA command is a drawing primitive, the GA command division unit 33 receives the GA command from the GA command transfer control unit 32 and inputs the GA command to the input FIFO of the graphic processor of the geometry engine 40.
The GA command is divided into optimal lengths based on the size of the GA command and the size of the GA command.

【0019】ジオメトリエンジン40は、GAコマンド
を並列に実行する複数のグラフィックプロセッサ421
〜42nを備え、各グラフィックプロセッサ421〜4
2nを挟んで前後にそれぞれFIFO411〜41n、
431〜43nを備える。グラフィックプロセッサ42
1〜42nは、それぞれFIFO411〜41nを介し
て受け取ったGAコマンドに基づいて、座標変換や光源
等の計算を行い、計算結果をFIFO431〜43nに
格納する。
The geometry engine 40 includes a plurality of graphic processors 421 for executing GA commands in parallel.
To 42n, and each of the graphic processors 421 to 4
FIFOs 411 to 41n before and after 2n, respectively.
431 to 43n are provided. Graphic processor 42
Based on the GA command received via the FIFOs 411 to 41n, the CPUs 1 to 42n perform coordinate conversion, calculation of the light source, and the like, and store the calculation results in the FIFOs 431 to 43n.

【0020】SYSTEM−FIFO20、レンダリン
グエンジン50及びフレームバッファ60は、この種の
グラフィックアクセラレータに従来から用いられている
ものと同様である。
The SYSTEM-FIFO 20, the rendering engine 50, and the frame buffer 60 are the same as those conventionally used in this type of graphic accelerator.

【0021】次に、図2ないし図6のフローチャートを
参照して本実施例の動作について説明する。図2はGA
コマンド取得部31の動作を示すフローチャート、図3
ないし図5はGAコマンド転送制御部32の動作を示す
フローチャート、図6はGAコマンド分割部33の動作
を示すフローチャートである。
Next, the operation of this embodiment will be described with reference to the flowcharts of FIGS. Figure 2 shows GA
3 is a flowchart showing the operation of the command acquisition unit 31, FIG.
5 is a flowchart showing the operation of the GA command transfer control unit 32, and FIG. 6 is a flowchart showing the operation of the GA command division unit 33.

【0022】図2に示すように、GAコマンド取得部3
1は、SYSTEM−FIFO20がEMPTYなら、
SYETEM−FIFO20からGAコマンドを取り出
し(ステップ301、302)、取り出したGAコマン
ドをGAコマンド転送制御部32へ渡す(ステップ30
3)。
As shown in FIG. 2, the GA command acquisition unit 3
1 is if the SYSTEM-FIFO 20 is EMPTY,
The GA command is extracted from the SYTEM-FIFO 20 (steps 301 and 302), and the extracted GA command is passed to the GA command transfer control unit 32 (step 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参
照)。
As shown in FIG. 3, the GA command transfer control section 32 first determines the current graphic processor (for example, the graphic processor 421) (step 301), and outputs the GA command to the GA command acquisition section 31.
(Steps 302 and 303). Then, it is determined whether the received GA command is a drawing primitive (step 304). If the GA command is a drawing primitive, the GA command dividing unit 34 is called and G
The A command is a GA command 1 to a GA command m (1 ≦ m
≤ n, n: the number of graphic processors) (step 305). And divided m
The GA commands are transferred to the geometry engine 40 and processed in parallel (steps 306 and 307, see FIG. 4).

【0024】図4に示すGAコマンドの並列処理におい
て、まず、カレントグラフィックプロセッサ421の入
力FIFO411の空きデータサイズとGAコマンドの
サイズとを比較する。そして、GAコマンドのサイズの
方が大きいならば、グラフィックプロセッサ421がF
IFO411内コマンドを処理してFIFO411内の
コマンド量が減るのを待ち合わせる(ステップ40
1)。
In the parallel processing of the GA command shown in FIG. 4, first, the free data size of the input FIFO 411 of the current graphic processor 421 is compared with the size of the GA command. If the size of the GA command is larger, the graphic processor 421
The command in the FIFO 411 is processed to wait for the command amount in the FIFO 411 to decrease (step 40).
1).

【0025】一方、FIFO411の空きデータサイズ
の方が大きい場合、GAコマンドをカレントグラフィッ
クプロセッサ421へ転送する(ステップ402)。そ
して、どのグラフィックプロセッサ421〜42nがカ
レントグラフィックプロセッサとなっているかを判定
し、グラフィックプロセッサ42nがカレントグラフィ
ックプロセッサであるならば、改めてグラフィックプロ
セッサ421をカレントグラフィックプロセッサとして
ステップ306へ戻る(ステップ403、404)。グ
ラフィックプロセッサ42n以外のグラフィックプロセ
ッサ42h(1≦h<n)がカレントグラフィックプロ
セッサであるならば、改めてグラフィックプロセッサ4
2h+1をカレントグラフィックプロセッサとしてステ
ップ306へ戻る。
On the other hand, if the free data size of the FIFO 411 is larger, the GA command is transferred to the current graphic processor 421 (step 402). Then, it is determined which of the graphic processors 421 to 42n is the current graphic processor. If the graphic processor 42n is the current graphic processor, the process returns to step 306 with the graphic processor 421 as the current graphic processor (steps 403 and 404). ). If a graphic processor 42h (1 ≦ h <n) other than the graphic processor 42n is the current graphic processor, the graphic processor 4
Return to step 306 with 2h + 1 as the current graphic processor.

【0026】ステップ304においてGAコマンドが描
画プリミティブでないと判定した場合、当該GAコマン
ドを分割せずにジオメトリエンジン40へ転送して処理
させる(ステップ308、図5参照)。
If it is determined in step 304 that the GA command is not a rendering primitive, the GA command is transferred to the geometry engine 40 without division and processed (step 308, see FIG. 5).

【0027】図5に示すGAコマンドの処理において、
まず、カレントグラフィックプロセッサをグラフィック
プロセッサ421とし(ステップ501)、カレントグ
ラフィックプロセッサ421の入力FIFO411の空
きデータサイズとGAコマンドのサイズとを比較する。
そして、GAコマンドのサイズの方が大きいならば、グ
ラフィックプロセッサ421がFIFO411内コマン
ドを処理してFIFO411内のコマンド量が減るのを
待ち合わせる(ステップ503)。
In the processing of the GA command shown in FIG.
First, the current graphic processor is set as the graphic processor 421 (step 501), and the size of the free data in the input FIFO 411 of the current graphic processor 421 is compared with the size of the GA command.
If the size of the GA command is larger, the graphic processor 421 processes the command in the FIFO 411 and waits until the command amount in the FIFO 411 decreases (step 503).

【0028】以後、ステップ504〜507において、
図4に示したステップ402ないしステップ405と同
様の処理が行われた後、ステップ302へ戻る(ステッ
プ502)。
Thereafter, in steps 504 to 507,
After the same processing as in steps 402 to 405 shown in FIG. 4 is performed, the process returns to step 302 (step 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)。
When called by the GA command transfer control unit 32, the GA command division unit 33 first, as shown in FIG.
The size is compared with the size of the GA command (step 601). If the size of the GA command is larger,
Based on the type of the primitive and the attribute information, the optimum division size is calculated, and the GA command is replaced with the GA command 1,.
.., The command is divided into m commands of the GA command m (1 ≦ m ≦ n, where n is the number of graphic processors) (step 602). On the other hand, F of the current graphic processor
If the size of the IFO is larger, the GA command is not divided (step 603).

【0030】次に、本実施例によるデータの流れを、具
体的な動作例を参照して説明する。ここでは、図7に示
す図形を描画する場合について説明する。条件として、
グラフィックプロセッサの数を2個(GP1、GP2)
とし、グラフィックプロセッサの入力FIFOのサイズ
をそれぞれ32ワードとする。また、1プリミティブの
GAコマンドを図7に示す連続三角形とする。同図に示
す連続三角形では、14個の頂点が指定され、各頂点に
は法線データが付加される。そして、連続三角形を描画
するための法線データ及び頂点データのデータ長をそれ
ぞれ3ワードとする。
Next, the data flow according to the present embodiment will be described with reference to a specific operation example. Here, a case where the figure shown in FIG. 7 is drawn will be described. As a condition,
Two graphic processors (GP1, GP2)
The size of the input FIFO of the graphic processor is 32 words. The GA command of one primitive is a continuous triangle shown in FIG. In the continuous triangle shown in the figure, 14 vertices are designated, and normal data is added to each vertex. Then, the data lengths of the normal line data and the vertex data for drawing the continuous triangle are each 3 words.

【0031】本実施例によれば、14個の頂点データ及
び法線データはグラフィックプロセッサGP1とグラフ
ィックプロセッサGP2とに分割して転送される。これ
により、1個のグラフィックプロセッサ当たりの負荷が
分散され、図9に示した従来技術の場合における第5列
のようなグラフィックプロセッサGP1の入力FIFO
の空き待ちのタイミングがなくなる。このため、グラフ
ィックプロセッサ全体の処理の並列度が高まり、描画性
能が向上することとなる。
According to this embodiment, fourteen vertex data and normal data are divided and transferred to the graphic processor GP1 and the graphic processor GP2. As a result, the load per graphic processor is distributed, and the input FIFO of the graphic processor GP1 as shown in the fifth column in the case of the prior art shown in FIG.
The timing of waiting for empty space is eliminated. For this reason, the degree of parallelism of the processing of the entire graphic processor is increased, and the drawing performance is improved.

【0032】以上好ましい実施例をあげて本発明を説明
したが、本発明は必ずしも上記実施例に限定されるもの
ではない。
Although the present invention has been described with reference to the preferred embodiments, the present invention is not necessarily limited to the above embodiments.

【0033】[0033]

【発明の効果】以上説明したように、本発明は、1プリ
ミティブの描画を行うためのグラフィックコマンドのサ
イズが大きい場合に、当該グラフィックコマンドを適当
に分割し、複数のグラフィックプロセッサに分担して処
理させることにより、特定のグラフィックプロセッサに
負荷が集中することを回避することができる。したがっ
て、グラフィックプロセッサ全体の処理効率を高めるこ
とができ、図形の描画性能を向上させることができると
いう効果がある。
As described above, according to the present invention, when the size of a graphic command for drawing one primitive is large, the graphic command is appropriately divided, and the graphic command is divided and processed by a plurality of graphic processors. By doing so, it is possible to prevent the load from being concentrated on a specific graphic processor. Therefore, there is an effect that the processing efficiency of the entire graphic processor can be improved, and the drawing performance of the graphic can be improved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の1実施例によるグラフィックアクセ
ラレータの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a graphic accelerator according to one embodiment of the present invention.

【図2】 GAコマンド取得部の動作を示すフローチャ
ートである。
FIG. 2 is a flowchart illustrating an operation of a GA command acquisition unit.

【図3】 GAコマンド転送制御部の動作を示し、GA
コマンドの大きさを判定して分割するまでの処理を示す
フローチャートである。
FIG. 3 shows the operation of a GA command transfer control unit,
9 is a flowchart illustrating a process of determining a command size and dividing the command.

【図4】 GAコマンド転送制御部の動作を示し、GA
コマンドを分割した場合のグラフィックプロセッサへの
コマンド転送処理を示すフローチャートである。
FIG. 4 shows the operation of a GA command transfer control unit;
9 is a flowchart illustrating a command transfer process to a graphic processor when a command is divided.

【図5】 GAコマンド転送制御部の動作を示し、GA
コマンドを分割しない場合のグラフィックプロセッサへ
のコマンド転送処理を示すフローチャートである。
FIG. 5 shows the operation of a GA command transfer control unit,
9 is a flowchart illustrating a command transfer process to a graphic processor when a command is not divided.

【図6】 GAコマンド分割部の動作を示すフローチャ
ートである。
FIG. 6 is a flowchart illustrating an operation of a GA command division unit.

【図7】 本実施例の具体的な動作例を説明するための
描画図形の例を示す図である。
FIG. 7 is a diagram illustrating an example of a drawing figure for explaining a specific operation example of the present embodiment.

【図8】 図7の図形を描画する場合の本実施例の動作
を示す図である。
FIG. 8 is a diagram illustrating an operation of the present exemplary embodiment when the graphic in FIG. 7 is drawn.

【図9】 図7の図形を描画する場合の従来技術の動作
を示す図である。
FIG. 9 is a diagram showing the operation of the related art when drawing the graphic of FIG. 7;

【符号の説明】[Explanation of symbols]

10 グラフィックアクセラレータ 20 SYSTEM−FIFO 30 コマンドエンジン 31 GAコマンド取得部 32 GAコマンド転送制御部 33 GAコマンド分割部 40 ジオメトリエンジン 411〜41n、431〜43n FIFO 421〜42n グラフィックプロセッサ 50 レンダリングエンジン 60 フレームバッファ DESCRIPTION OF SYMBOLS 10 Graphic accelerator 20 SYSTEM-FIFO 30 Command engine 31 GA command acquisition part 32 GA command transfer control part 33 GA command division part 40 Geometry engine 411-41n, 431-43n FIFO 421-42n Graphic processor 50 Rendering engine 60 Frame buffer

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 SYSTEM−FIFOを経由してCP
Uから転送されたグラフィックコマンドを複数のグラフ
ィックプロセッサにて並列に処理するグラフィックアク
セラレータにおいて、 前記SYSTEM−FIFOから前記グラフィックコマ
ンドを受け取り、必要に応じて加工するコマンドエンジ
ンと、 前記複数のグラフィックプロセッサを並列に備えるジオ
メトリエンジンと、 ジオメトリエンジンの出力に基づいてピクセルイメージ
を作成するレンダリングエンジンとを備え、 前記コマンドエンジンが、 前記サイズの大きいグラフィックコマンドを所定のサイ
ズに分割するコマンド分割手段と、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドの種類及びサイズに基づき必要に応じて
前記コマンド分割手段に前記グラフィックコマンドを分
割させると共に、前記SYSTEM−FIFOから受け
取った前記グラフィックコマンドまたは前記コマンド分
割手段に分割させた前記グラフィックコマンドを前記ジ
オメトリエンジンの複数のグラフィックプロセッサに分
配するコマンド転送制御手段とを備えることを特徴とす
るグラフィックアクセラレータ。
1. A CP via a SYSTEM-FIFO
A graphic accelerator for processing graphic commands transferred from the U in parallel by a plurality of graphic processors, comprising: a command engine for receiving the graphic commands from the SYSTEM-FIFO and processing the graphic commands as necessary; And a rendering engine that creates a pixel image based on the output of the geometry engine. The command engine, a command dividing unit that divides the large-sized graphic command into a predetermined size, and the SYSTEM- The command dividing means divides the graphic command as necessary based on the type and size of the graphic command received from the FIFO, It said received from STEM-FIFO graphics commands or graphics accelerator, characterized in that it comprises a command transfer control means for distributing said were divided into command separate means graphics commands to a plurality of graphics processors of the geometry engine.
【請求項2】 前記ジオメトリエンジンが、前記複数の
グラフィックプロセッサの入力側と出力側とにそれぞれ
FIFOを備え、 前記コマンド分割手段が、前記グラフィックコマンドの
サイズが前記グラフィックプロセッサの入力側に位置す
る前記FIFOの容量よりも大きい場合に、該グラフィ
ックコマンドを前記FIFOの容量よりも小さくなるよ
うに分割し、前記グラフィックコマンドのサイズが前記
FIFOの容量よりも小さい場合は、該グラフィックコ
マンドを分割しないことを特徴とする請求項1に記載の
グラフィックアクセラレータ。
2. The method according to claim 1, wherein the geometry engine includes a FIFO on each of an input side and an output side of the plurality of graphic processors, and the command division unit determines that the size of the graphic command is located on the input side of the graphic processor. If the size of the graphic command is smaller than the capacity of the FIFO, the graphic command is divided so as to be smaller than the capacity of the FIFO.If the size of the graphic command is smaller than the capacity of the FIFO, the graphic command is not divided. The graphic accelerator according to claim 1, wherein:
【請求項3】 前記コマンド転送制御手段が、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブである場合に、該グ
ラフィックコマンドを前記コマンド分割手段に分割さ
せ、かつ分割した前記グラフィックコマンドを前記ジオ
メトリエンジンの所定の前記グラフィックプロセッサに
分配し、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブでない場合に、該グ
ラフィックコマンドを前記ジオメトリエンジンの全ての
前記グラフィックプロセッサに転送することを特徴とす
る請求項1または請求項2に記載のグラフィックアクセ
ラレータ。
3. The command transfer control means, when the graphic command received from the SYSTEM-FIFO is a drawing primitive, causes the command dividing means to divide the graphic command, and And distributing to the predetermined graphics processor of the geometry engine, and transferring the graphic command to all the graphics processors of the geometry engine when the graphic command received from the SYSTEM-FIFO is not a drawing primitive. The graphic accelerator according to claim 1 or 2.
【請求項4】 前記コマンド転送制御手段が、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブである場合に、該グ
ラフィックコマンドを前記コマンド分割手段に分割さ
せ、かつ分割した前記グラフィックコマンドを前記ジオ
メトリエンジンの所定の前記グラフィックプロセッサに
分配し、 前記SYSTEM−FIFOから受け取った前記グラフ
ィックコマンドが描画プリミティブでない場合に、該グ
ラフィックコマンドを前記ジオメトリエンジンの全ての
前記グラフィックプロセッサに転送し、 前記コマンド分割手段が、 前記グラフィックコマンドのプリミティブの種類と属性
とに基づいて該グラフィックコマンドの分割サイズを決
定し分割することを特徴とする請求項1または請求項2
に記載のグラフィックアクセラレータ。
4. The command transfer control means, when the graphic command received from the SYSTEM-FIFO is a drawing primitive, causes the command dividing means to divide the graphic command, and Distributing to a predetermined graphics processor of a geometry engine, if the graphics command received from the SYSTEM-FIFO is not a drawing primitive, transferring the graphics command to all the graphics processors of the geometry engine; And determining a division size of the graphic command based on a primitive type and an attribute of the graphic command and dividing the graphic command.
Graphics accelerator as described in.
JP8344570A 1996-12-09 1996-12-09 Graphic accelerator Pending JPH10171766A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8344570A JPH10171766A (en) 1996-12-09 1996-12-09 Graphic accelerator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8344570A JPH10171766A (en) 1996-12-09 1996-12-09 Graphic accelerator

Publications (1)

Publication Number Publication Date
JPH10171766A true JPH10171766A (en) 1998-06-26

Family

ID=18370299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8344570A Pending JPH10171766A (en) 1996-12-09 1996-12-09 Graphic accelerator

Country Status (1)

Country Link
JP (1) JPH10171766A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
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 (en) * 2004-12-17 2008-08-07 エヌヴィディア コーポレイション Graphic processor with integrated radio circuit
JP2011175656A (en) * 2006-05-11 2011-09-08 Panasonic Corp Processing device
WO2021157315A1 (en) * 2020-02-05 2021-08-12 株式会社ソニー・インタラクティブエンタテインメント Graphics processor and information processing system

Cited By (7)

* Cited by examiner, † Cited by third party
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 (en) * 2004-12-17 2008-08-07 エヌヴィディア コーポレイション Graphic processor with integrated radio circuit
US7843458B2 (en) 2004-12-17 2010-11-30 Nvidia Corporation Graphics processor with integrated wireless circuit
TWI409636B (en) * 2004-12-17 2013-09-21 Nvidia Corp Graphics processor with integrated wireless circuits
JP2011175656A (en) * 2006-05-11 2011-09-08 Panasonic Corp Processing device
WO2021157315A1 (en) * 2020-02-05 2021-08-12 株式会社ソニー・インタラクティブエンタテインメント Graphics processor and information processing system

Similar Documents

Publication Publication Date Title
JP3252329B2 (en) Page image drawing device
US6327050B1 (en) Printing method and apparatus having multiple raster image processors
US7079146B2 (en) Image producing device
EP0817009A2 (en) Three-dimensional graphics accelerator with direct data channels
US20090135190A1 (en) Multimode parallel graphics rendering systems and methods supporting task-object division
US6108722A (en) Direct memory access apparatus for transferring a block of data having discontinous addresses using an address calculating circuit
JP3838086B2 (en) Image processing apparatus and method
JP2000238349A (en) Image forming apparatus and method
JP2007125851A (en) Printing control device, imaging method and storage medium
JPH10171766A (en) Graphic accelerator
JP2007087137A (en) Printing controller, image forming method, and storage medium
JP2000141811A (en) Printer system
EP1532582B1 (en) Method and apparatus for image data processing using image strips and circular addressing arrangement
JPH1131052A (en) Document processing system
US6101290A (en) Bandwidth efficient image transformations on a multiprocessor
US7916151B1 (en) Partial texture loads
JPH08101911A (en) Picture recorder
EP1210691B1 (en) Method, system, and computer program product for overlapping graphics data collection and transmission using a single processor
JP3564327B2 (en) Graphic processing unit
JPH09190539A (en) Image drawing device
JP2006031160A (en) Graphic object processing method
JPH0329048A (en) Data transfer system
JPH0660191A (en) Straight line picture element generator
JPH0962851A (en) Printing device
JP2004102989A (en) Image processing system, image processing method, and medium recording image processing module