JPH08211859A - フレーム・バッファ・メモリ装置制御装置 - Google Patents
フレーム・バッファ・メモリ装置制御装置Info
- Publication number
- JPH08211859A JPH08211859A JP7200249A JP20024995A JPH08211859A JP H08211859 A JPH08211859 A JP H08211859A JP 7200249 A JP7200249 A JP 7200249A JP 20024995 A JP20024995 A JP 20024995A JP H08211859 A JPH08211859 A JP H08211859A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- cache
- memory device
- frame buffer
- dram
- 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
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/121—Frame memory handling using a cache memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/123—Frame memory handling using interleaving
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Image Input (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Image Generation (AREA)
- Memory System (AREA)
- Controls And Circuits For Display Device (AREA)
- Dram (AREA)
Abstract
る。 【構成】 フレーム・バッファ・メモリ装置に対するオ
ペレーションをスケジューリングして前記メモリ装置へ
ディスパッチするフレーム・バッファ・メモリ装置制御
装置を有する。それは、キャッシュ事前取出しオペレー
ションによって生じるタイミング・オーバヘッドを低減
させるキャッシュ制御オペレーションと、フレーム・バ
ッファ・メモリ装置中のダーティ・キャッシュ・ライン
を書き直し、キャッシュ・ラインをクリアするオペレー
ションをスケジューリングしてディスパッチする。
Description
ィック・システムの分野に関する。詳細には、本発明
は、加速グラフィックス・レンダリング・オペレーショ
ン用のwrite mostlyアーキテクチャを提供
するフレーム・バッファ・メモリ装置用のインタフェー
ス制御装置に関する。
・システムは通常、ビデオ・ランダム・アクセス・メモ
リ(VRAM)チップから成るフレーム・バッファを使
用する。VRAMチップは、表示装置上で表示すべきイ
メージを定義する1組のピクセル・データを記憶する。
通常、そのようなシステム中のレンダリング制御装置
は、イメージをレンダリングし、ピクセル・データをV
RAMチップに書き込む。そのようなシステムでは、ラ
ンダム・アクセス・メモリ・ディジタル・アナログ変換
装置(RAMDAC)は通常、VRAMチップのピクセ
ル・データにアクセスし、カラー・ルックアップ・テー
ブル機能およびディジタル・アナログ変換機能をピクセ
ル・データに対して実行する。
ダム・アクセス・メモリ(DRAM)をランダム・アク
セス・ポートおよび直列アクセス・ポートと共に含む。
通常、RAMDACは、直列アクセス・ポートを介して
VRAMチップのDRAMアレイにアクセスし、レンダ
リング制御装置は、DRAMページ・モード・アクセス
に従ってランダム・アクセス・ポートを介してDRAM
アレイにアクセスする。残念なことに、そのような従来
型のVRAMチップのDRAMページ・モード機構で
は、レンダリング制御装置が、ラスタ走査の2行ないし
3行よりも多くの行を横切りながら線を描画する場合、
ピクセル・アクセス速度が大幅に減少する。さらに、一
般にレンダリング・オペレーション時に使用されるリー
ド・モディファイ・ライト・オペレーションは、そのよ
うな従来型のVRAMチップに対する書込みオペレーシ
ョンよりもはるかに低速である。
は、フレーム・バッファ・ランダム・アクセス・メモリ
(FBRAM)チップから成るフレーム・バッファを使
用する。そのようなFBRAMチップは、表示装置上で
表示すべきイメージを定義する1組のピクセル・データ
を記憶するDRAMコア領域を含む。通常、そのような
グラフィック・システム中のレンダリング制御装置は、
イメージをレンダリングし、対応するピクセル・データ
をFBRAMチップに書き込む。
の二次元領域キャッシュを用意することによって、DR
AMコアへのスループットを増大させる。たとえば、そ
のようなFBRAMチップは、DRAMコアの事前に選
択された領域を反映するレベル1(L1)ピクセル・キ
ャッシュを用意する。そのようなFBRAMチップは、
FBRAMチップのDRAMコアに密結合されたレベル
2(L2)キャッシュも用意する。そのようなFBRA
Mチップは、通常のリード・モディファイ・ライト・フ
レーム・バッファ・アクセス・サイクルをFBRAMデ
バイスの入力ピンでwrite mostlyトランザ
クションに変換することによって、改良されたレンダリ
ングを行う。
ップを有するそのようなフレーム・バッファへのレンダ
リング・スループットは、結果的にL1キャッシュまた
はL2キャッシュ、あるいはその両方に対するキャッシ
ュ・ミスとなるピクセル・アクセスでは低減する。L1
キャッシュまたはL2キャッシュに存在しないDRAM
コアの領域をターゲットとするそのようなシステムでの
ピクセル・アクセスでは、欠落キャッシュ・ブロックが
DRAMコアから取り出される間、ピクセル・オペレー
ションを停止させる必要がある。欠落キャッシュ・ブロ
ックを取り出すためのFBRAMチップ中のそのような
オペレーションは、FBRAMチップへのレンダリング
・パイプライン入力を停止させ、全体的なレンダリング
速度を低下させる。
ペレーションがディスパッチされたとき、そのピクセル
・アクセス・オペレーションで必要なピクセル・データ
がフレーム・バッファ・メモリ装置のレベル1キャッシ
ュに存在するように、フレーム・バッファ・メモリ装置
に対するオペレーションをスケジューリングし、かつそ
のオペレーションを前記メモリ装置にディスパッチす
る、フレーム・バッファ・メモリ装置制御装置を開示す
る。フレーム・バッファ・メモリ装置制御装置は、ダー
ティ・キャッシュ・ラインを書き直すオペレーション
と、フレーム・バッファ・メモリ装置中のキャッシュ・
ラインをクリアするオペレーションによって生じるタイ
ミング・オーバヘッドを低減するキャッシュ制御オペレ
ーションを作成し、スケジューリングし、ディスパッチ
する。フレーム・バッファ・メモリ装置制御装置は、フ
レーム・バッファ・メモリ装置のビデオ出力ポートから
のビデオ・リフレッシュ・オペレーションによって生じ
るタイミング・オーバヘッドを低減させる制御オペレー
ションも作成し、スケジューリングし、ディスパッチす
る。
は、フレーム・バッファ・メモリ装置に記憶されている
ピクセル・データをターゲットとするピクセル・アクセ
ス・トランザクションを受け取るように結合される。一
実施例では、フレーム・バッファ・メモリ装置制御装置
は、アロケータ回路と、スケジューラ回路と、アービタ
回路とを含む。アロケータ回路は、前のピクセル・アク
セス・トランザクションに基づいてフレーム・バッファ
・メモリ装置のキャッシュ状態を判定し、必要なキャッ
シュ制御オペレーションを判定する。スケジューラ回路
は、ピクセル・アクセス・オペレーションおよびキャッ
シュ制御オペレーションをバッファし、適当なキャッシ
ュ制御オペレーションを対応するピクセル・アクセス・
トランザクションよりも前へプッシュする。アービタ回
路は、キャッシュ制御オペレーションとビデオ要求オペ
レーションの調停をはかり、フレーム・バッファ・メモ
リ装置の現状態に応じてキャッシュ制御オペレーション
をディスパッチする。アービタ回路は、フレーム・バッ
ファ・メモリ装置の現状態に応じてピクセル・アクセス
・トランザクションをディスパッチする。
示す。グラフィック・サブシステム86は、1組のFB
RAMチップ71ないし82と、レンダリング・プロセ
ッサ70と、フレーム・バッファ・メモリ装置制御装置
83と、ビデオ出力回路84とを備える。
部ALUと、レンダリング・プロセッサ70からFBR
AMへの「write−mostly」インタフェース
を提供するパイプライニング回路とを含む。FBRAM
チップ71ないし82のwrite mostlyアー
キテクチャは、レンダリング・プロセッサ70によるレ
ンダリング・オペレーション中の平均メモリ・サイクル
時間を最小限に抑える。
いし82は、320x1024x32ビットの深さのフ
レーム・バッファをサポートする10メガビットDRA
Mアレイを含む。各FBRAMチップ71ないし82中
のDRAMアレイは、インタリーブされた4つの独立D
RAMバンクを備える。
クセルALUと静的ランダム・アクセス・メモリ(SR
AM)ピクセル・バッファも含む。各FBRAMチップ
71ないし82中のSRAMピクセル・バッファは、レ
ンダリング・プロセッサ70がアクセスすべきピクセル
・キャッシュとして機能する。
つのDRAMバンクとSRAMピクセル・バッファの間
の高帯域幅通信を可能にするグローバル・バスを含む。
各FBRAMチップ71ないし82は、表示装置のため
のCRTリフレッシュ・オペレーションを実行する一対
のビデオ・バッファも含む。
クセルALUは、1組の4つのラスタ演算装置を含む。
各ラスタ演算装置は、対応するSRAMピクセル・バッ
ファに送るピクセル・データの各個別のバイトに対する
選択可能なラスタ演算を実行する。各FBRAMチップ
71ないし82中のピクセルALUは、1組の4つのピ
クセル・ブレンド装置を含む。各ピクセル・ブレンド装
置は、ピクセルALUに関する一連のパイプライン処理
段に従って、1バイトの古い内部ピクセル値と、レンダ
リング・プロセッサ70から受け取った1バイトの新し
いピクセル値および関連情報を組み合わせる。
RAMアレイ、SRAMピクセル・バッファ、ピクセル
ALU、および内部の1組のビデオ・バッファを使用す
る並行演算を可能にする回路を含む。各FBRAMチッ
プ71ないし82は、レンダリング・プロセッサ70が
ピクセルALUを介してSRAMピクセル・バッファに
アクセスする間と、ビデオ出力回路84がビデオ・バッ
ファからビデオ・データを読み取る間に、DRAMアレ
イとSRAMピクセル・バッファの間のピクセル・デー
タ転送を可能にする回路を含む。
オ・データをビデオ・バス134を介してビデオ出力回
路84へ送る。ビデオ出力回路84は、FBRAMチッ
プ71ないし82からのビデオ・データの転送の同期を
とる対応する1組のビデオ・クロックをビデオ・バス1
34上で生成する。
ル・データをフレーム・バッファ・メモリ装置制御装置
83を通じレンダリング・バス98を介してFBRAM
チップ71ないし82に書き込む。フレーム・バッファ
・メモリ装置制御装置83は、フレーム・バッファ制御
信号およびフレーム・バッファ制御コマンドをFBRA
Mチップ71ないし82に送り、ピクセルALUオペレ
ーション、SRAMピクセル・バッファ・オペレーショ
ンおよびDRAMアレイ・オペレーション、ビデオ・バ
ッファ・オペレーションを含め、FBRAMチップ71
ないし82の内部オペレーションを制御する。
ム・バス102を介してホスト・プロセッサ(図示せ
ず)からグラフィックス・プリミティブを受け取る。レ
ンダリング・プロセッサ70は、受け取ったグラフィッ
クス・プリミティブをレンダリングし、対応する一連の
ピクセル・アクセス・トランザクションをフレーム・バ
ッファ制御バス106を介してフレーム・バッファ・メ
モリ装置制御装置83へ送る。
83は、レンダリング・プロセッサ70からピクセル・
アクセス・トランザクションを受け取り、対応する一連
のピクセル・アクセス・トランザクションをFBRAM
デバイス71ないし82へ発行する。フレーム・バッフ
ァ・メモリ装置制御装置83は、ピクセル・アクセス・
トランザクション用のピクセル・データをレンダリング
・バス98を介してFBRAMチップ71ないし82と
の間で転送する。フレーム・バッファ・メモリ装置制御
装置83は、DRAM操作バス110を介してFBRA
Mチップ71ないし82のDRAMコア・オペレーショ
ンを制御するコマンドを発行する。フレーム・バッファ
・メモリ装置制御装置83は、ピクセル・キャッシュ関
数およびピクセルALU関数をピクセル操作バス112
を介してFBRAMチップ71ないし82へ制御するコ
マンドを発行する。
83は、各FBRAMチップ71ないし82中のL2ピ
クセル・キャッシュと、L1ピクセル・キャッシュ、ビ
デオ・バッファ、またはDRAMコアとの間のオペレー
ションを制御するコマンドをDRAM操作バス110を
介して発行する。フレーム・バッファ・メモリ装置制御
装置83は、各FBRAMチップ71ないし82中のピ
クセルALUとL1ピクセル・キャッシュとの間のオペ
レーションを制御するコマンドをピクセル操作バス11
2を介して発行する。フレーム・バッファ・メモリ装置
制御装置83は、フレーム・バッファ制御バス106を
介して受け取ったピクセル・アドレスおよびピクセル・
データならびに操作コマンドに応じ、ビデオ操作バス1
08を介してビデオ出力回路84によって指定されたビ
デオ・オペレーションに応じ、フレーム・バッファ・メ
モリ装置制御装置によって維持されるFBRAMの現キ
ャッシュ状態に応じて、DRAM操作バス110および
ピクセル操作バス112を介して前記コマンドを発行す
る。
を示す。FBRAMチップ71は、DRAMアレイと、
一対のビデオ・バッファ52および54と、ピクセル・
バッファ56と、ピクセルALU58とを備える。FB
RAMチップ71は基本的に、各FBRAMチップ72
ないし82に類似している。
は、1組の4つのDRAMバンク(DRAMバンクAな
いしD)と、対応するページ・バッファAないしDとを
備える。一実施例では、各DRAMバンクAないしD
は、257ページとして構成された2.5メガビットD
RAMアレイを備える。各ページは320ワードを備
え、各ワードは32ビットを備える。
DRAMバンクAないしDのセンス増幅器を備える。一
実施例では、各ページ・バッファAないしDは、対応す
るDRAMバンクAないしDの320ワード・ページを
バッファする。
オ・バス134を介してビデオ出力回路84へ送るべき
ビデオ・データをバッファする。ビデオ・バッファ52
は、ページ・バッファAおよびCからデータを受け取
る。ビデオ・バッファ54は、ページ・バッファBおよ
びDからデータを受け取る。ビデオ・バッファ52およ
び54中のデータは、ビデオ・バス134を介しマルチ
プレクサ62を通じてビデオ出力回路84へシフトされ
る。
ト静的RAM(SRAM)であり、FBRAMチップ7
1用のレベル1(L1)ピクセル・キャッシュとして機
能する。L1ピクセル・キャッシュに関するアソシエイ
ティビティ・パラメータは、フレーム・バッファ・メモ
リ装置制御装置83によって外部で決定され、フル・ア
ソシエーティブ・マッピングを含む。L1ピクセル・キ
ャッシュは、ライト・バック方式を使用する。L1ピク
セル・キャッシュは、1組のL1キャッシュ・ブロック
を備える。レンダリング・プロセッサ70は、フレーム
・バッファ・メモリ装置制御装置83を介して各L1キ
ャッシュ・ブロックへのデータ書込みを実行する。複数
の書込みが、後でレベル2(L2)ピクセル・キャッシ
ュを介してDRAMバンクAないしDへ送れるるよう
に、各L1キャッシュ・ブロックに累積される。
ポート204およびALU書込みポート202を有す
る。FBRAMチップ71の入出力ピンからのピクセル
入力データ162は、ピクセルALU58用のソース・
データを提供する。ピクセルALU58は、選択された
ピクセル処理機能を実行し、ピクセル・バッファ56の
ALU書込みポートへ書込みポート・データ202を送
る。
ファイ・ライト・オペレーションを必要とする場合、ピ
クセルALU58は、読取りポート204から読取りデ
ータを得て、ソース・データ162を読取りデータ20
4とマージすることによって修正を実行し、次いでピク
セル・バッファ書込みポート202に結果を書き込む。
ピクセル・バッファ56の読取りポートおよび書込みポ
ートは、レンダリング・バス98上で1クロック・パイ
プライン化書込みを行う同時1クロック読取り・書込み
オペレーションをイネーブルして、1クロック・パイプ
ライン化リード・モディファイ・ライト・サイクルを実
行する。
ム・バッファ・メモリ装置制御装置83を通じレンダリ
ング・バス98を介してピクセル・バッファ56の読取
りポートからデータを読み取る。ピクセル・バッファ5
6の読取りポート・データ204は、FBRAMチップ
71の入出力ピンを介してレンダリング・バス98上で
アクセスすることができる。
バス60を介したブロック転送オペレーション用のグロ
ーバル読取り/書込みポートを有する。レンダリング・
プロセッサ70は、ピクセル・バッファ56のALU読
取りポート、ALU書込みポート、およびグローバル読
取り/書込みポートを同時に活動化するオペレーション
をフレーム・バッファ・メモリ装置制御装置83へ発行
することができる。
は、2048ビットSRAMバッファと、対応するダー
ティ・タグ・メモリとを含む。2048ビットSRAM
バッファは、8つの256ビットL1キャッシュ・ブロ
ックとして構成される。各L1キャッシュ・ブロック
は、それぞれ、32ビットを備える、8つのワードをバ
ッファする。各L1キャッシュ・ブロックは、幅2高さ
4の32ビット・ピクセル矩形用のピクセル・データを
バッファする。また、8つのL1キャッシュ・ブロック
は、ダーティ・タグ・メモリ中の8組の32ビット・ダ
ーティ・タグ・ビットに対応する。グローバル読取り/
書込みポートは、256ビット幅であり、ALU読取り
ポートおよびALU書込みポートはそれぞれ32ビット
幅である。
ス98を介してピクセル・バッファ56へのパイプライ
ン化リード・モディファイ・ライト・オペレーションを
イネーブルする。パイプライン化リード・モディファイ
・ライト・オペレーションには、Zバッファ比較演算、
RGBアルファ・ブレンド演算、およびブール演算が含
まれる。ピクセル・バッファ56のグローバル読取り/
書込みポートは、グローバル・バス60を介したページ
・バッファAないしDとピクセル・バッファ56の間の
L1キャッシュ・ブロック全体の並行転送をイネーブル
する。
ル・キャッシュを備える。L2ピクセル・キャッシュ
は、DRAMバンクAないしDに直接マップされる。各
ページ・バッファAないしDは、対応するDRAMバン
クAないしDの1ページにマップされる。一実施例で
は、L2ピクセル・キャッシュ項目は、各ワードごとに
32ビットの320ワードを備える。各L2キャッシュ
項目は、幅20高さ16のピクセル矩形として構成され
る。L2ピクセル・キャッシュはライト・スルー方式を
使用する。グローバル・バス60を介してL2ピクセル
・キャッシュ項目に書き込まれたピクセル・データはた
だちに、対応するDRAMバンクAないしDの対応する
ページに送られる。
キャッシュとL2ピクセル・キャッシュの間の通信をイ
ネーブルする。一実施例では、グローバル・バス60
は、256ビット幅であり、L1ピクセル・キャッシュ
とL2ピクセル・キャッシュの間の2×4ピクセル・ブ
ロックの並行転送をイネーブルする。
ット線を備えるセンス増幅器バスを含む。センス増幅器
バスは、ページ・バッファAないしDをDRAMバンク
AないしDに結合する。一実施例では、各センス増幅器
バスは、DRAMバンクAないしDから対応するL2ピ
クセル・キャッシュへの20×16(32ビット・ピク
セルを含む)ピクセル矩形の並行転送をイネーブルす
る。
83は、DRAM操作バス110およびピクセル操作バ
ス112の制御信号およびアドレス信号を介してDRA
MバンクAないしDへのアクセスをインタリーブする。
フレーム・バッファ・メモリ装置制御装置83は、1つ
のページ・バッファAないしDのセンス増幅器上のプレ
チャージ・オペレーションを他のDRAMバンクAない
しDへのレンダリング・オペレーションとオーバラップ
させる。フレーム・バッファ・メモリ装置制御装置83
は、1つのDRAMバンクAないしDへのアクセス・ペ
ージ・オペレーションを、他のDRAMバンクAないし
Dへのレンダリング・オペレーションとインタリーブす
る。
びに読取りポート204および書込みポート202を介
してピクセル・バッファ56にアクセスするための1組
のピクセル・ポート制御入出力インタフェース・ピンお
よびピクセル・ポートアドレス入出力インタフェース・
ピンをピクセル操作バス112上で提供し、グローバル
・バス60を介してDRAMバンクAないしDにアクセ
スし、あるいはビデオ・バッファ52および54にアク
セスするための独立の1組のDRAMポート制御入出力
インタフェース・ピンおよびDRAMポート・アドレス
入出力インタフェース・ピンをDRAM操作バス110
上で提供する。独立の数組の制御ピンおよびアドレス・
ピンによって、DRAMバンクAないしDに対するオペ
レーションは、ピクセル・バッファ56へのALUオペ
レーションと並行して進行することができる。FBRA
Mチップ71は、ビデオ・バッファ52および24なら
びに直列出力134を使用するビデオ・オペレーション
に関する他の独立の1組のビデオ・ポート制御インタフ
ェース・ピンをビデオ操作バス134上で提供する。
ェースは、ピクセル・ポート・オペレーション用のピク
セル・ポート制御インタフェース118と、ビデオ・オ
ペレーション用のビデオ・ポート制御インタフェース1
14と、FBRAMチップ71中のDRAMオペレーシ
ョン用のDRAM制御インタフェース116とを備え
る。ピクセルALU58およびピクセルバッファ56に
対するピクセル・ポート・アクセス・オペレーション
は、1組のピクセル・ポート・アドレス信号およびピク
セル・ポート制御信号によって制御される。DRAMバ
ンクAないしDに対するオペレーションは、1組のDR
AM制御信号によって制御される。ビデオ・バッファ5
2および54の機能は、1組のビデオ制御信号によって
制御される。この3組の別々の制御信号は、4方向イン
タリーブ済みDRAMバンクと共に、FBRAMチップ
71に対する6つの同時オペレーションをイネーブルす
る。
ドレス信号およびピクセル・ポート制御信号をリストし
たものである。フレーム・バッファ・メモリ装置制御装
置83は、ピクセル操作バス112上のピクセル・ポー
ト・アドレス信号およびピクセル・ポート制御信号を介
してピクセルALU58ならびにピクセル・バッファの
読取りポート204および書込みポート202に対する
ピクセル・ポート・オペレーションを制御する。フレー
ム・バッファ・メモリ装置制御装置83は、PA_EN
A[1..0]信号をアサートして、ピクセルALU5
8ならびにピクセル・バッファ・ポート204および2
02に対するオペレーションを開始する。いずれかのP
A_ENA信号がアサート解除された場合、残りのピク
セル・ポート制御信号は無視される。
83は、PA_WE信号をアサートして書込みオペレー
ションを示す。PA_WE信号は、アサート解除された
場合に読取りオペレーションを示す。フレーム・バッフ
ァ・メモリ装置制御装置83は、PA_OP[2..
0]信号をPA_WE信号と共にドライブしてピクセル
ALU58に対するオペレーションを指定する。フレー
ム・バッファ・メモリ装置制御装置83は、PA_AD
DR[5..0]信号を使用して、ピクセルALU58
オペレーションに関するピクセル・バッファ読取りポー
ト204およびピクセル・ポート書込みポート202を
指定する。
83は、レジスタ書込みおよびダーティ・タグ書込みを
含め、読取りオペレーションおよび書込みオペレーショ
ン時に、信号PA_BE[3..0]信号をドライブす
る。読取りオペレーション時には、PA_WEがアサー
ト解除され、PA_BE信号が、output byt
e enable信号を提供する。書込みオペレーショ
ン時には、PA_WEがアサートされ、PA_BE信号
がwrite byte enable信号を提供す
る。PA_BE[0]信号はPA_DQ[7..0]デ
ータ・バイトを制御し、PA_BE[1]信号はPA_
DQ[15..8]データ・バイトを制御し、PA_B
E[2]信号はPA_DQ[23..16]データ・バ
イトを制御し、PA_BE[3]信号はPA_DQ[3
1..24]データ・バイトを制御する。
83は、レンダリング・バス98を介したFBRAMチ
ップ71に対する読取りオペレーションおよび書込みオ
ペレーション時にPA_DQ[31..0]信号を使用
する。書込みオペレーション時には、PA_DQ信号が
ピクセルALU58に送られる。読取りオペレーション
時には、ピクセル・バッファ56の読取りポートによっ
てPA_DQ信号が提供される。内部コピー・オペレー
ションおよび垂直スクロール・オペレーション時には、
フレーム・バッファ・メモリ装置制御装置83が、PA
_DQ[29..24]信号によって書込みアドレスを
供給する。
フレーム・バッファ・メモリ装置制御装置83がPA_
DX[3..0]信号を使用して、PA_DQ信号を介
して送られるデータ・バイト用の余分の高位データ・ビ
ットを提供する。PA_DX[0]信号は、PA_DQ
[7..0]バイト用の高位ビットを提供する。同様
に、PA_DX[1]信号は、PA_DQ[15..
8]バイト用の高位ビットであり、PA_DX[2]信
号は、PA_DQ[23..16]用の高位ビットであ
り、PA_DX[3]信号は、PA_DQ[31..2
4]バイト用の高位ビットである。
ASS_OUT信号は、FBRAMチップ71ないし8
2間の合格/不合格比較装置の結果の調整をイネーブル
する。FBRAMチップ71の内部比較装置からの比較
結果は、PA_PASS_OUT信号を介して送られ
る。PA_PASS_OUT信号は、ピクセル・バッフ
ァ56へのstateful書込みオペレーション時に
内部比較試験の結果が不合格であったかどうかを示す。
stateful書込みオペレーション時に、PA_P
ASS_IN信号が合格を示し、PA_PASS_OU
T信号が合格を示す場合、データはピクセル・バッファ
56に書き込まれる。
およびDRAM制御信号について説明したものである。
フレーム・バッファ・メモリ装置制御装置83は、DR
AM操作バス110上のDRAMアドレス信号およびD
RAM制御信号を介して、DRAMバンクAないしD、
グローバル・バス60、ピクセル・バッファ・グローバ
ル・バス・ポート、ビデオ・バッファ52および54に
対するアクセス・オペレーションを開始する。フレーム
・バッファ・メモリ装置制御装置83は、DRAM_O
P[2..0]信号を介してDRAMオペレーションを
指定する。フレーム・バッファ・メモリ装置制御装置8
3は、マスタ・クロックCLKの立上りエッジ上でDR
AM_ENAをアサートして、次のCLKサイクル中に
1つのDRAMバンクAないしDに対するオペレーショ
ンを開始する。
83は、DRAM_BANK[1..0]信号によって
1つのDRAM信号AないしDを選択する。フレーム・
バッファ・メモリ装置制御装置83は、DRAM_AD
DR[8..0]信号を介して、選択されたDRAMバ
ンクAないしD中のページを選択する。また、フレーム
・バッファ・メモリ装置制御装置83は、DRAM_A
DDR[8..0]信号を使用して、グローバル・バス
60を介したブロック転送オペレーション時のピクセル
・バッファ・グローバル・バス・ポート・アドレスを指
定し、かつDRAMページからビデオ・バッファ52お
よび54のうちの一方へのビデオ・データの転送を指定
する。
トしたものである。ビデオ制御信号は、ビデオ・データ
をビデオ・バス134を介してビデオ出力回路84へ送
るために使用される。ビデオ・バス134を介して送ら
れるビデオ・データは、VID_CLK信号によって同
期をとられる。VID_CLK信号は、ゲート・ビデオ
・シフト・クロックまたは自走ビデオ・シフト・クロッ
クである。VID_CM(上バー)信号は、次のVID
_CLKサイクルをマスクし、ビデオ・バッファ52お
よび54をドライブするFBRAMチップ71中のビデ
オ・カウンタをディスエーブルするために使用される。
VID_OE信号は、VID_DATA信号によって提
供されるビデオ・データに対する非同期ビデオ出力イネ
ーブル信号である。VID_DATA[15..0]信
号によって提供される16ビット幅ビデオ・データバス
は、1サイクル中の2バイトのビデオ・データの転送を
イネーブルする。VID_QSF信号は、ビデオ・バッ
ファ52またはビデオ・バッファ54が、VID_DA
TA[15..0]信号を介して送られるビデオ・デー
タをドライブしているかどうかを示す。
のピクセル・ポート・オペレーションについて説明した
ものである。ピクセル・ポート・オペレーションは、ピ
クセル・バッファ56からデータを読み取るオペレーシ
ョン、4つの異なるモードでピクセル・バッファ56に
データを書き込むオペレーション、ダーティ・タグ・メ
モリ194中のダーティ・タグ・ビットを置換し修正す
るオペレーション、FBRAMチップ71の制御レジス
タに書き込むオペレーションが含まれる。
83は、PA_ADDR[5..0]信号を介してピク
セル・ポート・オペレーション用のブロック・アドレス
およびワード・アドレスを指定する。レンダリング・プ
ロセッサ70は、PA_ADDR[5..3]信号を介
してピクセルALUオペレーション用のブロック・アド
レスを指定する。レンダリング・プロセッサ70は、P
A_ADDR[2..0]信号を介してピクセルALU
オペレーション用のワード・アドレスを指定する。レン
ダリング・プロセッサ70は、PA_ADDR[5..
0]信号を介して制御レジスタ書込みオペレーション時
の制御レジスタを指定する。
83は、ピクセル・ポート読取りオペレーションを発行
して、ピクセル・バッファ50から32ビット・データ
を読み取る。ピクセル・バッファ56中のブロック・ア
ドレスおよびワード・アドレスは、PA_ADDR
[5..0]信号によって指定される。
83は、stateless初期データ書込みオペレー
ションを発行して、PA_ADDR[5..0]信号に
よって指定されたピクセル・バッファ56中のブロック
およびワードに32ビット・データを書き込む。sta
teless初期データ書込みオペレーションは、PA
_DQ[31..0]によって提供された32ビット・
データに対応するアドレスされたブロック中のダーティ
・タグをセットし、PA_DQ[31..0]によって
提供された32ビット・データに対応しないアドレスさ
れたブロック中のダーティ・タグをクリアする。sta
teless初期データ書込みオペレーションは、FB
RAMチップ71中の制御レジスタの内容の影響を受け
ない。stateless通常データ書込みオペレーシ
ョンも、FBRAMチップ71中の制御レジスタの内容
の影響を受けない。フレーム・バッファ・メモリ装置制
御装置83は、stateless通常データ書込みオ
ペレーションを発行して、PA_ADDR[5..0]
信号によって指定されたピクセル・バッファ56中のブ
ロックおよびワードに、PA_DQ[31..0]信号
によって提供された32ビット・データを書き込む。s
tateless通常データ書込みオペレーションは、
PA_DQ[31..0]によって提供された32ビッ
ト・データに対応するダーティ・タグをセットする。
83は、stateful初期データ書込みオペレーシ
ョンを発行して、FBRAMチップ71中の制御レジス
タの内容に応じてピクセル・バッファ56に32ビット
・データを書き込む。stateful初期データ書込
みオペレーションも、stateless初期データ書
込みオペレーションと同様にダーティ・タグをセットし
クリアする。フレーム・バッファ・メモリ装置制御装置
83は、stateful通常データ書込みオペレーシ
ョンを発行して、FBRAMチップ71中の制御レジス
タの内容に応じてピクセル・バッファ56に32ビット
・データを書き込む。stateful通常データ書込
みオペレーションは、stateless通常データ書
込みオペレーションと同様にダーティ・タグをセットす
る。フレーム・バッファ・メモリ装置制御装置83は、
PA_ADDR[5..0]信号を介してピクセル・バ
ッファ56中のブロックおよびワードを指定し、PA_
DQ[31..0]信号を介して新しいデータを指定す
る。ピクセルALUオペレーションを制御するFBRA
Mチップ71中のレジスタの内容に応じて、アドレスさ
れたブロックおよびワード中の既存のデータと新しいデ
ータを組み合わせることができる。
83は、ダーティ・タグ置換オペレーションを発行し、
PA_DQ[31..0]信号を介してダーティ・タグ
・データをダーティ・タグ・メモリ194へ送る。フレ
ーム・バッファ・メモリ装置制御装置83は、ORダー
ティ・タグ・オペレーションを発行して、新しいタグ・
データとダーティ・タグ・メモリ中の既存のタグ・デー
タに対する排他的OR関数を実行する。フレーム・バッ
ファ・メモリ装置制御装置83は、制御レジスタ書込み
オペレーションを発行して、FBRAMチップ71の内
部制御レジスタへ新しいデータを送る。
によって提供されるDRAMアクセス・オペレーション
をリストしたものである。DRAMアクセス・オペレー
ションには、ページ・アクセス・オペレーション、ブロ
ック・アクセス・オペレーション、ビデオ・バッファ・
ロード・オペレーションが含まれる。ページ・アクセス
・オペレーションには、ページ・アクセス・オペレーシ
ョン、プレチャージ・オペレーション、ページ重複オペ
レーションが含まれる。ブロック・アクセス・オペレー
ションには、ブロック読取りオペレーション、マスクさ
れないブロック書込みオペレーション、マスクされたブ
ロック書込みオペレーションが含まれる。フレーム・バ
ッファ・メモリ装置制御装置83は、DRAM操作バス
110上で各サイクルごとにDRAMアクセス・オペレ
ーションを開始することができる。
83は、ページ・アクセス・オペレーションを開始し
て、DRAMバンクAないしDのページを選択する。フ
レーム・バッファ・メモリ装置制御装置83は、DRA
M_BANK信号を介してDRAMバンクAないしDを
指定し、DRAM_ADDR[8..0]信号を介し
て、アクセスされるページを指定する。
83は、ブロック・アクセス・オペレーションを開始し
て、ページ・バッファAないしDとピクセル・バッファ
56の間でデータ・ブロックを送る。フレーム・バッフ
ァ・メモリ装置制御装置83は、DRAM_BANK信
号を介してDRAMバンクAないしDおよびページ・バ
ッファAないしDを指定する。フレーム・バッファ・メ
モリ装置制御装置83は、DRAM_ADDR[8..
6]信号を介してピクセル・バッファ56中のピクセル
・キャッシュ・ブロックを指定し、DRAM_ADDR
[5..0]信号を介して、指定されたページ・バッフ
ァAないしDのブロックを選択する。
83は、マスクされないブロック書込みオペレーション
を発行して、グローバル・バス60を介して、指定され
たピクセル・バッファ56ブロックから、指定されたペ
ージ・バッファAないしDの指定されたブロックへ、デ
ータ・ブロックを送る。ピクセル・バッファ56の指定
されたブロックに対応するダーティ・タグ・メモリ中の
ダーティ・タグ・ビットは、指定されたページ・バッフ
ァAないしDへの書込みをビットごとに制御する。
83は、マスクされたブロック書込みオペレーションを
発行し、グローバル・バス60を介して、ピクセル・バ
ッファ56の指定されたピクセル・キャッシュ・ブロッ
クから、指定されたページ・バッファAないしDの指定
されたブロックへ、データ・ブロックを送る。プレーン
・マスク・レジスタと、ピクセル・バッファ56の指定
されたピクセル・キャッシュ・ブロック用のダーティ・
タグ・ビットは、指定されたDRAMバンクAないしD
のページ・バッファAないしDへの書込みをビットごと
に制御する。
83は、バンク・プレチャージ・オペレーションを発行
して、指定されたDRAMバンクAないしD中のセンス
増幅器をプレチャージする。フレーム・バッファ・メモ
リ装置制御装置83は、以後のページ・アクセス・オペ
レーションに備えてバンク・プレチャージ・オペレーシ
ョンを行う。
83は、ビデオ転送オペレーションを発行して、指定さ
れたページ・バッファAないしDから対応するビデオ・
バッファ52または54へセンス増幅器データの640
ビット・ラインを送る。レンダリング・プロセッサ70
は、DRAM_ADDR[3..0]信号を使用して、
ページ・バッファAないしDのラインを指定する。
83は、ページ重複オペレーションを発行して、指定さ
れたページ・バッファAないしD中のセンス増幅器デー
タを、対応するDRAMバンクAないしD中の指定され
たページへ送る。フレーム・バッファ・メモリ装置制御
装置83は、ブロック読取りオペレーションを発行し
て、グローバル・バス60を介して、指定されたページ
・バッファAないしDの指定されたブロックから、ピク
セル・バッファ56の指定されたピクセル・キャッシュ
・ブロックへデータ・ブロックを送る。ブロック読取り
オペレーションは、ピクセル・バッファ56の指定され
たピクセル・キャッシュ・ブロック用のダーティ・タグ
・ビットをクリアする。
83は、ページ・アクセス・オペレーションを発行し
て、指定されたDRAMバンクAないしD中の指定され
たページから、ページ・バッファAないしD中の対応す
るセンス増幅器へデータを送る。フレーム・バッファ・
メモリ装置制御装置83は、特定のDRAMバンクAな
いしDへのページ・アクセス・オペレーションの前に、
そのDRAMバンクへのプレチャージオペレーションを
実行する。
プの例に関する他の情報に関しては、1994年5月3
日に出願され、「Frame Buffer Rand
omAccess Memory and Syste
m」と題する、米国特許出願第08/237289号を
参照されたい。
メモリ装置制御装置83を示す。フレーム・バッファ・
メモリ装置制御装置83は、トランスレータ回路300
と、アロケータ回路310と、スケジューラ回路320
と、アービタ回路330と、ビデオ要求ジェネレータ3
40とを備える。なお、図において$はキャッシュを意
味している。
83がフレーム・バッファ制御バス106を介して受け
取ったピクセル・アクセス・トランザクションによっ
て、最終的にピクセル操作バス112およびレンダリン
グ・バス98を介してオペレーションが発行される。フ
レーム・バッファ・メモリ装置制御装置83は、DRA
M操作バス110を介してDRAMオペレーションを発
行して、ピクセル・オペレーションをサポートするFB
RAMチップ71ないし82のL2ピクセル・キャッシ
ュを介して、DRAMコアとL1ピクセル・キャッシュ
の間でデータを送る。
83は、フレーム・バッファ制御バス106を介して受
け取ったピクセル・アクセス・トランザクションのシー
ケンスに応じて、DRAM操作バス110上へ発行する
DRAMオペレーションを決定する。たとえば、フレー
ム・バッファ制御バス106を介して受け取ったピクセ
ル・アクセス・トランザクションによって指定されたピ
クセル・データが、FBRAMチップ71ないし82の
L1ピクセル・キャッシュに記憶されていない場合、F
BRAMチップ71ないし82のL1ピクセル・キャッ
シュへ適当なブロックを送らなければならない。また、
フレーム・バッファ制御バス106上でピクセル・アク
セス・トランザクションによって指定されたピクセルが
L2ピクセル・キャッシュに含まれていない場合、指定
されたブロックをL2ピクセル・キャッシュからFBR
AMチップ71ないし82のL1ピクセル・キャッシュ
へ送る前に、L2ピクセル・キャッシュへ適当なページ
を送っておかなければならない。
83は、L1ピクセル・キャッシュ中の修正済みブロッ
クが、FBRAMチップ71ないし82のグローバル・
バスを介してL2ピクセル・キャッシュに適切に書き直
されるようにする。また、フレーム・バッファ・メモリ
装置制御装置83は、L2ピクセル・キャッシュ中のペ
ージが適宜、FBRAMチップ71ないし82のDRA
Mコアに返されるようにする。
83は、ACPオペレーション、VDXオペレーショ
ン、PREオペレーションを含めビデオ転送シーケンス
を発行して、FBRAMチップ71ないし82中のDR
AMバンクAないしDおよび対応するビデオ・バッファ
からビデオ・データを送る。
バッファ制御バス106を介してピクセル・アクセス・
トランザクションを受け取る。フレーム・バッファ制御
バス106上の各ピクセル・アクセス・トランザクショ
ンは、XアドレスおよびYアドレスと、命令コード(O
P)と、ピクセル・データとを備える。命令コードは、
FBRAMチップ71ないし82のためのピクセル書込
みサイクル、ピクセル・リード・モディファイ・ライト
・サイクル、ピクセル読取りサイクル、レジスタ書込み
サイクル、レジスタ読取りサイクル、およびブロック転
送機能を指定する。XアドレスおよびYアドレスは、対
応するピクセル・データ用の表示装置の座標を指定す
る。
XアドレスおよびYアドレスをFBRAMチップ71な
いし82用のアクセス・パラメータに変換する。FBR
AMチップ71ないし82用のアクセス・パラメータ
は、バンクと、ページと、列(COL)と、ワードとを
備える。バンクは、FBRAMチップ71ないし82の
1つのバンクAないしDを指定する。ページは、選択さ
れたバンク内のページを指定し、列は、選択されたペー
ジの一部を指定し、ワードは、選択された列のピクセル
部分を指定する。
プ71ないし82の内部L1ピクセル・キャッシュおよ
び内部L2ピクセル・キャッシュの状態に影響を及ぼす
スケジューラのすべての要求の累積状態を追跡する。ア
ロケータ回路310は、L2ピクセル・キャッシュにマ
ップされたDRAMページのログ、FBRAMチップ7
1ないし82のL1ピクセル・キャッシュ中の各項目ご
とのバンク、ページ、および列のログを維持する。
ジ、列、ワード、および命令コードをトランスレータ回
路300から受け取り、指定されたピクセル・アクセス
・トランザクションを実行するのにFBRAMチップ7
1ないし82中のL1ピクセル・キャッシュおよびL2
ピクセル・キャッシュの状態を変更する必要があるかど
うかを判定する。アロケータ回路310は、トランスレ
ータ回路300からのバンク・パラメータ、ページ・パ
ラメータ、および列パラメータを使用して、L1ピクセ
ル・キャッシュおよびL2ピクセル・キャッシュに、指
定されたピクセルが含まれているかどうかを判定する。
回路300から受け取ったバンク・パラメータ、ページ
・パラメータ、列パラメータ、ワード・パラメータ、お
よび命令(OP)コードを、ブロック・パラメータと共
にスケジューラ320に渡す。また、アロケータ回路3
10は、指定されたピクセル・アクセス・トランザクシ
ョンで、FBRAMチップ71ないし82のL1ピクセ
ル・キャッシュの状態をさらに変更する必要がある場
合、対応するL1キャッシュ要求(L1$Req)をス
ケジューラ回路320へ送る。また、アロケータ回路3
10は、指定されたピクセル・アクセス・トランザクシ
ョンで、FBRAMチップ71ないし82のL2ピクセ
ル・キャッシュの状態をさらに変更する必要がある場
合、対応するL2キャッシュ要求(L2$Req)をス
ケジューラ回路320へ送る。
ュ要求は、FBRAMチップ71ないし82中のL1ピ
クセル・キャッシュとL2ピクセル・キャッシュの間の
転送を指定する。たとえば、L1キャッシュ要求は、L
2ピクセル・キャッシュからL1ピクセル・キャッシュ
へデータを転送する(RDB)事前取出しオペレーショ
ンを指定することも、あるいはFBRAMチップ71な
いし82中のグローバル・バスを介してL1ピクセル・
キャッシュからL2ピクセル・キャッシュへダーティ・
ピクセル・データを書き直す(UWB,MWB)書直し
オペレーションを指定することもできる。単一のピクセ
ル・オペレーションは、事前取出しオペレーションの後
に書直しオペレーションを生成することができる。他の
実施例では、書直しと事前取出しをスケジューラ回路3
20への1つの要求として組み合わせる。
プ71ないし82中のDRAMコアに対するオペレーシ
ョンを指定する。たとえば、アロケータ回路310から
のL2キャッシュ要求は、DRAMコアに対するページ
・アクセス(ACP)オペレーションを指定すること
も、あるいはDRAMコアに対するプレチャージ(PR
E)オペレーションを指定することもできる。他の実施
例では、アロケータ回路310が、スケジューラ回路3
20へのページ・アクセス・オペレーションを指定し、
アービタ回路330が、この要求をページ・アクセス
と、(必要に応じて)その後に続くプレチャージとして
拡張する。
クセス・ブロック・パラメータ、バンク・パラメータ、
ページ・パラメータ、列パラメータ、および命令コード
を、L1キャッシュ要求およびL2キャッシュ要求と共
に、アロケータ回路310から受け取る。スケジューラ
回路320は、ピクセル・アクセス・パラメータ、L1
キャッシュ要求、およびL2キャッシュ要求を別々の内
部先入れ先出し(FIFO)メモリ待ち行列にバッファ
する。この別々のメモリ待ち行列は、独立にオペレーシ
ョンし、したがって、L2キャッシュ要求をL1キャッ
シュ要求よりも先へ「プッシュ」することができ、L1
キャッシュ要求をピクセル・アクセス・パラメータより
も先へプッシュすることができる。
操作バス110およびピクセル操作バス112を介して
前にディスパッチされたDRAMオペレーションおよび
ピクセル・オペレーションに応じてFBRAM71ない
し82の現内部状態のログを維持する。アービタ回路3
30は、FBRAMチップ71ないし82中のL1ピク
セル・キャッシュおよびL2ピクセル・キャッシュの現
状態を追跡する。アービタ回路330は、ピクセル操作
バス112を介して最も新しく発行された5つのピクセ
ル・オペレーションを示すスコアボードも維持する。
71ないし82中の内部タイミング・オペレーションを
実行する内部の1組のインタロック回路を維持する。ア
ービタ回路330は、読取りサイクルと書込みサイクル
の間の遷移時に回線反転がうまく行われるように、レン
ダリング・バス98上でサイクルを追跡する状態マシン
も含む。アービタ回路330は、FBRAMチップ71
ないし82中のグローバル・バスの内部状態も追跡す
る。
レータ340からビデオ転送要求を受け取る。ビデオ要
求ジェネレータ340からのビデオ転送要求は、ビデオ
操作バス106を介してビデオ出力回路84から受け取
ったタイミング信号によって決定される。各ビデオ・ア
クセス要求も、1つのFBRAMチップ71ないし82
のQSFフラグの遷移によって決定される。各ビデオ・
アクセス要求は、FBRAMチップ71ないし82中の
ビデオ転送シーケンスが必要であるかどうかを示す。
求、L2キャッシュ要求、およびビデオ転送オペレーシ
ョン要求をDRAM操作バス110を介してFBRAM
チップ71ないし82へ発行する。アービタ回路330
は、FBRAMチップ71ないし82がDRAMオペレ
ーションを受け取る準備ができている場合にDRAM操
作バス112上でDRAMオペレーションとして発行さ
れる、スケジューラ回路320からのL1キャッシュ要
求およびL2キャッシュ要求と、ビデオ要求ジェネレー
タ340からのビデオ・アクセス要求の調停をはかる。
アービタ回路330は、FBRAMチップ71ないし8
2がピクセル・アクセス・トランザクションを受け取る
準備ができている場合、ピクセル操作バス110を介す
るピクセル・ポート・オペレーションおよびレンダリン
グ・バス98を介するデータとしてピクセル・アクセス
・トランザクションを発行する。
RAM操作バス110およびピクセル操作バス112に
結合された独立の数組の制御ピンおよびアドレスピンを
提供する。ピクセル操作バス112は、FBRAMチッ
プ71ないし82中のL1ピクセル・キャッシュとの間
の読取りポート204および書込みポート202を介し
たピクセルの読取りおよび書込みを制御する。DRAM
操作バス110は、DRAMコアとL2ピクセル・キャ
ッシュの間のデータ転送、L2ピクセル・キャッシュと
L1ピクセル・キャッシュの間のグローバル・バス60
転送、およびL2ピクセル・キャッシュからFBRAM
チップ71ないし82中の対応するビデオ・バッファへ
のビデオ転送を制御する。
る、フレーム・バッファ制御バス106を介して受け取
ったXピクセル・アドレスおよびYピクセル・アドレス
の、FBRAMチップ71ないし82用のバンク・パラ
メータ、ページ・パラメータ、ブロック・パラメータ、
およびワード・パラメータへのマッピングを示す。図の
例は、1280×1024解像度のディスプレイでの画
面マッピングを示す。バンクAないしDをマップするた
めに二次元パターンが使用され、そのため、近隣のペー
ジのレンダリングでは常に、異なるバンクが使用され、
新しいバンクを事前に取り出して古いバンクを削除する
時間が与えられることに留意されたい。トランスレータ
回路300は、以下で表1に記載した変換関数を実行す
る1組の組合せ論理を備える。
を示す。アロケータ回路310は、トランスレータ回路
300からの着信ピクセル・アクセスにL1キャッシュ
要求およびL2キャッシュ要求が必要であるかどうかを
判定する。アロケータ回路310は、L1キャッシュ・
テーブル(L1$テーブル)、L2キャッシュ・テーブ
ル(L2$テーブル)、および最古の割振りブロック・
レジスタ400を維持する。
チップ71ないし82の各バンクAないしDごとの項目
を提供し、ここで、バンクAないしDはバンク0ないし
バンク3に対応する。L2キャッシュ・テーブル中の各
項目は、有効ビットとページ・フィールドとを含む。有
効ビットは、対応するバンクAないしDのページがL2
ピクセル・キャッシュにマップされているかどうかを示
し、ページ・フィールドは、マップすべきDRAMバン
クのページを指定する。
トランスレータ回路300から着信したピクセル・アク
セス・パラメータの各組ごとにL2キャッシュ・テーブ
ルにインデックス付けする。アロケータ回路310は、
トランスレータ回路300からのバンク・パラメータで
L2キャッシュ・テーブルにインデックス付けする。ア
ロケータ回路310は、指定されたL2キャッシュ・テ
ーブル項目のページ・フィールドを、トランスレータ回
路300から着信したページ・パラメータと比較する。
着信ページ・パラメータが、指定されたL2キャッシュ
・テーブル項目のページ・フィールドに一致し、対応す
る有効ビットがセットされている場合、アロケータ回路
310は、ピクセル・アクセス・パラメータがスケジュ
ーラ回路320に渡されたときにL2キャッシュ要求を
発行しない。そうでない場合、アロケータ回路310
は、適当なL2キャッシュ要求をスケジューラ回路32
0へ発行し、適当なL2キャッシュ・テーブル項目をト
ランスレータ回路300から着信したページ・パラメー
タにセットする。
ルでミスしたが、L1キャッシュ・テーブルではヒット
したトランスレータからの着信要求によってアロケータ
がL2キャッシュ要求をスケジューリングすることはな
い。その代わり、L1キャッシュの削除を必要とするト
ランスレータへの以後の要求ではまず、ブロックを削除
するL1要求を生成する前にページをスケジューリング
するL2要求が生成される。
有効ビット(V)と、ダーティ・ビット(D)と、書込
み専用ビット(W)と、statefulビット(S)
と、バンク・フィールドと、ページ・フィールドと、列
フィールドとを含む。ダーティ・ビットは、L1ピクセ
ル・キャッシュの対応するブロックが、L1ブロックを
再割り振りできるようにするためにL2ピクセル・キャ
ッシュに書き直しておかなければならない更新済みピク
セルを含むことを示す。有効ビットは、L2$のブロッ
クが対応するL1$ブロックにマップされているかどう
かを示す。statefulビットは、L1ピクセル・
キャッシュの対応するブロックにはstateful書
込みオペレーションが必要か、それともstatele
ss書込みオペレーションが必要かを示す。書込み専用
ビットは、L1ピクセル・キャッシュの対応するブロッ
クにはグローバル・バス読取りトランザクションが必要
とされないことを示す。
L1ピクセル・キャッシュが常にL2ピクセル・キャッ
シュのサブセットとなるようにする。L1キャッシュ・
テーブルはフル・アソシエーティブである。アロケータ
回路310は、トランスレータ回路300から着信した
バンク・パラメータ、ページ・パラメータ、および列パ
ラメータを同時にL1キャッシュ・テーブル中のすべて
の6つの項目と比較する。着信ピクセル・アクセス・パ
ラメータがL1キャッシュ・テーブル中の項目に対応し
ていない場合、最古の割振りカウンタ400によって示
されたL1キャッシュ・テーブル中の項目がアロケータ
回路310によって削除される。次いで、指定されたL
1キャッシュ・テーブル項目の3ビット・インデックス
が、トランスレータ回路300から受け取った残りのピ
クセル・アクセス・パラメータと共に、スケジューラ回
路320へL1キャッシュ要求として送られる。次い
で、最古割振りカウンタ400がモジュロ6だけ増分さ
れる。最古割振りカウンタ400によって指定されたL
1キャッシュ・テーブル中の項目がダーティである場
合、アロケータ回路310は、スケジューラ回路320
へL1キャッシュ要求を発行して、ダーティ・ブロック
を書き直す。また、L1キャッシュ・テーブルの指定さ
れた項目はクリーンにセットされる。
ュは常にL2ピクセル・キャッシュのサブセットである
とは限らない。この場合も、L1キャッシュ・テーブル
はフル・アソシエーティブである。アロケータ回路31
0は、トランスレータ回路300から着信したバンク・
パラメータ、ページ・パラメータ、および列パラメータ
を同時に、L1キャッシュ・テーブル中のすべての6つ
の項目と比較する。着信ピクセル・アクセス・パラメー
タがL1キャッシュ・テーブル中の項目に対応するもの
でない場合、最古割振りカウンタ400で示されたL1
キャッシュ・テーブル中の項目は、アロケータ回路31
0によって割り振り解除される。最古の割振りカウンタ
400によって指定されたL1キャッシュ・テーブル中
の項目がダーティである場合、アロケータ回路310
は、L1キャッシュ要求をスケジューラ回路320へ発
行して、ダーティ・ブロックを書き直す。削除されるL
1ブロックによって使用されているL2ページがL2テ
ーブル中で有効でない場合、古いページを削除して、必
要なページを取り出すことを求めるL2要求は、スケジ
ューラに送られる。また、L1キャッシュ・テーブルの
指定された項目はクリーンにセットされる。割り振り解
除されたブロックが削除された後、指定されたL1キャ
ッシュ・テーブル項目の3ビット・インデックスが、ト
ランスレータ回路300から受け取った残りのピクセル
・アクセス・パラメータと共に、スケジューラ回路32
0へL1キャッシュ取出し要求として送られる。次い
で、最古の割振りカウンタ400がモジュロ6だけ増分
される。L1キャッシュ取出し要求によって使用される
ページがL2テーブル中で有効でない場合、必要なペー
ジを取り出すことを求めるL2要求もスケジューラ回路
320へ送られる。
スタの代わりにLRUブロック・レジスタを使用するこ
とができる。
300からアロケータ回路310への要求が待機する。
どのキャッシュ項目が削除するのに最も適しているかを
判定する選択では、実行に関してすでにスケジューリン
グされているのはどのオペレーションかを調べるだけで
なく、後で着信ピクセルが必要とするブロックを削除す
ることを避けるために着信ピクセル・オペレーションの
待ち行列を調べることもできる。
・テーブル中の指定された項目のダーティ・ビットを検
査して、L2ピクセル・キャッシュからの書直しオペレ
ーションが必要であるかどうかを判定する。対応するS
ビットは、L1ピクセル・キャッシュからL2ピクセル
・キャッシュへの書直しに、マスクされないブロック書
込みを使用するか、マスクされたブロック書込みを使用
するかを示す。
0を示す。スケジューラ回路320は、ブロック・パラ
メータ、バンク・パラメータ、ページ・パラメータ、列
パラメータ、命令コード・パラメータ、ピクセル・デー
タ・パラメータを含めピクセル・アクセス・パラメータ
をアロケータ回路310から受け取り、そのピクセル・
アクセス・パラメータをピクセル待ち行列に置く。スケ
ジューラ回路320は、L1キャッシュ要求を、アロケ
ータ回路310から受け取り、L1キャッシュ待ち行列
(L1$待ち行列)に置く。スケジューラ回路320
は、L2キャッシュ要求を、アロケータ回路310から
受け取り、L2キャッシュ待ち行列(L2$待ち行列)
に置く。ピクセル待ち行列、L1キャッシュ待ち行列、
およびL2キャッシュ待ち行列はそれぞれ、先入れ先出
しバッファ・メモリを備える。
ュ要求とは異なるバンクに対する無関係のL1キャッシ
ュ要求よりも先へL2キャッシュ要求をプッシュし、L
1キャッシュ要求とは異なるブロックに対する無関係の
ピクセル・アクセス要求よりも先へL1キャッシュ要求
をプッシュする。対応する要求を先へプッシュするため
に、ピクセル待ち行列は、L1キャッシュ待ち行列より
も深く、L1キャッシュ待ち行列は、L2キャッシュ待
ち行列よりも深い。ピクセル待ち行列、L1待ち行列、
およびL2待ち行列は独立にオペレーションし、それに
よって、L2キャッシュ要求は、前に受け取ったL1キ
ャッシュ要求およびピクセル・アクセス要求よりも先へ
移動することができる。同様に、L1キャッシュ要求
は、ピクセル待ち行列中の前に受け取ったピクセル・ア
クセス要求よりも先へ移動することができる。
分のL2オペレーションが完了するのにかかる時間が、
L1オペレーションが完了するのにかかる時間よりも長
く、大部分のL1オペレーションが完了するのにかかる
時間が、ピクセル・オペレーションが完了するのにかか
る時間よりも長いため、非常に有利である。一方、L2
ページ領域はL1ブロック領域よりも大きく、L1ブロ
ック領域はピクセル領域よりも大きい。その結果、通
常、L1要求ごとに複数のピクセル要求があり、L2要
求ごとに複数のL1要求がある。より遅いL2要求およ
びL1要求をより数の多いL1要求およびピクセル要求
よりも先へプッシュすることによって、より遅い要求
が、より数の多いピクセル要求をサポートするために必
要とされる前に完了する機会が大幅に増大し、したがっ
てピクセル要求を停止する必要がなくなる。
ュ要求が、それと同じバンクおよびページへの関連L1
キャッシュ要求よりも先へプッシュされるのを妨げる。
スケジューラ回路320は、アロケータ回路310から
着信した各L2キャッシュ要求のバンク・パラメータを
各L1待ち行列項目のバンク・フィールドと比較する。
バンク・フィールドが有効なL1キャッシュ待ち行列項
目に一致する場合、着信L2キャッシュ要求はスケジュ
ーラ回路320によって停止される。スケジューラ回路
320は、L2キャッシュ要求のバンク・フィールドが
有効なL1$待ち行列項目のバンク・フィールドに一致
する場合、L2キャッシュ要求を停止させ、対応するす
べてのL1$待ち行列項目が書き直される前にL2$項
目が変更されるのを妨げる。
ュ要求が、それと同じブロックへの関連ピクセル・アク
セス要求よりも先へプッシュされるのを妨げる。スケジ
ューラ回路320は、アロケータ回路310から着信し
た各L1キャッシュ要求のブロック・パラメータをピク
セル待ち行列中の各項目のブロック・フィールドと比較
する。着信ブロック・パラメータがピクセル待ち行列中
の項目に一致する場合、着信L1キャッシュ要求はスケ
ジューラ回路320によって遅延させられる。
示す。アービタ回路330は、1組のL2キャッシュ・
タグ(L2$タグ)、1組のL1キャッシュ・タグ(L
1$タグ)、スコアボード、1組のインタロックを維持
し、インタフェース状態マシンを含む。アービタ回路3
30は、各サイクル中に操作バス110および112上
でFBRAMチップ71ないし82へ転送すべき1つの
DRAMオペレーションおよび1つのピクセル・オペレ
ーションを選択する。アービタ回路330は、FBRA
Mチップ71ないし82の内部状態の詳細なモデルを維
持して、DRAMオペレーションおよびピクセル・オペ
レーションが適切に発行されるようにする。
ュ・タグは、FBRAMチップ71ないし82中のL1
ピクセル・キャッシュおよびL2ピクセル・キャッシュ
の状態を示す。スコアボードは、FBRAMチップ71
ないし82内部のピクセルALUパイプラインの状態を
追跡する。インタロックは、DRAMオペレーションに
関するFBRAMチップ71ないし82のハードウェア
・タイミング要件を追跡する。インタフェース状態マシ
ンは、適切な回線反転を維持し、FBRAMチップ71
ないし82のデータ・ピンへの拡張読取りサイクルをサ
ポートする。
320から着信したピクセル・アクセス・パラメータを
スコアボード中の情報と比較する。スコアボード中の情
報は、FBRAMチップ71ないし82のピクセルAL
Uで現在実行中のオペレーションが、着信ピクセル・ア
クセス要求に干渉しないようにする。また、着信ピクセ
ル・アクセス・パラメータは、FBRAMチップ71な
いし82のL1ピクセル・キャッシュで、指定されたピ
クセル・データが利用できるように、L1キャッシュ・
タグと比較される。着信ピクセル・アクセス・オペレー
ションフィールドは、インタフェース状態マシンの現状
態と比較されて、データ・バスが使用できるかどうかが
判定される。スコアボードとの競合、L1キャッシュ・
タグとの競合、またはインタフェース状態マシン中の競
合がアービタ回路330によって検出された場合、スケ
ジューラ回路320から着信したピクセル・アクセス・
パラメータは停止される。
ャッシュで、必要なDRAMページが利用できるよう
に、スケジューラ回路320から着信したL1キャッシ
ュ要求をL2キャッシュ・タグと比較する。アービタ回
路330は、L1キャッシュ・ブロックがL2ピクセル
・キャッシュへ転送される前に、指定されたL1キャッ
シュ・ブロックへのすべての未処理ピクセル書込みが完
了するように、着信L1キャッシュ書込み要求をスコア
ボードと比較する。アービタ回路330は、FBRAM
チップ71ないし82のグローバル・バスがビジーでな
くなるように、すべての着信L1キャッシュ要求をイン
タロックと比較する。さらにアービタ回路330は、ス
ケジューラ回路320から着信したL2キャッシュ要求
をインタロックと比較する。
ッシュ・タグを示す。L2キャッシュ・タグの各項目
は、対応するDRAMバンクAないしDの状態を示すビ
ットを含む。このビットは、DRAMバンクAないしD
にアクセスするか、それとも前記バンクをプレチャージ
するかを示す。L2キャッシュ・タグの各項目はページ
・フィールドも含む。各L2キャッシュ・タグ項目の状
態ビットは、FBRAMチップ71ないし82でのDR
AMオペレーションの指定されたサブセットを実行でき
ることを示す(A)に、アクセス・ページ・オペレーシ
ョンによってセットされる。指定される1組のDRAM
オペレーションには、ページ重複、ブロック読取り、マ
スク・ブロック書込み、マスクされないブロック書込
み、ビデオ転送、プレチャージが含まれる。状態ビット
は、プレチャージ・オペレーションによってクリアさ
れ、ページ・アクセス・オペレーションまたはプレチャ
ージ・オペレーションを実行できることを示す。
のL1キャッシュ・タグのフォーマットを示す。L1キ
ャッシュ・タグは、アロケータ回路310中のL1キャ
ッシュ・テーブルに類似しているが、FBRAMチップ
71ないし82に関するより新しい状態情報を提供す
る。
のフォーマットを示す。スコアボードは、FBRAMチ
ップ71ないし82中のパイプライン化ピクセルALU
を通過するピクセル・アクセス・オペレーションを追跡
する。スコアボードは、前の5サイクル中にレンダリン
グ・バス98を介してFBRAMチップ71ないし82
へ発行されたピクセル・オペレーションのブロック・ア
ドレスおよびワード・アドレスを追跡する。アービタ回
路330は、スコアボードに示されたように、同じブロ
ックおよびワードへの前にディスパッチされたピクセル
書込みが依然として、ピクセルALUのパイプラインを
介して伝搬している場合、L1ピクセル・キャッシュか
らの読取りを行うピクセル・アクセス・オペレーション
を停止させる。
71ないし82中のピクセルALUオペレーションとL
1キャッシュとL2キャッシュの間の転送(書直しまた
はUWB、MWB)の調和をはかる。L1キャッシュと
L2キャッシュの間の転送は、スコアボードに示された
ように、指定されたL1キャッシュ・ブロックへのピク
セル書込みオペレーションがピクセルALUのパイプラ
インを介して伝搬している場合、アービタ回路330に
よって停止される。
ロック・フィールドと、ワード・フィールドとを含む。
アービタ回路330は、ピクセル書込みオペレーション
がFBRAMチップ71ないし82に発行されたときに
項目の有効ビットをセットする。対応する項目のブロッ
ク・アドレスおよびワード・アドレスは、スケジューラ
回路320から受け取った対応するピクセル・アクセス
・オペレーション用のパラメータからコピーされる。ア
ービタ回路330は、あらゆるサイクルでスコアボード
項目を先へ進める。
320から着信した各ピクセル・アクセス・オペレーシ
ョンをスコアボード中のすべての5つの項目と比較す
る。着信ピクセル・アクセス・オペレーションがスコア
ボード中のL1キャッシュ・ブロックからの読取りを指
定するものであり、対応する有効ビットがセットされて
おり、スコアボードの対応するブロック・フィールドお
よびワード・フィールドが一致する場合、着信ピクセル
・アクセス・オペレーションが停止される。スコアボー
ドは、L1ピクセル・キャッシュからの読取りを必要と
しない着信ピクセル・アクセス・オペレーションに関し
ては無視される。また、アービタ回路330は、L1ピ
クセル・キャッシュからL2ピクセル・キャッシュへの
転送を指定する各着信L1$キャッシュ要求を、スコア
ボードの各項目の有効フィールドおよびブロック・フィ
ールドと比較する。そのようなオペレーションには、マ
スクされないブロック書込みオペレーションとマスクさ
れたブロック書込みオペレーションが含まれる。スコア
ボード中の項目のブロック・フィールドが着信要求に一
致し、対応する有効ビットがセットされている場合、L
1キャッシュ要求はアービタ回路330によって停止さ
れる。
施するためにインタロックが提供されている。アービタ
中のインタロックは、1組のカウンタを備える。このよ
うなカウンタには、各DRAMバンクAないしDごとの
2つのバンク内カウンタ、すなわち1つのバンク間カウ
ンタと1つのグローバル・バス・カウンタが含まれる。
対応するDRAMオペレーションが、FBRAMへ発行
され、次いであらゆるサイクルでカウント・ダウンされ
るとき、これらのカウンタにはある種の値が値がロード
される。ある種のDRAMオペレーションは、対応する
カウンタがゼロでないときには停止される。
レーションがカウンタのバンクへ発行されたときに必ず
ロードされる。バンク内継続時間カウンタにロードされ
る値は、DRAMオペレーションのタイプに依存する。
バンクへのDRAMオペレーションは、バンクのバンク
内継続時間カウンタがゼロでない場合は停止される。
オペレーションがカウンタのバンクへ発行されたときに
ロードされる。バンクへのプレチャージ・オペレーショ
ンは、バンクのバンク内プレチャージ・カウンタがゼロ
でない場合には停止される。
ペレーション、DUP DRAMオペレーション、また
はVDX DRAMオペレーションがFBRAMへ発行
されたときに必ずロードされる。ACP DRAMオペ
レーション、DUP DRAMオペレーション、VCX
DRAMオペレーション、およびPRE DRAMオ
ペレーションは、バンク間カウンタがゼロでない場合に
は停止される。
DRAMオペレーション、UWBDRAMオペレーショ
ン、またはMWB DRAMオペレーションがFBRA
Mへ発行されたときに必ずロードされる。RDB DR
AMオペレーション、UWB DRAMオペレーショ
ン、またはMWB DRAMオペレーションは、グロー
バル・バス・カウンタがゼロでない場合には停止され
る。
で転送されているL1キャッシュ・ブロックに対するピ
クセル・オペレーションを停止する。
フェース状態マシンを示す。インタフェース状態マシン
は、フレーム・バッファ・メモリ装置制御装置83とF
BRAMチップ71ないし82の間の双方向バス98の
オペレーションを制御する。インタフェース状態マシン
は、レンダリング・バス98の書込みトランザクション
が1サイクルを必要とするようにする責任を負う。レン
ダリング・バス98を介した読取りトランザクションに
は2サイクルが必要である。また、インタフェース状態
マシンは、レンダリング・バス98を介する読取りオペ
レーションとその後の書込みオペレーションの間に2つ
のアイドル・サイクルが挿入されるようにする。
操作バス108を介してビデオ出力回路84からタイミ
ング信号を受け取る。ビデオ要求ジェネレータは、1つ
のFBRAMチップ71ないし82からQSF信号も受
け取る。ビデオ操作バス108上のタイミング信号は、
ビデオ出力回路84によって1組のビデオ線104を介
して駆動される表示装置に関する各フレームおよび各走
査線の始めを示す。QSF信号は、ビデオ転送オペレー
ションをいつFBRAMチップ71ないし82へ発行す
べきかを示す。
・フィールドと、バンク・フィールドと、ページ・フィ
ールドと、アービタ回路330への走査線アドレス・フ
ィールドとを備えるビデオ転送要求を発行する。アービ
タ回路330は、ビデオ転送要求を使用して、FBRA
Mチップ71ないし82に対するDRAMオペレーショ
ンのシーケンスを生成する。DRAMオペレーションに
は、指定されたバンクおよびページへのページ・アクセ
ス・オペレーションと、指定されたバンクおよび走査線
へのビデオ転送オペレーションと、指定されたバンクの
へのプレチャージ・オペレーションが含まれる。
明を説明したが、添付の特許請求の範囲に記載した本発
明の広範囲な趣旨および範囲から逸脱せずに様々な修正
および変更を本発明に加えられることが明らかになろ
う。したがって、明細および図面は、制限的なものでは
なく例示的なものとみなすべきである。
プロセッサと、フレーム・バッファ・メモリ装置制御装
置と、ビデオ出力回路とを備えるグラフィック・サブシ
ステムを示す図である。
と、ピクセル・バッファと、ピクセルALUとを備え
る、一実施例のFBRAMチップを示す図である。
スケジューラ回路と、アービタ回路と、ビデオ要求ジェ
ネレータとを備える、一実施例のフレーム・バッファ・
メモリ装置制御装置を示す図である。
ッファ制御バスを介して受け取ったXピクセル・アドレ
スおよびYピクセル・アドレスをFBRAMチップ用の
バンク・パラメータ、ページ・パラメータ、ブロック・
パラメータ、ワード・パラメータとしてマッピングする
ことを示す図である。
クセスにL1キャッシュ要求およびL2キャッシュ要求
が必要であるかどうかを判定するアロケータ回路を示す
図である。
待ち行列に置き、L1キャッシュ要求をL1キャッシュ
待ち行列(L1$待ち行列)に置き、L2キャッシュ要
求をL2キャッシュ待ち行列(L2$待ち行列)に置
く、スケジューラ回路を示す図である。
グ)、1組のL1キャッシュ・タグ(L1$タグ)、ス
コアボード、1組のインタロックを維持し、インタフェ
ース状態マシンを含む、アービタ回路を示す図である。
もプレチャージされるかを示す対応するDRAMの状態
を示すビットを含むアービタ回路中のL2キャッシュ・
タグを示す図である。
タグのフォーマットを示す図である。
セルALUを通過するピクセル・アクセス・オペレーシ
ョンを追跡するアービタ回路中のスコアボードのフォー
マットを示す図である。
とFBRAMチップの間の双方向バスのオペレーション
を制御するアービタ回路中のインタフェース状態マシン
を示す図である。
ァ、 58 ピクセルALU、 60 グローバル・バ
ス、 70 レンダリング・プロセッサ、 71FBR
AMチップ、 83 フレーム・バッファ・メモリ装置
制御装置、 84 ビデオ出力回路、 98 レンダリ
ング・バス、 102 システム・バス、 110 D
RAM操作バス、 112 ピクセル操作バス、 11
4 ビデオ・ポート制御インタフェース、 116 D
RAM制御インタフェース、 118 ピクセル・ポー
ト制御インタフェース、 134 ビデオ・バス、 1
62 ピクセル入力データ、 194 ダーティ・タグ
・メモリ、 202 ALUポート、 204 読取り
ポート。
Claims (2)
- 【請求項1】 少なくとも1つのフレーム・バッファ・
メモリ装置にマップされたピクセル・データをターゲッ
トとするピクセル・アクセス・トランザクションを受け
取るように結合され、前のピクセル・アクセス・トラン
ザクションに基づいてフレーム・バッファ・メモリ装置
のキャッシュ状態を判定する回路と、キャッシュ転送オ
ペレーションをスケジューリングして、ピクセル・アク
セス・トランザクションをフレーム・バッファ・メモリ
装置へディスパッチする前にキャッシュ転送オペレーシ
ョンをフレーム・バッファ・メモリ装置へディスパッチ
しておく回路とを有することを特徴とするフレーム・バ
ッファ・メモリ装置制御装置。 - 【請求項2】 少なくとも1つのフレーム・バッファ・
メモリ装置にマップされたピクセル・データをターゲッ
トとするピクセル・アクセス・トランザクションを受け
取るように結合され、ピクセル・アクセス・トランザク
ションのシーケンスを調べる回路と、ピクセル・アクセ
ストランザクションのシーケンスに適応するようにフレ
ーム・バッファ・メモリ装置中の一連のキャッシュ転送
オペレーションをスケジューリングする回路と、フレー
ム・バッファ・メモリ装置へのキャッシュ転送オペレー
ションが、フレーム・バッファ・メモリ装置へのピクセ
ル・アクセス・トランザクションのシーケンスの停止を
妨げるように、キャッシュ転送オペレーションをピクセ
ル・アクセス・トランザクションよりも前にディスパッ
チする回路とを有することを特徴とするフレーム・バッ
ファ・メモリ装置制御装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US276814 | 1994-07-18 | ||
US08/276,814 US5579473A (en) | 1994-07-18 | 1994-07-18 | Interface controller for frame buffer random access memory devices |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08211859A true JPH08211859A (ja) | 1996-08-20 |
JP3828184B2 JP3828184B2 (ja) | 2006-10-04 |
Family
ID=23058173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20024995A Expired - Fee Related JP3828184B2 (ja) | 1994-07-18 | 1995-07-14 | フレーム・バッファ・メモリ装置制御装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5579473A (ja) |
EP (1) | EP0696023A3 (ja) |
JP (1) | JP3828184B2 (ja) |
KR (1) | KR100346817B1 (ja) |
Families Citing this family (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5946005A (en) * | 1995-09-21 | 1999-08-31 | Industrial Technology Research Institute | Computer graphics memory architecture having a graphics processor and a buffer |
US5761720A (en) * | 1996-03-15 | 1998-06-02 | Rendition, Inc. | Pixel engine pipeline processor data caching mechanism |
US5781201A (en) * | 1996-05-01 | 1998-07-14 | Digital Equipment Corporation | Method for providing improved graphics performance through atypical pixel storage in video memory |
US5987567A (en) * | 1996-09-30 | 1999-11-16 | Apple Computer, Inc. | System and method for caching texture map information |
EP0927387A2 (en) * | 1997-03-25 | 1999-07-07 | Seiko Epson Corporation | Method and apparatus for efficient memory-read operations with a vga-compliant video display adaptor |
US6067608A (en) * | 1997-04-15 | 2000-05-23 | Bull Hn Information Systems Inc. | High performance mechanism for managing allocation of virtual memory buffers to virtual processes on a least recently used basis |
DE69815482T2 (de) * | 1997-12-24 | 2004-04-29 | Texas Instruments Inc., Dallas | Computer Anordnung mit Prozessor und Speicher-Hierarchie und sein Betriebsverfahren |
US6260114B1 (en) | 1997-12-30 | 2001-07-10 | Mcmz Technology Innovations, Llc | Computer cache memory windowing |
US6661421B1 (en) | 1998-05-21 | 2003-12-09 | Mitsubishi Electric & Electronics Usa, Inc. | Methods for operation of semiconductor memory |
US6504550B1 (en) * | 1998-05-21 | 2003-01-07 | Mitsubishi Electric & Electronics Usa, Inc. | System for graphics processing employing semiconductor device |
US6559851B1 (en) | 1998-05-21 | 2003-05-06 | Mitsubishi Electric & Electronics Usa, Inc. | Methods for semiconductor systems for graphics processing |
US6535218B1 (en) * | 1998-05-21 | 2003-03-18 | Mitsubishi Electric & Electronics Usa, Inc. | Frame buffer memory for graphic processing |
KR100308066B1 (ko) * | 1998-06-29 | 2001-10-19 | 박종섭 | 데이터 버스 라인 제어회로 |
US6825848B1 (en) * | 1999-09-17 | 2004-11-30 | S3 Graphics Co., Ltd. | Synchronized two-level graphics processing cache |
US6801203B1 (en) * | 1999-12-22 | 2004-10-05 | Microsoft Corporation | Efficient graphics pipeline with a pixel cache and data pre-fetching |
US6473834B1 (en) * | 1999-12-22 | 2002-10-29 | Unisys | Method and apparatus for prevent stalling of cache reads during return of multiple data words |
US6640289B2 (en) * | 2000-11-15 | 2003-10-28 | Unisys Corporation | Software controlled cache line ownership affinity enhancements in a multiprocessor environment |
US6828977B2 (en) * | 2001-02-15 | 2004-12-07 | Sony Corporation | Dynamic buffer pages |
US6768490B2 (en) * | 2001-02-15 | 2004-07-27 | Sony Corporation | Checkerboard buffer using more than two memory devices |
US6765580B2 (en) * | 2001-02-15 | 2004-07-20 | Sony Corporation | Pixel pages optimized for GLV |
US6795079B2 (en) * | 2001-02-15 | 2004-09-21 | Sony Corporation | Two-dimensional buffer pages |
US6801204B2 (en) * | 2001-02-15 | 2004-10-05 | Sony Corporation, A Japanese Corporation | Checkerboard buffer using memory blocks |
US7205993B2 (en) * | 2001-02-15 | 2007-04-17 | Sony Corporation | Checkerboard buffer using two-dimensional buffer pages and using memory bank alternation |
US6803917B2 (en) * | 2001-02-15 | 2004-10-12 | Sony Corporation | Checkerboard buffer using memory bank alternation |
US7038691B2 (en) * | 2001-02-15 | 2006-05-02 | Sony Corporation | Two-dimensional buffer pages using memory bank alternation |
US7379069B2 (en) * | 2001-02-15 | 2008-05-27 | Sony Corporation | Checkerboard buffer using two-dimensional buffer pages |
US6992674B2 (en) * | 2001-02-15 | 2006-01-31 | Sony Corporation | Checkerboard buffer using two-dimensional buffer pages and using state addressing |
US6831649B2 (en) * | 2001-02-15 | 2004-12-14 | Sony Corporation | Two-dimensional buffer pages using state addressing |
US6831651B2 (en) * | 2001-02-15 | 2004-12-14 | Sony Corporation | Checkerboard buffer |
US6791557B2 (en) * | 2001-02-15 | 2004-09-14 | Sony Corporation | Two-dimensional buffer pages using bit-field addressing |
US6831650B2 (en) * | 2001-02-15 | 2004-12-14 | Sony Corporation | Checkerboard buffer using sequential memory locations |
US6765579B2 (en) * | 2001-02-15 | 2004-07-20 | Sony Corporation | Pixel pages using combined addressing |
US6850241B2 (en) * | 2001-02-15 | 2005-02-01 | Sony Corporation | Swapped pixel pages |
US7088369B2 (en) * | 2001-02-15 | 2006-08-08 | Sony Corporation | Checkerboard buffer using two-dimensional buffer pages and using bit-field addressing |
US6720969B2 (en) | 2001-05-18 | 2004-04-13 | Sun Microsystems, Inc. | Dirty tag bits for 3D-RAM SRAM |
US6778179B2 (en) | 2001-05-18 | 2004-08-17 | Sun Microsystems, Inc. | External dirty tag bits for 3D-RAM SRAM |
US20030058368A1 (en) * | 2001-09-24 | 2003-03-27 | Mark Champion | Image warping using pixel pages |
JP2003132347A (ja) * | 2001-10-26 | 2003-05-09 | Sony Corp | 画像処理装置 |
US6753870B2 (en) * | 2002-01-30 | 2004-06-22 | Sun Microsystems, Inc. | Graphics system configured to switch between multiple sample buffer contexts |
US6965980B2 (en) * | 2002-02-14 | 2005-11-15 | Sony Corporation | Multi-sequence burst accessing for SDRAM |
US7027064B2 (en) * | 2002-02-28 | 2006-04-11 | Sun Microsystems, Inc. | Active block write-back from SRAM cache to DRAM |
US6812929B2 (en) * | 2002-03-11 | 2004-11-02 | Sun Microsystems, Inc. | System and method for prefetching data from a frame buffer |
US7313764B1 (en) * | 2003-03-06 | 2007-12-25 | Apple Inc. | Method and apparatus to accelerate scrolling for buffered windows |
US7015918B2 (en) * | 2003-06-10 | 2006-03-21 | Lsi Logic Corporation | 2-D luma and chroma DMA optimized for 4 memory banks |
US6977656B1 (en) * | 2003-07-28 | 2005-12-20 | Neomagic Corp. | Two-layer display-refresh and video-overlay arbitration of both DRAM and SRAM memories |
US7091979B1 (en) * | 2003-08-29 | 2006-08-15 | Nvidia Corporation | Pixel load instruction for a programmable graphics processor |
US8860737B2 (en) * | 2003-10-29 | 2014-10-14 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
US7836276B2 (en) * | 2005-12-02 | 2010-11-16 | Nvidia Corporation | System and method for processing thread groups in a SIMD architecture |
US7139003B1 (en) * | 2003-12-15 | 2006-11-21 | Nvidia Corporation | Methods of processing graphics data including reading and writing buffers |
US8174531B1 (en) | 2003-10-29 | 2012-05-08 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US8416242B1 (en) | 2004-05-14 | 2013-04-09 | Nvidia Corporation | Method and system for interpolating level-of-detail in graphics processors |
US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8711155B2 (en) * | 2004-05-14 | 2014-04-29 | Nvidia Corporation | Early kill removal graphics processing system and method |
US20060007234A1 (en) * | 2004-05-14 | 2006-01-12 | Hutchins Edward A | Coincident graphics pixel scoreboard tracking system and method |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
US7079156B1 (en) * | 2004-05-14 | 2006-07-18 | Nvidia Corporation | Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US8411105B1 (en) | 2004-05-14 | 2013-04-02 | Nvidia Corporation | Method and system for computing pixel parameters |
US8432394B1 (en) | 2004-05-14 | 2013-04-30 | Nvidia Corporation | Method and system for implementing clamped z value interpolation in a raster stage of a graphics pipeline |
WO2006061767A1 (en) * | 2004-12-10 | 2006-06-15 | Koninklijke Philips Electronics N.V. | Data processing system and method for cache replacement |
US7434032B1 (en) | 2005-12-13 | 2008-10-07 | Nvidia Corporation | Tracking register usage during multithreaded processing using a scoreboard having separate memory regions and storing sequential register size indicators |
US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US8441497B1 (en) | 2007-08-07 | 2013-05-14 | Nvidia Corporation | Interpolation of vertex attributes in a graphics processor |
US9183607B1 (en) | 2007-08-15 | 2015-11-10 | Nvidia Corporation | Scoreboard cache coherence in a graphics pipeline |
US8244984B1 (en) * | 2008-12-08 | 2012-08-14 | Nvidia Corporation | System and method for cleaning dirty data in an intermediate cache using a data class dependent eviction policy |
US8060700B1 (en) * | 2008-12-08 | 2011-11-15 | Nvidia Corporation | System, method and frame buffer logic for evicting dirty data from a cache using counters and data types |
US8949541B2 (en) * | 2008-12-08 | 2015-02-03 | Nvidia Corporation | Techniques for evicting dirty data from a cache using a notification sorter and count thresholds |
US8464001B1 (en) * | 2008-12-09 | 2013-06-11 | Nvidia Corporation | Cache and associated method with frame buffer managed dirty data pull and high-priority clean mechanism |
CN102301414B (zh) | 2009-01-27 | 2014-12-10 | 三菱电机株式会社 | 状态显示装置以及状态显示装置的显示方法 |
TW201234334A (en) * | 2011-02-15 | 2012-08-16 | Novatek Microelectronics Corp | Driving method for bistable display device and driving device thereof |
US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
US9824009B2 (en) | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
US10102142B2 (en) | 2012-12-26 | 2018-10-16 | Nvidia Corporation | Virtual address based memory reordering |
US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
US10482033B2 (en) | 2016-03-24 | 2019-11-19 | Samsung Electronics Co., Ltd | Method and device for controlling memory |
JP6249120B1 (ja) * | 2017-03-27 | 2017-12-20 | 日本電気株式会社 | プロセッサ |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0228745A3 (en) * | 1985-12-30 | 1990-03-28 | Koninklijke Philips Electronics N.V. | Raster scan video controller provided with an update cache, update cache for use in such video controller, and crt display station comprising such controller |
US5185856A (en) * | 1990-03-16 | 1993-02-09 | Hewlett-Packard Company | Arithmetic and logic processing unit for computer graphics system |
US5450563A (en) * | 1992-10-30 | 1995-09-12 | International Business Machines Corporation | Storage protection keys in two level cache system |
JPH06332664A (ja) * | 1993-03-23 | 1994-12-02 | Toshiba Corp | 表示制御システム |
US5450542A (en) * | 1993-11-30 | 1995-09-12 | Vlsi Technology, Inc. | Bus interface with graphics and system paths for an integrated memory system |
-
1994
- 1994-07-18 US US08/276,814 patent/US5579473A/en not_active Expired - Lifetime
-
1995
- 1995-07-10 EP EP95304809A patent/EP0696023A3/en not_active Withdrawn
- 1995-07-14 JP JP20024995A patent/JP3828184B2/ja not_active Expired - Fee Related
- 1995-07-18 KR KR1019950021726A patent/KR100346817B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP0696023A3 (en) | 1998-02-04 |
US5579473A (en) | 1996-11-26 |
EP0696023A2 (en) | 1996-02-07 |
KR100346817B1 (ko) | 2002-11-30 |
JP3828184B2 (ja) | 2006-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3828184B2 (ja) | フレーム・バッファ・メモリ装置制御装置 | |
JP3779748B2 (ja) | フレーム・バッファ・メモリ、コンピュータ・システム、画素のアクセス方法、及びブロック・フィル動作を行う方法 | |
US5392391A (en) | High performance graphics applications controller | |
US6195106B1 (en) | Graphics system with multiported pixel buffers for accelerated pixel processing | |
US6598136B1 (en) | Data transfer with highly granular cacheability control between memory and a scratchpad area | |
US5561780A (en) | Method and apparatus for combining uncacheable write data into cache-line-sized write buffers | |
US6856320B1 (en) | Demand-based memory system for graphics applications | |
US6076139A (en) | Multimedia computer architecture with multi-channel concurrent memory access | |
US6801207B1 (en) | Multimedia processor employing a shared CPU-graphics cache | |
US5559952A (en) | Display controller incorporating cache memory dedicated for VRAM | |
US6104418A (en) | Method and system for improved memory interface during image rendering | |
US6812929B2 (en) | System and method for prefetching data from a frame buffer | |
US20010049771A1 (en) | Dynamic replacement technique in a shared cache | |
US6795078B2 (en) | Parallel read with source-clear operation | |
JPH0348370A (ja) | メモリアクセス制御回路 | |
JP4545242B2 (ja) | ノンブロッキング・パイプライン・キャッシュ | |
US6741256B2 (en) | Predictive optimizer for DRAM memory | |
US5717896A (en) | Method and apparatus for performing pipeline store instructions using a single cache access pipestage | |
US20020171655A1 (en) | Dirty tag bits for 3D-RAM SRAM | |
US6812928B2 (en) | Performance texture mapping by combining requests for image data | |
US7027064B2 (en) | Active block write-back from SRAM cache to DRAM | |
US5924120A (en) | Method and apparatus for maximizing utilization of an internal processor bus in the context of external transactions running at speeds fractionally greater than internal transaction times | |
US6778179B2 (en) | External dirty tag bits for 3D-RAM SRAM | |
JPH08255107A (ja) | ディスプレイコントローラ | |
JPH06318174A (ja) | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051004 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060104 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060404 |
|
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: 20060606 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060706 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |