JP3739888B2 - 情報処理装置および方法 - Google Patents

情報処理装置および方法 Download PDF

Info

Publication number
JP3739888B2
JP3739888B2 JP07493097A JP7493097A JP3739888B2 JP 3739888 B2 JP3739888 B2 JP 3739888B2 JP 07493097 A JP07493097 A JP 07493097A JP 7493097 A JP7493097 A JP 7493097A JP 3739888 B2 JP3739888 B2 JP 3739888B2
Authority
JP
Japan
Prior art keywords
memory
data
image data
list
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP07493097A
Other languages
English (en)
Other versions
JPH10269165A (ja
Inventor
雅一 鈴置
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP07493097A priority Critical patent/JP3739888B2/ja
Priority to AU59388/98A priority patent/AU730429B2/en
Priority to TW087104098A priority patent/TW394906B/zh
Priority to CA002232904A priority patent/CA2232904A1/en
Priority to DE69820143T priority patent/DE69820143T2/de
Priority to US09/048,137 priority patent/US6219073B1/en
Priority to EP98302255A priority patent/EP0871142B1/en
Priority to CN98109421A priority patent/CN1107923C/zh
Priority to KR1019980010671A priority patent/KR100562692B1/ko
Publication of JPH10269165A publication Critical patent/JPH10269165A/ja
Application granted granted Critical
Publication of JP3739888B2 publication Critical patent/JP3739888B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Systems (AREA)
  • Digital Computer Display Output (AREA)
  • Image Processing (AREA)
  • Memory System (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置および方法に関し、例えば、データ転送の順序や優先順位を制御する制御命令をデータ自身に埋め込むことにより、データの性質に依存した最適な制御を行うようにした情報処理装置および方法に関する。
【0002】
【従来の技術】
家庭用テレビゲーム機やパーソナルコンピュータでは、演算LSIの動作周波数や回路規模などの性能が向上しており、さらに性能を向上させるために、描画プロセッサや画像解凍プロセッサなどの複数の処理装置を1つのLSIに集積した並列処理システムが実現されている。その場合、メモリコストの問題から、共有のメモリを使用することが多い。こうした構成をUMA(Unified Memory Architecture)と呼ぶ。
【0003】
【発明が解決しようとする課題】
しかしながら、演算LSIの動作周波数や回路規模の向上に比較して、同コストで使用可能な汎用メモリの容量はさして増加しておらず、メモリ容量が性能向上におけるボトルネックとなる課題があった。
【0004】
また、上記UMAのように、複数のプロセッサが1つのメモリ資源を共有する場合、メモリアクセス速度が性能向上におけるボトルネックとなる課題があった。
【0005】
本発明はこのような状況に鑑みてなされたものであり、データ自身に制御命令を埋め込むことにより、無駄なメモリ容量を必要とせずに、効率的にデータ処理を行うことができるようにするものである。
【0006】
【課題を解決するための手段】
本発明の第1の態様である情報処理装置は、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成する生成手段を備えることを特徴とする。
【0007】
本発明の第2の態様である情報処理装置は、メモリは、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを記憶することを特徴とする。
【0008】
本発明の第3の態様である情報処理装置は、メモリに記憶された演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを読み出し、命令に従って、データを演算装置のいずれかに転送する転送手段を備えることを特徴とする。
【0009】
本発明の第4の態様である情報処理装置は、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成する生成手段と、メモリに記憶されたリストを読み出し、リストを構成する命令に従って、データを演算装置のいずれかに転送する転送手段を備えることを特徴とする。
【0010】
本発明の第5の態様である情報処理方法は、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成するステップと、メモリに記憶されたリストを読み出し、リストを構成する命令に従って、データを演算装置のいずれかに転送するステップとを備えることを特徴とする。
【0011】
本発明の第1の態様の情報処理装置においては、生成手段が、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成する。
【0012】
本発明の第2の態様の情報処理装置においては、メモリは、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを記憶する。
【0013】
本発明の第3の態様の情報処理装置においては、転送手段が、メモリに記憶された演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを読み出し、命令に従って、データを演算装置のいずれかに転送する。
【0014】
本発明の第4の態様の情報処理装置においては、生成手段が、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成し、転送手段が、メモリに記憶されたリストを読み出し、リストを構成する命令に従って、データを演算装置のいずれかに転送する。
【0015】
本発明の第5の態様の情報処理方法においては、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成し、メモリに記憶されたリストを読み出し、リストを構成する命令に従って、データを演算装置のいずれかに転送する。
【0016】
【発明の実施の形態】
図1乃至図3は、本発明の情報処理装置を応用した家庭用TVゲーム機の一例を示している。この家庭用TVゲーム機は、ゲーム機本体2と、このゲーム機本体2に接続可能な操作装置17および記録装置38で構成されている。
【0017】
ゲーム機本体2は、図1乃至図3に示すように、略四角形状に形成され、その中央の位置に、図4に示すような光ディスクの一種であるCD−ROM(compact disc-read only memory)40(ゲーム用媒体に相当するディスク)を装着するディスク装着部3と、ゲーム機本体の適宜位置にゲームを任意にリセットするリセットスイッチ4と、電源のオン/オフをする電源スイッチ5と、ディスクの装着を操作するディスク操作スイッチ6と、所謂ゲームにおける操作を行う操作装置17および所謂ゲームの設定などを記録しておく記録装置38を接続する接続部7A,7Bを有している。
【0018】
接続部7A,7Bは、図2および図3に示すように、2段に形成されている。接続部7A,7Bの上段部には、記録装置38を接続する記録挿入部8が設けられ、下段部には、操作装置17を接続する接続端子挿入部12が設けられている。
【0019】
記録挿入部8は、横方向に長い長方形状の挿入孔と、その内部に記録装置38が挿入されるメモリ用接続端子部(図示せず)を有している。また、図2に示すように、記録挿入部8には、記録装置38が接続されていないときに、メモリ用接続端子部を埃などから保護するシャッタ9が設けられている。なお、記録装置38は、電気的に書換え可能なROMを有しており、所謂ゲームに関連するデータを記録するようになされている。
【0020】
記録装置38を装着する場合、ユーザは、記録装置38の先端でシャッタ9を内側方向に押し、さらに、記録装置38を挿入孔に押し込み、メモリ用接続端子部に接続させる。
【0021】
接続端子挿入部12は、図2に示すように、横方向に長い長方形形状の挿入孔と、操作装置17の接続端子部26を接続する接続端子12Aを有している。
【0022】
操作装置17は、図1に示すように、両手の掌で挟持して5本の指が自由自在に動いて操作できる構造をしており、左右対称に配置された操作部18,19と、操作部18,19の中間部に設けたセレクトスイッチ22およびスタートスイッチ23と、操作部18,19の前面側に配置された操作部24,25と、ゲーム機本体2に接続するための接続端子部26およびケーブル27を有している。
【0023】
図5は、上述のゲーム機本体2の内部の電気的構成の一例を示している。
【0024】
ゲーム機本体2は、メインバス41とサブバス42の2本のバスを有している。これらのバスは、サブバスインタフェース(SBUSIF)43を介して接続されている。
【0025】
メインバス41には、マイクロプロセッサや第1ベクトル処理装置(VPE(vector processing engine)0)などで構成されるメインCPU(central processing unit)44(生成手段)と、RAM(random access memory)で構成されるメインメモリ45、メインダイレクトメモリアクセスコントローラ(メインDMAC(direct memory access controller))46(転送手段)、MPEG(Moving Picture Experts Group)デコーダ(MDEC)47、第2ベクトル処理装置(VPE1)48、およびGPUIF(graphical processing unit interface)72を介して画像処理装置(GPU)49が接続されている。GPU49には、CRTC(CRT controller)84が設けられている。
【0026】
一方、サブバス42には、マイクロプロセッサなどで構成されるサブCPU50、RAMで構成されるサブメモリ51、サブDMAC52、オペレーティングシステムなどのプログラムが記憶されているROM53、音声処理装置(SPU(sound processing unit))54、通信制御部(ATM)55、ディスク装着部3を兼ねるCD−ROMドライブ56、入力部57が接続されている。そして、入力部57の接続端子12Aには、操作装置17が接続される。
【0027】
SBUSIF43は、メインバス41とサブバス42を接続し、メインバス41からのデータをサブバス42に出力するとともに、サブバス42からのデータをメインバス41に出力するようになされている。
【0028】
メインCPU44は、ゲーム機本体2の起動時に、サブバス42に接続されているROM53から、SBUSIF43を介して起動プログラムを読み込み、その起動プログラムを実行し、オペレーティングシステムを動作させるようになされている。
【0029】
また、メインCPU44は、CD−ROMドライブ56を制御し、CD−ROMドライブ56にセットされたCD−ROM40からアプリケーションプログラムやデータを読み出し、メインメモリ45に記憶させるようになされている。
【0030】
また、メインCPU44は、CD−ROM40から読み出した、複数の基本図形(ポリゴン)で構成された3次元オブジェクトのデータ(ポリゴンの頂点(代表点)の座標値など)に対して、第1ベクトル処理装置(VPE0)71と共同して、非定型処理用のデータ(ポリゴン定義情報)を生成するようになされている。第1ベクトル処理装置(VPE0)71は、浮動小数点の実数を演算する複数の演算素子を有し、並列に浮動小数点演算を行うようになされている。
【0031】
即ち、メインCPU44と、第1ベクトル処理装置71は、ジオメトリ処理のうちのポリゴン単位での細かな操作を必要とする処理、例えば、木の葉が風で揺れる様子や、自動車のフロントウィンドウの雨の滴等を表すポリゴンのデータを生成するような処理を行うようになされている。そして、演算された頂点情報やシェーディングモード情報等のポリゴン定義情報をパケットとして、メインバス41を介してメインメモリ45に供給するようになされている。
【0032】
ポリゴン定義情報は、描画領域設定情報とポリゴン情報とからなる。そして、描画領域設定情報は、描画領域のフレームバッファアドレスにおけるオフセット座標と、描画領域の外部にポリゴンの座標があった場合に、描画をキャンセルするための描画クリッピング領域の座標からなる。また、ポリゴン情報は、ポリゴン属性情報と頂点情報とからなり、ポリゴン属性情報は、シェーディングモード、αブレンディングモード、およびテクスチャマッピングモード等を指定する情報であり、頂点情報は、頂点描画領域内座標、頂点テクスチャ領域内座標、および頂点色等の情報である。
【0033】
一方、第2ベクトル処理装置(VPE1)48は、第1ベクトル処理装置71の場合と同様に、浮動小数点の実数を演算する複数の演算素子を有し、並列に浮動小数点演算を行うようになされている。そして、操作装置17の操作とマトリクスの操作で画像を生成できるもの、即ち、VPE1においてプログラムが可能な程度の比較的簡単な処理(定型処理)用のデータ(ポリゴン定義情報)を生成するようになされている。例えば、ビルや車等の簡単な形状の物体に対する透視変換、平行光源計算、2次元曲面生成等の処理を行うようになされている。そして、生成したポリゴン定義情報をGPUIF72に供給するようになされている。
【0034】
GPUIF72は、メインメモリ45よりメインバス41を介して供給されるメインCPU44からのポリゴン定義情報と、第2ベクトル処理装置48より供給されるポリゴン定義情報とを、衝突しないように調停しながら、GPU49に供給するようになされている。
【0035】
GPU49は、GPUIF72を介して供給されたポリゴン定義情報に基づいて、フレームメモリ58にポリゴンを描画するようになされている。GPU49は、フレームメモリ58をテクスチャメモリとしても使用できるため、フレームメモリ上のピクセルイメージをテクスチャとして、描画するポリゴンに貼り付けることができる。
【0036】
メインDMAC46は、メインバス41に接続されている各回路を対象として、DMA転送などの制御を行うようになされている。また、メインDMAC46は、SBUSIF43の状態に応じて、サブバス42に接続されている各回路を対象としてDMA転送などの制御を行うこともできる。また、MDEC47は、メインCPU44と並列に動作し、MPEG(Moving Picture Experts Group)方式あるいはJPEG(Joint Photographic Experts Group)方式等で圧縮されたデータを伸張するようになされている。
【0037】
サブCPU50は、ROM53に記憶されているプログラムに従って各種動作を行うようになされている。サブDMAC52は、SBUSIF43がメインバス41とサブバス42を切り離している状態においてのみ、サブバス42に接続されている各回路を対象としてDMA転送などの制御を行うようになされている。
【0038】
SPU54は、サブCPU50やサブDMAC52から供給されるサウンドコマンドに対応して、サウンドメモリ59から音声データを読み出してオーディオ出力として出力するようになされている。
【0039】
通信制御部(ATM)55は、公衆回線等に接続され、その回線を介してデータの送受信を行うようになされている。
【0040】
入力部57は、操作装置17を接続する接続端子部12A、他の装置(図示せず)からの画像データを受け取るビデオ入力回路82、および他の装置からの音声データを受け取るオーディオ入力回路83を有している。
【0041】
図6は、図5に示したメインCPU44、メインメモリ45、第2ベクトル処理装置(VPE1)48、およびGPU49の詳細な構成を示すブロック図である。
【0042】
メインCPU44を構成するCPUコア(CORE)94は、所定の命令を実行するようになされている。命令(Instruction)キャッシュ(I$)は、CPUコア94に供給する命令を一時的に保持するようになされている。高速なメモリであるSPR(スクラッチメモリ(scratch pad ram))96は、CPUコア94による処理結果を記憶するようになされている。データキャッシュ(D$)は、CPUコア94が処理を実行するために用いるデータを一時的に記憶するようになされている。
【0043】
第1ベクトル処理装置(VPE0)71を構成する浮動小数点ベクトルプロセッサユニットおよび内蔵メモリ(VU−MEM)101は、64ビット長のマイクロプログラムで動作する浮動小数点ベクトルプロセッサユニット(VU)および内蔵メモリ(MEM)より構成され、後述するマイクロメモリ(microMEM)98に記憶されているプログラムに従って、内部レジスタと内蔵メモリに記憶されたデータを高速演算するようになされている。
【0044】
PKE102は、後述するメインDMAC46の制御により、転送されてくるVUのマイクロコードをマイクロメモリ98に展開したり、パックされたデータのパケットをVU−MEM101の内蔵メモリ(MEM)に展開するようになされている。FMAC(Floating Maltiple Adder Calculation Unit)99は、浮動小数点演算を実行するようになされている。DIV(わり算器(Divider))100は、わり算を実行するようになされている。そして、上述したように、メインCPU44には、第1ベクトル処理装置(VPE0)が内蔵されており、共同して非定型処理を行うようになされている。
【0045】
第2ベクトル処理装置48を構成する浮動小数点ベクトルプロセッサユニットおよび内蔵メモリ(VU−MEM)107は、64ビット長のマイクロプログラムで動作する浮動小数点ベクトルプロセッサユニット(VU)および内蔵メモリ(MEM)より構成され、後述するマイクロメモリ(microMEM)103に記憶されているプログラムに従って、内部レジスタと内蔵メモリに記憶されたデータを高速演算するようになされている。
【0046】
PKE108は、メインDMAC46の制御により、転送されてくるVUのマイクロコードをマイクロメモリ103に展開したり、パックされたデータのパケットをVU−MEM107の内蔵メモリに展開するようになされている。FMAC(Floating Maltiple Adder Calculation Unit)104は、浮動小数点演算を実行するようになされている。DIV(わり算器(Divider))106は、わり算を実行するようになされている。そして、メインメモリ45より供給されたデータに対して、定型処理を施し、処理結果をGPUIF72を介してGPU49に供給するようになされている。
【0047】
メインメモリ45は、3次元オブジェクトのデータを記憶し、必要に応じて、第1ベクトル処理装置71,第2ベクトル処理装置48にそれぞれ供給するようになされている。また、メインCPU44と第1ベクトル処理装置(VPE0)71とが共同して作成したディスプレイリストを、メインメモリ45が内蔵するMFIFO(MemoryFIFO)に一旦、記憶させ、メインバス41を介してGPUIF72に供給するようになされている。これは、メインCPU44および第1ベクトル処理装置71の方が、第2ベクトル処理装置48より優先順位が低いため、第2ベクトル処理装置48がアイドル状態になるまでディスプレイリストを保持しておく必要があるからである。
【0048】
また、CPU44および第1ベクトル処理装置71は、共同して第2ベクトル処理装置48が処理するためのマトリクスを作成し、メインメモリ45に記憶させるようになされている。そして、第2ベクトル処理装置48は、このマトリクスを用いて、ディスプレイリストを作成するようになされている。
【0049】
GPU49は、第1ベクトル処理装置71よりGPUIF72を介して供給されれる非定型処理用のディスプレイリストと、第2ベクトル処理装置48より供給される定型処理用のディスプレイリストを処理するために、それぞれに対応する描画時のクリップ範囲や描画オフセット等のコンテクスト(描画設定条件)を保持するようになされている。CG0は非定型処理用のグラフィックコンテクストであり、CG1は、定型処理用のグラフィックコンテクストである。
【0050】
例えば、DMAC109の制御により、メインメモリ45からメインバス41を介して第1ベクトル処理装置71に供給されたマイクロコードやパックされたデータ(3次元オブジェクトのデータなど)のパケットは、PKE102により、マイクロメモリ98や内蔵メモリに展開される。そして、FMAC99およびDIV100により、3次元オブジェクトのデータに対して、マトリクス演算、座標変換、透視変換等の演算が施される。また、このとき、CPUコア94と共に、より複雑な処理が施される。例えば、木の葉が風に揺れる様子や、自動車のフロントウィンドウを雨の滴が垂れる様子を描画するためのディスプレイリストが作成される。
【0051】
このようにして作成された2次元のオブジェクトを画面に描画するためのディスプレイリスト(Complex Stream)は、メインバス41を介して一旦メインメモリ45のMFIFOに記憶され、GPUIF72に供給される。
【0052】
一方、メインDMAC46の制御により、メインメモリ45からメインバス41を介して第2ベクトル処理装置48に供給されたマイクロコードやパックされたデータ(3次元オブジェクトのデータなど)のパケットは、PKE108により、マイクロメモリ103や内蔵メモリに展開される。そして、FMAC104およびDIV106により、メインメモリ45よりメインバス41を介して供給される、メインCPU44および第1ベクトル処理装置71が作成したマトリクスやコンテクストに基づいて、3次元オブジェクトのデータに対して、マトリクス演算、座標変換、透視変換等の演算が施される。ここでは、比較的簡単な定型処理が施される。
【0053】
そして、このようにして作成された2次元のオブジェクトを画面に描画するためのディスプレイリスト(Simple Stream)は、メインバス41を介してGPUIF72に供給される。GPUIF72は、これら2つのストリームを調停し、それらを時分割でGPU49に転送する。
【0054】
そして、GPU49により、GPUIF72より供給されたディスプレイリストに基づいて、描画処理が実行され、フレームメモリ58にポリゴンが描画される。ここで、ディスプレイリストがメインCPU44および第1ベクトル処理装置71によってメインメモリ45上に作成され、メインバス41を介して供給されたものである場合、GPU49においては、グラフィックコンテクスト(GC)0を用いて描画処理が行われ、ディスプレイリストが第2ベクトル処理装置48によって作成されたものである場合、グラフィックコンテクスト(GC)1を用いて描画処理が行われる。
【0055】
フレームメモリ58に描画されたポリゴンは、CRTC84の制御により、対応するビデオ信号に変換された後、出力される。
【0056】
図7は、2つのディスプレイリストが処理されるタイミングを示す図である。図7におけるGeometry Subsystem0は、図6のブロック図においては第2ベクトル処理装置48に対応し、Geometry Subsystem1はメインCPU44および第1ベクトル処理装置71に対応している。そして、Rendering SubsystemはGPU49に対応している。
【0057】
図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)の作成を終了し、その供給を受けるまでの間、アイドル状態となる。
【0058】
以下同様にして、Rendering Subsystemによる描画処理が終了しても、Geometry Subsystem0による次のディスプレイリストの作成が終了していない場合、Rendering Subsystemは、次のディスプレイリストがGeometry Subsystem0から供給されるまでの間、アイドル状態となる。
【0059】
図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に対応するコンテクストに基づいて、描画処理を実行する。
【0060】
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)に従って、描画処理を実行する。
【0061】
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)に従って、描画処理を開始する。
【0062】
以下同様にして、Geometry Subsystem1は、Geometry Subsystem0が処理中であり、Rendering Subsystemがアイドル中のときだけ、作成したディスプレイリストをRendering Subsystemに供給する。これにより、複数のプロセッサが作成したディスプレイリストを、Rendering Subsystemに効率的に処理させることが可能となる。
【0063】
例えば、座標変換処理を補強するために、CPUとは別のサブプロセッサや座標変換装置を設けて、複数の処理装置が共同して1つの描画装置(GPU49)にディスプレイリストを送出するようにした場合、描画装置に送出するディスプレイリストの容量は膨大なため、短い時間間隔で、描画装置を使用するCPUを切り替えるようにしないと、各CPUのローカルメモリがオーバフローする。そのため、図7(B)に示したように、各CPUに予め優先順位を設定し、高い優先順位のCPU(マスタCPU)(図6においては、第2ベクトル処理装置48)が描画装置へ送出するリストがなくなったら、直ちにアクセス権を次のCPU(スレーブCPU)(図6においては、メインCPU44と第1ベクトル処理装置71)へ譲るようにする。
【0064】
スレーブCPUは、マスタCPUがディスプレイリストを作成して、それを描画装置に転送する準備ができた時点で、まだ、送出すべきディスプレイリストが残っていても、すぐに処理を中断し、描画装置へのアクセス権をマスタCPUに返す。
【0065】
マスタCPUには、高速に処理を実行するがローカルメモリの容量が比較的小さいものが割り当てられ、スレーブCPUにはローカルメモリの容量は比較的大きいが、処理速度が比較的遅いものが割り当てられる。
【0066】
図8に示すように、スレーブCPUのさらにスレーブとなるCPUが接続される場合もある。このような場合、特に低次のスレーブCPUは、大きなディスプレイリストを記憶するためのさらに大きな容量のローカルメモリを必要とする。このため、低次のスレーブCPUは、通常、メインメモリを抱えるメインCPUが受け持つようにしている。
【0067】
描画装置が描画を行うためには、ディスプレイリストに記述された頂点情報と同時に、上述したように、描画時のクリップ範囲や描画オフセット等のコンテクストと呼ばれる環境パラメータ(描画設定条件)が必要である。Rendering Subsystemは、各Geometry Subsystemより供給されたディスプレイリストに基づいた描画処理を、そのディスプレイリストを供給したGeometry Subsystemに対応するコンテクストに従って行う。しかしながら、ディスプレイリストを供給するGeometry Subsystemが切り替わる度に、コンテクストを再設定することは非常に面倒である。そこで、Rendering Subsystem側が、Geometry Subsystemの個数分のコンテクストを保持するようにしている。
【0068】
図7に示したように、コンテクストは、ディスプレイリストに付加され、例えば、描画するオブジェクト毎にGPU49に供給される。従って、GPU49は、オブジェクト毎に、そのオブジェクトに対応するコンテクストに基づいて、描画処理を行うことができる。
【0069】
Geometry SubsystemとRendering Subsystemは、メインバス41を構成するデータバスとアドレスバスを共有し、アドレスバスを介して現在アクセスしているGeometry SubsystemのIDを、またデータバスを介して現在アクセスしているGeometry Subsystemが作成したディスプレイリストをそれぞれRendering Subsystemに供給する。Rendering Subsystemは、供給されたIDに対応するコンテクストを選択し、このコンテクストに基づいてディスプレイリストを解釈し、フレームバッファへの描画を行う。
【0070】
以上のように、複数のプロセッサがその優先順位に従って描画装置を制御するようにすることにより、ディスプレイリストを保持するローカルメモリの容量を、プロセッサ毎に最小限にすることができる。これにより、ローカルメモリにコストをかけることなく、ディスプレイリストの作成処理を並列化することができる。また、コンテクストを各描画処理装置に保持させることにより、コンテクストの切り替え時におけるオーバヘッドを減少させることができる。
【0071】
次に、複数のプロセッサがデータバスとメインメモリを時分割で共有し、データの転送を行う場合において、データの制御を、転送するデータ自身に埋め込まれたメタ命令に従って行う方法について説明する。
【0072】
図9は、メタ命令のフォーマット例を示している。メタ命令は128ビットで構成され、そのうちの64ビットのみが有効とされる。最初の16ビットには、転送すべきデータのサイズがセットされる。24ビット目乃至31ビット目には、メタ命令のIDがセットされる。そして、32ビット目乃至63ビット目には、転送すべきデータが記憶されているアドレス、または、次に読み出すべきメタ命令が記憶されているアドレスがセットされる。
【0073】
データの転送は、データに埋め込まれたメタ命令のIDに応じて、以下のように制御される。
【0074】
IDが「cnt」である場合、メタ命令の次のQWCワードを転送した後、パケットの次の番地のメタ命令を実行する。IDが「cnts」である場合、メタ命令の次のQWCワードをストール制御をしながら転送した後、パケットの次の番地のメタ命令を実行する。IDが「next」の場合、メタ命令に続くQWCワードを転送した後、アドレスで示される番地に記憶されているメタ命令が実行される。
【0075】
また、IDが「ref」の場合、アドレスで表される番地からQWCワードを転送した後、メタ命令の次の番地のメタ命令を実行する。IDが「refs」の場合、ADDR番地からQWCワードをストール制御を行いながら転送した後、メタ命令の次の番地のメタ命令を実行する。
【0076】
IDが「call」の場合、メタ命令に続くQWCワードを転送した後、パケットの次の番地をレジスタにプッシュして、アドレスで示される番地に記憶されているメタ命令を実行する。IDが「ret」の場合、メタ命令に続くQWCワードを転送した後、レジスタからポップした番地に記憶されているメタ命令を実行する。IDが「end」の場合、メタ命令に続くQWCワードを転送した後、処理を終了する。
【0077】
図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」が実行される。
【0078】
これにより、続く2qwordのデータがDMACの制御により転送された後、アドレスADDR1に記憶されているメタ命令「END ADDR=−,LEN=8」が実行される。即ち、続く8qwordのデータが転送された後、処理を終了する。
【0079】
図11は、メタ命令のIDが「REF」の場合の動作を示している。最初に、メインDMAC46は、レジスタDn_TADRによって指定されたアドレスから、1ワードをメタ命令ワードとして読み出す。この例の場合、「REF ADDR=ADDR2,LEN=2」であるので、アドレス2より以降に記憶されている2qwordのデータが転送され、次のメタ命令が実行される。
【0080】
即ち、メタ命令「REF ADDR=ADDR1,LEN=8」が実行され、ADDR1より以降に記憶されている8qwordのデータが転送され、次のメタ命令が実行される。即ち、メタ命令「END ADDR=−,LEN=8」が実行され、続く8qwordのデータが転送される。
【0081】
図12は、メタ命令のIDが「CALL」の場合の動作を示している。最初に、メインDMAC46は、レジスタDn_TADRによって指定されたアドレスから、1ワードをメタ命令ワードとして読み出す。この例の場合、「CALL ADDR=ADDR1,LEN=0」であるので、アドレス1に記憶されているメタ命令が実行される。即ち、メタ命令「CALL ADDR=ADDR2,LEN=8」が実行され、続く8qwordのデータが転送された後、ADDR2に記憶されているメタ命令が実行される。
【0082】
即ち、メタ命令「RET ADDR=−,LEN=8」が実行され、続く8qwordのデータが転送された後、リターンし、メタ命令「RET ADDR=−,LEN=0」が実行される。これにより、次のメタ命令「CALL ADDR=ADDR2,LEN=8」が実行され、続く8qwordのデータが転送された後、ADDR2に記憶されているメタ命令が再度実行される。
【0083】
即ち、「RET ADDR=−,LEN=8」が実行され、続く8qwordのデータが転送された後、リターンし、次にメタ命令「END ADDR=−,LEN=0」が実行され、処理を終了する。
【0084】
このように、データに埋め込まれたメタ命令に従って、データ転送が制御される。
【0085】
図13は、上述したメタ命令によって、データの転送が制御される様子を示す図である。CPU44がディスプレイリスト(DisplayList0)を作成している間に、1フレーム前に作成されたディスプレイリスト(DisplayList1)が第2ベクトル処理装置(VPE1)48に転送される。
【0086】
まず、メインCPU44および第1ベクトル処理装置71が、図13に示すように、IDが「NEXT」のメタ命令、コンテクスト、IDが「REF」のメタ命令、IDが「REF」のメタ命令、マトリクス、IDが「REF」のメタ命令、マトリクス、IDが「REF」のメタ命令、マトリクス、IDが「REF」のメタ命令、IDが「REF」のメタ命令、IDが「REF」のメタ命令、マトリクス、IDが「RET」のマトリクスからなるディスプレイリストを作成する。
【0087】
その間、1フレーム前に作成されたディスプレイリスト(DisplayList1)が第2ベクトル処理装置48に転送される。即ち、IDが「NEXT」のメタ命令が実行され、続くコンテクストが第2ベクトル処理装置48に転送される。次に、IDが「REF」のメタ命令が実行され、メインメモリ45内のオブジェクトデータベースの中のProgram0が参照される。このように、フレーム間で内容が変わらないデータは、ディスプレイリストからメタ命令を使用して参照され、ディスプレイリスト間で共有される。このため、ディスプレイリストの作成においては、フレーム毎に変化する位置データ(マトリクス)の更新だけとなる。
【0088】
なお、オブジェクトデータベースには、3次元物体を記述するための3次元データ(Vertex of Object)、オブジェクトデータを解釈するためのプログラム、およびオブジェクトの装飾にテクスチャマッピングを行う場合に、テクスチャとなる画像データ(Texture Image)が格納されている。
【0089】
次に、IDが「REF」の次のメタ命令が実行され、3次元座標データ(オブジェクトの頂点座標データ)(Vertex of Object0)が参照される。次に、マトリクスが第2ベクトル処理装置48に転送され、IDが「REF」の次のメタ命令が実行され、3次元座標データ(Vertex of Object1)が参照される。次に、マトリクスが第2ベクトル処理装置48に転送される。
【0090】
そして、IDが「REF」の次のメタ命令が実行され、再び3次元座標データ(Vertex of Object1)が参照され、マトリクスが第2ベクトル処理装置48に転送される。そして、IDが「REF」の次のメタ命令が実行され、プログラム(Program3)が参照される。次に、IDが「REF」の次のメタ命令が実行され、テクスチャとなる画像データが転送される。
【0091】
テクスチャとなる画像データがフレームメモリ58に記憶されていない場合、オブジェクトデータ(Vertex of Object4)の転送に先立って、テクスチャとなる画像データがフレームメモリ58に転送される。テクスチャとなる画像データがMDEC47からの解凍データやサブバス42からの転送データであり、フレーム毎に変化するものである場合、後述するように、ストール機能が用いられ、データ転送の同期が取られる。
【0092】
画像データが転送される間、第2ベクトル処理装置48の処理が一旦停止するので、この期間を最小にするために、画像データの転送期間は、他のDMAチャンネルを停止する。この指定もメタ命令の所定の制御ビットにより行うことができる。例えば、図9に示したメタ命令の24ビット目および25ビット目にこの制御ビットをセットすることができる。
【0093】
次に、IDが「REF」の次のメタ命令が実行され、3次元座標データ(Vertex of Object4)が参照される。次に、マトリクスが第2ベクトル処理装置48に転送され、IDが「RET」のメタ命令が実行され、処理を終了する。
【0094】
図14は、ストール機能を説明するための図である。デバイス0(DEV0)からメインメモリにデータの転送が行われ、メインメモリからデバイス1(DEV1)にデータの転送が行われる場合、メインメモリからデバイス1にデータが転送されるときのメインメモリ上での転送アドレスが、デバイス0からメインメモリにデータが転送されるときのメインメモリ上での転送アドレスを越える間、メインメモリからデバイス1へのデータの転送をストールする。
【0095】
図13に示した例の場合、メインメモリ45から第2ベクトル処理装置48にテクスチャとなる画像データを転送するときのメインメモリ45上での転送アドレスが、MDEC47からメインメモリ45にテクスチャとなる画像データの転送が行われるときのメインメモリ45上での転送アドレスを越える間、メインメモリ45から第2ベクトル処理装置48へのテクスチャとなる画像データの転送をストールする。このようにして、データの同期が取られる。
【0096】
以上のように、メインDMAC46が、リストを構成するメタ命令を読み出し、それに従って、データを各プロセッサに分配する。従って、データを生成する時点で、転送の順序や形態、あるいは転送の優先順位を予めデータの中にプログラムすることにより、データの性質に依存して、最適な転送を行うことができる。また、データの転送順序をリスト形式で予め記述しておくことにより、メモリ内に無駄な作業用のコピーデータを持つ必要がなく、無駄なメモリアクセスを軽減するとともに、ディスプレイリストのサイズを削減することができる。
【0097】
また、ディスプレイリストのうち、フレーム毎に変更する部分だけを2重化して個別に記憶し、その他の部分は共通のメモリ領域に記憶させるようにすることにより、ディスプレイリストを記憶するためのメモリ容量を削減することができる。従って、少ないメモリ容量で多くのディスプレイリストを記憶することができる。
【0098】
さらに、データに埋め込まれたメタ命令に従ってデータの転送が行われるため、複数のプロセッサ間でのデータの読み出しおよび書き込みの同期を取ることを容易にすることができ、メモリ内にダブルバッファを構成することなく、複数のプロセッサがメモリを共有するようにすることができる。
【0099】
なお、上記実施の形態においては、CD−ROMにデータを記憶させるようにしたが、他の記録媒体を用いるようにすることも可能である。
【0100】
【発明の効果】
本発明の第1の態様の情報処理装置によれば、生成手段が、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成するようにしたので、データの転送順序や優先順位等を予めデータの中にプログラムすることができ、データの性質に依存した最適な転送を行うことができる。
【0101】
本発明の第2の態様の情報処理装置によれば、メモリは、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを記憶するようにしたので、予めデータに埋め込まれた命令に従って、データの性質に応じた最適な処理を行うことができる。
【0102】
本発明の第3の態様の情報処理装置によれば、転送手段が、メモリに記憶された演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを読み出し、命令に従って、データを演算装置のいずれかに転送するようにしたので、データに応じて、メモリ資源を各プロセッサに効率的に分配することができる。
【0103】
本発明の第4の態様の情報処理装置、および本発明の第5の態様の情報処理方法によれば、演算装置に転送すべき3次元グラフィックス処理のためのデータと、データの演算装置への転送を制御する命令とからなるリストを生成し、メモリに記憶されたリストを読み出し、リストを構成する命令に従って、データを演算装置のいずれかに転送するようにしたので、データの転送順序や優先順位等を予めデータの中にプログラムすることができ、データに応じて、メモリ資源を各プロセッサに効率的に分配することができる。
【図面の簡単な説明】
【図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 (4)

  1. 複数の演算装置がバスとメモリを時分割で共有し、並列に3次元グラフィックス処理を行う情報処理装置であって、
    前記メモリは、前記演算装置に転送すべき3次元グラフィックス処理のための画像データと、前記画像データの前記演算装置への転送を制御する命令とからなるリストを記憶し、
    第1の領域と第2の領域に仮想的に分割され、所定のフレームに対応する所定の前記リストが前記第1の領域に書き込まれるとともに、他のフレームに対応する他の前記リストが前記第2の領域から読み出されることを特徴とする情報処理装置。
  2. 複数の演算装置がバスとメモリを時分割で共有し、並列に3次元グラフィックス処理を行う情報処理装置であって、
    前記メモリに記憶された前記演算装置に転送すべき3次元グラフィックス処理のための画像データと、前記画像データの前記演算装置への転送を制御する命令とからなるリストを読み出し、前記命令に従って、前記画像データを前記演算装置のいずれかに転送する転送手段を備え、
    前記転送手段は、前記メモリの所定の領域に対して、複数の前記演算装置が時分割で画像データの読み出しおよび書き込みを行う場合において、前記領域から前記画像データを読み出すアドレスが、前記領域に対して前記画像データを書き込むアドレスより大きい間、前記領域からの前記画像データの読み出しを待機させることを特徴とする情報処理装置。
  3. 複数の演算装置がバスとメモリを時分割で共有し、並列に3次元グラフィックス処理を行う情報処理装置であって、
    前記メモリに記憶された前記演算装置に転送すべき3次元グラフィックス処理のための画像データと、前記画像データの前記演算装置への転送を制御する命令とからなるリストを読み出し、前記命令に従って、前記画像データを前記演算装置のいずれかに転送する転送手段を備え、
    前記転送手段は、前記メモリに記憶されている前記リストを構成する前記命令に従って、前記リストを構成する前記画像データを所定の前記演算装置に転送する間、他の前記演算装置による前記画像データへのアクセスを待機させることを特徴とする情報処理装置。
  4. 複数の演算装置がバスとメモリを時分割で共有し、並列に3次元グラフィックス処理を行う情報処理装置におけるデータ転送方法であって、
    第1の領域と第2の領域に仮想的に分割されたメモリが、前記演算装置に転送すべき3次元グラフィックス処理のための画像データと、前記画像データの前記演算装置への転送を制御する命令とからなるリストを記憶し、
    所定のフレームに対応する所定の前記リストが前記第1の領域に書き込まれるとともに、他のフレームに対応する他の前記リストが前記第2の領域から読み出されることを特徴とするデータ転送方法。
JP07493097A 1997-03-27 1997-03-27 情報処理装置および方法 Expired - Fee Related JP3739888B2 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP07493097A JP3739888B2 (ja) 1997-03-27 1997-03-27 情報処理装置および方法
AU59388/98A AU730429B2 (en) 1997-03-27 1998-03-19 Information processing apparatus and information processing method
TW087104098A TW394906B (en) 1997-03-27 1998-03-19 Informaion processing apparatus and information processing method
CA002232904A CA2232904A1 (en) 1997-03-27 1998-03-20 Information processing apparatus and information processing method
DE69820143T DE69820143T2 (de) 1997-03-27 1998-03-25 Datenverarbeitungsgerät und -verfahren
US09/048,137 US6219073B1 (en) 1997-03-27 1998-03-25 Apparatus and method for information processing using list with embedded instructions for controlling data transfers between parallel processing units
EP98302255A EP0871142B1 (en) 1997-03-27 1998-03-25 Information processing apparatus and methods
CN98109421A CN1107923C (zh) 1997-03-27 1998-03-27 信息处理装置及信息处理方法
KR1019980010671A KR100562692B1 (ko) 1997-03-27 1998-03-27 정보처리장치및정보처리방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07493097A JP3739888B2 (ja) 1997-03-27 1997-03-27 情報処理装置および方法

Publications (2)

Publication Number Publication Date
JPH10269165A JPH10269165A (ja) 1998-10-09
JP3739888B2 true JP3739888B2 (ja) 2006-01-25

Family

ID=13561575

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07493097A Expired - Fee Related JP3739888B2 (ja) 1997-03-27 1997-03-27 情報処理装置および方法

Country Status (9)

Country Link
US (1) US6219073B1 (ja)
EP (1) EP0871142B1 (ja)
JP (1) JP3739888B2 (ja)
KR (1) KR100562692B1 (ja)
CN (1) CN1107923C (ja)
AU (1) AU730429B2 (ja)
CA (1) CA2232904A1 (ja)
DE (1) DE69820143T2 (ja)
TW (1) TW394906B (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155798A (ja) * 1998-11-18 2000-06-06 Toshiba Corp 機器制御方法および機器制御システム
JP3780732B2 (ja) * 1999-03-10 2006-05-31 株式会社日立製作所 分散制御システム
US6532018B1 (en) 1999-04-19 2003-03-11 Microsoft Corporation Combined floating-point logic core and frame buffer
US6397132B1 (en) 1999-09-30 2002-05-28 Siemens Automotive Corporation Electronic thronttle control with accident recordal unit
US6807620B1 (en) * 2000-02-11 2004-10-19 Sony Computer Entertainment Inc. Game system with graphics processor
US7233998B2 (en) 2001-03-22 2007-06-19 Sony Computer Entertainment Inc. Computer architecture and software cells for broadband networks
US6809734B2 (en) 2001-03-22 2004-10-26 Sony Computer Entertainment Inc. Resource dedication system and method for a computer architecture 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
US7093104B2 (en) 2001-03-22 2006-08-15 Sony Computer Entertainment Inc. Processing modules for computer architecture for broadband networks
US7231500B2 (en) 2001-03-22 2007-06-12 Sony Computer Entertainment Inc. External data interface in a computer architecture for broadband networks
US6826662B2 (en) * 2001-03-22 2004-11-30 Sony Computer Entertainment Inc. System and method for data synchronization for a computer architecture for broadband networks
US7516334B2 (en) 2001-03-22 2009-04-07 Sony Computer Entertainment Inc. Power management for processing modules
US7496917B2 (en) 2003-09-25 2009-02-24 International Business Machines Corporation Virtual devices using a pluarlity of processors
US7444632B2 (en) 2003-09-25 2008-10-28 International Business Machines Corporation Balancing computational load across a plurality of processors
US7549145B2 (en) 2003-09-25 2009-06-16 International Business Machines Corporation Processor dedicated code handling in a multi-processor environment
US7389508B2 (en) 2003-09-25 2008-06-17 International Business Machines Corporation System and method for grouping processors and assigning shared memory space to a group in heterogeneous computer environment
US7475257B2 (en) 2003-09-25 2009-01-06 International Business Machines Corporation System and method for selecting and using a signal processor in a multiprocessor system to operate as a security for encryption/decryption of data
US7415703B2 (en) 2003-09-25 2008-08-19 International Business Machines Corporation Loading software on a plurality of processors
US7236998B2 (en) 2003-09-25 2007-06-26 International Business Machines Corporation System and method for solving a large system of dense linear equations
US7318218B2 (en) 2003-09-25 2008-01-08 International Business Machines Corporation System and method for processor thread for software debugging
US7382373B2 (en) * 2003-12-19 2008-06-03 Intel Corporation Method and apparatus for producing animation
US8224639B2 (en) 2004-03-29 2012-07-17 Sony Computer Entertainment Inc. Methods and apparatus for achieving thermal management using processing task scheduling
JP4378572B2 (ja) 2007-06-28 2009-12-09 Necシステムテクノロジー株式会社 データ転送システム、データ転送方法、ホスト装置及び描画装置
EP2689326B1 (en) 2011-03-25 2022-11-16 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
TWI603198B (zh) * 2011-05-20 2017-10-21 英特爾股份有限公司 以複數個引擎作資源與互連結構的分散式分配以支援指令序列的執行
TWI521343B (zh) 2011-08-01 2016-02-11 Toshiba Kk An information processing device, a semiconductor memory device, and a semiconductor memory device
TWI459201B (zh) 2012-04-27 2014-11-01 Toshiba Kk Information processing device
CN105247484B (zh) 2013-03-15 2021-02-23 英特尔公司 利用本地分布式标志体系架构来仿真访客集中式标志体系架构的方法
JP6021759B2 (ja) 2013-08-07 2016-11-09 株式会社東芝 メモリシステムおよび情報処理装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63226764A (ja) * 1987-03-17 1988-09-21 Fanuc Ltd 高速浮動小数点演算システム
US5010515A (en) * 1987-07-28 1991-04-23 Raster Technologies, Inc. Parallel graphics processor with workload distributing and dependency mechanisms and method for distributing workload
JPH01181163A (ja) * 1988-01-13 1989-07-19 Seiko Instr & Electron Ltd 図形表示システム
US5136717A (en) * 1988-11-23 1992-08-04 Flavors Technology Inc. Realtime systolic, multiple-instruction, single-data parallel computer system
US5187793A (en) * 1989-01-09 1993-02-16 Intel Corporation Processor with hierarchal memory and using meta-instructions for software control of loading, unloading and execution of machine instructions stored in the cache
EP0389175A3 (en) * 1989-03-15 1992-11-19 Fujitsu Limited Data prefetch system
JPH04219859A (ja) * 1990-03-12 1992-08-10 Hewlett Packard Co <Hp> 並列プロセッサに直列命令ストリームデータを分散するハードウェアディストリビュータ
US5321505A (en) * 1991-01-11 1994-06-14 Microelectronics & Computer Technology Corporation Computer scalable visualization system
US5250940A (en) * 1991-01-18 1993-10-05 National Semiconductor Corporation Multi-mode home terminal system that utilizes a single embedded general purpose/DSP processor and a single random access memory
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
WO1994002295A1 (en) * 1992-07-17 1994-02-03 Eero Kivimaa An arrangement for fixing the blades of a frame saw
US5325485A (en) * 1992-10-30 1994-06-28 International Business Machines Corporation Method and apparatus for displaying primitives processed by a parallel processor system in a sequential order
JP3304444B2 (ja) * 1992-11-30 2002-07-22 富士通株式会社 ベクトル処理装置
JPH06274578A (ja) * 1993-03-18 1994-09-30 Fuji Facom Corp 画像情報処理方式
US5450542A (en) 1993-11-30 1995-09-12 Vlsi Technology, Inc. Bus interface with graphics and system paths for an integrated memory system
JP2634141B2 (ja) * 1994-01-19 1997-07-23 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチプロセッサ・システム
US5706478A (en) * 1994-05-23 1998-01-06 Cirrus Logic, Inc. Display list processor for operating in processor and coprocessor modes
US5657479A (en) * 1995-12-04 1997-08-12 Silicon Graphics, Inc. Hierarchical display list processing in graphics data retrieval system
US5917505A (en) * 1995-12-19 1999-06-29 Cirrus Logic, Inc. Method and apparatus for prefetching a next instruction using display list processing in a graphics processor
US5983326A (en) * 1996-07-01 1999-11-09 Sun Microsystems, Inc. Multiprocessing system including an enhanced blocking mechanism for read-to-share-transactions in a NUMA mode
US5996058A (en) * 1996-08-19 1999-11-30 Samsung Electronics Company, Ltd. System and method for handling software interrupts with argument passing

Also Published As

Publication number Publication date
AU730429B2 (en) 2001-03-08
AU5938898A (en) 1998-10-01
DE69820143T2 (de) 2004-10-14
DE69820143D1 (de) 2004-01-15
KR19980080758A (ko) 1998-11-25
CA2232904A1 (en) 1998-09-27
US6219073B1 (en) 2001-04-17
EP0871142A2 (en) 1998-10-14
JPH10269165A (ja) 1998-10-09
EP0871142A3 (en) 1999-11-03
CN1198557A (zh) 1998-11-11
CN1107923C (zh) 2003-05-07
TW394906B (en) 2000-06-21
KR100562692B1 (ko) 2006-10-24
EP0871142B1 (en) 2003-12-03

Similar Documents

Publication Publication Date Title
JP3739888B2 (ja) 情報処理装置および方法
JP3681026B2 (ja) 情報処理装置および方法
KR100527324B1 (ko) 정보처리장치
US7196710B1 (en) Method and apparatus for buffering graphics data in a graphics system
JP4925385B2 (ja) 機能拡張型メモリコントローラを備えるグラフィックス処理システム
US6559854B2 (en) Image creation device
JP2001243481A (ja) 画像生成装置
US7170512B2 (en) Index processor
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
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051007

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: 20051101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051104

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: 20091111

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091111

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101111

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111111

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121111

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121111

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131111

Year of fee payment: 8

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