JP2002189629A - 機能拡張型メモリコントローラを備えるグラフィックス処理システム - Google Patents
機能拡張型メモリコントローラを備えるグラフィックス処理システムInfo
- Publication number
- JP2002189629A JP2002189629A JP2001133526A JP2001133526A JP2002189629A JP 2002189629 A JP2002189629 A JP 2002189629A JP 2001133526 A JP2001133526 A JP 2001133526A JP 2001133526 A JP2001133526 A JP 2001133526A JP 2002189629 A JP2002189629 A JP 2002189629A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- resource
- access
- write
- main
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- 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/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Memory System (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
セッサを備えるグラフィックスシステムにおいて、メモ
リコントローラは、メインメモリへのアクセスをシーク
する様々な競合メモリ間の調停、メモリアクセス要求リ
ソースのメモリ待ち時間および帯域幅必要条件の対処、
バスターンアラウンドを減少させるためのバッファ書き
込み、メインメモリのリフレッシュ、およびプログラム
可能なレジスタを用いてのメインメモリの保護など、メ
モリ制御関連の様々な機能を果たす。メモリコントロー
ラは、それぞれ異なる競合リソースからの書き込み要求
をキューにいれる、「グローバル」書き込みキューを使
用してメモリの読み出し/書き込みの切り替えを最小に
する。 【効果】メモリ読み出しとメモリ書き込みとの間の切り
替えを最小にして、メモリアクセス時間を向上させるこ
とができる。
Description
フィックスに関し、より特定的には、ホームビデオゲー
ムプラットフォームなどの対話式グラフィックスシステ
ムに関する。さらにより特定的には、本発明は、リソー
スのメインメモリへのアクセスを制御する対話式グラフ
ィックスシステムなどで使用されるメモリコントローラ
に関する。
もちゃといった空想的な生物が、非常にリアルに映像化
された映画を見かけることが多くなっている。このよう
な動画は、コンピュータグラフィックスにより可能とな
っている。この技術を用いることにより、コンピュータ
グラフィックスアーチストは、各物体の形状および時間
の経過に伴って生じる外見上の変化を特定することがで
きる。そして、コンピュータが物体をモデリングして、
家庭用テレビやコンピュータなどの画面上に表示する。
表示動画の各部分は、そのシーンにおける物体相互の距
離および向き、各物体に対する照明方向、各物体の表面
の質感、その他様々な要素に基づき着色・形成され、こ
の着色・形成を適切に行うために必要な数多くの処理
は、コンピュータが引き受ける。
複雑なため、ほんの数年前まで、コンピュータで生成し
た3次元グラフィックスの活用は、高価格で専門化され
たフライトシュミレータ、上位グラフィックスワークス
テーション、およびスーパーコンピュータに限られてい
た。人々は、これらコンピュータシステムによって作り
出された動画を、映画や制作費の高いテレビコマーシャ
ルで目にすることがあっても、実際にグラフィックスを
作成しているコンピュータと接触することはできなかっ
たのである。しかし、ニンテンドウ64(登録商標)や
各種3Dグラフィックスカードなど、比較的安価なPC
用グラフィックスプラットフォームの登場により、状況
は変わった。今や、自宅やオフィスでも、手ごろな価格
のコンピュータグラフィックスシステムを用いて、迫力
のある3Dアニメーションおよびシミュレーションを、
対話的に作り出すことが可能になっている。
ュレーションを、手ごろな価格のコンピュータグラフィ
ックスシステムを用いて作り出すには、競合リソース間
におけるメインメモリへのアクセスを効率的に制御する
ことが重要である。このようなアクセス制御システムに
は、どれもかなりの制約が加えられる。例えば、CPU
で実行される主要なアプリケーションプログラムは、C
PUもメインメモリへのアクセスをシークする数多くの
リソースのうちのひとつであることから、命令の高速処
理を可能にするために、一定のメモリ読み出し待ち時間
でメモリアクセスが許可されなければならない。したが
って、CPUは、メインメモリへのアクセスに対して高
い優先順位を付与される必要がある。迫力のあるグラフ
ィックスを生成するためには、メモリアクセスをシーク
するグラフィックス関連リソースも同様に、グラフィッ
クス処理を高速に行うためにメインメモリへの高速アク
セスが保証されなければならない。
インメモリへのアクセスをシークする数多くの競合リソ
ース間の調停など、様々なメモリ制御関連機能を果たす
メモリコントローラによって具体化される。この固有な
メモリコントローラによって行われるタスクは、メモリ
アクセスを要求しているリソースのメモリ待ち時間およ
び帯域幅の必要条件の対処、ターンアラウンドを減少さ
せるためのバッファ書き込み、メインメモリのリフレッ
シュ、プログラム可能なレジスタを使用してのメインメ
モリの保護、およびその他数多くの機能が含まれる。
みをシークするリソースのメモリアクセスを制御する
際、メモリコントローラは、メモリ読み出しとメモリ書
き込みとの間の切り替えを最小にして、この切り替えに
より引き起こされる遊休サイクルによるメモリ帯域幅の
浪費を回避し、それによりメモリアクセス時間を向上さ
せる。この例示メモリコントローラは、読み出し/書き
込みの切り替えを減少するため、様々な競合リソースか
らの書き込み要求をキューに入れる「グローバル」書き
込みキューを使用する固有な書き込み式バッファ技法を
組み込むことにより、そのような切り替えを最小にす
る。これにより、メモリ書き込みを競合する複数のリソ
ースは1つのリソースにまとめられ、そこから書き込み
要求が送出される。
ントローラは、リソースのメモリ待ち時間と帯域幅必要
条件とを考慮に入れて、メインメモリへのアクセスを有
利に最適化する。
ドレス位置が書き込み動作により更新されるより先にメ
インメモリのアドレス位置からデータを読み出すことに
より引き起こされるメモリからの古いデータへのアクセ
スを回避することにより、メモリコヒーレンシー問題を
固有に解決する。コヒーレンシー問題は、読み出しおよ
び書き込み機能を共に有する単一リソースと、異なるリ
ソースとの両方によって対処される。実施形態例では、
このようなコヒーレンシー問題をリソース関連バッファ
を効率的にフラッシュすることで対処している。例え
ば、メインメモリへの書き込みを行っているリソース
は、フラッシュ信号をメモリコントローラに送出し、そ
のリソースの書き込み式バッファがフラッシュの必要が
あることを知らせる。実施例に従って、メモリコントロ
ーラはフラッシュ認識ハンドシェイク信号を生成して、
競合リソースに対してメインメモリに書き込みされたデ
ータは、関連リソースバッファではなく、実際はメイン
メモリに格納されていることを伝える。
グラフィックスシステム50の一例を示す。システム5
0は、興味をそそる立体音響を伴う対話式3Dビデオゲ
ームをプレイするのに使用され得る。さらに、その他さ
まざまなアプリケーションにも使用され得る。
表現または3次元世界のモデルを、対話的にリアルタイ
ムで処理する機能を有する。システム50は、当該世界
をどこでも任意の視点から部分的、または全体的に表示
することができる。例えば、システム50は、手持ちコ
ントローラ52aおよび52b、またはその他の入力装
置からのリアルタイム入力に応答して、対話的に視点を
変えることができる。これにより、ゲームプレイヤは、
当該世界の内部、または外部にいる誰かの目を通して当
該世界を見ることができる。システム50は、リアルタ
イム対話式3D表示を必要としないアプリケーションに
使用可能であるが(例えば2D表示生成、および/また
は非対話式表示)、その高品質な3D画像の超高速表示
機能により、非常にリアルで迫力のあるゲームプレイの
製作、またはその他グラフィカルな対話に使用すること
ができる。
アプリケーションをプレイするには、ユーザはまず、ケ
ーブル58を用いて、メインユニット54を自身のカラ
ーテレビセット56、またはその他の表示装置に接続す
る。メインユニット54は、映像信号と音声信号とを生
成して、カラーテレビセット56を制御する。映像信号
は、テレビスクリーン59上に表示される画像を制御す
るものであり、音声信号は、テレビステレオスピーカ6
1L、61Rを通して、音声として再生される。
電源に接続する。この電源は従来のACアダプタ(図示
せず)であって、標準型の家庭用電気コンセントに差込
まれ、家庭用電流をメインユニット54への電力供給に
適した低圧DC信号に変換する。電池は他の実施形態で
使用可能である。
び52bでメインユニット54を制御してもよい。例え
ば、操縦部60を用いて、テレビ56に表示されるキャ
ラクタが3次元世界で動く操縦部60はさらに、その他
のアプリケーションに入力を与える(例えば、メニュー
の選択、ポインタ/カーソルの制御)。コントローラ5
2aおよび52bは、さまざまな形をとることができ
る。本例においては、図示されるコントローラ52はそ
れぞれ、ジョイスティック、プッシュボタン、および/
または方向スイッチなどの操縦部60aまたは60bを
備える。コントローラ52は、電磁(無線、赤外線な
ど)波を介して、ケーブル、またはワイヤレスでメイン
ユニット54に接続されてもよい。
る場合、ユーザはビデオゲームなど、自身がプレイした
いアプリケーションを記憶している記憶媒体62を適宜
選択し、その記憶媒体をメインユニット54のスロット
64に挿入する。記憶媒体62は、例えば、特別にコー
ド化および/または暗号化された光および/または磁気
ディスクであってもよい。ユーザは、電源スイッチ66
を操作してメインユニット54をオンにし、記憶媒体6
2に記憶されているソフトウェアに基づいて、ビデオゲ
ームなどのアプリケーションの実行を開始させる。ユー
ザは、コントローラ52aおよび52bを操作して、メ
インユニット54に入力を与えてもよい。例えば、操縦
部60aや60bを操作すや60bを動かすと、アニメ
化されたキャラクタがそれぞれ異なる方向に移動した
り、3次元世界におけるユーザの視点が変化し得る。記
憶媒体62内部に格納されているソフトウェアにより、
コントローラ52aおよび52b上の各操縦部60aお
よび60bが果たす機能、およびその時間はそれぞれ異
なる。
ある。主な構成要素としては、 ・メインプロセッサ(CPU)110 ・メインメモリ112、および ・グラフィックス&音声プロセッサ114 が含まれる。
(例えば、機能拡張型IBM POWER PC75
0)は、グラフィックス&音声プロセッサ114を介し
て、手持ちコントローラ52(および/またはその他の
入力装置)から入力を受け取る。メインプロセッサ11
0は、ユーザ入力に対話的に応答し、光ディスクドライ
ブなどの大容量記憶アクセス装置106を介して、外部
記憶媒体62によって提供されるビデオゲーム、または
その他のプログラムを実行する。例えば、ビデオゲーム
プレイの状況において、メインプロセッサ110は、様
々な対話式制御機能に加え、衝突検出や動画処理を行う
ことができる。
Dグラフィックスコマンドと音声コマンドとを生成し、
それらをグラフィックス&音声プロセッサ114に送出
する。グラフィックス&音声プロセッサ114は、これ
らコマンドを処理し、表示器59上に動的な視覚画像を
生成し、さらにステレオスピーカ61Rおよび61L、
またはその他の適切な音声出力装置から、高品質な立体
音響を出力する。
音声プロセッサ114から画像信号を受信し、その画像
信号を、コンピュータのモニタや家庭用カラーテレビセ
ット56などの標準的な表示装置に表示するのに適した
アナログおよび/またはデジタル映像信号に変換するビ
デオ符号化器120を含む。システム50は、さらに、
デジタル化された音声信号を圧縮/伸張し、さらに必要
に応じて、デジタル音声信号フォーマットとアナログ音
声信号フォーマット間の変換を行う音声コーディック
(コンプレッサ/デコンプレッサ)122を含む。音声
コーディック122は、バッファ124を介して音声入
力を受け取り、それらを処理(プロセッサが生成したそ
の他の音声信号や、大容量記憶アクセス装置106の音
声出力ストリームを介して受信する音声信号をミック
ス)するためにグラフィックス&音声プロセッサ114
に提供することもできる。本例におけるグラフィックス
&音声プロセッサ114は、音声関連情報を音声タスク
に使用可能な音声メモリ126に格納する。グラフィッ
クス&音声プロセッサ114は、処理結果の音声出力信
号を、伸張してアナログ信号に変換(例えば、バッファ
アンプ128Lおよび128Rを介して)するために、
音声コーデック122に出力し、その結果、スピーカ6
1Lおよび61Rによって再生され得る。
は、システム50中に存在する様々な装置と通信する機
能を備えている。例えば、パラレルデジタルバス130
は、大容量記憶アクセス装置106および/またはその
他の構成要素との通信に使用され得る。シリアル周辺バ
ス132は、例えば、 ・プログラム可能な読み出し専用メモリおよび/または
リアルタイムクロック134 ・モデム136、またはその他のネットワーキングイン
ターフェース(プログラム命令および/またはデータ
が、そこから/そこにダウンロードまたはアップロード
され得る、インターネットやその他のデジタルネットワ
ークなどのテレコミュニケーションネットワーク138
に、システム50を接続し得るもの) ・フラッシュメモリ140 等の各種周辺装置と通信するのに使用されてもよい。な
お、さらなる外部バス142は、一例としてシリアルバ
スであってもよく、追加拡張メモリ144(例えば、メ
モリカード)などの装置との通信に使用されてもよい。
コネクタは、様々な装置をバス130、132、142
に接続するために使用されてもよい。
を示すブロック図である。グラフィックス&音声プロセ
ッサ114は、例えば、単一ASIC(特定用途向け集
積回路)である。本例においては、グラフィックス&音
声プロセッサ114は、 ・プロセッサインターフェース150 ・メモリインターフェース/コントローラ152 ・3Dグラフィックスプロセッサ154 ・音声デジタル信号プロセッサ(DSP)156 ・音声メモリインターフェース158 ・音声インターフェースおよびミキサ160 ・周辺コントローラ162、および ・ディスプレイコントローラ164 を備える。
グラフィックス処理タスクを行う。音声デジタル信号プ
ロセッサ156は、音声処理タスクを行う。ディスプレ
イコントローラ164は、メインメモリ112の画像情
報にアクセスし、それを表示装置56に表示するためビ
デオ符号化器120に供給する。音声インタ―フェース
およびミキサ160は、音声コーデック122と接続さ
れて、異なるソースからの音声(例えば、大容量記憶ア
クセス装置106からの音声ストリーム、音声DSP1
56からの出力、および音声コーディック122を介し
て受信した外部音声入力)をミックスすることができ
る。プロセッサインターフェース150は、メインプロ
セッサ110とグラフィックス&音声プロセッサ114
との間で、データの供給とインターフェース制御とを行
う。
フェース152は、グラフィックス&音声プロセッサ1
14とメモリ112との間で、データの供給とインター
フェース制御とを行う。本例では、メインプロセッサ1
10は、グラフィックス&音声プロセッサ114の一部
であるプロセッサインターフェース150およびメモリ
インターフェース152を介して、メインメモリ112
にアクセスする。周辺コントローラ162は、グラフィ
ックス&音声プロセッサ114と前述した様々な周辺装
置との間で、データの供給とインターフェース制御とを
行う。音声メモリインターフェース158は、音声メモ
リ126とのインターフェースとなる。
ックスプロセッサ154を含むグラフィックス処理シス
テムを示す。3Dグラフィックスプロセッサ154は、
他構成要素に加え、コマンドプロセッサ200と3Dグ
ラフィックスパイプライン180とを備える。メインプ
ロセッサ110は、コマンドプロセッサ200にデータ
のストリーム(例えば、グラフィックスコマンドストリ
ーム、表示リスト)を通信する。メインプロセッサ11
0は、2レベルキャッシュ115を備え、メモリ待ち時
間を最小にする。さらに、グラフィックス&音声プロセ
ッサ114向けのアンキャッシュデータのストリーム用
書き込み用ギャザリングバッファ111を備える。この
書き込み用ギャザリングバッファ111は、キャッシュ
ラインを部分的に集めてフルキャッシュラインにし、バ
スを最大限に使用するために、1回につき1キャッシュ
ラインでデータをグラフィックス&音声プロセッサ11
4に送出する。
110から表示コマンドを受信し、それらを解析する。
なお、この処理を行うのに必要な追加データがあれば、
メモリコントローラ152を介して共有メモリ112か
ら取得する。コマンドプロセッサ200は、2Dおよび
/または3D処理およびレンダリングを行うために、頂
点コマンドのストリームをグラフィックスパイプライン
180に提供する。グラフィックスパイプライン180
は、これらのコマンドに基づいて画像を生成する。結果
作り出された画像情報は、メインメモリ112に転送さ
れ、パイプライン180のフレームバッファ出力を表示
器56に表示するディスプレイコントローラ/ビデオイ
ンターフェースユニット164によりアクセスされる。
を用いて行われる処理を説明するために示すブロック論
理フロー図である。メインプロセッサ110は、グラフ
ィックスコマンドストリーム210、表示リスト21
2、および頂点配列214をメインメモリ112に格納
し、コマンドプロセッサ200にプロセッサ/バスイン
ターフェース150を介してポインタを送り出してもよ
い。メインプロセッサ110は、1つまたはそれ以上の
グラフィックス先入れ先出し(FIFO)バッファ21
0にグラッフィクスコマンドを格納して、メインメモリ
110内に割り当てる。コマンドプロセッサ200は、
・同期/フロー制御、およびロードバランシングのため
の、グラフィックスコマンドを受信してバッファリング
する、オンチップFIFOメモリバッファ216を介し
ての、メインメモリ112からのコマンドストリーム ・オンチップコールFIFOメモリバッファ218を介
しての、メインメモリ112からの表示リスト212、
および ・頂点キャッシュ220を介しての、メインメモリ11
2内のコマンドストリームおよび/または頂点配列21
4からの頂点の属性、 を取り込む。
理動作200aを行い、属性のタイプを浮動小数点形式
に変換して、その結果である完全な頂点ポリゴンデータ
をグラフィックスパイプライン180に送り出す。そし
てレンダリングとラスタライゼーションとが行われる。
プログラム可能なメモリ調停回路130(図4参照)
は、グラフィックスパイプライン180と、コマンドプ
ロセッサ200と、ディスプレイコントローラ/ビデオ
インターフェースユニット164との間の、共有メイン
メモリ112へのアクセスを調停する。
3D変換やその他動作300a(図5参照)を実行す
る。変換ユニット300は、1つまたはそれ以上のマト
リックスメモリ300bを備え、変換処理300aで使
用するマトリックスを格納する。変換ユニット300
は、受け取った図形を頂点ごとにオブジェクト空間から
スクリーン空間に変換したり、受け取ったテクスチャ座
標から投影するテクスチャの座標を求めたり(300
c)する。変換ユニット300は、さらにポリゴンのク
リッピング/カリング300dを行う。明暗処理300
eも同様に変換ユニット300によって行われ、頂点ご
とに明暗計算を行って例えば最高8段階の明暗を得る。
変換ユニット300は、さらにテクスチャ座標を作成
(300c)し、ポリゴンのクリッピング/カリング処
理(300d)同様、エンボスタイプのバンプマッピン
グ効果を得る。
換ユニット300から頂点データを受信し、境界のラス
タライズ、テクスチャ座標のラスタライズ、および色の
ラスタライズを行う1つまたはそれ以上のラスタライズ
ユニット(400b)にトライアングルセットアップ情
報を送出するセットアップユニットを含んでいる。
クスチャメモリ(TMEN)502を備えていてもかま
わない)は、テクスチャに関する様々な処理、例えば ・メインメモリ112からのテクスチャ504の受信、 ・例えば、マルチテクスチャ処理、キャッシュ後テクス
チャの伸張、テクスチャフィルタリング、エンボス、投
影テクスチャを使用しての陰影および明暗処理、α透明
度や深度のBLITを含むテクスチャ処理(500
a)、 ・バンプマッピング、疑似テクスチャ、およびテクスチ
ャタイリング効果(500b)用にテクスチャの座標の
ずれを計算するバンプマップ処理、および ・間接的テクスチャ処理(500c)、 を行う。
環境処理(600a)のために、フィルタされたテクス
チャの値を、テクスチャ環境ユニット600に出力す
る。テクスチャ環境ユニット600は、ポリゴンとテク
スチャの色/α/深度とをブレンドし、テクスチャフォ
グ処理(600b)を行って、フォグ効果に基づく逆レ
ンジを得ることができる。テクスチャ環境ユニット60
0は、例えば色/α変調、エンボス、細部テクスチャリ
ング、テクスチャスワッピング、クランピング、および
深度ブレンディングに基づいて、興味深い様々な環境関
連機能を実行するための段を複数備え得る。
較(700a)およびピクセルブレンディング(700
b)を行う。本例において、ピクセルエンジン700
は、データを埋め込み型(オンチップ)フレームバッフ
ァメモリ702に格納する。グラフィックスパイプライ
ン180は、1つまたはそれ以上の埋め込み型DRAM
メモリ702を備え、フレームバッファ、および/また
はテクスチャ情報をローカルに格納してもよい。Z比較
700a’は、その時点におけるレンダリングモードに
よっては、グラフィクスパイプライン180の初期段に
おいて行われてもよい(αブレンディングが必要でなけ
れば、z比較は初期の段階で実行されてもよい)。ピク
セルエンジン700は、オンチップフレームバッファ7
02をメインメモリ112に定期的に書き込むコピー動
作700cを行い、ディスプレイ/ビデオインターフェ
ースユニット164のアクセスに備える。さらに、この
コピー動作700cは、動的なテクスチャ合成効果を得
るために、埋め込み型フレームバッファ702の内容を
メインメモリ112内のテクスチャにコピーする際にも
利用され得る。アンチエイリアシングおよびその他のフ
ィルタリングは、コピーアウト動作中に行われる。グラ
フィックパイプライン180のフレームバッファ出力
(最終的にメインメモリ112内に蓄えられる)は、デ
ィスプレイ/ビデオインターフェースユニット164に
よってフレームごとに読み取られる。ディスプレイコン
トローラ/ビデオインターフェース164は、デジタル
RGBピクセル値を出力して、表示器56に表示させ
る。
52(図3および図4)およびそれに接続されて、メイ
ンメモリ112へのアクセスを競合する様々なリソース
を示すブロック図である。メインメモリ112は、例え
ば、Mosys社製であって、内部リフレッシュ動作を
自動的に行う、1TSRAMなどのSRAMを備える。
メモリインターフェースコントローラ152は、メイン
プロセッサ110、グラフィックス&音声プロセッサ1
14、およびメインメモリ112の間で、データ供給お
よびインターフェース制御を可能にする。図4におい
て、メモリコントローラ152およびグラフィックスメ
モリ要求調停130は、それぞれ個別の構成要素として
示されているが、以下に説明する実施例においては、グ
ラフィックスメモリ要求調停130は、メモリコントロ
ーラ152に含まれる。
トローラ152は、メインメモリ12へのアクセスをシ
ークする様々な競合リソースに接続される。これら競合
リソースには、プロセッサインターフェース(PI)1
50(メインプロセッサ110に接続される)、音声D
SP(DSP)156、入力/出力インターフェース
(IO)802、ビデオインターフェース(VI)16
4、キャッシュ/コマンドプロセッサ(CP)200、
テクスチャユニット(TC)500、およびピクセルエ
ンジン(PE)700が含まれる。本実施形態例におい
て、これらリソースのうち、プロセッサインターフェー
ス150、音声DSP156、およびIOインターフェ
ース802は、メインメモリ112からの情報読み出し
および情報書き込みの両方に動作可能である。IOイン
ターフェース802は、自身の調停に動作可能であり、
モデム、DVDインターフェースなどの様々な入力/出
力装置にインターフェースされ、そのメモリ帯域幅の要
求基準も比較的低い。本実施形態例において、ビデオイ
ンターフェース164、キャッシュ/コマンドプロセッ
サ200、およびテクスチャユニット500は、メイン
メモリ112からの情報読み出しだけに動作可能であ
り、ピクセルエンジン700は、メインメモリ112へ
の情報書き込みだけに動作可能である。
リコントローラタスクを行い、タスクには、1)例え
ば、図6および図7に示す7つのポートの間の、メイン
メモリ112に対するアクセスの調停、2)メモリアク
セスを要求しているリソースのメモリ待ち時間、および
必要帯域幅を考慮に入れた上での、メモリアクセスの認
可、3)アクセスターンアランドを減少させるためのバ
ッファ書き込み、4)必要に応じてメインメモリ112
のリフレッシュ、および5)プログラム可能なレジスタ
を使用しての、メインメモリ112の保護、などが含ま
れる。図6および図7に示す実施形態例においては、メ
モリアクセスをシークする7つのポートが図示されてい
る。当業者には自明であるが、どの実施例においても、
ポートの数は7以下であっても、以上であってもよい。
さらに、図7など(さらにその他の実施例における説明
も含む)に示すバス/信号ライン幅は、例示目的のため
だけに過ぎず、本発明の範囲を制限するものではない。
メモリコントローラ152は、特定ポートの間で調停を
行い、メインメモリ112に要求を送出する。本実施形
態例において、メモリコントローラ152、およびその
入力および出力のすべては200MHzで動作する。1
28ビットの200MHzデータパスは、4チャネルメ
モリアクセスコントロール(MAC)ブロックを経由し
て最高400MHzでクロック制御され、400MHz
の外部1TSRAMメモリとの通信を許可する。MAC
は、各32ビットパスからデータを受信して、適切なク
ロック速度でデータを同期読み出しする。図7に示すア
ドレスおよび制御信号は、IOピンに直接接続される。
メインメモリ112との通信に使用される特定の信号方
式は、本発明には含まれない。
リソース調停の方法(発明の名称が「共有リソースアク
セス方法および装置」である、同時係属出願番号60/
226、886、代理人名簿番号723−754でさら
に説明されてこの出願は、ここに引用例として組み込ま
れている)に従って、アプリケーションプログラマが、
例えば3.2ギガバイトのメインメモリ112の帯域幅
の割り当てを制御できるようにするため、帯域幅制御
は、上記リソースのそれぞれに固有に関連して行われ
る。例えば、プログラム可能な帯域幅制御レジスタは、
それぞれコマンドプロセッサ200、および、テクスチ
ャユニット500に対応づけられる。これらは、メイン
メモリの帯域幅を、テクスチャユニット500よりコマ
ンドプロセッサ200に対してより多く割り当てるため
に利用される。この方法によれば、見識のあるユーザで
あれば、上記の競合インターフェースドライバを個々の
アプリケーションのニーズに合わせて調整し、総合的な
性能を向上させることも可能である。従って、上記の競
合インターフェースそれぞれに対して、レジスタを利用
してそのメモリ帯域幅の割り当てを制御し、nクロック
サイクルごとにメモリ調停の要求が確実に認可されるよ
うにする。これにより、あるインターフェースが一度に
大量のリクエストを生成し、他のインターフェースも同
様にリクエストを生成している場合、各インターフェー
スに対して例えばフィルタを使用して、メインメモリへ
のアクセス要求をスローダウンさせることができる。ま
たは、メインメモリ112が遊休状態にあり、さらにど
のユニットもメモリアクセスを主張していない場合、そ
のようなアクセス要求が認可される。他のインターフェ
ースからの要求が同時に存在する場合、使用するフィル
タによって、ある特定のインターフェースに対して要求
が認可されるスピードが規定される。
リ112への要求に関連する様々なグラフィックスデー
タを制御し、例えば、 ・3Dグラフィックスプロセッサ154(具体的には、
コマンドプロセッサ200、テクスチャユニット50
0、およびピクセルエンジン700)、 ・プロセッサインターフェース150を介するメインプ
ロセッサ110、 ・音声DSP156、 ・ディスプレイコントローラ164、および ・様々なI/Oユニット(大容量記憶アクセス装置10
6)のための周辺コントローラ162、 などがある。
するこれら「要求部」に関わるいくつかの典型的な動作
を示す。図8中の矢印は、以下の動作を示す。 1. 新たな画像、ゲームセクタまたはレベル、または
その他アプリケーションシーケンスのための大容量記憶
アクセス装置62(例えばDVD)からメインメモリ1
12へのテクスチャ画像のロード 2. 新たに画像、ゲームセクタまたはレベル、または
その他アプリケーションシーケンスのための、大容量記
憶アクセル装置62からメインメモリへの形状頂点配列
のロード 3. メインプロセッサ110、またはグラフィックス
プロセッサ154によるテクスチャマップの動的レンダ
リング 4. メインプロセッサ110による、頂点配列の動的
生成、または変更 5. グラフィックスプロセッサ154による消費のた
めに、メインプロセッサ110による光のアニメ化およ
びマトリックスの変換 6. グラフィックスプロセッサ154による消費のた
めに、メインプロセッサ110による表示リストの作成 7. メインプロセッサ110による、グラフィックス
コマンドストリームの生成 8. 3Dグラフィックスプロセッサ154によるグラ
フィックスコマンドストリームの読み出し 9. 3Dグラフィックスプロセッサ154による表示
リストの読み出し 10. レンダリングのための、3Dグラフィックスプ
ロセッサ154による頂点アクセス 11. レンダリングのための、3Dグラフィックスプ
ロセッサ154によるテクスチャアクセス
セッサ114は、以下のタイプのデータに対して、整列
要求などのデータメモリ必要条件をいくつか有する。例
えば、テクスチャおよびテクスチャ参照用テーブル画
像、表示リスト、グラフィックスFIFO、および外部
フレームバッファなどに対してである。これらのデータ
オブジェクトに対して整列が要求されるのは、グラフィ
ックスプロセッサ114が非常に高速であり、かつメイ
ンメモリ112からのデータが32バイトのまとまりで
転送されるためである。データ整列により、単純かつ高
速なハードウエアが可能になる。
の他のデータオブジェクトについては、本実施形態例に
おける追加的なハードウェアサポートによって、コアー
ス整列(4バイト整列)が不要になる。このようなデー
タオブジェクトが多数存在するため、個々のオブジェク
トのメモリ消費は、場合によっては低くなり、よって、
整列要求の緩和によりメモリの消費が抑えられる。
ハードウェアブロックにより、メインメモリが更新され
得る。さらに、CPU110、およびグラフィックスプ
ロセッサ114は、様々なデータキャッシュを含む。ハ
ードウェアはメインメモリ内でのデータ、およびその関
連キャッシュのコヒーレンシーを保持しないため、様々
なコヒーレンシーに関わる問題を引き起こす原因とな
る。例えば、グラフィックスプロセッサ114用のデー
タをCPUが変更または生成する場合、CPUが自身の
書き込み用バッファを介してキャッシュされたメモリに
データ書き込みを行う場合、およびグラフィックスプロ
セッサ114向けの新たなデータをDVDからメインメ
モリにロードする場合などが考えられる。コヒレンシー
に関わる問題は、これら後者2つの場合において、デー
タの格納に使用されていたメインメモリがその他のグラ
フィックスデータに使用された場合に起こり得る。
APIは、CPUデータキャッシュ内に存在するメイ
ンメモリのロードされた部分を自動的に無効にする。こ
の安全策により、プログラマはCPUのデータキャッシ
ュコーヒレンシーを気にすることなく、DVDにロード
されたデータを変更することができる。このDVDAI
Pの特質は、デフォルトでアクティブにされ、プログラ
マによってイナクティブにされる。
データは、グラフィックスプロセッサ114によるレン
ダリングのために、既にフォーマットされているテクス
チャと頂点とを含んでいてもよい。そのため、頂点キャ
ッシュとテクスチャキャッシュ領域を無効にする必要が
生じる。
み手段を2つ備える。書き込み用ギャザリングバッファ
と、CPUキャッシュ階層とである。書き込み用ギャザ
リングバッファは、通常、キャッシュに影響を及ぼさず
にグラフィクスコマンドをメモリに「ブラスト」するの
に使用される。その結果、書き込み用ギャザリングバッ
ファを介して送出された情報は、キャッシュコヒーレン
トではない。書き込み用ギャザリングバッファを用い
て、CPUキャッシュ内に存在し得るメモリエリアへの
書き込みを回避する場合には、注意が必要である。以下
に示すキャッシュフラッシング指示を利用して、CPU
キャッシュからデータエリアを強制してもよい。
ィックスデータを生成または変更する場合、以下のメモ
リタイプは、古いデータを格納することになりかねな
い。 ・メインメモリ ・グラフィックスプロセッサ114の頂点キャッシュ、
テクスチャキャッシュ領域 グラフィックスプロセッサ114に正しいデータを送出
するためには、本実施形態例に従って、グラフィックス
プロセッサ114の頂点、またはテクスチャキャッシュ
を無効にすると共に、CPUデータキャッシュをフラッ
シュする必要がある。典型的に、CPUは、グラフィッ
クスプロセッサ114より1フレーム先んじてデータを
アニメ化する。そこで、データのコヒーレンシー保持に
効率的な方法としては、 ・CPUによって変更されたグラフィックスデータすべ
てをメインメモリ内で順にグループ分けして、ブロック
データのキャッシュフラッシュを効率化する ・各グラフィックスフレームの先頭部分で、全てのテク
スチャキャッシュ同様、頂点キャッシュを無効にする、 などがある。
する読み出し、書き込みに関係する動作の一部の例示に
過ぎない。特に、メモリコントローラ152は、メイン
メモリの読み出し、書き込み動作に関わるポートの間で
調停を行う。
詳細に示すブロック図である。図9に示すように、メモ
リコントローラ152は、図6および図7に示す競合リ
ソースのそれぞれに対応する、それぞれ独立した「ロー
カルな」インターフェースを含む。コントローラpiイ
ンターフェース150Iは、プロセッサインターフェー
ス150とインターフェースされ、コントローラDSP
インターフェース156Iは音声DSP156とインタ
ーフェースされ、コントローラioインターフェース8
02Iは入出力インターフェース802とインターフェ
ースされ、コントローラビデオインターフェース164
Iはビデオインターフェース164とインターフェース
され、コントローラcpインターフェース200Iはコ
マンドプロセッサ200とインターフェースされ、コン
トローラtcインターフェース500Iはテクスチャユ
ニット500とインターフェースされ、さらに、インタ
ーフェースpe700Iはピクセルエンジン700とイ
ンターフェースされる。メモリコントローラ152は、
以下に図17および図18を参照してさらに詳しく説明
する、外部メモリコントロール829を介してメインメ
モリと接続される。図17および図18に示す外部メモ
リコントロールは、図17および図18に示すように、
書き込み・読み出し状態間で双方向メモリバスを切り替
える、読み出し/書き込み制御信号を生成する。
00Iに注目すると、このインターフェースは、図6お
よび図7に示す読み出し専用テクスチャユニット500
に接続される。TCインターフェース500I(メイン
メモリから読み出されたリソースに接続される各ローカ
ルインターフェース)は、読み出し要求と、その関連リ
ソースであるテクスチャユニット500から受信に示す
RQ2)を含む。メモリコントローラインターフェース
pe、dsp、io、およびpiも同様に、図10に示
すような、書き込み要求をキューに入れるためのローカ
ル書き込みキューをWQ0−4をそれぞれ含む。
調停技法を実現するための制御論理を含む。調停技法に
関しては、以下およびここに引用例として組み込まれて
いる発明の名称が「共有リソースアクセス方法および装
置」である上述の同時係属出願(代理人名簿番号723
−754)でさらに詳しく説明する。調停コントロール
825は、例えばテクスチャインターフェース500I
が読み出し要求を受信すると、それに対して注意を喚起
される。同様に、インターフェース200I、700
I、150I、156I、164I、802I、および
829は、メモリアクセス要求競合の調停目的に、調停
コントロール825に動作可能に接続される。以下にさ
らに詳しく説明するが、例えばメモリTCインターフェ
ース500I、およびDSPインターフェース156I
から読み出し要求を受信すると(競合リソースは500
Iと156Iだけと仮定した場合)、調停コントロール
825は、最初のメモリサイクルをテクスチャユニット
TCに付与し、次のメモリサイクルをDSP156に授
与する。これにより、読み出し要求はラウンドロビン方
式で認可され得る。調停コントローラ825は、上述の
同時係属特許出願で説明され、さらには以下で述べるよ
うに、ペンディング要求のすべてを認識した上で認可を
行う。
かるように、テクスチャユニットTCの帯域幅要求は高
い(メインメモリデータパスと同じ幅を有する128ビ
ットGFXデータパス参照)。このため、テクスチャユ
ニットは、メモリ帯域幅を無駄にすることなくその要求
が認可され得る。図11に示すように、DSPの帯域幅
は64ビットであり、メモリサイクルを無駄にしないよ
うな方法で、調停コントロール825によって優先度が
授与される。
に述べる調停技法を実現する状態により順位付けを行う
状態装置である。上記同時係属特許出願で詳しく述べて
いるように、調停コントロール825は、帯域幅ダイア
ルレジスタによって部分制御されるため、(例えば)テ
クスチャユニット500からメモリアクセス要求があっ
た場合、その要求は効果的に抑制される。このため、テ
クスチャデータを大量に含むビデオゲームにおいては、
システムの帯域幅は調整されて、その特定ゲームのメモ
リアクセスのニーズに対して最適化される。
出し「マスタ」(メインメモリ112へのアクセスをシ
ークするリソース)は、メインメモリ112からの読み
出しに備えて読み出しアドレスをキューに入れるため
に、読み出しキューRQ1からRQ6のうち対応するも
のに関連づけられる。メインメモリ112へのアクセス
をシークする書き込みマスタは、メインメモリ112へ
の書き込みに備えて書き込みアドレスをキューに入れる
ために、書き込みキューWQ1からWQ4のうち対応す
るものに関連づけられる。調停コントロール825は、
所定の調停プロセスを利用して、メインメモリへのアク
セスを読み出しキューRQ1からRQ6に割り当て、さ
らに、書き込みキューWQ1からWQ4のうち、どの書
き込み要求がグローバル書き込み用バッファWQ0に提
供されるかを制御する。少なくとも要求のいくつかがこ
の調停プロセスに供給される率は、プログラム可能な帯
域幅ダイアルレジスタの設定に従って制御可能である。
ある特別な動作目的でダイアルレジスタを適切に設定す
ることにより、見識のあるユーザは、要求の流れをこの
調停プロセスに合わせることにより、システムの動作性
能を向上させることが可能である。
き込み要求を集めることにより、読み出しから書き込
み、および書き込みから読み出しへの切り替えが減少さ
れ、メインメモリタイプが動作によって変更される際に
生じるデッドメモリサイクルが最小化できる。書き込み
要求はグローバル書き込み用バッファWQ0に供給さ
れ、一方読み出し要求は調停プロセスに従って処理され
る。グローバル書き込み用バッファWQ0があるレベル
まで満たされた場合、あるいはメインプロセッサの読み
出し要求がグローバル書き込み用バッファのエントリに
マッチした場合、メインメモリのデータパスは、読み出
しから書き込み状態に切り替えられることが多い。この
スイッチオーバーにより、グローバル書き込み用バッフ
ァWQ0は、メインメモリ112のある特定アドレスに
データを書き込むためにフラッシュされる。
応マスタのためにメモリ帯域幅を制御する。例えば、コ
マンドプロセッサのダイアルレジスタの内容がメモリサ
イクルごとに加算される累算器が1.00より少ない場
合、この調停方式では、待ち状態のコマンドプロセッサ
要求があったとしても、累算器の内容が1.00以上に
なるように十分なサイクルが経過するまで、または他の
マスタからの待ち状態の要求があるまで、別のマスタに
メモリアクセスを認可する。メモリコントローラ152
は、ダイアルレジスタの設定により、メインメモリ11
2が遊休状態にならないようにするのが好ましい。ダイ
アルレジスタは、該当マスタのダイアルレジスタに対応
する累算器が1.00に等しくなるまで、そのマスタか
らの要求をマスキングすることにより、この調停方式に
作用する。
主要メモリの「ホグ」により、メモリの使用に影響を及
ぼす。読み出しダイアルは、マスタの調停方式における
参加頻度と、メモリへのアクセス頻度を制御する。書き
込みダイアルはフロー制御目的であり、書き込みをグロ
ーバル書き込み用バッファWQ0にスロットリングする
ことにより、書き込み装置をスローダウンさせることが
できる。ここで、帯域幅ダイアルの設定により、許可さ
れない未処理読み出し要求がある場合、調停によりメモ
リを遊休状態にしないことが好ましい。この場合、スロ
ットリングされる要求部の間で、ラウンドロビン方式が
用いられる。
べて単一キャッシュライン(32バイト)である。その
ため、キャッシュラインの読み出しには200MHzで
2サイクル要し、新規読み出しは10ナノ秒ごとに行わ
れる。その他要求部の間でのラウンドロビン調停におい
て、メインプロセッサ110からの読み出しが最優先さ
れる。メモリ所有権は、読み出し要求部の間で10ナノ
秒毎に変わってリフレッシュされるが、書き込みキュー
は常に全体にわたって書き込みされる。書き込みキュー
は、あるレベルまで、またはあるレベルを超えて満たさ
れたとき、またはメインプロセッサからの読み出し要求
が書き込み用バッファのエントリにマッチしたときに、
要求を開始する。
タ、およびその他以下に特定されるレジスタは、メモリ
コントローラのプログラム可能なメモリレジスタ823
として具現化される。以下で詳しく特定されるこれらレ
ジスタは、メインCPU110によりプログラム可能で
あり、様々なメモリコントローラ機能を制御する。メモ
リコントローラ152に含まれるレジスタは、メモリア
クセスパフォーマンス関連のレジスタである。例えば、
パフォーマンスカウンタレジスタは、特定の競合リソー
スから受け取った要求の数を特定する。パフォーマンス
カウンタは、浪費されたメモリサイクルの状況を把握す
るのに用いられ、パフォーマンスカウンタレジスタの解
析に基づいて、メモリ帯域幅がどの程度有効に割り当て
られているかを決定する。パフォーマンスカウンタは、
読み出し/書き込み動作間の切り替えで必然的にロスさ
れたサイクルと、遊休タイムとを区別するのに使用され
てもよい。上述したように、サイクルは、読み出しから
書き込みへの切り替えで浪費される。例えば、2遊休サ
イクルはこのような切り替えが原因である。パフォーマ
ンスカウンタは、読み出し/書き込み切り替え、および
リフレッシュ動作に必ず使用されるメモリサイクルを、
パフォーマンス統計量から減算することにより、アプリ
ケーションプログラムがメモリ帯域幅をどの程度有効に
活用しているかを決定するのに使用されてもよい。この
パフォーマンスをモニタすれば、アプリケーションプロ
グラマは、メモリのより有効活用が可能なプログラムを
有利に設計することができる。
ーRQ1からRQ6のそれぞれは、図9に示す関連イン
ターフェース内に存在する。これにより、読み出しRQ
1は、図10に示す信号線の接続先からもわかるよう
に、CPインターフェース200I内に存在する。同様
に、書き込みキュ−WQ1(本実施形態例においては8
つの要求をキューに入れる)はPEインターフェース7
00Iだけに存在し、ここでは「ローカル」書き込みキ
ューバッファと称する。同様に、WQ2からWQ4はD
SP IOおよびPIインターフェースにそれぞれ存在
し、ローカル書き込みキューバッファである。図10に
示すWQ0は、複数リソース、または「グローバル」書
き込み用バッファであって、図9に示す構成要素wrb
uf827に存在する。図9に示す書き込み用バッファ
827への入力は、図10に示すWQ0への入力に対応
する。
書き込み要求を一度に受信した場合、本発明の実施形態
例に従って、メモリ書き込みバッファ827は、これら
書き込み要求の間で調停を行う。さらに、書き込み用バ
ッファ827で実現される、グローバル書き込み用バッ
ファに関連してダイアルレジスタを利用してもよい。こ
れにより、ダイアルレジスタの使用を通して、PEまた
はPIからの書き込み要求は、アプリケーションプログ
ラマによって下位優先要求であると見なされ得る。グロ
ーバル書き込み用バッファ827は、書き込み要求を調
停するために、調停コントロール825に動作可能に接
続される。
求は、調停コントロール825に直接接続されて、受信
読み出し要求の間で調停される。リクエストバス(メイ
ンメモリ112から/への読み出し/書き込みは、関連
アドレスで行われるかどうかを特定する)は、メインメ
モリ112へのアクセスをシークする各リソースに対応
する。メモリコントローラ152は、受信メモリアクセ
ス要求をキューに入れて、その要求結果を、要求を出し
ているリソースに送出する。
1からWQ4などのローカル書き込み用バッファを部分
的に使用することで達成され、ローカル書き込み用バッ
ファがフル(もしくはほとんどフル)の場合、メインメ
モリ112への書き込み要求の関連リソースに信号を送
信して、そのリソースにデータの送信停止を伝える。
書き込み切り替えを最小にするよう有意に設計される。
これは、読み出し/書き込み状態に合わせてバスを配置
する必要から、切り替えによりメモリサイクルがロスさ
れるためである。メモリコントローラ152は、wrb
uf827内にあるグローバル書き込み用バッファWQ
0に必要書き込みを集めることにより、このような読み
出し/書き込み切り替えを最小にする。書き込み要求は
バッファされる一方、読み出し要求は、それぞれ異なる
リソースの調停コントロール825によって処理され
る。書き込み用バッファWQ0がフルに近い状態の場
合、ラウンドロビン方式で読み出し要求を調停する。そ
の後、複数のリソースからの例えばWQ1−WQ4でフ
ルになった、グローバル書き込み用バッファWQ0から
の複数の書き込みは、実質的に同時に処理される。グロ
ーバル書き込み用バッファWQ0が、例えば75−80
%フルの状態にあるとき、メモリコントローラ115は
書き込み状態に切り替えてメインメモリ112に対して
書き込み用バッファWQ0のフラッシングを開始して、
特定アドレス位置への書き込みを行う。
き込み調停を行う。第1段階の調停では、メモリからの
情報読み出しをシークするリソースを、書き込み用バッ
ファ制御論理方式で調停する。別段階の書き込み調停
は、書き込み用バッファがフルでない場合に行われる。
第3段階の調停は、コヒーレントな処理が必要な場合に
行われ、書き込み用バッファはコヒーレンシー問題を解
決するためにフラッシュされる。
においては、例えば上記各リソースのダイアルレジスタ
の内容に鑑みて、リソース要求調停処理に基づいて、リ
ソースに対してラウンドロビン方式で読み出しが行われ
る。
出し/書き込みキューそれぞれのサイズ例を示すもので
ある。
04,806,808を経由する、メインメモリ112
から特定リソースまでの読み出しデータパスを示す。読
み出し要求部6つであるが、装置につながる読み出しデ
ータパスは、128ビットGFXパス、64ビットシス
テムパス、および64ビットCPUパスの3本のみであ
る。本実施例では、データは同時にすべてのデータパス
上を転送されないので、各装置に固有なデータパスは使
用しない。また、データ受信に4サイクル要する64ビ
ット装置が用いられているので、本インプリメンテーシ
ョン例では、単一128ビットデータパスは使用されな
い。CPUアクセスの待ち時間を減少するために、CP
Uポートには自身のパスが付与されており、そのため2
本の64ビットパス、および1本の128ビットパスが
使用されている。これらパスは、以下のように接続され
ている。 ・GFXパス、128ビット@200MHzは、CP2
00およびTC500に接続。バスの帯域幅(BW)は
メモリBWに等しい。 ・CPUパス、64ビット@200MHzは、piだけ
に接続。このパスの帯域幅はメモリ112の帯域幅の1
/2。 ・システムバス、64ビット@200MHzは、IO、
DSP、およびVIに接続。これら装置はすべて低BW
であり、未処理のトランザクションは1つしか送出でき
ない。バスBWはメモリBWの1/2。 これらバスの本数およびBWは、メモリ調停に直接的に
影響する。例えば、GFXパスはメモリからデータを連
続的に要求することができ、一方CPUは1キャッシュ
ラインサイクル(100MHz)おきにしかデータを要
求できない。システムバスに関しても同様である。
タは、要求リソースに順に送り戻される。従って、第1
の要求の後に、第2、その他複数の未処理要求が続く場
合、これら要求すべてに対して調停を行ってから、要求
がなされた順に処理される。よって、順位が1の要求リ
ソースによる要求データがまずルーティングされて、そ
の後順位が2の要求リソースによる要求データが続く。
読み出しは、CPUによって順に処理されるものとす
る。この設計により、ハードウェア、またはソフトウェ
アによる再順位付け処理が不要になる。
M(SRAM)タイプのメモリを用いてメインメモリ1
12を十分に利用するために、アクセス要求に効率的に
応答できるよう有利に設計される。上述したように、本
実施形態例では、1TSTRAMを使用しているので、
高密度DRAMのコンテキストにおいて、ほぼ静的なR
AMタイプのアクセスが可能である。ほぼSRAMのよ
うなアクセスの使用により、例えば、メインメモリ11
2へのデータ書き込みは順に行うのが望ましい。という
のは、SRAMのある位置への書き込みは、そのデータ
がSRAMのどこに格納されるかに関わらず、他の位置
への書き込みと同じだけの時間がかかるためである。逆
に、DRAMを使用する場合、メモリへの書き込みは、
スピード設定を最大限に活用するために、メモリリフレ
ッシュスケジュールに従って行われる必要がある。SR
AMを使用することで、効率的に要求を順に処理し、さ
らにはデータのコヒーレンシーも保持することができ
る。
例においてはプロセッサのコヒーレンシー。他のリソー
スは、読み出し/書き込みコヒーレンシーの確保にフラ
ッシュを行いがちなため)について、あるリソースが関
連書き込み用バッファに書き込みを行い、その後メイン
メモリ112にデータを書き込む場合、およびそのほぼ
直後にメインメモリ112からそのデータの読み出しを
行おうとしている場合、シークされる更新後のデータで
はなく、メインメモリ112からの古いデータを読み込
む可能性があるため、コヒーレンシー問題が生じる。メ
モリコントローラ152は、各読み出し要求に対して、
読み出しされるアドレスをチェックして、そのようなア
ドレスは書き込みバッファには存在しないこと確認する
ことで、コヒーレンシー問題に対処する。アドレスが書
き込み用バッファに存在する場合、書き込み用バッファ
はフラッシュされる必要がある。すなわち、読み出し動
作に先立ち、メインメモリにコピーされる。
ようなリソースは、単方向性リソースであるので、メイ
ンメモリ112からの読み出し動作のみを行い、メイン
メモリ112への書き込み動作は行わない。実施例にお
いて、ピクセルエンジンPEはメインメモリ112への
書き込みだけを行う。コヒーレンシー問題は、特にCP
U110によって処理される必要がある。というのは、
CPU110は、メインメモリ112から/への読み出
し/書き込みを行うためである。そのため、CPUの読
み出しに関して、読み出されるアドレスは、書き込み用
バッファのアドレスと比較され、上述したように、アド
レスが書き込み用バッファに存在する場合、書き込み用
バッファはフラッシュされて、その後読み出し動作が行
われる。例えば、あるリソースによる書き込みが、書き
込み用バッファ内に存在するアドレス位置0、1、およ
び2に対して行われ、位置0が書き込み用バッファ内に
あることをうけて、位置0からの読み出しが行われよう
としている場合、システムは、位置0からの読み出しが
行われる前に書き込み用バッファの内容をフラッシュす
る。従って、装置内のコヒーレンシーエラーを防ぐに
は、リソースが読み出しと書き込みとの両方の機能を有
する場合にだけ、そのようなエラーは起こり得る。
が、それぞれ異なるリソース間のコヒーレンシーエラー
を防ぐことも望ましい。そのため、ピクセルエンジン7
00がメインメモリ112への情報コピーのコマンドを
受け取った場合、ピクセルエンジン700の関連ローカ
ル書き込み用バッファは、コピーされるデータと、メイ
ンメモリ112への書き込みが行われるアドレス位置と
を含む。例えば、テクスチャユニット500のようなビ
デオインターフェース164は、ピクセルエンジン70
0がデータを書き込んでいるのと同じアドレスからデー
タの読み出しをシークするような場合、例示メモリコン
トローラ152はこれらの動作を同期させる。よって、
本発明の実施形態例に従って、メインメモリ112への
書き込みを行っている装置/リソースは、メモリコント
ローラ152にフラッシュ信号を送出し、メモリコント
ローラ152に個々のリソースの書き込み用バッファを
空にするよう指示する。メモリコントローラ152は、
この動作が終了したことを示す信号を生成し、例えば、
表示装置164にそのメモリ位置からデータを読み出す
ことを可能にさせるよう、CPU110に通知する。メ
モリコントローラ152からの、メインメモリ112に
書き込まれたデータが実際に格納されているのはメイン
メモリ112であって、バッファではないという通知に
よって、どの競合リソースもこのデータにアクセスする
チャンスがあることがわかる。この実施形態例に従っ
て、装置間のコヒーレンシーは、メモリに書き込みを行
う装置がメモリコントローラ152からフラッシュ認識
ハンドシェイク信号を受信することによって保証され
る。
遅れが生じるため、様々なタイプのコヒーレンシープロ
トコルが行われる。そのいくつかは上述した。以下にコ
ヒーレンシープロトコルを慨述する。 ・同一ユニットからの、書き込みと読み出しとの間のコ
ヒーレンシー ・CPUへの/からの書き込みと読み出し間のコヒーレ
ンシー ・CPUによる書き込みと、CP FIFOにおけるC
Pによる読み出しとの間のコヒーレンシー ・2つの異なるユニットへの/からの書き込み/読み出
し間のコヒーレンシー
み、および読み出しを行うことができる。この実施例で
は、DSPまたはIOにはハードウェアのRWコヒーレ
ンシーはない。自身がメインメモリ112に書き込んだ
データを、装置が読み戻す必要がある場合、その装置は
明示的に書き込み用バッファをフラッシュする必要があ
る。そうするためには、フラッシュ書き込み用バッファ
コマンドを送出し、認識信号を待機する。一方、PI読
み出し要求は、書き込み用バッファアドレスと照合され
る。合致すれば、書き込み用バッファはフラッシュされ
る。その後、読み出しが続行される。書き込み用バッフ
ァは、ユニットとグローバル書き込み用バッファとのた
めに、個々に書き込み用バッファを備える。
処するには、ロジック、および書き込み用バッファフラ
ッシュメカニズムのバイパスを利用する。CPUからの
読み出し要求に対しては、読み出しアドレスがメインメ
モリ112に即時送出されるので、1サイクル経過する
までRWコヒーレンシーをチェックするのに十分な時間
がない。合致が見られた場合、読み出し要求は既に送出
されているので、メモリからの読み出しデータは中途終
了され、書き込み用バッファはフラッシュされ、その書
き込み用バッファのフラッシュ終了時に書き込みデータ
および読み出しデータがバイパスおよび併合されてCP
U110に戻る。
われる場合、これら2つの要求は読み出しキューと書き
出しキューとに別々に送り出されるため、メモリコント
ローラ152はこれら2つの要求の順番を識別すること
ができない。そのため、本来見込まれた順番ではなく、
読み出しデータは、最終的に新規書き込みデータになっ
てしまう。読み出しデータが戻ってくる前に書き込みを
送出しないよう、CPU110の構造を設定する必要が
ある。
SP、IO、PE、およびPIの4つのユニットであ
る。装置がメモリに書き込みを行うときはいつでも、別
の装置にデータの読み出しを信号で伝える前に、自身の
書き込み用バッファを明示的にフラッシュする必要があ
る。そのため、これら4インターフェースのそれぞれは
2ワイヤフラッシュ/認識プロトコルを備える。DS
P、IO、またはPEは、CPU110に割り込みをか
ける前に、DMA書き込みの最後にフラッシュを送出す
る。これにより、読み出しのすぐ後にCPU110が所
望のデータにアクセルすることができる。CPU110
は、メインメモリ112内にバッファを設定するとき、
および別の装置にDMAの読み出し開始させたいとき、
明示的フラッシュを行う必要がある。DMAを起動する
前に、CPU110は「同期」指示を出す必要がある。
この指示は、同期バスサイクルをもたらし、これにより
メモリコントローラ152が書き込み用バッファをフラ
ッシュする。フラッシュの終了後、同期指示は完了し
て、CPUはDMA読みだし動作を開始することができ
る。
のRWコヒーレンシー メモリコントローラは、外部メモリに関連するコマンド
関連バッファCP FIFOのために、CPU書き込み
とCP読みだしとの間のRWコヒーレンシーにも対処す
る。PIは、その書き込み要求がCP FIFO用であ
るかどうかを示し、CP FIFO用の書き込みデータ
が実際にメインメモリにコミットされると、メモリコン
トローラはその書き込み要求をCPに送出する。
は、メモリレジスタ823を1組備え、それを介して、
メモリコントローラは様々なメモリ制御、および調停機
能を果たすようにプログラム可能に制御され得る。本発
明の実施例において、レジスタは、すべてプロセッサイ
ンターフェース150を介して書き込みされる。この例
示メモリコントローラレジスタの表が以下に設定されて
いるが、下記レジスタは以下のようなカテゴリにグルー
プ分けされてもよい。
は書き込みイネーブルビットを、以下のレジスタ例の表
に示すMEM_MARR_CONTROLレジスタに設
定することにより、メモリ読み出し、書き込み、または
読み出し/書き込み保護に使用することができる。例え
ば、読み出しアドレスがMEM_MARR0_STAR
Tと、MEM_MARR0_ENDの範囲にあって、M
ARR0読み出しが不可能にされている場合、MARR
0割り込みビットがMEM_INT_STATレジスタ
に設定され、MEM_INT_ADDRLおよびMEM
_INT_ADDRHは、割り込みを引き起こした読み
出しアドレスを有することになる。さらに、MARR0
割り込みイネーブルビットがMEM_INT_ENBL
レジスタに設定された場合、CPUが割り込みされる。
ここで、メモリコントローラ152は、割り込みを引き
起こすメインメモリ112への読み出し/書き込みトラ
ンザクションを終了させることはない。
にあって、64メガバイトのアドレススペース内にある
場合、アドレス割り込みが生成される。要求アドレスが
64メガバイトを超える場合、PIはアドレス割り込み
を生成してメモリコントローラには要求を送出しない。
およびCPU書き込みマスタ用のダイアルレジスタを使
用する。これらダイアルレジスタは、関連マスタが使用
するメモリ帯域幅を減少させる。例えば、関連累算器に
加算されるCPダイアルレジスタの内容が1より少ない
場合、待ち状態のCP要求があったとしても、CPダイ
アルレジスタの累算器が1に等しく加算されるまで、ま
たはどのマスタからも待ち状態要求がなくなるまで、こ
の調停技法例では別のマスタにメモリアクセスを認可す
る。つまり、メモリコントローラ152は、ダイアルレ
ジスタの設定によって、メモリ112を遊休状態には決
してさせない。これらダイアルレジスタは、ダイアルレ
ジスタおよび累算器の内容が1に等しくない場合、マス
タからの要求をマスキングすることによって、この調停
技法に直接的に影響を及ぼす。より詳しい内容に関して
は、以下に説明する技法、さらに、ここに引用例として
組み込まれている、発明の名称が「共有リソースアクセ
ス方法および装置」である、上述の同時係属出願(代理
人名簿番号723−754)を参照されたい。
を有するCPU以外のマスタは、要求カウンタを有す
る。これらカウンタは主に、メモリ使用に関する統計
量、およびそれぞれ異なるマスタの帯域幅の収集に使用
される。さらに2つの追加カウンタがあり、読み出し/
書き込みバスターンアラウンドオーバーヘッドにより遊
休サイクル数をカウントするためのMEM_FI_RE
QCOUNTと、リフレッシュサイクル数をカウントす
るためのMEM_RF_REQCOUNTとがある。こ
れらカウンタはすべて最大値に達するとクランプされ
る。
設定するレジスタには3種類ある。1つは異なるメモリ
バンクからRDへのRD、1つはWR切り替えのための
RD、そして1つはRD切り替えのためのWRである。
タ クロック数がリフレッシュカウンタにおけるリフレッシ
ュカウントに達した場合、リフレッシュ要求が生成され
る。メモリが遊休状態にある場合、メモリにはリフレッ
シュサイクルが与えられる。しかしながら、メモリが遊
休状態にない場合、リフレッシュ要求の合計がメモリリ
フレッシュしきい値レジスタの設定しきい値に達した場
合のみ、与えられる。
ト例の説明のために、以下の表にメモリコントローラ1
52レジスタの例を示す。
り、上述したように、メモリコントローラ152は、上
記競合リソース間でのメモリアクセス要求を調停するた
めに動作する調停コントロール825を備える。調停コ
ントロールの詳細に関しては、ここに引用例として組み
込まれている、発明の名称が「共有リソースアクセス方
法および装置」である同時係属出願番号60/226、
886を参照されたい。読み出しは、すべて単一キャッ
シュライン(32バイト)である。キャッシュラインの
読み出しには200Mhzで2サイクル要する。そのた
め、新規読み出しは10ナノ秒ごとに行われる。CPU
の読み出しは、その他の要求部の間でラウンドロビン方
式で最優先される。メモリの所有権は、読み出し要求部
の間で10ナノ秒毎に変わってリフレッシュされるが、
書き込みキューは常に全体にわたって書き込みされる。
書き込みキューは、あるレベルを超えたとき、またはC
PUの読み出し要求が書き込み用バッファのエントリに
マッチしたときに、要求を開始する。本実施形態例にお
いては、要求の頻度に関して以下の制限が課せられる。 ・CPUの読み出しは2つ連続して行えない。 ・システムの読み出しは2つ連続して行えない。 ・10ナノ秒のリフレッシュサイクル中、2行リフレッ
シュされる。5ナノ秒ごとに1行。
介して提供され、メモリの主な使用部によるメモリの使
用に影響を及ぼす。以下の装置は、ダイアルを有する。 ・CPU読みだし ・CP読み出し ・TC読みだし ・CPU書き込み ・PE書き込み
参加とメモリアクセスの頻度を制御する。書き込みダイ
アルはフロー制御用であり、メイン書き込み用バッファ
に書き込みをスロットリングすることにより書き込み装
置をスローダウンさせることができる。
許可されていない未処理の読み出し要求がある場合は、
メモリ112はアイドル状態にはなれない。この場合、
スロットされている要求部の間ではラウンドロビン方式
が適用される。
そのダイアルノブが1.00に等しい他のマスタによる
要求がある場合 書き込み用バッファが完全にフルな状態で、書き込みサ
イクルの最中である場合 先のCPU読み出しアドレスが、書き込み用バッファを
フラッシュさせるPIローカル書き込み用バッファ、ま
たはグローバル書き込み用バッファにおける有効なCP
U書き込みアドレスに合致する場合
システムマスタ(DSP、IO、およびVI)と同じレ
ベルの優先度を有し、従って、以下の条件以外でシステ
ムマスタをラウンドロビン方式でメモリ調停する。DS
P、IO、またはVIが、その時点で再調停できなかっ
た先のアクセスに対するマスタである、CP(またはT
C)の読み出しダイアルノブは1.00に等しくなく、
そのダイアルノブが1.00に等しい他のマスタによる
要求がある場合、その優先順位は最低になる。
しは、その他GFXマスタ(CPおよびTC)と同程度
の優先順位を有し、従って、以下の条件以外でGFXマ
スタをラウンドロビン方式でメモリ調停する。DSP
(またはIOまたはVI)が、その時点で再調停できな
かった先のアクセスに対するマスタである場合
CPU、GFX、またはシステムマスタより低い優先度
を有する。 書きこみ用バッファが完全にフルな状態で、ラウンドロ
ビン方式で調停を行う場合 CPU読み出しアドレスは、書き込み用バッファ内の書
き込みアドレスと合致する場合、最優先される。 優先順位が高いその他のマスタのダイアルノブが1.0
0より低い場合
優先順位を有する。リフレッシュ要求の合計がしきい値
に達すると、その優先順位はCPU読み出しのすぐ下の
レベルまであがる。優先順位が高いその他のマスタのダ
イアルノブが1.00より低い場合
の4つのマスタである。CPUによる書き込みは最優先
され、その他3つのマスタは以下の状態以外の場合にラ
ウンドロビン方式で調停される。 CPUの書き込みダイアルノブが1.00に等しくな
く、そのダイアルノブが1.00に等しい書き込みマス
タが他にある場合 これらすべてが読み出しマスタと共にメモリ帯域幅を調
停する書き込みキューを構成する。
すインターフェースのそれぞれについてさらに詳しく説
明する。図12は、メモリコントローラ152とプロセ
ッサインターフェース(PI)150との間でやりとり
される通信信号のセットの例を示すブロック図である。
図12に示すインターフェースにより、CPU110に
よるメインメモリ112からの/への読み出し/書き込
みが可能になる。
み出し要求をサポートする。本実施例において、新規読
み出し要求はサイクル毎に送出され、新規書き込み要求
は4クロック毎に送出され得る(バス上のキャッシュラ
インを転送するには4サイクル)。メモリコントローラ
152は、mem_pi_reqfullをアサートし
てフロー制御を行う。書きこみデータは認識されない。
読み出しデータは、キャッシュが最初のoctバイト転
送されることにより認識される。要求アドレスが32B
に整列していない場合、まずクリティカルダブルワード
がリターンされる。読み出しデータはすべて順に処理さ
れる。書き込みデータは、メモリ効率を向上させるため
にバッファされて遅延される。書き込み用バッファがフ
ラッシュされたことを信号で伝えるために、mem_p
i_flush_ackがサイクル毎に送出される。
いことによるタイミングにかかる問題を回避するため、
すべて登録されなければならない。例えば、メモリコン
トローラ152はまずpi_mem_req信号を登録
し、さらに、生成されたmem_pi_ack信号もメ
モリコントローラ152側とモジュール150側の両方
に登録されなければならない。
能により、pi_mem_addrは登録されず、メイ
ンメモリに即時送出される。これにより、待ち時間が1
サイクル短縮される。
52とプロセッサインターフェース150間でやりとり
される信号を、以下の表に示す。
ラインターフェース152に注目し、以下の表では、こ
れら2つの構成要素の間でやりとりされる信号の例を、
信号に関する記述と共に示す。
ーラ152インターフェースについて、許可される未処
理の転送はせいぜい1つである。すなわち、先の転送が
完了するまでは次の転送は行われない(mem_dsp
Ack信号で)。書き込みデータをバッファするのに、
メモリコントローラ152側には少なくとも2段階の書
き込み用バッファが存在する。つまり、インターフェー
スはモジュール156からの書き込みデータがバッファ
可能であり、バッファがフルの場合には、ack信号の
送出を遅延することができる。
る問題を回避するために、インターフェース制御信号は
すべて登録されなければならない。例えば、メモリコン
トローラ152はまずdsp_memReq信号を登録
し、さらに生成されたmem_dspAck信号も、メ
モリコントローラ側とモジュール156側とで登録され
なければならない。よって、dsp_memReqとm
em_dspAckとの間、およびmem_dspAc
kとその次のdsp_memReqとの間には、1クロ
ックの最低遅延しか生じない。
リコントローラインターフェース152に注目し、やり
とりされる信号の例を以下の表に示す。
ントローラ152信号について、本実施形態例において
許可される未処理の転送はせいぜい1つである。すなわ
ち、先の転送が完了するまで、次の転送は行われない
(mem_ioAck信号で)。書き込みデータをバッ
ファするのに、メモリコントローラ側には少なくとも2
段階の書き込み用バッファが存在する。つまり、インタ
ーフェースはモジュール802からの書き込みデータが
バッファ可能であり、バッファがフルの場合には、認識
信号の送出を遅延することができる。
デオインターフェース164との間でやりとりされる通
信信号のセットの例を示すブロック図である。インター
フェース信号は下記表に示す。
ターフェースおよびメインメモリからの読み出しを可能
にする。読み出しはすべてキャッシュラインサイズ(3
2バイト)であり、64ビットバス上を転送される。
ンターフェース164は、単一未処理読み出し要求をサ
ポートする。新規読み出し要求は、先の要求に対する認
識が受け取られてから送出され得る。
ヤが長いことによるタイミングにかかる問題を回避する
ために登録されなければならない。例えば、メモリコン
トローラ152はまずvi_mem_req信号を登録
し、生成されたmem_vi_ack信号も、メモリコ
ントローラ側とモジュール164側の両方で登録されな
ければならない。
トの順位は以下の通りである。
ャッシュ/コマンドプロセッサ200との間でやりとり
される通信信号のセットの例を示すブロック図である。
これら構成要素の間でやりとりされる信号の例を下の表
に示す。
クスチャユニット500との間でやりとりされる通信信
号のセットの例を示すブロック図である。これら構成要
素の間でやりとりされる信号の例を下の表に示す。
クセルエンジン(PE)700との間でやりとりされる
通信信号のセットの例を示すブロック図である。メイン
メモリには、表示のためにフィルタされたフレームバッ
ファ画像が転送されていた。フレームバッファフォーマ
ットは、テクスチャフォーマットに変換され、メインメ
モリ112に書き込みされることもある。これら構成要
素の間でやりとりされる信号の例を下の表に示す。
よび制御信号を直接外部メモリに送出する。図示されて
いる制御信号は、読み出し状態から書き込み状態に切り
替えを行うための制御信号である。これら構成要素の間
でやりとりされる信号の例を下の表に示す。これら信号
には、読み出し状態から書き込み状態への双方向メモリ
バスの切り替えに必要な読み出し/書き込み信号が含ま
れる。
ン例 上記システム装置50は、上述したホームビデオゲーム
コンソール構成以外でも実現され得る。例えば、システ
ム50をエミュレート、そうでなければ互換性がある違
った構成を有するプラットフォーム上で、システム50
向けに記述されたグラフィックスアプリケーションやソ
フトウェアを実行することができる。システム50のハ
ードウェアおよびソフトウェアリソースの一部、または
すべてをエミュレート、シミュレート、および/または
提供できるプラットフォームであれば、ソフトウェアを
首尾良く実行することができる。
ハードウェアおよび/またはソフトウェア構成(プラッ
トフォーム)とは異なるハードウェアおよび/またはソ
フトウェア構成(プラットフォーム)を提供し得る。こ
のエミュレータシステムは、アプリケーションソフトウ
ェアが記述されたシステムのハードウェア、および/ま
たはソフトウェア構成要素の一部、またはすべてをエミ
ュレートまたはシミュレートするソフトウェアおよび/
またはハードウェア構成要素を含むこともある。例え
ば、このエミュレータシステムは、システム50のハー
ドウェアおよび/またはファーウェアをシミュレートす
るソフトウェアエミュレータプログラムを実行するパー
ソナルコンピュータのような汎用デジタルコンピュータ
を備えることもある。
Mやマッキントッシュのパーソナルコンピュータ、およ
びその互換機)によっては、DirectXやその他3
DグラフィクスコマンドAPIに準拠する3Dグラフィ
ックスパイプラインを提供する、3Dグラフィックスカ
ードを装備している。あるいは、サウンドコマンドの標
準セットに基づく高品質な立体音響を可能にする、立体
音響サウンドカードも装備していることがある。このよ
うな、エミュレータソフトウェアを実行するマルチメデ
ィアハードウェア対応パーソナルコンピュータは、シス
テム50のグラフィックスおよびサウンド性能を近似さ
せるのに十分な性能を有し得る。エミュレータソフトウ
ェアは、パーソナルコンピュータのプラットフォーム上
のハードウェアリソースを制御して、ゲームプログラマ
がゲームソフトウェアを記述したホームビデオゲームコ
ンソールプラットフォームの処理、3Dグラフィック
ス、サウンド、周辺、およびその他機能をシミュレート
する。
1、エミュレータ構成要素1303、および記憶媒体6
2に記憶されたゲームソフトウェアの実行可能な2値画
像を用いた、包括的なエミュレーション処理の例を示
す。ホスト1201は、例えば、パーソナルコンピュー
タ、ビデオゲームコンソール、またはその他十分な演算
能力を有するプラットフォームのような、汎用または特
殊目的用デジタル演算装置である。エミュレータ130
3は、ホストプラットフォーム1201上で実行され、
記憶媒体62からのコマンド、データ、および情報をホ
スト1201により処理可能な形式にリアルタイムに変
換するソフトウェアおよび/またはハードウェアであ
る。例えば、エミュレータ1303は、システム50に
よる実行を意図する「ソース」2値画像プログラム命令
を記憶媒体62から取り出し、これらプログラム命令を
ホスト1201が実行または処理可能な対象形式に変換
する。
erPCなどの特定のプロセッサを用いて、プラットフ
ォーム上で実行されるよう記述されたものであり、ホス
ト1201がそれとは異なる(例えばインテルの)プロ
セッサを使用したパーソナルコンピュータである場合、
エミュレータ1303は記憶媒体1305から2値画像
のプログラム命令を1つまたはそのシーケンスを取り出
して、これらプログラム命令を1つまたはそれ以上の同
等なインテルの2値画像プログラム命令に変換する。エ
ミュレータ1303は、グラフィックス&音声プロセッ
サ114による処理向けのグラフィックスコマンドと音
声コマンドも取り出しおよび/または生成し、これらコ
マンドをホスト1201上で使用可能なハードウェアお
よび/またはソフトウェアグラフィックスおよび音声処
理リソースにより処理され得るフォーマットに変換す
る。一例として、エミュレータ1303は、これらのコ
マンドを、ホスト1201の特定グラフィックスおよび
/または音声ハードウェアで処理され得るコマンドに変
換してもよい(例えば、標準DirectX、Open
GL、および/または音声APIを用いて)。
たはすべてを提供するために使用されるエミュレータ1
303は、グラフィックユーザインターフェース(GU
I)を備えていてもよく、これによりエミュレータを用
いて実行されるゲームの様々なオプションやスクリーン
モデルの選択が簡易化または自動化される。例えば、こ
のようなエミュレータ1303は、本来のソフトウェア
用ホストプラットフォームと比べてさらに機能が拡張さ
れていてもよい。
用するのに適したエミュレーションホストシステム12
01を示す。システム1201は、処理ユニット120
3およびシステムメモリ1205を含む。システムバス
1207は、システムメモリ1205を始めとする様々
なシステム構成要素を処理ユニット1203に接続す
る。システムバス1207は、メモリバスまたはメモリ
コントローラを含むバス構造のいくつかのタイプのうち
の1つであり、様々なバスアーキテクチャのうちの1つ
を利用した周辺バスおよびローカルバスである。システ
ムメモリ1207は、読み出し専用メモリ(ROM)1
252、およびランダムアクセスメモリ(RAM)12
54を含む。起動中など、パーソナルコンピュータシス
テム1201の内部要素の間での情報の転送に役立つ基
本ルーチンを含む基本入出力システム(BIOS)12
56は、ROM1252に格納される。システム120
1は、さらに様々なドライブと、それに関連するコンピ
ュータ読み出し可能な媒体を含む。ハードディスクドラ
イブ1209は(典型的に固定の)磁気ハードディスク
1211から/への読み出し/書き込みを行う。追加
(できればオプションで)磁気ディスクドライブ121
3は、着脱可能な「フロッピー(登録商標)」またはそ
の他の磁気ディスク1215から/への読み出し/書き
込みを行う。光ディスクドライブ1217は、CD R
OMやその他の光学媒体などの着脱可能な光ディスクド
ライブ1219から読み出しを行い、構成によっては、
書きこみも行う。それぞれハードディスクドライブイン
ターフェース1221と光ドライブインターフェース1
225とによってシステムバス1207に接続される。
そのドライブとそれに関連するコンピュータ読み出し可
能な媒体とは、コンピュータ読み出し可能命令、データ
構造、プログラムモジュール、ゲームプログラム、およ
びその他パーソナルコンピュータシステム1201向け
のデータを不揮発的に記憶する。他の構成において、デ
ータを格納し、コンピュータによってアクセスされ得る
コンピュータ読み出し可能な媒体磁気カセット、フラッ
シュメモリカード、デジタルビデオディスク、ベルヌー
イ(Bernoulli)カセット、ランダムアクセス
メモリ(RAMs)、読み出し専用メモリ(ROMs)
なども使用され得る。
グラムモジュールは、ハードディスク1211、着脱式
磁気ディスク1215、光ディスク1219、および/
またはシステムメモリ1205のROM1252および
/またはRAM1254上に記憶される。このようなプ
ログラムモジュールは、グラフィックス&音声API
s、ひとつまたはそれ以上のアプリケーションプログラ
ム、その他プログラムモジュール、プログラムデータ、
およびゲームデータを提供するオペレーティングシステ
ムを含んでいてもよい。ユーザは、キーボード122
7、ポインティング装置1229、マイク、ジョイステ
ィック、ゲームコントローラ、衛星放送用アンテナ、ス
キャナなどの入力装置を通してパーソナルコンピュータ
システム1201にコマンドや情報を入力する。例えば
これらの入力装置は、システムバス1207に接続され
るシリアルポートインターフェース1231を介して処
理ユニット1203に接続され得るが、もちろん他のイ
ンターフェース、例えばパラレルポート、ゲームポート
ファイアワイヤバス、またはユニバーサルシリアルバス
(USB)によっても接続され得る。モニタ1233な
どの表示装置も、ビデオアダプタ1235などのインタ
ーフェースを介してシステムバス1207に接続され
る。
他のネットワークインターフェース手段も含み、インタ
ーネットなどのネットワーク1152を介して通信を確
立する。内部、外部を問わず、モデム1154はシリア
ルポートインターフェース1231を介してシステムバ
ス123に接続される。ネットワークインターフェース
1156も備えられていてもよく、これによりシステム
1201がローカルエリアネットワーク1152を介し
て、リモート演算装置1150(別システム1201な
ど)と通信可能になる(この通信は、広域ネットワーク
1152、またはダイアルアップやその他の通信手段な
どの通信パスでもかまわない)。システム1201は、
典型的に、プリンタやその他標準型の周辺装置など、そ
の他周辺出力装置を含む。
ーションプログラマインターフェースに基づいて送出さ
れた3Dグラフィックスパイプラインチップを含んでい
てもよい。ステレオスピーカ1237のセットは、バス
1207からのサウンドコマンドに基づいて高品質な立
体音響を生成するためのハードウェアおよび組み込みソ
フトウェアサポートを提供する、従来の「サウンドカー
ド」のようなサウンド生成インターフェースを介してシ
ステムバス1207に接続される。これらハードウェア
機能により、システム1201が、記憶媒体62に格納
されているソフトウェアをプレイするための、十分なグ
ラフィックスおよびサウンドスピード性能を提供する。
施形態であると現時点で判断される内容に関して説明し
てきたが、本発明は、開示された実施形態にのみ制限さ
れるべきものではなく、反対に記載したクレームの範囲
内において、様々に変更、および同等な内容が適用され
るものとする。
の全体図である。
ム例を示すブロック図である。
ム例を示すブロック図である。
ム例を示すブロック図である。
カルフロー図の例である。
リソースを示すブロック図である。
リソースを示すブロック図である。
例を示すブロック図である。
り詳細なブロック図である。
である。
示す図である。
ェース(PI)との間でやりとりされる通信信号のセッ
ト例を示すブロック図である。
スとの間でやりとりされる通信信号のセット例を示すブ
ロック図である。
プロセッサとの間でやりとりされる通信信号のセット例
を示すブロック図である。
00との間でやりとりされる通信信号のセット例を示す
ブロック図である。
00)との間でやりとりされる通信信号のセット例を示
すブロック図である。
Claims (53)
- 【請求項1】 メインプロセッサと、前記メインプロセ
ッサと協働してグラフィックディスプレイ上にグラフィ
ックス画像を生成するグラフィックス処理システムと、
メモリとを備えるグラフィックスシステムにおいて、 前記システムは前記メモリへのアクセスをシークする複
数のリソースを有し、 メモリコントローラは、 複数のバッファメモリであって、前記メモリへのアクセ
スをシークする前記複数のリソースのうちの1つに動作
可能にそれぞれ接続されて、メモリアクセスの要求を示
す情報を格納する前記バッファメモリと、 前記第1の複数のバッファメモリに接続され、前記複数
のリソースのそれぞれからのメモリアクセス要求に対す
る要求を格納するマルチリソースバッファメモリと、 前記第1の複数のバッファメモリからの前記マルチリソ
ースバッファメモリへの情報の転送を制御する制御回路
とを備え、 前記制御回路は、前記第1の複数のバッファメモリから
の前記マルチリソースバッファメモリへの情報の転送を
制御するのに動作可能であり、メインメモリへの書き込
み動作からメインメモリからの読み出し動作への切り替
え頻度を減少することを特徴とする、メモリコントロー
ラ。 - 【請求項2】 前記複数のバッファメモリが、メインメ
モリへの書き込みキューであることを特徴とする、請求
項1に記載のメモリコントローラ。 - 【請求項3】 前記複数のリソースバッファメモリが、
メインメモリへの書き込みキューであることを特徴とす
る、請求項1に記載のメモリコントローラ。 - 【請求項4】 前記複数のバッファメモリが、メインメ
モリへの書き込みキューであり、 前記複数のリソースバッファメモリが、メインメモリへ
の書き込みキューであり、 前記制御回路は、当該複数のバッファメモリからマルチ
リソースバッファメモリに書き込み要求が接続される割
合を制御するのに動作可能であることを特徴とする、請
求項1に記載のメモリコントローラ。 - 【請求項5】 前記複数のバッファメモリは、メインメ
モリへの書き込みキューであり、複数のメインメモリへ
の読み出しキューをさらに含み、 各読み出しキューは、前記メインメモリからの情報の読
み出しをシークするリソースに動作可能に接続されてい
ることを特徴とする、請求項1に記載のメモリコントロ
ーラ。 - 【請求項6】 前記制御回路は、メインメモリへのアク
セス要求を許可する調停回路を含むことを特徴とする、
請求項1に記載のメモリコントローラ。 - 【請求項7】 前記調停回路は、当該要求リソースがメ
インメモリへのアクセスの調停に参加することを可能と
される頻度を制御するのに動作可能であることを特徴と
する、請求項6に記載のメモリコントローラ。 - 【請求項8】 前記リソースのうち1つに関連するメモ
リアクセス制御レジスタをさらに含み、 前記調停制御回路は、前記メモリアクセス制御レジスタ
の内容に応答する調停回路を備え、前記リソースのメモ
リアクセス調停への参加頻度を決定することを特徴とす
る、請求項1に記載のメモリコントローラ。 - 【請求項9】 制御レジスタを1セットさらに備え、 前記制御レジスタは、前記メインプロセッサによりプロ
グラム可能であることを特徴とする、請求項1に記載の
メモリコントローラ。 - 【請求項10】 前記制御回路は、前記リソース間の調
停に動作可能でメモリアクセスの要求を許可し、 前記制御レジスタは、前記制御回路によりアクセスされ
てどのリソースがメモリアクセスを許可されるかを決定
する複数のメモリ帯域幅制御レジスタを含むことを特徴
とする、請求項9に記載のメモリコントローラ。 - 【請求項11】 前記メモリ帯域幅制御レジスタは、そ
れぞれメインメモリアクセスをシークするリソースに関
連することを特徴とする、請求項10に記載のメモリコ
ントローラ。 - 【請求項12】 前記制御レジスタは、メモリアクセス
の要求リソースに関連するレジスタを少なくとも1つ含
み、そのリソースのメモリ使用とメモリ帯域幅とのうち
少なくとも1つを示す前記要求リソース用のデータを格
納することを特徴とする、請求項9に記載のメモリコン
トローラ。 - 【請求項13】 前記制御レジスタは、メモリアクセス
の要求リソースに関連するレジスタを少なくとも1つ含
み、そのリソースにメモリアクセスを許可することによ
る浪費メモリサイクルを示す前記要求リソース用のデー
タを格納することを特徴とする、請求項9に記載のメモ
リコントローラ。 - 【請求項14】 前記複数のバッファメモリと前記マル
チリソースバッファメモリとは、書き込み要求キューで
あり、 メインメモリに書き込みを行っているリソースは、フラ
ッシュ信号を生成して、そのリソースの書き込み要求キ
ューのフラッシュを開始させることを特徴とする、請求
項1に記載のメモリコントローラ。 - 【請求項15】 フラッシュ認識ハンドシェイク信号を
生成するフラッシュ認識ハンドシェイク信号生成回路を
さらに含み、それによりメインメモリに書き込みされた
データが、関連リソースのバッファではなく実際にはメ
インメモリに格納されていることを競合リソースに示す
ことを特徴とする、請求項14に記載のメモリコントロ
ーラ。 - 【請求項16】 メインプロセッサ、メモリ、および前
記メモリへのアクセスを前記メインプロセッサと競合す
る、少なくとも第1および第2のリソースを含む情報処
理システムにおいて、 メモリコントローラは、 メインプロセッサ読み出し要求キューおよびメインプロ
セッサ書き込み要求キューを含むメインプロセッサ関係
インターフェースと、 少なくとも第1のリソース読み出し要求キューと第1の
リソース書き込み要求キューとのどちらかを含む、第1
のリソース関係インターフェースと、 少なくとも第2のリソース読み出し要求キューと第2の
リソース書き込み要求キューとのどちらか1つを含む、
第2のリソース関係インターフェースと、 前記メインメモリへの書き込み要求を受信するマルチリ
ソース書き込みキューと、 前記メインメモリへのアクセスを許可するメモリアクセ
ス制御回路とを含み、 前記メモリアクセス制御回路は、前記読み出しキューの
それぞれから読み出し要求を受信するために接続されて
おり、前記マルチリソース書き込みキューから書き込み
要求を受信することを特徴とする、メモリコントロー
ラ。 - 【請求項17】 前記制御回路は、前記メインプロセッ
サ書き込みキューからの情報の転送を制御するよう動作
可能であり、 これにより、前記マルチリソース書き込みキューに対す
る前記第1のリソース書き込みキューおよび第2のリソ
ース書き込みキューは、メインメモリへの書き込み動作
からメインメモリからの読み出し動作への切り替え頻度
を減少させることを特徴とする、請求項16に記載のメ
モリコントローラ。 - 【請求項18】 前記メモリアクセス制御回路は、メモ
リアクセスを競合するリソース間で調停を行い、かつ要
求リソースが調停参加をイネーブルされる頻度を制御す
る動作が可能であることを特徴とする、請求項16に記
載のメモリコントローラ。 - 【請求項19】 前記リソースのうち1つと関連するメ
モリアクセス制御レジスタをさらに含み、 前記メモリアクセス制御回路は、前記メモリアクセス制
御レジスタの内容に応答する調停回路を含み、前記リソ
ースがメモリアクセス調停への参加を許可される頻度を
決定することを特徴とする、請求項16に記載のメモリ
コントローラ。 - 【請求項20】 制御レジスタを1セット備え、 前記制御レジスタは、前記メインプロセッサによりプロ
グラム可能であることを特徴とする、請求項16に記載
のメモリコントローラ。 - 【請求項21】 前記メモリアクセス制御回路は、前記
リソース間の調停に動作可能でメモリアクセスの要求を
許可し、 前記制御レジスタは、前記メモリアクセス制御回路によ
りアクセスされてどのリソースがメモリアクセスを許可
されるかを決定する複数のメモリ帯域幅制御レジスタを
含むことを特徴とする、請求項20に記載のメモリコン
トローラ。 - 【請求項22】 前記メモリ帯域幅制御レジスタは、そ
れぞれメインメモリアクセスをシークするリソースに関
連することを特徴とする、請求項21に記載のメモリコ
ントローラ。 - 【請求項23】 前記制御レジスタは、メモリアクセス
要求リソースに関連する性能関係レジスタを少なくとも
1つ含み、そのリソースのメモリ使用とメモリ帯域幅と
の少なくともどちらか1つを示す前記要求リソース用の
データを格納することを特徴とする、請求項20に記載
のメモリコントローラ。 - 【請求項24】 前記制御レジスタは、メモリアクセス
要求リソースに関連する性能関係レジスタを少なくとも
1つ含み、そのリソースにメモリアクセスを許可するこ
とによる浪費メモリサイクルを示す前記要求リソース用
のデータを格納することを特徴とする、請求項20に記
載のメモリコントローラ。 - 【請求項25】 メインメモリへの書き込みを行ってい
るリソースは、フラッシュ信号を生成して、そのリソー
スの書き込み要求キューのフラッシュを開始させること
を特徴とする、請求項16に記載のメモリコントロー
ラ。 - 【請求項26】 フラッシュ認識ハンドシェイク信号を
生成するフラッシュ認識ハンドシェイク信号生成回路を
さらに含み、それによりメインメモリに書き込みされた
データが、関連リソースのバッファではなく実際にはメ
インメモリに格納されていることを競合リソースに示す
ことを特徴とする、請求項25に記載のメモリコントロ
ーラ。 - 【請求項27】 メインプロセッサ、メモリ、および前
記メモリへのアクセスを前記メインプロセッサと競合す
る少なくとも第1および第2のリソースを含む情報処理
システムにおいて、前記メモリへのアクセスを制御する
方法であって、 第1のリソース要求キューにおける第1のリソースか
ら、メインメモリへのアクセス要求を格納するステップ
と、 第2のリソース要求キューにおける第2のリソースか
ら、メインメモリへのアクセス要求を格納するステップ
と、 メモリアクセス制御回路へのメモリアクセス要求の送出
を遅延して、メモリ読み出し状態とメモリ書き込み状態
との間の切り替え頻度を減少させるステップと、 前記メモリアクセス制御回路により、メモリアクセス要
求を許可するステップを含むことを特徴とする方法。 - 【請求項28】 前記遅延ステップは、マルチリソース
書き込みキューに要求を格納するステップを含むことを
特徴とする、請求項27に記載の方法。 - 【請求項29】 メインプロセッサ要求キューに、前記
メインプロセッサがメインメモリへのアクセス要求を格
納するステップをさらに含むことを特徴とする、請求項
27に記載の方法。 - 【請求項30】 メモリアクセス要求許可ステップは、
競合リソース間での調停ステップを含み、要求リソース
がメモリアクセス調停への参加を可能とされる頻度制御
ステップをさらに含むことを特徴とする、請求項27に
記載の方法。 - 【請求項31】 当該頻度制御ステップは、リソース関
連のメモリアクセス制御レジスタの内容にアクセスする
ステップを含み、前記リソースがメモリアクセス調停に
参加を許可される頻度を決定することを特徴とする、請
求項30に記載の方法。 - 【請求項32】 前記メモリコントローラにおける制御
レジスタが、少なくとも1セット前記メインプロセッサ
によってプログラムされることにより、メモリアクセス
を制御するステップをさらに含むことを特徴とする、請
求項27に記載の方法。 - 【請求項33】 前記メモリアクセス許可ステップは、
前記リソース間を調停してメモリアクセスの要求を許可
するステップを含み、 さらに、複数のメモリ帯域幅制御レジスタにアクセスし
て、前記メモリ帯域幅制御レジスタに一部基づいて、ど
のリソースがメモリアクセスを許可されるかを決定する
ステップを含むことを特徴とする、請求項27に記載の
方法。 - 【請求項34】 前記メモリ帯域幅制御レジスタをそれ
ぞれメインメモリアクセスをシークするリソースと関連
させるステップをさらに含むことを特徴とする、請求項
33に記載の方法。 - 【請求項35】 要求リソースに関係し、そのリソース
のメモリ使用とメモリ帯域幅との少なくとも1つを示す
データを格納するステップをさらに含むことを特徴とす
る、請求項27に記載の方法。 - 【請求項36】 要求リソース用であり、そのリソース
にメモリアクセスを許可することによる浪費メモリサイ
クルを示すデータを格納するステップをさらに含むこと
を特徴とする、請求項27に記載の方法。 - 【請求項37】 リソースがメインメモリへのデータ書
き込みを行い、バッファフラッシュ信号を生成してその
リソースの書き込み要求キューのフラッシュを開始させ
るステップをさらに含むことを特徴とする、請求項27
に記載の方法。 - 【請求項38】 フラッシュ認識ハンドシェイク信号を
生成し、メインメモリに書き込みされたデータが、関連
リソースのバッファではなく実際にはメインメモリに格
納されていることを競合リソースにステップをさらに含
むことを特徴とする、請求項37に記載のメモリコント
ローラ。 - 【請求項39】 要求許可ステップは、要求された順番
でメモリアクセスへの要求を履行するステップを含むこ
とを特徴とする、請求項27に記載の方法。 - 【請求項40】 メインプロセッサ、メモリ、および前
記メモリへのアクセスを前記メインプロセッサと競合す
る少なくとも第1および第2のリソースを含む情報処理
システムにおいて、前記メインメモリへのアクセスを制
御する方法であって、 第1のリソース書き込み要求キューにおける第1のリソ
ースから、メインメモリへのアクセス要求を格納するス
テップと、 前記第1のリソースにより、メインメモリへの書き込み
を行うステップと、 前記第1のリソースにより書き込みキューフラッシュ信
号を生成して、前記第1のリソースの書き込み要求キュ
ー内の情報のメインメモリへのコピーを開始するステッ
プと、 前記第1のリソースの書き込み要求キューをフラッシュ
するステップとを含むことを特徴とする方法。 - 【請求項41】 フラッシュ認識ハンドシェイク信号を
生成し、それによりメインメモリに書き込みされたデー
タが、関連リソースのバッファではなく実際にはメイン
メモリに格納されていることを競合リソースに通知する
ステップをさらに含むことを特徴とする、請求項40に
記載の方法。 - 【請求項42】 第2のリソース読み出し要求キューに
おける第2のリソースからメインメモリへのアクセス要
求を格納するステップと、 当該読み出し要求に関連する当該メインメモリアドレス
と書き込みキューのうち少なくとも1つに格納された当
該アドレスとを比較するステップと、 読み出し要求に関連する当該メインメモリアドレスと前
記少なくとも1つの書き込みキューに格納されている当
該アドレスとのいずれかに合致が見られた場合、書き込
みキューのうち少なくとも1つをフラッシュするステッ
プとをさらに含むことを特徴とする、請求項40に記載
の方法。 - 【請求項43】 第2のリソース書き込み要求キューに
おける第2のリソースからのメインメモリへの書き込み
要求を格納するステップと、 メモリ読み出し状態とメモリ書き込み状態との間の切り
替え頻度を減少させるために、メモリアクセス制御回路
へのメモリアクセス要求の送出を遅延するステップと、 前記メモリアクセス制御回路により、メモリアクセス要
求を許可するステップとをさらに含むことを特徴とす
る、請求項40に記載の方法。 - 【請求項44】 前記遅延ステップは、マルチリソース
書き込みキューに要求を格納するステップを含むことを
特徴とする、請求項43に記載の方法。 - 【請求項45】 メインプロセッサ要求キューに、前記
メインプロセッサがメインメモリへのアクセス要求を格
納するステップをさらに含むことを特徴とする、請求項
40に記載の方法。 - 【請求項46】 競合リソース間でメモリアクセス要求
を調停し、要求リソースがメモリアクセス調停への参加
を可能にされる頻度を制御するステップをさらに含むこ
とを特徴とする、請求項40に記載の方法。 - 【請求項47】 当該頻度制御ステップは、前記リソー
スがメモリアクセス調停に参加を許可される頻度を決定
するために、リソース関連のメモリアクセス制御レジス
タの内容にアクセスするステップを含むことを特徴とす
る、請求項46に記載の方法。 - 【請求項48】 前記メモリコントローラにおける制御
レジスタが、少なくとも1セット前記メインプロセッサ
によってプログラムされることによりメモリアクセスを
制御するステップをさらに含むことを特徴とする、請求
項40に記載の方法。 - 【請求項49】 複数のメモリ帯域幅メモリ制御レジス
タにアクセスすることにより前記リソース間のメモリア
クセス要求を調停し、前記メモリ帯域幅制御レジスタに
一部基づいて、どのリソースがメモリアクセスを許可さ
れるかを決定するステップをさらに含むことを特徴とす
る、請求項40に記載の方法。 - 【請求項50】 前記メモリ帯域幅制御レジスタを、そ
れぞれメインメモリアクセスをシークするリソースと関
連させるステップをさらに含むことを特徴とする、請求
項49に記載の方法。 - 【請求項51】少なくとも1つを示すデータを格納する
ステップをさらに含むことを特徴とする、請求項40に
記載の方法。 - 【請求項52】 要求リソース用であり、そのリソース
にメモリアクセスを許可することによる浪費メモリサイ
クルを示すデータを格納するステップをさらに含むこと
を特徴とする、請求項40に記載の方法。 - 【請求項53】 要求された順番でメモリアクセスへの
要求を履行するステップをさらに含むことを特徴とす
る、請求項40に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US22689400P | 2000-08-23 | 2000-08-23 | |
US60/226894 | 2000-08-23 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011280536A Division JP5149985B2 (ja) | 2000-08-23 | 2011-12-21 | 機能拡張型メモリコントローラを備えるグラフィックス処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002189629A true JP2002189629A (ja) | 2002-07-05 |
JP4925385B2 JP4925385B2 (ja) | 2012-04-25 |
Family
ID=22850861
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001133526A Expired - Fee Related JP4925385B2 (ja) | 2000-08-23 | 2001-04-27 | 機能拡張型メモリコントローラを備えるグラフィックス処理システム |
JP2011280536A Expired - Fee Related JP5149985B2 (ja) | 2000-08-23 | 2011-12-21 | 機能拡張型メモリコントローラを備えるグラフィックス処理システム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011280536A Expired - Fee Related JP5149985B2 (ja) | 2000-08-23 | 2011-12-21 | 機能拡張型メモリコントローラを備えるグラフィックス処理システム |
Country Status (2)
Country | Link |
---|---|
US (2) | US7538772B1 (ja) |
JP (2) | JP4925385B2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008021228A (ja) * | 2006-07-14 | 2008-01-31 | Renesas Technology Corp | データ処理装置 |
JP2008509464A (ja) * | 2004-08-05 | 2008-03-27 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | メッセージハンドラ、および通信モジュールが有するメッセージメモリ中のデータへのアクセスを制御する方法 |
WO2010032433A1 (ja) * | 2008-09-18 | 2010-03-25 | パナソニック株式会社 | バッファメモリ装置、メモリシステム及びデータ読出方法 |
WO2010035426A1 (ja) * | 2008-09-25 | 2010-04-01 | パナソニック株式会社 | バッファメモリ装置、メモリシステム及びデータ転送方法 |
JP2013093026A (ja) * | 2011-10-26 | 2013-05-16 | Imagination Technologies Ltd | デジタル信号処理のデータ転送 |
WO2014049758A1 (ja) * | 2012-09-26 | 2014-04-03 | 富士通株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
CN112037115A (zh) * | 2013-08-08 | 2020-12-04 | 大卫·莫洛尼 | 计算成像管线 |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9849372B2 (en) * | 2012-09-28 | 2017-12-26 | Sony Interactive Entertainment Inc. | Method and apparatus for improving efficiency without increasing latency in emulation of a legacy application title |
US8483227B2 (en) * | 2003-11-20 | 2013-07-09 | International Business Machines Corporation | Controlling bandwidth reservations method and apparatus |
US7787481B1 (en) * | 2004-07-19 | 2010-08-31 | Advanced Micro Devices, Inc. | Prefetch scheme to minimize interpacket gap |
US20060083102A1 (en) * | 2004-10-20 | 2006-04-20 | Seagate Technology Llc | Failover control of dual controllers in a redundant data storage system |
US8035647B1 (en) * | 2006-08-24 | 2011-10-11 | Nvidia Corporation | Raster operations unit with interleaving of read and write requests using PCI express |
US8117478B2 (en) * | 2006-12-29 | 2012-02-14 | Intel Corporation | Optimizing power usage by processor cores based on architectural events |
US20080204373A1 (en) * | 2007-02-27 | 2008-08-28 | Leroy Sutton | R-port assembly for video signal format conversion |
WO2008126392A1 (ja) * | 2007-04-11 | 2008-10-23 | Panasonic Corporation | 画像生成装置及び画像生成方法 |
US8542266B2 (en) * | 2007-05-21 | 2013-09-24 | Polycom, Inc. | Method and system for adapting a CP layout according to interaction between conferees |
ES2621989T3 (es) * | 2009-01-27 | 2017-07-05 | Mitsubishi Electric Corporation | Dispositivo de presentación de estados y método de presentación de dispositivos de presentación de estados |
US20110273461A1 (en) * | 2009-01-30 | 2011-11-10 | Mitsubishi Electric Corporation | Status display apparatus |
US8397006B2 (en) * | 2010-01-28 | 2013-03-12 | Freescale Semiconductor, Inc. | Arbitration scheme for accessing a shared resource |
US20130329553A1 (en) * | 2012-06-06 | 2013-12-12 | Mosys, Inc. | Traffic metering and shaping for network packets |
US9400695B2 (en) * | 2010-02-26 | 2016-07-26 | Microsoft Technology Licensing, Llc | Low latency rendering of objects |
GB2493654A (en) | 2010-05-28 | 2013-02-13 | Hewlett Packard Development Co | Storing data in any of a plurality of buffers in a memory controller |
US9053562B1 (en) | 2010-06-24 | 2015-06-09 | Gregory S. Rabin | Two dimensional to three dimensional moving image converter |
JP5752382B2 (ja) * | 2010-09-29 | 2015-07-22 | 矢崎総業株式会社 | 表示装置及び画像データの転送方法 |
US20130117168A1 (en) | 2011-11-04 | 2013-05-09 | Mark Henrik Sandstrom | Maximizing Throughput of Multi-user Parallel Data Processing Systems |
US8789065B2 (en) | 2012-06-08 | 2014-07-22 | Throughputer, Inc. | System and method for input data load adaptive parallel processing |
US8490111B2 (en) * | 2011-04-16 | 2013-07-16 | Throughputer, Inc. | Efficient network and memory architecture for multi-core data processing system |
US9460546B1 (en) | 2011-03-30 | 2016-10-04 | Nvidia Corporation | Hierarchical structure for accelerating ray tracing operations in scene rendering |
US9153068B2 (en) | 2011-06-24 | 2015-10-06 | Nvidia Corporation | Clipless time and lens bounds for improved sample test efficiency in image rendering |
US9142043B1 (en) | 2011-06-24 | 2015-09-22 | Nvidia Corporation | System and method for improved sample test efficiency in image rendering |
US8970584B1 (en) | 2011-06-24 | 2015-03-03 | Nvidia Corporation | Bounding box-based techniques for improved sample test efficiency in image rendering |
US9118902B1 (en) | 2011-07-05 | 2015-08-25 | Lucasfilm Entertainment Company Ltd. | Stereoscopic conversion |
US9448847B2 (en) | 2011-07-15 | 2016-09-20 | Throughputer, Inc. | Concurrent program execution optimization |
US9269183B1 (en) | 2011-07-31 | 2016-02-23 | Nvidia Corporation | Combined clipless time and lens bounds for improved sample test efficiency in image rendering |
US9305394B2 (en) | 2012-01-27 | 2016-04-05 | Nvidia Corporation | System and process for improved sampling for parallel light transport simulation |
US9236064B2 (en) | 2012-02-15 | 2016-01-12 | Microsoft Technology Licensing, Llc | Sample rate converter with automatic anti-aliasing filter |
US9171394B2 (en) | 2012-07-19 | 2015-10-27 | Nvidia Corporation | Light transport consistent scene simplification within graphics display system |
US9159158B2 (en) | 2012-07-19 | 2015-10-13 | Nvidia Corporation | Surface classification for point-based rendering within graphics display system |
US9559889B1 (en) * | 2012-10-31 | 2017-01-31 | Amazon Technologies, Inc. | Cache population optimization for storage gateways |
US9992021B1 (en) | 2013-03-14 | 2018-06-05 | GoTenna, Inc. | System and method for private and point-to-point communication between computing devices |
US9744826B2 (en) | 2013-05-31 | 2017-08-29 | Fox Factory, Inc. | Methods and apparatus for adjusting a spring pre-load |
US9911477B1 (en) * | 2014-04-18 | 2018-03-06 | Altera Corporation | Memory controller architecture with improved memory scheduling efficiency |
US9330433B2 (en) | 2014-06-30 | 2016-05-03 | Intel Corporation | Data distribution fabric in scalable GPUs |
KR101717355B1 (ko) | 2015-07-29 | 2017-03-16 | 엘에스산전 주식회사 | 에너지 관리 시스템의 디스플레이 장치 및 방법 |
US10585818B2 (en) | 2017-04-05 | 2020-03-10 | International Business Machines Corporation | Low overhead exclusive control for shared memory objects |
US10664419B2 (en) * | 2017-11-02 | 2020-05-26 | Arm Limited | I/O driven data transfer in a data processing network |
TWI727203B (zh) * | 2018-09-07 | 2021-05-11 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
US10877906B2 (en) * | 2018-09-17 | 2020-12-29 | Micron Technology, Inc. | Scheduling of read operations and write operations based on a data bus mode |
US11004251B2 (en) | 2018-11-27 | 2021-05-11 | Advanced Micro Devices, Inc. | Automatic configuration of knobs to optimize performance of a graphics pipeline |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6043764A (ja) * | 1983-08-19 | 1985-03-08 | Nec Corp | 情報処理システム |
JPH05120239A (ja) * | 1991-10-30 | 1993-05-18 | Seiko Epson Corp | 並列処理回路 |
JPH05165716A (ja) * | 1991-03-19 | 1993-07-02 | Hitachi Ltd | ベクトルデータの要素を並列処理するベクトルプロセッサ |
JPH05233421A (ja) * | 1991-05-17 | 1993-09-10 | Sun Microsyst Inc | コンピュータ装置およびロード命令と記憶命令を発生し、実行するために記憶装置へ供給する方法 |
JPH05334244A (ja) * | 1992-06-01 | 1993-12-17 | Yokogawa Electric Corp | バス・インタフェース・ユニット |
JPH06103148A (ja) * | 1992-05-26 | 1994-04-15 | Nec Corp | ライトバッファ |
JPH11167557A (ja) * | 1997-12-02 | 1999-06-22 | Hitachi Ltd | 共有メモリアクセス順序保証方法及びマルチプロセッサシステム |
JPH11191075A (ja) * | 1997-08-28 | 1999-07-13 | Oki Electric Ind Co Ltd | メモリアーキテクチャーのための優先符号化及び復号化 |
JP2000181780A (ja) * | 1998-12-16 | 2000-06-30 | Hitachi Ltd | ストアバッファ装置 |
JP2000194683A (ja) * | 1998-12-28 | 2000-07-14 | Nec Kofu Ltd | 共有メモリの調停回路およびその調停方法 |
JP2002532779A (ja) * | 1998-12-04 | 2002-10-02 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | キューに基づくメモリコントローラ |
Family Cites Families (443)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4275413A (en) | 1978-03-30 | 1981-06-23 | Takashi Sakamoto | Linear interpolator for color correction |
US4357624A (en) | 1979-05-15 | 1982-11-02 | Combined Logic Company | Interactive video production system |
US4491836A (en) | 1980-02-29 | 1985-01-01 | Calma Company | Graphics display system and method including two-dimensional cache |
US4425559A (en) | 1980-06-02 | 1984-01-10 | Atari, Inc. | Method and apparatus for generating line segments and polygonal areas on a raster-type display |
US4388620A (en) | 1981-01-05 | 1983-06-14 | Atari, Inc. | Method and apparatus for generating elliptical images on a raster-type video display |
US4463380A (en) | 1981-09-25 | 1984-07-31 | Vought Corporation | Image processing system |
US4570233A (en) | 1982-07-01 | 1986-02-11 | The Singer Company | Modular digital image generator |
US4600919A (en) | 1982-08-03 | 1986-07-15 | New York Institute Of Technology | Three dimensional animation |
US4615013A (en) | 1983-08-02 | 1986-09-30 | The Singer Company | Method and apparatus for texture generation |
GB8322438D0 (en) | 1983-08-19 | 1983-10-12 | Marconi Avionics | Display systems |
US4586038A (en) | 1983-12-12 | 1986-04-29 | General Electric Company | True-perspective texture/shading processor |
DE3486494T2 (de) | 1983-12-26 | 2004-03-18 | Hitachi, Ltd. | Graphisches Musterverarbeitungsgerät |
US4808988A (en) | 1984-04-13 | 1989-02-28 | Megatek Corporation | Digital vector generator for a graphic display system |
US4725831A (en) | 1984-04-27 | 1988-02-16 | Xtar Corporation | High-speed video graphics system and method for generating solid polygons on a raster display |
US4829452A (en) | 1984-07-05 | 1989-05-09 | Xerox Corporation | Small angle image rotation using block transfers |
US4658247A (en) | 1984-07-30 | 1987-04-14 | Cornell Research Foundation, Inc. | Pipelined, line buffered real-time color graphics display system |
US4695943A (en) | 1984-09-27 | 1987-09-22 | Honeywell Information Systems Inc. | Multiprocessor shared pipeline cache memory with split cycle and concurrent utilization |
DE3584718D1 (de) | 1984-12-07 | 1992-01-02 | Dainippon Screen Mfg | Bilddatenverarbeitungsverfahren und system dafuer. |
US4625289A (en) | 1985-01-09 | 1986-11-25 | Evans & Sutherland Computer Corp. | Computer graphics system of general surface rendering by exhaustive sampling |
US4710876A (en) | 1985-06-05 | 1987-12-01 | General Electric Company | System and method for the display of surface structures contained within the interior region of a solid body |
US4897806A (en) | 1985-06-19 | 1990-01-30 | Pixar | Pseudo-random point sampling techniques in computer graphics |
US5239624A (en) | 1985-06-19 | 1993-08-24 | Pixar | Pseudo-random point sampling techniques in computer graphics |
FR2586838B1 (fr) | 1985-08-30 | 1989-07-28 | Labo Electronique Physique | Processeur d'elimination de faces cachees pour la synthese d'images a trois dimensions |
JPH0762794B2 (ja) | 1985-09-13 | 1995-07-05 | 株式会社日立製作所 | グラフイツク表示装置 |
US4974177A (en) | 1985-10-04 | 1990-11-27 | Daikin Industries Ltd. | Mapping circuit of a CRT display device |
US4692880A (en) | 1985-11-15 | 1987-09-08 | General Electric Company | Memory efficient cell texturing for advanced video object generator |
JPS62192878A (ja) | 1986-02-20 | 1987-08-24 | Nippon Gakki Seizo Kk | 多角形の塗りつぶし方法 |
US4862392A (en) | 1986-03-07 | 1989-08-29 | Star Technologies, Inc. | Geometry processor for graphics display system |
JPS62231380A (ja) | 1986-03-31 | 1987-10-09 | Namuko:Kk | 画像合成装置 |
US5504917A (en) | 1986-04-14 | 1996-04-02 | National Instruments Corporation | Method and apparatus for providing picture generation and control features in a graphical data flow environment |
US4785395A (en) | 1986-06-27 | 1988-11-15 | Honeywell Bull Inc. | Multiprocessor coherent cache system including two level shared cache with separately allocated processor storage locations and inter-level duplicate entry replacement |
US4768148A (en) | 1986-06-27 | 1988-08-30 | Honeywell Bull Inc. | Read in process memory apparatus |
US4817175A (en) | 1986-08-26 | 1989-03-28 | Schlumberger Systems And Services, Inc. | Video stream processing system |
US4855934A (en) | 1986-10-03 | 1989-08-08 | Evans & Sutherland Computer Corporation | System for texturing computer graphics images |
US4918625A (en) | 1986-12-19 | 1990-04-17 | Cae-Link Corporation | Method and apparatus for processing translucent objects |
US4965750A (en) | 1987-03-31 | 1990-10-23 | Hitachi, Ltd. | Graphic processor suitable for graphic data transfer and conversion processes |
US4833601A (en) | 1987-05-28 | 1989-05-23 | Bull Hn Information Systems Inc. | Cache resiliency in processing a variety of address faults |
US4935879A (en) | 1987-08-05 | 1990-06-19 | Daikin Industries, Ltd. | Texture mapping apparatus and method |
US5170468A (en) | 1987-08-18 | 1992-12-08 | Hewlett-Packard Company | Graphics system with shadow ram update to the color map |
US4965751A (en) | 1987-08-18 | 1990-10-23 | Hewlett-Packard Company | Graphics system with programmable tile size and multiplexed pixel data and partial pixel addresses based on tile size |
US4866637A (en) | 1987-10-30 | 1989-09-12 | International Business Machines Corporation | Pipelined lighting model processing system for a graphics workstation's shading function |
US5144291A (en) | 1987-11-02 | 1992-09-01 | Matsushita Electric Industrial Co., Ltd. | Means for eliminating hidden surface |
US4945500A (en) | 1987-11-04 | 1990-07-31 | Schlumberger Technologies, Inc. | Triangle processor for 3-D graphics display system |
US4888712A (en) | 1987-11-04 | 1989-12-19 | Schlumberger Systems, Inc. | Guardband clipping method and apparatus for 3-D graphics display system |
US4901064A (en) | 1987-11-04 | 1990-02-13 | Schlumberger Technologies, Inc. | Normal vector shading for 3-D graphics display system |
US5361386A (en) | 1987-12-04 | 1994-11-01 | Evans & Sutherland Computer Corp. | System for polygon interpolation using instantaneous values in a variable |
CA1309198C (en) | 1987-12-10 | 1992-10-20 | Carlo J. Evangelisti | Parallel rendering of smoothly shaded color triangles with anti-aliased edges for a three dimensional color display |
GB2214037A (en) | 1987-12-18 | 1989-08-23 | Ibm | Solid modelling system |
US4974176A (en) | 1987-12-18 | 1990-11-27 | General Electric Company | Microtexture for close-in detail |
US5136664A (en) | 1988-02-23 | 1992-08-04 | Bersack Bret B | Pixel rendering |
JPH0693181B2 (ja) | 1988-03-18 | 1994-11-16 | 株式会社日立製作所 | 表示装置 |
US6054999A (en) | 1988-03-22 | 2000-04-25 | Strandberg; Oerjan | Method and apparatus for computer supported animation |
DE68918886T2 (de) | 1988-04-08 | 1995-06-01 | Dainippon Screen Mfg. Co., Ltd., Kyoto | Verfahren zur Gewinnung der Aussenlinie eines Objektes in einem Bild. |
US4907174A (en) | 1988-06-02 | 1990-03-06 | Sun Microsystems, Inc. | Z-buffer allocated for window identification |
US5097427A (en) | 1988-07-06 | 1992-03-17 | Hewlett-Packard Company | Texture mapping for computer graphics display controller system |
US5315692A (en) | 1988-07-22 | 1994-05-24 | Hughes Training, Inc. | Multiple object pipeline display system |
US5003496A (en) | 1988-08-26 | 1991-03-26 | Eastman Kodak Company | Page memory control in a raster image processor |
US4989138A (en) | 1988-09-02 | 1991-01-29 | Tektronix, Inc. | Single bus graphics data processing pipeline with decentralized bus arbitration |
JPH0727581B2 (ja) | 1988-09-09 | 1995-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 図形処理装置 |
US5016183A (en) | 1988-09-13 | 1991-05-14 | Computer Design, Inc. | Textile design system and method |
US5018076A (en) | 1988-09-16 | 1991-05-21 | Chips And Technologies, Inc. | Method and circuitry for dual panel displays |
JP2685548B2 (ja) | 1988-11-28 | 1997-12-03 | 株式会社日立製作所 | ディジタル画像データの回転方法およびその装置 |
GB8828342D0 (en) | 1988-12-05 | 1989-01-05 | Rediffusion Simulation Ltd | Image generator |
US5062057A (en) | 1988-12-09 | 1991-10-29 | E-Machines Incorporated | Computer display controller with reconfigurable frame buffer memory |
US5659673A (en) | 1988-12-16 | 1997-08-19 | Canon Kabushiki Kaisha | Image processing apparatus |
US5255353A (en) | 1989-02-28 | 1993-10-19 | Ricoh Company, Ltd. | Three-dimensional shadow processor for an image forming apparatus |
US5204944A (en) | 1989-07-28 | 1993-04-20 | The Trustees Of Columbia University In The City Of New York | Separable image warping methods and systems using spatial lookup tables |
EP0423653B1 (en) | 1989-10-13 | 1997-08-06 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for compensating for color in color images |
JPH0776991B2 (ja) | 1989-10-24 | 1995-08-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Nurbsデータ変換方法及び装置 |
US5056044A (en) | 1989-12-21 | 1991-10-08 | Hewlett-Packard Company | Graphics frame buffer with programmable tile size |
JP3005007B2 (ja) | 1989-12-21 | 2000-01-31 | キヤノン株式会社 | 画像符号化装置 |
SE464265B (sv) | 1990-01-10 | 1991-03-25 | Stefan Blixt | Grafikprocessor |
GB2240015A (en) | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memory addressing |
GB2240017A (en) | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | New, interpolated texture values are fed back to texture memories |
DE69125661T2 (de) | 1990-02-05 | 1998-02-26 | Nintendo Co Ltd | Animationsanzeigeeinheit und dafür verwendeter externer speicher |
US5224208A (en) | 1990-03-16 | 1993-06-29 | Hewlett-Packard Company | Gradient calculation for texture mapping |
US5179638A (en) | 1990-04-26 | 1993-01-12 | Honeywell Inc. | Method and apparatus for generating a texture mapped perspective view |
US5163126A (en) | 1990-05-10 | 1992-11-10 | International Business Machines Corporation | Method for adaptively providing near phong grade shading for patterns in a graphics display system |
JPH05507166A (ja) | 1990-05-12 | 1993-10-14 | レディフュージョン・シミュレーション・リミテッド | イメージ発生装置 |
EP0464907B1 (en) | 1990-06-29 | 1996-10-09 | Philips Electronics Uk Limited | Generating an image |
EP0470782B1 (en) | 1990-08-08 | 1996-02-14 | The Peerless Group | Image rendering process and apparatus |
US5801716A (en) | 1990-08-16 | 1998-09-01 | Canon Kabushiki Kaisha | Pipeline structures for full-color computer graphics |
US5241658A (en) | 1990-08-21 | 1993-08-31 | Apple Computer, Inc. | Apparatus for storing information in and deriving information from a frame buffer |
JP2725915B2 (ja) | 1990-11-15 | 1998-03-11 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 三角形描画装置及び方法 |
US5268995A (en) | 1990-11-21 | 1993-12-07 | Motorola, Inc. | Method for executing graphics Z-compare and pixel merge instructions in a data processor |
US5268996A (en) | 1990-12-20 | 1993-12-07 | General Electric Company | Computer image generation method for determination of total pixel illumination due to plural light sources |
US5774133A (en) | 1991-01-09 | 1998-06-30 | 3Dlabs Ltd. | Computer system with improved pixel processing capabilities |
US5307450A (en) | 1991-02-19 | 1994-04-26 | Silicon Graphics, Inc. | Z-subdivision for improved texture mapping |
JPH07122908B2 (ja) | 1991-03-12 | 1995-12-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 3次元のソリッド物体を表す表示可能情報を生成する装置と方法 |
US5421028A (en) | 1991-03-15 | 1995-05-30 | Hewlett-Packard Company | Processing commands and data in a common pipeline path in a high-speed computer graphics system |
US5415549A (en) | 1991-03-21 | 1995-05-16 | Atari Games Corporation | Method for coloring a polygon on a video display |
JP3316592B2 (ja) | 1991-06-17 | 2002-08-19 | サン・マイクロシステムズ・インコーポレーテッド | 二重バッファ・出力ディスプレー・システム、および、第1のフレーム・バッファおよび第2のフレーム・バッファ相互間の切り換えを行う方法 |
EP0591325B1 (en) | 1991-06-28 | 2007-12-05 | LIM, Hong Lip | Improvements in visibility calculations for 3d computer graphics |
KR0167116B1 (ko) | 1991-07-26 | 1999-03-20 | 마이클 에이치. 모리스 | 변형가능한 디스플레이 메모리 제공방법 및 장치 |
JPH06509893A (ja) | 1991-08-13 | 1994-11-02 | ボード オブ リージェンツ オブ ザ ユニバーシティ オブ ワシントン | 画像処理及びグラフィック処理システム |
TW225595B (ja) | 1991-09-03 | 1994-06-21 | Gen Electric | |
US5404445A (en) | 1991-10-31 | 1995-04-04 | Toshiba America Information Systems, Inc. | External interface for a high performance graphics adapter allowing for graphics compatibility |
US5353424A (en) | 1991-11-19 | 1994-10-04 | Digital Equipment Corporation | Fast tag compare and bank select in set associative cache |
US5345541A (en) | 1991-12-20 | 1994-09-06 | Apple Computer, Inc. | Method and apparatus for approximating a value between two endpoint values in a three-dimensional image rendering device |
US5377313A (en) | 1992-01-29 | 1994-12-27 | International Business Machines Corporation | Computer graphics display method and system with shadow generation |
WO1993021623A1 (en) | 1992-04-17 | 1993-10-28 | Intel Corporation | Visual frame buffer architecture |
JP2760731B2 (ja) | 1992-04-30 | 1998-06-04 | 株式会社東芝 | グラフィックス互換性を可能にする高性能グラフィックスアダプタ用外部インターフェース回路 |
US5469535A (en) | 1992-05-04 | 1995-11-21 | Midway Manufacturing Company | Three-dimensional, texture mapping display system |
GB2267203B (en) | 1992-05-15 | 1997-03-19 | Fujitsu Ltd | Three-dimensional graphics drawing apparatus, and a memory apparatus to be used in texture mapping |
US5366376A (en) | 1992-05-22 | 1994-11-22 | Atari Games Corporation | Driver training system and method with performance data feedback |
US5473736A (en) | 1992-06-08 | 1995-12-05 | Chroma Graphics | Method and apparatus for ordering and remapping colors in images of real two- and three-dimensional objects |
US5432900A (en) | 1992-06-19 | 1995-07-11 | Intel Corporation | Integrated graphics and video computer display system |
JPH0628485A (ja) | 1992-07-09 | 1994-02-04 | Toshiba Corp | テクスチャーアドレス生成器、テクスチャーパターン生成器、テクスチャー描画装置及びテクスチャーアドレス生成方法 |
JPH07325934A (ja) | 1992-07-10 | 1995-12-12 | Walt Disney Co:The | 仮想世界に向上したグラフィックスを提供する方法および装置 |
US5475803A (en) | 1992-07-10 | 1995-12-12 | Lsi Logic Corporation | Method for 2-D affine transformation of images |
US5821940A (en) | 1992-08-03 | 1998-10-13 | Ball Corporation | Computer graphics vertex index cache system for polygons |
GB2270243B (en) | 1992-08-26 | 1996-02-28 | Namco Ltd | Image synthesizing system |
JP2682559B2 (ja) | 1992-09-30 | 1997-11-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 物体の画像をディスプレイ装置上に表示する装置及び方法並びにコンピュータ・グラフィックス表示システム |
US5432895A (en) | 1992-10-01 | 1995-07-11 | University Corporation For Atmospheric Research | Virtual reality imaging system |
GB2271259A (en) | 1992-10-02 | 1994-04-06 | Canon Res Ct Europe Ltd | Processing image data |
US5890190A (en) | 1992-12-31 | 1999-03-30 | Intel Corporation | Frame buffer for storing graphics and video data |
US5559954A (en) | 1993-02-24 | 1996-09-24 | Intel Corporation | Method & apparatus for displaying pixels from a multi-format frame buffer |
US5859645A (en) | 1993-03-26 | 1999-01-12 | Loral Corporation | Method for point sampling in computer graphics systems |
EP0654289B1 (en) | 1993-04-09 | 2001-02-07 | Sega Enterprises, Ltd. | Multiconnector for game machine |
US5644364A (en) | 1993-04-16 | 1997-07-01 | Avid Technology, Inc. | Media pipeline with multichannel video processing and playback |
US5606650A (en) | 1993-04-22 | 1997-02-25 | Apple Computer, Inc. | Method and apparatus for storage and retrieval of a texture map in a graphics display system |
JP3026698B2 (ja) | 1993-05-27 | 2000-03-27 | キヤノン株式会社 | 画像処理方法及びその装置 |
GB2278524B (en) | 1993-05-28 | 1997-12-10 | Nihon Unisys Ltd | Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency |
US5392393A (en) | 1993-06-04 | 1995-02-21 | Sun Microsystems, Inc. | Architecture for a high performance three dimensional graphics accelerator |
US5408650A (en) | 1993-06-29 | 1995-04-18 | Digital Equipment Corporation | Memory analysis system for dynamically displaying memory allocation and de-allocation events associated with an application program |
JPH0778267A (ja) | 1993-07-09 | 1995-03-20 | Silicon Graphics Inc | 陰影を表示する方法及びコンピュータ制御表示システム |
US5490240A (en) | 1993-07-09 | 1996-02-06 | Silicon Graphics, Inc. | System and method of generating interactive computer graphic images incorporating three dimensional textures |
GB9316214D0 (en) | 1993-08-05 | 1993-09-22 | Philips Electronics Uk Ltd | Image processing |
JPH0766424A (ja) | 1993-08-20 | 1995-03-10 | Semiconductor Energy Lab Co Ltd | 半導体装置およびその作製方法 |
WO1995010822A1 (en) | 1993-10-15 | 1995-04-20 | Evans & Sutherland Computer Corporation | Direct rendering of textured height fields |
JPH07146952A (ja) | 1993-11-22 | 1995-06-06 | Konami Kk | 3次元画像処理装置 |
WO1995015528A1 (en) | 1993-11-30 | 1995-06-08 | Vlsi Technology, Inc. | A reallocatable memory subsystem enabling transparent transfer of memory function during upgrade |
JPH07200386A (ja) | 1993-12-28 | 1995-08-04 | Toshiba Corp | 共有メモリのアクセス制御装置および画像形成装置 |
US5592597A (en) | 1994-02-14 | 1997-01-07 | Parametric Technology Corporation | Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-D graphics |
US5557712A (en) | 1994-02-16 | 1996-09-17 | Apple Computer, Inc. | Color map tables smoothing in a color computer graphics system avoiding objectionable color shifts |
US5548709A (en) | 1994-03-07 | 1996-08-20 | Silicon Graphics, Inc. | Apparatus and method for integrating texture memory and interpolation logic in a computer system |
US5487146A (en) | 1994-03-08 | 1996-01-23 | Texas Instruments Incorporated | Plural memory access address generation employing guide table entries forming linked list |
US5506604A (en) | 1994-04-06 | 1996-04-09 | Cirrus Logic, Inc. | Apparatus, systems and methods for processing video data in conjunction with a multi-format frame buffer |
US5461712A (en) | 1994-04-18 | 1995-10-24 | International Business Machines Corporation | Quadrant-based two-dimensional memory manager |
JP3240821B2 (ja) | 1994-04-22 | 2001-12-25 | 株式会社日立製作所 | 高機能画像メモリlsi及びそれを用いた表示装置 |
US5608864A (en) | 1994-04-29 | 1997-03-04 | Cirrus Logic, Inc. | Variable pixel depth and format for video windows |
US5664162A (en) | 1994-05-23 | 1997-09-02 | Cirrus Logic, Inc. | Graphics accelerator with dual memory controllers |
JP3220328B2 (ja) | 1994-06-01 | 2001-10-22 | 株式会社ソニー・コンピュータエンタテインメント | ビデオゲーム機 |
US5694143A (en) | 1994-06-02 | 1997-12-02 | Accelerix Limited | Single chip frame buffer and graphics accelerator |
WO1995035572A1 (en) | 1994-06-20 | 1995-12-28 | Neomagic Corporation | Graphics controller integrated circuit without memory interface |
US5768626A (en) | 1994-06-24 | 1998-06-16 | Intel Corporation | Method and apparatus for servicing a plurality of FIFO's in a capture gate array |
US5600763A (en) | 1994-07-21 | 1997-02-04 | Apple Computer, Inc. | Error-bounded antialiased rendering of complex scenes |
US5703793A (en) | 1994-07-29 | 1997-12-30 | Discovision Associates | Video decompression |
US5684941A (en) | 1994-09-01 | 1997-11-04 | Cirrus Logic, Inc. | Interpolation rendering of polygons into a pixel grid |
US5678037A (en) | 1994-09-16 | 1997-10-14 | Vlsi Technology, Inc. | Hardware graphics accelerator system and method therefor |
US5553228A (en) | 1994-09-19 | 1996-09-03 | International Business Machines Corporation | Accelerated interface between processors and hardware adapters |
US5933154A (en) | 1994-09-30 | 1999-08-03 | Apple Computer, Inc. | Multi-panel video display control addressing of interleaved frame buffers via CPU address conversion |
GB2293938B (en) | 1994-10-04 | 1999-01-20 | Winbond Electronics Corp | Apparatus for digital video format conversion |
TW278162B (ja) | 1994-10-07 | 1996-06-11 | Yamaha Corp | |
TW357913U (en) | 1994-10-12 | 1999-05-01 | Sega Enterprises Kk | Peripheral machinery |
JPH08123969A (ja) | 1994-10-28 | 1996-05-17 | Mitsubishi Electric Corp | マッピング装置 |
GB9422089D0 (en) | 1994-11-02 | 1994-12-21 | Philips Electronics Uk Ltd | Blurring for computer graphics |
US5593350A (en) | 1994-11-04 | 1997-01-14 | Thrustmaster, Inc. | Video game card having interrupt resistant behavior |
US5838334A (en) | 1994-11-16 | 1998-11-17 | Dye; Thomas A. | Memory and graphics controller which performs pointer-based display list video refresh operations |
US6067098A (en) | 1994-11-16 | 2000-05-23 | Interactive Silicon, Inc. | Video/graphics controller which performs pointer-based display list video refresh operation |
JP2637931B2 (ja) | 1994-12-01 | 1997-08-06 | インターナショナル・ビジネス・マシーンズ・コーポレイション | テクスチャ・マッピングを行うコンピュータ・システム |
US5561752A (en) | 1994-12-22 | 1996-10-01 | Apple Computer, Inc. | Multipass graphics rendering method and apparatus with re-traverse flag |
KR100242880B1 (ko) | 1994-12-29 | 2000-02-01 | 전주범 | 분할된 영역의 윤곽추적장치 |
JP4130237B2 (ja) | 1995-01-28 | 2008-08-06 | 株式会社半導体エネルギー研究所 | 結晶性珪素膜の作製方法及び半導体装置の作製方法 |
JPH08221593A (ja) | 1995-02-14 | 1996-08-30 | Hitachi Ltd | 図形表示装置 |
US5649082A (en) | 1995-03-20 | 1997-07-15 | Silicon Graphics, Inc. | Efficient method and apparatus for determining texture coordinates for lines and polygons |
US5900881A (en) | 1995-03-22 | 1999-05-04 | Ikedo; Tsuneo | Computer graphics circuit |
US5727192A (en) | 1995-03-24 | 1998-03-10 | 3Dlabs Inc. Ltd. | Serial rendering system with auto-synchronization on frame blanking |
US5594854A (en) | 1995-03-24 | 1997-01-14 | 3Dlabs Inc. Ltd. | Graphics subsystem with coarse subpixel correction |
US5835096A (en) | 1995-03-24 | 1998-11-10 | 3D Labs | Rendering system using 3D texture-processing hardware for accelerated 2D rendering |
US5798770A (en) | 1995-03-24 | 1998-08-25 | 3Dlabs Inc. Ltd. | Graphics rendering system with reconfigurable pipeline sequence |
US6025853A (en) | 1995-03-24 | 2000-02-15 | 3Dlabs Inc. Ltd. | Integrated graphics subsystem with message-passing architecture |
US5777629A (en) | 1995-03-24 | 1998-07-07 | 3Dlabs Inc. Ltd. | Graphics subsystem with smart direct-memory-access operation |
US5764228A (en) | 1995-03-24 | 1998-06-09 | 3Dlabs Inc., Ltd. | Graphics pre-processing and rendering system |
US5805868A (en) | 1995-03-24 | 1998-09-08 | 3Dlabs Inc. Ltd. | Graphics subsystem with fast clear capability |
US5701444A (en) | 1995-03-24 | 1997-12-23 | 3Dlabs Inc. Ltd. | Three-dimensional graphics subsystem with enhanced support for graphical user interface |
US5815166A (en) | 1995-03-24 | 1998-09-29 | 3Dlabs Inc., Ltd. | Graphics subsystem with slaveable rasterizer |
US5666494A (en) * | 1995-03-31 | 1997-09-09 | Samsung Electronics Co., Ltd. | Queue management mechanism which allows entries to be processed in any order |
US5687357A (en) | 1995-04-14 | 1997-11-11 | Nvidia Corporation | Register array for utilizing burst mode transfer on local bus |
US5805175A (en) | 1995-04-14 | 1998-09-08 | Nvidia Corporation | Method and apparatus for providing a plurality of color formats from a single frame buffer |
US5714981A (en) | 1995-04-21 | 1998-02-03 | Advanced Gravis Computer Technology, Ltd. | Gameport communication apparatus and method |
US5651104A (en) | 1995-04-25 | 1997-07-22 | Evans & Sutherland Computer Corporation | Computer graphics system and process for adaptive supersampling |
US5751295A (en) | 1995-04-27 | 1998-05-12 | Control Systems, Inc. | Graphics accelerator chip and method |
US5798762A (en) | 1995-05-10 | 1998-08-25 | Cagent Technologies, Inc. | Controlling a real-time rendering engine using a list-based control mechanism |
US5740406A (en) | 1995-05-15 | 1998-04-14 | Nvidia Corporation | Method and apparatus for providing fifo buffer input to an input/output device used in a computer system |
US5638535A (en) | 1995-05-15 | 1997-06-10 | Nvidia Corporation | Method and apparatus for providing flow control with lying for input/output operations in a computer system |
US5721947A (en) | 1995-05-15 | 1998-02-24 | Nvidia Corporation | Apparatus adapted to be joined between the system I/O bus and I/O devices which translates addresses furnished directly by an application program |
US5758182A (en) | 1995-05-15 | 1998-05-26 | Nvidia Corporation | DMA controller translates virtual I/O device address received directly from application program command to physical i/o device address of I/O device on device bus |
US5657443A (en) | 1995-05-16 | 1997-08-12 | Hewlett-Packard Company | Enhanced test system for an application-specific memory scheme |
JP3081774B2 (ja) | 1995-05-24 | 2000-08-28 | シャープ株式会社 | テクスチャーパターンメモリ回路 |
JPH08328941A (ja) | 1995-05-31 | 1996-12-13 | Nec Corp | メモリアクセス制御回路 |
US5751292A (en) | 1995-06-06 | 1998-05-12 | Hewlett-Packard Company | Texture mapping method and system |
US5745118A (en) | 1995-06-06 | 1998-04-28 | Hewlett-Packard Company | 3D bypass for download of textures |
US5877741A (en) | 1995-06-07 | 1999-03-02 | Seiko Epson Corporation | System and method for implementing an overlay pathway |
US5828383A (en) | 1995-06-23 | 1998-10-27 | S3 Incorporated | Controller for processing different pixel data types stored in the same display memory by use of tag bits |
US5754191A (en) | 1995-06-23 | 1998-05-19 | Cirrus Logic, Inc. | Method and apparatus for optimizing pixel data write operations to a tile based frame buffer |
JPH0916806A (ja) | 1995-07-04 | 1997-01-17 | Ricoh Co Ltd | 立体画像処理装置 |
JP3349871B2 (ja) | 1995-07-10 | 2002-11-25 | 株式会社リコー | 画像処理装置 |
JP3780011B2 (ja) | 1995-07-14 | 2006-05-31 | 株式会社ルネサステクノロジ | 半導体記憶装置 |
US5682522A (en) | 1995-07-18 | 1997-10-28 | Silicon Integrated Systems Corp. | Shared memory architecture of graphics frame buffer and hard disk cache |
US5628686A (en) | 1995-07-31 | 1997-05-13 | Microsoft Corporation | Apparatus and method for bidirectional data communication in a game port |
IL114838A0 (en) | 1995-08-04 | 1996-11-14 | Spiegel Ehud | Apparatus and method for object tracking |
US6016150A (en) | 1995-08-04 | 2000-01-18 | Microsoft Corporation | Sprite compositor and method for performing lighting and shading operations using a compositor to combine factored image layers |
US5949428A (en) | 1995-08-04 | 1999-09-07 | Microsoft Corporation | Method and apparatus for resolving pixel data in a graphics rendering system |
US5870097A (en) | 1995-08-04 | 1999-02-09 | Microsoft Corporation | Method and system for improving shadowing in a graphics rendering system |
US5867166A (en) | 1995-08-04 | 1999-02-02 | Microsoft Corporation | Method and system for generating images using Gsprites |
US5880737A (en) | 1995-08-04 | 1999-03-09 | Microsoft Corporation | Method and system for accessing texture data in environments with high latency in a graphics rendering system |
US6005582A (en) | 1995-08-04 | 1999-12-21 | Microsoft Corporation | Method and system for texture mapping images with anisotropic filtering |
US5999189A (en) | 1995-08-04 | 1999-12-07 | Microsoft Corporation | Image compression to reduce pixel and texture memory requirements in a real-time image generator |
US5886701A (en) | 1995-08-04 | 1999-03-23 | Microsoft Corporation | Graphics rendering device and method for operating same |
US5801711A (en) | 1995-08-08 | 1998-09-01 | Hewlett Packard Company | Polyline and triangle strip data management techniques for enhancing performance of computer graphics system |
US5819017A (en) | 1995-08-22 | 1998-10-06 | Silicon Graphics, Inc. | Apparatus and method for selectively storing depth information of a 3-D image |
US5767856A (en) | 1995-08-22 | 1998-06-16 | Rendition, Inc. | Pixel engine pipeline for a 3D graphics accelerator |
US5657478A (en) | 1995-08-22 | 1997-08-12 | Rendition, Inc. | Method and apparatus for batchable frame switch and synchronization operations |
US5734386A (en) | 1995-09-08 | 1998-03-31 | Evans & Sutherland Computer Corporation | System and method for displaying textured polygons using planar texture interpolation |
JP2861890B2 (ja) | 1995-09-28 | 1999-02-24 | 日本電気株式会社 | カラー画像表示装置 |
US5949919A (en) | 1995-10-05 | 1999-09-07 | Microsoft Corporation | Precompression extrapolation method |
US6057851A (en) | 1995-10-06 | 2000-05-02 | International Business Machines Corp. | Computer graphics system having efficient texture mapping with perspective correction |
US6007428A (en) | 1995-10-09 | 1999-12-28 | Nintendo Co., Ltd. | Operation controlling device and video processing system used therewith |
JP3524247B2 (ja) | 1995-10-09 | 2004-05-10 | 任天堂株式会社 | ゲーム機およびそれを用いたゲーム機システム |
KR100371456B1 (ko) | 1995-10-09 | 2004-03-30 | 닌텐도가부시키가이샤 | 삼차원화상처리시스템 |
US5835102A (en) | 1995-10-19 | 1998-11-10 | Sparta, Inc. | System for transmission and recovery of digital data using video graphics display processor and method of operation thereof |
US5977979A (en) | 1995-10-31 | 1999-11-02 | International Business Machines Corporation | Simulated three-dimensional display using bit-mapped information |
US5724561A (en) | 1995-11-03 | 1998-03-03 | 3Dfx Interactive, Incorporated | System and method for efficiently determining a fog blend value in processing graphical images |
US5740343A (en) | 1995-11-03 | 1998-04-14 | 3Dfx Interactive, Incorporated | Texture compositing apparatus and method |
US5808630A (en) | 1995-11-03 | 1998-09-15 | Sierra Semiconductor Corporation | Split video architecture for personal computers |
US5760783A (en) | 1995-11-06 | 1998-06-02 | Silicon Graphics, Inc. | Method and system for providing texture using a selected portion of a texture map |
KR100261076B1 (ko) | 1995-11-09 | 2000-07-01 | 윤종용 | 범프 맵핑과 퐁 쉐이딩을 동시에 수행하는 렌더링방법 및 장치 |
JP3700871B2 (ja) | 1995-11-11 | 2005-09-28 | ソニー株式会社 | 画像変換装置 |
US5940089A (en) | 1995-11-13 | 1999-08-17 | Ati Technologies | Method and apparatus for displaying multiple windows on a display monitor |
US6155926A (en) | 1995-11-22 | 2000-12-05 | Nintendo Co., Ltd. | Video game system and method with enhanced three-dimensional character and background control |
US6022274A (en) | 1995-11-22 | 2000-02-08 | Nintendo Co., Ltd. | Video game system using memory module |
US6331856B1 (en) | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
US5883638A (en) | 1995-12-01 | 1999-03-16 | Lucas Digital, Ltd. | Method and apparatus for creating lifelike digital representations of computer animated objects by providing corrective enveloping |
WO1997021192A1 (en) | 1995-12-06 | 1997-06-12 | Intergraph Corporation | Peer-to-peer parallel processing graphics accelerator |
US5850229A (en) | 1995-12-15 | 1998-12-15 | Raindrop Geomagic, Inc. | Apparatus and method for geometric morphing |
US6111584A (en) | 1995-12-18 | 2000-08-29 | 3Dlabs Inc. Ltd. | Rendering system with mini-patch retrieval from local texture storage |
US5748199A (en) | 1995-12-20 | 1998-05-05 | Synthonics Incorporated | Method and apparatus for converting a two dimensional motion picture into a three dimensional motion picture |
US5740383A (en) | 1995-12-22 | 1998-04-14 | Cirrus Logic, Inc. | Dynamic arbitration priority |
US5892517A (en) | 1996-01-02 | 1999-04-06 | Integrated Device Technology, Inc. | Shared access texturing of computer graphic images |
US5831625A (en) | 1996-01-02 | 1998-11-03 | Integrated Device Technology, Inc. | Wavelet texturing |
EP0786756B1 (en) | 1996-01-23 | 2009-03-25 | Hewlett-Packard Company, A Delaware Corporation | Data transfer arbitration for display controller |
US5943058A (en) | 1996-01-25 | 1999-08-24 | Silicon Graphics, Inc. | Texture mapping circuit for performing data interpolations |
US5781927A (en) | 1996-01-30 | 1998-07-14 | United Microelectronics Corporation | Main memory arbitration with priority scheduling capability including multiple priorty signal connections |
US5739819A (en) | 1996-02-05 | 1998-04-14 | Scitex Corporation Ltd. | Method and apparatus for generating an artificial shadow in a two dimensional color image |
US5963220A (en) | 1996-02-08 | 1999-10-05 | Industrial Technology Research Institute | Mip map/rip map texture linear addressing memory organization and address generator |
DE19606357A1 (de) | 1996-02-12 | 1997-08-14 | Gmd Gmbh | Bildverarbeitungsverfahren zur Darstellung von spiegelnden Objekten und zugehörige Vorrichtung |
US5777623A (en) | 1996-02-15 | 1998-07-07 | Canon Kabushiki Kaisha | Apparatus and method for performing perspectively correct interpolation in computer graphics in a variable direction along a line of pixels |
US5801720A (en) | 1996-02-20 | 1998-09-01 | National Semiconductor Corporation | Data transfer from a graphics subsystem to system memory |
US5914725A (en) | 1996-03-07 | 1999-06-22 | Powertv, Inc. | Interpolation of pixel values and alpha values in a computer graphics display device |
US5870587A (en) | 1996-03-20 | 1999-02-09 | International Business Machines Corporation | Information-handling system, method, and article of manufacture including a mechanism for providing an improved application binary interface |
US5982390A (en) | 1996-03-25 | 1999-11-09 | Stan Stoneking | Controlling personality manifestations by objects in a computer-assisted animation environment |
US6078311A (en) | 1996-03-26 | 2000-06-20 | Pacific Digital Peripherals, Inc. | Joystick game adapter card for a personal computer |
US5828416A (en) * | 1996-03-29 | 1998-10-27 | Matsushita Electric Corporation Of America | System and method for interfacing a transport decoder to a elementary stream video decorder |
US5809219A (en) | 1996-04-15 | 1998-09-15 | Silicon Graphics, Inc. | Analytic motion blur coverage in the generation of computer graphics imagery |
US6020931A (en) | 1996-04-25 | 2000-02-01 | George S. Sheng | Video composition and position system and media signal communication system |
US5909218A (en) | 1996-04-25 | 1999-06-01 | Matsushita Electric Industrial Co., Ltd. | Transmitter-receiver of three-dimensional skeleton structure motions and method thereof |
US5831624A (en) | 1996-04-30 | 1998-11-03 | 3Dfx Interactive Inc | Level of detail texture filtering with dithering and mipmaps |
US5818456A (en) | 1996-04-30 | 1998-10-06 | Evans & Sutherland Computer Corporation | Computer graphics system with adaptive pixel multisampler |
US5949440A (en) | 1996-04-30 | 1999-09-07 | Hewlett Packard Compnay | Method and apparatus for processing graphics primitives in multiple modes using reconfigurable hardware |
US5886705A (en) | 1996-05-17 | 1999-03-23 | Seiko Epson Corporation | Texture memory organization based on data locality |
US5912676A (en) | 1996-06-14 | 1999-06-15 | Lsi Logic Corporation | MPEG decoder frame memory interface which is reconfigurable for different frame store architectures |
US5966134A (en) | 1996-06-28 | 1999-10-12 | Softimage | Simulating cel animation and shading |
US5821949A (en) | 1996-07-01 | 1998-10-13 | Sun Microsystems, Inc. | Three-dimensional graphics accelerator with direct data channels for improved performance |
US6046746A (en) | 1996-07-01 | 2000-04-04 | Sun Microsystems, Inc. | Method and apparatus implementing high resolution rendition of Z-buffered primitives |
US6115047A (en) | 1996-07-01 | 2000-09-05 | Sun Microsystems, Inc. | Method and apparatus for implementing efficient floating point Z-buffering |
US5874969A (en) | 1996-07-01 | 1999-02-23 | Sun Microsystems, Inc. | Three-dimensional graphics accelerator which implements multiple logical buses using common data lines for improved bus communication |
US5745125A (en) | 1996-07-02 | 1998-04-28 | Sun Microsystems, Inc. | Floating point processor for a three-dimensional graphics accelerator which includes floating point, lighting and set-up cores for improved performance |
US5877771A (en) | 1996-07-12 | 1999-03-02 | Silicon Graphics, Inc. | Method and apparatus for supersampling based on the local rate of change in texture |
US6038348A (en) | 1996-07-24 | 2000-03-14 | Oak Technology, Inc. | Pixel image enhancement system and method |
US5887155A (en) | 1996-07-25 | 1999-03-23 | Microunity Systems Engineering, Inc. | Vertex based geometry engine system for use in integrated circuit design |
US5751291A (en) | 1996-07-26 | 1998-05-12 | Hewlett-Packard Company | System and method for accelerated occlusion culling |
MY119610A (en) | 1996-07-31 | 2005-06-30 | Sony Corp | Apparatus and method for storing and accessing picture generation data |
US5828382A (en) | 1996-08-02 | 1998-10-27 | Cirrus Logic, Inc. | Apparatus for dynamic XY tiled texture caching |
US5923334A (en) | 1996-08-05 | 1999-07-13 | International Business Machines Corporation | Polyhedral environment map utilizing a triangular data structure |
US6154600A (en) * | 1996-08-06 | 2000-11-28 | Applied Magic, Inc. | Media editor for non-linear editing system |
US5933150A (en) | 1996-08-06 | 1999-08-03 | Interval Research Corporation | System for image manipulation and animation using embedded constraint graphics |
IL119082A (en) | 1996-08-16 | 2001-04-30 | Virtue Ltd | A method for creating graphic characters |
US6028611A (en) | 1996-08-29 | 2000-02-22 | Apple Computer, Inc. | Modular digital image processing via an image processing chain |
JP3387750B2 (ja) | 1996-09-02 | 2003-03-17 | 株式会社リコー | シェーディング処理装置 |
DE19637463A1 (de) | 1996-09-13 | 1998-03-26 | Gsf Forschungszentrum Umwelt | Verfahren zur Anzeige von geometrischen Objektoberflächen |
US6104417A (en) | 1996-09-13 | 2000-08-15 | Silicon Graphics, Inc. | Unified memory computer architecture with dynamic graphics memory allocation |
US5987567A (en) | 1996-09-30 | 1999-11-16 | Apple Computer, Inc. | System and method for caching texture map information |
US6115049A (en) | 1996-09-30 | 2000-09-05 | Apple Computer, Inc. | Method and apparatus for high performance antialiasing which minimizes per pixel storage and object data bandwidth |
US5926647A (en) | 1996-10-11 | 1999-07-20 | Divicom Inc. | Processing system with dynamic alteration of a color look-up table |
US6018350A (en) | 1996-10-29 | 2000-01-25 | Real 3D, Inc. | Illumination and shadow simulation in a computer graphics/imaging system |
US5933155A (en) | 1996-11-06 | 1999-08-03 | Silicon Graphics, Inc. | System and method for buffering multiple frames while controlling latency |
US5926182A (en) | 1996-11-19 | 1999-07-20 | International Business Machines Corporation | Efficient rendering utilizing user defined shields and windows |
EP0877991B1 (en) | 1996-11-21 | 2003-01-08 | Koninklijke Philips Electronics N.V. | Method and apparatus for generating a computer graphics image |
US5861888A (en) | 1996-11-27 | 1999-01-19 | Vlsi Technology Inc | Method and a system for the nonlinear storage of a texture map within a linear memory device |
JP3885262B2 (ja) | 1996-12-17 | 2007-02-21 | 株式会社セガ | テクスチャマップ上の複数画素を混合する方法及び、これを用いた複数画素混合回路と画像処理装置 |
KR100225072B1 (ko) | 1996-12-18 | 1999-10-15 | 윤종용 | 포멧 콘버터 |
US5912675A (en) | 1996-12-19 | 1999-06-15 | Avid Technology, Inc. | System and method using bounding volumes for assigning vertices of envelopes to skeleton elements in an animation system |
US6057847A (en) | 1996-12-20 | 2000-05-02 | Jenkins; Barry | System and method of image generation and encoding using primitive reprojection |
US5831640A (en) | 1996-12-20 | 1998-11-03 | Cirrus Logic, Inc. | Enhanced texture map data fetching circuit and method |
US6111582A (en) | 1996-12-20 | 2000-08-29 | Jenkins; Barry L. | System and method of image generation and encoding using primitive reprojection |
US5933529A (en) | 1996-12-24 | 1999-08-03 | Daewoo Electronics Co., Ltd. | Method of tracing a contour of an object based on background information of the object |
JP3738924B2 (ja) | 1996-12-24 | 2006-01-25 | ソニー株式会社 | 描画装置および方法 |
US6052127A (en) | 1996-12-30 | 2000-04-18 | Cirrus Logic, Inc. | Circuit for determining non-homogenous second order perspective texture mapping coordinates using linear interpolation |
US5986663A (en) | 1997-10-10 | 1999-11-16 | Cirrus Logic, Inc. | Auto level of detail-based MIP mapping in a graphics processor |
US5844576A (en) | 1996-12-30 | 1998-12-01 | Cirrus Logic, Inc. | Tiled linear host texture storage |
US5852451A (en) | 1997-01-09 | 1998-12-22 | S3 Incorporation | Pixel reordering for improved texture mapping |
US5940086A (en) | 1997-01-10 | 1999-08-17 | Hewlett Packard Company | System and method for dynamically allocating data among geometry accelerators in a computer graphics system |
US6097435A (en) | 1997-01-31 | 2000-08-01 | Hughes Electronics Corporation | Video system with selectable bit rate reduction |
US5990903A (en) | 1997-02-03 | 1999-11-23 | Micron Technologies, Inc. | Method and apparatus for performing chroma key, transparency and fog operations |
DE19708679A1 (de) | 1997-02-21 | 1998-08-27 | Gmd Gmbh | Bilddarstellungsverfahren und Vorrichtung zur Durchführung des Verfahrens |
US5870098A (en) | 1997-02-26 | 1999-02-09 | Evans & Sutherland Computer Corporation | Method for rendering shadows on a graphical display |
US5880736A (en) | 1997-02-28 | 1999-03-09 | Silicon Graphics, Inc. | Method system and computer program product for shading |
US6061462A (en) | 1997-03-07 | 2000-05-09 | Phoenix Licensing, Inc. | Digital cartoon and animation process |
US6037948A (en) | 1997-03-07 | 2000-03-14 | Silicon Graphics, Inc. | Method, system, and computer program product for updating texture with overscan |
US6043804A (en) | 1997-03-21 | 2000-03-28 | Alliance Semiconductor Corp. | Color pixel format conversion incorporating color look-up table and post look-up arithmetic operation |
US6088042A (en) | 1997-03-31 | 2000-07-11 | Katrix, Inc. | Interactive motion data animation system |
US5949421A (en) | 1997-03-31 | 1999-09-07 | Cirrus Logic, Inc. | Method and system for efficient register sorting for three dimensional graphics |
US6057859A (en) | 1997-03-31 | 2000-05-02 | Katrix, Inc. | Limb coordination system for interactive computer animation of articulated characters with blended motion data |
JP2845857B2 (ja) | 1997-04-01 | 1999-01-13 | コナミ株式会社 | 画像の半透明表示装置,半透明表示方法,及びコンピュータプログラムを記録した機械読取り可能な記録媒体 |
WO1998045815A1 (en) | 1997-04-04 | 1998-10-15 | Intergraph Corporation | Apparatus and method for applying effects to graphical images |
US5920876A (en) | 1997-04-23 | 1999-07-06 | Sun Microsystems, Inc. | Performing exact garbage collection using bitmaps that identify pointer values within objects |
JP3294149B2 (ja) | 1997-04-23 | 2002-06-24 | シャープ株式会社 | 立体テクスチャマッピング処理装置及びそれを用いた3次元画像生成装置 |
US5956042A (en) | 1997-04-30 | 1999-09-21 | Hewlett-Packard Co. | Graphics accelerator with improved lighting processor |
US6057852A (en) | 1997-04-30 | 2000-05-02 | Hewlett-Packard Company | Graphics accelerator with constant color identifier |
US6005583A (en) | 1997-04-30 | 1999-12-21 | Hewlett-Packard Company | Precise gradient calculation system and method for a texture mapping system of a computer graphics system |
US6028608A (en) | 1997-05-09 | 2000-02-22 | Jenkins; Barry | System and method of perception-based image generation and encoding |
US5999198A (en) | 1997-05-09 | 1999-12-07 | Compaq Computer Corporation | Graphics address remapping table entry feature flags for customizing the operation of memory pages associated with an accelerated graphics port device |
US5861893A (en) | 1997-05-27 | 1999-01-19 | Intel Corporation | System and method for graphics data concurrency and coherency |
US5969726A (en) | 1997-05-30 | 1999-10-19 | Hewlett-Packard Co. | Caching and coherency control of multiple geometry accelerators in a computer graphics system |
US6437781B1 (en) | 1997-05-30 | 2002-08-20 | Hewlett-Packard Company | Computer graphics system having per pixel fog blending |
US5909225A (en) | 1997-05-30 | 1999-06-01 | Hewlett-Packard Co. | Frame buffer cache for graphics applications |
US5920326A (en) | 1997-05-30 | 1999-07-06 | Hewlett Packard Company | Caching and coherency control of multiple geometry accelerators in a computer graphics system |
CA2239279C (en) | 1997-06-02 | 2002-04-23 | Nippon Telegraph And Telephone Corporation | Image generating apparatus and method |
US5870109A (en) | 1997-06-06 | 1999-02-09 | Digital Equipment Corporation | Graphic system with read/write overlap detector |
US6092158A (en) * | 1997-06-13 | 2000-07-18 | Intel Corporation | Method and apparatus for arbitrating between command streams |
US5945997A (en) | 1997-06-26 | 1999-08-31 | S3 Incorporated | Block- and band-oriented traversal in three-dimensional triangle rendering |
US6052133A (en) | 1997-06-27 | 2000-04-18 | S3 Incorporated | Multi-function controller and method for a computer graphics display system |
US5936641A (en) | 1997-06-27 | 1999-08-10 | Object Technology Licensing Corp | Graphics hardware acceleration method, computer program, and system |
US6043821A (en) | 1997-06-30 | 2000-03-28 | Ati Technologies, Inc. | Method and apparatus for rendering pixel information from blended texture maps |
US6118462A (en) | 1997-07-01 | 2000-09-12 | Memtrax Llc | Computer system controller having internal memory and external memory control |
US6057862A (en) | 1997-07-01 | 2000-05-02 | Memtrax Llc | Computer system having a common display memory and main memory |
US6038031A (en) | 1997-07-28 | 2000-03-14 | 3Dlabs, Ltd | 3D graphics object copying with reduced edge artifacts |
US6011562A (en) | 1997-08-01 | 2000-01-04 | Avid Technology Inc. | Method and system employing an NLE to create and modify 3D animations by mixing and compositing animation data |
US6037949A (en) | 1997-08-04 | 2000-03-14 | Pixar Animation Studios | Texture mapping and other uses of scalar fields on subdivision surfaces in computer graphics and animation |
US6046747A (en) | 1997-08-04 | 2000-04-04 | Hewlett-Packard Company | Graphics application programming interface avoiding repetitive transfer of texture mapping data |
US6002410A (en) | 1997-08-25 | 1999-12-14 | Chromatic Research, Inc. | Reconfigurable texture cache |
US5903283A (en) | 1997-08-27 | 1999-05-11 | Chips & Technologies, Inc. | Video memory controller with dynamic bus arbitration |
US6016151A (en) | 1997-09-12 | 2000-01-18 | Neomagic Corp. | 3D triangle rendering by texture hardware and color software using simultaneous triangle-walking and interpolation for parallel operation |
US6054993A (en) | 1997-09-17 | 2000-04-25 | Cirrus Logic, Inc. | Chroma-keyed specular texture mapping in a graphics processor |
US5956043A (en) | 1997-09-18 | 1999-09-21 | Novell, Inc. | Textured tile rotation system and method |
US5936683A (en) | 1997-09-29 | 1999-08-10 | Neo Magic Corp. | YUV-to-RGB conversion without multiplies using look-up tables and pre-clipping |
US5986677A (en) | 1997-09-30 | 1999-11-16 | Compaq Computer Corporation | Accelerated graphics port read transaction merging |
US5949423A (en) | 1997-09-30 | 1999-09-07 | Hewlett Packard Company | Z buffer with degree of visibility test |
US6052129A (en) | 1997-10-01 | 2000-04-18 | International Business Machines Corporation | Method and apparatus for deferred clipping of polygons |
US5995121A (en) | 1997-10-16 | 1999-11-30 | Hewlett-Packard Company | Multiple graphics pipeline integration with a windowing system through the use of a high speed interconnect to the frame buffer |
JP4068219B2 (ja) | 1997-10-21 | 2008-03-26 | 株式会社半導体エネルギー研究所 | 半導体装置の作製方法 |
US6199533B1 (en) | 1999-02-01 | 2001-03-13 | Cummins Engine Company, Inc. | Pilot valve controlled three-way fuel injection control valve assembly |
US6035360A (en) | 1997-10-29 | 2000-03-07 | International Business Machines Corporation | Multi-port SRAM access control using time division multiplexed arbitration |
US5958020A (en) | 1997-10-29 | 1999-09-28 | Vlsi Technology, Inc. | Real time event determination in a universal serial bus system |
US6057863A (en) | 1997-10-31 | 2000-05-02 | Compaq Computer Corporation | Dual purpose apparatus, method and system for accelerated graphics port and fibre channel arbitrated loop interfaces |
US6021417A (en) | 1997-10-31 | 2000-02-01 | Foto Fantasy, Inc. | Method of stimulating the creation of an artist's drawing or painting, and device for accomplishing same |
US6151602A (en) | 1997-11-07 | 2000-11-21 | Inprise Corporation | Database system with methods providing a platform-independent self-describing data packet for transmitting information |
US6075546A (en) | 1997-11-10 | 2000-06-13 | Silicon Grahphics, Inc. | Packetized command interface to graphics processor |
US6088701A (en) | 1997-11-14 | 2000-07-11 | 3Dfx Interactive, Incorporated | Command data transport to a graphics processing device from a CPU performing write reordering operations |
US6002407A (en) | 1997-12-16 | 1999-12-14 | Oak Technology, Inc. | Cache memory and method for use in generating computer graphics texture |
US6091431A (en) | 1997-12-18 | 2000-07-18 | Intel Corporation | Method and apparatus for improving processor to graphics device local memory performance |
US6070204A (en) | 1998-01-06 | 2000-05-30 | Intel Corporation | Method and apparatus for using universal serial bus keyboard to control DOS operations |
US6052125A (en) | 1998-01-07 | 2000-04-18 | Evans & Sutherland Computer Corporation | Method for reducing the rendering load for high depth complexity scenes on a computer graphics display |
US6226713B1 (en) | 1998-01-21 | 2001-05-01 | Sun Microsystems, Inc. | Apparatus and method for queueing structures in a multi-level non-blocking cache subsystem |
US6105094A (en) | 1998-01-26 | 2000-08-15 | Adaptec, Inc. | Method and apparatus for allocating exclusive shared resource requests in a computer system |
US6014144A (en) | 1998-02-03 | 2000-01-11 | Sun Microsystems, Inc. | Rapid computation of local eye vectors in a fixed point lighting unit |
US6108743A (en) | 1998-02-10 | 2000-08-22 | Intel Corporation | Technique for performing DMA including arbitration between a chained low priority DMA and high priority DMA occurring between two links in the chained low priority |
US6496187B1 (en) | 1998-02-17 | 2002-12-17 | Sun Microsystems, Inc. | Graphics system configured to perform parallel sample to pixel calculation |
US6078338A (en) | 1998-03-11 | 2000-06-20 | Compaq Computer Corporation | Accelerated graphics port programmable memory access arbiter |
US6064392A (en) | 1998-03-16 | 2000-05-16 | Oak Technology, Inc. | Method and apparatus for generating non-homogenous fog |
US6104415A (en) | 1998-03-26 | 2000-08-15 | Silicon Graphics, Inc. | Method for accelerating minified textured cache access |
US6232981B1 (en) | 1998-03-26 | 2001-05-15 | Silicon Graphics, Inc. | Method for improving texture locality for pixel quads by diagonal level-of-detail calculation |
US6023738A (en) | 1998-03-30 | 2000-02-08 | Nvidia Corporation | Method and apparatus for accelerating the transfer of graphical images |
US6049338A (en) | 1998-04-01 | 2000-04-11 | Hewlett-Packard Company | Spatial filter for surface texture navigation |
US6226012B1 (en) | 1998-04-02 | 2001-05-01 | Nvidia Corporation | Method and apparatus for accelerating the rendering of graphical images |
US6144387A (en) | 1998-04-03 | 2000-11-07 | Liu; Mei-Chi | Guard region and hither plane vertex modification for graphics rendering |
US6191794B1 (en) | 1998-04-08 | 2001-02-20 | Nvidia Corporation | Method and apparatus for scaling texture maps for graphical images |
US6011565A (en) | 1998-04-09 | 2000-01-04 | S3 Incorporated | Non-stalled requesting texture cache |
US6144365A (en) | 1998-04-15 | 2000-11-07 | S3 Incorporated | System and method for performing blending using an over sampling buffer |
US6092124A (en) | 1998-04-17 | 2000-07-18 | Nvidia Corporation | Method and apparatus for accelerating the rendering of images |
US6128026A (en) | 1998-05-04 | 2000-10-03 | S3 Incorporated | Double buffered graphics and video accelerator having a write blocking memory interface and method of doing the same |
US6252610B1 (en) | 1998-05-29 | 2001-06-26 | Silicon Graphics, Inc. | Method and apparatus for efficiently switching state in a graphics pipeline |
US6492991B1 (en) | 1998-08-28 | 2002-12-10 | Ati International Srl | Method and apparatus for controlling compressed Z information in a video graphics system |
US6072496A (en) | 1998-06-08 | 2000-06-06 | Microsoft Corporation | Method and system for capturing and representing 3D geometry, color and shading of facial expressions and other animated objects |
US6215496B1 (en) | 1998-07-23 | 2001-04-10 | Microsoft Corporation | Sprites with depth |
US6215497B1 (en) | 1998-08-12 | 2001-04-10 | Monolithic System Technology, Inc. | Method and apparatus for maximizing the random access bandwidth of a multi-bank DRAM in a computer graphics system |
US6236413B1 (en) | 1998-08-14 | 2001-05-22 | Silicon Graphics, Inc. | Method and system for a RISC graphics pipeline optimized for high clock speeds by using recirculation |
US6268861B1 (en) | 1998-08-25 | 2001-07-31 | Silicon Graphics, Incorporated | Volumetric three-dimensional fog rendering technique |
JP4399910B2 (ja) | 1998-09-10 | 2010-01-20 | 株式会社セガ | ブレンディング処理を含む画像処理装置及びその方法 |
US6177944B1 (en) | 1998-09-18 | 2001-01-23 | International Business Machines Corporation | Two phase rendering for computer graphics |
US6202101B1 (en) * | 1998-09-30 | 2001-03-13 | Compaq Computer Corporation | System and method for concurrently requesting input/output and memory address space while maintaining order of data sent and returned therefrom |
JP2000132704A (ja) | 1998-10-26 | 2000-05-12 | Sony Corp | 画像情報処理装置及び方法 |
JP3668019B2 (ja) | 1998-10-27 | 2005-07-06 | 株式会社ソニー・コンピュータエンタテインメント | 記録媒体、画像処理装置および画像処理方法 |
JP2000156875A (ja) | 1998-11-19 | 2000-06-06 | Sony Corp | 映像制作装置および映像表示システムおよびグラフィックス制作方法 |
US6329997B1 (en) | 1998-12-04 | 2001-12-11 | Silicon Motion, Inc. | 3-D graphics chip with embedded DRAM buffers |
JP4240343B2 (ja) | 1998-12-19 | 2009-03-18 | 株式会社セガ | 画像生成装置および画像生成方法 |
US6275235B1 (en) | 1998-12-21 | 2001-08-14 | Silicon Graphics, Inc. | High precision texture wrapping method and device |
US6417858B1 (en) | 1998-12-23 | 2002-07-09 | Microsoft Corporation | Processor for geometry transformations and lighting calculations |
JP4395902B2 (ja) | 1999-01-19 | 2010-01-13 | 株式会社セガ | 画像処理方法及び、これを利用した画像処理装置 |
JP2000215325A (ja) | 1999-01-21 | 2000-08-04 | Sega Enterp Ltd | 画像処理方法および画像処理装置並びにプログラムを記録した記録媒体 |
US6353438B1 (en) | 1999-02-03 | 2002-03-05 | Artx | Cache organization—direct mapped cache |
US6181352B1 (en) | 1999-03-22 | 2001-01-30 | Nvidia Corporation | Graphics pipeline selectively providing multiple pixels or multiple textures |
US6466223B1 (en) | 1999-03-24 | 2002-10-15 | Microsoft Corporation | Method and apparatus for texture memory management |
US6173367B1 (en) | 1999-05-19 | 2001-01-09 | Ati Technologies, Inc. | Method and apparatus for accessing graphics cache memory |
US6426747B1 (en) | 1999-06-04 | 2002-07-30 | Microsoft Corporation | Optimization of mesh locality for transparent vertex caching |
US6459429B1 (en) | 1999-06-14 | 2002-10-01 | Sun Microsystems, Inc. | Segmenting compressed graphics data for parallel decompression and rendering |
US6501479B1 (en) | 1999-06-21 | 2002-12-31 | Ati International Srl | Multi-format vertex data processing apparatus and method |
US6408362B1 (en) | 1999-06-24 | 2002-06-18 | International Business Machines Corporation | Data processing system, cache, and method that select a castout victim in response to the latencies of memory copies of cached data |
US6807311B1 (en) | 1999-07-08 | 2004-10-19 | Ati International Srl | Method and apparatus for compressing and storing image data |
US6339428B1 (en) | 1999-07-16 | 2002-01-15 | Ati International Srl | Method and apparatus for compressed texture caching in a video graphics system |
US6285779B1 (en) | 1999-08-02 | 2001-09-04 | Trident Microsystems | Floating-point complementary depth buffer |
US6476822B1 (en) | 1999-08-30 | 2002-11-05 | Ati International Srl | Method and apparatus for displaying images |
US6330647B1 (en) * | 1999-08-31 | 2001-12-11 | Micron Technology, Inc. | Memory bandwidth allocation based on access count priority scheme |
US6476811B1 (en) | 1999-09-01 | 2002-11-05 | Ati International, Srl | Method and apparatus for compressing parameter values for pixels in a display frame |
US6476808B1 (en) | 1999-10-14 | 2002-11-05 | S3 Graphics Co., Ltd. | Token-based buffer system and method for a geometry pipeline in three-dimensional graphics |
US6452600B1 (en) | 1999-10-28 | 2002-09-17 | Nintendo Co., Ltd. | Graphics system interface |
US6717577B1 (en) | 1999-10-28 | 2004-04-06 | Nintendo Co., Ltd. | Vertex cache for 3D computer graphics |
US6618048B1 (en) | 1999-10-28 | 2003-09-09 | Nintendo Co., Ltd. | 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components |
US6198488B1 (en) | 1999-12-06 | 2001-03-06 | Nvidia | Transform, lighting and rasterization system embodied on a single semiconductor platform |
US6469707B1 (en) | 2000-01-19 | 2002-10-22 | Nvidia Corporation | Method for efficiently rendering color information for a pixel in a computer system |
US7119813B1 (en) | 2000-06-02 | 2006-10-10 | Nintendo Co., Ltd. | Variable bit field encoding |
US6580430B1 (en) | 2000-08-23 | 2003-06-17 | Nintendo Co., Ltd. | Method and apparatus for providing improved fog effects in a graphics system |
US6664962B1 (en) | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Shadow mapping in a low cost graphics system |
US6636214B1 (en) | 2000-08-23 | 2003-10-21 | Nintendo Co., Ltd. | Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode |
US6700586B1 (en) | 2000-08-23 | 2004-03-02 | Nintendo Co., Ltd. | Low cost graphics with stitching processing hardware support for skeletal animation |
US6867781B1 (en) | 2000-08-23 | 2005-03-15 | Nintendo Co., Ltd. | Graphics pipeline token synchronization |
US6980218B1 (en) | 2000-08-23 | 2005-12-27 | Nintendo Co., Ltd. | Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system |
US7184059B1 (en) | 2000-08-23 | 2007-02-27 | Nintendo Co., Ltd. | Graphics system with copy out conversions between embedded frame buffer and main memory |
US6606689B1 (en) | 2000-08-23 | 2003-08-12 | Nintendo Co., Ltd. | Method and apparatus for pre-caching data in audio memory |
US7061502B1 (en) | 2000-08-23 | 2006-06-13 | Nintendo Co., Ltd. | Method and apparatus for providing logical combination of N alpha operations within a graphics system |
US6664958B1 (en) | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Z-texturing |
US6999100B1 (en) | 2000-08-23 | 2006-02-14 | Nintendo Co., Ltd. | Method and apparatus for anti-aliasing in a graphics system |
US6609977B1 (en) | 2000-08-23 | 2003-08-26 | Nintendo Co., Ltd. | External interfaces for a 3D graphics system |
US6639595B1 (en) | 2000-08-23 | 2003-10-28 | Nintendo Co., Ltd. | Achromatic lighting in a graphics system and method |
US6707458B1 (en) | 2000-08-23 | 2004-03-16 | Nintendo Co., Ltd. | Method and apparatus for texture tiling in a graphics system |
US6937245B1 (en) | 2000-08-23 | 2005-08-30 | Nintendo Co., Ltd. | Graphics system with embedded frame buffer having reconfigurable pixel formats |
US6811489B1 (en) | 2000-08-23 | 2004-11-02 | Nintendo Co., Ltd. | Controller interface for a graphics system |
US7002591B1 (en) | 2000-08-23 | 2006-02-21 | Nintendo Co., Ltd. | Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system |
US6825851B1 (en) | 2000-08-23 | 2004-11-30 | Nintendo Co., Ltd. | Method and apparatus for environment-mapped bump-mapping in a graphics system |
US7196710B1 (en) | 2000-08-23 | 2007-03-27 | Nintendo Co., Ltd. | Method and apparatus for buffering graphics data in a graphics system |
US7034828B1 (en) | 2000-08-23 | 2006-04-25 | Nintendo Co., Ltd. | Recirculating shade tree blender for a graphics system |
US6564304B1 (en) * | 2000-09-01 | 2003-05-13 | Ati Technologies Inc. | Memory processing system and method for accessing memory including reordering memory requests to reduce mode switching |
-
2000
- 2000-11-28 US US09/726,220 patent/US7538772B1/en not_active Expired - Lifetime
-
2001
- 2001-04-27 JP JP2001133526A patent/JP4925385B2/ja not_active Expired - Fee Related
-
2009
- 2009-05-22 US US12/470,712 patent/US8098255B2/en not_active Expired - Fee Related
-
2011
- 2011-12-21 JP JP2011280536A patent/JP5149985B2/ja not_active Expired - Fee Related
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6043764A (ja) * | 1983-08-19 | 1985-03-08 | Nec Corp | 情報処理システム |
JPH05165716A (ja) * | 1991-03-19 | 1993-07-02 | Hitachi Ltd | ベクトルデータの要素を並列処理するベクトルプロセッサ |
JPH05233421A (ja) * | 1991-05-17 | 1993-09-10 | Sun Microsyst Inc | コンピュータ装置およびロード命令と記憶命令を発生し、実行するために記憶装置へ供給する方法 |
JPH05120239A (ja) * | 1991-10-30 | 1993-05-18 | Seiko Epson Corp | 並列処理回路 |
JPH06103148A (ja) * | 1992-05-26 | 1994-04-15 | Nec Corp | ライトバッファ |
JPH05334244A (ja) * | 1992-06-01 | 1993-12-17 | Yokogawa Electric Corp | バス・インタフェース・ユニット |
JPH11191075A (ja) * | 1997-08-28 | 1999-07-13 | Oki Electric Ind Co Ltd | メモリアーキテクチャーのための優先符号化及び復号化 |
JPH11167557A (ja) * | 1997-12-02 | 1999-06-22 | Hitachi Ltd | 共有メモリアクセス順序保証方法及びマルチプロセッサシステム |
JP2002532779A (ja) * | 1998-12-04 | 2002-10-02 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | キューに基づくメモリコントローラ |
JP2000181780A (ja) * | 1998-12-16 | 2000-06-30 | Hitachi Ltd | ストアバッファ装置 |
JP2000194683A (ja) * | 1998-12-28 | 2000-07-14 | Nec Kofu Ltd | 共有メモリの調停回路およびその調停方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008509464A (ja) * | 2004-08-05 | 2008-03-27 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | メッセージハンドラ、および通信モジュールが有するメッセージメモリ中のデータへのアクセスを制御する方法 |
JP2008021228A (ja) * | 2006-07-14 | 2008-01-31 | Renesas Technology Corp | データ処理装置 |
WO2010032433A1 (ja) * | 2008-09-18 | 2010-03-25 | パナソニック株式会社 | バッファメモリ装置、メモリシステム及びデータ読出方法 |
WO2010035426A1 (ja) * | 2008-09-25 | 2010-04-01 | パナソニック株式会社 | バッファメモリ装置、メモリシステム及びデータ転送方法 |
JP5536658B2 (ja) * | 2008-09-25 | 2014-07-02 | パナソニック株式会社 | バッファメモリ装置、メモリシステム及びデータ転送方法 |
JP2013093026A (ja) * | 2011-10-26 | 2013-05-16 | Imagination Technologies Ltd | デジタル信号処理のデータ転送 |
WO2014049758A1 (ja) * | 2012-09-26 | 2014-04-03 | 富士通株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
JPWO2014049758A1 (ja) * | 2012-09-26 | 2016-08-22 | 富士通株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
US9699210B2 (en) | 2012-09-26 | 2017-07-04 | Fujitsu Limited | Data processing device that executes virus countermeasure processing, data processing method, and recording medium storing a data processing program |
CN112037115A (zh) * | 2013-08-08 | 2020-12-04 | 大卫·莫洛尼 | 计算成像管线 |
Also Published As
Publication number | Publication date |
---|---|
JP5149985B2 (ja) | 2013-02-20 |
US20090225094A1 (en) | 2009-09-10 |
JP4925385B2 (ja) | 2012-04-25 |
US7538772B1 (en) | 2009-05-26 |
US8098255B2 (en) | 2012-01-17 |
JP2012089158A (ja) | 2012-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4925385B2 (ja) | 機能拡張型メモリコントローラを備えるグラフィックス処理システム | |
CN109564704B (zh) | 虚拟现实/增强现实设备和方法 | |
US7701461B2 (en) | Method and apparatus for buffering graphics data in a graphics system | |
KR100617998B1 (ko) | 시간 할당기를 갖는 그래픽 렌더링 엔진을 포함하는 장치,방법 및 시스템 | |
US7457890B2 (en) | Integrated multimedia system | |
US7548996B2 (en) | Data streamer | |
JP3524497B2 (ja) | 3次元グラフィックプロセッサ | |
US6862027B2 (en) | System and method for parallel execution of data generation tasks | |
US5664114A (en) | Asynchronous FIFO queuing system operating with minimal queue status | |
US9245496B2 (en) | Multi-mode memory access techniques for performing graphics processing unit-based memory transfer operations | |
JP3681026B2 (ja) | 情報処理装置および方法 | |
JP2002063570A (ja) | グラフィクスパイプラインおよびそれの同期化方法 | |
US11810223B2 (en) | Controlling multi-GPU execution of kernels by kernel portion and resource region based dependencies | |
AU785318B2 (en) | Method and apparatus for pre-caching data in audio memory | |
US7369665B1 (en) | Method and apparatus for mixing sound signals | |
JP3468985B2 (ja) | グラフィック描画装置、グラフィック描画方法 | |
JP5020443B2 (ja) | 共有リソースへのアクセス方法及び装置 | |
JP4658397B2 (ja) | オーディオメモリ内のデータを予めキャッシュする方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110426 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110622 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110711 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110902 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110906 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110926 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111221 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120112 |
|
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: 20120203 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120206 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150217 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4925385 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |