JPH05314008A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH05314008A
JPH05314008A JP4120595A JP12059592A JPH05314008A JP H05314008 A JPH05314008 A JP H05314008A JP 4120595 A JP4120595 A JP 4120595A JP 12059592 A JP12059592 A JP 12059592A JP H05314008 A JPH05314008 A JP H05314008A
Authority
JP
Japan
Prior art keywords
cache
data
disk
write
address
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.)
Pending
Application number
JP4120595A
Other languages
English (en)
Inventor
Fumihiro Sawada
田 文 弘 澤
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP4120595A priority Critical patent/JPH05314008A/ja
Publication of JPH05314008A publication Critical patent/JPH05314008A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【構成】 各ブロックC01−1〜C01−nに対設さ
れるディレクトリC02−1〜C02−nにオフセット
情報記録部とデータ長記録部とを設ける。は対応
ブロックの先頭アドレスに相当するディスクアドレスか
ら、対応ブロックの有効データが書込まれる当該ディス
ク上のアドレスまでの距離を示す。は対応ブロックの
有効データの長さを示す。コントローラCは、キャッシ
ュライト要求があると、キャッシュC01へのライトと
同時に対応ディレクトリの更新を行う。キャッシュC0
1の貯蔵データをディスクD1 〜Dm へ吐出す際、対応
ディレクトリを参照し、ディスクアドレスからオフセッ
トセクタ数分だけずれたアドレスにてライトし始め、デ
ータ長セクタ数分だけその動作を継続し、アクセスを終
了する。 【効果】 ブロックサイズ未満のキャッシュライト要求
でもディスクへのアクセスを伴わずに処理を遂行でき
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、キャッシュメモリを具
備する情報処理装置に係り、特にセット連想キャッシュ
(Set-associative cashe)を具備するハードディスクコ
ントローラ、フロッピディスクコントローラ、MT(mag
netic tape)コントローラなどに適用して好適な情報処
理装置に関する。
【0002】
【従来の技術】ディスクコントローラは一般に、外部と
のデータのやりとりを高速に行うためにキャッシュメモ
リを持つ。例えば、ホストからディスクへのデータ書込
み要求があったときには、ホストからのデータをとりあ
えず受付けてしまってキャッシュメモリに貯蔵してお
き、ホストからのアクセスが切れたとき、そのキャッシ
ュメモリに貯蔵したデータをディスクへ吐出すようにす
る。なお、キャッシュメモリに空きがなくなるほどにホ
ストからのアクセスが連続する場合もあり、この場合
は、キャッシュメモリに空き領域を作るためにホストか
らのデータの受付けを中断するが、それにしても、ホス
トを極力待たせないようにすることができるものであ
る。また、使用頻度の高いデータはディスクへ吐出さず
にキャッシュメモリ内へ貯蔵しておき、ホストによる高
速読出しを可能にするものである。
【0003】上記セット連想キャッシュとはキャッシュ
メモリのマッピング方式上での一つの類型である。キャ
ッシュメモリのデータ貯蔵領域は一般に複数のブロック
に区分されており、このセット連想キャッシュではディ
スクの情報記憶領域における各場所に対してそのブロッ
ク単位で任意の場所を使用可能なものになっている。し
たがって、各キャッシュブロックとディスクの各場所と
の対応はその時々で違うこととなる。よって、ディスク
コントローラが、あるキャッシュブロック内のデータを
ディスクへ移す場合、そのデータをディスクの記憶領域
におけるいずれの場所に格納すべきであるかを知ること
ができるようにしておく必要がある。
【0004】セット連想キャッシュでは、そのようなキ
ャッシュメモリとディスクとの対応関係を示す情報とし
てキャッシュディレクトリがある。
【0005】図5はその従来のキャッシュディレクトリ
の構造を示すものである。
【0006】キャッシュディレクトリはキャッシュメモ
リの各ブロック毎に設けられ、その一つ一つの構造が図
5に示すようなものとなっているのである。
【0007】この図において、キャッシュディレクトリ
は有効フラグ記録部とUN(UnitNumber)記録部と
ディスクアドレス記録部とLRU値記録部とから構
成されている。有効フラグ記録部は、対応するキャッ
シュブロックに貯蔵されている情報が有効データ及び無
効データのうちいずれであるかを示すものである。有効
データとはディスクへ未格納のデータ、無効データとは
ディスクへ格納済みのデータである。UN記録部は、
当該対応キャッシュブロックに貯蔵されているデータが
どのディスクに対するものかを示すものである。つま
り、一つのディスクコントローラに複数台のディスクが
繋がれた場合に、ディスク毎に設定されているユニット
番号が記録されている。ディスクアドレス記録部は対
応キャッシュブロックの先頭アドレスに対応する当該デ
ィスク上のアドレスを示すものである。LRU値記録部
は対応キャッシュブロックのデータのキャッシュ常駐
優先度を示すもので、キャッシュサーチが行われ、その
キャッシュブロックがヒットしない度に1カウントアッ
プされ、その値が大きいほど使用頻度が低く、後に追出
し対象とされ、キャッシュメモリに空きがなくなった場
合、ディスクに最初に吐出されるものとなる。
【0008】ディスクコントローラは、キャッシュブロ
ック内のデータをディスクに吐出す場合、LRU値やそ
の他の条件から吐出し対象を決定し、その対象となった
キャッシュブロックのUN及びディスクアドレスを参照
し、当該キャッシュブロック内の有効データをディスク
に書込む。その完了後は、当該キャッシュブロック内の
データは無効データとなるため有効フラグ記録部を無
効表示に更新する。
【0009】また、ホストからのデータ書込み要求はキ
ャッシュライト要求という形で送られてくる。ディスク
コントローラは、このキャッシュライト要求を受ける
と、有効フラグ記録部、UN記録部、ディスクアド
レス記録部の参照によりキャッシュディレクトリをサ
ーチし、ヒットしたか或いは空きのブロックを発見する
と、そのキャッシュブロックに受信データを格納すると
同時に、対応するキャッシュディレクトリを更新するこ
ととなる。
【0010】ところで、このようなディスクコントロー
ラシステムにおいて、キャッシュメモリを構成する各キ
ャッシュブロックのサイズをディスクにおける複数セク
タ分に大きく設定することが行われている。
【0011】これにより、キャッシュのサーチが高速に
なり、またディスクへのライト時のアクセスをキャッシ
ュブロック単位で行うことが、すなわち複数セクタ分を
一度にアクセスすることになるため、セクタ単位で行う
ときよりもディスクへのアクセス回数が減り、ディスク
への吐出しも高速になる。
【0012】
【発明が解決しようとする課題】しかしながら、上記従
来のシステムにおいては、そのキャッシュブロックサイ
ズに満たないデータのキャッシュライト要求があった場
合にそのキャッシュライト要求に対する処理においてデ
ィスクアクセスが伴い、そのために処理時間がかさんで
しまうという問題があった。
【0013】すなわち、上記ディレクトリではブロック
の先頭アドレスに対応するディスクアドレスは分かって
も、その途中は分からない。したがって、前述したよう
にディスクへのアクセスはブロック単位となる。
【0014】よって、ライトデータがブロックサイズに
満たない場合、ブロック内のその有効データが貯蔵され
た領域以外の残余の部分をそのままにしてディスクへの
ライトを行うと、その残余の部分のデータがディスクに
ライトされてしまい、ディスク内のデータを壊してしま
うこととなる。
【0015】したがって、当該キャッシュライト要求で
そのブロック内にライトした有効データとディスク内に
おいて連続すべきデータをディスクからリードし、その
残余の部分に埋め込んだ上で、ディスクへのライトを行
わなければならないこととなるのである。
【0016】このような場合、ディスクリードが終わる
までキャッシュライトを行えないためにホストに対する
応答が遅くなるという問題を生ずる。
【0017】本発明は、このような問題点に鑑みてなさ
れたもので、その目的とするところは、キャッシュブロ
ックサイズに満たないデータのキャッシュライト要求で
あってもディスクへのアクセスを伴わずにキャッシュラ
イト処理を実行することができるようにし、もって高速
キャッシュライトを実現することができる情報処理装置
を提供することにある。
【0018】
【課題を解決するための手段】本発明の情報処理装置
は、第1の記憶装置と、この第1の記憶装置に対するキ
ャッシュメモリとして機能し、そのデータ貯蔵領域が複
数のキャッシュブロックに区分けされた第2の記憶装置
と、上記複数のキャッシュブロック各々に対設され、対
応キャッシュブロックの先頭アドレスに相当する上記第
1の記憶装置上のアドレスからこの対応キャッシュブロ
ックの有効データが書込まれるべき上記第1の記憶装置
上のアドレスまでの距離を示すオフセット情報と、上記
対応キャッシュブロックに書込まれている有効データの
長さを示すデータ長情報とを具備するキャッシュディレ
クトリと、このキャッシュディレクトリの情報を参照し
て上記複数のキャッシュブロック各々の有効データを上
記第1の記憶装置における所定の場所に格納する書込み
制御手段とを備えている。
【0019】
【作用】本発明によれば、オフセット情報とデータ長情
報とを参照することにより、ディスク上のキャッシュブ
ロックサイズに満たない書込みエリアを特定することが
できるため、そのキャッシュブロック全体を有効データ
で満たす必要はなく、キャッシュブロックの一部分だけ
にキャッシュライトを行うことができる。したがって、
キャッシュブロックサイズに満たないデータのキャッシ
ュライト要求であってもディスクへのリードアクセスを
伴わずにキャッシュライト処理を実行することができる
こととなる。
【0020】
【実施例】以下に本発明の実施例について図面を参照し
つつ説明する。
【0021】図1は本発明の一実施例に係る情報処理装
置の構成を示すものである。
【0022】まず、図1(a)において、Cはディスク
コントローラであり、このディスクコントローラCには
m台の磁気ディスク装置D1 〜Dm が制御対象として接
続されている。ディスクコントローラCはライトキャッ
シュC01とライトキャッシュディレクトリC02とを
備えている。ライトキャッシュC01はn個のキャッシ
ュブロックに区分されている(以降、各ブロックにC0
1−1〜C01−nの符号を用いる。)。各ブロックC
01−1〜C01−nは磁気ディスク装置D1〜Dm の
記録媒体ディスクにおける16セクタ分のサイズを有
し、セット連想方式で制御される。キャッシュディレク
トリC02は各ブロック1〜nに対応して設けられてい
る(以降、各ブロックに対応するディレクトリにC02
−1〜C02−nの符号を用いる。)。各ディレクトリ
C02−1〜C02−nは、対応する各ブロックC01
−1〜C01−nにつき、磁気ディスク装置D1 〜Dm
の記録媒体ディスクとの対応を示すものとされている。
【0023】各ディレクトリC02−1〜C02−n
は、図1(b)に示すように、6バイト(48ビット)
で構成され、有効フラグ記録部とUN記録部とディ
スクアドレス記録部とLRU値記録部とオフセット
情報記録部とデータ長記録部とを備え、各機能は次
のようなものとなる。なお、記録部〜については前
述した図5に示すものと同等であるのでは、ここでは説
明を省略する。
【0024】オフセット情報記録部は、対応キャッシ
ュブロックの先頭アドレスに相当する記録媒体ディスク
上のアドレスから、対応キャッシュブロックの有効デー
タが書込まれるべき当該記録媒体ディスク上のアドレス
までの距離を示すものであり、その距離はセクタ数で表
される。
【0025】データ長記録部は、対応キャッシュブロ
ックに書込まれている有効データの長さを示すもので、
その長さも同じくセクタ数で表されるものである。この
データ長記録部において(00)H とすることで、ラ
イトキャッシュデータが無いことを示すこともできる。
【0026】ディスクコントローラCは、ホストからキ
ャッシュライト要求があったときには、ホストからのデ
ータをとりあえず受付けてしまってライトキャッシュC
01に貯蔵しておき、その後、ホストからのアクセスが
切れたとき等に、そのキャッシュC01に貯蔵してある
有効データを磁気ディスク装置D1 〜Dm へ吐出すよう
にするが、この場合、対応するキャッシュディレクトリ
の情報を参照して所定の場所に格納すると同時に、その
キャッシュディレクトリの内容を更新するようになって
いる。以下、特に、キャッシュブロックサイズに満たな
いデータのキャッシュライト要求を受けたときの動作に
ついて具体的に説明する。
【0027】[1] コントローラCは、受信したキャッ
シュライト要求のデータが、ライトキャッシュC01の
いずれのブロックに格納されている有効データにも繋が
りの無い場合には、有効フラグ記録部が無効表示とな
っていて有効データの無い空きのキャッシュブロックに
そのデータを格納する。この場合、そのキャッシュブロ
ックの先頭からライトされる場合と、キャッシュブロッ
クの中間にライトされる場合とがあるが、図2(a)は
中間にライトされる場合を示している。この図2(a)
に示すようにデータがライトされた場合、キャッシュデ
ィレクトリの内容は、有効フラグ記録部が有効表示、
UN記録部が磁気ディスク装置D1 〜Dm のうち新キ
ャッシュライトデータの格納先となる装置の番号表示、
ディスクアドレス記録部がそのキャッシュブロックの
先頭アドレスに新たに対応するディスク上のアドレス、
LRU値記録部は“0”表示に更新される。また、図
2(b)に示すように、オフセット記録部には5セク
タ分のオフセットを示すセクタ数“5”が記録され、デ
ータ長記録部には3セクタ分のデータ長を示すセクタ
数“3”が記録されることとなる。
【0028】コントローラCは、このキャッシュブロッ
クの有効データを磁気ディスクに格納する場合、このよ
うなディレクトリを参照することで、ディスクアドレス
記録部の表示アドレスからオフセット記録部の表示
セクタ数分だけずれたアドレスにおいてライトを開始
し、データ長記録部に示すセクタ数分だけそのライト
動作を継続させる。よって、余分なライト動作はなく、
しかも当該ライトデータ前後のデータを壊すこともな
い。
【0029】[2] 次に、コントローラCは、受信した
キャッシュライト要求のデータが、ライトキャッシュC
01の中の一つのブロックに格納されている有効データ
に繋がる場合には、そのキャッシュブロックに新キャッ
シュライトデータを格納する。この場合、そのキャッシ
ュブロックに既に格納されている有効データの前に繋が
る場合と後ろに繋がる場合とがあるが、図3(a)は後
者のケースを示している。この場合、キャッシュディレ
クトリの有効フラグ記録部、UN記録部、ディスク
アドレス記録部、LRU値記録部、オフセット記録
部については更新されずそのままの状態が保持され
る。データ長記録部には4セクタ分のデータ長を示す
セクタ数“4”から7セクタ分のデータ長を示すセクタ
数“7”に更新される。なお、既キャッシュライトデー
タの前部に新キャッシュライトデータが繋がる場合に
は、オフセット量が短縮されるため、オフセット記録部
についても更新される。
【0030】コントローラCが、このキャッシュブロッ
クの有効データを磁気ディスクに格納する場合の動作は
[1] と同様である。
【0031】[3] さらに、コントローラCが受信した
キャッシュライト要求のデータがライトキャッシュC0
1の中の一つのブロックに格納されている有効データと
非連続ではあるが同一キャッシュブロック内に格納され
るべきものである場合、ディスクリード動作が伴う。
【0032】例えば、図4(a)に示すようなケースの
場合、当該キャッシュブロックのダミーを用意し、これ
に既キャッシュライトデータと新キャッシュライトデー
タとを保持しておく。そして、ディスクをアクセスし、
当該キャッシュブロックにディスク上のデータを埋め込
み、その後、ダミー上のデータをそのキャッシュブロッ
クに重ね書きする。これにより、図4(a)に示すよう
な状態が得られる。
【0033】この場合には、キャッシュディレクトリの
内容は、有効フラグ記録部、UN記録部、ディスク
アドレス記録部、LRU値記録部については現状の
ままであるが、図4(b)に示すように、オフセット記
録部にはオフセットの無い状態であるセクタ数“0”
が記録され、データ長記録部にはキャッシュブロック
全長を示すセクタ数“16”が記録される。
【0034】コントローラCが、このキャッシュブロッ
クの有効データを磁気ディスクに格納する場合の動作は
[1] と同様である。
【0035】
【発明の効果】以上説明したように本発明によれば、オ
フセット情報とデータ長情報とを参照することにより、
ディスク上のキャッシュブロックサイズに満たない書込
みエリアを特定することができるため、そのキャッシュ
ブロック全体を有効データで満たす必要はなく、したが
って、キャッシュブロックサイズに満たないデータのキ
ャッシュライト要求であってもディスクへのリードアク
セスを伴わずにキャッシュライト処理を実行することが
できることとなる。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図。
【図2】図1に示す装置の動作例を図解する説明図。
【図3】図1に示す装置の動作例を図解する説明図。
【図4】図1に示す装置の動作例を図解する説明図。
【図5】従来装置の一キャッシュブロックに対応するデ
ィレクトリの構成を示す説明図。
【図6】図5に示す装置の動作例を図解する説明図。
【符号の説明】
C ディスクコントローラ C01 ライトキャッシュ C02 ライトキャッシュディレクトリ D1 〜Dm 磁気ディスク装置 有効フラグ記録部 UN(ユニット番号)記録部 ディスクアドレス記録部 LRU値(キャッシュ常駐優先度)記録部 オフセット記録部 データ長記録部

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】第1の記憶装置と、 該第1の記憶装置に対するキャッシュメモリとして機能
    し、そのデータ貯蔵領域が複数のキャッシュブロックに
    区分けされた第2の記憶装置と、 前記複数のキャッシュブロック各々に対設され、対応キ
    ャッシュブロックの先頭アドレスに相当する前記第1の
    記憶装置上のアドレスから該対応キャッシュブロックの
    有効データが書込まれるべき前記第1の記憶装置上のア
    ドレスまでの距離を示すオフセット情報と、前記対応キ
    ャッシュブロックに書込まれている有効データの長さを
    示すデータ長情報とを具備するキャッシュディレクトリ
    と、 該キャッシュディレクトリの情報を参照して前記複数の
    キャッシュブロック各々の有効データを前記第1の記憶
    装置における所定の場所に格納する書込み制御手段とを
    備えている情報処理装置。
JP4120595A 1992-05-13 1992-05-13 情報処理装置 Pending JPH05314008A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4120595A JPH05314008A (ja) 1992-05-13 1992-05-13 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4120595A JPH05314008A (ja) 1992-05-13 1992-05-13 情報処理装置

Publications (1)

Publication Number Publication Date
JPH05314008A true JPH05314008A (ja) 1993-11-26

Family

ID=14790153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4120595A Pending JPH05314008A (ja) 1992-05-13 1992-05-13 情報処理装置

Country Status (1)

Country Link
JP (1) JPH05314008A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013524379A (ja) * 2010-04-21 2013-06-17 エンパイア テクノロジー ディベロップメント エルエルシー 記憶効率の高いセクタ化されたキャッシュ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013524379A (ja) * 2010-04-21 2013-06-17 エンパイア テクノロジー ディベロップメント エルエルシー 記憶効率の高いセクタ化されたキャッシュ
US8874849B2 (en) 2010-04-21 2014-10-28 Empire Technology Development Llc Sectored cache with a tag structure capable of tracking sectors of data stored for a particular cache way

Similar Documents

Publication Publication Date Title
JP3898782B2 (ja) 情報記録再生装置
US6842801B2 (en) System and method of implementing a buffer memory and hard disk drive write controller
JP2571342B2 (ja) データをキャッシュ・メモリに貯蔵するシステム及び方法
US6880043B1 (en) Range-based cache control system and method
JP2618149B2 (ja) キャッシュ内のデータ記憶スペースを管理する方法及びキャッシュ内でページ置換を行う装置
JP3183993B2 (ja) ディスク制御システム
US5983319A (en) Information recording and reproduction apparatus and a method of data caching including read-ahead capability
JPH06342395A (ja) 構造化データ記憶方法及び媒体
EP0165382A2 (en) Data processing system including a data storage unit and its method of operation
JP3568110B2 (ja) キャッシュメモリの制御方法、コンピュータシステム、ハードディスクドライブ装置およびハードディスク制御装置
US6092145A (en) Disk drive system using sector buffer for storing non-duplicate data in said sector buffer
US5860088A (en) Method for extraction of a variable length record from fixed length sectors on a disk drive
US5617380A (en) Apparatus and method for drive management for multi-pass storage devices
US6532513B1 (en) Information recording and reproduction apparatus
JPH05314008A (ja) 情報処理装置
JP3969809B2 (ja) 記憶装置におけるデータバッファの管理方法
US7421536B2 (en) Access control method, disk control unit and storage apparatus
JP3335919B2 (ja) ディスクキャッシュ制御装置
EP0080878A2 (en) Cache memory and method of control for use with magnetic disks
JPH05314006A (ja) 情報処理装置
JPH064225A (ja) 予備セクタを先読みするディスク制御装置
JPH0612328A (ja) キャッシュメモリのデータ蓄積方法
JP2001209577A (ja) 情報記録再生装置
JPH073661B2 (ja) 情報処理システム及びその制御方法
JPH05108485A (ja) デイスクキヤツシユ制御装置における不良/交替トラツク制御方式