(57)【特許請求の範囲】
【請求項１】
第一及び第二メモリーサブシステムのページをフレームバッファメモリーのページに割り当てる方法であって、前記フレームバッファメモリーがインデックス０〜Ｎ−１を有するＮバンクのメモリーを含んでなるとともに、各バンクがさらにＭページを含んでなり、各ページが開始ページ境界を定める第一データメモリーロケーションアドレスを有する、前記方法において、
ａ）前記第一メモリーサブシステムの第一ページの第一データメモリーロケーションを、該フレームバッファのページＸに整合させ、ここで０＜Ｘ＜Ｍ＊Ｎであり、ページＸは第一メモリーバンクに配置される工程と、
ｂ）前記第一メモリーサブシステムの続いての全てのページを、前記フレームバッファの連続した隣接フレームバッファページに整合させる工程と、
ｃ）前記第二メモリーサブシステムの第一ページの第一データメモリーロケーションを、前記第一メモリーバンク以外のメモリーバンクに整合させる工程と、
ｄ）前記第二メモリーサブシステムの続いての全てのページを、前記フレームバッファの連続したフレームバッファページに整合させる工程と、
を含んでなることを特徴とする方法。
【請求項２】
前記第一メモリーサブシステムがカラーメモリーサブシステムであり、前記第二メモリーサブシステムがｚバッファメモリーサブシステムである、請求項１に記載の方法。
【請求項３】
前記第一メモリーサブシステムがｚバッファメモリーサブシステムであり、前記第二メモリーサブシステムがカラーメモリーサブシステムである、請求項１に記載の方法。
【請求項４】
前記カラーメモリーサブシステムが複数のタイルとして構成され、タイルの大きさが固定数のフレームバッファメモリーロケーションによって定められる、請求項２又は３に記載の方法。
【請求項５】
前記複数のタイルが、一ページのメモリーの大きさに等しいタイルの大きさを有する、請求項４に記載の方法。
【請求項６】
前記ｚバッファメモリーサブシステムが複数のタイルとして構成され、タイルの大きさが固定数のフレームバッファメモリーロケーションによって定められる、請求項２又は３に記載の方法。
【請求項７】
前記複数のタイルが、一ページのメモリーの大きさに等しいタイルの大きさを有する、請求項６に記載の方法。
【請求項８】
カラー及びｚバッファメモリーサブシステムが前記フレームバッファにあり、且つ前記第一メモリーサブシステムがカラーメモリーサブシステムであり、前記第二メモリーサブシステムがｚバッファメモリーサブシステムである、請求項１に記載の方法。
【請求項９】
カラー及びｚバッファメモリーサブシステムが前記フレームバッファにあり、且つ前記第一メモリーサブシステムがｚバッファメモリーサブシステムであり、前記第二メモリーサブシステムがカラーメモリーサブシステムである、請求項１に記載の方法。
【請求項１０】
ページＸがバンクＹにあり、ここでＹはＸをＮで整数除算した残りである、請求項１に記載の方法。
【請求項１１】
フレームバッファメモリーへのアクセス時のページスイッチを減少させる方法であって、前記フレームバッファメモリーがインデックス０〜Ｎ−１を有するＮバンクのメモリーを含んでなるとともに、各バンクがさらにＭページを含んでなり、各ページが開始ページ境界を定める第一データメモリーロケーションアドレスを有する、方法において、
ａ）前記第一メモリーサブシステムの第一ページの第一データメモリーロケーションを、該フレームバッファのページＸに整合させ、ここで０＜Ｘ＜Ｍ＊Ｎであり、ページＸは第一メモリーバンクに配置される工程と、
ｂ）前記第一メモリーサブシステムの続いての全てのページを、前記フレームバッファの連続した隣接フレームバッファページに整合させる工程と、
ｃ）前記第二メモリーサブシステムの第一ページの第一データメモリーロケーションを、前記第一メモリーバンク以外のメモリーバンクに整合させる工程と、
ｄ）前記第二メモリーサブシステムの続いての全てのページを、前記フレームバッファの連続したフレームバッファページに整合させる工程と、
ｅ）第一メモリーバンクに配置された、第一メモリーサブシステムに属する一ページのメモリーにアクセスする工程と、
ｆ）第二メモリーバンクに配置された、第二メモリーサブシステムに属する一ページのメモリーにアクセスする工程と、
を含んでなることを特徴とする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般的にコンピュータグラフィックスに関し、より詳細には、複数バンクのメモリーを含んでなるフレームバッファにおいてポリゴンを表現するときのページスイッチを減少する方法に関する。
【０００２】
【従来の技術】
３Ｄグラフィックスの実行は、一般に「グラフィックスエンジン」又は「グラフィックスアクセラレータ」と称される専用のグラフィックス表現ハードウエアにおいて複数の処理ステージを含む、計算処理集中オペレーションである。グラフィックスエンジンにおける複雑なオペレーションのほとんどは、ピクセルレベルでおこなわれる。グラフィックスエンジンによりおこなわれるより複雑なオペレーションの中には、アンチエーリアシング、三線補間及びｚバッファリングなどがある。これらの及び他の最新の３Ｄ表現法では、３Ｄ画像のリアリティーレベルが大きく高まる。観察者に対してディスプレイシーンを表現するには、複数の３Ｄオブジェクトからなる世界のある領域の三次元モデルを用いる。オブジェクトは、典型的にはポリゴンのコンポジットとしてデータベースに保存される。イメージジェネレータは、各３Ｄオブジェクトをポリゴンごとに読み取り、それを２Ｄシーンの記述に変える。２Ｄシーンの記述を、最後にアナログビデオに変換する。このアナログビデオは、ディスプレイ装置によってユーザーが見れる。一連の３Ｄオブジェクトと観察仕様が所与のものとすると、オブジェクトのどのライン又はサーフェスを見ることができるかについて決定して、可視ライン及びサーフェスのみが表示されるようにしなければならない。ｚバッファ又はデプスバッファアルゴリズムが、このタスクをおこなうのに有効な最も簡単且つ広く利用されている可視サーフェスアルゴリズムの一つである。ｚバッファアルゴリズムは、他よりも観察位置に近いオブジェクト間の正確なパースペクティブを維持する役割を果たす。ｚバッファに保存できる最大値は、現在のプロジェクションプレーンに最も近い距離に関連した値を表す。新しいポリゴンを表現しているとき、表現エンジンは、その頂点のｚ値を、ｚバッファの同じ（ｘ、ｙ）ロケーションにおける以前に保存されたｚ値と比較する。以前に保存されたｚ値は、以前に表現したポリゴンに関連するものであろう。
ｚバッファリングをするために、カラー値及びデプス値に関連したピクセルデータを保存できるメモリーサブシステムからなるフレームバッファが必要である。カラー値をカラーバッファメモリーサブシステムに保存し、デプス値をｚバッファメモリーサブシステムに保存する。ｚ値の計算は、従来技術において周知であり、（ｘ、ｙ）ピクセル値ペアをポリゴン用プレーン方程式に入れることにより計算される。処理されているポリゴンに関連した新しい点が以前のものよりも大きいｚ値を有する（すなわち、プロジェクションプレーンにより近い）場合には、そのｚ値をｚバッファに入れて、以前のｚ値を入れ替えるか、さもなければ以前のｚ値をｚバッファに残しておく。したがって、ｚバッファ処理の最も一般的な記述には、ｚバッファからの読み取りをおこなうこと、読み取られた値を現在処理されているポリゴンに関連した値と比較すること、及びおそらく現在のｚバッファ値に新しい値を上書きすることが含まれる。ｚバッファ値が上書きされる状態において、対応の上書きが、カラーバッファで生じる。
カラーバッファとｚバッファは各々、フレームバッファにおける一連の連続ページとしてオーガナイズされる。ここで、各ページは、ディスプレイ装置におけるあるピクセル数に関連した固定数の保存位置を定める。どのようにフレームバッファページがラスタディスプレイにおけるピクセルを定めるかを示す一例として、典型的なライン表現システムが、単一フレームバッファページの保存ロケーションを、ラスタディスプレイ装置の概略１と４分の１水平スキャンラインと関連させることが挙げられる。各ポリゴンをグラフィックスエンジンにより処理すると、フレームバッファのカラー及びｚバッファメモリーページが、読み取りピクセルデータ又は書き込みピクセルデータにアクセスされる。フレームバッファメモリーにおけるページがアクセスされて読み取り／書き込みをおこなう（アクセスされたページのページインデックスが、最も新しくアクセスされたページのインデックスと異なる場合）ときはいつでも、ページスイッチが生じる。新しくアクセスされたページは、アクティブにされたと言われる。ページスイッチが生じたり、新しいページをアクティブとするときにはいつも、ある固定数のクロックサイクルの望ましくないオーバーヘッドコストが生じる。このコストは、ｚバッファリングアルゴリズムの実行においてカラー及びｚバッファがすぐに連続して書き込まれるとき、タイル又はリニアアドレス表現システムにおいてｚバッファリングを実行するときに顕著となる。これに対して、ｚ又はカラー等の同じバッファに対する連続読み取り／書き込みは、コヒーレントであり、ページスイッチを生じない。
【０００３】
【発明が解決しようとする課題】
上記のように、当該技術分野において、複数バンクのメモリーを有するメモリーサブシステムを用いたカラー及びｚバッファにポリゴンを表現するときのページスイッチ数を減少させる簡単な方法が必要とされている。
本発明の目的は、複数バンクのメモリーを有するメモリーサブシステムを用いたタイルカラー及びｚバッファにポリゴンを表現するときのページスイッチを減少させる方法を提供することである。
【０００４】
【課題を解決するための手段】
本発明によれば、カラーとｚバッファの両方の第一ページを異なるメモリーバンク内に位置するフレームバッファページに割り当てることによりページスイッチを減少する方法が提供される。ｚバッファとカラーバッファメモリーサブシステムとの間のインターリーブアクセスをする（すなわち、ｚバッファアクセスにつづいてカラーバッファアクセスをする）とき、２つの独立してアドレスできるメモリーバンクをアクセスするので、ページスイッチが顕著に減少する。ページスイッチは、各それぞれのバンクにいてそのページをアクティブにするために各メモリーバンクで一度だけ生じる。特定のピクセルについてのその後の全ての続いての読み取り／書き込みは、各メモリーバンクにおける同じアクティブとされたページで生じる。その結果、ページスイッチオーバーヘッドコストが生じない。
【０００５】
【発明の実施の形態】
フレームバッファの一般的なオーガナイゼーションは、フレームバッファをＮバンク（但し、Ｎは、ある正の整数である）のメモリーに分割することである。メモリーの各バンクはいずれかのクロックサイクルにおいて独立的にアドレスされることができ、各バンクはさらにフレームバッファメモリーのＭページ（但し、Ｍも、ある正の整数である）を含んでなる。
【０００６】
図１は、フレームバッファページを、２つのメモリーバンク（１２、１４と番号が付されたバンク０及び１）を有するフレームバッファ１０についての従来技術に準じて割り当てる方法を示したものである。図１は、カラーメモリーサブシステム１６のページのフレームバッファのページ０、１、２、３への割り当てと、その後のｚバッファメモリーサブシステム１８のフレームバッファページ４、５、６、７への割り当てを示している。ページ８〜１３は、他のメモリーサブシステムからのデータを含んでよい。この割り当てスキームでは、カラーサブシステム１６とｚバッファサブシステム１８が連続してフレームバッファ１０に置かれ、カラーメモリーサブシステムの最後のページ３は、ｚバッファメモリーサブシステム１８の最初のページ４と連続している。この配置の場合、もしカラーメモリーサブシステムが偶数のページについて開始したならば、ｚバッファメモリーサブシステムも、偶数のページについて開始する。同様に、もし一つのメモリーサブシステムが奇数ページについて開始したならば、他のメモリーサブシステムも、奇数ページについて開始する。
【０００７】
ここで、以下の表Ｉを図１とともに参照して、従来技術のメモリーサブシステム割り当てスキームに準じてｚバッファリングを実行するときに過剰なページスイッチが生じる問題を、例をあげて説明する。表には、２つのそれぞれのピクセル（０，０）及び（０，１）についてｚバッファリングオペレーションを実行するのに必要とされるステップ（読み取り／書き込み操作）が、説明されている。
【表１】
0004246848.tif 000002
【０００８】
カラーメモリーサブシステムとｚバッファメモリーサブシステムのみを図１に明示したが、フレームバッファは複数のメモリーサブシステムを含んでなるものとする。さらに、メモリーの各バンクにおける現在アクティブなページは、カラー又はｚバッファ以外のメモリーサブシステムと関連したページであるとする。表のステップ１は、この初期条件を示している。表のステップ２〜４は、ピクセル（０，０）についてのｚバッファリングを実行するための読み取り／書き込みオペレーションを示している。ステップ２では、ｚバッファ読み取りを実行する。このピクセルについてのｚバッファ読み取りを実施するためには、ｚバッファのページ４をアクセスする（アクティブにする）必要がある。ページ４は、メモリーバンク０にある（図１参照）。上記した初期条件の通りにページ４をアクセスすると、ページスイッチが生じる。より詳細には、初期条件は、メモリーバンクゼロにおいて最も新しくアクセスされたページがカラー又はｚバッファ以外のメモリーサブシステムにおけるページ（すなわち、ページ０〜７以外）であったことを明記している。ステップ２での最後の欄は、ページスイッチがｚ又はカラー以外のメモリーサブシステムの未知ページ（？）（すなわち、ページ０〜７以外）からｚバッファメモリーサブシステムのページ４に生じたことを示している。ステップ３は、ピクセル（０，０）に関連した次のｚバッファリングオペレーションであるｚバッファ書き込みを説明している。このオペレーションは、現在アクティブなページへのアクセスが必要である点で、以前のステップ２でのオペレーションとコヒーレントであると言え、したがって、このオペレーションではページスイッチが生じない。ステップ４は、ピクセル（０，０）に関連する最後のｚバッファオペレーションであるカラー書き込み操作を明示している。ここで、図１において、ピクセル（０，０）についてのカラーバッファ情報がページゼロにあることが分かる。このオペレーションには、表Ｉの第４行目に示されているように、現在アクティブなページであるページ４からページ０へのページスイッチが生じる。
【０００９】
ステップ５〜７は、ピクセル（１，０）についてのｚバッファリングに関連したプロセスステップである。ステップ５で、ｚバッファ読み取りが必要である。ｚバッファメモリーサブシステムのページ４にアクセスして、このオペレーションを履行することが必要である。このページアクセスは現在のアクティブページであるページ０とは異なるので、最後の欄に示すようにページスイッチが生じると言える。ステップ６での次のオペレーションは、ｚバッファ書き込みである。このオペレーションは、前のオペレーションとコヒーレントであり、すでにアクティブであるページへの第二のアクセスが必要である。その結果、ページスイッチが生じない。ステップ７では、カラーメモリーサブシステムのページ０へのアクセスを必要とするカラー書き込みを実行する。現在アクティブなページであるページ４がページ０以外であるために、ピクセル（１，０）についての第二ページスイッチが生じる。
【００１０】
表ＩＩは、全て６つのメモリーアクセスが、同じメモリーバンクであるメモリーバンク０に含まれるページに対してなされたことを示している。その結果、カラーメモリーサブシステムからｚバッファメモリーサブシステムへのメモリーアクセスインターリーブ又はｚからカラーへのメモリーアクセスインターリーブごとに、ページスイッチが生じて、表ＩＩのステップ２、４、５及び７に示すように、あらゆるピクセルフィルについて２つのページスイッチが生じる。各ページスイッチで、ある固定数のクロックサイクルの関連オーバーヘッドコストがある。これに対して、ステップ３及び６で説明されているコヒーレントオペレーションでは、ページスイッチを生じなかった。
【００１１】
図２には、表ＩＩとともに、本発明の割り当てスキームが示されている。図２は、ページ０、１、２、３、４にカラーサブシステム２２及びページ５、６、７、８にｚバッファサブシステム２４を有するフレームバッファ２０を示す。図２に示すように、カラーサブシステム２２は、図１に示すようなその４ページ要件（ページ０〜３）を越えて、さらに１ページだけ（ページ４）延ばされた。この追加のページにより、ｚバッファメモリーサブシステム２４の第一ページが、カラーバッファ２２の第一ページに割り当てられたメモリーバンク２８であるバンク０とは異なるメモリーバンク２６であるバンク１に割り当てられる。２つの代表的なピクセル（０，０）及び（１，０）についてｚバッファリングを実行するためにカラー及びｚバッファ２２、２４に対しておこなった所要の読み取り／書き込みオペレーションを、表ＩＩに示す。初期条件は、表Ｉで記載したのと同様であるので、現在のアクティブなページは、ｚバッファ又はカラー以外のメモリーサブシステムにある。表のステップ２〜４は、ピクセル（０，０）についてのｚバッファリングを実行するための読み取り／書き込みオペレーションである。ステップ２で、ｚバッファ読み取りを実行する。このピクセルについてのｚバッファ読み取りを実施するために、ページ５をアクセスする必要がある（図２参照）。本方法の割り当てるスキームでは、ページ５は、メモリーバンク１にある。このオペレーションの結果、メモリーバンク１において最も新しくアクセスされたページは初期条件の通りｚバッファ以外のメモリーサブシステムにあったので、ページスイッチが生じると言える。最後の欄の疑問符は、スイッチは、ｚバッファ又はカラー以外のメモリーサブシステムのページからｚバッファのページ５へ生じたことを示している。
【００１２】
ステップ５は、ピクセル（１，０）に関連した第一ｚバッファリングオペレーションであるｚバッファ読み取りである。このオペレーションを履行するのに、ページ５へのアクセスが必要である。アクセスすべきページが前のステップ４でのオペレーションでアクセスしたページとは異なるメモリーバンクにあるので、ページスイッチは生じない。より詳細には、ステップ５でのアクセスはメモリーバンク１に対しておこない、一方、ステップ４でのアクセスはメモリーバンク０に対しておこなう。
【００１３】
ステップ６は、ピクセル（１，０）に関連した次のｚバッファリングオペレーションであるｚバッファ書き込みである。このオペレーションは、現在アクティブなページであるページ５へのアクセスを必要とする点でコヒーレントである。コヒーレントオペレーションでは、現在アクティブなページをアクセスするのでページスイッチは生じない。
【００１４】
ステップ７は、カラー書き込みオペレーションである。ここで図２において、ピクセル（１，０）についてのカラーバッファ情報はメモリーバンク０のページゼロにあることがわかる。このオペレーションでは、アクセスは、前のステップ６でのアクセスに関連したメモリーバンクであるメモリーバンク０とは異なるメモリーバンクであるバンク１にあるカラーメモリーサブシステムのページであるページ５に対してなされるので、ページスイッチは生じない。
【００１５】
表ＩＩは、本発明の方法の割り当てスキームの結果、メモリーアクセスが、両方のメモリーバンク（０及び１）に対してなされたことを示している。従来技術の割り当てスキームとは対照的に、カラーメモリーサブシステムからｚバッファメモリーサブシステムへのメモリーアクセストランジション（インターリーブ）又はｚからカラーへのメモリーアクセストランジション（インターリーブ）では、常にページスイッチは生じない。
【表２】
0004246848.tif 000003
【００１６】
表ＩＩは、本発明の割り当てスキームにより、ページスイッチが顕著に減少することを示している。その結果、全てのｚバッファアクセスはメモリーバンク１に対してなされ、全てのカラーバッファアクセスはバンク０に対してなされた。カラーバッファ及びｚバッファのページを最初にアクティブにするために、各メモリーバンクにおいて１回だけページスイッチが生じたが、その後は、生じなかった。また、反対の状態が生じることがあるが（カラーアクセスがバンク０、ｚバッファアクセスがバンク１）、ページスイッチの数は同じである。以下の原則を満足する限りは、本発明の方法の利点は得られる：第二の連続したメモリーサブシステムの第一ページの割り当ては、第一メモリーサブシステムの第一ページの割り当てとは異なるメモリーバンクに対しておこなわれなければならない。
【００１７】
前の解析は、タイルサーフェスについてなされた。このメモリーの配置は、リニア（非タイル）カラー及びｚサーフェスについて有利であることを示す同様な解析もできる。例えば、ピッチ１０２４ピクセルで高さ７６８ピクセルであって、各ピクセルが２バイトのサイズであるサーフェスが直線的に配置されたものを考えてみる。サーフェスのピッチ（単位バイト）は、２０４８バイトであろう。メモリーサブシステムは、１ページ当たり２０４８バイトである。各水平ラインは、１ページのサイズであろう。もし第一ピクセルがページアラインメントされているならば、各ラインは正確に１ページからなるであろう。２つのサーフェス（カラー及びｚバッファ）が割り当てられた場合、カラーサーフェスは、ページゼロから開始し、ページ７６７まで継続するであろう。ｚサーフェスがすぐその後に続く場合には、ｚサーフェスはページ７６８から開始し、ページ１５３５まで継続するであろう。
【００１８】
表ＩＩＩおいて、リニアメモリーオーガナイゼーションを用いた従来の割り当てスキームに準じた２つの代表的なピクセルについてのｚバッファリングの実行方法を、例をあげて説明する。この表には、２つの代表的なピクセルである（３，３）及び（４，３）について、ｚバッファリングを実行するのに必要なステップ（読み取り／書き込み）オペレーションが説明されている。
【表３】
0004246848.tif 000004
【００１９】
カラー及びｚバッファメモリーサブシステムのみが表ＩＩＩに示されているが、フレームバッファが複数のメモリーサブシステムを含んでなるとする。上記のタイルについての例と同様に、各メモリーバンクにおいて現在アクティブであるページはカラー又はｚバッファメモリーサブシステム以外のメモリーサブシステムに関連したページであることを前提とした初期条件は、本例でも同様とする。表のステップ１は、この初期条件を示す。
【００２０】
表のステップ２及び３は、ピクセル（３，３）についてのｚバッファリングを実行するための読み取り／書き込みオペレーションを示している。ステップ２では、ｚバッファ読み取りを実行する。このピクセルについてのｚバッファ読み取りを実施するためには、ｚバッファのページ７７１をアクセスする（アクティブにする）必要がある。ページ７７１は、メモリーバンク１にある。上記した初期条件の通りにページ７７１をアクセスすると、ページスイッチが生じる。より詳細には、初期条件は、メモリーバンク1 において最も新しくアクセスされたページがカラー又はｚバッファ以外のメモリーサブシステムにおけるページ（すなわち、ページ０〜７6 ７及び７６８〜１５３５以外）であったことを明記している。ステップ２での最後の欄は、ページスイッチがメモリーサブシステムの未知ページ（？）からページ７７１に生じたことを示している。
【００２１】
ステップ３は、ピクセル（３，３）に関連した次のｚバッファリングオペレーションであるｚバッファ書き込みを説明している。このオペレーションは、現在アクティブなページであるページ７７１へのアクセスが必要である点で、以前のステップ２でのオペレーションとコヒーレントであると言え、したがって、このオペレーションではページスイッチが生じない。
【００２２】
ステップ４は、カラー書き込みオペレーションを明示している。このオペレーションでは、表ＩＩＩの第４行目に示されているように、現在アクティブなページであるページ７７１からページ３へのページスイッチが生じる。このページスイッチは、両方のページが同じメモリーバンク（バンク１）にあるために生じる。
【００２３】
ステップ５〜７は、ピクセル（４，３）についてのｚバッファリングに関連したプロセスステップである。ステップ５で、ｚバッファ読み取りが必要である。ｚバッファメモリーサブシステムのページ７７１にアクセスして、このオペレーションを履行することが必要である。最も新しくアクセスされたページであるページ３とは異なるページにアクセスしてこのオペレーションを履行させなければならないので、ページスイッチが生じる。次のステップであるステップ６は、ｚバッファ書き込みオペレーションを含む。このオペレーションは、前のオペレーションとコヒーレントであり、現在アクティブであるページへの第二アクセスが必要である。したがって、ページスイッチは、生じない。
【００２４】
ステップ７では、カラーメモリーサブシステムのページ３へのアクセスを必要とするカラー書き込みを実行する。現在アクティブなページであるページ７７１が現在のオペレーションで必要とするページであるページ３以外であるために、ピクセル（４，３）についての第二ページスイッチが生じる。
【００２５】
表ＩＩＩは、全て６つのメモリーアクセスが、同じメモリーバンクであるメモリーバンク１に含まれるページに対してなされたことを示している。その結果、カラーメモリーサブシステムからｚバッファメモリーサブシステムへのメモリーアクセスインターリーブ又はｚからカラーへのメモリーアクセスインターリーブごとに、ページスイッチが生じて、表ＩＩＩのステップ２、４、５及び７に示すように、あらゆるピクセルフィルについて２つのページスイッチが生じる。各ページスイッチで、ある固定数のクロックサイクルの関連オーバーヘッドコストがある。これに対して、ステップ３及び６で説明されているコヒーレントオペレーションでは、ページスイッチを生じなかった。
【００２６】
表ＩＶにおいて、リニアメモリーオーガナイゼーションを用いた本発明の方法に準じた２つの代表的なピクセルについてｚバッファリングを実行する方法を、例をあげて説明する。ｚメモリーサブシステムを、従来の割り当てスキームに準じたページ７６８ではなくページ７６９から開始するように整列する。これは、前で定義された最後のページであるページ７６７を越えて１ページだけカラーメモリーサブシステムを延ばすことによりなされる。
【表４】
0004246848.tif 000005
【００２７】
２つの代表的なピクセル（３，３）及び（４，３）についてｚバッファリングを実行するためにカラー及びｚバッファに対してなされる所要の読み取り／書き込みオペレーションを、表ＩＶに示す。これらのオペレーションは、従来の割り当てスキームと本発明の方法とを比較対照する目的で表ＩＩＩに示した上記例で説明したのと同一であるとされている。初期条件は、上記例で定義したのと同様である。繰り返して述べれば、初期条件は、現在アクティブであるページがｚバッファ又はカラー以外のメモリーサブシステムにあるとすることである。
【００２８】
表のステップ２〜３に、ピクセル（３，３）についてのｚバッファリングを実行するための読み取り／書き込みオペレーションが説明されている。ステップ２で、ｚバッファ読み取りを実行する。このピクセルについてのｚバッファ読み取りを実施するためには、ページ７７２をアクセスすることが必要である。このオペレーションの結果、最も新しくアクセスされたページが明示された初期条件のとおりｚバッファ以外のメモリーサブシステムからであったので、ページスイッチが生じる。
【００２９】
ステップ３は、ピクセル（３，３）に関連した次のｚバッファリングオペレーションであるｚバッファ書き込みである。このオペレーションは、ｚバッファの既にアクティブなページであるページ７７２にアクセスする必要がある点で、コヒーレントである。コヒーレントオペレーションでは、ページスイッチは生じない。
【００３０】
ステップ４は、カラー書き込みオペレーションである。このオペレーションでは、ページスイッチを生じない。この割り当てスキームでは、ステップ４で述べたカラー書き込みオペレーションでメモリーバンク１における奇数ページであるページ３をアクセスするのに対して、上記オペレーションでは、バンク０における偶数ページであるページ７７２からのアクセスが必要であった。
【００３１】
ステップ５〜７は、ピクセル（４，３）についてのｚバッファリングに関連したプロセスステップである。ステップ５では、ｚバッファ読み取りが必要である。ｚバッファメモリーサブシステムのページ７７２にアクセスして、このオペレーションを履行させる必要がある。このページアクセスは、現在アクティブなページであるページ３とは異なるので、最後の欄に示されているように、ページスイッチが生じると言える。
【００３２】
ステップ６は、ピクセル（１，０）に関連した次のｚバッファリングオペレーションであるｚバッファ書き込みである。このオペレーションは、ｚバッファの既にアクティブなページであるページ５にアクセスする必要がある点で、コヒーレントである。コヒーレントオペレーションでは、ページスイッチは生じない。ステップ７は、カラー書き込みオペレーションである。このオペレーションでは、アクセスは、前のステップ６でのアクセスに関連したバンクであるバンク０とは異なるメモリーバンクであるバンク１にあるカラーメモリーサブシステムのページであるページ５に対してなされるので、ページスイッチを生じない。
【００３３】
表ＩＶは、本方法の割り当てスキームの結果、メモリーアクセスが、両方のメモリーバンク（０及び１）に対してなされたことを示している。表ＩＩＩに示した従来技術の割り当てスキームとは対照的に、カラーメモリーサブシステムからｚバッファメモリーサブシステムへのメモリーアクセストランジション（インターリーブ）又はｚからカラーへのメモリーアクセストランジション（インターリーブ）では、常にページスイッチは生じない。
【００３４】
本方法の利点を、２つのメモリーバンクについての具体的実施態様を参照して説明したが、いずれのバンク数のメモリーを含んでなるフレームバッファメモリーにも、容易に拡張できる。例として、４バンクのメモリー（０〜３）を有するメモリーサブシステムを考える。カラーバッファの第一ページがバンクゼロにあるページから始まった場合、本方法では、ｚバッファメモリーサブシステムがバンクゼロ以外のバンクにあるページから始まることを必要とする。その結果、ページ落ちが減少するであろう。
【００３５】
本発明を、特にその好ましい実施態様について示し説明したが、態様及び詳細の上記及び他の変化は、本発明の精神及び範囲を逸脱することなく可能であることは、当業者には理解されるであろう。
【図面の簡単な説明】
【図１】２バンクのメモリーにおいてカラー及びｚバッファメモリーサブシステムを含んでなる従来技術のフレームバッファオーガナイゼーションを示す。
【図２】２バンクのメモリーにおいてカラー及びｚバッファメモリーサブシステムを含んでなる本発明の方法のフレームバッファオーガナイゼーションを示す。
【図１】
0004246848.tif 000006
【図２】
0004246848.tif 000007