JPS6331808B2 - - Google Patents

Info

Publication number
JPS6331808B2
JPS6331808B2 JP54065448A JP6544879A JPS6331808B2 JP S6331808 B2 JPS6331808 B2 JP S6331808B2 JP 54065448 A JP54065448 A JP 54065448A JP 6544879 A JP6544879 A JP 6544879A JP S6331808 B2 JPS6331808 B2 JP S6331808B2
Authority
JP
Japan
Prior art keywords
data
disk
cache memory
cache
read
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
Application number
JP54065448A
Other languages
English (en)
Other versions
JPS55157056A (en
Inventor
Takehisa Tokunaga
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 Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP6544879A priority Critical patent/JPS55157056A/ja
Publication of JPS55157056A publication Critical patent/JPS55157056A/ja
Publication of JPS6331808B2 publication Critical patent/JPS6331808B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明はデイスクキヤツシユ制御方式に関す
る。中央処理装置の処理速度は近年著るしく速く
なつているが、デイスク装置は機械的動作を伴う
ためアクセス時間はあまり改善されておらず、デ
イスクの入出力時間が情報処理システムの性能を
押える一つの要因となつている。そこで、高速で
小容量のキヤツシユメモリを設けて使用頻度の高
いデイスクデータをキヤツシユメモリに格納し、
平均的なデイスクアクセス時間を短縮するデイス
クキヤツシユ装置が提案されている。デイスクキ
ヤツシユ装置の性能を高めるにはアクセスされる
データがキヤツシユメモリ上に見出される確率
(キヤツシユヒツト率)を高くする必要がある。
デイスクキヤツシユの装置において通常キヤツ
シユメモリをブロツクと呼ばれる固定長の領域に
区分けして管理し、デイスクからの読込みの単位
とするが、従来のデイスクキヤツシユ装置では
CPUよりアクセスされたデータがキヤツシユメ
モリに存在しないときにはこのデータを含むブロ
ツクのみデイスクから読み出してキヤツシユメモ
リに記憶する方式がとられている。このような方
式では、アクセスされるデータ長がキヤツシユブ
ロツク長に近いと、アクセスされたデータと同じ
データがキヤツシユメモリに与えられるだけなの
で、順編成フアイルのように同一データが1回だ
けしかアクセスされないような場合、キヤツシユ
ヒツト率は極めて低くなるという欠点がある。
これを解決する一つの方法ととしては、キヤツ
シユメモリのブロツク長を大きくすることである
が、ブロツク長を大きくするとキヤツシユメモリ
のブロツク数が減少するため、デイスクデータの
限られたデータブロツクしかキヤツシユメモリに
格納されなくなり、ランダムフアイルなど順編成
フアイル以外のフアイルに対するヒツト率が低下
するという欠点がある。
本発明の目的は上述の欠点を除去したデイスク
キヤツシユ制御方式を提供することにある。
本発明の制御方式は、デイスク装置に格納され
たデータの写しを記憶するキヤツシユメモリを有
するデイスクキヤツシユの制御方式において、 中央処理装置からの読出し要求に応答して前記
デイスク装置に格納されたデータの写しが前記キ
ヤツシユメモリに存在するか否かを判別する判別
手段と、 この判別手段で前記キヤツシユメモリに前記デ
ータの写しが存在しないと判別されたときに前記
デイスク装置の前記データ格納アドレスに続くア
ドレスに格納された前記デイスク装置のデータを
前記デイスク装置から前記キヤツシユメモリに読
み込む手段とを備えたことを特徴とする。
本発明の他の制御方式は、デイスク装置に格納
されたデータの写しを記憶するキヤツシユメモリ
を有するデイスクキヤツシユの制御方式におい
て、 中央処理装置からの読出し要求に応答して前記
デイスク装置に格納されたデータの写しが前記キ
ヤツシユメモリに存在するか否かを判別する判別
手段と、 この判別手段で前記キヤツシユメモリに前記デ
ータの写しが存在しないと判別されたときに前記
デイスク装置の前記データ格納アドレスに続くア
ドレスに格納された前記デイスク装置のデータを
前記デイスク装置から前記キヤツシユメモリに読
み込む手段と、 前記中央処理装置から読出し要求された前記デ
ータの長さを認識する認識手段と、 前記デイスク装置からキヤツシユメモリに読み
込むデータの長さを前記認識手段で認識したデー
タ長に応じて変化させる手段とを備えたことを特
徴とする。
次に本発明について図面を参照して詳細に説明
する。
本発明のデイスクキヤツシユ装置を含む第1図
に示す情報処理システムは、チヤネルを含む中央
処理装置などの上位装置(以下CPU)3000、
デイスクキヤツシユ装置1000およびデイスク
制御装置を含むデイスク装置2000から構成さ
れている。なお、デイスクキヤツシユ装置100
0はチヤネルやデイスク制御装置と必ずしも独立
している必要はなく、これらの装置に組込むこと
も可能である。
デイスクキヤツシユ装置1000には、デイスク
キヤツシユ制御装置400およびキヤツシユメモ
リ500を有しており、キヤツシユメモリ500
にはデイスクデータの一部が記憶されている。ま
た、デイスクキヤツシユ制御装置400はCPU
3000から出力されるデイスクの読出し/書込
指令を解読し、アクセスされたデータがキヤツシ
ユメモリ500に存在するか否かを調べ、もしア
クセスされたデータがキヤツシユメモリ500上
に存在すれば制御装置400はキヤツシユ500
に必要なデータとアクセスする。もし、アクセス
されたデータがキヤツシユメモリ500上に存在
しない場合にはそのデータを含むブロツクをデイ
スク装置2000から読出し、アクセスされたデ
ータをCPU3000に与える(読出しの場合)
と共にこのブロツクをキヤツシユメモリ500に
記憶する。このとき、キヤツシユメモリ500に
空きブロツクがない場合には、参照頻度の低い適
当なブロツクが選択される。
以下の説明では説明を簡単にするために、デイ
スク上のデータはセクタと呼ばれる固定長レコー
ドの形式で記録されており、デイスクのデータは
デイスク装置番号と装置内セクタ番号でアドレス
されるものとする。また、キヤツシユメモリの1
ブロツクの大きさはセクタの整数倍と仮定する。
第2図に示す本発明の第一の実施例は、信号線
410を介してCPU3000から出力されるデ
イスクの入出力指令を解読しデイスクキヤツシユ
各部を制御するとともに信号線420を介してデ
イスク装置に対する制御指令を出す制御装置45
0、それぞれCPUからアクセスされたデイスク
データの開始アドレスと長さを格納するレジスタ
100および200、これらのレジスタ100お
よび200の内容に従い、データがキヤツシユに
ヒツトしなかつたとき、キヤツシユメモリに読込
むべきブロツク数を算定するブロツク数算定回路
300、キヤツシユメモリから掃出すブロツクを
選択する掃出ブロツク選択回路600、データブ
ロツクを記憶する部分とそのブロツクのデイスク
上のブロツクアドレスを格納する部分が対になつ
た配列より成つており、バス560および550
を介してCPUと、バス550および570を介
してデイスク装置とデータ入出力を行うキヤツシ
ユメモリ500、レジスタ100および200の
内容とキヤツシユメモリ500のアドレス部を入
力として、アクセスされたデータがキヤツシユメ
モリにあるか否かを判定するヒツト判定回路70
0およびアクセスされるデータが順次アクセスさ
れることを示すモード設定用レジスタ401から
構成されている。順次アクセスモードか、それ以
外のモードかはデイスクに対する入出力指令やチ
ヤネルプログラムの中または別途異なる制御指令
によりCPUから与えられ、これらの情報に基き
制御装置450は入出力指令毎にレジスタ401
にモードがセツトされ、このモードに応じた制御
が行なわれる。
次に、第2図を参照して、本発明の一実施例の
動作をを詳細に説明する。
制御装置450はCPUから与えられた情報に
基き、読出しデータのデイスク上の開始アドレス
をレジスタ100に、データ長をレジスタ200
にそれぞれ格納する。データ長はCPUから出力
する読出し指令の中やチヤネルプログラムの中な
どに含まれる。
ヒツト判定回路700はレジスタ100および
200の内容より、読出しデータのブロツクアド
レスを算定し、キヤツシユメモリ500のアドレ
ス部の内容と比較して、読出すべきブロツクがキ
ヤツシユメモリ500に存在するか否かを調べ
る。もし、キヤツシユメモリ500に読出しブロ
ツクが存在すればキヤツシユメモリ500のデー
タ部から必要なデータを読み出し、バス550お
よび560を介してCPUに送出する。
もし、読出しブロツクがキヤツシユメモリ50
0上に存在しないときにはモードレジスタ401
の内容により以下のように制御方式が異なる。ま
ず、レジスタ401が非順次アクセスモードであ
ることを示しているとすると、制御装置400は
掃出しブロツク選択回路600に従い、キヤツシ
ユメモリ500のデータブロツクを選択し、読出
しデータのブロツクアドレスをこの選択されたブ
ロツクのアドレス部にセツトし、デイスクからこ
のアドレスのデータブロツクを読出して選択され
たブロツクのデータ部にバス570および550
を介して書込む。また、データブロツクの中から
CPUにより要求されているデータをバス560
を介してCPUに送出する。
この場合、デイススクから読み出され、キヤツ
シユメモリ500に書込まれるデータブロツクは
2つ以上のこともあるが、重要なことは、これら
のブロツクはCPUから読出されるデータが含ま
れたブロツクのみであるということである。
次に本発明の特徴である順次アクセスモードが
レジスタ401にセツトされている場合を説明す
る。この場合には、読出指令で要求されたデータ
と、これに続く連続アドレスのデータ(拡張デー
タと名付ける)を含むブロツクをデイスクから読
み出し、キヤツシユメモリ500に記憶すべく制
御が行なわれる。拡張データは順次アクセスモー
ドのキヤツシユヒツト率を充分高くできるように
(アクセスデータ長に応じてその長さを変えるよ
うにしておくもので、例えば、読出指令で要求さ
れたデータの長さをlとしたとき、拡張データの
長さを(n―1)×とすれば平均的なキヤツシ
ユのヒツト率を約n−1/nに高めることができる。
ブロツク数算定回路300はレジスタ200お
よび100の内容に従い上記拡張データのアドレ
スを求めて読出指令で要求されたデータと拡張デ
ータを入れるに必要なブロツク数を算定し、掃き
出しブロツク選択回路600を介して、これらの
ブロツクをキヤツシユメモリ500上に割り当て
る。次に割当てられたブロツクのアドレス部に読
出し指令で要求されたデータと拡張データのブロ
ツクアドレスをセツトし、デイスクからこれらの
データを読出して割当てられたキヤツシユブロツ
クに書込み、読出し指令で要求されているデータ
をバス560を介してCPUに送る。以上により、
CPUから出力されたデイスクデータの読出指令
の動作は終了する。
次に第2図のブロツク数算定回路300の一実
施例を第3図および第4図を参照し説明する。
第3図は要求されたデータ長lの(n―1)倍
の拡張データを含むブロツク数を求める回路の動
作を説明する図で、レジスタ200内のデータ長
lをn倍し、これにレジスタ100内のブロツク
内セクタアドレスa0を足して拡張データの上限ア
ドレスA=a0+nlを求める。
次にAからブロツク長Bを引き、その結果が正
である範囲で減算を繰返せばその繰返し回数mが
求めるブロツク数である。ただし、mの初期値=
0とする。第4図はn=4にした場合の読出し要
求データ、拡張データおよびブロツクの関係を定
常状態に対して示す図である。この図からもわか
るように、読出要求データ長はブロツク長の1/2
になつている。この例では、拡張データを含む場
合の読込みブロツク数mは2となり、もし順次ア
クセスモードの制御を行つていなければヒツト率
は50%であるが、本発明の制御を行うことにより
ヒツト率は75%に高めることができる。
第5図に示す本発明の第2の実施例は、制御装
置450、カウンタ250、アドレスレジスタ1
50、ブロツク数算定回路350、掃出ブロツク
選択回路600、ヒツト判定回路700およびキ
ヤツシユメモリ500から構成されている。
第5図は読出し指令で読み出されるデータの長
さが予め分つていない場合の構成である。カウン
タ250はデイスクから読み出されたデータ長を
計数するカウンタであり、アドレスレジスタ15
0はデイスクから読み出されるデータのデイスク
アドレスが格納されるアドレスレジスタであり、
ブロツク算定回路350はカウンタ250および
レジスタ150の内容に基き、拡張データを格納
するのに必要なブロツク数を算定する回路であ
る。
次に本発明の第2の実施例の動作について説明
する。
順次アクセスモードで読出指令が出力された場
合、制御装置450はカウンタ250をリセツト
してレジスタ150に読出しデータの開始アドレ
スをセツトする。カウンタ250は、キヤツシユ
メモリ500またはデイスクからデータの読出し
動作が開始されるとCPUに転送されるデータの
長さを計数して一回の読出し指令で要求されたデ
ータの転送量の累積値を記憶するようになつてい
る。また、アドレスレジスタ150はこのデータ
転送の間、転送されるデータのセクタアドレスの
現在値を時々刻々記憶するようになつており、
CPUへのデータ転送が終つた時点ではこのデー
タの最後のセクタアドレスが入つている。
もし、読出し指令で要求されたデータがキヤツ
シユメモリ500に存在しないと、制御装置45
0はこのデータをデイスクから読出して直接バス
560を介してCPUに転送する。転送し終つた
時点ではレジスタ250および150内に、この
読出し指令で転送されたデータの長さおよび最後
のセクタアドレスが格納されている。
次にブロツク数算定回路350はこれらのレジ
スタ250および150の内容に基き、拡張デー
タのアドレスを求めて拡張データを格納するのに
必要なブロツク数を算定し、掃出しブロツク選択
回路600で選択されたキヤツシユメモリ500
のブロツクに拡張データをデイスクから読込む。
これらの動作および他の動作はキヤツシユメモリ
500に読み込まれるデータが拡張データを含む
ブロツクのみであるという点を除けば第2図の一
実施例と同様である。
第6図に示す本発明の第3の実施例は主メモリ
10、入出力処理を専用に行うプログラム制御の
入出力処理装置40、デイスクデータを記憶する
キヤツシユメモリ50、チヤネル60および7
0、デイスク制御装置25、デイスク装置20お
よびキヤツシユメモリ50と主メモリ10との間
でデータを転送するデータ転送装置80から構成
されている。
第6図のシステムではデイスク等の入出力指令
はすべてCPU30から入出力処理装置40に与
えられ、入出力処理装置40が入出力チヤネル6
0を介してデイスク装置等を制御する。この動作
に必要なチヤネルプログラムは処理装置40によ
り主メモリ10内の一領域11に用意される。
また、このチヤネルプログラムは入出力処理装
置40の専用メモリに用意してもよい。チヤネル
プログラムを用意するために必要な各種の情報は
主メモリ10を介してCPU30から40に与え
られるので入出力処理装置40はデイスク装置2
0に対するアクセスデータの種類、データ長など
の情報を容易に知ることができ、これらの情報を
デイスクキヤツシユ装置の制御に有効に利用する
ことができる。
キヤツシユメモリ50は主メモリと同様ランダ
ムアクセス可能なメモリ素子で構成されており、
チヤネル60および70からデータの書込み読出
しができるようになつている。通常、このキヤツ
シユメモリはCPUの主メモリより速度の遅い安
価なものでよい。キヤツシユメモリ50は前記実
施例と同様ブロツク単位に管理されており、各ブ
ロツクに対応して、そのブロツクに記憶されてい
るデイスクデータのブロツクアドレスが主メモリ
上13のデイレクトリ部に記憶されている。主メ
モリ13には、デイレクトリの他に順次アクセス
モードを示すモード情報、前記実施例で述べた拡
張データの大きさを示す情報などデイスクキヤツ
シユ制御に必要な情報が入つている。また、これ
らの情報は入出力処理装置40の専用メモリに入
れることもできる。
CPU30からデイスク読出指令が出力される
と入出力処理装置40は読出しデータがキヤツシ
ユメモリ50に存在するか否かを調べ、もしキヤ
ツシユメモリ上にある場合には、入出力処理装置
40はキヤツシユメモリ内のそのデータアドレス
と主メモリ10内のデータ格納アドレス、データ
転送長などを指定したチヤネルプログラム12を
主メモリ10に用意し、チヤネル70を介してデ
ータ転送装置80を起動するデータ転送装置80
はチヤネルプログラム12に従い、キヤツシユメ
モリ50から主メモリ10へ、必要なデータを転
送する。
もし、読出しデータがキヤツシユメモリ50に
ないとき、順次アクセスモードの指定があれば、
入出力処理装置40は前記実施例で説明したよう
に要求されたデータに引続く拡張データのデイス
クアドレスを計算し、このデータを入れるのに必
要なブロツク数を求め、キヤツシユメモリ50の
中から掃出しブロツクを選択する。次に、選択さ
れたブロツクの50内のアドレス、読出しデータと
拡張データのデイスク上のアドレス、転送データ
長等を指定したチヤネルプログラムを主メモリ1
0内の一領域11に用意し、チヤネル60を介し
てデイスク20からのデータ読出し動作を起動す
る。次に、必要なチヤネルプログラムを12に用
意して今読込んだデイスクデータのうち、読出指
令で要求されているデータをキヤツシユメモリ5
0から主メモリ10のデータ格納域へデータ転送
装置80を介して転送する。
なお、読出指令で要求されているデータをまず
デイスク装置20から主メモリ10へ転送し、そ
のあとでデイスク装置20からキヤツシユメモリ
50にブロツク転送を行うことも可能である。
本実施例では、デイスクキヤツシユの動作を制
御する入出力処理装置40はプログラム制御方式
であり、かつCPUの主メモリをアクセスできる
ので、以上説明したようにデイスクに対する読出
し指令のモード、データ長などの制御情報を容易
に知ることができる他、設定すべき拡張データの
内容や掃出しブロツク選択アルゴリズムの内容を
種々に選ぶことができる。
本発明には、順次アクセスされるデータがキヤ
ツシユに存在しないとき、デイスク装置からキヤ
ツシユメモリに読込む単位をアクセスされたデー
タ長に応じて増すことにより、アクセスされたデ
ータがキヤツシユメモリで見出す割合を高められ
ることができるという効果がある。
【図面の簡単な説明】
第1図はデイスクキヤツシユ装置に情報処理シ
ステム内の位置を示す図、第2図は本発明の第1
の実施例を示す図、第3図、第4図は第2図に示
した拡張データブロツク算定回路の動作を示す
図、第5図は本発明の第2の実施例を示す図およ
び第6図は本発明の第3の実施例を示す図であ
る。 第1図、第2図、第4図および第6図におい
て、3000……CPU、1000……デイスク
キヤツシユ装置、400……デイスクキヤツシユ
制御装置、500……キヤツシユメモリ、200
0……デイスク装置、450……制御装置、20
0……データ長レジスタ、100……アドレスレ
ジスタ、250……カウンタ、150……アドレ
スレジスタ、300……ブロツク数算定回路、3
50……ブロツク数算定回路、600……掃出ブ
ロツク選択回路、700……ヒツト判定回路、1
0……主メモリ、20……デイスク装置、30…
…CPU、40……入出力処理装置、50……キ
ヤツシユメモリ、60……チヤネル、70……チ
ヤネル、80……データ転送装置、25……デイ
スク制御装置。

Claims (1)

  1. 【特許請求の範囲】 1 デイスク装置に格納されたデータの写しを記
    憶するキヤツシユメモリを有するデイスクキヤツ
    シユの制御方式において、 中央処理装置からの読出し要求に応答して前記
    デイスク装置に格納されたデータの写しが前記キ
    ヤツシユメモリに存在するか否かを判別する判別
    手段と、 この判別手段で前記キヤツシユメモリに前記デ
    ータの写しが存在しないと判別され前記読出し要
    求が少なくとも順次アクセスモードを指定してい
    るときに少なくとも前記デイスク装置の前記デー
    タ格納アドレスに続くアドレスに格納された前記
    デイスク装置のデータを前記デイスク装置から前
    記キヤツシユメモリに続み込む手段と、 前記中央処理装置から読出し要求された前記デ
    ータの長さを認識する認識手段と、 前記デイスク装置からキヤツシユメモリに読み
    込むデータの長さを前記認識手段で認識したデー
    タ長に応じて変化させる手段とを備えたことを特
    徴とするデイスクキヤツシユ制御方式。
JP6544879A 1979-05-25 1979-05-25 Disc cash control system Granted JPS55157056A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6544879A JPS55157056A (en) 1979-05-25 1979-05-25 Disc cash control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6544879A JPS55157056A (en) 1979-05-25 1979-05-25 Disc cash control system

Publications (2)

Publication Number Publication Date
JPS55157056A JPS55157056A (en) 1980-12-06
JPS6331808B2 true JPS6331808B2 (ja) 1988-06-27

Family

ID=13287422

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6544879A Granted JPS55157056A (en) 1979-05-25 1979-05-25 Disc cash control system

Country Status (1)

Country Link
JP (1) JPS55157056A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4490782A (en) * 1981-06-05 1984-12-25 International Business Machines Corporation I/O Storage controller cache system with prefetch determined by requested record's position within data block
US4489378A (en) * 1981-06-05 1984-12-18 International Business Machines Corporation Automatic adjustment of the quantity of prefetch data in a disk cache operation
JPS62137786A (ja) * 1985-12-09 1987-06-20 Matsushita Electric Ind Co Ltd 記憶装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4952935A (ja) * 1972-07-03 1974-05-23
JPS5133608A (ja) * 1974-09-17 1976-03-22 Hitachi Ltd

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4952935A (ja) * 1972-07-03 1974-05-23
JPS5133608A (ja) * 1974-09-17 1976-03-22 Hitachi Ltd

Also Published As

Publication number Publication date
JPS55157056A (en) 1980-12-06

Similar Documents

Publication Publication Date Title
US5461721A (en) System for transferring data between I/O devices and main or expanded storage under dynamic control of independent indirect address words (IDAWs)
US5875454A (en) Compressed data cache storage system
JP3898782B2 (ja) 情報記録再生装置
US20120117297A1 (en) Storage tiering with minimal use of dram memory for header overhead
JPH07334310A (ja) ディスク装置及び同装置における読み出しデータのバッファ記憶制御方法
JPS6331808B2 (ja)
JPH0115903B2 (ja)
JPS6046447B2 (ja) トラツクバツフアメモリ方式
JPS6331805B2 (ja)
JPH08314639A (ja) 情報記録再生装置
JP3111912B2 (ja) ディスクキャッシュ制御方式
EP0108651A2 (en) Dynamic addressing for variable track length cache memory
JP3707890B2 (ja) 外部記憶装置のデータ出力方法
JPS62257553A (ja) デイスク制御装置
JPH07182232A (ja) 情報処理装置
JP2976909B2 (ja) キャッシュ・データの掃き出し制御方法
US6154792A (en) Method and computer program product for paging control using a reference structure including a reference bitmap
JPH09244932A (ja) ディスクアレイ装置
US5678022A (en) Storage control system with auxiliary storage and optimized process data length and gap to reduce track and cylinder switching
JP3825605B2 (ja) データ処理装置
JP3407428B2 (ja) ディスクキャッシュ装置
JPS634356A (ja) デイスクキヤツシユ順次モ−ド共用処理方式
JP2973474B2 (ja) 光磁気ディスク装置
JPH0883213A (ja) キャッシュメモリを含む記憶装置
JPS62271029A (ja) デイスクキヤツシユ制御方式