JP5163220B2 - キャッシュ制御装置、情報処理装置 - Google Patents

キャッシュ制御装置、情報処理装置 Download PDF

Info

Publication number
JP5163220B2
JP5163220B2 JP2008080691A JP2008080691A JP5163220B2 JP 5163220 B2 JP5163220 B2 JP 5163220B2 JP 2008080691 A JP2008080691 A JP 2008080691A JP 2008080691 A JP2008080691 A JP 2008080691A JP 5163220 B2 JP5163220 B2 JP 5163220B2
Authority
JP
Japan
Prior art keywords
unit
speculative fetch
data
status
output
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
Application number
JP2008080691A
Other languages
English (en)
Other versions
JP2009237722A (ja
Inventor
真一 岩▲崎▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008080691A priority Critical patent/JP5163220B2/ja
Priority to US12/250,728 priority patent/US8190821B2/en
Priority to KR1020080101971A priority patent/KR100988334B1/ko
Priority to DE602008005261T priority patent/DE602008005261D1/de
Priority to EP08167194A priority patent/EP2105838B1/en
Priority to CN2008101789067A priority patent/CN101546293B/zh
Publication of JP2009237722A publication Critical patent/JP2009237722A/ja
Application granted granted Critical
Publication of JP5163220B2 publication Critical patent/JP5163220B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0884Parallel mode, e.g. in parallel with main memory or CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • G06F12/0822Copy directories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/50Control mechanisms for virtual memory, cache or TLB
    • G06F2212/507Control mechanisms for virtual memory, cache or TLB using speculative control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Advance Control (AREA)

Description

CPUとメモリとの間のデータ送信を制御するキャッシュ制御装置、キャッシュ制御装置を備えた情報処理装置に関する。
近年、LSIの動作周波数は目覚しい向上を続けており、LSI内の処理時間に比べメモリへのアクセス時間が相対的に大きくなっている。
これを改善する解決策の一つとして、メモリフェッチ要求をCPUやI/O制御装置から受け取ったシステム制御装置(以下、SC)(キャッシュ制御装置)が、要求されたデータがCPUのキャッシュ内に記憶されているか否かが判明する前にメモリ制御装置(以下、MAC)にメモリフェッチを要求する、投機フェッチが行われている。
すなわちSCは、その内部にCPUのキャッシュに記憶されているデータのアドレス、更新状態などのタグ情報を全てのCPUについて保持し、タグ情報を検索(スヌープ処理)することで、メモリフェッチ要求に対して要求されたデータがCPUのキャッシュにあるか否かが判明する前の段階で、投機的にメモリアクセスを行う。この投機フェッチによってメモリアクセスを早く開始することができ、キャッシュにデータがない場合にメモリアクセスの待ち時間(レイテンシ)を改善することができる。
従来からメモリアクセスのレイテンシの改善方法として、システム内に設けられたキャッシュメモリのデータ格納状態に関する情報であるタグ情報をタグメモリから読み出すのと並行して、システム内のメモリを投機アクセスし、読み出したタグ情報に基づいて、投機アクセスによりメモリから獲得されたデータを破棄するか否かを決定する方法が開示されている。また、投機フェッチの応答データを使用するか否かはCPUのキャッシュの検索結果によって決定されるため、投機フェッチの応答データをシステム内のどこかに保持し、キャッシュの検索結果との待ち合わせを行う機構が開示されている。さらに、非投機的トラフィックによる輻輳および衝突を低減するように投機的要求を処理する方法が開示されている。
特開2001−167077号公報 特開2003−186669号公報
従来の投機フェッチ方法をパケット長の長いSTR(Store:メモリへのデータ書き込み命令)等の命令よりも、パケット長の短いフェッチ命令を優先するようなメモリ制御装置を搭載したシステムに適用すると、同一アドレスに対するフェッチリクエストとSTRリクエストが競合(同一アドレスへのアクセス要求)した場合、リクエストの順序性を保てなくなってしまう。
ここで、STR命令が出された後の投機フェッチの送出されるタイミングを示す図を図5に示し、リクエストの順序性についてさらに説明する。尚、投機フェッチの成功例を図5(a)に、フェッチの失敗例を図5(b)に示す。また図5(a)、図5(b)ともに、時間を横軸成分としている。
STR命令がCPUより発行された場合、SCは、このSTR命令をMACに通達することでメモリ内のデータ更新がなされる(MACにおけるOLDDATAからNEWDATAへの遷移)。
図5(a)の場合、投機フェッチが発行され、MACに到達した時点で既にデータの更新がなされているため、その投機フェッチによって得られるデータを採用しても問題ない。
一方、図5(b)における投機フェッチの場合は、本来NEWDATAを読み出さなければならないところ、STR前の更新前のデータ(OLDDATA)を読み出してしまうため、その投機フェッチによって得られるデータを採用すると問題が生じる。
また、上述の投機フェッチによって得られたデータをシステム内に保持する方法では、SC内のバッファに一時ためておいてスヌープ結果を待ってその判定をする必要がある。よってバッファ量を増大させる必要があるが、LSIの面積、消費電力も増大することになり好ましくない。
また、投機フェッチが失敗するとその分バスのスループットを落としてしまうことになるので、できるだけ投機フェッチの失敗数を少なくする必要がある。
上述した問題点を解決するため、所定の監視時間を設け、投機フェッチのステータスを保持することで、リクエストの順序性を保証するキャッシュ制御装置、情報処理装置を提供することを目的とする。
キャッシュ制御装置は、CPUから要求されたデータがキャッシュ内に記憶されているか否かが判明する前に出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力部と、投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブルと、前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索部と、前記タグ情報検索部の検索がなされた時点で、該検索の結果がキャッシュミスである場合に前記テーブル内の投機フェッチのステータスを所定のステータスに更新するステータス更新部と、前記投機フェッチ出力部から出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてからメモリと該メモリの外部とのデータ通信を制御するメモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令によるメモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新部によって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定部と、前記ステータス更新判定部の判定結果に基づき、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定部と、を備える。
また、情報処理装置は、少なくとも一つのCPUと、データを記憶するメモリと、前記メモリと該メモリの外部とのデータ通信を制御するメモリ制御部と、前記CPUから要求されたデータがキャッシュ内に記憶されているか否かが判明する前に前記メモリ制御部を介して前記メモリに出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力部と、投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブルと、前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索部と、前記タグ情報検索部の検索がなされた時点で、該検索の結果がキャッシュミスである場合に前記テーブル内のステータスを所定のステータスに更新するステータス更新部と、前記投機フェッチ出力部から出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてから前記メモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令による前記メモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新部によって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定部と、前記ステータス更新判定部の判定結果に基づき、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定部と、を備える。
投機フェッチを行うことによりメモリフェッチのレイテンシを短縮することができるとともに、同一アドレスに対する投機フェッチと書き込み命令との順序を保障することができる。
本実施の形態における情報処理装置を図1に示す。
情報処理装置100は、メモリの内容のコピーである2nd-cache(SX5)を含んだ演算装置であるCPU(Central Processing Unit)4、データを記憶する記憶媒体(メモリ)であるDIMM(Dual Inline Memory Module)3と、DIMM3とDIMM3の外部とのデータ通信を制御するLSIであるMAC2(メモリ制御部)とを備え、さらに、CPU4から要求されたデータがキャッシュ内に記憶されているか否かを判定制御する制御装置であるSC1(キャッシュ制御装置)を備える。尚、情報処理装置100は、CPU4以外にも複数のCPUを備え、SC1はこれらのCPUに対しても同様の判定制御を行う。
次に、SC1について説明する。SC1は、投機フェッチ出力部11、タグ情報検索部12、タグ情報保持部13、ステータス更新部14、管理テーブル15、ステータス更新判定部16、データ採用判定部17、アドレスロック部18
を備える。
投機フェッチ出力部11は、投機フェッチを出力する。尚、投機フェッチとは、上述どおりCPU4から要求されたデータがキャッシュ内に記憶されているか否かが判明する前に、MAC2を介してDIMM3に出力される投機的なメモリフェッチ要求をいう。
タグ情報保持部13は、SX5に保持されたデータのタグのコピーであるタグ情報、つまりキャッシュに記憶されているデータに関する情報の一覧を保持している。
タグ情報検索部12は、タグ情報保持部13にて保持されたタグ情報からキャッシュヒット可能な情報があるか否かを検索(スヌープ処理)する。また、投機フェッチ出力部11は、タグ情報検索部12がタグ情報の検索処理を開始するタイミングで、投機フェッチを出力するものとする。なお、投機フェッチが出力されるタイミングは、投機フェッチ出力部11、タグ情報検索部12の処理上必然的に生ずる遅延差を考慮しなければ同じタイミングとなるようなタイミングをいう。
管理テーブル15は、投機フェッチに関する情報である、投機フェッチに付与されたリクエストIDと、投機フェッチのステータスを保持する。なお、ステータスに関しては後述する。
ステータス更新部14は、タグ情報検索部12による検索がなされた時点で、検索の結果がキャッシュミスである場合に管理テーブル15内のステータスを所定のステータスであるAcceptに更新する、また、ステータス更新部14は、Accept以外でも必要に応じ管理テーブル15内のステータスを更新する。
ステータス更新判定部16は、投機フェッチ出力部11から出力された投機フェッチによって得られるデータを取得した場合、所定の監視時間のうちにステータス更新部14によって管理テーブル15に保持されたリクエストIDのステータスが更新されたかを判定する。またステータス更新判定部16は、判定に際し、少なくともAcceptに更新されたかを判定する。
データ採用判定部17は、ステータス更新判定部16の判定結果に基づき、投機フェッチ出力部11にて出力された投機フェッチによって得られるデータを採用するか否かを判定する。すなわち、データ採用判定部17は、ステータス更新判定部16によってステータスがAcceptに更新されたと判定された場合、投機フェッチ出力部11によって出力された投機フェッチによって得られるデータを採用し、ステータス更新判定部16によってAcceptに更新されていないと判定された場合、投機フェッチによって得られるデータを破棄する。
アドレスロック部18は、STR命令(STR:Store。データ書き込みの命令)が実行中である場合、STR命令によるデータ書き込み先のメモリのアドレスを保持することで、そのアドレスに対するアクセスをロックするアドレスロックレジスタである。尚、投機フェッチ出力部11は、アドレスロック部18によって保持されたアドレスの数が所定数ある場合、投機フェッチを出力しないものとする。
上述のSC1内の各ユニットは、SC1内に備えられた各LSIによって実装されるものとするが、マイコン等の演算処理装置および記憶媒体等のハードウェア資源、およびハードウェア資源とファームウェア等のソフトウェア資源とが協働することで実現されるものとしてもよい。この場合、各ユニットは、ハードウェア資源として例えばCPU4、DIMM3等外部のハードウェア資源を流用してもよい。
本実施の形態におけるSC1の処理の概要を説明すると、以下の手順にて行われる。
処理1:あるCPU(本実施の形態ではCPU4)からのメモリフェッチ命令をSC1が受け取る。
処理2:タグ情報検索部12がスヌープ処理を行うのと並行して、投機フェッチ出力部11がMAC2へ投機フェッチを発行する。
処理3:投機フェッチの応答データをSC1内にためずに、採用、破棄が判断され、採用されるべきデータであれば、SC1はそのデータをCPUへ送り返す。尚、処理3はステータス更新部14、管理テーブル15、ステータス更新判定部16、データ採用判定部17にて行われる。
ここで、投機フェッチのステータスの内容および管理テーブル15に保持されている情報を図2を参照しつつ説明する。
投機フェッチは、図2(a)に示すように、「I」(Invalid)、「U」(Undefined)、「C」(Cancel)、「A」(Accept)の4つのステータスを有する。
Iは、投機フェッチ出力部11が投機フェッチを出力していない状態またはデフォルトの初期状態を示す。Uは、投機フェッチを出力した状態であるが、投機フェッチによって得られるデータを採用するか破棄するかが決まっていない状態を示す。Cは、投機フェッチが出力され、その後投機フェッチによって得られるデータを破棄するものとする状態を示す。Aは、投機フェッチが出力され、その後キャッシュミス、つまりキャッシュ内にデータが無い状態が生じたため投機フェッチによるデータを採用するものとする状態を示す。尚Cは、処理上必ずしも必要ではない。
図2(b)に、管理テーブル15に保持されている情報の一例を示す。管理テーブル15は、投機フェッチに付与されたリクエストIDと上述の各ステータスとの対応を保持する。尚、リクエストIDはSC1にフェッチ要求が到達するごとに、SC1内で管理するために割り当てられる。管理テーブル15は、図2(b)に示すようにフェッチリクエストをCPUから受け付けた数分、例えば4つのリクエストIDとステータスとの対応を持つものとする。
ステータス更新部14は、投機フェッチ出力部11が投機フェッチを出力した場合にIからUにステータスを更新し、タグ情報検索部12の検索結果がキャッシュミスである場合にAにステータスを更新する。またステータス更新部14は、タグ情報検索部12の検索結果がキャッシュヒットである場合にステータスをCに更新する。またステータス更新判定部16は、投機フェッチの応答がMAC2から帰ってきたときに管理テーブル15を参照し、その投機フェッチに対するステータスが後述に詳説する監視時間内にAであるかを判定する。データ採用判定部17は、判定結果がAであった場合のみその投機フェッチによるパケット(データ)を採用し、それ以外の状態であればそのパケットを破棄する。
次にステータス更新判定部16のもう一つの判定要素である監視時間について説明する。
上述の図5(b)のように、投機フェッチが先行する同一アドレスへのSTR命令の処理を追い越してしまった場合、その投機フェッチによって得られるデータは、更新される前の古いデータであるため破棄しなければならない。本実施の形態では、この投機フェッチの追い越しがあったか否かを監視時間を設けることによって実現する。
図3に、監視時間を説明するための図を示す。投機フェッチによって得られるデータを採用する場合は、SC1からの投機フェッチがMAC2に到達した時点で、事前のSTR命令によってデータが更新されていればよい。
この投機フェッチ(FCH)が発行されてからMAC2のパイプラインに到達するまでの時間、つまり投機フェッチが発行されてからメモリ制御部に到達するまでの時間をAτ、DIMM3のデータが更新されSTR命令が完了し、その応答がSC1まで到達するまでの時間、つまり投機フェッチの出力前に出された、その投機フェッチと同一アドレスへのSTR命令によるDIMM3への書き込みが完了してから、STR命令の応答があるまでの時間をBτとする。また、図3においてOLD−DATAは更新前のデータを、NEW−DATAは更新後のデータを示す。少なくとも投機フェッチ出力部11から投機フェッチが出力された時点から、Aτ+Bτの間の時間のうちに、メモリフェッチが確定すれば、先行する同一アドレスへのSTR命令があったとしても、投機フェッチは必ずSTR後のNEW−DATAを読み出してくるので矛盾は発生しない。よって、ステータス更新判定部16は、この投機フェッチが出力されてからAτ+Bτの時間を監視時間として、この監視時間のうちに管理テーブル15のステータスがAcceptであるか否かを判定する。
尚、本実施の形態では、監視時間を54τとするが、数値を限定するものではない。
次に、上述の監視時間、管理テーブル15のステータス遷移、パケットの採用、破棄を合わせて図4を参照しつつ詳細に説明する。
まず、図4(a)に投機フェッチの成功例を示す。投機フェッチ出力部11が投機フェッチを出力するとともに、タグ情報検索部12がタグ情報を検索する。投機フェッチ出力部11が投機フェッチを出力する際、ステータス更新部14は管理テーブル15内の当該投機フェッチのステータスをIからUに更新する。
Uに遷移した時点から時間監視が始まり、監視時間内にタグ情報検索部12による検索結果がキャッシュミスと確定した場合、管理テーブル15内の当該投機フェッチに対するステータスはステータス更新部14によってUからAに更新される。
ステータス更新判定部16は、投機フェッチによって得られるデータを取得したときに、管理テーブル15内のステータスが監視時間内にAに更新されたと判定する。ステータス更新判定部16によってAに更新されたと判定されたため、データ採用判定部17は、投機フェッチによって得られるデータを採用すると判定する。
尚、キャッシュミスであることから、CPU4から要求されたデータはキャッシュ(SX5)内に保持されていないため、投機フェッチによって得られるデータが採用されることとなる。よって、キャッシュミスであると確定した後に発行されるメモリフェッチ(以下、通常フェッチと記す)は発行されない。
また、投機フェッチによって得られたデータがCPU4に返される段階で管理テーブル内のステータスはAからデフォルトのステータスであるIに更新される。
このように、本実施の形態によるSC1により、投機フェッチで得られたデータは管理テーブル内の当該投機フェッチのステータスが監視時間内にAになったときのみCPU4に返される。
次に、投機フェッチによって得られたデータがCPU4に返されない例を図5(b)から図5(d)に示す。
図5(b)は監視時間内にキャッシュヒットが確定した場合である。タグ情報検索部12による検索結果がキャッシュヒットである場合、ステータス更新部14は管理テーブルの当該投機フェッチのステータスをUからCに更新する。キャッシュヒットであるため、従来同様キャッシュ(SX5)内に保持されているデータがそのまま採用される。
この場合、ステータス更新判定部16は、監視時間内にステータスがAに更新されていないと判定し、投機フェッチによって得られるデータは不要であるため、データ採用判定部17によって破棄される。
図5(c)は監視時間外にキャッシュミスが確定した場合である。この場合、管理テーブル15の当該投機フェッチのステータスは監視時間内ではUのままで、投機フェッチによって得られたデータは上述のように同一アドレスのSTR命令を追い越した可能性がある。よって、このように監視時間外にキャッシュミスが確定した場合、ステータス更新判定部16は監視時間内にAに更新されていないと判定し、データ採用判定部17は、投機フェッチによって得られるデータを破棄する。
図5(c)にて示した監視時間外にキャッシュミスが確定した場合においては、キャッシュミスが確定した時点で通常フェッチが発行され、この通常フェッチによって得られたデータが採用される。
図5(d)は監視時間内にタグ情報検索部12による検索処理(スヌープ処理)のリトライ(SNP−RTRY)が確定した場合である。この場合、検索処理がリトライするためその分検索に時間を要し、監視時間内に検索結果が得られない蓋然性が高い。よって、本実施の形態におけるSC1は、かかる検索処理のリトライが生じた場合は投機フェッチによって得られるデータは一律破棄するものとする。ステータス更新部14は、リトライが生じた時点で管理テーブル15のステータスをUからCに更新する。
ステータス更新判定部16は、投機フェッチによって得られるデータを取得したときに、監視時間内にステータスがAに更新されていないと判定し、投機フェッチによって得られるデータはデータ採用判定部17によって破棄される。その後キャッシュミスが確定すれば通常フェッチが発行され、通常フェッチによって得られるデータが採用される。
このように、いかなる場合も管理テーブル15によるステータス管理と時間監視とによって、同一アドレスに対するリクエストの順序保障が実現できる。
上述したように、投機フェッチの成否をステータスと時間監視とによって決定しているため、タグ情報検索部12による検索処理に時間のかかるような投機フェッチは、監視時間内に収まる可能性が低い。スヌープ処理に時間がかかるということはアドレスロックレジスタ(アドレスロック部18)の空きがないことを意味する。アドレスロックレジスタとは、そのアドレスがSTRなどの命令を実行中であればそのアドレスにロックをかける機能を持っている。アドレスロックレジスタによってロックのかかっているアドレスに対しては同じアドレスに対する命令は実行されず、スヌープリトライとなる。
尚、アドレスロックレジスタの数には上限、本実施の形態では32があり、一定以上の個数の命令はSC1からは発行されない。よって、投機フェッチを出力する際にアドレスロックレジスタの使用数を監視して、アドレスロックレジスタの使用数がある閾値以上であれば投機フェッチ出力部11は投機フェッチを出力しないものとする。このようにすることで、無駄な投機フェッチを抑え、バスのスループットの確保を保つことができる。
本実施の形態のSC1は、投機フェッチと、当該投機フェッチと同一アドレスに対するSTR命令との順序保証を省資源で実現することができる。また、本実施の形態のSC1はメモリフェッチレイテンシを短縮することができる。また、アドレスロックレジスタの使用数を監視することにより、投機フェッチの成功率を上げることができる。
(付記1) CPUから要求されたデータがキャッシュ内に記憶されているか否かが判明する前に出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力部と、投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブルと、
前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索部と、
前記タグ情報検索部の検索がなされた時点で、該検索の結果がキャッシュミスである場合に前記テーブル内の投機フェッチのステータスを所定のステータスに更新するステータス更新部と、
前記投機フェッチ出力部から出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてからメモリと該メモリの外部とのデータ通信を制御するメモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令によるメモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新部によって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定部と、
前記ステータス更新判定部の判定結果に基づき、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定部と、
を備えるキャッシュ制御装置。
(付記2) 付記1に記載のキャッシュ制御装置において、
前記投機フェッチ出力部は、前記タグ情報検索部が前記タグ情報の検索処理を開始するタイミングで、投機フェッチを出力することを特徴とするキャッシュ制御装置。
(付記3) 付記1に記載のキャッシュ制御装置において、
前記データ採用判定部は、前記ステータス更新判定部によって前記所定のステータスに更新されたと判定された場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用し、前記ステータス更新判定部によって前記所定のステータスに更新されていないと判定された場合、前記投機フェッチによって得られるデータを破棄することを特徴とするキャッシュ制御装置。
(付記4) 付記1に記載のキャッシュ制御装置において、さらに、
前記データ書き込みの命令が実行中である場合、該命令によるデータ書き込み先のメモリのアドレスを保持することで、該アドレスに対するアクセスをロックするアドレスロック部を備え、
前記投機フェッチ出力部は、さらに、前記アドレスロック部によって保持されたアドレスの数が所定数以上ある場合、投機フェッチを出力しないことを特徴とするキャッシュ制御装置。
(付記5) 付記1に記載のキャッシュ制御装置において、
さらに、前記タグ情報を保持するタグ情報保持部を備え、
前記タグ情報検索部は、前記タグ情報保持部にて保持されたタグ情報から検索することを特徴とするキャッシュ制御装置。
(付記6) 付記1に記載のキャッシュ制御装置において、
前記データ採用判定部は、さらに、前記タグ情報検索部による検索処理が失敗し前記タグ情報検索部が再度検索処理を実行した場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用しないと判定することを特徴とするキャッシュ制御装置。
(付記7) キャッシュを備えた少なくとも一つのCPUと、
データを記憶するメモリと、
前記メモリと該メモリの外部とのデータ通信を制御するメモリ制御部と、
前記CPUから要求されたデータが前記キャッシュ内に記憶されているか否かが判明する前に前記メモリ制御部を介して前記メモリに出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力部と、
投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブルと、
前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索部と、
前記タグ情報検索部の検索がなされた時点で、該検索の結果がキャッシュミスである場合に前記テーブル内のステータスを所定のステータスに更新するステータス更新部と、
前記投機フェッチ出力部から出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてから前記メモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令による前記メモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新部によって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定部と、
前記ステータス更新判定部の判定結果に基づき、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定部と、
を備える情報処理装置。
(付記8) 付記7に記載の情報処理装置において、
前記投機フェッチ出力部は、前記タグ情報検索部が前記タグ情報の検索処理を開始するタイミングで、投機フェッチを出力することを特徴とするキャッシュ制御装置。
(付記9) 付記7に記載の情報処理装置において、
前記データ採用判定部は、前記ステータス更新判定部によって前記所定のステータスに更新されたと判定された場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用し、前記ステータス更新判定部によって前記所定のステータスに更新されていないと判定された場合、前記投機フェッチによって得られるデータを破棄することを特徴とする情報処理装置。
(付記10) 付記7に記載の情報処理装置において、さらに、
前記データ書き込みの命令が実行中である場合、該命令によるデータ書き込み先のメモリのアドレスを保持することで、該アドレスに対するアクセスをロックするアドレスロック部を備え、
前記投機フェッチ出力部は、さらに、前記アドレスロック部によって保持されたアドレスの数が所定数以上ある場合、投機フェッチを出力しないことを特徴とする情報処理装置。(10)
(付記11) 付記7に記載の情報処理装置において、
前記データ採用判定部は、さらに、前記タグ情報検索部による検索処理が失敗し前記タグ情報検索部が再度検索処理を実行した場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用しないと判定することを特徴とする情報処理装置。
(付記12) CPUから要求されたデータがキャッシュ内に記憶されているか否かが判明する前に出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力ステップと、
前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索ステップと、
前記タグ情報検索ステップの検索がなされた時点で、該検索の結果がキャッシュミスである場合に、投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブル内の前記ステータスを所定のステータスに更新するステータス更新ステップと、
前記投機フェッチ出力ステップにて出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてからメモリと該メモリの外部とのデータ通信を制御するメモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令によるメモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新ステップによって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定ステップと、
前記ステータス更新判定ステップの判定結果に基づき、前記投機フェッチ出力ステップにて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定ステップと、
を備えるキャッシュ制御方法。
(付記13) 付記12に記載のキャッシュ制御方法において、
前記タグ情報検索ステップは、前記投機フェッチ出力ステップによって投機フェッチが出力されるタイミングで、前記タグ情報の検索を開始することを特徴とするキャッシュ制御方法。
(付記14) 付記12に記載のキャッシュ制御方法において、
前記データ採用判定ステップは、前記ステータス更新判定ステップによって前記所定のステータスに更新されたと判定された場合、前記投機フェッチ出力ステップにて出力された投機フェッチによって得られるデータを採用し、前記ステータス更新判定ステップによって前記所定のステータスに更新されていないと判定された場合、前記投機フェッチによって得られるデータを破棄することを特徴とするキャッシュ制御方法。
(付記15) 付記12に記載のキャッシュ制御方法において、さらに、
前記データ書き込みの命令が実行中である場合、該命令によるデータ書き込み先のメモリのアドレスを保持することで、該アドレスに対するアクセスをロックするアドレスロックステップを備え、
前記投機フェッチ出力ステップは、さらに、前記アドレスロックステップによってロックされたアドレスの数が所定数以上ある場合、投機フェッチを出力しないことを特徴とするキャッシュ制御方法。
(付記16) 付記12に記載のキャッシュ制御方法において、
前記データ採用判定ステップは、さらに、前記タグ情報検索ステップによる検索処理が失敗し前記タグ情報検索ステップが再度検索を実行した場合、前記投機フェッチ出力ステップにて出力された投機フェッチによって得られるデータを採用しないと判定することを特徴とするキャッシュ制御方法。
本実施の形態における情報処理装置の構成の一例を示す図である。 本実施の形態における投機フェッチのステータスおよび管理テーブルで保持された情報の一例を示す図である。 本実施の形態における時間監視による順序保障を行う際の監視時間を説明する図である。 本実施の形態における投機フェッチの成功と失敗の一例を示す図である。 従来の投機フェッチの成功および失敗を示す図である。
符号の説明
1 SC、2 MAC、3 DIMM、4 CPU、5 SX、11 投機フェッチ出力部、12 タグ情報検索部、13 タグ情報保持部、14 ステータス更新部、15 管理テーブル、16 ステータス更新判定部、17 データ採用判定部、18 アドレスロック部、100 情報処理装置。

Claims (10)

  1. CPUから要求されたデータがキャッシュ内に記憶されているか否かが判明する前に出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力部と、
    投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブルと、
    前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索部と、
    前記タグ情報検索部の検索がなされた時点で、該検索の結果がキャッシュミスである場合に前記テーブル内の投機フェッチのステータスを所定のステータスに更新するステータス更新部と、
    前記投機フェッチ出力部から出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてからメモリと該メモリの外部とのデータ通信を制御するメモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令によるメモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新部によって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定部と、
    前記ステータス更新判定部の判定結果に基づき、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定部と、
    を備えるキャッシュ制御装置。
  2. 請求項1に記載のキャッシュ制御装置において、
    前記投機フェッチ出力部は、前記タグ情報検索部が前記タグ情報の検索処理を開始するタイミングで、投機フェッチを出力することを特徴とするキャッシュ制御装置。
  3. 請求項1に記載のキャッシュ制御装置において、
    前記データ採用判定部は、前記ステータス更新判定部によって前記所定のステータスに更新されたと判定された場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用し、前記ステータス更新判定部によって前記所定のステータスに更新されていないと判定された場合、前記投機フェッチによって得られるデータを破棄することを特徴とするキャッシュ制御装置。
  4. 請求項1に記載のキャッシュ制御装置において、さらに、
    前記データ書き込みの命令が実行中である場合、該命令によるデータ書き込み先のメモリのアドレスを保持することで、該アドレスに対するアクセスをロックするアドレスロック部を備え、
    前記投機フェッチ出力部は、さらに、前記アドレスロック部によって保持されたアドレスの数が所定数以上ある場合、投機フェッチを出力しないことを特徴とするキャッシュ制御装置。
  5. 請求項1に記載のキャッシュ制御装置において、
    さらに、前記タグ情報を保持するタグ情報保持部を備え、
    前記タグ情報検索部は、前記タグ情報保持部にて保持されたタグ情報から検索することを特徴とするキャッシュ制御装置。
  6. 請求項1に記載のキャッシュ制御装置において、
    前記データ採用判定部は、さらに、前記タグ情報検索部による検索処理が失敗し前記タグ情報検索部が再度検索処理を実行した場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用しないと判定することを特徴とするキャッシュ制御装置。
  7. キャッシュを備えた少なくとも一つのCPUと、
    データを記憶するメモリと、
    前記メモリと該メモリの外部とのデータ通信を制御するメモリ制御部と、
    前記CPUから要求されたデータが前記キャッシュ内に記憶されているか否かが判明する前に前記メモリ制御部を介して前記メモリに出力されるメモリフェッチ要求である投機フェッチを出力する投機フェッチ出力部と、
    投機フェッチに関する情報と、該投機フェッチのステータスを保持するテーブルと、
    前記キャッシュに記憶されているデータに関する情報の一覧であるタグ情報からキャッシュヒット可能な情報があるか否かを検索するタグ情報検索部と、
    前記タグ情報検索部の検索がなされた時点で、該検索の結果がキャッシュミスである場合に前記テーブル内のステータスを所定のステータスに更新するステータス更新部と、
    前記投機フェッチ出力部から出力された投機フェッチによって得られるデータを取得した場合、該投機フェッチが出力されてから前記メモリ制御部に到達するまでの時間と、前記投機フェッチの出力前に出された命令であって前記投機フェッチと同一アドレスへのデータ書き込みの命令による前記メモリの書き込みが完了してから前記データ書込みの命令の応答があるまでの時間とを合算した時間のうちに、前記ステータス更新部によって前記テーブルに保持された前記投機フェッチのステータスが前記所定のステータスに更新されたかを判定するステータス更新判定部と、
    前記ステータス更新判定部の判定結果に基づき、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用するか否かを判定するデータ採用判定部と、
    を備える情報処理装置。
  8. 請求項7に記載の情報処理装置において、
    前記投機フェッチ出力部は、前記タグ情報検索部が前記タグ情報の検索処理を開始するタイミングで、投機フェッチを出力することを特徴とするキャッシュ制御装置。
  9. 請求項7に記載の情報処理装置において、
    前記データ採用判定部は、前記ステータス更新判定部によって前記所定のステータスに更新されたと判定された場合、前記投機フェッチ出力部にて出力された投機フェッチによって得られるデータを採用し、前記ステータス更新判定部によって前記所定のステータスに更新されていないと判定された場合、前記投機フェッチによって得られるデータを破棄することを特徴とする情報処理装置。
  10. 請求項7に記載の情報処理装置において、さらに、
    前記データ書き込みの命令が実行中である場合、該命令によるデータ書き込み先のメモリのアドレスを保持することで、該アドレスに対するアクセスをロックするアドレスロック部を備え、
    前記投機フェッチ出力部は、さらに、前記アドレスロック部によって保持されたアドレスの数が所定数以上ある場合、投機フェッチを出力しないことを特徴とする情報処理装置。
JP2008080691A 2008-03-26 2008-03-26 キャッシュ制御装置、情報処理装置 Active JP5163220B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2008080691A JP5163220B2 (ja) 2008-03-26 2008-03-26 キャッシュ制御装置、情報処理装置
US12/250,728 US8190821B2 (en) 2008-03-26 2008-10-14 Cache control apparatus, information processing apparatus, and cache control method
KR1020080101971A KR100988334B1 (ko) 2008-03-26 2008-10-17 캐쉬 제어 장치, 정보 처리 장치
DE602008005261T DE602008005261D1 (de) 2008-03-26 2008-10-21 Zwischenspeichersteuervorrichtung, Informationsverarbeitungsvorrichtung und Zwischenspeichersteuerungsverfahren
EP08167194A EP2105838B1 (en) 2008-03-26 2008-10-21 Cache control apparatus, information processing apparatus, and cache control method
CN2008101789067A CN101546293B (zh) 2008-03-26 2008-11-27 缓存控制装置、信息处理装置和缓存控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008080691A JP5163220B2 (ja) 2008-03-26 2008-03-26 キャッシュ制御装置、情報処理装置

Publications (2)

Publication Number Publication Date
JP2009237722A JP2009237722A (ja) 2009-10-15
JP5163220B2 true JP5163220B2 (ja) 2013-03-13

Family

ID=40720069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008080691A Active JP5163220B2 (ja) 2008-03-26 2008-03-26 キャッシュ制御装置、情報処理装置

Country Status (6)

Country Link
US (1) US8190821B2 (ja)
EP (1) EP2105838B1 (ja)
JP (1) JP5163220B2 (ja)
KR (1) KR100988334B1 (ja)
CN (1) CN101546293B (ja)
DE (1) DE602008005261D1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120233394A1 (en) * 2011-03-10 2012-09-13 Skymedi Corporation Memory controller and a controlling method adaptable to dram
CN103946811B (zh) * 2011-09-30 2017-08-11 英特尔公司 用于实现具有不同操作模式的多级存储器分级结构的设备和方法
US9582204B2 (en) * 2014-01-07 2017-02-28 Apple Inc. Speculative prefetching of data stored in flash memory
FR3021773B1 (fr) * 2014-05-27 2017-10-06 Bull Sas Interrogation speculative en memoire centrale d'un systeme multiprocesseur
JP5811245B1 (ja) * 2014-07-24 2015-11-11 日本電気株式会社 情報処理装置、メモリ順序保障方法、及び、プログラム
US10419571B2 (en) * 2015-03-24 2019-09-17 Cavium, Llc Packet processor forwarding database cache
CN106527959B (zh) * 2015-09-10 2019-07-26 阿里巴巴集团控股有限公司 刷新磁盘输入输出请求的处理方法及设备
JP6318440B2 (ja) * 2016-10-07 2018-05-09 インテル・コーポレーション 無制限トランザクショナルメモリ(utm)システムの最適化

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU8011994A (en) * 1993-09-30 1995-04-18 Apple Computer, Inc. System for decentralized backing store control of virtual memory in a computer
JPH07182182A (ja) * 1993-12-21 1995-07-21 Mitsubishi Electric Corp システムコール情報採取装置
US5774685A (en) * 1995-04-21 1998-06-30 International Business Machines Corporation Method and apparatus for biasing cache LRU for prefetched instructions/data based upon evaluation of speculative conditions
US5611063A (en) * 1996-02-06 1997-03-11 International Business Machines Corporation Method for executing speculative load instructions in high-performance processors
US6029237A (en) * 1997-10-08 2000-02-22 Dell Usa, L.P. Method for simulating the presence of a diskette drive in a NetPC computer that contains only a hard disk drive
JP2000132452A (ja) 1998-10-28 2000-05-12 Kyocera Corp データ処理装置
JP3739607B2 (ja) * 1999-08-24 2006-01-25 富士通株式会社 情報処理装置
JP2001167077A (ja) 1999-12-09 2001-06-22 Nec Kofu Ltd ネットワークシステムにおけるデータアクセス方法、ネットワークシステムおよび記録媒体
EP1150445A3 (en) * 2000-04-24 2008-06-04 Sony Corporation Method and device for transmitting media data comprising time stamp information, method and terminal device for receiving this data, method and device for receiving digital broadcasts and method and device for calculating the transmission time of the media data, based on the time stamp information
US6615319B2 (en) 2000-12-29 2003-09-02 Intel Corporation Distributed mechanism for resolving cache coherence conflicts in a multi-node computer architecture
US7051195B2 (en) * 2001-10-26 2006-05-23 Hewlett-Packard Development Company, L.P. Method of optimization of CPU and chipset performance by support of optional reads by CPU and chipset
US6862664B2 (en) * 2003-02-13 2005-03-01 Sun Microsystems, Inc. Method and apparatus for avoiding locks by speculatively executing critical sections
US7613710B2 (en) * 2004-08-12 2009-11-03 Oracle International Corporation Suspending a result set and continuing from a suspended result set
JP4504134B2 (ja) 2004-08-16 2010-07-14 富士通株式会社 システム制御装置、投機フェッチ方法および情報処理装置

Also Published As

Publication number Publication date
CN101546293B (zh) 2011-11-16
US8190821B2 (en) 2012-05-29
KR20090102603A (ko) 2009-09-30
JP2009237722A (ja) 2009-10-15
CN101546293A (zh) 2009-09-30
EP2105838B1 (en) 2011-03-02
DE602008005261D1 (de) 2011-04-14
KR100988334B1 (ko) 2010-10-18
US20090248982A1 (en) 2009-10-01
EP2105838A1 (en) 2009-09-30

Similar Documents

Publication Publication Date Title
JP5163220B2 (ja) キャッシュ制御装置、情報処理装置
JP4474570B2 (ja) キャッシュコヒーレンシ制御方法
US7757044B2 (en) Facilitating store reordering through cacheline marking
US7363435B1 (en) System and method for coherence prediction
US8423736B2 (en) Maintaining cache coherence in a multi-node, symmetric multiprocessing computer
US8762651B2 (en) Maintaining cache coherence in a multi-node, symmetric multiprocessing computer
US9798577B2 (en) Transactional storage accesses supporting differing priority levels
US20120226865A1 (en) Network-on-chip system including active memory processor
JP2007323192A (ja) キャッシュメモリ装置および処理方法
JP2005234854A (ja) マルチプロセッサシステム
US10949292B1 (en) Memory interface having data signal path and tag signal path
US8732407B2 (en) Deadlock avoidance during store-mark acquisition
JP2011065503A (ja) キャッシュメモリシステム及びキャッシュメモリのway予測の制御方法
JP5482197B2 (ja) 演算処理装置、情報処理装置及びキャッシュメモリ制御方法
JP3550092B2 (ja) キャッシュ装置及び制御方法
JPH0340047A (ja) キヤツシユ・ライン・ストア方法
JP4504134B2 (ja) システム制御装置、投機フェッチ方法および情報処理装置
KR100900012B1 (ko) 정보 처리 시스템, 정보 처리 기판, 및 캐시 태그 및스누프 태그의 갱신 방법
CN100587676C (zh) 探测标记的控制装置
JP4295815B2 (ja) マルチプロセッサシステムおよびマルチプロセッサシステムの動作方法
JP2007257192A (ja) データ処理装置
JP6613874B2 (ja) 情報処理装置、演算処理装置および情報処理装置の制御方法
JP6631317B2 (ja) 演算処理装置、情報処理装置および情報処理装置の制御方法
JP2004171469A (ja) キャッシュメモリシステムおよびキャッシュメモリ制御方法
JP2005044142A (ja) キャッシュメモリ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

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: 20121120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121203

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151228

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5163220

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150