JP2014052754A - ストア制御装置、情報処理装置、および、ストア制御方法 - Google Patents

ストア制御装置、情報処理装置、および、ストア制御方法 Download PDF

Info

Publication number
JP2014052754A
JP2014052754A JP2012195637A JP2012195637A JP2014052754A JP 2014052754 A JP2014052754 A JP 2014052754A JP 2012195637 A JP2012195637 A JP 2012195637A JP 2012195637 A JP2012195637 A JP 2012195637A JP 2014052754 A JP2014052754 A JP 2014052754A
Authority
JP
Japan
Prior art keywords
store
way
entry
buffer unit
information
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.)
Granted
Application number
JP2012195637A
Other languages
English (en)
Other versions
JP5453500B2 (ja
Inventor
Takashi Osada
孝士 長田
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2012195637A priority Critical patent/JP5453500B2/ja
Publication of JP2014052754A publication Critical patent/JP2014052754A/ja
Application granted granted Critical
Publication of JP5453500B2 publication Critical patent/JP5453500B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】ライトバッファからストアデータを追い出す制御が簡単にする。
【解決手段】ストア制御装置は、ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部と、前記ストアバッファ部のライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出す制御を行うストアバッファ制御部とを含む。
【選択図】 図1

Description

本発明は、ストア制御装置、情報処理装置、および、ストア制御方法に関する。
ストアバッファの制御に関する技術の一例が特許文献1に記載されている。この技術は、ストアバッファからストアデータを追い出す制御のために、タイマ、ライトバッファに格納されているデータの数を示す回路等を設けている。
特開2012−43202号公報
上述した特許文献1記載の技術は、タイマ、ライトバッファに格納されているデータの数を示す回路等を設けているため、ライトバッファからストアデータを追い出す制御が複雑であるという課題をもつ。
本発明の目的は、上記課題を解決したストア制御装置、情報処理装置、および、ストア制御方法を提供することである。
本発明のストア制御装置は、ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部と、前記ストアバッファ部のライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出す制御を行うストアバッファ制御部とを含む。
本発明のストア制御方法は、ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部に対し、ライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出す。
本発明の効果は、ライトバッファからストアデータを追い出す制御が簡単になることである。
本発明の第1の実施の形態の構成を示すブロック図である。 本発明の第1の実施の形態の動作を示すフローチャートである。 本発明の第2の実施の形態の構成を示すブロック図である。 ストアバッファ部の構成を示すブロック図である。 ストアバッファ部の構成を示すブロック図である。 エントリ情報の内容を示す説明図である。 エントリフル検出回路の構成を示すブロック図である。 追い出し制御回路の構成を示すブロック図である。 追い出し制御回路の論理を示す説明図である。 マージ回路の構成を示すブロック図である。 リクエストの内容を示す説明図である。 本発明の第2の実施の形態の動作を示す概略フローチャートである。 追い出し動作の一例を示す説明図である。 本発明の第3の実施の形態の構成を示すブロック図である。 リクエストの内容を示す説明図である。 エントリ情報の内容を示す説明図である。 ストアバッファ部の構成を示すブロック図である。 ストアバッファ部の構成を示すブロック図である。
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。図1は、第1の実施の形態の構成を示すブロック図である。図1を参照すると、第1の実施の形態のストア制御装置100は、ストアバッファ部101、および、ストアバッファ制御部102を含む。
ストアバッファ制御部102は、プロセッサ、および、ストアバッファ部101と接続される。ストアバッファ制御部102は、ストアバッファ部101の制御を行う。ストアバッファ部101は、ストアバッファ制御部102、および、主記憶装置と接続される。ストアバッファ部101は、プロセッサから主記憶装置にストアされる(書き込まれる)ストアデータを一時的に格納する。
ストアバッファ制御部102は、プロセッサからリクエストによりブロック単位(連続する複数バイト)のストアデータを受け取り、ストアバッファ部101に格納する。また、ストアバッファ制御部102は、ストアバッファ部101からライン単位(連続する複数ブロック)のストアデータを取り出し(追い出し)、主記憶装置へ出力させる。
また、ストアバッファ部101のラインに少なくとも1つのブロックが存在する場合に、リクエストによりプロセッサからのそのラインに対応するストアデータ(ブロック単位)を受け取ると、マージして格納する。また、マージが少なくとも1回発生すると、そのラインは、マージ中と呼ぶ。また、ラインのすべてのブロックが存在していると、そのラインは、マージ完了と呼ぶ。
ストアバッファの方式として、複数のway(ウェイ)を備える方式(たとえば、セットアソシアティブ方式等)が適用される。ここで、各wayに格納される情報の単位をエントリと称する。
次に、第1の実施の形態の動作について図面を参照して説明する。図2は、第1の実施の形態の動作を示すフローチャートである。図2を参照すると、ストアデータを主記憶装置に追い出す契機が発生すると(ステップS1/Y)、ストアバッファ制御部102は、ライン内のすべてのブロックがストアバッファ部101内に存在する(すなわち、マージ完了の)wayを優先してストアデータを追い出す指示を出力する(ステップS2)。
ここで、契機とは、たとえば、ストアバッファ部101のリクエストのアドレス(中位)に対応するすべてのwayのエントリ(ライン)にストアデータが格納されており、新たなストアデータをいずれかのwayのエントリ(ライン)に格納する場合等である。
次に、ストアバッファ部101は、ストアバッファ制御部102からの指示にしたがい、ストアデータを追い出して主記憶装置に出力する(ステップS3)。
次に、第1の実施の形態の効果について説明する。
第1の実施の形態は、ライン内のすべてのブロックがストアバッファ部101内に存在する(マージ完了の)wayから優先してストアデータを追い出す構成である。
したがって、第1の実施の形態は、たとえば、特許文献1記載の技術のタイマ、ライトバッファに格納されているデータの数を示す回路等が不要となり、追い出しの制御が簡単になるという効果をもつ。
したがって、また、第1の実施の形態は、たとえば、追い出しアルゴリズムに、LRU(Least Recently Used)を用いる構成に比べて、ハードウェア量が減少するという効果をもつ。
また、第1の実施の形態は、主記憶装置114へのアクセスの回数を減少させ、ストアバッファ部101を効率的に利用できるという効果をもつ。
その理由は、マージ完了のラインには、新たなマージが発生する確率が低いので、マージ完了のラインを追い出し、マージの発生する確率の高いラインをストアバッファ部101に格納する構成をとるからである。
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。図3は、第2の実施の形態の構成を示すブロック図である。図3を参照すると、第2の実施の形態の情報処理装置110は、プロセッサ111、ストア制御装置100、および、主記憶装置114を含む。
ストア制御装置100は、第1の実施の形態のストア制御装置100の一例であり、ストアバッファ部101、および、ストアバッファ制御部102を含む。ストアバッファ制御部102は、マージ回路112、エントリフル検出回路115、および、追い出し制御回路116を含む。
プロセッサ111は、マージ回路112、および、主記憶装置114と接続される。プロセッサ111は、リクエスト(ロード、ストア)、および、主記憶装置114に書き込むためのストアデータをマージ回路112へ出力する。また、プロセッサ111は、主記憶装置114からロードデータ(読み出しデータ)を受け取る。
マージ回路112は、プロセッサ111、および、ストアバッファ部101と接続される。マージ回路112は、プロセッサ111からのリクエスト、および、ストアデータをストアバッファ部101へ出力する。また、マージ回路112は、ストアバッファ部101からのライン単位のストアデータとプロセッサ111からのストアデータとのマージ処理を行いストアバッファ部101へ出力する。
ストアバッファ部101は、マージ回路112、主記憶装置114、エントリフル検出回路115、および、追い出し制御回路116と接続される。ストアバッファ部101は、ロードリクエストのアドレスと、ストアバッファ部101内のストアリクエストのアドレスとを比較し、一致した場合に、対応するストアデータを追い出し(読み出し)、ストアリクエストと共に主記憶装置114へ出力する。
また、ストアバッファ部101は、ストアデータを読み出してマージ回路112に出力し、マージ回路112の出力であるマージ後のストアデータを元の格納場所(元のエントリ)に格納する。
また、ストアバッファ部101は、エントリ情報(エントリ内の情報)の一部、および、最新way番号をエントリフル検出回路115へ出力し、追い出し制御回路116の指示にしたがいストアデータを主記憶装置114へ出力する。
主記憶装置114は、プロセッサ111、および、ストアバッファ部101と接続される。主記憶装置114は、ストアバッファ部101からのリクエストにしたがい、データの読み出し(ロード)、および、書き込み(ストア)を行う。主記憶装置114は、読み出したデータをロードデータとしてプロセッサ111に出力する。
エントリフル検出回路115は、ストアバッファ部101、および、追い出し制御回路116と接続される。エントリフル検出回路115は、ストアバッファ部101からエントリ情報の一部を受け取ってエントリフルの判定を行い、エントリフル情報、エントリ情報の一部、および、最新way番号を追い出し制御回路116へ出力する。
追い出し制御回路116は、ストアバッファ部101、および、エントリフル検出回路115と接続される。追い出し制御回路116は、エントリフル検出回路115からのエントリフル情報とエントリ情報の一部とに基づきストアデータの追い出し判定を行い、追い出し指示、および、追い出しway番号をストアバッファ部101に出力する。
次に、ストアバッファ部101の詳細な構成について説明する。図4、図5は、ストアバッファ部101の構成を示すブロック図である。図4、図5において、丸で囲まれた同一の数字の部分は接続される。
図4、図5を参照すると、ストアバッファ部101は、アドレスアレイ301、データアレイ302、エントリ選択回路303、エントリ情報更新回路304、レジスタ305、セレクタ306、セレクタ307、セレクタ308、比較回路309、アドレスアレイ制御回路310、および、データアレイ制御回路311を含む。
ストアバッファ部101は、マージ回路112からリクエスト、および、ストアデータを、追い出し制御回路116から、追い出し指示、および、追い出しway番号を受け取る。
アドレスアレイ301は、エントリ情報を格納する。図6は、エントリ情報の内容を示す説明図である。図6を参照すると、エントリ情報は、エントリ有効情報、マージ完了情報、マージ中情報、アドレス(上位)、および、有効ブロック情報を含む。
エントリ有効情報は、当該エントリが有効であるかどうかを示す、すなわち、データアレイ302のエントリに有効なストアデータが存在するかどうかを示す。有効ブロック情報は、当該データアレイ302のラインのうち、有効なブロックを示す。
マージ中情報は、セットされていると、当該エントリのデータアレイ302内のストアデータにマージが発生したことを示す。マージ完了情報は、セットされていると、当該エントリのデータアレイ302内のラインのすべてのブロックが有効であることを示す。すなわち、当該エントリの有効ブロック情報がすべてのブロックの有効を示す場合に、マージ完了情報が、セットされている。
以下の説明において、わかりやすくするために、エントリ有効情報、マージ完了情報、および、マージ中情報は、‘1’にセットされている場合に、それぞれ、エントリが有効、マージが完了、および、マージ中であることを示すとする。
また、アドレスアレイ301は、リクエストに含まれるアドレス(中位)(以降、indexと呼ぶ)ごとに最新way番号を格納する。また、アドレスアレイ301は、indexに対応するすべてのwayのエントリ情報の一部、および、最新way番号をエントリフル検出回路115に出力する。最新way番号は、最近に、アクセス(登録、追い出しを伴う格納、マージ)されたwayを示す。
また、アドレスアレイ301は、indexに対応するすべてのwayのエントリ情報をエントリ選択回路303に出力する。また、アドレスアレイ301は、indexに対応するすべてのwayのエントリ情報内のアドレス(上位)、および、エントリ有効情報を比較回路309に出力する。
データアレイ302は、アドレスアレイ301のエントリに対応する格納位置(エントリ)にストアデータを格納する。また、データアレイ302は、indexに対応するすべてのwayのストアデータをセレクタ307、および、セレクタ308に出力する。
比較回路309は、indexに対応するすべてのwayのエントリ情報内のアドレス(上位)と、リクエストに含まれるアドレス上位とを比較し、一致するかどうかを示す比較結果を出力する。なお、比較回路309は、エントリ情報内のエントリ有効情報が有効を示していなければ、比較結果を不一致とする。
セレクタ307は、エントリ情報更新回路304の制御にしたがってストアデータを選択し、主記憶装置114に出力する。セレクタ308は、比較回路309からの比較結果にしたがって一致を示すwayのストアデータを選択し、マージ回路112に出力する。
エントリ選択回路303は、ロードリクエストの場合には、比較回路309の比較結果にしたがって、追い出すwayのエントリ情報を選択する。また、エントリ選択回路303は、ストアリクエストの場合には、追い出し制御回路116からの追い出し指示、および、追い出しway番号にしたがって、追い出すwayのエントリ情報を選択する。また、エントリ選択回路303は、エントリ情報更新回路304に、エントリ情報、追い出し指示、追い出しway番号等を出力する。
エントリ情報更新回路304は、ロードリクエストの場合には、エントリ選択回路303からの追い出し対象のエントリのエントリ情報を更新し、セレクタ307の選択信号を生成する。エントリ情報更新回路304は、ストアリクエストの場合には、比較回路309からの比較結果、エントリ選択回路303からのエントリ情報、および、追い出し指示にしたがって、エントリの登録、マージ、または、追い出しの判定を行い、エントリ情報、および、最新way番号を更新する。また、エントリ情報更新回路304は、セレクタ307の選択信号を生成する。
アドレスアレイ制御回路310は、アドレスアレイ301のエントリ情報更新回路304により指定されたwayに対し、更新された(または、新規の)エントリ情報、および、更新された最新way番号を格納する。データアレイ制御回路311は、エントリ情報更新回路304の出力にしたがい、指定されたwayのエントリにストアデータを格納、または、更新する。
レジスタ305は、ロードリクエストを一時的に退避(格納)する。セレクタ306は、ロードリクエストによる追い出しが発生した場合に、追い出し対象のエントリ情報を選択し、主記憶装置114に出力し、さらに、レジスタ305から退避されているロードリクエストを主記憶装置114に出力する。
次に、エントリフル検出回路115の詳細な構成について説明する。図7は、エントリフル検出回路115の構成を示すブロック図である。図7を参照すると、エントリフル検出回路115は、ストアバッファ部101のアドレスアレイ301から、indexに対応する全wayのエントリ情報内のエントリ有効情報、マージ完了情報、および、マージ中情報を受け取る。また、エントリフル検出回路115は、ストアバッファ部101のアドレスアレイ301から、indexに対応する最新way番号を受け取る。
エントリフル検出回路115は、論理積回路401により、全wayのエントリ有効情報がすべて有効であることを示すエントリフル情報を生成し、追い出し制御回路116に出力する。また、エントリフル検出回路115は、受け取った全wayのエントリ情報内のマージ完了情報、および、マージ中情報と、最新way番号とを追い出し制御回路116に出力する。
次に、追い出し制御回路116の詳細な構成について説明する。図8は、追い出し制御回路116の構成を示すブロック図である。図9は、追い出し制御回路116の論理を示す説明図である。図9において、「−」は、‘0’、‘1’どちらでもよいことを示す。
図8、図9を参照すると、追い出し制御回路116は、エントリフル検出回路115からエントリフル情報、マージ完了情報(全wayの)、マージ中情報(全wayの)、および、最新way番号を受け取る。追い出し制御回路116は、エンコード回路601、エンコード回路602、エンコード回路603、および、セレクタ604を含む。
エンコード回路601は、マージ完了情報が、‘1’であるwayのway番号を生成する。ただし、‘1’であるマージ完了情報が複数存在する場合には、最新way番号の次のway番号から順次検索し、マージ完了情報が、‘1’であるwayのway番号を生成する。次のway番号とは、最新way番号に1を加算した番号である。ただし、最新way番号が、最大のway番号(=N)であると、次のway番号は、最小のway番号(=0)である。
エンコード回路602は、マージ中情報が、‘1’であるwayのway番号を生成する。ただし、‘1’であるマージ中情報が複数存在する場合には、最新way番号の次のway番号から順次検索し、マージ中情報が、‘1’であるwayのway番号を生成する。
エンコード回路603は、最新way番号の次のway番号を生成する。
セレクタ604は、‘1’であるマージ完了情報が1つでも存在すれば、エンコード回路601からのway番号を、追い出しway番号として選択する。また、セレクタ604は、‘1’であるマージ完了情報が存在せず、‘1’であるマージ中情報が1つでも存在すれば、エンコード回路602からのway番号を、追い出しway番号として選択する。また、セレクタ604は、‘1’であるマージ完了情報も、‘1’であるマージ中情報も存在しない場合に、エンコード回路603からのway番号を、追い出しway番号として選択する。
追い出し制御回路116は、ストアバッファ部101に、セレクタ604からの追い出しway番号を出力し、また、エントリフル検出回路115からのエントリフル情報を追い出し指示として出力する。
次に、マージ回路112の詳細な構成について説明する。図10は、マージ回路112の構成を示すブロック図である。図10を参照すると、マージ回路112は、プロセッサ111からリクエスト、および、ブロック単位のストアデータを受け取り、ストアバッファ部101からライン単位のストアデータを受け取る。
マージ回路112は、デコード回路510、ブロック単位のセレクタ500、セレクタ501、・・・、および、セレクタ50Nを含む。
セレクタ500〜セレクタ50Nは、リクエスト内のアドレス(下位)により示される個数存在する。たとえば、アドレス(下位)が4ビットであれば、ブロック単位のセレクタは16個である。
デコード回路510は、リクエスト内のアドレス(下位)により指定されたブロックのみプロセッサ111からのストアデータを選択し、他のブロックに関しては、ストアバッファ部101からのストアデータを選択する選択信号を生成する。
セレクタ500〜セレクタ50Nは、選択信号にしたがいストアデータを選択する。たとえば、アドレス(下位)=‘0001’とすると、16個のうち、1番目(0オリジン)のセレクタ501のみが、プロセッサ111からのストアデータを選択する。
そして、マージ回路112は、選択したライン単位のストアデータ、および、プロセッサ111からのリクエストをストアバッファ部101に出力する。
次に、本発明の第2の実施の形態の動作について図面を参照して説明する。説明をわかりやすくするために、以下、1ラインを128[B](バイト)、1ブロックを8[B](バイト)とする。すなわち、1ライン=16ブロックとする。以下の説明において、ストアバッファ部101にラインが存在するとは、そのラインに属する少なくとも1ブロックのストアデータが存在することを意味する。
また、ストアバッファ部101は、たとえば、way−0〜way−N(Nは1,3,7等の整数)を持つN+1wayのセットアソシアティブ方式のキャッシュ構成であるとして説明する。
ここで、リクエストの詳細について説明する。図11は、リクエストの内容を示す説明図である。図11を参照すると、リクエストは、コマンド、アドレス(上位)、アドレス(中位)、アドレス(下位)、および、優先指定情報を含む。
コマンドは、ロードリクエスト、ストアリクエスト等の種別を示す。アドレス(上位)は、ストアバッファ部101のアドレスアレイ301のエントリ情報の一部となる。アドレス(中位)は、アドレスアレイ301、および、データアレイ302を索引するindexである。
アドレス(下位)は、8[B]単位であり、ロード/ストアデータが、ライン内のどのブロックに該当するのかを示す。優先指定情報は、リクエスト内のアドレスで指定されるエントリを優先的に追い出すことを指示する。ストア制御装置100は、ストアリクエストの優先指定情報がオンであると、当該ライン内のブロックがすべて存在するかどうかにかかわらず、エントリフル情報を‘1’にセットする。
図12は、第2の実施の形態の動作を示す概略フローチャートである。図12を参照すると、ストア制御装置100は、ロードリクエストを受け取ると(ステップS11/ロード)、リクエスト内のアドレスに対応するラインがストアバッファ部101に存在するかどうかを調べる(ステップS12)。これは、ブロック単位ではなく、ライン単位の存在を調べる。
当該ラインが存在する場合(ステップS12/Y)、ストア制御装置100は、ストアバッファ部101内の当該ラインのストアデータを主記憶装置114に出力し(追い出し)、当該エントリを削除する(ステップS13)。次に、ストア制御装置100は、受け取ったロードリクエストを主記憶装置114に出力する(ステップS14)。
当該ラインが存在しない場合(ステップS12/N)、ストア制御装置100は、受け取ったロードリクエストを主記憶装置114に出力する(ステップS14)。
ストア制御装置100は、ストアリクエストを受け取ると(ステップS11/ストア)、リクエスト内のアドレスに対応するラインがストアバッファ部101に存在するかどうかを調べる(ステップS15)。
当該ラインが存在する場合(ステップS15/Y)、ストア制御装置100は、ストアリクエストに付随するストアデータを当該ラインのストアデータとマージしてストアバッファ部101に格納する(ステップS16)。
当該ラインが存在しない場合(ステップS15/N)、ストア制御装置100は、リクエスト内のアドレス(index)に対応するすべてのwayにラインが存在するか(すなわち、エントリフルか)どうかを調べる(ステップS17)。
エントリフルでなければ(ステップS17/N)、ストア制御装置100は、空いているwayのエントリにストアデータを格納(登録)する(ステップS18)。
エントリフルであると(ステップS17/Y)、ストア制御装置100は、追い出し制御回路116の論理に基づいて、ストアリクエストと共に、1つのwayのエントリのストアデータ(ライン単位)を主記憶装置114に出力する(追い出す)(ステップS19)。次に、ストア制御装置100は、追い出し対象のエントリに受け取ったリクエストに付随するストアデータを格納する(ステップS20)。
次に、ロードリクエストに対する動作について、さらに詳細に説明する。
プロセッサ111からのロードリクエストは、マージ回路112を経由してストアバッファ部101で受け取られる。マージ回路112は、ロードリクエストを、そのままストアバッファ部101に出力する。
ストアバッファ部101は、ロードリクエスト内のアドレス(中位)(index)によりアドレスアレイ301を索引し、すべてのwayの対応するエントリからエントリ情報を読み出す。次に、ストアバッファ部101は、比較回路309により、読み出したエントリ情報内のアドレス(上位)がロードリクエスト内のアドレス(上位)と一致するかどうかの比較を行う。
アドレス(上位)が一致しなければ、ストアバッファ部101は、セレクタ306を経由してロードリクエストをそのまま主記憶装置114に出力する。
アドレス(上位)が一致し、かつ、エントリ有効情報が有効を示していると、ストアバッファ部101は、ロードリクエストをレジスタ305に格納(待避)する。
次に、ストアバッファ部101は、エントリ選択回路303により、比較回路309で一致が検出されたwayのエントリ情報を選択する。
また、ストアバッファ部101は、ロードリクエスト内のアドレス(中位)(index)によりデータアレイ302を索引し、すべてのwayの対応するエントリからストアデータを読み出す。そして、ストアバッファ部101は、セレクタ307により、比較回路309で一致が検出されたwayのストアデータを選択する。
次に、ストアバッファ部101は、ストアコマンドを生成する。ストアバッファ部101は、ストアコマンド、エントリ選択回路303からのエントリ情報内のアドレス(上位)、有効ブロック情報、ロードリクエストからのアドレス(中位)をストアリクエストとして、セレクタ306を経由で主記憶装置114に出力する。また、そのとき、ストアバッファ部101は、セレクタ307からのストアデータ(128[B])を主記憶装置114に出力する。
次に、ストアバッファ部101は、主記憶装置114に出力したエントリ情報をエントリ情報更新回路304により削除する。すなわち、エントリ情報更新回路304は、当該エントリのエントリ情報のエントリ有効情報を無効を示すようにリセットする。そして、当該エントリは、空きとなる。このとき、エントリ情報更新回路304は、最新way番号を更新しない。また、エントリ情報更新回路304は、当該有効ブロック情報をすべてのブロックが無効を示す値にする。
また、ストアバッファ部101は、レジスタ305に格納しておいたロードリクエストをセレクタ306経由で主記憶装置114に出力する。主記憶装置114は受け取ったロードリクエスト内のアドレスに対応するロードデータ(128[B])を読み出してプロセッサ111に出力する。
次に、ストアリクエストに対する動作について、さらに詳細に説明する。
まず、リクエストで指定されたラインのストアデータがエントリに存在せず、indexで示されるエントリに空きがある場合について説明する。この場合、追い出し、マージは実施されない。
ストアバッファ制御部102のマージ回路112は、ストアリクエストをそのまま、出力する。また、マージ回路112は、リクエスト内のアドレス(下位)により指定されたブロックのみプロセッサ111からのストアデータを選択し、他のブロックに関しては、ストアバッファ部101からのストアデータを選択し、128[B]として出力する。
ストアバッファ部101は、ストアリクエスト内のアドレス(中位)(index)によりアドレスアレイ301を索引し、すべてのwayの対応するエントリからエントリ情報を読み出す。次に、ストアバッファ部101は、比較回路309により、読み出したエントリ情報内のアドレス(上位)がストアリクエスト内のアドレス(上位)と一致するかどうかの比較を行う。
この場合、アドレス(上位)が一致しないので、ストアバッファ部101のエントリ選択回路303は、追い出し制御回路116からの追い出し指示が、追い出しを示しているかどうかを調べる。この場合、追い出し指示は、追い出しを示していない(すなわち、空きエントリが存在する)。したがって、エントリ情報更新回路304は、エントリ選択回路303からの各wayのエントリ有効情報を参照し、ストアデータを格納(登録)するwayを示す格納way番号(空きである)を生成する。
また、エントリ情報更新回路304は、エントリ有効情報を有効を示す値(‘1’)にし、マージ完了情報をマージ完了でない値(‘0’)に、マージ中情報を、マージ中でない値(‘0’)にする。また、エントリ情報更新回路304は、有効ブロック情報をリクエストからのアドレス(下位)から生成し、格納way番号を最新way番号とする。
そして、エントリ情報更新回路304は、リクエストからのアドレス(上位)、格納way番号、エントリ有効情報、マージ完了情報、マージ中情報、有効ブロック情報、および、最新way番号を出力する。
アドレスアレイ制御回路310は、エントリ情報更新回路304の出力にしたがい、アドレスアレイ301のindexに対応した最新way番号の更新を行う。また、アドレスアレイ制御回路310は、アドレスアレイ301のindexに対応し、かつ、格納way番号で指定されたwayのエントリに対し、エントリ情報の登録を行う。
また、データアレイ制御回路311は、エントリ情報更新回路304の出力にしたがい、アドレスアレイ301のindexに対応し、かつ、格納way番号で指定されたwayのエントリに対し、マージ回路112からのストアデータの登録(格納)を行う。
なお、ストアリクエスト登録の際に、リクエスト内の優先指定情報が優先を指定する値(‘1’)の場合には、マージ完了情報を‘1’に、マージ中情報を‘0’にして登録する。これにより、追い出し動作の際に、このエントリが優先的に追い出される。
次に、ストアリクエストで指定されたラインのストアデータがエントリに存在する場合について説明する。この場合、追い出しは実施されず、マージは実施される。
ストアバッファ制御部102のストアバッファ部101は、ストアリクエスト内のアドレス(中位)(index)によりアドレスアレイ301を索引し、すべてのwayの対応するエントリからエントリ情報を読み出す。次に、ストアバッファ部101は、比較回路309により、読み出したエントリ情報内のアドレス(上位)がストアリクエスト内のアドレス(上位)と一致するかどうかの比較を行う。
この場合、アドレス(上位)が一致する。セレクタ308は、比較回路309の出力にしたがい、データアレイ302の一致が検出されたwayからのストアデータを選択し、マージ回路112に出力する。
マージ回路112は、ストアリクエストをそのまま、出力する。また、マージ回路112は、リクエスト内のアドレス(下位)により指定されたブロックのみプロセッサ111からのストアデータを選択し、他のブロックに関しては、セレクタ308からのストアデータを選択し、128[B]として出力する。
また、エントリ情報更新回路304は、比較回路309の出力にしたがって、アドレス(上位)が一致したwayの番号を格納way番号として生成する。この格納way番号で示されるwayにストアデータが格納(マージ)される。
また、エントリ情報更新回路304は、エントリ有効情報をそのままの値(‘1’)にし、マージ中情報を、マージ中の値(‘1’)にする。エントリ情報更新回路304は、リクエストからのアドレス(下位)から生成した有効ブロック情報をいままでの有効ブロック情報にマージする。
また、エントリ情報更新回路304は、マージした有効ブロック情報がすべてのブロックの有効を示すと、マージ完了情報をマージ完了の値(‘1’)にする。また、エントリ情報更新回路304は、格納way番号を最新way番号とする。
そして、エントリ情報更新回路304は、リクエストからのアドレス(上位)、格納way番号、エントリ有効情報、マージ完了情報、マージ中情報、有効ブロック情報、および、最新way番号を出力する。
アドレスアレイ制御回路310は、エントリ情報更新回路304の出力にしたがい、アドレスアレイ301のindexに対応し、かつ、格納way番号で指定されたwayのエントリに対し、エントリ情報の格納(更新)、および、最新way番号の更新を行う。
また、データアレイ制御回路311は、エントリ情報更新回路304の出力にしたがい、アドレスアレイ301のindexに対応し、かつ、格納way番号で指定されたwayのエントリに対し、マージ回路112からのストアデータの格納(更新)を行う。
なお、リクエスト内の優先指定情報が優先を指定する値(‘1’)の場合には、マージ完了情報を‘1’に、マージ中情報をそのままにして登録する。これにより、追い出し動作の際に、このエントリが優先的に追い出される。
次に、ストアリクエストで指定されたラインのストアデータがエントリに存在せず、indexで示されるエントリに空きがない場合について説明する。この場合、追い出しが実施され、マージは実施されない。
ストアバッファ部101は、ストアリクエスト内のアドレス(中位)(index)によりアドレスアレイ301を索引し、すべてのwayの対応するエントリからエントリ情報を読み出し出力する。
ストアバッファ制御部102のエントリフル検出回路115は、ストアバッファ部101のアドレスアレイ301からのエントリ有効情報に基づき、エントリフル情報を生成し出力する。この場合、すべてのwayのエントリ有効情報が有効を示すので、エントリフル情報は、エントリフルを示す。また、エントリフル検出回路115は、マージ完了情報、マージ中情報、および、最新way番号を出力する。
次に、ストアバッファ制御部102の追い出し制御回路116は、マージ完了情報、マージ中情報、最新way番号に基づいて、追い出しway番号を生成し出力する。追い出しway番号の生成の論理は、前述の図8、図9の説明のとおりである。
ここで、追い出し動作の一例について図面を参照して詳細に説明する。図13は、追い出し動作の一例を示す説明図である。図中、マージ未とは、マージ完了でも、マージ中でもないことを示す。
図13を参照すると、index=‘00’のエントリに関しては、マージ完了情報が‘1’であるのは、way−0のみである。したがって、way−0のエントリが追い出されるエントリである。
また、index=‘01’のエントリに関しては、マージ完了情報が‘1’であるエントリは存在しない。マージ中情報が、‘1’であるエントリは、way−0、way−1、way−3、way−4、way−5、および、way−6の複数存在する。最新way番号は、‘1’であり、way−1を示す。したがって、way−1の次のway−2、way−3と順次検索され、マージ中情報が‘1’であるway−3のエントリが追い出されるエントリとなる。
さらに、追い出し制御回路116は、エントリフル情報がエントリフルを示すと、追い出しを指示する追い出し指示を出力する。
また、ストアバッファ部101は、比較回路309により、読み出したエントリ情報内のアドレス(上位)がストアリクエスト内のアドレス(上位)と一致するかどうかの比較を行う。
この場合、アドレス(上位)が一致しないので、ストアバッファ部101のエントリ選択回路303は、追い出し制御回路116からの追い出し指示が、追い出しを示しているかどうかを調べる。この場合、追い出し指示は、追い出しを示している(すなわち、空きエントリが存在しない)。
そして、エントリ選択回路303は、追い出し制御回路116からの追い出しway番号で指定されたwayのエントリ情報を選択する。
また、ストアバッファ部101は、ロードリクエスト内のアドレス(中位)(index)によりデータアレイ302を索引し、すべてのwayの対応するエントリからストアデータを読み出す。そして、ストアバッファ部101は、セレクタ307により、追い出しway番号で指定されたwayのストアデータを選択する。追い出し制御回路116で生成された追い出しway番号は、エントリ選択回路303を経由し、エントリ情報更新回路304に受け取られる。エントリ情報更新回路304は、この場合、追い出しway番号に基づいてセレクタ307の選択信号を生成する。
次に、ストアバッファ部101は、ストアコマンドを生成する。そして、ストアバッファ部101は、ストアコマンド、エントリ選択回路303からのエントリ情報内のアドレス(上位)、有効ブロック情報、ストアリクエストからのアドレス(中位)をストアリクエストとして、セレクタ306を経由で主記憶装置114に出力する。また、そのとき、ストアバッファ部101は、セレクタ307からのストアデータ(128[B])を主記憶装置114に出力する。
次に、エントリ情報更新回路304は、エントリ選択回路303からの追い出しway番号を格納way番号として生成する。また、エントリ情報更新回路304は、エントリ有効情報を有効を示す値(‘1’)にし、マージ完了情報をマージ完了でない値(‘0’)に、マージ中情報を、マージ中でない値(‘0’)にする。また、エントリ情報更新回路304は、有効ブロック情報をリクエストからのアドレス(下位)から生成し、格納way番号を最新way番号とする。
そして、エントリ情報更新回路304は、リクエストからのアドレス(上位)、格納way番号、エントリ有効情報、マージ完了情報、マージ中情報、有効ブロック情報、および、最新way番号を出力する。
アドレスアレイ制御回路310は、エントリ情報更新回路304の出力にしたがい、アドレスアレイ301のindexに対応し、かつ、格納way番号で指定されたwayのエントリに対し、エントリ情報の格納、および、最新way番号の更新を行う。
また、データアレイ制御回路311は、エントリ情報更新回路304の出力にしたがい、アドレスアレイ301のindexに対応し、かつ、格納way番号で指定されたwayのエントリに対し、マージ回路112からのストアデータの格納を行う。
なお、リクエスト内の優先指定情報が優先を指定する値(‘1’)の場合には、マージ完了情報を‘1’に、マージ中情報を‘0’にして格納する。
第2の実施の形態においては、パイプライン方式の制御のために、適宜、情報を格納するパイプラインステージ対応のレジスタを設ける構成が可能である。また、ストア制御装置100と主記憶装置114との間にキャッシュを設ける構成が可能である。
次に、第2の実施の形態の効果について説明する。
第2の実施の形態は、第1の実施の形態のストア制御装置100を含み、マージ完了情報、マージ中情報、および、最新way番号から追い出しwayを決定する構成である。したがって、第1の実施の形態と同一の効果をもつ。
また、第2の実施の形態は、マージ完了情報、または、マージ完了情報のセットされたwayが複数存在する場合には、最新way番号の次のway番号から順次検索し、マージ完了情報、または、マージ中情報がセットされているwayを追い出し対象のwayとする構成である。したがって、最近アクセスのあったwayが追い出し対象にならない。よって、第2の実施の形態は、後続のリクエストによるマージの可能性が向上し、主記憶装置114に対するストア動作が減少し、性能が向上するという効果をもつ。
次に、本発明の第3の実施の形態について図面を参照して詳細に説明する。図14は、第3の実施の形態の構成を示すブロック図である。
図14を参照すると、プロセッサ111は、ストア制御装置100に対し、コア障害情報を出力する。ストア制御装置100のストアバッファ部101は、コア障害情報を受け取る。図15は、リクエストの内容を示す説明図である。図15を参照すると、第3の実施の形態のリクエストは、第2の実施の形態のリクエストにコア番号が追加されている。
図16は、エントリ情報の内容を示す説明図である。図16を参照すると、第3の実施の形態のエントリ情報は、第2の実施の形態のエントリ情報にコア番号が追加されている。図17、図18は、第3の実施の形態のストアバッファ部101の構成を示すブロック図である。図17、図18において、丸で囲まれた同一の数字の部分は接続される。図17、図18を参照すると、第2の実施の形態に追い出し指示差し替え回路320が追加されている。
以下、第2の実施の形態と相異する動作について説明する。
プロセッサ111は、複数のコアで構成されており、それぞれのコアがリクエストを出力する。それぞれのコアは、リクエストに固有のコア番号を含めて出力する。
ストア制御装置100は、リクエスト内のコア番号をエントリ情報に含めてストアバッファ部101のアドレスアレイ301に格納する。
プロセッサ111は、コアに障害が発生すると、コア障害情報に障害が発生したコアを示すコア番号を含めて出力する。ストアバッファ部101は、ストアリクエストにより、追い出しが発生すると、コア障害情報で示されるコア番号を含むエントリを優先して追い出し対象とする。
詳細には、追い出し指示差し替え回路320は、アドレスアレイ301からのすべてのwayのエントリ情報内のコア番号、プロセッサ111からのコア障害情報を受け取る。そして、追い出し指示差し替え回路320は、追い出し制御回路116から追い出し指示、追い出しway番号を受け取ると、コア障害情報で示されるコア番号とエントリ情報内のコア番号とを比較する。
比較で一致した場合、追い出し指示差し替え回路320は、その一致したコア番号を含むエントリ情報を格納しているwayを示す番号を追い出しway番号とする。比較で一致しない場合、追い出し指示差し替え回路320は、追い出し制御回路116からの追い出しway番号を、そのまま、追い出しway番号とする。
追い出し指示差し替え回路320は、追い出し指示、および、追い出しway番号をエントリ選択回路303に出力する。以降の動作は、第2の実施の形態と同一である。
次に、第3の実施の形態の効果について説明する。
第3の実施の形態は、第2の実施の形態の構成を含むので、第2の実施の形態と同一の効果をもつ。
また、第3の実施の形態は、障害の発生したコアに対応するストアデータを優先して追い出す構成である。したがって、障害の発生したコアのエントリ情報、ストアデータを長期間、ストアバッファ部101に格納することがなく、ストアバッファ部101を効率的に利用できるという効果をもつ。
上記の実施の形態の一部、または、全部は、以下の付記のようにも記載されうるが、以下には限られない。
[付記1]
ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部と、
前記ストアバッファ部のライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出す制御を行うストアバッファ制御部と、
を含むことを特徴とするストア制御装置。
[付記2]
前記ストアバッファ部のライン内のすべてのブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、ライン内のすべてのブロックが存在するwayを優先してストアデータを追い出す制御を行う前記ストアバッファ制御部を含むことを特徴とする付記1のストア制御装置。
[付記3]
前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在しない場合、マージが実施されたブロックが存在するwayを優先してストアデータを追い出す制御を行う前記ストアバッファ制御部を含むことを特徴とする付記2のストア制御装置。
[付記4]
前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在せず、マージが実施されたブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、マージが実施されたブロックが存在するwayを優先してストアデータを追い出す制御を行う前記ストアバッファ制御部を含むことを特徴とする付記3のストア制御装置。
[付記5]
優先指定情報を含むストアリクエストを受け取ると、ストアデータを前記ストアバッファ部に格納し、そのストアデータを格納したライン内のすべてのブロックが前記ストアバッファ部内に存在するとして制御を行う前記ストアバッファ制御部を含むことを特徴とする付記4のストア制御装置。
[付記6]
コア番号を含むリクエストを受け取ると、コア番号を前記ストアバッファ部に格納し、コア障害情報を受け取ると、コア障害情報に含まれるコア番号と、前記ストアバッファ部内のコア番号の一致を調べ、一致したコア番号を含むwayのストアデータを優先して追い出す制御を行うことを特徴とする付記5のストア制御装置。
[付記7]
付記1、2、3、4、5、または、6の前記ストア制御装置と、
ブロック単位のストアデータを伴うストアリクエストを前記ストア制御装置に出力するプロセッサと、
前記ストア制御装置から追い出されたストアデータを格納する主記憶装置と、
を含むことを特徴とする情報処理装置。
[付記8]
ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部に対し、ライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出すことを特徴とするストア制御方法。
[付記9]
前記ストアバッファ部のライン内のすべてのブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、ライン内のすべてのブロックが存在するwayを優先してストアデータを追い出すことを特徴とする付記8のストア制御方法。
[付記10]
前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在しない場合、マージが実施されたブロックが存在するwayから優先してストアデータを追い出すことを特徴とする付記9のストア制御方法。
[付記11]
前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在せず、マージが実施されたブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、マージが実施されたブロックが存在するwayを優先してストアデータを追い出すことを特徴とする付記10のストア制御方法。
[付記12]
優先指定情報を含むストアリクエストを受け取ると、ストアデータを前記ストアバッファ部に格納し、そのストアデータを格納したライン内のすべてのブロックが前記ストアバッファ部内に存在するとして処理することを特徴とする付記11のストア制御方法。
[付記13]
コア番号を含むリクエストを受け取ると、コア番号を前記ストアバッファ部に格納し、コア障害情報を受け取ると、コア障害情報に含まれるコア番号と、前記ストアバッファ部内のコア番号の一致を調べ、一致したコア番号を含むwayのストアデータを優先して追い出す付記12のストア制御方法。
100 ストア制御装置
101 ストアバッファ部
102 ストアバッファ制御部
110 情報処理装置
111 プロセッサ
112 マージ回路
114 主記憶装置
115 エントリフル検出回路
116 追い出し制御回路
301 アドレスアレイ
302 データアレイ
303 エントリ選択回路
304 エントリ情報更新回路
305 レジスタ
306 セレクタ
307 セレクタ
308 セレクタ
309 比較回路
310 アドレスアレイ制御回路
311 データアレイ制御回路
320 追い出し指示差し替え回路
401 論理積回路
500 セレクタ
501 セレクタ
50N セレクタ
510 デコード回路
601 エンコード回路
602 エンコード回路
603 エンコード回路
604 セレクタ

Claims (10)

  1. ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部と、
    前記ストアバッファ部のライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出す制御を行うストアバッファ制御部と、
    を含むことを特徴とするストア制御装置。
  2. 前記ストアバッファ部のライン内のすべてのブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、ライン内のすべてのブロックが存在するwayを優先してストアデータを追い出す制御を行う前記ストアバッファ制御部を含むことを特徴とする請求項1のストア制御装置。
  3. 前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在しない場合、マージが実施されたブロックが存在するwayを優先してストアデータを追い出す制御を行う前記ストアバッファ制御部を含むことを特徴とする請求項2のストア制御装置。
  4. 前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在せず、マージが実施されたブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、マージが実施されたブロックが存在するwayを優先してストアデータを追い出す制御を行う前記ストアバッファ制御部を含むことを特徴とする請求項3のストア制御装置。
  5. 優先指定情報を含むストアリクエストを受け取ると、ストアデータを前記ストアバッファ部に格納し、そのストアデータを格納したライン内のすべてのブロックが前記ストアバッファ部内に存在するとして制御を行う前記ストアバッファ制御部を含むことを特徴とする請求項4のストア制御装置。
  6. コア番号を含むリクエストを受け取ると、コア番号を前記ストアバッファ部に格納し、コア障害情報を受け取ると、コア障害情報に含まれるコア番号と、前記ストアバッファ部内のコア番号の一致を調べ、一致したコア番号を含むwayのストアデータを優先して追い出す制御を行うことを特徴とする請求項5のストア制御装置。
  7. 請求項1、2、3、4、5、または、6の前記ストア制御装置と、
    ブロック単位のストアデータを伴うストアリクエストを前記ストア制御装置に出力するプロセッサと、
    前記ストア制御装置から追い出されたストアデータを格納する主記憶装置と、
    を含むことを特徴とする情報処理装置。
  8. ブロック単位のストアデータを伴うストアリクエストを受け取り、ストアデータを複数のブロックを含むライン単位で格納する複数wayを含むストアバッファ部に対し、ライン内のすべてのブロックが前記ストアバッファ部内に存在するwayを優先してストアデータを追い出すことを特徴とするストア制御方法。
  9. 前記ストアバッファ部のライン内のすべてのブロックが存在するwayが複数存在する場合、最新way番号の次のway番号から順次検索し、ライン内のすべてのブロックが存在するwayを優先してストアデータを追い出すことを特徴とする請求項8のストア制御方法。
  10. 前記ストアバッファ部のライン内のすべてのブロックが存在するwayが存在しない場合、マージが実施されたブロックが存在するwayから優先してストアデータを追い出すことを特徴とする請求項9のストア制御方法。
JP2012195637A 2012-09-06 2012-09-06 ストア制御装置、情報処理装置、および、ストア制御方法 Active JP5453500B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012195637A JP5453500B2 (ja) 2012-09-06 2012-09-06 ストア制御装置、情報処理装置、および、ストア制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012195637A JP5453500B2 (ja) 2012-09-06 2012-09-06 ストア制御装置、情報処理装置、および、ストア制御方法

Publications (2)

Publication Number Publication Date
JP2014052754A true JP2014052754A (ja) 2014-03-20
JP5453500B2 JP5453500B2 (ja) 2014-03-26

Family

ID=50611214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012195637A Active JP5453500B2 (ja) 2012-09-06 2012-09-06 ストア制御装置、情報処理装置、および、ストア制御方法

Country Status (1)

Country Link
JP (1) JP5453500B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017104572A1 (ja) * 2015-12-14 2017-06-22 Necプラットフォームズ株式会社 ストアマージ装置、情報処理装置、およびストア制御方法、並びにコンピュータ・プログラムを記録する記録媒体
JP7184632B2 (ja) 2018-12-25 2022-12-06 ルネサスエレクトロニクス株式会社 半導体装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017104572A1 (ja) * 2015-12-14 2017-06-22 Necプラットフォームズ株式会社 ストアマージ装置、情報処理装置、およびストア制御方法、並びにコンピュータ・プログラムを記録する記録媒体
JP2017111484A (ja) * 2015-12-14 2017-06-22 Necプラットフォームズ株式会社 ストアマージ装置、情報処理装置、およびストア制御方法、並びにコンピュータ・プログラム
US11226981B2 (en) 2015-12-14 2022-01-18 Nec Platforms, Ltd. Store merge apparatus, store control method, and recording medium for recording computer program
JP7184632B2 (ja) 2018-12-25 2022-12-06 ルネサスエレクトロニクス株式会社 半導体装置

Also Published As

Publication number Publication date
JP5453500B2 (ja) 2014-03-26

Similar Documents

Publication Publication Date Title
US8745334B2 (en) Sectored cache replacement algorithm for reducing memory writebacks
KR100962057B1 (ko) 캐시 치환 폴리시의 간이화한 구현을 갖춘 멀티스레드 캐시의 방법 및 장치
US7856532B2 (en) Cache logic, data processing apparatus including cache logic, and a method of operating cache logic
JP7049338B2 (ja) タグマッチングコマンドに応答する記憶回路
TWI533201B (zh) 縮減交易回復的快取控制
JP6708019B2 (ja) 演算処理装置、情報処理装置および演算処理装置の制御方法
US20110167224A1 (en) Cache memory, memory system, data copying method, and data rewriting method
US9934152B1 (en) Method and apparatus to use hardware alias detection and management in a virtually indexed physically tagged cache
US20150026410A1 (en) Least recently used (lru) cache replacement implementation using a fifo
US7716423B2 (en) Pseudo LRU algorithm for hint-locking during software and hardware address translation cache miss handling modes
JP2010033480A (ja) キャッシュメモリおよびキャッシュメモリ制御装置
US20140164712A1 (en) Data processing apparatus and control method thereof
US20140289475A1 (en) Cache memory device, information processing device, and cache memory control method
US10157148B2 (en) Semiconductor device configured to control a wear leveling operation and operating method thereof
KR100987996B1 (ko) 메모리 액세스 제어 장치 및 메모리 액세스 제어 방법
CN115617712A (zh) 一种基于组相联高速缓存Cache的LRU替换算法
JP4009304B2 (ja) キャッシュメモリおよびキャッシュメモリ制御方法
US10037278B2 (en) Operation processing device having hierarchical cache memory and method for controlling operation processing device having hierarchical cache memory
JP5453500B2 (ja) ストア制御装置、情報処理装置、および、ストア制御方法
JP2010102623A (ja) キャッシュメモリ及びその制御方法
CN111008039B (zh) 一种用于提供解码指令的装置和方法
US7636815B1 (en) System and method for handling direct memory accesses
JP3953903B2 (ja) キャッシュメモリ装置、及び、参照履歴のビット誤り検出方法
JP2014186579A (ja) キャッシュメモリ、キャッシュメモリ制御装置、および、そのキャッシュメモリ制御方法
JP3808837B2 (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: 20131210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140106

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5453500

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350