JP2008090673A - Cache memory control device - Google Patents
Cache memory control device Download PDFInfo
- Publication number
- JP2008090673A JP2008090673A JP2006271937A JP2006271937A JP2008090673A JP 2008090673 A JP2008090673 A JP 2008090673A JP 2006271937 A JP2006271937 A JP 2006271937A JP 2006271937 A JP2006271937 A JP 2006271937A JP 2008090673 A JP2008090673 A JP 2008090673A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- buffer
- output
- cache
- cache memory
- 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
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【課題】使用するバッファの種類に応じて効率の良いキャッシュメモリの構成を実現することができるキャッシュメモリ制御装置を得る。
【解決手段】使用されるバッファメモリの種類以上の個数のメモリユニット100〜130を設ける。キャッシュ制御ユニット400は、使用されるバッファメモリのデータが少なくとも一つのメモリユニットでキャッシュされるよう、インプットセレクタ200〜230を割り当てる。アウトプットセレクタ300〜320は、メモリユニット100〜130のうち、いずれかのメモリユニットから出力されるヒットフラグ102〜132に基づいて、使用されるバッファメモリのデータがヒットしたか否かを判定する。
【選択図】図1A cache memory control apparatus capable of realizing an efficient cache memory configuration in accordance with the type of buffer to be used.
There are provided as many memory units as the number of buffer memories to be used. The cache control unit 400 assigns the input selectors 200 to 230 so that the data in the buffer memory to be used is cached in at least one memory unit. The output selectors 300 to 320 determine whether or not the data in the buffer memory to be used has hit based on the hit flags 102 to 132 output from any one of the memory units 100 to 130. .
[Selection] Figure 1
Description
この発明は、主として、様々なバッファメモリを使用するグラフィクス装置に用いるキャッシュメモリ制御装置に関するものである。 The present invention mainly relates to a cache memory control device used in a graphics device using various buffer memories.
グラフィクス装置では様々なバッファメモリを使用する。例えば、カラーバッファ(フレームバッファ)/デプスバッファ/ステンシルバッファ/アルファバッファ/マスクバッファ/テクスチャーバッファ/ディスプレイリストバッファなどを使用する。各バッファデータはグラフィクス装置外部の記憶装置に保存し、そのバッファデータの一部をグラフィクス装置内部に設置したキャッシュメモリに一時保管するシステムでは、以下のような方式が適用されている。 The graphics device uses various buffer memories. For example, a color buffer (frame buffer) / depth buffer / stencil buffer / alpha buffer / mask buffer / texture buffer / display list buffer are used. In a system in which each buffer data is stored in a storage device outside the graphics apparatus and a part of the buffer data is temporarily stored in a cache memory installed inside the graphics apparatus, the following method is applied.
(1)分離キャッシュメモリ方式
様々なバッファ毎に専用のキャッシュメモリを設置する。各キャッシュメモリは独立して動作する。但し、以下のようなデメリットが生じる。
使用するグラフィクス機能の種類によっては使用しないバッファが生じる場合がある。この場合、対応する専用キャッシュメモリは未使用状態となり、キャッシュメモリに無駄が生じてしまう(デメリット1)。例えば、グラフィクス機能としてアルファバッファを使用しない場合、アルファ専用のキャッシュメモリは未使用状態になる。
また、グラフィクス装置が使用するバッファの種類が増えると、それに対応する専用キャッシュメモリも増やさなくてはいけない(デメリット2)。
(1) Separate cache memory system A dedicated cache memory is installed for each of various buffers. Each cache memory operates independently. However, the following disadvantages occur.
Depending on the type of graphics function used, an unused buffer may occur. In this case, the corresponding dedicated cache memory becomes unused, and the cache memory is wasted (disadvantage 1). For example, when the alpha buffer is not used as the graphics function, the alpha dedicated cache memory is unused.
In addition, as the types of buffers used by the graphics device increase, the number of dedicated cache memories corresponding to that increases (disadvantage 2).
(2)ユニファイドキャッシュメモリ方式
一つのキャッシュメモリを共有使用する。使用するバッファのデータだけがキャッシュメモリに一時保管され、それらのデータでキャッシュメモリを使い切ることができる。分離キャッシュ方式のデメリット1,2は解決できる。但し、以下のようなデメリットが生じる。
並列動作ができなくなるため、グラフィクス装置の動作速度が遅くなる。例えば、カラーバッファのデータとアルファバッファのデータを同じタイミングで読み出せない場合、グラフィクス装置の動作速度が低下する可能性がある。
(2) Unified cache memory system One cache memory is shared and used. Only the buffer data to be used is temporarily stored in the cache memory, and the cache memory can be used up with these data. Disadvantages 1 and 2 of the separate cache method can be solved. However, the following disadvantages occur.
Since the parallel operation cannot be performed, the operation speed of the graphics apparatus becomes slow. For example, when the color buffer data and the alpha buffer data cannot be read at the same timing, the operation speed of the graphics apparatus may be reduced.
このように、分離キャッシュメモリ方式では未使用キャッシュメモリが生じてしまう。また、ユニファイドキャッシュメモリ方式ではこのような問題は発生しない反面、並列動作ができなくなる。どのような場合でも並列動作可能で未使用部分がないキャッシュメモリがグラフィクス装置にとって一番使用効率がよいが、従来ではどちらの方式でも実現できなった。 Thus, an unused cache memory is generated in the separated cache memory system. Further, in the unified cache memory system, such a problem does not occur, but parallel operation cannot be performed. In any case, a cache memory that can be operated in parallel and has no unused portion is the most efficient for the graphics device, but in the past, either method could not be realized.
一方、キャッシュメモリを動的に再構築することでキャッシュメモリの使用効率を向上させる技術が開発されている(例えば、特許文献1または特許文献2参照)。 On the other hand, a technique for improving the usage efficiency of a cache memory by dynamically reconfiguring the cache memory has been developed (see, for example, Patent Document 1 or Patent Document 2).
しかしながら、上記従来のキャッシュメモリを動的に再構築する技術は、単独動作するキャッシュメモリについての構成変更に関するものであり、並列動作するキャッシュメモリには適用できないという問題点があった。 However, the above-described technology for dynamically reconfiguring the cache memory relates to a configuration change for a cache memory that operates independently, and has a problem that it cannot be applied to a cache memory that operates in parallel.
この発明は上記のような課題を解決するためになされたもので、使用するバッファの種類に応じて効率の良いキャッシュメモリの構成を実現することができるキャッシュメモリ制御装置を得ることを目的とする。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a cache memory control device capable of realizing an efficient cache memory configuration according to the type of buffer used. .
この発明に係るキャッシュメモリ制御装置は、使用されるバッファメモリの種類以上の個数が設けられた複数のメモリユニットと、複数のメモリユニットに対応して設けられ、対応したメモリユニットに対して、使用されるバッファメモリのアドレスを与える複数の入力選択手段と、使用されるバッファメモリに対応して設けられ、複数のメモリユニットのうちいずれかのメモリユニットから出力されるヒットフラグに基づいて、使用されるバッファメモリのデータがヒットしたか否かを判定する出力選択手段と、使用されるバッファメモリのアドレスを、少なくとも一つの入力選択手段が選択するよう、その入力選択手段を割り当てると共に、出力選択手段が、対応するバッファメモリのデータをキャッシュするメモリユニットの出力を選択するよう、出力選択手段を割り当てるキャッシュメモリ制御手段とを備えたものである。 The cache memory control device according to the present invention includes a plurality of memory units provided with a number equal to or greater than the type of buffer memory to be used, and a plurality of memory units corresponding to the plurality of memory units. A plurality of input selection means for providing an address of the buffer memory to be used, and a buffer memory provided corresponding to the buffer memory to be used, and used based on a hit flag output from any one of the plurality of memory units. Output selection means for determining whether or not the data in the buffer memory to be hit is hit, and assigning the input selection means so that at least one input selection means selects the address of the buffer memory to be used, and output selection means Selects the output of the memory unit that caches the data in the corresponding buffer memory. To such, in which a cache memory control means for assigning the output selection means.
この発明のキャッシュメモリ制御装置は、使用されるバッファメモリの種類以上の個数のメモリユニットを設け、キャッシュメモリ制御手段は、使用されるバッファメモリのデータが少なくとも一つのメモリユニットでキャッシュされるよう、入力選択手段と出力選択手段を割り当てるようにしたので、使用するバッファメモリの種類に応じて効率の良いキャッシュメモリの構成を実現することができる。 The cache memory control device of the present invention is provided with a number of memory units equal to or greater than the type of buffer memory to be used, and the cache memory control means is configured so that data of the buffer memory to be used is cached in at least one memory unit. Since the input selection means and the output selection means are assigned, an efficient cache memory configuration can be realized according to the type of buffer memory to be used.
実施の形態1.
図1は、この発明の実施の形態1によるキャッシュメモリ制御装置を示す構成図である。
図において、キャッシュメモリ制御装置は、メモリユニット100〜130、インプットセレクタ(入力選択手段)200〜230、アウトプットセレクタ(出力選択手段)300〜320、キャッシュ制御ユニット(キャッシュメモリ制御手段)400を備えている。
Embodiment 1 FIG.
1 is a block diagram showing a cache memory control apparatus according to Embodiment 1 of the present invention.
In the figure, the cache memory control device includes
本実施の形態では、キャッシュメモリ制御装置を使用するグラフィック装置は、例えば、カラーバッファとデプスバッファとアルファバッファを同時に使用することを想定している。グラフィクス装置に内蔵する再構成可能キャッシュメモリは3つのバッファ用のキャッシュに割り当てられる。4個のメモリユニット100〜130それぞれは、カラーバッファ/デプスバッファ/アルファバッファいずれかのキャッシュメモリとして動的に割り当てられる。
In the present embodiment, it is assumed that the graphic device using the cache memory control device uses, for example, a color buffer, a depth buffer, and an alpha buffer at the same time. The reconfigurable cache memory built in the graphics apparatus is allocated to caches for three buffers. Each of the four
ここで、グラフィック装置が同時に処理するバッファメモリ(以下、単にバッファと称す)の数を最大並列動作数Mとし、メモリユニットの個数をUとすると、M≦Uになるように再構成可能キャッシュメモリを構成する必要がある。U個のメモリユニットをM個の並列動作するキャッシュメモリに分割するからである。図1の例は、M=3,U=4の場合のキャッシュメモリ構成例である。従って、インプットセレクタ200〜230はU個必要であり、それぞれのインプットセレクタ200〜230に入力するアドレスはM個である。アウトプットセレクタ300〜320はM個必要であり、メモリユニット100〜130U個からヒットフラグとデータを受け取る。
Here, if the number of buffer memories (hereinafter simply referred to as “buffers”) simultaneously processed by the graphic device is the maximum number of parallel operations M and the number of memory units is U, a reconfigurable cache memory so that M ≦ U. Need to be configured. This is because the U memory units are divided into M cache memories that operate in parallel. The example of FIG. 1 is a cache memory configuration example when M = 3 and U = 4. Accordingly,
以下、各構成の詳細について説明する。
メモリユニット100〜130は、図示しないバッファのデータをキャッシュするためのキャッシュメモリであり、図示例では4個のメモリユニットが設けられている。インプットセレクタ200〜230は、それぞれのメモリユニット100〜130に対応して設けられ、キャッシュ制御ユニット400の割り当てに基づいて、与えられた各バッファのアドレスのうち、いずれかのバッファのアドレスを対応したメモリユニット100〜130に与えるよう構成されている。アウトプットセレクタ300〜320は、使用するバッファの数に対応して設けられ、内部には、ヒット判定部301,311,321と、データセレクタ302,312,322を備えている。これらのアウトプットセレクタ300〜320は、キャッシュ制御ユニット400による割り当てに基づいて、ヒット判定部301,311,321により、各メモリユニット100〜130からの出力信号がヒットしたか否かを判定し、ヒットした場合は、データセレクタ302,312,322によって該当するメモリユニット100〜130からデータ信号を送出するよう構成されている。
Details of each component will be described below.
The
キャッシュ制御ユニット400は、インプットセレクタ200〜230のそれぞれに対して、少なくとも一つのバッファのアドレスを選択するよう割り当てを行うと共に、割り当てを行ったインプットセレクタ200〜230に対応したメモリユニット100〜130から出力された信号のみ有効とするようアウトプットセレクタ300〜320に対して割り当てを行うよう構成されている。
The
次に、実施の形態1のキャッシュメモリ制御装置の動作について説明する。
先ず、キャッシュ制御ユニット400によるキャッシュメモリの再構成(インプットセレクタ200〜230およびアウトプットセレクタ300〜320の割り当て)を説明する。
グラフィクス装置は、機能パラメータを保持しており、その機能パラメータによって使用するグラフィクス機能を変更することができる。尚、グラフィクス装置の機能パラメータの設定は、図示しないグラフィクス装置のCPU等によって行われる。グラフィクス装置のキャッシュ制御ユニット400は、設定された機能パラメータからグラフィクス装置が使用するバッファの種類を判定する。例えば、カラーバッファとデプスバッファしか使用しないグラフィクス機能のみが有効化されている場合、カラーバッファとデプスバッファ以外のバッファは使用しないと判定する。
Next, the operation of the cache memory control device according to the first embodiment will be described.
First, the cache memory reconfiguration (assignment of the
The graphics apparatus holds function parameters, and the graphics function to be used can be changed according to the function parameters. Note that the function parameters of the graphics apparatus are set by a CPU of the graphics apparatus (not shown). The
キャッシュ制御ユニット400は、使用するバッファの種類からメモリユニット100〜130の割り当てを決定する。使用すると判定したバッファに少なくとも一つのメモリユニット100〜130を割り当てる。
例えば、カラーバッファとデプスバッファしか使用しない描画を行う場合、アルファバッファに対してキャッシュメモリを割り当てる必要はない。そこでカラーバッファに対して2つのメモリユニット100と110、デプスバッファに対して2つのメモリユニット120と130を割り当てる。このように、4つあるメモリユニット100〜130を使い切るように分割する。
The
For example, when drawing using only a color buffer and a depth buffer, it is not necessary to allocate a cache memory for the alpha buffer. Therefore, two
インプットセレクタ200〜230では、キャッシュ制御ユニット400からの割り当て結果に基づいてメモリユニット100〜130への入力(アドレス)の選択を行う。例えば、上記のように、カラーバッファに対して2つのメモリユニット100と110、デプスバッファに対して2つのメモリユニット120と130を割り当てる場合、インプットセレクタ200と210はカラーバッファのアドレス500を選択し、インプットセレクタ220と230はデプスバッファのアドレス510を選択する。
The
アウトプットセレクタ300〜320では、キャッシュ制御ユニット400による割り当て結果に基づいてメモリユニット100〜130からの出力(ヒットフラグやデータ)の選択を行う。例えば、上記のように、カラーバッファに対して2つのメモリユニット100と110、デプスバッファに対して2つのメモリユニット120と130を割り当てる場合、カラーバッファ用のアウトプットセレクタ300は、メモリユニット100と110の出力を選択し、デプスバッファ用のアウトプットセレクタ310は、メモリユニット120と130の出力を選択する。
The
カラーバッファ用のアウトプットセレクタ300のヒット判定部301では、メモリユニット100,110が出力するヒットフラグ102,112のいずれかが有効であれば、いずれかのメモリユニット100,110がヒットしていることを表しているので、出力するヒットフラグ301aを有効とする。尚、メモリユニット100〜130では、与えられたアドレス101,111,121,131に基づいて、インデックスに対応するタグの値を取り出し、これをアドレス101,111,121,131に含まれるタグの値と比較することでヒット判定を行うが、これらのヒット判定やヒットした場合のデータ103,113,123,133の出力については、公知のキャッシュメモリの動作であるので、ここでの説明は省略する。
In the
アウトプットセレクタ300におけるデータセレクタ302ではヒットしているメモリユニット100(または110)が出力するデータを選択してデータ302aとして出力する。一方、アウトプットセレクタ300では、カラーバッファに割り当てられていないメモリユニット120と130が出力する信号は有効でないとして扱う。
The
デプスバッファ用のアウトプットセレクタ310では、ヒット判定部311によって、メモリユニット120と130からの出力信号からヒットフラグ311aを生成する。メモリユニット100と110からの出力信号は無視する。2本のヒットフラグ122と132のどちらかが有効であれば、いずれかのメモリユニット120,130がヒットしていることを表している。この場合、出力するヒットフラグ311aを有効化し、ヒットしているメモリユニット120(または130)のデータを選択し、データ312aとして出力する。
In the
アルファバッファ用のアウトプットセレクタ320では、メモリユニット100〜130の出力を一切使用しない。従って、出力するヒットフラグ321aおよびデータ322aは常に無効化する。
The
このように再構築すれば、図2に示したキャッシュメモリと同様の構成になる。カラーバッファ用のキャッシュメモリは2ウェイセットアソシアティブ構成になり、デプスバッファ用のキャッシュメモリも2ウェイセットアソシアティブ構成になる。未使用キャッシュメモリは発生しない。 If rebuilt in this way, the configuration is the same as that of the cache memory shown in FIG. The color buffer cache memory has a two-way set associative configuration, and the depth buffer cache memory also has a two-way set associative configuration. Unused cache memory does not occur.
次に、カラーバッファとデプスバッファとアルファバッファを同時に使用する場合の再構成例を示す。
キャッシュ制御ユニット400は、機能パラメータに基づいて、カラーバッファとデプスバッファとアルファバッファを使用すると判定した場合、例えば、カラーバッファに対して2つ、デプスバッファに対して1つ、アルファバッファに対して1つのメモリユニット100〜130を割り当てる。ここでも4つあるメモリユニットを使い切るように分割する。即ち、キャッシュ制御ユニット400は、2つのインプットセレクタ200,210がカラーバッファ用のアドレス500を、インプットセレクタ220がデプスバッファ用のアドレス510を、インプットセレクタ230がアルファバッファ用のアドレス520を選択するようそれぞれ制御を行う。
Next, an example of reconstruction in the case where a color buffer, a depth buffer, and an alpha buffer are used at the same time will be shown.
If the
また、キャッシュ制御ユニット400は、アウトプットセレクタ300〜320に対して、アウトプットセレクタ300がメモリユニット100,110の出力を、アウトプットセレクタ310がメモリユニット120の出力を、アウトプットセレクタ320がメモリユニット130の出力に基づいてヒット判定およびデータ出力を行うよう制御を行う。
Further, in the
このように再構築すれば、図3に示したキャッシュメモリと同様の構成になる。カラーバッファ用のキャッシュメモリは2ウェイセットアソシアティブ構成になり、デプスバッファ用のキャッシュメモリとアルファバッファ用のキャッシュメモリは1ウェイセットアソシアティブ(=ダイレクトマップ)構成になる。未使用キャッシュメモリは発生しない。尚、この例では、カラーバッファ用のキャッシュメモリを2ウェイセットアソシアティブ構成としたが、デプスバッファまたはアルファバッファに対して2ウェイセットアソシアティブ構成としてもよい。 If reconstructed in this way, the configuration is the same as that of the cache memory shown in FIG. The color buffer cache memory has a two-way set associative configuration, and the depth buffer cache memory and the alpha buffer cache memory have a one-way set associative (= direct map) configuration. Unused cache memory does not occur. In this example, the color buffer cache memory has a two-way set associative configuration, but may have a two-way set associative configuration with respect to a depth buffer or an alpha buffer.
次に、カラーバッファしか使用しない場合の再構築例を説明する。この場合、キャッシュ制御ユニット400は、全てのメモリユニット100〜130をカラーバッファ用のキャッシュメモリに割り当てるようインプットセレクタ200〜230およびアウトプットセレクタ300〜320を制御する。即ち、全てのインプットセレクタ200〜230は、カラーバッファ用のアドレス500を選択するよう制御し、また、カラーバッファ用のアウトプットセレクタ300は、全てのメモリユニット100〜130からの出力を選択する。
Next, an example of reconstruction when only a color buffer is used will be described. In this case, the
このように再構築すれば、図4に示したキャッシュメモリと同様の構成になる。カラーバッファ用のキャッシュメモリは4ウェイセットアソシアティブ構成になる。未使用キャッシュメモリは発生しない。 If reconstructed in this way, the configuration is the same as that of the cache memory shown in FIG. The cache memory for the color buffer has a 4-way set associative configuration. Unused cache memory does not occur.
以上のように、実施の形態1のキャッシュメモリ制御装置によれば、使用されるバッファメモリの種類以上の個数が設けられ、使用されるバッファメモリのデータをキャッシュすると共に、使用されるバッファメモリのアドレスが与えられた場合、キャッシュしたデータがヒットしたか否かを示すヒットフラグを出力する複数のメモリユニットと、複数のメモリユニットに対応して設けられ、対応したメモリユニットに対して、使用されるバッファメモリのアドレスを与える複数の入力選択手段と、使用されるバッファメモリに対応して設けられ、複数のメモリユニットのうちいずれかのメモリユニットから出力されるヒットフラグに基づいて、使用されるバッファメモリのデータがヒットしたか否かを判定する出力選択手段と、使用されるバッファメモリのアドレスを、少なくとも一つの入力選択手段が選択するよう、その入力選択手段を割り当てると共に、出力選択手段が、対応するバッファメモリのデータをキャッシュするメモリユニットの出力を選択するよう、その出力選択手段を割り当てるキャッシュメモリ制御手段とを備えたので、例えば、複数のバッファメモリを使用する場合にも並列動作が可能で、また、バッファメモリを一つだけ使用する場合でも複数のメモリユニットを割り当てることが可能であるといったように、使用するバッファの種類に応じて効率の良いキャッシュメモリの構成を実現することができる。 As described above, according to the cache memory control device of the first embodiment, the number of types of buffer memory to be used is more than that, the data of the used buffer memory is cached, and When an address is given, a plurality of memory units that output a hit flag indicating whether or not the cached data has been hit, and a plurality of memory units are provided and used for the corresponding memory units. A plurality of input selection means for giving an address of the buffer memory and a buffer memory used corresponding to the buffer memory to be used, and used based on a hit flag output from any one of the plurality of memory units Used with output selection means for determining whether or not the data in the buffer memory has been hit The input selection means is assigned so that the address of the buffer memory is selected by at least one input selection means, and the output selection means selects the output of the memory unit that caches the data in the corresponding buffer memory. Cache memory control means for assigning means, for example, parallel operation is possible even when a plurality of buffer memories are used, and a plurality of memory units are assigned even when only one buffer memory is used. Thus, an efficient cache memory configuration can be realized in accordance with the type of buffer to be used.
また、実施の形態1のキャッシュメモリ制御装置によれば、キャッシュメモリ制御手段は、全てのメモリユニットでいずれかのバッファメモリのデータがキャッシュされるよう複数の入力選択手段および出力選択手段を割り当てるようにしたので、無駄のないキャッシュメモリの構成を実現することができる。 Further, according to the cache memory control apparatus of the first embodiment, the cache memory control means allocates a plurality of input selection means and output selection means so that the data of any buffer memory is cached in all the memory units. Therefore, a cache memory configuration without waste can be realized.
実施の形態2.
実施の形態2は、使用するバッファには少なくとも一つのメモリユニットを割り当てるという条件を満たしながら、使用しないメモリユニットを設けるようにしたものである。図面上の構成は図1と同様であるため、図1を援用して説明する。
Embodiment 2. FIG.
In the second embodiment, a memory unit that is not used is provided while satisfying the condition that at least one memory unit is allocated to the buffer to be used. Since the configuration on the drawing is the same as that of FIG. 1, description will be made with reference to FIG.
実施の形態2におけるキャッシュ制御ユニット400は、使用するバッファのアドレスを少なくとも一つのインプットセレクタ200〜230が選択するよう制御すると共に、いずれのバッファのアドレスも選択しないインプットセレクタ200〜230が存在するよう割り当て制御を行う構成とされている。また、未使用のメモリユニット100〜130に対しては、電力供給やクロックの供給を停止させるよう構成されている。
The
例えば、カラーバッファとデプスバッファとアルファバッファを同時に使用する場合の再構成例を説明する。
キャッシュ制御ユニット400は、機能パラメータに基づいて、カラーバッファとデプスバッファとアルファバッファを使用すると判定した場合、例えば、これらバッファに対してそれぞれ1つずつのメモリユニット100〜130を割り当てる。その一例としては、インプットセレクタ200がカラーバッファ用のアドレス500を、インプットセレクタ210がデプスバッファ用のアドレス510を、インプットセレクタ220がアルファバッファ用のアドレス520をそれぞれ選択するよう割り当て制御する。また、アウトプットセレクタ300〜320に対しては、カラーバッファ用のアウトプットセレクタ300がメモリユニット100の出力を、デプスバッファ用のアウトプットセレクタ310がメモリユニット110の出力を、アルファバッファ用のアウトプットセレクタ320がメモリユニット120の出力をそれぞれ選択するよう割り当て制御する。
For example, a reconfiguration example in the case of using a color buffer, a depth buffer, and an alpha buffer at the same time will be described.
If the
このように割り当て制御することにより、4つあるメモリユニット100〜130のうち、メモリユニット130は未使用となる。そして、この場合、キャッシュ制御ユニット400は、メモリユニット130に対する電力の供給やクロックの供給を停止するよう図示しないグラフィクス装置の電力供給手段やクロック供給手段に対して指示を行う。その結果、メモリユニット130への電力の供給やクロックの供給が停止され、グラフィクス装置としての消費電力の削減を図ることができる。
By performing the allocation control in this way, the
尚、未使用のメモリユニットとしてメモリユニット130の場合を説明したが、未使用とするのはどのメモリユニットであっても構わない。また、使用するバッファに対して、少なくとも一つのメモリユニットを割り当てるという条件を満たす割り当てであれば、使用するバッファの種類とメモリユニットの個数との関係に応じてどのような割り当てであってもよい。
Although the
以上のように、実施の形態2のキャッシュメモリ制御装置によれば、キャッシュメモリ制御手段は、全てのメモリユニットのうち、バッファメモリのデータのキャッシュは行わない未使用状態のメモリユニットが存在するよう複数の入力選択手段および出力選択手段を割り当てるようにしたので、使用するバッファの種類に応じて効率の良いキャッシュメモリの構成を実現することができると共に、入力選択手段や出力選択手段への割り当て制御のみで必要最低限のキャッシュメモリの構成が得られ、例えば、消費電力の削減といった効果が得られる。 As described above, according to the cache memory control device of the second embodiment, the cache memory control means seems to include an unused memory unit that does not cache the buffer memory data among all the memory units. Since a plurality of input selection means and output selection means are assigned, an efficient cache memory configuration can be realized according to the type of buffer used, and assignment control to the input selection means and output selection means can be realized. Only a minimum cache memory configuration can be obtained, and for example, an effect of reducing power consumption can be obtained.
100,110,120,130 メモリユニット、101,111,121,131 アドレス、102,112,122,132 ヒットフラグ、103,113,123,133 データ、200,210,220,230 インプットセレクタ(入力選択手段)、300,310,320 アウトプットセレクタ(出力選択手段)、301,311,321 ヒット判定部、302,312,322 データセレクタ、400 キャッシュ制御ユニット(キャッシュメモリ制御手段)、500 カラーバッファ用のアドレス、510 デプスバッファ用のアドレス、520 アルファバッファ用のアドレス。 100, 110, 120, 130 Memory unit, 101, 111, 121, 131 Address, 102, 112, 122, 132 Hit flag, 103, 113, 123, 133 Data, 200, 210, 220, 230 Input selector (input selection) Means), 300, 310, 320 output selector (output selection means), 301, 311, 321 hit determination unit, 302, 312, 322 data selector, 400 cache control unit (cache memory control means), 500 for color buffer Address, address for 510 depth buffer, address for 520 alpha buffer.
Claims (3)
前記複数のメモリユニットに対応して設けられ、対応したメモリユニットに対して、前記使用されるバッファメモリのアドレスを与える複数の入力選択手段と、
前記使用されるバッファメモリに対応して設けられ、前記複数のメモリユニットのうちいずれかのメモリユニットから出力されるヒットフラグに基づいて、前記使用されるバッファメモリのデータがヒットしたか否かを判定する出力選択手段と、
前記使用されるバッファメモリのアドレスを、少なくとも一つの前記入力選択手段が選択するよう、当該入力選択手段を割り当てると共に、前記出力選択手段が、対応するバッファメモリのデータをキャッシュするメモリユニットの出力を選択するよう、当該出力選択手段を割り当てるキャッシュメモリ制御手段とを備えたキャッシュメモリ制御装置。 Whether or not the cached data has been hit when the number of types of buffer memory to be used is provided and the data of the buffer memory to be used is cached and the address of the buffer memory to be used is given A plurality of memory units that output a hit flag indicating
A plurality of input selection means provided corresponding to the plurality of memory units, and giving the addresses of the buffer memories used to the corresponding memory units;
Based on a hit flag provided corresponding to the used buffer memory and output from any one of the plurality of memory units, it is determined whether or not the data in the used buffer memory has hit. An output selection means for determining;
The input selection unit is assigned so that at least one of the input selection units selects the address of the buffer memory to be used, and the output selection unit outputs the output of the memory unit that caches the data of the corresponding buffer memory. A cache memory control device comprising: cache memory control means for assigning the output selection means so as to select.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006271937A JP2008090673A (en) | 2006-10-03 | 2006-10-03 | Cache memory control device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006271937A JP2008090673A (en) | 2006-10-03 | 2006-10-03 | Cache memory control device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2008090673A true JP2008090673A (en) | 2008-04-17 |
Family
ID=39374736
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006271937A Pending JP2008090673A (en) | 2006-10-03 | 2006-10-03 | Cache memory control device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2008090673A (en) |
Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0877072A (en) * | 1994-08-31 | 1996-03-22 | Oki Electric Ind Co Ltd | Cache memory device |
| JPH10124202A (en) * | 1996-10-04 | 1998-05-15 | Internatl Business Mach Corp <Ibm> | Method and system reducing power consumption in electronic circuit |
| JPH10247138A (en) * | 1996-09-13 | 1998-09-14 | Silicon Graphics Inc | Computer system |
| JP2000298618A (en) * | 1999-04-14 | 2000-10-24 | Toshiba Corp | Set associative cache memory device |
| JP2003208631A (en) * | 1998-10-14 | 2003-07-25 | Hitachi Ltd | 3D graphic processor |
| JP2003323632A (en) * | 2002-05-01 | 2003-11-14 | Toshiba Corp | Image processing device |
| JP2004510270A (en) * | 2000-09-28 | 2004-04-02 | インテル・コーポレーション | Method and apparatus for performing full scene anti-aliasing supersampling |
| JP2004280596A (en) * | 2003-03-17 | 2004-10-07 | Nintendo Co Ltd | Shadow volume generation program and game device |
| WO2007127745A1 (en) * | 2006-04-26 | 2007-11-08 | Qualcomm Incorporated | Graphics system with configurable caches |
| JP2008047124A (en) * | 2006-08-11 | 2008-02-28 | Samsung Electronics Co Ltd | Method and apparatus for processing computer graphics data |
-
2006
- 2006-10-03 JP JP2006271937A patent/JP2008090673A/en active Pending
Patent Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0877072A (en) * | 1994-08-31 | 1996-03-22 | Oki Electric Ind Co Ltd | Cache memory device |
| JPH10247138A (en) * | 1996-09-13 | 1998-09-14 | Silicon Graphics Inc | Computer system |
| JPH10124202A (en) * | 1996-10-04 | 1998-05-15 | Internatl Business Mach Corp <Ibm> | Method and system reducing power consumption in electronic circuit |
| JP2003208631A (en) * | 1998-10-14 | 2003-07-25 | Hitachi Ltd | 3D graphic processor |
| JP2000298618A (en) * | 1999-04-14 | 2000-10-24 | Toshiba Corp | Set associative cache memory device |
| JP2004510270A (en) * | 2000-09-28 | 2004-04-02 | インテル・コーポレーション | Method and apparatus for performing full scene anti-aliasing supersampling |
| JP2003323632A (en) * | 2002-05-01 | 2003-11-14 | Toshiba Corp | Image processing device |
| JP2004280596A (en) * | 2003-03-17 | 2004-10-07 | Nintendo Co Ltd | Shadow volume generation program and game device |
| WO2007127745A1 (en) * | 2006-04-26 | 2007-11-08 | Qualcomm Incorporated | Graphics system with configurable caches |
| JP2009535710A (en) * | 2006-04-26 | 2009-10-01 | クゥアルコム・インコーポレイテッド | Graphics system with configurable cache |
| JP2008047124A (en) * | 2006-08-11 | 2008-02-28 | Samsung Electronics Co Ltd | Method and apparatus for processing computer graphics data |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8035650B2 (en) | Tiled cache for multiple software programs | |
| US9921972B2 (en) | Method and apparatus for implementing a heterogeneous memory subsystem | |
| US6856320B1 (en) | Demand-based memory system for graphics applications | |
| US7102646B1 (en) | Demand-based memory system for graphics applications | |
| US10515011B2 (en) | Compression status bit cache and backing store | |
| US8627041B2 (en) | Efficient line and page organization for compression status bit caching | |
| US12380027B2 (en) | Method and apparatus for using a storage system as main memory | |
| US10255195B2 (en) | Apparatus and method for performing address translation | |
| JP2008542948A (en) | Microprocessor with configurable translation lookaside buffer | |
| US20110057935A1 (en) | Tiling Compaction in Multi-Processor Systems | |
| JP2013025823A (en) | Virtual GPU | |
| US20120079200A1 (en) | Unified streaming multiprocessor memory | |
| US20180129608A9 (en) | Memory Attribute Sharing Between Differing Cache Levels of Multilevel Cache | |
| JP2015532994A (en) | Message signal interrupt communication | |
| Grimm et al. | A refined data addressing and processing scheme to accelerate volume raycasting | |
| KR20030025319A (en) | Method for address translation of semiconductor memory device and apparatus the same | |
| US7024536B2 (en) | Translation look-aside buffer for improving performance and reducing power consumption of a memory and memory management method using the same | |
| JP2009015509A (en) | Cache memory device | |
| JP2005346358A (en) | Device and method for converting address | |
| GB2530261A (en) | Memory and processor hierarchy to improve power efficiency | |
| US8862823B1 (en) | Compression status caching | |
| JP2008090673A (en) | Cache memory control device | |
| KR20170102720A (en) | Cache memory and operation method thereof | |
| US20120324167A1 (en) | Multicore processor system and multicore processor | |
| CN101986287A (en) | Reform buffer for vector data streams |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080703 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090826 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120328 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120410 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120724 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121113 |