JP5650441B2 - 演算装置、キャッシュ装置、その制御方法及びコンピュータプログラム - Google Patents
演算装置、キャッシュ装置、その制御方法及びコンピュータプログラム Download PDFInfo
- Publication number
- JP5650441B2 JP5650441B2 JP2010130447A JP2010130447A JP5650441B2 JP 5650441 B2 JP5650441 B2 JP 5650441B2 JP 2010130447 A JP2010130447 A JP 2010130447A JP 2010130447 A JP2010130447 A JP 2010130447A JP 5650441 B2 JP5650441 B2 JP 5650441B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache
- pipeline
- data processing
- node
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 21
- 238000004590 computer program Methods 0.000 title claims description 4
- 230000006870 function Effects 0.000 claims description 3
- 238000005192 partition Methods 0.000 description 50
- 238000010586 diagram Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000010076 replication Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Advance Control (AREA)
Description
図1は、キャッシュ装置110を含む画像処理装置100の全体構成の一例を示すブロック図である。キャッシュ装置110は、後述するデータ処理装置をフルアソシアティブ方式のキャッシュ判定部120として応用している。
続いてキャッシュ装置110の構成と動作について詳細説明する。前述の処理装置A101から処理装置D104は、キャッシュ装置110を介してDRAM165からデータを読み出す際に、DRAM165上のデータの格納アドレスをI/F112に送り出す。キャッシュ装置110は、DRAM165上のデータの格納アドレスを伝達するために、アクセス要求用のリングバス111を含む。そして処理装置の各々に対応したI/F112は、このリングバス111で互いに接続されている。処理装置の各々から送出した格納アドレス113は、I/F112とリングバス111を介してキャッシュ判定部120に入力される。そして入力された格納アドレス113をもとにキャッシュ判定部120がキャッシュヒットするか否かを判定する。
図2を参照してキャッシュ判定部120の回路構成の一例について詳細に説明する。キャッシュ判定部120はデータ処理装置200とキャッシュ判定装置280とを含む。
・アドレスの有効信号である「valid」、
・アドレス信号である「data」、
・処理装置101〜104の識別信号である「ID」、
が含まれ、これらの信号がデータ処理装置200へ入力される。
図3を参照してデータ処理装置200の回路構成の一例について詳細に説明する。図3はデータ処理装置200の一部に注目した図である。第1パイプライン300は複数のノード(第1ノード)を有する。この中の1つを着目ノード(例えばノード310)とすると、着目ノードから第1方向(図1の右方向)へ1つ下手の第1ノード(例えばノード330)へデータ要素(第1データ)を移動させる。第1パイプライン300には、図2に示すように、データ処理装置200の外部から、
・アドレスの有効信号である「valid」、
・アドレス信号である「data」、
・アドレス信号の処理結果である処理結果信号「tag_id」、
・処理装置の識別信号である「ID」、
が入力される。「valid」、「data」及び「ID」は格納アドレス113に含まれるものであり、「tag_id」は例えばデフォルト値である。
・アドレスの有効信号である「valid[l−1]」312、
・アドレス信号である「data[l−1]」314、
・処理装置の識別信号である「ID[l−1]」、
が入力される。図3では簡略化のため「valid」と「ID」とを1本の信号線で表している。また、データ処理回路320へは、
・アドレス信号である「data[l−1]」314、
・アドレス信号の処理結果である処理結果信号「tag_id[l−1]」316、
が入力される。データ処理回路320はこれらの入力信号に対して後述の処理を行って、処理結果をノード310へ出力する。
・アドレスの有効信号「valid[l]」332、
・アドレス信号「data[l]」334、
・処理結果信号「tag_id[l]」336、
・識別信号「ID[l]」、
を下手側のノード330及びデータ処理回路340へ出力する。図3において、第1パイプライン300のうち、ノード330とデータ処理回路340とを含む区間を第2ステージと呼ぶ。第1ステージと同様に第2ステージでも種々のデータ処理が行われる。そして処理後のデータ要素がノード330にて一時記憶されるが、この記憶動作は第1ステージと同様である。
・アドレスの有効信号「valid[l+1]」352、
・アドレス信号「data[l+1]」354、
・処理結果信号「tag_id[l+1]」356、
・識別信号「ID[l+1]」、
を出力する。このような動作により、第1パイプライン300では、データ要素(有効信号「valid」、アドレス信号「data」、処理結果信号「tag_id」、識別信号「ID」)が「上手」である図面の左側から「下手」である図面の右側へ移動する。
続いて、データ処理回路320、340について詳細に説明する。データ処理回路は、2方向のアドレス信号「data」と「tag_data」とを比較(第1比較)し、等しい場合に「tag_data」の格納番号(前述の“[i]”、“[i+1]”、“[i+2]”)を「tag_id」として記憶する。そして「tag_id」は、第1パイプライン300のデータ処理結果として、「data」と同期して「上手」である図面の左側から「下手」である図面の右側へ移動する。このようにして、「tag_id[l]」336には、第1パイプライン300のl番目のデータ要素「data[l]」334と値が等しい第2パイプライン360のデータ要素の格納番号が設定されることになる。
続いて、キャッシュヒット判定の手順を説明する。キャッシュヒット判定とは、格納アドレス113で指定されたデータがキャッシュメモリ190に記憶されているか否かを判定することである。キャッシュメモリ190に記憶されている場合にキャッシュヒットと判定され、キャッシュメモリ190に記憶されていない場合にキャッシュミスと判定される。キャッシュヒット判定はキャッシュ判定装置280で行われる。キャッシュ判定装置280は、キャッシュヒットかどうかを、データ処理装置200から出力される処理結果信号「tag_id」(2の補数表記)の1ビット長の符号ビットを調べることで判定する。データ処理装置200の出力である有効信号「valid」が有効(アサート状態)であり、且つその符号ビットが「1」である場合に、「tag_id」は負の値であり、キャッシュ判定装置280はキャッシュミスであると判定する。また、有効信号「valid」が有効(アサート状態)であり、且つその符号ビットが「0」であるとき、「tag_id」は正の値であり、キャッシュ判定装置280はキャッシュヒットであると判定する。有効信号「valid」が無効(ディアサート状態)である場合に、キャッシュ判定装置280は判定を行わない。また、アクセス調停部130からの「enable」が(ディアサート状態)である場合にも、キャッシュ判定装置280は判定を行わない。
・アドレスの有効信号「valid」、
・キャッシュミス時のDRAM165のデータ格納先であるアドレス信号「cache_miss_address」、
・処理装置の識別信号である「ID」、
・キャッシュデータの格納先である「tag_id」、
・キャッシュ判定結果である「cache_miss_flag」、
がアクセス調停部130へ出力される。
続いて、図1を参照してアクセス調停部130の動作を説明する。アクセス調停部130は判定結果125内の有効信号「valid」が有効(アサート状態)である場合に動作し、それ以外の場合は待機する。アクセス調停部130は、判定結果125内のキャッシュ判定結果「cache_miss_flag」の有効(アサート状態)/無効(ディアサート状態)に応じて以下の処理を行う。
続いて、キャッシュメモリ調停部180の動作を説明する。キャッシュメモリ調停部180は受信キュー170及び待ち合せキュー140の各々の格納領域にデータがあるかどうかを評価する。キャッシュメモリ調停部180は、待ち合せキュー140から処理すべきキャッシュ判定結果である「ID、tag_id、cache_miss_flag」をデキューする。待ち合せキュー140が空の場合は処理すべきキャッシュ判定結果がないため、キャッシュメモリ調停部180は何もせず待機する。次に、キャッシュメモリ調停部180は、キャッシュ判定結果「cache_miss_flag」が無効(ディアサート状態)か有効(アサート状態)かに応じて、以下の処理を行う。
図4を参照して本実施形態に係るキャッシュ装置について説明する。図4は本実施形態に係るキャッシュ判定部400の回路構成の一例を説明する図である。キャッシュ判定部400は図1のキャッシュ装置110のキャッシュ判定部120の代わりに用いられる。上述したキャッシュ装置110の基本構成と同様の部分の説明は繰り返さない。キャッシュ判定部400は複製装置410、演算装置430及びキャッシュ判定装置480を備える。演算装置430は複数のデータ処理装置200_1〜200_Nを備え、データ処理装置200_1〜200_Nのそれぞれは図2で説明したデータ処理装置200と同じ構成を有している。このように、キャッシュ判定部400は上述のデータ処理装置を複数備えることで、同時に比較できるデータ要素の数を増やしている。本実施形態に係るキャッシュ判定部400は基本となるデータ処理装置を複数備えることで設計・検証済みのデータ処理装置を再利用でき、開発効率を向上できるという利点がある。
キャッシュミスの場合には、最も後段に位置するデータ処理装置(N)200_Nの第2パイプライン360の出力として、「tag_data、tag_valid」が掃き捨てられる場合がある。この掃き捨てられたデータ要素はノード460へ出力され、ノード460はこれらのデータ要素を「sweep_address、sweep_address_valid」として判定結果125に含めてアクセス調停部130へ出力してもよい。このデータ要素を用いてライトバック・キャッシュ装置を実現できる。
・書き込みフラグである「write_enable」
・書き込みデータである「write_data」
を含める。書き込みフラグである「write_enable」が有効(アサート状態)である場合に、キャッシュメモリ190の格納先に書き込みデータである「write_data」が書き込まれる。書き込みフラグである「write_enable」が無効(ディアサート状態)である場合は、前述の実施形態で説明したリード・キャッシュ装置の動作が行われる。そして、「write_enable」と「write_data」は、格納アドレス113を構成する他のデータ要素と同期して、キャッシュ判定部400内のそれぞれのデータ処理装置200_1〜200_Nの第1パイプライン300を移動する。データ処理装置(N)200_Nは他のデータ要素と同期して「write_enable」と「write_data」をノード460に出力し、ノード460はこれらのデータを判定結果125に含めてアクセス調停部130へ出力する。すなわち、この変形例の判定結果125には、
・キャッシュミス時のDRAMのデータ格納先であるアドレス信号「cache_miss_address」、
・処理装置の識別信号である「ID」、
・キャッシュデータの格納先である「tag_id」、
・キャッシュ判定結果である「cache_miss_flag」、
・書き込みフラグである「write_enable」、
・書き込みデータである「write_data」、
・掃き捨てられたアドレス信号「sweep_address」、
・掃き捨てられたアドレスの有効信号「sweep_address_valid」、
が含まれる。
図5を参照して本実施形態に係るキャッシュ装置について説明する。図5は本実施形態に係るキャッシュ判定部500の回路構成の一例を説明する図である。キャッシュ判定部500は図1のキャッシュ装置110のキャッシュ判定部120の代わりに用いられる。上述したキャッシュ装置110の基本構成と同様の部分の説明は繰り返さない。また、第1実施形態で説明した変形例は本実施形態に対しても適用可能である。
本実施形態の演算装置530において、各データ処理装置の第2パイプライン360は破線部540のように接続される。この第2パイプライン360の接続は、データ処理装置(N)200_Nから出力されるパーティション情報「partition」535に応じて自動的に切り替わる。演算装置530は、デコーダ552が出力する「cache_miss_flag」544と、データ処理装置(N)が出力するパーティション情報「partition」535のデータ処理装置(1)〜(N)に対応する各1ビットとの論理積を各々算出する。そして、演算装置530は、算出した論理積を、対応するデータ処理装置の駆動信号「shift」として入力する(544_1、544_2、・・・、544_N)。これにより、すべてのデータ処理装置のうちで、パーティション情報で<使用>に設定されたデータ処理装置に対してのみ、第2パイプライン360のデータ要素が同期して移動することになる。
・データ処理装置(1)から(N)の処理結果「tag_id」の符号ビットを反転した信号(符号ビット551の何れか1ビットの反転)、
・パーティション情報「partition」535のデータ処理装置(1)から(N)に対応する1ビット信号、
・駆動信号「enable」121。
本実施形態では、図5に記載された複数のデータ処理装置(1)〜(N)の第1パイプライン300と第2パイプライン360の各ノードは1系統のクロック信号(不図示)により動作している。しかしながら、複数のデータ処理装置(1)〜(N)の各々に、同相ではあるが、異なる系統のクロック信号を入力してデータ処理装置(1)〜(N)の各々を動作させてもよい。そして消費電力の削減を優先する場合においては、データ処理装置(1)から(N)の何れかのクロック信号を停止し、そのデータ処理装置を停止させる。例えば、前述の具体例800において、処理装置A101のみを動作させ、処理装置B102から処理装置D104を停止する場合に、パーティション情報テーブル515の「ID」が「2」から「4」のパーティション情報に“00000000”を設定する。そして、データ処理装置(1)以外の他のデータ処理装置を停止させる。また、消費電力の削減を優先しつつ、低速ながらも処理装置A101から処理装置D104を動作させるためには、「ID」が「1」〜「4」のパーティション情報に“10000000”を設定する。これにより、データ処理装置(1)は、処理装置A101〜処理装置D104のすべてで共有される。そして、他のデータ処理装置は使用されていないので、これを停止させることができる。また、キャッシュメモリ900を、データ処理装置(1)〜(N)の領域ごとに異なるSRAMで実現する。そして、上述のデータ処理装置の停止に合せて、不使用のSRAMのクロック信号(または電源)の供給を止める。これにより、さらなる消費電力の削減が可能となる。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (14)
- 複数の第1ノードを有し、各第1ノードの保持する第1データを第1方向に位置する隣のノードへ移動させる第1パイプラインと、
前記第1パイプラインの第1ノードの各々に対応している複数の第2ノードを有し、各第2ノードの保持する第2データを前記第1方向と逆の第2方向に位置する隣のノードへ移動させる第2パイプラインと、
前記第1パイプラインの第1ノードの1つを着目ノードとして、当該着目ノードに保持されている第1データと、当該着目ノードに対応する第2ノードに保持されている第2データと、を比較する比較手段と、
を有するデータ処理装置を複数備える演算装置であって、
前記演算装置は、
外部装置から第1データと第2データとを取得する取得手段と、
前記取得した第1データを複製したデータと前記取得した第1データとを前記複数のデータ処理装置のそれぞれの第1パイプラインへ入力し、前記取得した第2データを前記複数のデータ処理装置のうちの1つの第2パイプラインへ入力して、前記複数のデータ処理装置の第2パイプラインを一続きに移動させる入力手段と、
前記複数のデータ処理装置のそれぞれにおける、前記第1パイプラインから掃き出された第1データと、前記第2パイプラインの前記複数の第2ノードのそれぞれに保持された第2データとの比較結果をデコードすることによって、前記複数のデータ処理装置の少なくとも1つにおいて前記掃き出された第1データと一致する第2データが存在したかを判定する判定手段と、
を更に備え、
前記データ処理装置の第2パイプラインは、前記判定手段において前記掃き出された第1データと一致する第2データが存在しないと判定された場合、各第2ノードの保持する第2データを前記第2方向に位置する隣のノードへ移動させ、あるデータ処理装置の第2パイプラインから掃き出された第2データが別のデータ処理装置の第2パイプラインに前記第2方向に入力されるように一続きに構成され、
前記複数のデータ処理装置の前記比較手段において、少なくとも2つの同一の前記取得した第1データは、前記複数のデータ処理装置の第2パイプラインに保持されている互いに異なる第2データに対して比較されることを特徴とする演算装置。 - 前記複数のデータ処理装置は複数のグループにグループ分けされており、
前記入力手段は、前記グループごとに、前記グループのうちの1つのデータ処理装置の第2パイプラインへ前記第2データを入力し、
前記グループごとに、前記複数のデータ処理装置の第2パイプラインが直列に接続されることを特徴とする請求項1に記載の演算装置。 - 前記グループ分けを動的に変更する手段をさらに備えることを特徴とする請求項2に記載の演算装置。
- 前記複数の第1ノードのうちのある第1ノードに保持された第1データ及び前記複数の第2ノードのうちのある第2ノードに保持された第2データを用いた比較の結果と、別の第1ノードに保持された第1データ及び別の第2ノードに保持された第2データを用いた比較の結果とをデコードするデコード手段を更に備えることを特徴とする請求項1乃至3の何れか1項に記載の演算装置。
- 前記複製した第1データ及び前記取得した第1データは、前記入力手段によって異なるタイミングに入力された2つ以上の第2データに対して前記比較手段によって同時に比較されることを特徴とする請求項1乃至4の何れか1項に記載の演算装置。
- 複数の第1ノードを有し、各第1ノードの保持するアドレスを当該第1ノードに対して第1方向にある第1ノードへ移動させる第1パイプラインと、
前記第1パイプラインの第1ノードの各々に対応している複数の第2ノードを有し、各第2ノードの保持するキャッシュタグを当該第2ノードに対して前記第1方向と逆の第2方向にある第2ノードへ移動させる第2パイプラインと、
前記第1パイプラインの第1ノードの1つを着目ノードとして、当該着目ノードに保持されているアドレスと、当該着目ノードに対応する第2ノードに保持されているキャッシュタグと、を比較して一致するか否かを判定する比較手段と、
を有するデータ処理装置を複数備えるキャッシュ装置であって、
前記キャッシュ装置は、
外部記憶装置に格納されているデータの一部を記憶するキャッシュメモリと、
処理装置からデータの要求を取得する取得手段と、
前記取得したデータのアドレスを複製したアドレスと前記取得したデータのアドレスとを前記複数のデータ処理装置のそれぞれの第1パイプラインへ入力し、前記キャッシュメモリに記憶されるデータのキャッシュタグを前記複数のデータ処理装置のうちの1つの第2パイプラインへ入力して、前記複数のデータ処理装置の第2パイプラインを一続きに移動させる入力手段と、
前記複数のデータ処理装置のそれぞれにおける、前記第1パイプラインから掃き出されたアドレスと、前記第2パイプラインの前記複数の第2ノードのそれぞれに保持されたキャッシュタグとの比較結果をデコードすることによって、前記取得したデータがキャッシュヒットするかを判定する判定手段と
を更に備え、
前記データ処理装置の第2パイプラインは、前記判定手段においてキャッシュヒットしないと判定された場合、各第2ノードの保持するキャッシュタグを前記第2方向に位置する隣のノードへ移動させ、あるデータ処理装置の第2パイプラインから掃き出されたキャッシュタグが別のデータ処理装置の第2パイプラインに前記第2方向に入力されるように一続きに構成され、
前記複数のデータ処理装置の前記比較手段において、少なくとも2つの同一の前記取得したデータのアドレスは、前記複数のデータ処理装置の第2パイプラインに保持されている互いに異なるキャッシュタグに対して比較されることを特徴とするキャッシュ装置。 - 前記複数のデータ処理装置は複数のグループにグループ分けされており、
前記入力手段は、前記グループごとに、前記グループのうちの1つのデータ処理装置の第2パイプラインへ前記キャッシュタグを入力し、
前記複数のデータ処理装置の第2パイプラインは、前記グループごとに直列に接続されることを特徴とする請求項6に記載のキャッシュ装置。 - 前記グループ分けを動的に変更する手段をさらに備えることを特徴とする請求項7に記載のキャッシュ装置。
- 前記キャッシュメモリは前記複数のデータ処理装置のそれぞれに対応するように分割されており、
前記複数のグループのいずれにも含まれないデータ処理装置に対応する前記キャッシュメモリの部分は停止される
ことを特徴とする請求項7又は8に記載のキャッシュ装置。 - 駆動信号が有効である場合に、前記第1パイプラインは複数の第1ノードの保持するそれぞれのデータを前記第1方向へ移動させ、
前記駆動信号が有効であり、且つ前記判定手段がキャッシュヒットしないと判定した場合に、前記第2パイプラインは複数の第2ノードの保持するそれぞれの第2データを前記第2方向へ移動させる
ことを特徴とする請求項6乃至9のいずれか1項に記載のキャッシュ装置。 - 前記入力手段は、前記判定手段がキャッシュヒットしないと判定した場合に、前記第1パイプラインから出力されたアドレスをキャッシュタグとして前記第2パイプラインへ入力することを特徴とする請求項6乃至10のいずれか1項に記載のキャッシュ装置。
- 前記処理装置からのデータの要求は前記外部記憶装置へのデータの書き込み要求であり、
前記キャッシュ装置は、前記第2パイプラインから出力されるキャッシュタグを用いて前記書き込みが要求されたデータを前記キャッシュメモリに書き込む手段をさらに備えることを特徴とする請求項6乃至11のいずれか1項に記載のキャッシュ装置。 - 複数の第1ノードを有し、各第1ノードの保持するアドレスを当該第1ノードに対して第1方向にある第1ノードへ移動させる第1パイプラインと、
前記第1パイプラインの第1ノードの各々に対応している複数の第2ノードを有し、各第2ノードの保持するキャッシュタグを当該第2ノードに対して前記第1方向と逆の第2方向にある第2ノードへ移動させる第2パイプラインと、
前記第1パイプラインの第1ノードの1つを着目ノードとして、当該着目ノードに保持されているアドレスと、当該着目ノードに対応する第2ノードに保持されているキャッシュタグと、を比較して一致するか否かを判定する比較手段と、
を有するデータ処理装置を複数備えるキャッシュ装置の制御方法であって、
前記制御方法は、
外部記憶装置に格納されているデータの一部をキャッシュメモリに記憶する工程と、
取得手段が、処理装置からデータの要求を取得する取得工程と、
入力手段が、前記取得したデータのアドレスを複製したアドレスと前記取得したデータのアドレスとを前記複数のデータ処理装置のそれぞれの第1パイプラインへ入力し、前記キャッシュメモリに記憶されるデータのキャッシュタグを前記複数のデータ処理装置のうちの1つの第2パイプラインへ入力して、前記複数のデータ処理装置の第2パイプラインを一続きに移動させる入力工程と、
判定手段が、前記複数のデータ処理装置のそれぞれにおける、前記第1パイプラインから掃き出されたアドレスと、前記第2パイプラインの前記複数の第2ノードのそれぞれに保持されたキャッシュタグとの比較結果をデコードすることによって、前記取得したデータがキャッシュヒットするかを判定する判定工程と
を有し、
前記データ処理装置の第2パイプラインは、前記判定工程においてキャッシュヒットしないと判定された場合、各第2ノードの保持するキャッシュタグを前記第2方向に位置する隣のノードへ移動させ、あるデータ処理装置の第2パイプラインから掃き出されたキャッシュタグが別のデータ処理装置の第2パイプラインに前記第2方向に入力されるように一続きに構成され、
前記複数のデータ処理装置の前記比較手段において、少なくとも2つの同一の前記取得したデータのアドレスは、前記複数のデータ処理装置の第2パイプラインに保持されている互いに異なるキャッシュタグに対して比較されることを特徴とする制御方法。 - コンピュータを請求項6乃至12のいずれか1項に記載のキャッシュ装置の各手段として機能させるためのコンピュータプログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010130447A JP5650441B2 (ja) | 2010-06-07 | 2010-06-07 | 演算装置、キャッシュ装置、その制御方法及びコンピュータプログラム |
EP11164892.9A EP2393004B1 (en) | 2010-06-07 | 2011-05-05 | Cache apparatus and control method thereof |
EP11195127.3A EP2437159B1 (en) | 2010-06-07 | 2011-05-05 | Apparatus for data comparison and control method thereof |
US13/105,062 US8812783B2 (en) | 2010-06-07 | 2011-05-11 | Operation apparatus, cache apparatus, and control method thereof |
CN201110145879.5A CN102331922B (zh) | 2010-06-07 | 2011-06-01 | 运算装置、高速缓存装置及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010130447A JP5650441B2 (ja) | 2010-06-07 | 2010-06-07 | 演算装置、キャッシュ装置、その制御方法及びコンピュータプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2011257880A JP2011257880A (ja) | 2011-12-22 |
JP2011257880A5 JP2011257880A5 (ja) | 2013-07-25 |
JP5650441B2 true JP5650441B2 (ja) | 2015-01-07 |
Family
ID=44352182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010130447A Active JP5650441B2 (ja) | 2010-06-07 | 2010-06-07 | 演算装置、キャッシュ装置、その制御方法及びコンピュータプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US8812783B2 (ja) |
EP (2) | EP2393004B1 (ja) |
JP (1) | JP5650441B2 (ja) |
CN (1) | CN102331922B (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8862702B2 (en) * | 2012-07-18 | 2014-10-14 | Accedian Networks Inc. | Systems and methods of installing and operating devices without explicit network addresses |
JP2015013429A (ja) * | 2013-07-05 | 2015-01-22 | キヤノン株式会社 | 画像処理装置及びその制御方法、並びにプログラム |
CN107016008B (zh) * | 2016-06-06 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 信息处理方法和装置及动态信息的显示方法和装置 |
JP7278067B2 (ja) | 2018-12-20 | 2023-05-19 | キヤノン株式会社 | データ処理装置及びその制御方法及びプログラム |
CN113672286B (zh) * | 2021-07-30 | 2024-10-01 | 奇点微(上海)光电科技有限公司 | 一种流水线求值器、移动轨迹分析处理装置、方法及设备 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5163142A (en) * | 1988-10-28 | 1992-11-10 | Hewlett-Packard Company | Efficient cache write technique through deferred tag modification |
JPH04178755A (ja) * | 1990-11-13 | 1992-06-25 | Toshiba Corp | データ統合装置 |
US5353424A (en) * | 1991-11-19 | 1994-10-04 | Digital Equipment Corporation | Fast tag compare and bank select in set associative cache |
US5386527A (en) * | 1991-12-27 | 1995-01-31 | Texas Instruments Incorporated | Method and system for high-speed virtual-to-physical address translation and cache tag matching |
JPH05324468A (ja) * | 1992-05-21 | 1993-12-07 | Fujitsu Ltd | 階層化キャッシュメモリ |
DE69430352T2 (de) * | 1993-10-21 | 2003-01-30 | Sun Microsystems Inc., Mountain View | Gegenflusspipeline |
JPH08263370A (ja) * | 1995-03-27 | 1996-10-11 | Toshiba Microelectron Corp | キャッシュメモリシステム |
US5710905A (en) * | 1995-12-21 | 1998-01-20 | Cypress Semiconductor Corp. | Cache controller for a non-symetric cache system |
US5905680A (en) * | 1996-04-30 | 1999-05-18 | Texas Instruments Incorporated | Self-timed comparison circuits and systems |
JPH10190744A (ja) * | 1996-12-26 | 1998-07-21 | Toshiba Corp | 情報記憶装置 |
US5748539A (en) * | 1997-03-05 | 1998-05-05 | Sun Microsystems, Inc. | Recursive multi-channel interface |
JP3623082B2 (ja) * | 1997-09-26 | 2005-02-23 | 日本電信電話株式会社 | 連想メモリモジュール |
US6825848B1 (en) * | 1999-09-17 | 2004-11-30 | S3 Graphics Co., Ltd. | Synchronized two-level graphics processing cache |
US6862670B2 (en) | 2001-10-23 | 2005-03-01 | Ip-First, Llc | Tagged address stack and microprocessor using same |
US6754772B2 (en) * | 2001-11-15 | 2004-06-22 | Micron Technology, Inc. | Distributed cache |
CN1879092B (zh) * | 2003-11-12 | 2010-05-12 | 松下电器产业株式会社 | 高速缓冲存储器及其控制方法 |
US7689772B2 (en) * | 2006-05-04 | 2010-03-30 | Intel Corporation | Power-performance modulation in caches using a smart least recently used scheme |
US7546405B2 (en) * | 2006-09-26 | 2009-06-09 | Sony Computer Entertainment Inc. | Methods and apparatus for dynamic grouping of requestors of resources in a multi-processor system |
US7991960B2 (en) * | 2006-10-11 | 2011-08-02 | Arm Limited | Adaptive comparison control in a data store |
JP4595029B2 (ja) * | 2007-06-20 | 2010-12-08 | 富士通株式会社 | キャッシュメモリ装置、演算処理装置及びその制御方法 |
US7913007B2 (en) * | 2007-09-27 | 2011-03-22 | The University Of North Carolina | Systems, methods, and computer readable media for preemption in asynchronous systems using anti-tokens |
JP2010102623A (ja) * | 2008-10-27 | 2010-05-06 | Nec Electronics Corp | キャッシュメモリ及びその制御方法 |
US8271728B2 (en) * | 2008-11-13 | 2012-09-18 | International Business Machines Corporation | Spiral cache power management, adaptive sizing and interface operations |
US8539185B2 (en) * | 2008-11-13 | 2013-09-17 | International Business Machines Corporation | Systolic networks for a spiral cache |
US8051337B2 (en) * | 2009-01-22 | 2011-11-01 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method for fast cache-hit detection |
US8452944B2 (en) * | 2009-05-22 | 2013-05-28 | Canon Kabushiki Kaisha | Information processing apparatus and information processing method |
JP5627330B2 (ja) * | 2010-08-02 | 2014-11-19 | キヤノン株式会社 | 情報処理装置、キャッシュ装置およびデータ処理方法 |
-
2010
- 2010-06-07 JP JP2010130447A patent/JP5650441B2/ja active Active
-
2011
- 2011-05-05 EP EP11164892.9A patent/EP2393004B1/en not_active Not-in-force
- 2011-05-05 EP EP11195127.3A patent/EP2437159B1/en active Active
- 2011-05-11 US US13/105,062 patent/US8812783B2/en active Active
- 2011-06-01 CN CN201110145879.5A patent/CN102331922B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP2393004B1 (en) | 2018-10-31 |
EP2437159A1 (en) | 2012-04-04 |
US20110302373A1 (en) | 2011-12-08 |
EP2393004A1 (en) | 2011-12-07 |
US8812783B2 (en) | 2014-08-19 |
CN102331922B (zh) | 2015-07-15 |
JP2011257880A (ja) | 2011-12-22 |
CN102331922A (zh) | 2012-01-25 |
EP2437159B1 (en) | 2018-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10210117B2 (en) | Computing architecture with peripherals | |
US9755994B2 (en) | Mechanism for tracking age of common resource requests within a resource management subsystem | |
US20190129849A1 (en) | Cache self-clean engine | |
US7447845B2 (en) | Data processing system, processor and method of data processing in which local memory access requests are serviced by state machines with differing functionality | |
JP5118199B2 (ja) | マルチスレッドおよびマルチコア・システムのためのキャッシュ、および、その方法 | |
US9836325B2 (en) | Resource management subsystem that maintains fairness and order | |
JP5650441B2 (ja) | 演算装置、キャッシュ装置、その制御方法及びコンピュータプログラム | |
US10095548B2 (en) | Mechanism for waking common resource requests within a resource management subsystem | |
JP5730126B2 (ja) | データ供給装置、キャッシュ装置、データ供給方法、キャッシュ方法およびプログラム | |
US6877056B2 (en) | System with arbitration scheme supporting virtual address networks and having split ownership and access right coherence mechanism | |
JP5627330B2 (ja) | 情報処理装置、キャッシュ装置およびデータ処理方法 | |
JP2004252985A (ja) | メモリ要求の動的並べ替え | |
US8452944B2 (en) | Information processing apparatus and information processing method | |
CN113791892B (zh) | 数据通路仲裁方法、数据通路仲裁装置及芯片 | |
JP3876033B2 (ja) | 順不同に命令を実行するコンピュータのためのシステム | |
EP1936514B1 (en) | Apparatus and method for controlling issue of requests to another operation processing device | |
JP5428653B2 (ja) | メモリアクセス処理装置及び方法 | |
CN118467418A (zh) | 一种存储访问系统以及存储访问调度方法 | |
JPH0749809A (ja) | キャッシュメモリ制御装置 | |
NZ716954B2 (en) | Computing architecture with peripherals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130607 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130607 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140407 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140521 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140617 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140917 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140929 |
|
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: 20141017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141113 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5650441 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |