JPH09282135A - 描画データ取込み方法およびグラフィックス処理装置 - Google Patents
描画データ取込み方法およびグラフィックス処理装置Info
- Publication number
- JPH09282135A JPH09282135A JP8089427A JP8942796A JPH09282135A JP H09282135 A JPH09282135 A JP H09282135A JP 8089427 A JP8089427 A JP 8089427A JP 8942796 A JP8942796 A JP 8942796A JP H09282135 A JPH09282135 A JP H09282135A
- Authority
- JP
- Japan
- Prior art keywords
- mpu
- fifo
- cache
- space
- drawing command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Digital Computer Display Output (AREA)
- Image Generation (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】
【課題】FIFOからの描画コマンドの取り込み速度を
向上し、高速のグラフィックス処理装置を提供する。 【解決手段】ホストPCからの描画コマンドを保持する
FIFOを、描画コマンド処理用MPUのキャッシュ可
能空間のRFIFO空間A、RFIFO空間Bにマップ
する。MPUはRFIFOからの描画コマンドの取り込
むとき、空間Aを通じて行なう場合は空間Aの各ブロッ
クのリードアドレスを順番に指示するとともに、キャッ
シュのタグフィールドと異なる空間フラグを指示して故
意にキャッシュミスを発生させ、このとき描画コマンド
をFIFOからキャッシュに取込む。処理プログラムの
取り込みは、RFIFO空間Aの取り込み後のキャッシ
ュの空間フラグと同じ値を指示して常にキャッシュヒッ
トさせる。RFIFO空間AとRFIFO空間Bは交互
に読出す。
向上し、高速のグラフィックス処理装置を提供する。 【解決手段】ホストPCからの描画コマンドを保持する
FIFOを、描画コマンド処理用MPUのキャッシュ可
能空間のRFIFO空間A、RFIFO空間Bにマップ
する。MPUはRFIFOからの描画コマンドの取り込
むとき、空間Aを通じて行なう場合は空間Aの各ブロッ
クのリードアドレスを順番に指示するとともに、キャッ
シュのタグフィールドと異なる空間フラグを指示して故
意にキャッシュミスを発生させ、このとき描画コマンド
をFIFOからキャッシュに取込む。処理プログラムの
取り込みは、RFIFO空間Aの取り込み後のキャッシ
ュの空間フラグと同じ値を指示して常にキャッシュヒッ
トさせる。RFIFO空間AとRFIFO空間Bは交互
に読出す。
Description
【0001】
【発明の属する技術分野】本発明はグラフィックス処理
装置に係り、特に、描画コマンド処理用マイクロプロセ
ッサ(MPU)のデータ取込み方式に関する。
装置に係り、特に、描画コマンド処理用マイクロプロセ
ッサ(MPU)のデータ取込み方式に関する。
【0002】
【従来の技術】描画コマンドをFIFOに保持して、描
画コマンド処理用MPUに取込む方式が知られている。
例えば、文献「PIXEL(1993年6月,図形情報
処理センター,p26−36)」に記載のグラフィック
ス処理装置は、ホストPC、描画コマンド格納用FIF
O、描画コマンド処理用MPU及び描画処理装置から構
成されている。
画コマンド処理用MPUに取込む方式が知られている。
例えば、文献「PIXEL(1993年6月,図形情報
処理センター,p26−36)」に記載のグラフィック
ス処理装置は、ホストPC、描画コマンド格納用FIF
O、描画コマンド処理用MPU及び描画処理装置から構
成されている。
【0003】一般に、市販のMPUは内部キャッシュあ
るいは外部キャッシュコントロールを持っている。その
ため、キャッシュ可能空間に配置されている主記憶を読
むときには、ひと固まりのブロックと呼ばれる単位(3
2バイトあるいは64バイト)で、主記憶からキャッシ
ュに一括転送を行う。この動作をフィルと呼ぶ。一度キ
ャッシュにフィルされたブロックは、キャッシュから高
速にリードできる。一方、レジスタやFIFO等はMP
Uの動作に関係なく、ホストPCからの書込みによって
データが変化する。また、ホストPCからのデータ書込
みが既にあったのか否か、即ち、FIFO中に有効デー
タが存在するかを判定する必要がある。このため、レジ
スタやFIFO等はキャッシュ可能空間に配置できず、
キャッシュ不可なI/O空間に配置していた。
るいは外部キャッシュコントロールを持っている。その
ため、キャッシュ可能空間に配置されている主記憶を読
むときには、ひと固まりのブロックと呼ばれる単位(3
2バイトあるいは64バイト)で、主記憶からキャッシ
ュに一括転送を行う。この動作をフィルと呼ぶ。一度キ
ャッシュにフィルされたブロックは、キャッシュから高
速にリードできる。一方、レジスタやFIFO等はMP
Uの動作に関係なく、ホストPCからの書込みによって
データが変化する。また、ホストPCからのデータ書込
みが既にあったのか否か、即ち、FIFO中に有効デー
タが存在するかを判定する必要がある。このため、レジ
スタやFIFO等はキャッシュ可能空間に配置できず、
キャッシュ不可なI/O空間に配置していた。
【0004】上記引用のグラフィックス処理装置におい
ても、描画コマンド格納用FIFOはキャッシュ不可で
ある。従って、描画コマンド処理用MPUはリード命令
で、描画コマンドをFIFOよりMPU内レジスタへ、
レジスタ幅の4バイトまたは8バイトずつ取込み、一
旦、主メモリへ格納してから描画コマンド処理を行う必
要がある。また、FIFOより描画コマンドを取込む
際、4バイト(または8バイト)取込む毎にFIFO空
管理レジスタを読み出し、FIFOが空でないことを確
認する。
ても、描画コマンド格納用FIFOはキャッシュ不可で
ある。従って、描画コマンド処理用MPUはリード命令
で、描画コマンドをFIFOよりMPU内レジスタへ、
レジスタ幅の4バイトまたは8バイトずつ取込み、一
旦、主メモリへ格納してから描画コマンド処理を行う必
要がある。また、FIFOより描画コマンドを取込む
際、4バイト(または8バイト)取込む毎にFIFO空
管理レジスタを読み出し、FIFOが空でないことを確
認する。
【0005】
【発明が解決しようとする課題】上記したように、従来
のグラフィックス処理装置では、描画コマンド格納用F
IFOにキャッシュが利用できず、MPUから4バイト
または8バイト毎に、FIFOをI/O空間でリードし
ていた。I/O空間のリードはキャッシュのリードに比
べ5〜10倍の時間を要し、取り込み処理速度が遅くな
る欠点がある。一般に、グラフィックス処理装置の取り
込みデータ(描画コマンド)は多量となることが多く、
高速処理を実現する上で隘路の一つとなっていた。
のグラフィックス処理装置では、描画コマンド格納用F
IFOにキャッシュが利用できず、MPUから4バイト
または8バイト毎に、FIFOをI/O空間でリードし
ていた。I/O空間のリードはキャッシュのリードに比
べ5〜10倍の時間を要し、取り込み処理速度が遅くな
る欠点がある。一般に、グラフィックス処理装置の取り
込みデータ(描画コマンド)は多量となることが多く、
高速処理を実現する上で隘路の一つとなっていた。
【0006】さらに、FIFOより描画コマンドを4バ
イト(または8バイト)取込む毎に、FIFOが空でな
いことを確認しているため、描画コマンド取込みのオー
バーヘッドが実際のデータ取込処理時間の約2倍になる
という問題があった。
イト(または8バイト)取込む毎に、FIFOが空でな
いことを確認しているため、描画コマンド取込みのオー
バーヘッドが実際のデータ取込処理時間の約2倍になる
という問題があった。
【0007】本発明の目的は、従来技術の問題点に鑑
み、FIFOをキャッシュ可能空間に割当てる工夫によ
って取り込み処理速度を高め、且つ、FIFO空判定の
ためのオーバーヘッドを排除した描画データの取込み方
式と、高速な描画コマンド取込みによる高性能ラフィッ
クス処理装置を提供することにある。
み、FIFOをキャッシュ可能空間に割当てる工夫によ
って取り込み処理速度を高め、且つ、FIFO空判定の
ためのオーバーヘッドを排除した描画データの取込み方
式と、高速な描画コマンド取込みによる高性能ラフィッ
クス処理装置を提供することにある。
【0008】
【課題を解決するための手段】上記目的は、外部から入
力される描画コマンドをFIFOを介して取り込むグラ
フィックス処理装置の描画データ取込み方法において、
予め、描画コマンド処理用のMPUのキャッシュ可能空
間であって、キャッシュメモリのマッピング領域の一部
に重複して前記FIFOをマッピングし、前記MPU
は、FIFOマッピング領域を読出すときキャッシュミ
スを発生させ、FIFOからキャッシュメモリへブロッ
ク単位の描画コマンドを一括転送することにより達成さ
れる。
力される描画コマンドをFIFOを介して取り込むグラ
フィックス処理装置の描画データ取込み方法において、
予め、描画コマンド処理用のMPUのキャッシュ可能空
間であって、キャッシュメモリのマッピング領域の一部
に重複して前記FIFOをマッピングし、前記MPU
は、FIFOマッピング領域を読出すときキャッシュミ
スを発生させ、FIFOからキャッシュメモリへブロッ
ク単位の描画コマンドを一括転送することにより達成さ
れる。
【0009】前記FIFOのマッピングは、前記キャッ
シュメモリを一度にマッピングできる範囲を超えた複数
の空間に行ない、一つの空間のFIFOマッピング領域
の読み出し後は次の空間のFIFOマッピング領域の読
み出しへと交互ないしサイクリックにシフトして、前記
キャッシュミスを発生させることを特徴とする。このと
き、キャッシュのブロック毎に設定される空間フラグと
異なる空間フラグを指示する。
シュメモリを一度にマッピングできる範囲を超えた複数
の空間に行ない、一つの空間のFIFOマッピング領域
の読み出し後は次の空間のFIFOマッピング領域の読
み出しへと交互ないしサイクリックにシフトして、前記
キャッシュミスを発生させることを特徴とする。このと
き、キャッシュのブロック毎に設定される空間フラグと
異なる空間フラグを指示する。
【0010】また、上記目的は、外部から入力される描
画コマンドを保持するFIFO、描画コマンド処理用の
MPU、該MPUのキャッシュ可能空間にマッピングさ
れるキャッシュメモリ及び表示装置を備えるグラフィッ
クス処理装置において、前記MPUのキャッシュ可能空
間であって、前記キャッシュメモリを一度にマッピング
できる範囲を越えた複数の空間に前記FIFOをマッピ
ングするとともに、前記キャッシュメモリのキャッシュ
ヒット/キャッシュミスを判定する制御機能を前記MP
Uに有し、前記MPUから前記FIFOを読出すときは
キャッシュミスを発生させ、FIFOからブロック単位
の描画コマンドの転送を可能にしたことにより達成され
る。
画コマンドを保持するFIFO、描画コマンド処理用の
MPU、該MPUのキャッシュ可能空間にマッピングさ
れるキャッシュメモリ及び表示装置を備えるグラフィッ
クス処理装置において、前記MPUのキャッシュ可能空
間であって、前記キャッシュメモリを一度にマッピング
できる範囲を越えた複数の空間に前記FIFOをマッピ
ングするとともに、前記キャッシュメモリのキャッシュ
ヒット/キャッシュミスを判定する制御機能を前記MP
Uに有し、前記MPUから前記FIFOを読出すときは
キャッシュミスを発生させ、FIFOからブロック単位
の描画コマンドの転送を可能にしたことにより達成され
る。
【0011】前記キャッシュメモリは、ダイレクトマッ
プキャッシュまたはセットアソシエイティブキャッシュ
であることを特徴とする。
プキャッシュまたはセットアソシエイティブキャッシュ
であることを特徴とする。
【0012】さらに、上記目的は、外部から入力される
描画コマンドを保持するFIFO、描画コマンド処理用
のMPU、該MPUのキャッシュ可能空間にマッピング
されるメモリ及び表示装置を備えるグラフィックス処理
装置において、前記FIFOは、FIFO空時に描画コ
マンドの代りにFIFO空を示特別な値(NOPコマン
ド)をMPUに出力する手段を設けたことにより達成さ
れる。前記メモリは、該MPUのキャッシュ可能空間に
マッピングされるキャッシュメモリであり、前記FIF
Oは前記キャッシュ可能空間にマッピングされる。
描画コマンドを保持するFIFO、描画コマンド処理用
のMPU、該MPUのキャッシュ可能空間にマッピング
されるメモリ及び表示装置を備えるグラフィックス処理
装置において、前記FIFOは、FIFO空時に描画コ
マンドの代りにFIFO空を示特別な値(NOPコマン
ド)をMPUに出力する手段を設けたことにより達成さ
れる。前記メモリは、該MPUのキャッシュ可能空間に
マッピングされるキャッシュメモリであり、前記FIF
Oは前記キャッシュ可能空間にマッピングされる。
【0013】これにより、読み出しのオーバヘッドが低
減できるとともに、NOPコマンドを受信したMPU
は、ミスキャッシュを発生してFIFOをキャッシュす
ることで、同じアドレスについて再び読むことができ
る。
減できるとともに、NOPコマンドを受信したMPU
は、ミスキャッシュを発生してFIFOをキャッシュす
ることで、同じアドレスについて再び読むことができ
る。
【0014】
【発明の実施の形態】以下、本発明の実施の形態を詳細
に説明する。まず、図1〜図5を参照して、実施の形態
1を説明する。
に説明する。まず、図1〜図5を参照して、実施の形態
1を説明する。
【0015】図2は、グラフィックス処理システムの構
成図である。本システムはホストとなるパソコン(P
C)101、グラフィックス処理装置(GP)102、
描画処理装置103、表示装置104を有している。
成図である。本システムはホストとなるパソコン(P
C)101、グラフィックス処理装置(GP)102、
描画処理装置103、表示装置104を有している。
【0016】ホストPC101は、2次元または3次元
の矩形、直線などの描画要求を、描画コマンドにしてG
P(グラフィックス処理装置)102へ送る。GP10
2は受信した描画コマンドに対し、座標変換、隠れ面処
理、クリッピング処理などを行い、RMコマンド(リフ
レッシュメモリコマンド)に変換して、描画処理装置1
03へ送信する。描画処理装置103はRMコマンドに
従って描画を行い、結果を表示装置104へ表示する。
なお、座標変換や隠れ面処理等を行う処理プログラム
は、パワーオン直後にホストPC101よりGP102
に送られる。
の矩形、直線などの描画要求を、描画コマンドにしてG
P(グラフィックス処理装置)102へ送る。GP10
2は受信した描画コマンドに対し、座標変換、隠れ面処
理、クリッピング処理などを行い、RMコマンド(リフ
レッシュメモリコマンド)に変換して、描画処理装置1
03へ送信する。描画処理装置103はRMコマンドに
従って描画を行い、結果を表示装置104へ表示する。
なお、座標変換や隠れ面処理等を行う処理プログラム
は、パワーオン直後にホストPC101よりGP102
に送られる。
【0017】MSI110はホストPC101とGP1
02のインターフェース、GPI112はMPU113
とRFIFO(読み出し用FIFO)111及びWFI
FO(書き込み用FIFO)115のインターフェー
ス、GPI116はGP102と描画処理装置103の
インターフェースである。
02のインターフェース、GPI112はMPU113
とRFIFO(読み出し用FIFO)111及びWFI
FO(書き込み用FIFO)115のインターフェー
ス、GPI116はGP102と描画処理装置103の
インターフェースである。
【0018】描画コマンド処理用のMPU113は、ホ
ストPCからRFIFO111に書込まれた描画コマン
ドを読み出し、座標変換、隠れ面処理、クリッピングな
どを行い、RMコマンドの形式でWFIFO115に書
込む。本実施例におけるMPU113は主メモリを持た
ずに、キャッシュメモリであるPM114のみで動作す
る。
ストPCからRFIFO111に書込まれた描画コマン
ドを読み出し、座標変換、隠れ面処理、クリッピングな
どを行い、RMコマンドの形式でWFIFO115に書
込む。本実施例におけるMPU113は主メモリを持た
ずに、キャッシュメモリであるPM114のみで動作す
る。
【0019】図1に、描画コマンド処理用MPUから見
たメモリマップを示す。本例はダイレクトマップのキャ
ッシュである。中央部は、MPUから見えるアドレス空
間で、キャッシュ可能空間とキャッシュ不可空間からな
る。キャッシュ不可空間はI/O等や未実装のアドレス
領域となる。
たメモリマップを示す。本例はダイレクトマップのキャ
ッシュである。中央部は、MPUから見えるアドレス空
間で、キャッシュ可能空間とキャッシュ不可空間からな
る。キャッシュ不可空間はI/O等や未実装のアドレス
領域となる。
【0020】本例では主メモリを持たないので、キャッ
シュ可能空間にはPMアドレスが割り付けられる。MP
Uから見たPMアドレスは、空間Aと空間Bの双方に割
付ける。空間Aに一度にマッピングできる範囲(この例
では、PMの全容量2Mバイト)を割付け、空間Aの先
頭から1kバイトをRFIFO空間Aとし、続いて処理
プログラム空間としている。空間Aに続く空間Bの先頭
には、RFIFO空間Bを割り付ける。
シュ可能空間にはPMアドレスが割り付けられる。MP
Uから見たPMアドレスは、空間Aと空間Bの双方に割
付ける。空間Aに一度にマッピングできる範囲(この例
では、PMの全容量2Mバイト)を割付け、空間Aの先
頭から1kバイトをRFIFO空間Aとし、続いて処理
プログラム空間としている。空間Aに続く空間Bの先頭
には、RFIFO空間Bを割り付ける。
【0021】これにより、RFIFO空間(ここでは、
1kバイト)は、キャッシュの1回目でリードされる空
間Aと、2回目でリードされる空間Bの両方に割り付け
られ、どちらからでもリード可能となる。この空間A,
Bをタグとして、MPUのリードが空間Aから空間Bま
たはその反対に変わるときにキャッシュミスを発生さ
せ、RFIFOからブロック単位の一括読み取りを行な
う。
1kバイト)は、キャッシュの1回目でリードされる空
間Aと、2回目でリードされる空間Bの両方に割り付け
られ、どちらからでもリード可能となる。この空間A,
Bをタグとして、MPUのリードが空間Aから空間Bま
たはその反対に変わるときにキャッシュミスを発生さ
せ、RFIFOからブロック単位の一括読み取りを行な
う。
【0022】即ち、MPUがRFIFO空間Aを通じて
PMの描画コマンドリードしたとき、キャッシュミスが
発生すると、RFIFOからキャッシュへ(PM)のフ
ィルが発生し、1ブロックの描画コマンドを取込むこと
ができる。RFIFO空間Aの終りまでリードしたと
き、次に、RFIFO空間Bをリードすると、ダイレク
トマップで一度にキャッシュできる範囲を越えてマッピ
ングしているため、再びキャッシュミスが発生して、R
FIFOから新たな描画コマンドを取込むことができ
る。以後、同様にして空間Aと空間Bを交互に用いるこ
とにより、RFIFOの描画コマンドを次々と取込むと
ができる。
PMの描画コマンドリードしたとき、キャッシュミスが
発生すると、RFIFOからキャッシュへ(PM)のフ
ィルが発生し、1ブロックの描画コマンドを取込むこと
ができる。RFIFO空間Aの終りまでリードしたと
き、次に、RFIFO空間Bをリードすると、ダイレク
トマップで一度にキャッシュできる範囲を越えてマッピ
ングしているため、再びキャッシュミスが発生して、R
FIFOから新たな描画コマンドを取込むことができ
る。以後、同様にして空間Aと空間Bを交互に用いるこ
とにより、RFIFOの描画コマンドを次々と取込むと
ができる。
【0023】図3に、描画コマンドのフォーマットを示
す。同図(a)のように、コマンドは8バイト単位で、
8バイトのヘッダの後にデータが続く。ヘッダはデータ
数を表すLフィールドと、コマンドコードを示すCフィ
ールドからなる。同図(b)に、Cフィールドのコマン
コードの一例を示す。
す。同図(a)のように、コマンドは8バイト単位で、
8バイトのヘッダの後にデータが続く。ヘッダはデータ
数を表すLフィールドと、コマンドコードを示すCフィ
ールドからなる。同図(b)に、Cフィールドのコマン
コードの一例を示す。
【0024】ヘッダに続くデータは、コマンド種別によ
って異なる。図示はポリゴンコマンドの例である。ポリ
ゴンコマンドは、塗りつぶした三角形をシェーディン
グ、テクスチャマップなどを施して描画するコマンドで
ある。flagはシェーディングの種別、テクスチャマ
ップの有無などを示す。Nx,Ny,Nzはポリゴンの
法線ベクトルであり、次に各頂点の座標値X,Y,Z,
Wと色R,G,B,Aが続く。
って異なる。図示はポリゴンコマンドの例である。ポリ
ゴンコマンドは、塗りつぶした三角形をシェーディン
グ、テクスチャマップなどを施して描画するコマンドで
ある。flagはシェーディングの種別、テクスチャマ
ップの有無などを示す。Nx,Ny,Nzはポリゴンの
法線ベクトルであり、次に各頂点の座標値X,Y,Z,
Wと色R,G,B,Aが続く。
【0025】図4は、RFIFOの一構成図である。R
FIFO111は、ホストPC101からの描画コマン
ドを一時格納するFIFOで、ホストPC101からは
8バイト/エントリ、128エントリのFIFOに見え
る。一方、MPUキャッシュ空間の一部へFIFO空間
をマッピングしているので、MPU113からは64バ
イト/ブロック、16ブロックのメモリに見える。
FIFO111は、ホストPC101からの描画コマン
ドを一時格納するFIFOで、ホストPC101からは
8バイト/エントリ、128エントリのFIFOに見え
る。一方、MPUキャッシュ空間の一部へFIFO空間
をマッピングしているので、MPU113からは64バ
イト/ブロック、16ブロックのメモリに見える。
【0026】FMEM201は、1Kバイトのメモリ
で、RFIFO111に書込まれた描画コマンドを格納
する。W_PTR203は、次に描画コマンドを格納す
るエントリ番号を保持し、描画コマンド格納毎にカウン
トアップする。R_PTR202は、MPU113より
最後にリードされたエントリ番号を保持する。
で、RFIFO111に書込まれた描画コマンドを格納
する。W_PTR203は、次に描画コマンドを格納す
るエントリ番号を保持し、描画コマンド格納毎にカウン
トアップする。R_PTR202は、MPU113より
最後にリードされたエントリ番号を保持する。
【0027】さらに、本実施例のRFIFO111はT
EST204、NOPGen205、SEL206を有
している。TEST204は、W_PTR203とR_
PTR202を用いてFIFO空(FMEM201
空)、すなわちホストPC101からの描画コマンドの
有無を判定し、SEL206を制御する。NOPGen
205は、FIFO空時にNOPコマンドを生成する。
SEL206は、TEST204の判定結果をもとに、
FIFO非空時はFMEM201を、FIFO空時はN
OPGen205を選択する。
EST204、NOPGen205、SEL206を有
している。TEST204は、W_PTR203とR_
PTR202を用いてFIFO空(FMEM201
空)、すなわちホストPC101からの描画コマンドの
有無を判定し、SEL206を制御する。NOPGen
205は、FIFO空時にNOPコマンドを生成する。
SEL206は、TEST204の判定結果をもとに、
FIFO非空時はFMEM201を、FIFO空時はN
OPGen205を選択する。
【0028】これにより、MPU113がRFIFO1
11から描画コマンドを読取るとき、FIFO非空時は
描画コマンド、FIFO空時はNOPコマンドが読出さ
れる。MPU113はNOPコマンドを読むとRFIF
O空と判定し、キャッシュをミスヒットさせて、再びR
FIFO111をリードする。このため、MPU113
は前回リード命令に用いた空間AまたはBを変更してリ
ードする。なお、FIFO空のときはNOPコマンドが
出力されるので、MPUが描画コマンドのリードの度に
実施していた、従来のFIFO空判定のためのステータ
スリードは不要となる。
11から描画コマンドを読取るとき、FIFO非空時は
描画コマンド、FIFO空時はNOPコマンドが読出さ
れる。MPU113はNOPコマンドを読むとRFIF
O空と判定し、キャッシュをミスヒットさせて、再びR
FIFO111をリードする。このため、MPU113
は前回リード命令に用いた空間AまたはBを変更してリ
ードする。なお、FIFO空のときはNOPコマンドが
出力されるので、MPUが描画コマンドのリードの度に
実施していた、従来のFIFO空判定のためのステータ
スリードは不要となる。
【0029】図5に、MPUから見たメモリマップの詳
細な模式図を示す。図のPMはPM114の格納形式を
示し、64バイト/ブロック、2Mバイトのダイレクト
マップ、コピーバックのキャッシュメモリである。PM
のブロックC0〜C15は、空間Aまたは空間Bを通じ
てFMEMをキャッシュする。図のFMEMはFEFM
201の格納形式を示し、PMのブロックC0,C
1,,..,C15がそれぞれ、FMEMのF0,F
1,..,F15をキャッシュする。描画コマンドはF
0,F1,..,F15,F0...の順に格納され
る。
細な模式図を示す。図のPMはPM114の格納形式を
示し、64バイト/ブロック、2Mバイトのダイレクト
マップ、コピーバックのキャッシュメモリである。PM
のブロックC0〜C15は、空間Aまたは空間Bを通じ
てFMEMをキャッシュする。図のFMEMはFEFM
201の格納形式を示し、PMのブロックC0,C
1,,..,C15がそれぞれ、FMEMのF0,F
1,..,F15をキャッシュする。描画コマンドはF
0,F1,..,F15,F0...の順に格納され
る。
【0030】一般に、キャッシュメモリは一括伝送単位
の複数ブロックからなり、主メモリとの間でデータのや
りとりをする。各ブロックは、キャッシュされたデータ
及びそのブロックデータの有効/無効を示すvalid
フラグと、そのブロックがキャッシュしているデータの
メモリ空間内でのアドレスを示す空間フラグを持つ。ロ
ード命令実行時、MPUはvalidフラグと空間フラ
グから、目的のデータがキャッシュ上に存在するか判断
する。キャッシュ上に存在した場合(キャッシュヒット
時)、MPUは目的のデータをキャッシュメモリから取
得する。キャッシュ上に存在しない場合(キャッシュミ
スヒット時)、MPUは目的のデータを含む1キャッシ
ュブロック分のデータを主メモリから読み出し、ロード
命令にデータを提供するとともに、キャッシュメモリへ
も格納し、読みだしたデータのアドレスを空間フラグへ
セットする(キャッシュフィル)。
の複数ブロックからなり、主メモリとの間でデータのや
りとりをする。各ブロックは、キャッシュされたデータ
及びそのブロックデータの有効/無効を示すvalid
フラグと、そのブロックがキャッシュしているデータの
メモリ空間内でのアドレスを示す空間フラグを持つ。ロ
ード命令実行時、MPUはvalidフラグと空間フラ
グから、目的のデータがキャッシュ上に存在するか判断
する。キャッシュ上に存在した場合(キャッシュヒット
時)、MPUは目的のデータをキャッシュメモリから取
得する。キャッシュ上に存在しない場合(キャッシュミ
スヒット時)、MPUは目的のデータを含む1キャッシ
ュブロック分のデータを主メモリから読み出し、ロード
命令にデータを提供するとともに、キャッシュメモリへ
も格納し、読みだしたデータのアドレスを空間フラグへ
セットする(キャッシュフィル)。
【0031】本実施形態では、主メモリを持たずにキャ
ッシュミスヒット時、キャッシュメモリであるPM11
4に、MPU113の処理プログラムを格納し、MPU
113は目的のデータを含む1キャッシュブロック分の
データをFMEM201から読み出し、キャッシュフィ
ルする。空間Aは一度にマッピングできる範囲(図示例
はキャッシュメモリの容量で2Mバイト)に設定され、
空間Bはその範囲に続いてマッピングされている。空間
Aの先頭には、RFIFO空間A(図示例は1kバイ
ト)、続いてMPU113の処理プログラムが確保され
る。さらに、空間Bの先頭に空間Aと同サイズのRFI
FO空間Bが確保される。なお、主メモリを持つ場合に
は、それに必要なキャッシュ空間が確保される。
ッシュミスヒット時、キャッシュメモリであるPM11
4に、MPU113の処理プログラムを格納し、MPU
113は目的のデータを含む1キャッシュブロック分の
データをFMEM201から読み出し、キャッシュフィ
ルする。空間Aは一度にマッピングできる範囲(図示例
はキャッシュメモリの容量で2Mバイト)に設定され、
空間Bはその範囲に続いてマッピングされている。空間
Aの先頭には、RFIFO空間A(図示例は1kバイ
ト)、続いてMPU113の処理プログラムが確保され
る。さらに、空間Bの先頭に空間Aと同サイズのRFI
FO空間Bが確保される。なお、主メモリを持つ場合に
は、それに必要なキャッシュ空間が確保される。
【0032】PM114はタグとしてA,Bどちらの空
間がキャッシュされているかを保持する空間フラグと、
ブロック内データの有効/無効を示すvalidフラグ
を持つ。これらタグは、フィル動作の際に、データと共
にMPU113に渡される。
間がキャッシュされているかを保持する空間フラグと、
ブロック内データの有効/無効を示すvalidフラグ
を持つ。これらタグは、フィル動作の際に、データと共
にMPU113に渡される。
【0033】MPU113はその処理プログラムに従
い、描画コマンドのリード、RMコマンドへの変換処
理、WFIFO115に書込処理を繰り返し行なう。こ
の描画コマンドのリードの際に、MPU113は読み出
しアドレスと空間フラグを用いてキャッシュヒット/ミ
スヒットを判定し、ミスヒットを検出すると、MPU1
13はフィル動作を行ない、RFIFO111からコマ
ンドを取り込む。
い、描画コマンドのリード、RMコマンドへの変換処
理、WFIFO115に書込処理を繰り返し行なう。こ
の描画コマンドのリードの際に、MPU113は読み出
しアドレスと空間フラグを用いてキャッシュヒット/ミ
スヒットを判定し、ミスヒットを検出すると、MPU1
13はフィル動作を行ない、RFIFO111からコマ
ンドを取り込む。
【0034】たとえば、空間AからF0,F1,..,
F15をリードした後、空間Bのフラグをもつロード命
令でF0,F1,..,F15をリードすると、PMの
空間フラグと異なるため必ずキャッシュミスヒットを判
定し、MPU113はフィル動作を行う。
F15をリードした後、空間Bのフラグをもつロード命
令でF0,F1,..,F15をリードすると、PMの
空間フラグと異なるため必ずキャッシュミスヒットを判
定し、MPU113はフィル動作を行う。
【0035】MPU113はフィル動作により、FME
M201より1ブロック(64バイト)分のデータを一
括リードし、フィル動作の原因となったロード命令にデ
ータの一つを供給するとともに、キャッシュの該当ブロ
ックフィールドに1ブロック分のデータを書込む。ま
た、リードアドレスから判断した空間フラグの値(A=
0,B=1)をタグフィールドに書込む。
M201より1ブロック(64バイト)分のデータを一
括リードし、フィル動作の原因となったロード命令にデ
ータの一つを供給するとともに、キャッシュの該当ブロ
ックフィールドに1ブロック分のデータを書込む。ま
た、リードアドレスから判断した空間フラグの値(A=
0,B=1)をタグフィールドに書込む。
【0036】MPU113がロード命令によりリードし
た空間と、その空間に対応するPMのブロックが同じ空
間(例えば両方ともA空間)ならば、MPU113はキ
ャッシュヒットと判定し、PMにキャッシュした描画コ
マンドをリードする。一方、空間フラグ(タグ値)が異
なる場合、MPU113はキャッシュミスヒットと判定
し、FMEM201からPM114へのキャッシュフィ
ル動作を行う。
た空間と、その空間に対応するPMのブロックが同じ空
間(例えば両方ともA空間)ならば、MPU113はキ
ャッシュヒットと判定し、PMにキャッシュした描画コ
マンドをリードする。一方、空間フラグ(タグ値)が異
なる場合、MPU113はキャッシュミスヒットと判定
し、FMEM201からPM114へのキャッシュフィ
ル動作を行う。
【0037】なお、ブロックC16以降はタグを持たな
い。しかし、MPU113にこの領域を常にキャッシュ
ヒットと判定させるために、GPI112がMPU11
3のリードアドレスからタグ値を算出してMPU113
へ渡す。本システムの場合、ブロックC16以降は空間
Aに位置付けられているので、タグ値は常に空間A(=
0)となる。
い。しかし、MPU113にこの領域を常にキャッシュ
ヒットと判定させるために、GPI112がMPU11
3のリードアドレスからタグ値を算出してMPU113
へ渡す。本システムの場合、ブロックC16以降は空間
Aに位置付けられているので、タグ値は常に空間A(=
0)となる。
【0038】図6に、キャッシュメモリに格納されてい
るMPU処理プログラムのフローチャートを示す。この
プログラムは、空間AとしてブロックC16以降に格納
されている。MPU処理プログラムは、次にリードすべ
きアドレスを保持するカレントバンクと呼ばれる変数を
持つ。
るMPU処理プログラムのフローチャートを示す。この
プログラムは、空間AとしてブロックC16以降に格納
されている。MPU処理プログラムは、次にリードすべ
きアドレスを保持するカレントバンクと呼ばれる変数を
持つ。
【0039】まず、初期化処理としてMPUのキャッシ
ュ操作命令を用いて、validフラグに0をライトし
てC0〜C15を無効化(空)し(S101)、カレン
トバンクを空間Aの先頭=A0に設定する(S10
2)。次に、カレントバンクA0に対応するFMEMの
F0をリードし、描画コマンドヘッダを取込む(S10
3)。取り込んだコマンドがNOPか判定し(S10
4)、NOPコマンドの場合はRFIFO111が空な
のでカレントバンクに対応するPMのブロックを無効化
し(S105)、再び同じカレントバンクのヘッダをリ
ードする。
ュ操作命令を用いて、validフラグに0をライトし
てC0〜C15を無効化(空)し(S101)、カレン
トバンクを空間Aの先頭=A0に設定する(S10
2)。次に、カレントバンクA0に対応するFMEMの
F0をリードし、描画コマンドヘッダを取込む(S10
3)。取り込んだコマンドがNOPか判定し(S10
4)、NOPコマンドの場合はRFIFO111が空な
のでカレントバンクに対応するPMのブロックを無効化
し(S105)、再び同じカレントバンクのヘッダをリ
ードする。
【0040】ステップS104で、コマンド種別がNO
Pでない場合、MPUはホストPCからの描画コマンド
とみなしてヘッダに続くコマンドデータをリードし(S
106)、描画コマンド内容に応じて座標変換や隠れ面
処理あるいはクリッピングなどとRMコマンドへの変換
を含む変換処理を行ない(S107)、RMコマンドを
WFIFO115へライトする(s108)。次に、カ
レントバンクがA15またはB15か判定し(S10
9)、何れでもない場合はカレントバンクを+1する
(S110)。カレントバンクがA15の場合は、A0
〜A15を既にリードしたので、カレントバンクをB0
に設定する(S111)。同様に、カレントバンクがB
15の場合は、A0に設定する(S112)。カレント
バンクの更新後、ステップS103に戻って、次の描画
コマンドを取込む。
Pでない場合、MPUはホストPCからの描画コマンド
とみなしてヘッダに続くコマンドデータをリードし(S
106)、描画コマンド内容に応じて座標変換や隠れ面
処理あるいはクリッピングなどとRMコマンドへの変換
を含む変換処理を行ない(S107)、RMコマンドを
WFIFO115へライトする(s108)。次に、カ
レントバンクがA15またはB15か判定し(S10
9)、何れでもない場合はカレントバンクを+1する
(S110)。カレントバンクがA15の場合は、A0
〜A15を既にリードしたので、カレントバンクをB0
に設定する(S111)。同様に、カレントバンクがB
15の場合は、A0に設定する(S112)。カレント
バンクの更新後、ステップS103に戻って、次の描画
コマンドを取込む。
【0041】図7に、処理途中におけるメモリ空間の模
式図を示す。図示はMPU113が描画コマンド1,
2,..,15の処理を終え、コマンド16の処理に移
るところである。コマンド1〜15はA空間を通じてリ
ードしたため、PMのC0〜14にはコマンド1〜15
が取込まれ、タグはA空間を示している。
式図を示す。図示はMPU113が描画コマンド1,
2,..,15の処理を終え、コマンド16の処理に移
るところである。コマンド1〜15はA空間を通じてリ
ードしたため、PMのC0〜14にはコマンド1〜15
が取込まれ、タグはA空間を示している。
【0042】ここで、MPU113がカレントバンクA
15を通じて、コマンド16のヘッダをリードすると、
C15のタグはB空間を示しているので、キャッシュミ
スヒットによるフィル動作が起き、コマンド16の全体
(64バイト)がFMEMからPMのC15へ一括取込
まれ、C15のタグがAに変る。この結果、コマンド1
6の座標データ等は、MPUのフィル動作によりキャッ
シュされているので、MPUはタグ値=0を用いてPM
へキャッシュヒットし、高速にリードできる。
15を通じて、コマンド16のヘッダをリードすると、
C15のタグはB空間を示しているので、キャッシュミ
スヒットによるフィル動作が起き、コマンド16の全体
(64バイト)がFMEMからPMのC15へ一括取込
まれ、C15のタグがAに変る。この結果、コマンド1
6の座標データ等は、MPUのフィル動作によりキャッ
シュされているので、MPUはタグ値=0を用いてPM
へキャッシュヒットし、高速にリードできる。
【0043】コマンド16はA15を通じてリードした
ので、カレントバンクが更新され(S111)、次のコ
マンド17はB0を通じてリードする。しかし、PMの
C0のタグは空間Aのため、キャッシュミスとなる。こ
の結果、FMEMのコマンド17がPMのC0へ取込ま
れC0のタグがBに変る。
ので、カレントバンクが更新され(S111)、次のコ
マンド17はB0を通じてリードする。しかし、PMの
C0のタグは空間Aのため、キャッシュミスとなる。こ
の結果、FMEMのコマンド17がPMのC0へ取込ま
れC0のタグがBに変る。
【0044】コマンド17に続いて、コマンド18の処
理が同様にして終り、MPU113が次のコマンドのヘ
ッダをリードすると、図示のようにFMEMのF2は空
のため、NOPコマンドがリードされる。MPU113
はこれによりRFIFO空と判断し、Validフラグを用
いてC2を無効化した後、再び同じアドレスの描画コマ
ンドを読みにいく。
理が同様にして終り、MPU113が次のコマンドのヘ
ッダをリードすると、図示のようにFMEMのF2は空
のため、NOPコマンドがリードされる。MPU113
はこれによりRFIFO空と判断し、Validフラグを用
いてC2を無効化した後、再び同じアドレスの描画コマ
ンドを読みにいく。
【0045】以上、本実施形態によれば、キャッシュヒ
ット時、MPUは4MPUサイクル/8バイトで取込
め、キャッシュミスヒット時のキャッシュフィルには7
8MPUサイクル/64バイトとなる。一方、従来のM
PUのリード命令によるFMEMリードは42MPUサ
イクル/8バイトとなる。従って、MPUが1ブロック
(64バイト)の描画コマンドをリードする場合の所要
MPUサイクル数は、従来のMPUリード命令による3
36MPUサイクル(42*8)に対し、本例では11
0MPUサイクル(78+4*8)と3倍以上の性能向
上となる。
ット時、MPUは4MPUサイクル/8バイトで取込
め、キャッシュミスヒット時のキャッシュフィルには7
8MPUサイクル/64バイトとなる。一方、従来のM
PUのリード命令によるFMEMリードは42MPUサ
イクル/8バイトとなる。従って、MPUが1ブロック
(64バイト)の描画コマンドをリードする場合の所要
MPUサイクル数は、従来のMPUリード命令による3
36MPUサイクル(42*8)に対し、本例では11
0MPUサイクル(78+4*8)と3倍以上の性能向
上となる。
【0046】また、ホストPCからの描画コマンドがF
IFOに無いときはNOPコマンドが出力されるので、
MPUが取り込みの度に空判定するオーバーヘッドが回
避でき、描画コマンドの取り込み速度を向上できる。
IFOに無いときはNOPコマンドが出力されるので、
MPUが取り込みの度に空判定するオーバーヘッドが回
避でき、描画コマンドの取り込み速度を向上できる。
【0047】さらに、FIFOから読んだ描画コマンド
を一端メモリへ格納する必要がなく、描画コマンド処理
を高速化できる。
を一端メモリへ格納する必要がなく、描画コマンド処理
を高速化できる。
【0048】〔実施の形態2〕上記した実施の形態1で
は、ダイレクトマップキャッシュの例を示した。次に、
セットアソシエイティブキャッシュによる実施の形態を
説明する。セットアソシエイティブキャッシュはダイレ
クトマップキャッシュを複数組設けたもので、ダイレク
トマップに比べヒット率の高くなることが知られてい
る。この場合も、FMEMをマップする空間の数を増や
し、順番にリードすることでキャッシュミスを発生させ
ることができ、実施形態1と同様の描画データの取込み
実現できる。グラフィック処理システム及びRFIFO
は、上記の図1、図4と同様の構成である。
は、ダイレクトマップキャッシュの例を示した。次に、
セットアソシエイティブキャッシュによる実施の形態を
説明する。セットアソシエイティブキャッシュはダイレ
クトマップキャッシュを複数組設けたもので、ダイレク
トマップに比べヒット率の高くなることが知られてい
る。この場合も、FMEMをマップする空間の数を増や
し、順番にリードすることでキャッシュミスを発生させ
ることができ、実施形態1と同様の描画データの取込み
実現できる。グラフィック処理システム及びRFIFO
は、上記の図1、図4と同様の構成である。
【0049】図8に、本実施形態によるMPUから見た
メモリ空間の模式図を示す。図示は、2ウェイセットア
ソシエイティブキャッシュの例である。ダイレクトマッ
プと異なり、キャッシュが2セット有り、FMEMはX
0〜X15及びY0〜Y15にキャッシュされる(F0
がX0及びY0に、F1はX1及びY1にキャッシュさ
れる)。どちらにキャッシュされるかはLRU(Lea
st−RecentlyUsed)アルゴリズムにより
決定する。
メモリ空間の模式図を示す。図示は、2ウェイセットア
ソシエイティブキャッシュの例である。ダイレクトマッ
プと異なり、キャッシュが2セット有り、FMEMはX
0〜X15及びY0〜Y15にキャッシュされる(F0
がX0及びY0に、F1はX1及びY1にキャッシュさ
れる)。どちらにキャッシュされるかはLRU(Lea
st−RecentlyUsed)アルゴリズムにより
決定する。
【0050】タグは空間フラグX,Y及びvalidフラグ
X,Y及びLRUフラグからなる。空間フラグX,Y及
びvalidフラグX,Yはダイレクトマップの場合と同様
に、それぞれキャッシュの各ブロック中のアドレスおよ
び有効/無効を示す。LRUフラグは、最後にアクセス
されたセットがXかYかを保持しており、LRUアルゴ
リズムを実現するため以下のように用いられる。
X,Y及びLRUフラグからなる。空間フラグX,Y及
びvalidフラグX,Yはダイレクトマップの場合と同様
に、それぞれキャッシュの各ブロック中のアドレスおよ
び有効/無効を示す。LRUフラグは、最後にアクセス
されたセットがXかYかを保持しており、LRUアルゴ
リズムを実現するため以下のように用いられる。
【0051】LRUフラグは、MPUのリードアクセス
がセットXにヒットした場合0に、セットYにヒットし
た場合は1に、MPU113により設定される。キャッ
シュミスヒット時のフィル動作の際、MPU113はこ
のフラグを参照し、0の時はセットYに、1の時はセッ
トXにフィルすることでLRUアルゴリズムを実現して
いる。FMEM201はMPU113から見たメモリ空
間内の4カ所、すなわち空間A〜空間Dにマップされて
いる。2ウェイセットアソシエイティブでも、ダイレク
トマップと同様に各空間を交互に用いる。
がセットXにヒットした場合0に、セットYにヒットし
た場合は1に、MPU113により設定される。キャッ
シュミスヒット時のフィル動作の際、MPU113はこ
のフラグを参照し、0の時はセットYに、1の時はセッ
トXにフィルすることでLRUアルゴリズムを実現して
いる。FMEM201はMPU113から見たメモリ空
間内の4カ所、すなわち空間A〜空間Dにマップされて
いる。2ウェイセットアソシエイティブでも、ダイレク
トマップと同様に各空間を交互に用いる。
【0052】このように、2ウェイセットアソシエイテ
ィブでは、セットがX,Yと2つあるので、FMEM2
01の同一ブロックを2つの異なる空間を通してリード
した結果を保持できる。
ィブでは、セットがX,Yと2つあるので、FMEM2
01の同一ブロックを2つの異なる空間を通してリード
した結果を保持できる。
【0053】本実施形態によれば、2セットのキャッシ
ュを利用できるので、ダイレクトマップキャッシュに比
べ、高いヒット率を達成でき、より高速な描画コマンド
取り込みが可能になる。
ュを利用できるので、ダイレクトマップキャッシュに比
べ、高いヒット率を達成でき、より高速な描画コマンド
取り込みが可能になる。
【0054】
【発明の効果】本発明によれば、外部入力の描画コマン
ドを一次蓄積されるFIFOを、キャッシュ可能な複数
の空間にマッピングし、MPUのキャッシュフィル動作
を用いるので、従来に比べ数倍早く描画コマンドを取込
むことができ、描画処理を高速化する効果がある。
ドを一次蓄積されるFIFOを、キャッシュ可能な複数
の空間にマッピングし、MPUのキャッシュフィル動作
を用いるので、従来に比べ数倍早く描画コマンドを取込
むことができ、描画処理を高速化する効果がある。
【0055】また、前記FIFOにMPUが処理すべき
描画コマンドがないとき、それを表すコマンドを生成す
る構成としているので、FIFO空判定のオーバーヘッ
ドが回避でき、この点からも描画コマンドを高速に取込
むことができる。
描画コマンドがないとき、それを表すコマンドを生成す
る構成としているので、FIFO空判定のオーバーヘッ
ドが回避でき、この点からも描画コマンドを高速に取込
むことができる。
【図1】本発明の一実施形態によるMPUから見たダイ
レクトメモリマップ。
レクトメモリマップ。
【図2】本発明を適用するグラフィックス処理システム
の構成図。
の構成図。
【図3】描画コマンドの構成図。
【図4】一実施形態によるRFIFOの構成図。
【図5】MPUから見たキャッシュ可能空間の詳細なメ
モリマップ。
モリマップ。
【図6】MPUのグラフィックス処理を示すフローチャ
ート。
ート。
【図7】動作状態でのキャッシュ可能空間を示すメモリ
マップ。
マップ。
【図8】本発明の他の実施形態によるMPUから見た2
ウェイセットアソシエイティブキャッシュのメモリマッ
プ。
ウェイセットアソシエイティブキャッシュのメモリマッ
プ。
101…ホストPC、102…グラフィックス処理装
置、103…描画処理装置、104…表示装置、110
…MSI、111…RFIFO、112…GPI、11
3…MPU、114…PM(キャッシュメモリ)、11
5…WFIFO、116…GPI、201…FMEM、
202…R_PTR、203…W_PTR、204…T
EST、205…NOPGen、206…SEL。
置、103…描画処理装置、104…表示装置、110
…MSI、111…RFIFO、112…GPI、11
3…MPU、114…PM(キャッシュメモリ)、11
5…WFIFO、116…GPI、201…FMEM、
202…R_PTR、203…W_PTR、204…T
EST、205…NOPGen、206…SEL。
Claims (10)
- 【請求項1】 外部から入力される描画コマンドをFI
FOを介して取り込むグラフィックス処理装置の描画デ
ータ取込み方法において、 予め、描画コマンド処理用のMPUのキャッシュ可能空
間であって、キャッシュメモリのマッピング領域の一部
に重複して前記FIFOをマッピングし、 前記MPUは、FIFOマッピング領域を読出すときキ
ャッシュミスを発生させ、FIFOからキャッシュメモ
リへブロック単位の描画コマンドを一括転送することを
特徴とする描画データ取込み方法。 - 【請求項2】 請求項1において、 前記FIFOのマッピングは前記キャッシュメモリを一
度にマッピングできる範囲を超えた複数の空間に行な
い、一つの空間のFIFOマッピング領域の読み出し後
は次の空間のFIFOマッピング領域の読み出しへと交
互ないしサイクリックにシフトして、前記キャッシュミ
スを発生させることを特徴とする描画データ取込み方
法。 - 【請求項3】 請求項1または2において、 前記MPUは前記キャッシュミスを発生させるときは、
キャッシュのブロック毎に設定される空間フラグと異な
る空間フラグを指示することを特徴とする描画データ取
込み方法。 - 【請求項4】 請求項1または2または3において、 前記MPUは、ロード命令のミスキャッシュによりFI
FOからキャッシュへブロック単位で描画コマンドを転
送する際、該ブロックの先頭データを直接、前記ロード
命令に与えることを特徴とする描画データ取込み方法。 - 【請求項5】 外部から入力される描画コマンドを保持
するFIFO、描画コマンド処理用のMPU、該MPU
のキャッシュ可能空間にマッピングされるキャッシュメ
モリ及び表示装置を備えるグラフィックス処理装置にお
いて、 前記MPUのキャッシュ可能空間であって、前記キャッ
シュメモリを一度にマッピングできる範囲を越えた複数
の空間に前記FIFOをマッピングするとともに、前記
キャッシュメモリのキャッシュヒット/キャッシュミス
を判定する手段を前記MPUに有し、 前記MPUから前記FIFOを読出すときはキャッシュ
ミスを発生させ、FIFOからブロック単位の描画コマ
ンドの転送を可能にしたことを特徴とするグラフィック
ス処理装置。 - 【請求項6】 請求項5において、 前記キャッシュメモリは、ダイレクトマップキャッシュ
であることを特徴とするグラフィックス処理装置。 - 【請求項7】 請求項5において、 前記キャッシュメモリは、セットアソシエイティブキャ
ッシュであり、該セットアソシエイティブ分のFIFO
をマッピングする構成としたことを特徴とするグラフィ
ックス処理装置。 - 【請求項8】 外部から入力される描画コマンドを保持
するFIFO、描画コマンド処理用のMPU、該MPU
のキャッシュ可能空間にマッピングされるメモリ及び表
示装置を備えるグラフィックス処理装置において、 前記FIFOは、FIFO空時に描画コマンドの代りに
FIFO空を示す特別な値(NOPコマンド)をMPU
に出力する手段を設けたことを特徴とするグラフィック
ス処理装置。 - 【請求項9】 請求項8において、 前記メモリは、該MPUのキャッシュ可能空間にマッピ
ングされるキャッシュメモリであり、前記FIFOは前
記キャッシュ可能空間にマッピングする構成としたこと
を特徴とするグラフィックス処理装置。 - 【請求項10】 請求項9において、 前記特別な値を読み出したとき、前記キャッシュメモリ
をミスヒットさせて、再び前記FIFOの同じアドレス
をリードする制御手段を前記MPUに設けていることを
特徴とするグラフィックス処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8089427A JPH09282135A (ja) | 1996-04-11 | 1996-04-11 | 描画データ取込み方法およびグラフィックス処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8089427A JPH09282135A (ja) | 1996-04-11 | 1996-04-11 | 描画データ取込み方法およびグラフィックス処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH09282135A true JPH09282135A (ja) | 1997-10-31 |
Family
ID=13970370
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8089427A Pending JPH09282135A (ja) | 1996-04-11 | 1996-04-11 | 描画データ取込み方法およびグラフィックス処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH09282135A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007054191A (ja) * | 2005-08-23 | 2007-03-08 | Aloka Co Ltd | 超音波診断装置 |
| JP2008059266A (ja) * | 2006-08-31 | 2008-03-13 | Fujitsu Ltd | 画像処理装置 |
-
1996
- 1996-04-11 JP JP8089427A patent/JPH09282135A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007054191A (ja) * | 2005-08-23 | 2007-03-08 | Aloka Co Ltd | 超音波診断装置 |
| JP2008059266A (ja) * | 2006-08-31 | 2008-03-13 | Fujitsu Ltd | 画像処理装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6856320B1 (en) | Demand-based memory system for graphics applications | |
| US9214007B2 (en) | Graphics processor having unified cache system | |
| US5831640A (en) | Enhanced texture map data fetching circuit and method | |
| US8089486B2 (en) | Tiled prefetched and cached depth buffer | |
| US7042462B2 (en) | Pixel cache, 3D graphics accelerator using the same, and method therefor | |
| TWI375179B (en) | Systems and methods for managing texture descriptors in a shared texture engine | |
| US7944441B2 (en) | Compression and decompression of data using plane equations | |
| US9384584B2 (en) | Display list control stream grouping in tile based 3D computer graphics system | |
| US6972769B1 (en) | Vertex texture cache returning hits out of order | |
| CA2275237C (en) | Pixel reordering for improved texture mapping | |
| US6630933B1 (en) | Method and apparatus for compression and decompression of Z data | |
| JP3889195B2 (ja) | 画像処理装置、画像処理システムおよび画像処理方法 | |
| JP4810605B2 (ja) | マルチプロセッサ環境のためのテクスチャユニット | |
| EP2042996A1 (en) | Multi-media processor cache with cache line locking and unlocking | |
| TW200933524A (en) | Memory systems, memory accessing methods and graphic processing systems | |
| JP2007525768A (ja) | テクスチャ要求のためのレジスタベースのキューイング | |
| US12443538B2 (en) | Cache systems | |
| CN113835753B (zh) | 用于在纹理处理管线中执行加速的点采样的技术 | |
| CN109118422B (zh) | 一种嵌入式移动图形处理器的纹理Cache及处理方法 | |
| US7339590B1 (en) | Vertex processing unit supporting vertex texture mapping | |
| US12306764B2 (en) | Cache systems with age-based eviction | |
| US6889289B2 (en) | Method of distributed caching | |
| US7336284B2 (en) | Two level cache memory architecture | |
| US6538650B1 (en) | Efficient TLB entry management for the render operands residing in the tiled memory | |
| US20050195200A1 (en) | Embedded system with 3D graphics core and local pixel buffer |