JP4297969B2 - 記録制御装置および記録制御方法 - Google Patents

記録制御装置および記録制御方法 Download PDF

Info

Publication number
JP4297969B2
JP4297969B2 JP2008501537A JP2008501537A JP4297969B2 JP 4297969 B2 JP4297969 B2 JP 4297969B2 JP 2008501537 A JP2008501537 A JP 2008501537A JP 2008501537 A JP2008501537 A JP 2008501537A JP 4297969 B2 JP4297969 B2 JP 4297969B2
Authority
JP
Japan
Prior art keywords
data
request
recording
store
recorded
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.)
Expired - Fee Related
Application number
JP2008501537A
Other languages
English (en)
Other versions
JPWO2007096980A1 (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
Publication of JPWO2007096980A1 publication Critical patent/JPWO2007096980A1/ja
Application granted granted Critical
Publication of JP4297969B2 publication Critical patent/JP4297969B2/ja
Expired - Fee Related 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/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)

Landscapes

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

Description

本発明は、プロセッサが備えるキャッシュおよびメモリに対するデータの記録制御を行う記録制御装置および記録制御方法に関するものである。
従来、IO(Input/Output)装置は、主記憶装置におけるデータの記録制御を行うシステムコントローラに対してデータのストア要求を出力している。また、IO装置は、ストア要求に対して順序保証が必要な場合に、システムコントローラからのストア要求に対する完了通知(以下、ストア完了通知)を待ってから、次のストア要求をシステムコントローラに出力する必要があった。
一方、ストア要求を取得したシステムコントローラは、ストア要求のアドレスに該当するデータがCPU(Central Processing Unit)の保持するキャッシュにヒットしたか否かに応じて、キャッシュに対するデータの無効化要求を行うと共に、ストア対象となるデータ(以下、ストア対象データ)を主記憶装置に記録し、キャッシュに対する無効化処理およびストア対象データの記録が完了した時点で、IO装置にストア完了通知を出力していた。
したがって、IO装置は、システムコントローラからのストア完了通知を取得するまで、次のストア要求を出力することができず、ストア対象データを迅速に処理することができなかった。
そこで、上述した問題を解消するべく、特許文献1では、主記憶装置におけるデータの入出力を制御する記憶制御装置が、ストア要求を取得した場合に、主記憶装置のストア対象データの記録完了を待たず、データの無効化処理が完了した時点で、ストア完了通知をストア要求元に通知するという技術が開示されている。
特開2000−181891号公報
しかしながら、上述した従来技術では、IO装置が処理するストア対象データの増加に伴って、このストア対象データを管理する回路構成が複雑となり、効率的にストア対象データを管理することができないという問題があった。
本発明は、上記に鑑みてなされたものであって、効率的にストア対象データを管理することができる記録制御装置および記録制御方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、プロセッサが備えるキャッシュおよびメモリに対するデータの記録制御を行う記録制御装置であって、前記メモリに対して記録される第1のデータの記録場所に既に第2のデータが記録されており、かつ、前記キャッシュに第2のデータに対応する第3のデータが記録されている場合に、前記第3のデータの無効化要求を行う無効化要求手段と、前記キャッシュに記録されていた第3のデータが無効化された場合に、前記第1のデータに対する記録要求の出力元に当該記録要求を識別する情報を出力して、記録対象となるデータの記録が完了した旨を通知する通知手段と、を備えたことを特徴とする。
また、本発明は、プロセッサが備えるキャッシュおよびメモリに対するデータの記録制御を行う記録制御方法であって、前記メモリに対して記録される第1のデータの記録場所に既に第2のデータが記録されており、かつ、前記キャッシュに第2のデータに対応する第3のデータが記録されている場合に、前記第3のデータの無効化要求を行う無効化要求工程と、前記キャッシュに記録されていた第3のデータが無効化された場合に、前記第1のデータに対する記録要求の出力元に当該記録要求を識別する情報を出力して、記録対象となるデータの記録が完了した旨を通知する通知工程と、を含んだことを特徴とする。
本発明によれば、メモリに対して記録される第1のデータの記録場所に既に第2のデータが記録されており、かつ、プロセッサが備えるキャッシュに第2のデータに対応する第3のデータが記録されている場合に、この第3のデータに対する無効化要求を行い、無効化が完了した場合に、第1のデータに対する記録要求の出力元に記録要求を識別する情報を出力して、記録対象となるデータの記録が完了した旨を通知するので、迅速に第1のデータを処理することができ、自装置を含んだシステム全体の性能を向上させることができるとともに、記録要求の出力元となる装置が管理すべきデータ量を削減し、回路を単純化させることができる。
以下に、本発明にかかる記録制御装置および記録制御方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
まず、本発明の特徴について説明する。本発明にかかる記録制御装置は、メモリに対するデータの記録要求(以下、ストアリクエスト)を取得した場合に、取得したストアリクエストに含まれメモリに記録されるデータ(以下、ストア対象データ)のメモリ格納先となるアドレスを参照する。そして、記録制御装置は、ストア対象データのアドレスが、キャッシュヒットした場合に、キャッシュヒットしたデータ(以下、無効化対象データ)に対する無効化要求をCPU(Central Processing Unit)に出力する。
記録制御装置は、CPUから無効化対象データを無効化した旨の情報(以下、無効化完了情報)を取得した場合に、メモリにストア対象データを記録していない状態であっても、ストア対象データの記録が完了した旨の情報(以下、ストア完了情報)をストアリクエスト出力元に出力し、ストア対象データの記録が完了した旨を通知する。また、ストア完了情報には、ストアリクエストを識別する情報(以下、リクエストID<Identification>)を含んでいる。
このように、本発明にかかる記録制御装置は、CPUの無効化処理が完了した時点で、ストア完了情報をストアリクエストの出力元に出力するので、ストアリクエストの出力元となる装置(以下、IO<Input/Output>装置)は、迅速にストア対象データを処理することができ、記録制御装置を含んだシステム全体の性能を向上させることができる。
また、IO装置は、ストア対象データを管理するために、このストア対象データとリクエストIDとを関連付けて管理する必要がある。そのため、ストア対象データの増加に伴い、リクエストIDも増加してしまうため、IO装置の回路構成が複雑になっていた。
しかし、本発明にかかる記録制御装置が、ストア完了情報に無効化の完了したストアリクエストのリクエストIDを含めてIO装置に出力するので、IO装置は、リクエストIDを効率よく開放することができ(リクエストIDを使いまわすことができるので)、リクエストIDの数を抑えることができる。更に、IO装置が管理すべきリクエストIDの数が抑えられるので、IO装置の回路を単純化することができ、コストを下げることができる。
次に、本実施例にかかる記録制御システムの構成について説明する。なお、本実施例に示す記録制御システムは一例である。図1は、本実施例にかかる記録制御システムの構成を示すブロック図である。同図に示すように、この記録制御システムは、メモリ10と、MAC(Memory Access Controller)20と、CPU30,40と、IO装置50と、SC(System Controller)100とを備えて構成される。
このうち、メモリ10は、CPU30,40が用いるデータや命令などを記憶する記憶装置であり、MAC20は、メモリ10に対するデータの入出力を制御する装置である。
CPU30,40は、キャッシュを有し、メモリ10に記録された命令およびデータをキャッシュに記録させ、キャッシュに記録された命令を解釈して、データに対して所定の演算を実行する装置である。なお、本実施例では特に、CPU30,40は、無効化対象データのアドレスを取得した場合に、取得したアドレスに対応するデータを無効化し、無効化完了情報を無効化要求の出力元(SC100)に出力する。
IO装置50は、リクエスト管理テーブル50aを有し、SC100に対してストアリクエストを行う装置である。図2は、リクエスト管理テーブル50aに記録されるデータの一例を示す図である。同図に示すように、リクエスト管理テーブル50aに記録されるデータは、リクエストIDと、アドレスと、ストア対象データとからなる。このうち、リクエストIDは、ストアリクエストを一意に識別するための識別情報であり、アドレスは、ストア対象データを記録するメモリ10上のアドレスを示し、ストア対象データは、メモリに格納されるデータを示す。IO装置50は、リクエスト管理テーブル50aに記録されたリクエストIDと、アドレスと、ストア対象データとからなるストアリクエストを順次SC100に出力する。
また、IO装置50は、SC100からストア完了情報を取得した場合には、このストア完了情報に含まれるリクエストIDを参照し、リクエスト管理テーブル50aのリクエストIDを開放する。例えば、ストア完了情報に、リクエストID「R0001」が含まれている場合には、リクエスト管理テーブル50aのリクエストID「R0001」を開放し、新たなアドレスおよびストア対象データと対応付ける。
SC100は、CPU30,40が備えるキャッシュおよびメモリ10に対するデータの記録制御を行う装置であり、受信用キュー110と、応答用回路120と、ストアデータ保持用キュー130と、スヌープ用回路140とを備える。
このうち、受信用キュー110は、IO装置50から出力されるストアリクエストを順次記録する記録装置である。また、受信用キュー110は、IO装置50から取得した順番で、ストアリクエストに含まれるリクエストIDおよびアドレスをスヌープ用回路140に出力し、ストアリクエストに含まれるストア対象データをストアデータ保持用キュー130に出力する。
さらに、受信用キュー110は、記録可能なストアリクエストの数(以下、記録可能数)の情報を保持しており、ストアリクエストをIO装置50から取得するごとに、記録可能数から1減算する。なお、受信用キュー110は、ストアリクエストを取得した場合に、記録可能数が0以下であるか否かを判定し、記録可能数が0以下である場合には、ストアリクエストを受付けられない旨の情報をIO装置50に出力する。
応答用回路120は、受信用キュー110が保持する記録可能数を管理するとともに、ストア完了情報をIO装置50に出力する装置である。具体的に、応答用回路120は、MAC20からストア対象データの記録が完了した旨の情報を取得した場合に、受信用キュー110を制御して、受信用キュー110が保持する記録可能数を1増やす(インクリメントする)。
また、応用用回路120は、後述するスヌープ用回路140から無効化を行ったデータに対するリクエストIDを取得した場合には、取得したリクエストIDをストア完了情報としてIO装置50に出力する。(なお、無効化が行われなかった場合、つまり、キャッシュヒットしなかった場合には、キャッシュヒットしなかったストアリクエストに対するリクエストIDをスヌープ用回路140から取得し、取得したリクエストIDをIO装置50に出力する。)
ストアデータ保持用キュー130は、受信用キュー110から取得するストア対象データを記録する記録装置である。また、ストアデータ保持用キュー130は、スヌープ用回路140からの制御命令に応答して、保持しているストア対象データをMAC20に出力する。
スヌープ用回路140は、CPU30または40に対する無効化要求を行うとともに、MAC20に、メモリ10に対するストア対象データの記録要求を行う装置である。まず、スヌープ用回路140がCPU30または40に対して行う無効化要求について説明し、その後に、ストア対象データの記録要求について説明する。
スヌープ用回路140は、CPU30,40が保持するキャッシュの登録情報(図示しない)を保持している。この登録情報には、キャッシュに記録されたデータとメモリ10に記録されたデータとの関係が記録されている。スヌープ用回路140は、この登録情報を参照することによって、ストア対象データが記録されるメモリ上のアドレスに、既に、キャッシュに登録されたデータが記録されているか否かを判定することができる(キャッシュヒットしたか否かを判定することができる)。
スヌープ用回路140は、受信用キュー110からリクエストIDおよびストア対象データのアドレスを取得した場合に、取得したアドレスと登録情報とを比較してキャッシュヒットしたか否かを判定する(スヌープ処理を行う)。そして、キャッシュヒットした場合には、スヌープ用回路140は、キャッシュヒットしたアドレスをCPU30あるいは40に出力することによって、データの無効化要求を行う。
その後、スヌープ用回路140は、CPU30あるいは40から無効化完了情報を取得した場合に、無効化されたデータのアドレスと同一のアドレスに対応するリクエストIDを応答用回路120に出力して、データの無効化が完了した旨を通知する。
一方、スヌープ用回路140は、受信用キュー110から取得したアドレスと、登録情報とを比較し、キャッシュヒットしなかった場合には、キャッシュヒットしなかったアドレスに対応するリクエストIDを応答回路120に出力して、データの無効化が完了した旨を通知する。
続いて、スヌープ用回路140がMAC20に対して行うストア対象データの記録要求について説明する。まず、スヌープ用回路140は、受信用キュー110からリクエストIDおよびアドレスを取得した場合に、取得したリクエストIDおよびアドレスに対してロック番号を割り振り、アドレスロックレジスタ140aに登録する。ここで、ロック番号は、リクエストIDをSC100内で識別するための識別番号である。このロック番号を利用することによって、SC100は、同一のリクエストIDがアドレスロックレジスタ140aに存在する場合であっても、各リクエストIDをロック番号によって識別することができる。
図3は、アドレスロックレジスタ140aに記録されるデータの一例を示す図である。同図に示すように、アドレスロックレジスタ140aに記録されるデータは、ロック番号と、ロック有効情報と、リクエストIDと、アドレスとを有する。このうち、ロック有効情報は、ロック番号に対応するアドレスがロックされているか否かを示す情報である。
スヌープ用回路140は、リクエストIDおよびアドレスをアドレスロックレジスタ140aに記録する場合に、既に格納先のアドレスが他のリクエストIDによってロックされている場合には(ロック有効情報が「有効」である場合)、このロックが解除されるまで待機する。一方、他のリクエストIDによってアドレスがまだロックされていない場合(ロック有効情報が「無効」の場合)、およびロックが解除された場合(ロック有効情報が「有効」から「無効」になった場合)には、スヌープ用回路140は、リクエストIDとアドレスとをロック番号と対応付けてアドレスロックレジスタ140aに登録するとともに、ロック有効情報を「有効」にする。
スヌープ用回路140は、リクエストIDおよびアドレスをアドレスロックレジスタ140aに登録した後に、ストア保持用キュー130に記録されたストア対象データをMAC20に出力させるとともに、出力させたストア対象データに対応するアドレスと、当該アドレスに対応するロック番号とをアドレスロックレジスタ140aから読み出して、MAC20に出力する。(ここで、MAC20は、SC100からストア対象データと、アドレスと、ロック番号を取得した場合には、ストア対象データをメモリ10の該当アドレスに記録させ、ストア対象データの記録が完了した旨を120に出力するとともに、ロック番号をスヌープ用回路140に出力して、ロック番号に対応するロックを解除させる(ロック有効情報を「有効」から「無効」に更新させる)。)
次に、本実施例にかかる記録制御システムの処理をタイムチャートによって説明する。図4は、記録制御システムにかかる処理のタイムチャートを示す図である。同図に示すように、IO装置50は、ストアリクエストを受信用キュー110に出力し、受信用キュー110は、リクエストIDとアドレスとをスヌープ用回路140に出力し、ストア対象データをストアデータ保持用キュー130に出力する。
スヌープ用回路140は、スヌープ処理を行うとともに、ストア対象データの出力要求をストアデータ保持用キュー130に出力し、無効化要求(キャッシュヒットした場合)をCPU30あるいは40に出力する。そして、ストアデータ保持用キュー130が、ストア対象データをMAC20に出力する一方で、CPU30あるいは40が無効化対象となるデータの無効化を完了させて、無効化完了情報をスヌープ用回路140に出力する。
スヌープ用回路140は、無効化完了情報を取得した場合に、応答用回路120にリクエストIDを出力し、IO装置50にストア完了情報を出力させる。ストア完了情報を取得したIO装置50は、ストア完了情報に含まれるリクエストIDに対応するリクエスト管理テーブル50aのリクエストIDを開放する。
一方、MAC20は、ストア対象データをメモリ10に記録させた後に、記録させたストア対象データに対応するロック番号をスヌープ用回路140に出力してアドレスロックを開放させ(ロック有効情報を「有効」から「無効」に更新させ)、スヌープ用回路140は、次のリクエストIDおよびアドレスを受信用キュー110に要求する。
このように、スヌープ用回路140は、CPU30あるいは40から無効化完了情報を取得した時点で、ストア完了情報をリクエストIDとともにIO装置50に出力するので、IO装置50はストア対象データを迅速に処理することができ、記録処理システム全体の性能を向上させることができる。
次に、本実施例にかかるSC100の処理をフローチャートによって説明する。図5は、本実施例にかかるSC100の処理を示すフローチャートである。同図に示すように、SC100は、IO装置50からストアリクエストを取得し(ステップS101)、取得したストアリクエストを受信用キュー110に格納する(ステップS102)。
受信用キュー110は、記録可能数が所定値以上(例えば1以上)か否かを判定し(ステップS103)、所定値よりも記録可能数が小さい場合には(ステップS104、No)、ストアリクエストを受付けられない旨の情報をIO装置50に出力し(ステップS105)、ステップS101に移行する。
一方、記録可能数が所定値以上の場合には(ステップS104,Yes)、受信用キュー110は、リクエストIDおよびアドレスをスヌープ用回路140に出力し、ストア対象データをストアデータ保持用キュー130に出力する(ステップS106)。
続いて、スヌープ用回路140は、アドレスロックが成功したか否かを判定する(ステップS107)。このステップS107において、スヌープ用回路140は、受信用キュー110からリクエストIDおよびアドレスを取得した場合に、アドレスロックレジスタ140aに基づいて、アドレスが既にロックされているか(ロック有効情報が「有効」か)否かを判定する。
そして、アドレスロックが失敗した場合(ロック有効情報が「有効」の場合)には(ステップS108,No)、ステップ107に移行し、アドレスロックが成功した場合(ロック有効情報が「無効」の場合)には(ステップS108,Yes)、スヌープ用回路140は、ロック番号と対応付けてリクエストIDとアドレスとをアドレスロックレジスタ140aに記録し、ロック有効情報を「有効」に更新する(ステップS109)。
その後、スヌープ用回路140は、ストア処理およびスヌープ処理を実行し(ステップS110,111)ステップS101に移行する。
続いて、図5のステップS110において示したストア処理について説明する。図6は、ストア処理を示すフローチャートである。同図に示すように、スヌープ用回路140は、MAC20にロック番号と、アドレスと、ストア対象データとを渡し(ステップS201)、(ストア対象データの記録が完了した後に)MAC10からのストア完了情報を取得する(ステップS202)。
スヌープ用回路140は、MAC20から取得したストア完了情報を取得した場合に、このストア完了通知に含まれるロック番号を参照し、アドレスロックを解除(ロック番号に対応するロック有効情報を「有効」から「無効」に更新)し(ステップS203)、応答用回路120が、記録可能数を増やす(ステップS204)。
続いて、図5のステップS111において示したスヌープ処理について説明する。図7は、スヌープ処理を示すフローチャートである。同図に示すように、スヌープ用回路140は、登録情報と、受信用キュー110から取得したアドレスとを比較して、キャッシュヒットしたか否かを判定する(ステップS301)。
そして、キャッシュヒットした場合には(ステップS302,Yes)、スヌープ用回路140は、CPU30あるいは40に無効化要求を行い(ステップS303)、(CPU30あるいは40が無効化を完了させた後に)CPU30あるいは40から無効化完了情報を取得する(ステップS304)。
スヌープ用回路140は、無効化対象となったデータに対応するリクエストIDを、応答用回路120に出力し、応答用回路120が、リクエストIDを含んだストア完了情報をIO装置50に出力する(ステップS305)。
一方、キャッシュヒットしなかった場合には(ステップS302,No)、スヌープ用回路140は、ステップS305に移行する。なお、この場合、スヌープ用回路140は、キャッシュヒットしなかったアドレスに対応するリクエストIDを応答用回路120に出力することになる。
このように、SC100は、CPU30あるいは40から無効化完了情報を取得した時点で、無効化対象となったデータに対応するストアリクエストのリクエストIDをIO装置50に出力し、無効化が完了した旨を通知するので、IO装置は、ストア対象データを効率よく処理することができる。
上述してきたように、本実施例にかかる記録制御システムは、IO装置50がストアリクエストをSC100に出力し、SC100は、登録情報とストアリクエストに含まれるアドレスとを比較して無効化要求を行うか否かを判定し、無効化要求を行うと判定した場合に、CPU30あるいは40に無効化要求を行う。そして、SC100が、無効化完了情報を取得した時点で、無効化要求に対応するリクエストIDをIO装置50に出力し、ストア対象データの記録が完了した旨を通知にするので、IO装置は、ストア対象データを迅速に処理することができ、記録制御システム全体の性能が向上する。
また、本実施例にかかる記録制御システムは、無効化が完了したデータに対応するリクエストIDをIO装置50に出力するので、IO装置50は管理すべきリクエストIDの数を大幅に減らすことができ、回路を単純化させることができる(リクエストIDの管理方式が単純化される)。
また、本実施例にかかる記録制御システムは、応答用回路120が、受信用キュー110の記録可能数を管理し、MAC20からストア対象データの記録が完了した旨の情報を取得した場合に、記録可能数をインクリメントするので、効率よく、IO装置50からストアリクエストを受付けることができる。
また、本実施例にかかる記録制御システムは、スヌープ用回路140が、リクエストIDを取得した場合に、リクエストIDにロック番号を割り振り管理するので、同一のリクエストIDを取得した場合であっても、各リクエストIDをロック番号で識別することができるので、正確にリクエストIDを処理することができる。
以上のように、本発明にかかる記録制御装置は、メモリにデータを記録させる場合に有用であり、特に、メモリに記録すべきデータを迅速に処理する必要のあるデータの記録制御システムなどに適している。
図1は、本実施例にかかる記録制御システムの構成を示すブロック図である。 図2は、リクエスト管理テーブルに記録されるデータの一例を示す図である。 図3は、アドレスロックレジスタに記録されるデータの一例を示す図である。 図4は、記録制御システムにかかる処理のタイムチャートを示す図である。 図5は、本実施例にかかるSCの処理を示すフローチャートである。 図6は、ストア処理を示すフローチャートである。 図7は、スヌープ処理を示すフローチャートである。
符号の説明
10 メモリ
20 MAC
30,40 CPU
50 IO装置
50a リクエスト管理テーブル
100 SC
110 受信用キュー
120 応答用回路
130 ストアデータ保持用キュー
140 スヌープ用回路
140a アドレスロックレジスタ

Claims (5)

  1. プロセッサが備えるキャッシュおよびメモリに対するデータの記録制御を行う記録制御装置であって、
    前記メモリに対して記録される第1のデータの記録場所に既に第2のデータが記録されており、かつ、前記キャッシュに第2のデータに対応する第3のデータが記録されている場合に、前記第3のデータの無効化要求を行う無効化要求手段と、
    前記キャッシュに記録されていた第3のデータが無効化された場合に、前記第1のデータに対する記録要求の出力元に当該記録要求を識別する情報を出力して、記録対象となるデータの記録が完了した旨を通知する通知手段と、
    を備えたことを特徴とする記録制御装置。
  2. 前記第1のデータを前記メモリに記録するように要求する識別情報を含んだ記録要求を取得した場合に、取得した記録要求の識別情報と、無効化要求を行ったデータに対応する記録要求の識別情報とが重複しないように、各記録要求に識別番号を付して管理する記録要求管理手段を更に備えたことを特徴とする請求項1に記載の記録制御装置。
  3. 自記録制御装置がバッファに受付可能な前記記録要求の数を管理する管理手段を更に備え、前記管理手段は、前記記録要求を取得した場合に、前記数に基づいて、前記記録要求を受付けるか否かを判定することを特徴とする請求項2に記載の記録制御装置。
  4. 前記管理手段は、前記第1のデータに対する記録が完了した旨の情報を取得した場合に、前記数を増やすことを特徴とする請求項3に記載の記録制御装置。
  5. プロセッサが備えるキャッシュおよびメモリに対するデータの記録制御を行う記録制御方法であって、
    前記メモリに対して記録される第1のデータの記録場所に既に第2のデータが記録されており、かつ、前記キャッシュに第2のデータに対応する第3のデータが記録されている場合に、前記第3のデータの無効化要求を行う無効化要求工程と、
    前記キャッシュに記録されていた第3のデータが無効化された場合に、前記第1のデータに対する記録要求の出力元に当該記録要求を識別する情報を出力して、記録対象となるデータの記録が完了した旨を通知する通知工程と、
    を含んだことを特徴とする記録制御方法。
JP2008501537A 2006-02-24 2006-02-24 記録制御装置および記録制御方法 Expired - Fee Related JP4297969B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/303438 WO2007096980A1 (ja) 2006-02-24 2006-02-24 記録制御装置および記録制御方法

Publications (2)

Publication Number Publication Date
JPWO2007096980A1 JPWO2007096980A1 (ja) 2009-07-09
JP4297969B2 true JP4297969B2 (ja) 2009-07-15

Family

ID=38437042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008501537A Expired - Fee Related JP4297969B2 (ja) 2006-02-24 2006-02-24 記録制御装置および記録制御方法

Country Status (3)

Country Link
US (1) US8176260B2 (ja)
JP (1) JP4297969B2 (ja)
WO (1) WO2007096980A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8327082B2 (en) * 2008-08-29 2012-12-04 Freescale Semiconductor, Inc. Snoop request arbitration in a data processing system
JP2011150422A (ja) * 2010-01-19 2011-08-04 Renesas Electronics Corp データ処理装置
WO2013042240A1 (ja) * 2011-09-22 2013-03-28 富士通株式会社 情報処理装置及び情報処理装置の制御方法
WO2017049590A1 (en) * 2015-09-25 2017-03-30 Intel Corporation Systems and methods for input/output computing resource control
GB2548845B (en) 2016-03-29 2019-11-27 Imagination Tech Ltd Handling memory requests

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57176588A (en) * 1981-04-21 1982-10-29 Mitsubishi Electric Corp Electronic computer
JP2504548B2 (ja) 1988-12-14 1996-06-05 富士通株式会社 デ―タ転送制御方式
JPH02161550A (ja) 1988-12-14 1990-06-21 Fujitsu Ltd データ転送制御方式
JPH02294761A (ja) * 1989-05-10 1990-12-05 Fujitsu Ltd マルチプロセッサシステムの逐次化処理方式
JPH03147153A (ja) 1989-11-02 1991-06-24 Nec Corp キャッシュメモリ装置
JP2708943B2 (ja) * 1990-08-08 1998-02-04 三菱電機株式会社 キャッシュメモリ制御装置
GB2260429B (en) * 1991-10-11 1995-05-24 Intel Corp Versatile cache memory
JPH05210640A (ja) 1992-01-31 1993-08-20 Hitachi Ltd マルチプロセッサシステム
JPH05233531A (ja) 1992-02-18 1993-09-10 Nippon Telegr & Teleph Corp <Ntt> バス制御システム
US5615343A (en) * 1993-06-30 1997-03-25 Intel Corporation Method and apparatus for performing deferred transactions
JP3360933B2 (ja) * 1994-06-01 2003-01-07 富士通株式会社 情報処理システムにおける記憶制御方法および記憶制御装置
JP3441521B2 (ja) 1994-08-04 2003-09-02 インテル・コーポレーション バス・トランザクション実行の方法と装置
US5634068A (en) 1995-03-31 1997-05-27 Sun Microsystems, Inc. Packet switched cache coherent multiprocessor system
JP3678620B2 (ja) * 1996-03-01 2005-08-03 日本電気株式会社 マルチプロセッサシステムにおけるデータ一貫性維持制御方法
US5893160A (en) 1996-04-08 1999-04-06 Sun Microsystems, Inc. Deterministic distributed multi-cache coherence method and system
JPH10320281A (ja) 1997-05-15 1998-12-04 Kofu Nippon Denki Kk マルチプロセッサシステムにおけるキャッシュ一致処理 装置
JP3864509B2 (ja) * 1997-08-19 2007-01-10 株式会社日立製作所 マルチプロセッサシステム
JP3274634B2 (ja) * 1997-09-29 2002-04-15 甲府日本電気株式会社 リード制御装置
JP3147153B2 (ja) 1997-10-13 2001-03-19 株式会社ワイケイワイ フレーム構造物
JP2000181891A (ja) 1998-12-18 2000-06-30 Hitachi Ltd 共有メモリアクセス順序保証方式
US6718839B2 (en) * 2001-06-26 2004-04-13 Sun Microsystems, Inc. Method and apparatus for facilitating speculative loads in a multiprocessor system
US6912612B2 (en) * 2002-02-25 2005-06-28 Intel Corporation Shared bypass bus structure
US7114043B2 (en) * 2002-05-15 2006-09-26 Broadcom Corporation Ambiguous virtual channels
US7093079B2 (en) * 2002-12-17 2006-08-15 Intel Corporation Snoop filter bypass
US7617378B2 (en) * 2003-04-28 2009-11-10 International Business Machines Corporation Multiprocessor system with retry-less TLBI protocol
US7409504B2 (en) * 2005-10-06 2008-08-05 International Business Machines Corporation Chained cache coherency states for sequential non-homogeneous access to a cache line with outstanding data response
JP4576453B2 (ja) * 2006-02-24 2010-11-10 富士通株式会社 キャッシュ制御回路、情報処理装置および切り離し方法
US20090006668A1 (en) * 2007-06-28 2009-01-01 Anil Vasudevan Performing direct data transactions with a cache memory

Also Published As

Publication number Publication date
WO2007096980A1 (ja) 2007-08-30
US20080294849A1 (en) 2008-11-27
US8176260B2 (en) 2012-05-08
JPWO2007096980A1 (ja) 2009-07-09

Similar Documents

Publication Publication Date Title
US10585804B2 (en) Systems and methods for non-blocking implementation of cache flush instructions
JP4050225B2 (ja) マルチプロセッサシステムにおける推測的な格納を容易にする方法および装置
JP4050226B2 (ja) マルチプロセッサシステムにおける推測的な格納を容易にするl2ディレクトリの利用
US10579267B2 (en) Memory controller and memory system
US8423736B2 (en) Maintaining cache coherence in a multi-node, symmetric multiprocessing computer
JP4297969B2 (ja) 記録制御装置および記録制御方法
US20110320738A1 (en) Maintaining Cache Coherence In A Multi-Node, Symmetric Multiprocessing Computer
JP2014120151A5 (ja)
US20130339609A1 (en) Multilevel cache hierarchy for finding a cache line on a remote node
US20100205609A1 (en) Using time stamps to facilitate load reordering
US20100153655A1 (en) Store queue with store-merging and forward-progress guarantees
US8732407B2 (en) Deadlock avoidance during store-mark acquisition
JP2009237722A (ja) キャッシュ制御装置、情報処理装置
US7451274B2 (en) Memory control device, move-in buffer control method
US20010014932A1 (en) Multi-processor system
TWI809860B (zh) 執行主機控制器對儲存設備的中止處理的方法與系統
US20130103903A1 (en) Methods And Apparatus For Reusing Prior Tag Search Results In A Cache Controller
CN116107771A (zh) 缓存状态记录方法、数据访问方法及相关装置、设备
CN111367625B (zh) 一种线程的唤醒方法及装置,存储介质和电子设备
JP6570873B2 (ja) マルチプロセッサシステムのメインメモリ対する投機的クエリ
JP2012128656A (ja) ベクトル演算処理装置、ベクトル演算処理方法およびベクトル演算処理プログラム
CN114791913B (zh) 数据库的共享内存缓冲池处理方法、存储介质与设备
CN114880356A (zh) 数据库共享内存缓冲池的处理方法、存储介质与设备
JP2024538196A (ja) キャッシュラインコヒーレンス状態アップグレード
JP6110417B2 (ja) キャッシュメモリ制御装置および制御方法

Legal Events

Date Code Title Description
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: 20090407

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090414

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120424

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120424

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140424

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees