JP3681026B2 - 情報処理装置および方法 - Google Patents
情報処理装置および方法 Download PDFInfo
- Publication number
- JP3681026B2 JP3681026B2 JP07493197A JP7493197A JP3681026B2 JP 3681026 B2 JP3681026 B2 JP 3681026B2 JP 07493197 A JP07493197 A JP 07493197A JP 7493197 A JP7493197 A JP 7493197A JP 3681026 B2 JP3681026 B2 JP 3681026B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- data
- unit
- instruction generation
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/509—Offload
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
- Advance Control (AREA)
- Controls And Circuits For Display Device (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、情報処理装置および方法に関し、例えば、複数のCPUがそれぞれ並列に描画命令を生成し、生成された描画命令をCPUの優先順位に従って描画装置に転送することにより、効率的に描画処理を行うようにした情報処理装置および方法に関する。
【0002】
【従来の技術】
近年のLSIの集積度の向上により、1つのLSIに同一の回路を複数個並列に並べて、処理速度を向上させることができるようなった。また、近年のビデオゲームシステムは、中央処理装置と描画装置から構成され、CPUはコントローラからの入力データに基づいて、表示すべき所定のポリゴンを表すデータに対して2次元や3次元の座標変換処理を行い、そのポリゴンを2次元のフレームバッファに描画するための描画命令列(ディスプレイリスト)を作成する。そして、描画装置は、受け取った描画命令列に従って、フレームバッファへのポリゴンの描画を行う。
【0003】
【発明が解決しようとする課題】
しかしながら、並列化による処理能力の向上という効果は、単純操作の繰り返しが多い描画装置により多く働く。そのため、近年では、描画装置による処理に比べて、CPUによる処理の方が相対的に遅くなってきている。さらに、3次元モデルデータの容量を削減するためには、少ない頂点データ(コントロールポイント)から、曲面などの複雑な図形をその都度生成する必要があるが、その処理はCPU側の負荷となる。そのため、描画処理を効率的に行わせることができない課題があった。
【0004】
本発明はこのような状況に鑑みてなされたものであり、複数のCPUに優先順位を設定し、それらを並列に動作させ、優先順位の高いCPUが生成した描画命令列を優先的に処理することにより、効率的に処理を行うことができるようにするものである。
【0005】
【課題を解決するための手段】
請求項1に記載の情報処理装置は、第1の命令を生成する処理を行う第1の生成手段と、第2の命令を生成する処理を行う第2の生成手段と、第1の命令、および第2の命令を所定のタイミングで切り替えて実行する実行手段と、第1の命令を実行手段に転送する第1の転送手段と、第2の命令を実行手段に転送する第2の転送手段とを備え、第2の転送手段は、第1の生成手段が処理中であり、かつ実行手段が待機中であるとき、第2の命令を実行手段に供給し、実行手段は、第2の命令の供給を受けたとき、第2の命令を実行することを特徴とする。
【0006】
請求項5に記載の情報処理方法は、第2の転送手段は、第1の生成手段が処理中であり、かつ実行手段が待機中であるとき、第2の命令を実行手段に供給し、実行手段は、第2の命令の供給を受けたとき、第2の命令を実行することを特徴とする。
【0007】
請求項1に記載の情報処理装置においては、第1の生成手段が、第1の命令を生成する処理を行い、第2の生成手段が、第2の命令を生成する処理を行い、実行手段が、第1の命令、および第2の命令を所定のタイミングで切り替えて実行し、第1の転送手段が、第1の命令を実行手段に転送し、第2の転送手段が、第2の命令を実行手段に転送するとき、第2の転送手段は、第1の生成手段が処理中であり、かつ実行手段が待機中であるとき、第2の命令を実行手段に供給し、実行手段は、第2の命令の供給を受けたとき、第2の命令を実行する。
【0008】
請求項5に記載の情報処理装置においては、第2の転送手段は、第1の生成手段が処理中であり、かつ実行手段が待機中であるとき、第2の命令を実行手段に供給し、実行手段は、第2の命令の供給を受けたとき、第2の命令を実行する。
【0009】
【発明の実施の形態】
図1乃至図3は、本発明の情報処理装置を応用した家庭用TVゲーム機の一例を示している。この家庭用TVゲーム機は、ゲーム機本体2と、このゲーム機本体2に接続可能な操作装置17および記録装置38で構成されている。
【0010】
ゲーム機本体2は、図1乃至図3に示すように、略四角形状に形成され、その中央の位置に、図4に示すような光ディスクの一種であるCD−ROM(compact disc-read only memory)40(ゲーム用媒体に相当するディスク)を装着するディスク装着部3と、ゲーム機本体の適宜位置にゲームを任意にリセットするリセットスイッチ4と、電源のオン/オフをする電源スイッチ5と、ディスクの装着を操作するディスク操作スイッチ6と、所謂ゲームにおける操作を行う操作装置17および所謂ゲームの設定などを記録しておく記録装置38を接続する接続部7A,7Bを有している。
【0011】
接続部7A,7Bは、図2および図3に示すように、2段に形成されている。接続部7A,7Bの上段部には、記録装置38を接続する記録挿入部8が設けられ、下段部には、操作装置17を接続する接続端子挿入部12が設けられている。
【0012】
記録挿入部8は、横方向に長い長方形状の挿入孔と、その内部に記録装置38が挿入されるメモリ用接続端子部(図示せず)を有している。また、図2に示すように、記録挿入部8には、記録装置38が接続されていないときに、メモリ用接続端子部を埃などから保護するシャッタ9が設けられている。なお、記録装置38は、電気的に書換え可能なROMを有しており、所謂ゲームに関連するデータを記録するようになされている。
【0013】
記録装置38を装着する場合、ユーザは、記録装置38の先端でシャッタ9を内側方向に押し、さらに、記録装置38を挿入孔に押し込み、メモリ用接続端子部に接続させる。
【0014】
接続端子挿入部12は、図2に示すように、横方向に長い長方形形状の挿入孔と、操作装置17の接続端子部26を接続する接続端子12Aを有している。
【0015】
操作装置17は、図1に示すように、両手の掌で挟持して5本の指が自由自在に動いて操作できる構造をしており、左右対称に配置された操作部18,19と、操作部18,19の中間部に設けたセレクトスイッチ22およびスタートスイッチ23と、操作部18,19の前面側に配置された操作部24,25と、ゲーム機本体2に接続するための接続端子部26およびケーブル27を有している。
【0016】
図5は、上述のゲーム機本体2の内部の電気的構成の一例を示している。
【0017】
ゲーム機本体2は、メインバス41とサブバス42の2本のバスを有している。これらのバスは、サブバスインタフェース(SBUSIF)43を介して接続されている。
【0018】
メインバス41には、マイクロプロセッサや第1ベクトル処理装置(VPE(vector processing engine)0)などで構成されるメインCPU(central processing unit)44(第2の生成手段)と、RAM(random access memory)で構成されるメインメモリ45(記憶手段)、メインダイレクトメモリアクセスコントローラ(メインDMAC(direct memory access controller))46(第1の転送手段、第2の転送手段)、MPEG(Moving Picture Experts Group)デコーダ(MDEC)47、第2ベクトル処理装置(VPE1)48(第1の生成手段)、およびGPUIF(graphical processing unit interface)72を介して画像処理装置(GPU)49(実行手段)が接続されている。GPU49には、CRTC(CRT controller)84が設けられている。
【0019】
一方、サブバス42には、マイクロプロセッサなどで構成されるサブCPU50、RAMで構成されるサブメモリ51、サブDMAC52、オペレーティングシステムなどのプログラムが記憶されているROM53、音声処理装置(SPU(sound processing unit))54、通信制御部(ATM)55、ディスク装着部3を兼ねるCD−ROMドライブ56、入力部57が接続されている。そして、入力部57の接続端子12Aには、操作装置17が接続される。
【0020】
SBUSIF43は、メインバス41とサブバス42を接続し、メインバス41からのデータをサブバス42に出力するとともに、サブバス42からのデータをメインバス41に出力するようになされている。
【0021】
メインCPU44は、ゲーム機本体2の起動時に、サブバス42に接続されているROM53から、SBUSIF43を介して起動プログラムを読み込み、その起動プログラムを実行し、オペレーティングシステムを動作させるようになされている。
【0022】
また、メインCPU44は、CD−ROMドライブ56を制御し、CD−ROMドライブ56にセットされたCD−ROM40からアプリケーションプログラムやデータを読み出し、メインメモリ45に記憶させるようになされている。
【0023】
また、メインCPU44は、CD−ROM40から読み出した、複数の基本図形(ポリゴン)で構成された3次元オブジェクトのデータ(ポリゴンの頂点(代表点)の座標値など)に対して、第1ベクトル処理装置(VPE0)71(第2の生成手段)と共同して、非定型処理用のデータ(ポリゴン定義情報)を生成するようになされている。第1ベクトル処理装置(VPE0)71は、浮動小数点の実数を演算する複数の演算素子を有し、並列に浮動小数点演算を行うようになされている。
【0024】
即ち、メインCPU44と、第1ベクトル処理装置71は、ジオメトリ処理のうちのポリゴン単位での細かな操作を必要とする処理、例えば、木の葉が風で揺れる様子や、自動車のフロントウィンドウの雨の滴等を表すポリゴンのデータを生成するような処理を行うようになされている。そして、演算された頂点情報やシェーディングモード情報等のポリゴン定義情報をパケットとして、メインバス41を介してメインメモリ45に供給するようになされている。
【0025】
ポリゴン定義情報は、描画領域設定情報とポリゴン情報とからなる。そして、描画領域設定情報は、描画領域のフレームバッファアドレスにおけるオフセット座標と、描画領域の外部にポリゴンの座標があった場合に、描画をキャンセルするための描画クリッピング領域の座標からなる。また、ポリゴン情報は、ポリゴン属性情報と頂点情報とからなり、ポリゴン属性情報は、シェーディングモード、αブレンディングモード、およびテクスチャマッピングモード等を指定する情報であり、頂点情報は、頂点描画領域内座標、頂点テクスチャ領域内座標、および頂点色等の情報である。
【0026】
一方、第2ベクトル処理装置(VPE1)48は、第1ベクトル処理装置71の場合と同様に、浮動小数点の実数を演算する複数の演算素子を有し、並列に浮動小数点演算を行うようになされている。そして、操作装置17の操作とマトリクスの操作で画像を生成できるもの、即ち、VPE1においてプログラムが可能な程度の比較的簡単な処理(定型処理)用のデータ(ポリゴン定義情報)を生成するようになされている。例えば、ビルや車等の簡単な形状の物体に対する透視変換、平行光源計算、2次元曲面生成等の処理を行うようになされている。そして、生成したポリゴン定義情報をGPUIF72に供給するようになされている。
【0027】
GPUIF72は、メインメモリ45よりメインバス41を介して供給されるメインCPU44からのポリゴン定義情報と、第2ベクトル処理装置48より供給されるポリゴン定義情報とを、衝突しないように調停しながら、GPU49に供給するようになされている。
【0028】
GPU49は、GPUIF72を介して供給されたポリゴン定義情報に基づいて、フレームメモリ58にポリゴンを描画するようになされている。GPU49は、フレームメモリ58をテクスチャメモリとしても使用できるため、フレームメモリ上のピクセルイメージをテクスチャとして、描画するポリゴンに貼り付けることができる。
【0029】
メインDMAC46は、メインバス41に接続されている各回路を対象として、DMA転送などの制御を行うようになされている。また、メインDMAC46は、SBUSIF43の状態に応じて、サブバス42に接続されている各回路を対象としてDMA転送などの制御を行うこともできる。また、MDEC47は、メインCPU44と並列に動作し、MPEG(Moving Picture Experts Group)方式あるいはJPEG(Joint Photographic Experts Group)方式等で圧縮されたデータを伸張するようになされている。
【0030】
サブCPU50は、ROM53に記憶されているプログラムに従って各種動作を行うようになされている。サブDMAC52は、SBUSIF43がメインバス41とサブバス42を切り離している状態においてのみ、サブバス42に接続されている各回路を対象としてDMA転送などの制御を行うようになされている。
【0031】
SPU54は、サブCPU50やサブDMAC52から供給されるサウンドコマンドに対応して、サウンドメモリ59から音声データを読み出してオーディオ出力として出力するようになされている。
【0032】
通信制御部(ATM)55は、公衆回線等に接続され、その回線を介してデータの送受信を行うようになされている。
【0033】
入力部57は、操作装置17を接続する接続端子部12A、他の装置(図示せず)からの画像データを受け取るビデオ入力回路82、および他の装置からの音声データを受け取るオーディオ入力回路83を有している。
【0034】
図6は、図5に示したメインCPU44、メインメモリ45、第2ベクトル処理装置(VPE1)48、およびGPU49の詳細な構成を示すブロック図である。
【0035】
メインCPU44を構成するCPUコア(CORE)94は、所定の命令を実行するようになされている。命令(Instruction)キャッシュ(I$)は、CPUコア94に供給する命令を一時的に保持するようになされている。高速なメモリであるSPR(スクラッチメモリ(scratch pad ram))96は、CPUコア94による処理結果を記憶するようになされている。データキャッシュ(D$)は、CPUコア94が処理を実行するために用いるデータを一時的に記憶するようになされている。
【0036】
第1ベクトル処理装置(VPE0)71を構成する浮動小数点ベクトルプロセッサユニットおよび内蔵メモリ(VU−MEM)101は、64ビット長のマイクロプログラムで動作する浮動小数点ベクトルプロセッサユニット(VU)および内蔵メモリ(MEM)より構成され、後述するマイクロメモリ(microMEM)98に記憶されているプログラムに従って、内部レジスタと内蔵メモリに記憶されたデータを高速演算するようになされている。
【0037】
PKE102は、後述するメインDMAC46の制御により、転送されてくるVUのマイクロコードをマイクロメモリ98に展開したり、パックされたデータのパケットをVU−MEM101の内蔵メモリ(MEM)に展開するようになされている。FMAC(Floating Maltiple Adder Calculation Unit)99は、浮動小数点演算を実行するようになされている。DIV(わり算器(Divider))100は、わり算を実行するようになされている。そして、上述したように、メインCPU44には、第1ベクトル処理装置(VPE0)が内蔵されており、共同して非定型処理を行うようになされている。
【0038】
第2ベクトル処理装置48を構成する浮動小数点ベクトルプロセッサユニットおよび内蔵メモリ(VU−MEM)107は、64ビット長のマイクロプログラムで動作する浮動小数点ベクトルプロセッサユニット(VU)および内蔵メモリ(MEM)より構成され、後述するマイクロメモリ(microMEM)103に記憶されているプログラムに従って、内部レジスタと内蔵メモリに記憶されたデータを高速演算するようになされている。
【0039】
PKE108は、メインDMAC46の制御により、転送されてくるVUのマイクロコードをマイクロメモリ103に展開したり、パックされたデータのパケットをVU−MEM107の内蔵メモリに展開するようになされている。FMAC(Floating Maltiple Adder Calculation Unit)104は、浮動小数点演算を実行するようになされている。DIV(わり算器(Divider))106は、わり算を実行するようになされている。そして、メインメモリ45より供給されたデータに対して、定型処理を施し、処理結果をGPUIF72を介してGPU49に供給するようになされている。
【0040】
メインメモリ45は、3次元オブジェクトのデータを記憶し、必要に応じて、第1ベクトル処理装置71,第2ベクトル処理装置48にそれぞれ供給するようになされている。また、メインCPU44と第1ベクトル処理装置(VPE0)71とが共同して作成したディスプレイリストを、メインメモリ45が内蔵するMFIFO(MemoryFIFO)に一旦、記憶させ、メインバス41を介してGPUIF72に供給するようになされている。これは、メインCPU44および第1ベクトル処理装置71の方が、第2ベクトル処理装置48より優先順位が低いため、第2ベクトル処理装置48がアイドル状態になるまでディスプレイリストを保持しておく必要があるからである。
【0041】
また、CPU44および第1ベクトル処理装置71は、共同して第2ベクトル処理装置48が処理するためのマトリクスを作成し、メインメモリ45に記憶させるようになされている。そして、第2ベクトル処理装置48は、このマトリクスを用いて、ディスプレイリストを作成するようになされている。
【0042】
GPU49は、第1ベクトル処理装置71よりGPUIF72を介して供給されれる非定型処理用のディスプレイリストと、第2ベクトル処理装置48より供給される定型処理用のディスプレイリストを処理するために、それぞれに対応する描画時のクリップ範囲や描画オフセット等のコンテクスト(描画設定条件)を保持するようになされている。CG0は非定型処理用のグラフィックコンテクストであり、CG1は、定型処理用のグラフィックコンテクストである。
【0043】
例えば、DMAC109の制御により、メインメモリ45からメインバス41を介して第1ベクトル処理装置71に供給されたマイクロコードやパックされたデータ(3次元オブジェクトのデータなど)のパケットは、PKE102により、マイクロメモリ98や内蔵メモリに展開される。そして、FMAC99およびDIV100により、3次元オブジェクトのデータに対して、マトリクス演算、座標変換、透視変換等の演算が施される。また、このとき、CPUコア94と共に、より複雑な処理が施される。例えば、木の葉が風に揺れる様子や、自動車のフロントウィンドウを雨の滴が垂れる様子を描画するためのディスプレイリストが作成される。
【0044】
このようにして作成された2次元のオブジェクトを画面に描画するためのディスプレイリスト(Complex Stream)は、メインバス41を介して一旦メインメモリ45のMFIFOに記憶され、GPUIF72に供給される。
【0045】
一方、メインDMAC46の制御により、メインメモリ45からメインバス41を介して第2ベクトル処理装置48に供給されたマイクロコードやパックされたデータ(3次元オブジェクトのデータなど)のパケットは、PKE108により、マイクロメモリ103や内蔵メモリに展開される。そして、FMAC104およびDIV106により、メインメモリ45よりメインバス41を介して供給される、メインCPU44および第1ベクトル処理装置71が作成したマトリクスやコンテクストに基づいて、3次元オブジェクトのデータに対して、マトリクス演算、座標変換、透視変換等の演算が施される。ここでは、比較的簡単な定型処理が施される。
【0046】
そして、このようにして作成された2次元のオブジェクトを画面に描画するためのディスプレイリスト(Simple Stream)は、メインバス41を介してGPUIF72に供給される。GPUIF72は、これら2つのストリームを調停し、それらを時分割でGPU49に転送する。
【0047】
そして、GPU49により、GPUIF72より供給されたディスプレイリストに基づいて、描画処理が実行され、フレームメモリ58にポリゴンが描画される。ここで、ディスプレイリストがメインCPU44および第1ベクトル処理装置71によってメインメモリ45上に作成され、メインバス41を介して供給されたものである場合、GPU49においては、グラフィックコンテクスト(GC)0を用いて描画処理が行われ、ディスプレイリストが第2ベクトル処理装置48によって作成されたものである場合、グラフィックコンテクスト(GC)1を用いて描画処理が行われる。
【0048】
フレームメモリ58に描画されたポリゴンは、CRTC84の制御により、対応するビデオ信号に変換された後、出力される。
【0049】
図7は、2つのディスプレイリストが処理されるタイミングを示す図である。図7におけるGeometry Subsystem0は、図6のブロック図においては第2ベクトル処理装置48に対応し、Geometry Subsystem1はメインCPU44および第1ベクトル処理装置71に対応している。そして、Rendering SubsystemはGPU49に対応している。
【0050】
図7(A)は、プロセッサが1つの場合の処理手順を示している。即ち、Geometry Subsystem0がディスプレイリスト(List#0-1)を作成すると、それをRendering Subsystemに供給し、次のディスプレイリスト(List#0-2以降のディスプレイリスト)の作成を続ける。Rendering Subsystemは、供給されたディスプレイリスト(List#0-1)に従って、描画処理を実行する。描画処理が終了した時点で、Geometry Subsystem0が次のディスプレイリスト(List#0-2)の作成をまだ行っている場合、Rendering SubsystemはGeometry Subsystem0がディスプレイリスト(List#0-2)の作成を終了し、その供給を受けるまでの間、アイドル状態となる。
【0051】
以下同様にして、Rendering Subsystemによる描画処理が終了しても、Geometry Subsystem0による次のディスプレイリストの作成が終了していない場合、Rendering Subsystemは、次のディスプレイリストがGeometry Subsystem0から供給されるまでの間、アイドル状態となる。
【0052】
図7(B)は、プロセッサが2つの場合の処理手順を示している。即ち、Geometry Subsystem0がディスプレイリスト(List#0-1)を作成する間、Rendering Subsystemはアイドル状態であるので、Geometry Subsystem1が既に作成し、メインメモリ45に記憶させておいたディスプレイリスト(List#1-1)をRendering Subsystemに供給する。Geometry Subsystem1からのディスプレイリスト(List#1-1)の供給を受けたRendering Subsystemは、ディスプレイリストに付加されて供給されたGeometry Subsystem1に対応するコンテクストに基づいて、描画処理を実行する。
【0053】
Geometry Subsystem0によるディスプレイリスト(List#0-1)の作成が終了すると、Geometry Subsystem1は、次のディスプレイリスト(List#1-2)のRendering Subsystemへの供給を中止する。これにより、Geometry Subsystem0は、作成したディスプレイリスト(List#0-1)をRendering Subsystemに供給するとともに、次のディスプレイリスト(List#0-2)の作成を開始する。そして、Rendering Subsystemは、供給されたディスプレイリスト(List#0-1)に従って、描画処理を実行する。
【0054】
Rendering Subsystemによるディスプレイリスト(List#0-1)の描画処理が終了したとき、Geometry Subsystem0は、まだ、次のディスプレイリスト(List#0-2)を作成中であり、Rendering Subsystemはアイドル状態であるので、Geometry Subsystem1は、次のディスプレイリスト(List#1-2)をRendering Subsystemに供給する。Geometry Subsystem1からのディスプレイリスト(List#1-2)の供給を受けたRendering Subsystemは、そのディスプレイリスト(List#1-2)に従って、描画処理を開始する。
【0055】
以下同様にして、Geometry Subsystem1は、Geometry Subsystem0が処理中であり、Rendering Subsystemがアイドル中のときだけ、作成したディスプレイリストをRendering Subsystemに供給する。これにより、複数のプロセッサが作成したディスプレイリストを、Rendering Subsystemに効率的に処理させることが可能となる。
【0056】
例えば、座標変換処理を補強するために、CPUとは別のサブプロセッサや座標変換装置を設けて、複数の処理装置が共同して1つの描画装置(GPU49)にディスプレイリストを送出するようにした場合、描画装置に送出するディスプレイリストの容量は膨大なため、短い時間間隔で、描画装置を使用するCPUを切り替えるようにしないと、各CPUのローカルメモリがオーバフローする。そのため、図7(B)に示したように、各CPUに予め優先順位を設定し、高い優先順位のCPU(マスタCPU)(図6においては、第2ベクトル処理装置48)が描画装置へ送出するリストがなくなったら、直ちにアクセス権を次のCPU(スレーブCPU)(図6においては、メインCPU44と第1ベクトル処理装置71)へ譲るようにする。
【0057】
スレーブCPUは、マスタCPUがディスプレイリストを作成して、それを描画装置に転送する準備ができた時点で、まだ、送出すべきディスプレイリストが残っていても、すぐに処理を中断し、描画装置へのアクセス権をマスタCPUに返す。
【0058】
マスタCPUには、高速に処理を実行するがローカルメモリの容量が比較的小さいものが割り当てられ、スレーブCPUにはローカルメモリの容量は比較的大きいが、処理速度が比較的遅いものが割り当てられる。
【0059】
図8に示すように、スレーブCPUのさらにスレーブとなるCPUが接続される場合もある。このような場合、特に低次のスレーブCPUは、大きなディスプレイリストを記憶するためのさらに大きな容量のローカルメモリを必要とする。このため、低次のスレーブCPUは、通常、メインメモリを抱えるメインCPUが受け持つようにしている。
【0060】
描画装置が描画を行うためには、ディスプレイリストに記述された頂点情報と同時に、上述したように、描画時のクリップ範囲や描画オフセット等のコンテクストと呼ばれる環境パラメータ(描画設定条件)が必要である。Rendering Subsystemは、各Geometry Subsystemより供給されたディスプレイリストに基づいた描画処理を、そのディスプレイリストを供給したGeometry Subsystemに対応するコンテクストに従って行う。しかしながら、ディスプレイリストを供給するGeometry Subsystemが切り替わる度に、コンテクストを再設定することは非常に面倒である。そこで、Rendering Subsystem側が、Geometry Subsystemの個数分のコンテクストを保持するようにしている。
【0061】
図7に示したように、コンテクストは、ディスプレイリストに付加され、例えば、描画するオブジェクト毎にGPU49に供給される。従って、GPU49は、オブジェクト毎に、そのオブジェクトに対応するコンテクストに基づいて、描画処理を行うことができる。
【0062】
Geometry SubsystemとRendering Subsystemは、メインバス41を構成するデータバスとアドレスバスを共有し、アドレスバスを介して現在アクセスしているGeometry SubsystemのIDを、またデータバスを介して現在アクセスしているGeometry Subsystemが作成したディスプレイリストをそれぞれRendering Subsystemに供給する。Rendering Subsystemは、供給されたIDに対応するコンテクストを選択し、このコンテクストに基づいてディスプレイリストを解釈し、フレームバッファへの描画を行う。
【0063】
以上のように、複数のプロセッサがその優先順位に従って描画装置を制御するようにすることにより、ディスプレイリストを保持するローカルメモリの容量を、プロセッサ毎に最小限にすることができる。これにより、ローカルメモリにコストをかけることなく、ディスプレイリストの作成処理を並列化することができる。また、コンテクストを各描画処理装置に保持させることにより、コンテクストの切り替え時におけるオーバヘッドを減少させることができる。
【0064】
次に、複数のプロセッサがデータバスとメインメモリを時分割で共有し、データの転送を行う場合において、データの制御を、転送するデータ自身に埋め込まれたメタ命令に従って行う方法について説明する。
【0065】
図9は、メタ命令のフォーマット例を示している。メタ命令は128ビットで構成され、そのうちの64ビットのみが有効とされる。最初の16ビットには、転送すべきデータのサイズがセットされる。24ビット目乃至31ビット目には、メタ命令のIDがセットされる。そして、32ビット目乃至63ビット目には、転送すべきデータが記憶されているアドレス、または、次に読み出すべきメタ命令が記憶されているアドレスがセットされる。
【0066】
データの転送は、データに埋め込まれたメタ命令のIDに応じて、以下のように制御される。
【0067】
IDが「cnt」である場合、メタ命令の次のQWCワードを転送した後、パケットの次の番地のメタ命令を実行する。IDが「cnts」である場合、メタ命令の次のQWCワードをストール制御をしながら転送した後、パケットの次の番地のメタ命令を実行する。IDが「next」の場合、メタ命令に続くQWCワードを転送した後、アドレスで示される番地に記憶されているメタ命令が実行される。
【0068】
また、IDが「ref」の場合、アドレスで表される番地からQWCワードを転送した後、メタ命令の次の番地のメタ命令を実行する。IDが「refs」の場合、ADDR番地からQWCワードをストール制御を行いながら転送した後、メタ命令の次の番地のメタ命令を実行する。
【0069】
IDが「call」の場合、メタ命令に続くQWCワードを転送した後、パケットの次の番地をレジスタにプッシュして、アドレスで示される番地に記憶されているメタ命令を実行する。IDが「ret」の場合、メタ命令に続くQWCワードを転送した後、レジスタからポップした番地に記憶されているメタ命令を実行する。IDが「end」の場合、メタ命令に続くQWCワードを転送した後、処理を終了する。
【0070】
図10は、メタ命令のIDが「next」の場合の動作を示している。最初に、メインDMAC46は、レジスタDn_TADR(Tag Address)によって指定されたアドレスから、1ワードをメタ命令ワードとして読み出す。この例の場合、そのメタ命令は「NEXT ADDR=ADDR2,LEN=8」であるので、続く8qword(quadlet word)(1qword=128ビット)のデータが転送された後、アドレスADDR2に記憶されているメタ命令「NEXT ADDR=ADDR1,LEN=2」が実行される。
【0071】
これにより、続く2qwordのデータがDMACの制御により転送された後、アドレスADDR1に記憶されているメタ命令「END ADDR=−,LEN=8」が実行される。即ち、続く8qwordのデータが転送された後、処理を終了する。
【0072】
図11は、メタ命令のIDが「REF」の場合の動作を示している。最初に、メインDMAC46は、レジスタDn_TADRによって指定されたアドレスから、1ワードをメタ命令ワードとして読み出す。この例の場合、「REF ADDR=ADDR2,LEN=2」であるので、アドレス2より以降に記憶されている2qwordのデータが転送され、次のメタ命令が実行される。
【0073】
即ち、メタ命令「REF ADDR=ADDR1,LEN=8」が実行され、ADDR1より以降に記憶されている8qwordのデータが転送され、次のメタ命令が実行される。即ち、メタ命令「END ADDR=−,LEN=8」が実行され、続く8qwordのデータが転送される。
【0074】
図12は、メタ命令のIDが「CALL」の場合の動作を示している。最初に、メインDMAC46は、レジスタDn_TADRによって指定されたアドレスから、1ワードをメタ命令ワードとして読み出す。この例の場合、「CALL ADDR=ADDR1,LEN=0」であるので、アドレス1に記憶されているメタ命令が実行される。即ち、メタ命令「CALL ADDR=ADDR2,LEN=8」が実行され、続く8qwordのデータが転送された後、ADDR2に記憶されているメタ命令が実行される。
【0075】
即ち、メタ命令「RET ADDR=−,LEN=8」が実行され、続く8qwordのデータが転送された後、リターンし、メタ命令「RET ADDR=−,LEN=0」が実行される。これにより、次のメタ命令「CALL ADDR=ADDR2,LEN=8」が実行され、続く8qwordのデータが転送された後、ADDR2に記憶されているメタ命令が再度実行される。
【0076】
即ち、「RET ADDR=−,LEN=8」が実行され、続く8qwordのデータが転送された後、リターンし、次にメタ命令「END ADDR=−,LEN=0」が実行され、処理を終了する。
【0077】
このように、データに埋め込まれたメタ命令に従って、データ転送が制御される。
【0078】
図13は、上述したメタ命令によって、データの転送が制御される様子を示す図である。CPU44がディスプレイリスト(DisplayList0)を作成している間に、1フレーム前に作成されたディスプレイリスト(DisplayList1)が第2ベクトル処理装置(VPE1)48に転送される。
【0079】
まず、メインCPU44および第1ベクトル処理装置71が、図13に示すように、IDが「NEXT」のメタ命令、コンテクスト、IDが「REF」のメタ命令、IDが「REF」のメタ命令、マトリクス、IDが「REF」のメタ命令、マトリクス、IDが「REF」のメタ命令、マトリクス、IDが「REF」のメタ命令、IDが「REF」のメタ命令、IDが「REF」のメタ命令、マトリクス、IDが「RET」のマトリクスからなるディスプレイリストを作成する。
【0080】
その間、1フレーム前に作成されたディスプレイリスト(DisplayList1)が第2ベクトル処理装置48に転送される。即ち、IDが「NEXT」のメタ命令が実行され、続くコンテクストが第2ベクトル処理装置48に転送される。次に、IDが「REF」のメタ命令が実行され、メインメモリ45内のオブジェクトデータベースの中のProgram0が参照される。このように、フレーム間で内容が変わらないデータは、ディスプレイリストからメタ命令を使用して参照され、ディスプレイリスト間で共有される。このため、ディスプレイリストの作成においては、フレーム毎に変化する位置データ(マトリクス)の更新だけとなる。
【0081】
なお、オブジェクトデータベースには、3次元物体を記述するための3次元データ(Vertex of Object)、オブジェクトデータを解釈するためのプログラム、およびオブジェクトの装飾にテクスチャマッピングを行う場合に、テクスチャとなる画像データ(Texture Image)が格納されている。
【0082】
次に、IDが「REF」の次のメタ命令が実行され、3次元座標データ(オブジェクトの頂点座標データ)(Vertex of Object0)が参照される。次に、マトリクスが第2ベクトル処理装置48に転送され、IDが「REF」の次のメタ命令が実行され、3次元座標データ(Vertex of Object1)が参照される。次に、マトリクスが第2ベクトル処理装置48に転送される。
【0083】
そして、IDが「REF」の次のメタ命令が実行され、再び3次元座標データ(Vertex of Object1)が参照され、マトリクスが第2ベクトル処理装置48に転送される。そして、IDが「REF」の次のメタ命令が実行され、プログラム(Program3)が参照される。次に、IDが「REF」の次のメタ命令が実行され、テクスチャとなる画像データが転送される。
【0084】
テクスチャとなる画像データがフレームメモリ58に記憶されていない場合、オブジェクトデータ(Vertex of Object4)の転送に先立って、テクスチャとなる画像データがフレームメモリ58に転送される。テクスチャとなる画像データがMDEC47からの解凍データやサブバス42からの転送データであり、フレーム毎に変化するものである場合、後述するように、ストール機能が用いられ、データ転送の同期が取られる。
【0085】
画像データが転送される間、第2ベクトル処理装置48の処理が一旦停止するので、この期間を最小にするために、画像データの転送期間は、他のDMAチャンネルを停止する。この指定もメタ命令の所定の制御ビットにより行うことができる。例えば、図9に示したメタ命令の24ビット目および25ビット目にこの制御ビットをセットすることができる。
【0086】
次に、IDが「REF」の次のメタ命令が実行され、3次元座標データ(Vertex of Object4)が参照される。次に、マトリクスが第2ベクトル処理装置48に転送され、IDが「RET」のメタ命令が実行され、処理を終了する。
【0087】
図14は、ストール機能を説明するための図である。デバイス0(DEV0)からメインメモリにデータの転送が行われ、メインメモリからデバイス1(DEV1)にデータの転送が行われる場合、メインメモリからデバイス1にデータが転送されるときのメインメモリ上での転送アドレスが、デバイス0からメインメモリにデータが転送されるときのメインメモリ上での転送アドレスを越える間、メインメモリからデバイス1へのデータの転送をストールする。
【0088】
図13に示した例の場合、メインメモリ45から第2ベクトル処理装置48にテクスチャとなる画像データを転送するときのメインメモリ45上での転送アドレスが、MDEC47からメインメモリ45にテクスチャとなる画像データの転送が行われるときのメインメモリ45上での転送アドレスを越える間、メインメモリ45から第2ベクトル処理装置48へのテクスチャとなる画像データの転送をストールする。このようにして、データの同期が取られる。
【0089】
以上のように、メインDMAC46が、リストを構成するメタ命令を読み出し、それに従って、データを各プロセッサに分配する。従って、データを生成する時点で、転送の順序や形態、あるいは転送の優先順位を予めデータの中にプログラムすることにより、データの性質に依存して、最適な転送を行うことができる。また、データの転送順序をリスト形式で予め記述しておくことにより、メモリ内に無駄な作業用のコピーデータを持つ必要がなく、無駄なメモリアクセスを軽減するとともに、ディスプレイリストのサイズを削減することができる。
【0090】
また、ディスプレイリストのうち、フレーム毎に変更する部分だけを2重化して個別に記憶し、その他の部分は共通のメモリ領域に記憶させるようにすることにより、ディスプレイリストを記憶するためのメモリ容量を削減することができる。従って、少ないメモリ容量で多くのディスプレイリストを記憶することができる。
【0091】
さらに、データに埋め込まれたメタ命令に従ってデータの転送が行われるため、複数のプロセッサ間でのデータの読み出しおよび書き込みの同期を取ることを容易にすることができ、メモリ内にダブルバッファを構成することなく、複数のプロセッサがメモリを共有するようにすることができる。
【0092】
なお、上記実施の形態においては、CD−ROMにデータを記憶させるようにしたが、他の記録媒体を用いるようにすることも可能である。
【0093】
【発明の効果】
請求項1に記載の情報処理装置、および請求項5に記載の情報処理方法によれば、第2の転送手段は、第1の生成手段が処理中であり、かつ実行手段が待機中であるとき、第2の命令を実行手段に供給し、実行手段は、第2の命令の供給を受けたとき、第2の命令を実行するようにしたので、複数のプロセッサが効率的に実行手段を制御することができる。
【図面の簡単な説明】
【図1】本発明の情報処理装置を応用した家庭用ゲーム機の一例を示す平面図である。
【図2】図1の家庭用ゲーム機1の正面図である。
【図3】図1の家庭用ゲーム機1の側面図である。
【図4】図1の家庭用ゲーム機1で再生されるCD−ROMの一例を示す平面図である。
【図5】図1の家庭用ゲーム機1の内部の電気的構成例を示すブロック図である。
【図6】図5のメインDMAC46、メインCPU44、第2ベクトル処理装置48、メインメモリ45、GPU49の詳細な構成例を示すブロック図である。
【図7】複数のプロセッサが生成するディスプレイリストの処理手順を示す図である。
【図8】3つのプロセッサがGPU49を制御するようにした場合の家庭用ゲーム機1の他の構成例を示すブロック図である。
【図9】メタ命令のフォーマット例を示す図である。
【図10】メタ命令に従って、データ転送が行われる手順を説明する図である。
【図11】メタ命令に従って、データ転送が行われる手順を説明する図である。
【図12】メタ命令に従って、データ転送が行われる手順を説明する図である。
【図13】ディスプレイリストに従って、データ転送が行われる手順を説明する図である。
【図14】ストール制御を説明する図である。
【符号の説明】
1 家庭用ゲーム機, 2 ゲーム機本体, 3 ディスク装着部, 17 操作装置, 40 CD−ROM, 41 メインバス, 42 サブバス, 43 SBUSIF, 44 メインCPU, 45 メインメモリ, 46 メインDMAC, 47 MPEGデコーダ, 48 第2ベクトル処理装置,49 画像処理装置(GPU), 50 サブCPU, 51 サブメモリ,52 サブDMAC, 53 ROM, 56 CD−ROMドライブ, 58 フレームメモリ, 94 CPUコア, 98,103 マイクロメモリ,99,104 FMAC, 100,106 DIV, 101,107 VU−MEM, 102,108 PKE
Claims (6)
- 第1の命令生成手段と、第2の命令生成手段と、供給された命令を実行する実行手段と、前記第1の命令生成手段からの命令と前記第2の命令生成手段からの命令とを調停して前記実行手段に供給する調停手段とを備え、
前記調停手段は、前記第1の命令生成手段からの命令を優先的に前記実行手段に供給し、前記第1の命令生成手段が処理中であり、かつ、前記実行手段が待機中であるとき、前記第2の命令生成手段からの命令を前記実行手段に供給することを特徴とする情報処理装置。 - 前記実行手段は、前記第1の命令生成手段からの命令を実行する際に用いる第1のパラメータおよび前記第2の命令生成手段からの命令を実行する際に用いる第2のパラメータを保持し、
供給された命令を生成した命令生成手段に応じて、用いるパラメータを切り替えることを特徴とする請求項1に記載の情報処理装置。 - 前記第2の命令生成手段が生成した命令を記憶する記憶手段をさらに備え、
前記調停手段は、前記記憶手段に記憶された命令を前記実行手段に供給することを特徴とする請求項1に記載の情報処理装置。 - 前記第1の命令生成手段は、ベクトル処理装置で構成され、
前記第2の命令生成手段は、ベクトル処理装置およびマイクロプロセッサで構成されることを特徴とする請求項1に記載の情報処理装置。 - 第1の命令生成手段と、第2の命令生成手段と、供給された命令を実行する実行手段と、前記第1の命令生成手段からの命令と第2の前記命令生成手段からの命令とを調停して前記実行手段に供給する調停手段とを備えた情報処理装置における情報処理方法であって、
前記調停手段は、前記第1の命令生成手段からの命令を優先的に前記実行手段に供給し、前記第1の命令生成手段が処理中であり、かつ、前記実行手段が待機中であるとき、前記第2の命令生成手段からの命令を前記実行手段に供給することを特徴とする情報処理方法。 - 供給された命令を実行する実行手段に命令を供給する演算処理装置であって、
第1の命令生成手段と、第2の命令生成手段と、前記第1の命令生成手段からの命令と第2の前記命令生成手段からの命令とを調停して前記実行手段に供給する調停手段とを備え、
前記調停手段は、前記第1の命令生成手段からの命令を優先的に前記実行手段に供給し、前記第1の命令生成手段が処理中であり、かつ、前記実行手段が待機中であるとき、前記第2の命令生成手段からの命令を前記実行手段に供給することを特徴とする演算処理装置。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07493197A JP3681026B2 (ja) | 1997-03-27 | 1997-03-27 | 情報処理装置および方法 |
AU59464/98A AU730714B2 (en) | 1997-03-27 | 1998-03-23 | Information processing apparatus and information processing method |
TW087104313A TW389879B (en) | 1997-03-27 | 1998-03-23 | Information processing apparatus and information processing method |
US09/048,140 US6119217A (en) | 1997-03-27 | 1998-03-25 | Information processing apparatus and information processing method |
DE69827544T DE69827544T2 (de) | 1997-03-27 | 1998-03-25 | Datenverarbeitungsgerät und -Verfahren |
EP98302259A EP0867809B1 (en) | 1997-03-27 | 1998-03-25 | Information processing apparatus and methods |
CA002233391A CA2233391A1 (en) | 1997-03-27 | 1998-03-26 | Information processing apparatus and information processing method |
CN98108283A CN1107287C (zh) | 1997-03-27 | 1998-03-27 | 信息处理装置和信息处理方法 |
KR10-1998-0010672A KR100466903B1 (ko) | 1997-03-27 | 1998-03-27 | 정보처리장치및정보처리방법 |
US09/613,493 US6304952B1 (en) | 1997-03-27 | 2000-07-11 | Information processing apparatus and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07493197A JP3681026B2 (ja) | 1997-03-27 | 1997-03-27 | 情報処理装置および方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005091502A Division JP4088297B2 (ja) | 2005-03-28 | 2005-03-28 | プロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10269351A JPH10269351A (ja) | 1998-10-09 |
JP3681026B2 true JP3681026B2 (ja) | 2005-08-10 |
Family
ID=13561604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP07493197A Expired - Fee Related JP3681026B2 (ja) | 1997-03-27 | 1997-03-27 | 情報処理装置および方法 |
Country Status (9)
Country | Link |
---|---|
US (2) | US6119217A (ja) |
EP (1) | EP0867809B1 (ja) |
JP (1) | JP3681026B2 (ja) |
KR (1) | KR100466903B1 (ja) |
CN (1) | CN1107287C (ja) |
AU (1) | AU730714B2 (ja) |
CA (1) | CA2233391A1 (ja) |
DE (1) | DE69827544T2 (ja) |
TW (1) | TW389879B (ja) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3681026B2 (ja) * | 1997-03-27 | 2005-08-10 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置および方法 |
US6389527B1 (en) * | 1999-02-08 | 2002-05-14 | Kabushiki Kaisha Toshiba | Microprocessor allowing simultaneous instruction execution and DMA transfer |
US7111155B1 (en) | 1999-05-12 | 2006-09-19 | Analog Devices, Inc. | Digital signal processor computation core with input operand selection from operand bus for dual operations |
US6859872B1 (en) | 1999-05-12 | 2005-02-22 | Analog Devices, Inc. | Digital signal processor computation core with pipeline having memory access stages and multiply accumulate stages positioned for efficient operation |
US6820189B1 (en) | 1999-05-12 | 2004-11-16 | Analog Devices, Inc. | Computation core executing multiple operation DSP instructions and micro-controller instructions of shorter length without performing switch operation |
US7107302B1 (en) | 1999-05-12 | 2006-09-12 | Analog Devices, Inc. | Finite impulse response filter algorithm for implementation on digital signal processor having dual execution units |
US6452600B1 (en) * | 1999-10-28 | 2002-09-17 | Nintendo Co., Ltd. | Graphics system interface |
US6807620B1 (en) | 2000-02-11 | 2004-10-19 | Sony Computer Entertainment Inc. | Game system with graphics processor |
JP3543942B2 (ja) | 2000-03-02 | 2004-07-21 | 株式会社ソニー・コンピュータエンタテインメント | 画像生成装置 |
US6606689B1 (en) | 2000-08-23 | 2003-08-12 | Nintendo Co., Ltd. | Method and apparatus for pre-caching data in audio memory |
US6643744B1 (en) | 2000-08-23 | 2003-11-04 | Nintendo Co., Ltd. | Method and apparatus for pre-fetching audio data |
US7233998B2 (en) * | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
JP2002342783A (ja) * | 2001-05-15 | 2002-11-29 | Namco Ltd | 画像生成システム、画像生成方法および情報記憶媒体 |
JP4542308B2 (ja) * | 2002-12-16 | 2010-09-15 | 株式会社ソニー・コンピュータエンタテインメント | 信号処理用デバイス及び情報処理機器 |
US7895411B2 (en) | 2003-10-02 | 2011-02-22 | Nvidia Corporation | Physics processing unit |
US7739479B2 (en) * | 2003-10-02 | 2010-06-15 | Nvidia Corporation | Method for providing physics simulation data |
US8224639B2 (en) | 2004-03-29 | 2012-07-17 | Sony Computer Entertainment Inc. | Methods and apparatus for achieving thermal management using processing task scheduling |
US20050251644A1 (en) * | 2004-05-06 | 2005-11-10 | Monier Maher | Physics processing unit instruction set architecture |
US8941668B2 (en) * | 2004-06-25 | 2015-01-27 | Nvidia Corporation | Method and system for a scalable discrete graphics system |
US8446417B2 (en) * | 2004-06-25 | 2013-05-21 | Nvidia Corporation | Discrete graphics system unit for housing a GPU |
US8411093B2 (en) * | 2004-06-25 | 2013-04-02 | Nvidia Corporation | Method and system for stand alone graphics independent of computer system form factor |
US9087161B1 (en) * | 2004-06-28 | 2015-07-21 | Nvidia Corporation | Asymmetrical scaling multiple GPU graphics system for implementing cooperative graphics instruction execution |
US7227201B2 (en) * | 2004-08-27 | 2007-06-05 | Texas Instruments Incorporated | CMOS device having different amounts of nitrogen in the NMOS gate dielectric layers and PMOS gate dielectric layers |
US7650266B2 (en) * | 2005-05-09 | 2010-01-19 | Nvidia Corporation | Method of simulating deformable object using geometrically motivated model |
US10026140B2 (en) * | 2005-06-10 | 2018-07-17 | Nvidia Corporation | Using a scalable graphics system to enable a general-purpose multi-user computer system |
US8893016B2 (en) * | 2005-06-10 | 2014-11-18 | Nvidia Corporation | Using a graphics system to enable a multi-user computer system |
WO2008088109A1 (en) * | 2007-01-16 | 2008-07-24 | Tes Co., Ltd | A loadlock chamber having dual-arm and a transportation system for processing semiconductor material using a loadlock chamber having dual-arm |
US7627744B2 (en) * | 2007-05-10 | 2009-12-01 | Nvidia Corporation | External memory accessing DMA request scheduling in IC of parallel processing engines according to completion notification queue occupancy level |
JP2010157901A (ja) | 2008-12-26 | 2010-07-15 | Sony Corp | 信号処理装置、信号処理方法およびプログラム |
JP2012003618A (ja) * | 2010-06-18 | 2012-01-05 | Sony Corp | 情報処理システム、情報処理方法、情報処理装置 |
CN103984669A (zh) | 2013-02-07 | 2014-08-13 | 辉达公司 | 一种用于图像处理的系统和方法 |
US9734546B2 (en) | 2013-10-03 | 2017-08-15 | Nvidia Corporation | Split driver to control multiple graphics processors in a computer system |
EP3113169B1 (en) * | 2015-07-02 | 2018-11-14 | OpenSynergy GmbH | Method for controlling a graphic processing unit in a control unit, in particular of a vehicle, computer program product and system for an embedded control unit |
JP7180516B2 (ja) * | 2019-04-16 | 2022-11-30 | 株式会社デンソー | 車両用装置、車両用装置の制御方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4631674A (en) * | 1985-02-05 | 1986-12-23 | International Business Machines Corporation | Active wait |
US5101341A (en) * | 1988-08-25 | 1992-03-31 | Edgcore Technology, Inc. | Pipelined system for reducing instruction access time by accumulating predecoded instruction bits a FIFO |
US5239654A (en) * | 1989-11-17 | 1993-08-24 | Texas Instruments Incorporated | Dual mode SIMD/MIMD processor providing reuse of MIMD instruction memories as data memories when operating in SIMD mode |
US5335322A (en) * | 1992-03-31 | 1994-08-02 | Vlsi Technology, Inc. | Computer display system using system memory in place or dedicated display memory and method therefor |
US5301324A (en) * | 1992-11-19 | 1994-04-05 | International Business Machines Corp. | Method and apparatus for dynamic work reassignment among asymmetric, coupled processors |
US5706478A (en) * | 1994-05-23 | 1998-01-06 | Cirrus Logic, Inc. | Display list processor for operating in processor and coprocessor modes |
US5787241A (en) * | 1995-12-18 | 1998-07-28 | Integrated Device Technology, Inc. | Method and apparatus for locating exception correction routines |
JP3681026B2 (ja) * | 1997-03-27 | 2005-08-10 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置および方法 |
-
1997
- 1997-03-27 JP JP07493197A patent/JP3681026B2/ja not_active Expired - Fee Related
-
1998
- 1998-03-23 TW TW087104313A patent/TW389879B/zh not_active IP Right Cessation
- 1998-03-23 AU AU59464/98A patent/AU730714B2/en not_active Expired
- 1998-03-25 DE DE69827544T patent/DE69827544T2/de not_active Expired - Lifetime
- 1998-03-25 EP EP98302259A patent/EP0867809B1/en not_active Expired - Lifetime
- 1998-03-25 US US09/048,140 patent/US6119217A/en not_active Expired - Lifetime
- 1998-03-26 CA CA002233391A patent/CA2233391A1/en not_active Abandoned
- 1998-03-27 KR KR10-1998-0010672A patent/KR100466903B1/ko not_active IP Right Cessation
- 1998-03-27 CN CN98108283A patent/CN1107287C/zh not_active Expired - Lifetime
-
2000
- 2000-07-11 US US09/613,493 patent/US6304952B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69827544T2 (de) | 2005-11-10 |
US6304952B1 (en) | 2001-10-16 |
AU730714B2 (en) | 2001-03-15 |
CN1107287C (zh) | 2003-04-30 |
KR100466903B1 (ko) | 2005-06-22 |
DE69827544D1 (de) | 2004-12-23 |
TW389879B (en) | 2000-05-11 |
JPH10269351A (ja) | 1998-10-09 |
EP0867809A2 (en) | 1998-09-30 |
EP0867809A3 (en) | 1999-11-17 |
EP0867809B1 (en) | 2004-11-17 |
CA2233391A1 (en) | 1998-09-27 |
US6119217A (en) | 2000-09-12 |
CN1197969A (zh) | 1998-11-04 |
AU5946498A (en) | 1998-10-01 |
KR19980080759A (ko) | 1998-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3681026B2 (ja) | 情報処理装置および方法 | |
JP3739888B2 (ja) | 情報処理装置および方法 | |
US6647486B2 (en) | Information processing apparatus for entertainment system utilizing DMA-controlled high-speed transfer and processing of routine data | |
JP4925385B2 (ja) | 機能拡張型メモリコントローラを備えるグラフィックス処理システム | |
JP4757406B2 (ja) | グラフィクスシステム | |
US6559854B2 (en) | Image creation device | |
JP2004531841A (ja) | 時間アロケータを有するグラフィックレンダリングエンジンを用いる装置、方法及びシステム | |
JP2001243481A (ja) | 画像生成装置 | |
JP2004536395A (ja) | グラフィックコンテキストマネージャを有するグラフィックレンダリングエンジンを用いる装置、方法及びシステム | |
US7212211B2 (en) | Data processing system and method, computer program, and recording medium | |
JP4088297B2 (ja) | プロセッサ | |
JP3468985B2 (ja) | グラフィック描画装置、グラフィック描画方法 | |
AU5012001A (en) | Information processing apparatus and information processing method | |
MXPA98006707A (en) | Information processing device and entertainment system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050117 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050328 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050328 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050426 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050512 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050512 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090527 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090527 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100527 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110527 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110527 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120527 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130527 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140527 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |