JP6927610B1 - キャッシュ制御装置、キャッシュシステムおよびキャッシュ制御方法 - Google Patents
キャッシュ制御装置、キャッシュシステムおよびキャッシュ制御方法 Download PDFInfo
- Publication number
- JP6927610B1 JP6927610B1 JP2020044365A JP2020044365A JP6927610B1 JP 6927610 B1 JP6927610 B1 JP 6927610B1 JP 2020044365 A JP2020044365 A JP 2020044365A JP 2020044365 A JP2020044365 A JP 2020044365A JP 6927610 B1 JP6927610 B1 JP 6927610B1
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache
- error
- corrected
- data storage
- 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
Images
Landscapes
- Detection And Correction Of Errors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
さらに、誤り訂正後のデータをキャッシュメモリに書き込むことによる処理の遅延を軽減できることが好ましい。
図1は、実施形態に係る情報処理システムの構成例を示す概略構成図である。図1に示す構成で、コンピュータ100は、プロセッサシステム110と、主記憶システム140とを備える。プロセッサシステム110は、中央処理装置群120と、キャッシュシステム130とを備える。中央処理装置群120は、中央処理装置121−1から121−4を備える。キャッシュシステム130は、キャッシュ制御部131と、データ格納部132と、キャッシュ201とを備える。主記憶システム140は、主記憶部141と、主記憶制御部142とを備える。
プロセッサシステム110が備える中央処理装置121の個数は図1に示す4つに限らず、1つ以上であればよい。
主記憶システム140は、各種データを記憶する。主記憶部141は、記憶領域を形成する。主記憶制御部142は、主記憶部141を制御して、主記憶部141に対するデータの読み書きを行う。
主記憶部141は、主記憶手段の例に該当する。
なお、メモリにデータを書き込むことをメモリにデータを格納するとも称する。メモリがデータを記憶することを、メモリがデータを格納するとも称する。メモリがデータを記憶していることを、メモリがデータを有するとも称する。
キャッシュ201は、記憶領域を形成する。
キャッシュ制御部131は、キャッシュ201を制御して、キャッシュ201を制御して、キャッシュ201に対するデータの読み書きを行う。また、キャッシュ制御部131は、キャッシュ201から読み出したデータに対して誤り検出を行い、訂正可能障害(訂正可能なメモリ障害、訂正可能なデータ誤り)を検出した場合、誤り訂正を行う。誤り訂正されたデータを訂正後データとも称する。
キャッシュ制御部131は、キャッシュ制御装置の例に該当する。
データ格納部132は、訂正後データ記憶手段の例に該当する。
図2は、キャッシュシステム130を複数備えるコンピュータの構成例を示す図である。図2に示す構成で、コンピュータ101は、プロセッサシステム110と、主記憶システム140とを備える。プロセッサシステム110は、中央処理装置群120とキャッシュシステム130とを備える。
特に、図2に示す構成では、コンピュータ101が複数のプロセッサシステム110を備え、これによってコンピュータ101は複数のキャッシュシステム130を備える。複数のキャッシュシステム130が1つの主記憶システム140に接続されている。
図2の例では、コンピュータ101が複数のプロセッサシステム110を備え、キャッシュ制御部131がMESIプロトコルを実行する点以外は、図1の場合と同様である。
ここでいうエントリは、ライン(キャッシュ201がデータの単位として扱うデータ長のデータ)と、ラインのメモリアドレスを示すエントリアドレスとを含むデータ、あるいは、かかるデータを格納する記憶領域である。キャッシュシステム130がMESIプロトコルを実行する場合、さらにエントリ毎に、MESIのステータスの格納領域のビット列が設けられる。
読出制御部205は、主記憶システム140に対してデータ読出要求を行う。
書込制御部206は、主記憶システム140に対してデータ書込要求を行う。
一方、要求されたデータがキャッシュ201に無いと判定した場合、キャッシュ判定回路204は、要求されたデータのメモリアドレスを読出制御部205に出力して、要求されたデータを主記憶システム140から取得するように指示する。
エラー検出・訂正回路203は、誤り訂正手段の例に該当する。
データ格納レジスタ209は、データ格納部132(図1)の例に該当する。また、データ格納レジスタ209は、訂正後データ記憶手段の例に該当する。
ステータスレジスタ207は、読出要求対応手段の例に該当する。
図4の例で、中央処理装置121からのデータ読出要求を受けたセレクタ202は、データ読出要求からエントリの情報(例えば、エントリアドレス)を取得し、キャッシュ201にエントリの情報を示して該当データを出力するよう要求する。ここでは、セレクタ202が取得するエントリの情報は、キャッシュ201のエントリとデータ格納レジスタ209のエントリとに共通に用いられるものとする。
図5の例で、中央処理装置121からのデータ読出要求を受けたセレクタ202は、データ読出要求からエントリの情報を取得し、キャッシュ201にエントリの情報を示して該当データを出力するよう要求する。また、ステータスレジスタ207は、データ格納レジスタ209が誤り訂正後の該当データを記憶していないと判定する。
エラー検出・訂正回路203は、キャッシュ判定回路204の制御に従って、キャッシュ201が記憶する該当データを取得し、誤り検出を行う。図5の例では、エラー検出・訂正回路203は、誤り無しと判定し、該当データを要求元の中央処理装置121へ転送する。
また、キャッシュ判定回路204は、キャッシュ201が該当データを記憶していると判定し、エラー検出・訂正回路203に該当データの誤り検出を行わせる。
また、エラー検出・訂正回路203は、誤り訂正後のデータをデータ格納レジスタ209のエントリに書き込み、そのエントリの有効ビットをセットする(有効ビットの値を1にする)。さらに、エラー検出・訂正回路203は、誤り訂正後のデータを書き込んだデータ格納レジスタ209のエントリの情報をステータスレジスタ207に書き込む。
また、キャッシュ判定回路204は、キャッシュ201が該当データを記憶していると判定し、エラー検出・訂正回路203に該当データの誤り検出を行わせる。
また、エラー検出・訂正回路203は、誤り訂正後のデータをデータ格納レジスタ209のエントリに書き込み、そのエントリの有効ビットをセットする(有効ビットの値を1にする)。さらに、エラー検出・訂正回路203は、誤り訂正後のデータを書き込んだデータ格納レジスタ209のエントリの情報をステータスレジスタ207に書き込む。
書込制御部206は、エラー検出・訂正回路203からの指示に従って、主記憶システム140に対して誤り訂正後のデータの主記憶部141への書き込みを要求する。
図8の例で、ビジーチェック回路208は、キャッシュシステム130が中央処理装置121からのリクエストを処理中か否かを判定する。例えば上記のように、ビジーチェック回路208は、セレクタ202を監視し、セレクタ202が中央処理装置121からのリクエストを処理中か否かを判定する。
図9の処理で、セレクタ202は、中央処理装置121から受けたデータ読出要求からエントリの情報を取得し、キャッシュ201にエントリの情報を出力して該当データを出力するよう要求する(ステップS101)。
データ格納レジスタ209に該当データがあると判定した場合(ステップS102:YES)、ステータスレジスタ207は、キャッシュ201のデータの使用を一時的に禁止し、データ格納レジスタ209を制御して該当データを中央処理装置121に転送させる(ステップS111)。
ステップS111の後、キャッシュシステム130は図9の処理を終了する。
なお、キャッシュ201がデータを記憶している場合でも、そのデータが格納されているエントリのMESIのステータスが「I」(Invalid)の場合は、キャッシュ201がそのデータを記憶していない場合と同様に扱う。MESIのステータスの「I」は、そのデータ(キャッシュライン)が無効であることを示す。
ステップS131の後、キャッシュシステム130は、図9の処理を終了する。
誤りがないと判定した場合(ステップS141:NO)、エラー検出・訂正回路203は、該当データを要求元の中央処理装置121へ転送する(ステップS151)。
ステップS151の後、キャッシュシステム130は、図9の処理を終了する。
誤り訂正不可と判定した場合(ステップS161:NO)、エラー検出・訂正回路203は、要求元の中央処理装置121にエラーを通知する(ステップS171)。
ステップS171の後、キャッシュシステム130は、図9の処理を終了する。
ステップS181の後、キャッシュシステム130は、図9の処理を終了する。
図10の処理で、キャッシュ判定回路204が、該当データを主記憶システム140から取得するように読出制御部205に指示し、読出制御部205は、キャッシュ判定回路204からの指示に従って、主記憶部141が記憶している該当データを取得する(ステップS201)。
そして、読出制御部205は、得られた該当データを要求元の中央処理装置121に転送し、また、得られた該当データをキャッシュ201に書き込む(ステップS202)。
ステップS202の後、キャッシュシステム130は図10の処理を終了する。
図11の処理で、エラー検出・訂正回路203は、該当データの誤り訂正を行う(ステップS301)。
そして、エラー検出・訂正回路203は、誤り訂正後のデータを要求元の中央処理装置121へ転送する(ステップS302)。
ステータスが「E」または「S」の場合(ステップS306:E,S)、キャッシュシステム130は、図11の処理を終了する。
そして、エラー検出・訂正回路203は、誤り訂正前の該当データを格納しているキャッシュ201のエントリにおけるMESIのステータスを「E」に更新する(ステップS312)。
ステップS312の後、キャッシュシステム130は、図11の処理を終了する。
図12の処理で、ビジーチェック回路208は、キャッシュシステム130の処理状況を確認し(ステップS401)、キャッシュシステム130が中央処理装置121からのリクエストを処理中か否かを判定する(ステップS402)。
リクエストを処理中であるとビジーチェック回路208が判定した場合(ステップS402:YES)、処理がステップS401に戻る。
一方、データ格納レジスタ209にデータがあると判定した場合(ステップS412:YES)、ビジーチェック回路208は、データ格納レジスタ209からデータを読み出してキャッシュ201に書き込む(ステップS421)。
ステップS422の後、処理がステップS401へ戻る。
これにより、キャッシュ制御装置(キャッシュ制御部131)では、キャッシュ制御部131がデータ読出要求またはデータ書込要求を処理しているときに、データ格納レジスタ209が記憶している訂正後データを、キャッシュ201に書き込むことを回避できる。キャッシュ制御装置(キャッシュ制御部131)によれば、この点で、誤り訂正後のデータをキャッシュ201に書き込むことによる処理の遅延を軽減できる。
キャッシュ制御装置(キャッシュ制御部131)を、性能が優先されるシステム、例えば、多少複雑な処理を行う場合、または、処理量が増加する場合でも、性能の低下を軽減したいシステムに適用してもよい。
かかる構成で、誤り訂正部511は、キャッシュから読み出されたデータに訂正可能障害が検出された場合、そのデータの誤り訂正を行い、誤り訂正された訂正後データを訂正後データ記憶部に格納する。読出要求対応部512は、データ読出要求に対し、要求されるデータが訂正後データ記憶部に記憶されているか否かを判定し、記憶されていると判定した場合、要求されるデータを訂正後データ記憶手段から読み出して要求元へ転送する。
誤り訂正部511は、誤り訂正手段の例に該当する。読出要求対応部512は、読出要求対応手段の例に該当する。訂正後データ記憶部は、訂正後データ記憶手段の例に該当する。
訂正後データ記憶部522は、訂正後データ記憶手段の例に該当する。誤り訂正部524は、誤り訂正手段の例に該当する。読出要求対応部525は、読出要求対応手段の例に該当する。
図15に示す処理は、誤り訂正工程(ステップS11)と、読出要求対応工程(ステップS12)とを含む。
誤り訂正工程(ステップS11)では、キャッシュから読み出されたデータに訂正可能障害が検出された場合、データの誤り訂正を行い、誤り訂正された訂正後データを訂正後データ記憶部に格納する。読出要求対応工程(ステップS12)では、データ読出要求に対し、要求されるデータが訂正後データ記憶部に記憶されているか否かを判定し、記憶されていると判定した場合、要求されるデータを前記訂正後データ記憶手段から読み出して要求元へ転送する。
「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD−ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
110 プロセッサシステム
120 中央処理装置群
121 中央処理装置
130、520 キャッシュシステム
131 キャッシュ制御部
132 データ格納部
140 主記憶システム
141 主記憶部
142 主記憶制御部
201、521 キャッシュ
202 セレクタ
203 エラー検出・訂正回路
204 キャッシュ判定回路
205 読出制御部
206 書込制御部
207 ステータスレジスタ
208 ビジーチェック回路
209 データ格納レジスタ
510、523 キャッシュ制御装置
511、524 誤り訂正部
512、525 読出要求対応部
522 訂正後データ記憶部
Claims (5)
- キャッシュから読み出されたデータに訂正可能障害が検出された場合、前記データの誤り訂正を行い、誤り訂正された訂正後データを訂正後データ記憶手段に格納する誤り訂正手段と、
データ読出要求に対し、要求されるデータが前記訂正後データ記憶手段に記憶されているか否かを判定し、記憶されていると判定した場合、要求されるデータを前記訂正後データ記憶手段から読み出して要求元へ転送する読出要求対応手段と、
前記キャッシュに対するデータ読出要求またはデータ書込要求を処理中か否かを、要求に示されるメモリアドレスを基に前記キャッシュのエントリを決定するセレクタの状態に基づいて判定し、処理中でないと判定した場合、前記訂正後データ記憶手段が記憶している訂正後データを、前記キャッシュに書き込むデータ更新処理手段と
を備えるキャッシュ制御装置。 - 前記読出要求対応手段が、要求されるデータが前記訂正後データ記憶手段に記憶されていないと判定した場合、前記誤り訂正手段は、要求されるデータを前記キャッシュから取得して誤り検出を行い、訂正可能誤りを検出した場合、当該データの誤り訂正を行い、誤り訂正された訂正後データを訂正後データ記憶手段に格納し、かつ、当該訂正後データを要求元へ転送する、
請求項1に記載のキャッシュ制御装置。 - 前記誤り訂正手段は、誤り訂正を行ったデータのキャッシュプロトコルのステータスが、主記憶手段に記憶されているデータから更新されていることを示す場合、訂正後データを主記憶手段に書き込むよう要求する、
請求項1または請求項2に記載のキャッシュ制御装置。 - キャッシュと、訂正後データ記憶手段と、キャッシュ制御装置とを備え、
前記キャッシュ制御装置は、
前記キャッシュから読み出されたデータに訂正可能障害が検出された場合、前記データの誤り訂正を行い、誤り訂正された訂正後データを前記訂正後データ記憶手段に格納する誤り訂正手段と、
データ読出要求に対し、要求されるデータが前記訂正後データ記憶手段に記憶されているか否かを判定し、記憶されていると判定した場合、要求されるデータを前記訂正後データ記憶手段から読み出して要求元へ転送する読出要求対応手段と、
前記キャッシュに対するデータ読出要求またはデータ書込要求を処理中か否かを、要求に示されるメモリアドレスを基に前記キャッシュのエントリを決定するセレクタの状態に基づいて判定し、処理中でないと判定した場合、前記訂正後データ記憶手段が記憶している訂正後データを、前記キャッシュに書き込むデータ更新処理手段と
を備えるキャッシュシステム。 - キャッシュから読み出されたデータに訂正可能障害が検出された場合、前記データの誤り訂正を行い、誤り訂正された訂正後データを訂正後データ記憶手段に格納する工程と、
データ読出要求に対し、要求されるデータが前記訂正後データ記憶手段に記憶されているか否かを判定し、記憶されていると判定した場合、要求されるデータを前記訂正後データ記憶手段から読み出して要求元へ転送する工程と、
前記キャッシュに対するデータ読出要求またはデータ書込要求を処理中か否かを、要求に示されるメモリアドレスを基に前記キャッシュのエントリを決定するセレクタの状態に基づいて判定し、処理中でないと判定した場合、前記訂正後データ記憶手段が記憶している訂正後データを、前記キャッシュに書き込む工程と、
を含むキャッシュ制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020044365A JP6927610B1 (ja) | 2020-03-13 | 2020-03-13 | キャッシュ制御装置、キャッシュシステムおよびキャッシュ制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020044365A JP6927610B1 (ja) | 2020-03-13 | 2020-03-13 | キャッシュ制御装置、キャッシュシステムおよびキャッシュ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6927610B1 true JP6927610B1 (ja) | 2021-09-01 |
JP2021144606A JP2021144606A (ja) | 2021-09-24 |
Family
ID=77456258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020044365A Active JP6927610B1 (ja) | 2020-03-13 | 2020-03-13 | キャッシュ制御装置、キャッシュシステムおよびキャッシュ制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6927610B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356229A (zh) * | 2021-12-22 | 2022-04-15 | 合肥康芯威存储技术有限公司 | 一种数据存储设备的参数优化方法及其优化系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0854988A (ja) * | 1994-08-09 | 1996-02-27 | Nec Corp | 磁気ディスク処理装置 |
JP3270367B2 (ja) * | 1997-09-29 | 2002-04-02 | エヌイーシーフィールディング株式会社 | 半導体記憶装置 |
JP3262094B2 (ja) * | 1999-01-26 | 2002-03-04 | 日本電気株式会社 | メモリ制御装置及びメモリ制御方法 |
JP2011108306A (ja) * | 2009-11-16 | 2011-06-02 | Sony Corp | 不揮発性メモリおよびメモリシステム |
WO2014006732A1 (ja) * | 2012-07-05 | 2014-01-09 | 富士通株式会社 | データ訂正方法、マルチプロセッサシステム、及びプロセッサ |
JP6025193B2 (ja) * | 2012-10-18 | 2016-11-16 | Necプラットフォームズ株式会社 | キャッシュメモリ、キャッシュメモリ障害制御方法および情報処理システム |
JP6275427B2 (ja) * | 2013-09-06 | 2018-02-07 | 株式会社東芝 | メモリ制御回路およびキャッシュメモリ |
-
2020
- 2020-03-13 JP JP2020044365A patent/JP6927610B1/ja active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356229A (zh) * | 2021-12-22 | 2022-04-15 | 合肥康芯威存储技术有限公司 | 一种数据存储设备的参数优化方法及其优化系统 |
CN114356229B (zh) * | 2021-12-22 | 2023-09-22 | 合肥康芯威存储技术有限公司 | 一种数据存储设备的参数优化方法及其优化系统 |
Also Published As
Publication number | Publication date |
---|---|
JP2021144606A (ja) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4332205B2 (ja) | キャッシュ制御装置およびキャッシュ制御方法 | |
US7111134B2 (en) | Subsystem and subsystem processing method | |
JP4372134B2 (ja) | データ比較機能を有するストレージシステム | |
US7606971B2 (en) | Storage control apparatus and external storage apparatus | |
US20100199039A1 (en) | Systems and Methods for Optimizing Host Reads and Cache Destages in a Raid System | |
US20050229033A1 (en) | Disk array controller and information processing apparatus | |
JP2012519319A (ja) | ストレージサブシステム | |
WO2002088962A2 (en) | Data storage array employing block checksums and dynamic striping | |
JP6811819B2 (ja) | エラー処理方法、並びにデータ記憶装置及びその制御装置 | |
JP4322870B2 (ja) | Raid装置、raid制御方法、及びraid制御プログラム | |
JP4884721B2 (ja) | 記憶装置のフォーマットを不要としたストレージシステム及び記憶制御方法 | |
JP2005309818A (ja) | ストレージ装置、そのデータ読出方法、及びそのデータ読出プログラム | |
JP6927610B1 (ja) | キャッシュ制御装置、キャッシュシステムおよびキャッシュ制御方法 | |
US6754897B1 (en) | Operation prioritization and selection in a probability-based job scheduler | |
JP6213345B2 (ja) | 転送装置、決定方法、及びデータ処理装置 | |
JPH09146836A (ja) | キャッシュ索引の障害訂正装置 | |
JP4369523B2 (ja) | 縮退制御装置 | |
JP3129224B2 (ja) | キャッシュメモリ装置 | |
JP4430092B2 (ja) | Raid装置、raid装置の制御部およびraid装置のライトバック制御方法 | |
JP6812332B2 (ja) | 情報処理システム及び情報処理方法 | |
JPH10283123A (ja) | 記憶装置アレイ | |
JP2002169660A (ja) | データ記憶アレイ装置、その制御方法、プログラム記録媒体及びプログラム | |
JPH02166544A (ja) | メモリアドレス変換方式 | |
JP2019149128A (ja) | データ書き込み処理装置、記憶システム、データ書き込み処理方法及びプログラム | |
JP3638729B2 (ja) | データ記憶制御方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200313 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210325 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210406 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210531 |
|
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: 20210706 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210729 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6927610 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |