JPH06290000A - ディスクコントローラ - Google Patents

ディスクコントローラ

Info

Publication number
JPH06290000A
JPH06290000A JP5076025A JP7602593A JPH06290000A JP H06290000 A JPH06290000 A JP H06290000A JP 5076025 A JP5076025 A JP 5076025A JP 7602593 A JP7602593 A JP 7602593A JP H06290000 A JPH06290000 A JP H06290000A
Authority
JP
Japan
Prior art keywords
disk
data
address
cache
cache memory
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
JP5076025A
Other languages
English (en)
Inventor
Hironori Mine
宏則 美根
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji 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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP5076025A priority Critical patent/JPH06290000A/ja
Publication of JPH06290000A publication Critical patent/JPH06290000A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】上位計算機の磁気ディスク装置13に対するリ
ード/ライトを高速化するためにこの両者の間に転送デ
ータを一時的に格納する高速のキャッシュメモリとして
のメモリバッファ26を持つ磁気ディスクコントローラ
12を設けるが、上位計算機が一括リードしようとする
データがメモリバッファ26内のブロックにバラバラの
アドレスで格納され、転送の効率が下がることを防ぐ。 【構成】アドレス変換部27には上位計算機とディスク
コントローラ間で複数ブロックのデータ転送に用いるキ
ャッシュブロックのディスクアドレス(論理アドレス)
を記憶する論理アドレスレジスタをアドレスの昇順に配
列し、このレジスタとこのレジスタに対応するブロック
の物理アドレスを記憶する物理アドレスレジスタとを対
比した変換テーブルを設け、CPU23がこのテーブル
を見て複数ブロックデータを高速に上位計算機に転送す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、キャッシュメモリを内
蔵し、磁気ディスク装置,光磁気ディスク装置等へのリ
ード/ライトに使用されるディスクコントローラに関す
る。なお以下各図において同一の符号は同一もしくは相
当部分を示す。
【0002】
【従来の技術】図6は磁気ディスクコントローラが用い
られるシステムの構成例を示す。同図において11は上
位計算機、13は磁気ディスク装置であり、ディスクコ
ントローラ12はその間に設けられ、上位計算機11の
磁気ディスク装置13に対するリード/ライトに使用さ
れる。
【0003】図5は従来の磁気ディスクコントローラの
構成を示す。即ちこのディスクコントローラは上位計算
機11に対するインタフェースとしてのホストインタフ
ェース22,CPU23,メモリ25,磁気ディスク装
置13に対するインタフェースとしてのディスクインタ
フェース25,及びキャッシュメモリ(ディスクキャッ
シュ又は単にキャッシュという)としてのメモリバッフ
ァ26からなり、これら22〜26の各機能部は内部バ
ス20によって結合されている。
【0004】CPU23は上位計算機11からのリード
/ライト要求により磁気ディスク装置13を制御する。
CPU23が動作するためのプログラムはメモリ24に
書き込まれている。上位計算機11からのリード/ライ
ト要求、上位計算機11から磁気ディスク装置13へ書
き込むデータおよび磁気ディスク装置13から上位計算
機11へ読み出されるデータはホストインタフェース2
2を介して磁気ディスクコントローラ12に入出力され
る。
【0005】上位計算機11からのリード/ライト要求
を受け取ったCPU23はディスクインタフェース25
を介して磁気ディスク装置13に対して該当するトラッ
ク上へヘッドを移動するように指令を出し、そのトラッ
ク上の目的とするセクタに対してリード/ライト動作を
行う。なおこの詳細動作は本出願人の先願になる特願平
4−243845号に示されている。
【0006】バッファメモリ26(ディスクキャッシ
ュ)は、アクセス時間の長いディスク13と上位計算機
11の主記憶間に設けられた高速の一時記憶用メモリ
で、ディスク13に対する上位計算機11のアクセス時
間を短縮するために設けられている。図4はメモリバッ
ファ26の内部構成を示す。即ちこのキャッシュメモリ
はディスクキャッシュディレクトリ31と夫々データ転
送単位である(番号(1)〜(n)が付された)n個の
ブロック32に分割されている。この各ブロックの夫々
の大きさは通常はディスクの複数セクタ分となってい
る。
【0007】ディスクキャッシュディレクトリ31はn
個のブロック32を管理するための領域であり、このデ
ィスクキャッシュディレクトリ31内の管理データは番
号(1)〜(n)のキャッシュブロック32毎のFLA
G33とディスクアドレス34により構成されている。
ここでFLAG33内には対応するキャッシュブロック
の使用状況を示す数値が格納される。数値が小さいほど
昔に参照されたことを示し、0ならば空いていることを
表す。ディスクアドレス34には対応する同番号のキャ
ッシュブロック32内に書き込まれているデータのディ
スク上のアドレス(つまり先頭セクタのアドレス)が格
納されている。これらの管理情報の管理はCPU23に
より実行される。
【0008】図5のディスクコントローラ12の動作を
述べると、このディスクコントローラ内のCPU23が
上位計算機11からのデータの読み書きの指令を受け取
ると、該当するデータがディスクキャッシュ内にあるか
どうかをディスクキャッシュディレクトリ31内を検査
することにより判断する。上位計算機11からのリード
の場合、キャッシュ内に該当するデータブロック32が
あればCPU23はそのデータをキャッシュ26より読
み出し計算機へ送る。要求されたデータブロックがない
場合には、データ装置13よりデータを一旦キャッシュ
バッファ26へ転送し、次にそのデータを計算機11へ
転送する。
【0009】上位計算機11からのライトの場合、書き
込む空きのデータブロック32がキャッシュ26内にあ
れば、そのデータをキャッシュ26とディスク装置13
の両方へ書き込み、キャッシュ26上にないときは通常
はディスク装置13のみに書き込む。但し最近はキャッ
シュ上に空きのデータブロックが無い場合にも、次に述
べるLRU方式でキャッシュ内にデータブロックを獲得
し、データをこの獲得したブロック及びディスク装置に
書き込むことも行われるようになった。
【0010】
【発明が解決しようとする課題】ところで通常はリード
時のブロック置換のアルゴリズムとしてはLRU(Le
ast Recently Used)方式であり、一
番昔に参照されたブロックの内容が新しいものと置き換
えられる。しかし上位計算機からのリード要求が連続し
た複数ブロックに対するものであり、キャッシュ内に空
きがなくキャッシュ上のデータと置き換える必要がある
場合、単純にLRU方式を実施するとディスクからリー
ドしたデータをキャッシュ内にバラバラ(連続しない複
数の領域に読み込む必要がある。また、次のリード要求
時にキャッシュ内にデータが存在するかどうかを判定す
る場合にも、要求された複数ブロックに対してブロック
1つずつ判定することが必要であり、一括して判定する
ことが困難であるという問題があった。キャッシュデー
タの取扱いを容易とするためにコントローラ内CPUが
キャッシュデータの並び替えを行うこともできるが、そ
の処理に時間がかかってしまう。そこで本発明はキャッ
シュ内でブロック単位にバラバラに書き込まれたキャッ
シュデータに対しても効率よくデータのリード/ライト
およびキャッシュ管理を行うことができるディスクコン
トローラを提供することを課題とする。
【0011】
【課題を解決するための手段】前記の課題を解決するた
めに、請求項1のディスクコントローラは、ディスクか
ら転送されるデータを一時的に保持し、またはディスク
へ転送するデータを一時的に保持するキャッシュメモリ
(メモリバッファ26など)と、このキャッシュメモリ
とディスク装置(13などの)間のデータ転送制御を行
うディスクインタフェース(25など)と、キャッシュ
メモリと上位コンピュータ(11などの)間のデータ転
送制御を行うホストインタフェース(22など)と、キ
ャッシュメモリとディスクインタフェースおよびホスト
インタフェースとの間にキャッシュメモリのアドレスを
このメモリが保持するデータのディスクアドレスがその
大きさの順に並ぶように、データ転送前に変換するアド
レス変換手段(アドレス変換部27など)とを備えたも
のとする。
【0012】また請求項2のディスクコントローラで
は、請求項1に記載のディスクコントローラにおいて、
前記アドレス変換手段は、キャッシュメモリの(物理ア
ドレスレジスタ42などに格納された)データ転送単位
ブロック別のアドレスと、(論理アドレスレジスタ41
などに格納された)このブロック内のデータのディスク
アドレスとを対比したテーブルであって、ディスクアド
レスをそのアドレスの大きさの順に配列してなるテーブ
ルを備えたものであるようにする。
【0013】また請求項3のディスクコントローラは、
ディスクから転送されるデータを一時的に保持し、また
はディスクへ転送するデータを一時的に保持するキャッ
シュメモリ(メモリバッファ26など)と、このキャッ
シュメモリとディスク装置間のデータ転送制御を行うデ
ィスクインタフェース(25など)と、キャッシュメモ
リと上位コンピュータ(11などの)間のデータ転送制
御を行うホストインタフェース(22など)と、キャッ
シュメモリ内のデータをそのディスクアドレスがその大
きさの順に並ぶように、データ転送前に移動させること
を専用に行う手段(バッファデータ転送制御部51な
ど)とを備えたものとする。
【0014】
【作用】キャッシュ内にデータがバラバラに格納されて
いても、外部から見たアドレスを連続とするようなアド
レス変換手段、またはデータの高速の並び替えを専用に
行う手段を設けることにより、効率的に扱えるようにす
る。このようにすることによりキャッシュ内データを外
部から見れば、連続したディスクデータがキャッシュ内
に連続して格納されているために個々の小さなブロック
毎に扱う必要がなく、1つの括まったデータとして扱う
ことができる。
【0015】
【実施例】図1は請求項1に関わる発明の実施例(便宜
上第1の実施例ともいう)としての磁気ディスクコント
ローラの構成を示す。同図において27は本発明により
追加されたアドレス変換部であり、CPU23,ディス
クインタフェース25,ホストインタフェース22から
見たメモリバッファ26のアドレスを変換する。
【0016】図2はアドレス変換部27の詳細構成を示
す。メモリの実際の物理アドレスのレジスタ42と外部
からアクセスするための論理アドレスのレジスタ41が
夫々対応してメモリバッファ26のブロック領域32内
のブロック数と同じだけ設けられている。ここで各個別
の論理アドレスレジスタ41には対応するブロック32
に書き込まれたデータのディスクアドレスが書き込ま
れ、かつこのディスクアドレスがこの例では上から下に
向かって昇順となるように配列されている。また個別の
物理アドレスレジスタ42にはこのレジスタ42に対応
する(つまり当該レジスタ42の右側に接する)論理ア
ドレスレジスタ41の示すディスクアドレスのデータの
格納されているブロック32のメモリバッファ26上の
アドレス(つまりそのブロックの先頭のアドレス)が格
納されいてる。
【0017】次に本発明による磁気ディスクコントロー
ラ12の動作を説明する。CPU23はホストインタフ
ェース22を介して上位計算機11からディスクデータ
のリード要求を受け取ると、そのデータがメモリバッフ
ァ26上にあるかどうかを判定するためにメモリバッフ
ァ26内のディスクキャッシュディレクトリ31内を検
査する。メモリバッファ26内にデータがあれば、その
データをホストインタフェース22を介して上位計算機
11へ転送する。メモリバッファ26内にに上位計算機
11の要求するデータがない場合には、メモリバッファ
26内にディスク装置13からそのデータを読み込んだ
後に上位計算機11へ転送する。メモリバッファ26内
にディスク装置13からのデータを読み込む際に、空き
があればその空きブロックを使用するが、空きブロック
がない場合、LRU(LeastRecently U
sed)方式により使用中のブロックを開放し、新しい
データのために使用する。
【0018】この場合、メモリバッファ26へ読み込む
べきデータが複数ブロックに渡ると、使用中のメモリバ
ッファ内ブロックを複数個獲得することになる。この複
数のブロックは連続したアドレスとはならず、バラバラ
に飛んだ領域に獲得されることが多い。このアドレスの
分割された獲得領域に対して、従来であると、CPU2
3はブロック毎に介在し、ディスクインタフェース25
とメモリバッファ26の間、及びホストインタフェース
22とメモリバッファ26間のデータ転送を行ってい
た。本発明の構成であると、CPU23はディスクイン
タフェース25にメモリバッファ26へデータ転送を開
始させる前に、新たに獲得した複数のメモリバッファ内
のブロックに転送されるデータのディスクアドレスでア
ドレス変換部27の該当する論理アドレスレジスタ41
を更新すると共に、このアドレス変換部27内の論理ア
ドレスレジスタ41の示すディスクアドレスが上から下
に昇順となるようにこのアドレス変換部27のレジスタ
配列を並べ変える。次に、この連続した論理アドレスの
メモリバッファ領域に対してディスク装置13からのデ
ータ転送を開始するようにディスクインタフェース25
へ指示を出す。ディスクインタフェース25のデータ転
送が正常に完了したならば、ホストインタフェース22
に対して上位計算機11へ読み込んだデータの転送を開
始するよう指示を出す。これによりデータ転送が連続し
た論理アドレスのバッファアドレスに対して実行される
ために、CPU23はブロック毎にデータ転送に関与す
ることなく一括して処理することができる。
【0019】なお上位計算機11のディスクデータのラ
イト要求によって、ホストインタフェース22の側から
メモリバッファ26内の空きブロックまたはLRU方式
によって新たな獲得されたブロックにデータ転送が行わ
れる場合にも、このデータ転送前にアドレス変換部27
の論理アドレスレジスタ41の内容(ディスクアドレ
ス)が上から下に昇順となるようにこの変換部27内の
レジスタ配列の並べ変えが行われる。
【0020】図3は請求項2に関わる発明の実施例とし
ての磁気ディスクコントローラの構成を示す。図3の図
1との相違はメモリバッファ26内のブロックデータの
転送前の並び替えを実際に行うためにバッファデータ転
送制御部51がアドレス変換部27の代わりに付加され
ていることである。図3においてはCPU23はメモリ
バッファ26内にバラバラのブロックを獲得した後、こ
の領域を、その格納データのディスクアドレスが連続し
た領域とするためにバッファデータ転送部51に対し
て、ディスクの入れ換えアドレスを指示し、データの入
れ換え転送動作を実行させる。その前後の動作について
は第1の実施例と同じである。
【0021】
【発明の効果】本発明によれば、キャッシュ内のブロッ
クが要求された連続データ長に対してバラバラのアドレ
スで獲得された場合にも、短時間に連続領域としてアク
セスができるようにしたので、効率よくデータの転送お
よびキャッシュ管理を行うことができる。
【図面の簡単な説明】
【図1】請求項1に関わる発明の実施例としての磁気デ
ィスクコントローラの構成図
【図2】図1のアドレス変換部の構成図
【図3】請求項2に関わる発明の実施例としての磁気デ
ィスクコントローラの構成図
【図4】メモリバッファの構成図
【図5】従来の磁気ディスクコントローラの構成図
【図6】ディスクコントローラの使用されるシステムの
構成図
【符号の説明】
11 上位計算機 12 磁気ディスクコントローラ 13 磁気ディスク装置 22 ホストインタフェース 23 CPU 24 メモリ 25 ディスクインタフェース 26 メモリバッファ 27 アドレス変換部 31 ディスクキャッシュディレクトリ 32 ブロック 33 FLAG 34 ディスクアドレス 41 論理アドレスレジスタ 42 物理アドレスレジスタ 51 バッファデータ転送制御部

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】ディスクから転送されるデータを一時的に
    保持し、またはディスクへ転送するデータを一時的に保
    持するキャッシュメモリと、 このキャッシュメモリとディスク装置間のデータ転送制
    御を行うディスクインタフェースと、 キャッシュメモリと上位コンピュータ間のデータ転送制
    御を行うホストインタフェースと、 キャッシュメモリとディスクインタフェースおよびホス
    トインタフェースとの間にキャッシュメモリのアドレス
    をこのメモリが保持するデータのディスクアドレスがそ
    の大きさの順に並ぶように、データ転送前に変換するア
    ドレス変換手段とを備えたことを特徴とするディスクコ
    ントローラ。
  2. 【請求項2】請求項1に記載のディスクコントローラに
    おいて、前記アドレス変換手段は、キャッシュメモリの
    データ転送単位ブロック別のアドレスと、このブロック
    内のデータのディスクアドレスとを対比したテーブルで
    あって、ディスクアドレスをそのアドレスの大きさの順
    に配列してなるテーブルを備えたものであることを特徴
    とするディスクコントローラ。
  3. 【請求項3】ディスクから転送されるデータを一時的に
    保持し、またはディスクへ転送するデータを一時的に保
    持するキャッシュメモリと、 このキャッシュメモリとディスク装置間のデータ転送制
    御を行うディスクインタフェースと、 キャッシュメモリと上位コンピュータ間のデータ転送制
    御を行うホストインタフェースと、 キャッシュメモリ内のデータをそのディスクアドレスが
    その大きさの順に並ぶように、データ転送前に移動させ
    ることを専用に行う手段とを備えたことを特徴とするデ
    ィスクコントローラ。
JP5076025A 1993-04-02 1993-04-02 ディスクコントローラ Pending JPH06290000A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5076025A JPH06290000A (ja) 1993-04-02 1993-04-02 ディスクコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5076025A JPH06290000A (ja) 1993-04-02 1993-04-02 ディスクコントローラ

Publications (1)

Publication Number Publication Date
JPH06290000A true JPH06290000A (ja) 1994-10-18

Family

ID=13593291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5076025A Pending JPH06290000A (ja) 1993-04-02 1993-04-02 ディスクコントローラ

Country Status (1)

Country Link
JP (1) JPH06290000A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176505A (ja) * 2009-01-30 2010-08-12 Sony Corp インターフェース装置、演算処理装置、インターフェース生成装置、および回路生成装置
US8638520B2 (en) 2010-11-22 2014-01-28 Kabusiki Kaisha Toshiba Magnetic recording apparatus and data reading method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176505A (ja) * 2009-01-30 2010-08-12 Sony Corp インターフェース装置、演算処理装置、インターフェース生成装置、および回路生成装置
US8638520B2 (en) 2010-11-22 2014-01-28 Kabusiki Kaisha Toshiba Magnetic recording apparatus and data reading method

Similar Documents

Publication Publication Date Title
US4476526A (en) Cache buffered memory subsystem
US4811280A (en) Dual mode disk controller
EP1631911B1 (en) Method and device for transferring data between a main memory and a storage device
JPH06161846A (ja) ファイル管理装置
JP2523715B2 (ja) 磁気ディスク装置
JPH06290000A (ja) ディスクコントローラ
JPH08314639A (ja) 情報記録再生装置
JPH11327802A (ja) ディスクシステム
JPH0628261A (ja) データ転送方法及び装置
JP2636485B2 (ja) キャッシュ記憶装置
WO1994022134A1 (en) Buffer control for data transfer within hard disk during idle periods
JP2994917B2 (ja) 記憶システム
JPS6331808B2 (ja)
JPH02165220A (ja) ディスクアクセス制御方式
JP2567903B2 (ja) データ転送方法
JPH064225A (ja) 予備セクタを先読みするディスク制御装置
JPH0736806A (ja) Dma方式
JPH02132515A (ja) 先読み制御方式
JPH02239348A (ja) ディスクキャッシュメモリアクセス方式
JPH05334012A (ja) 大容量化ディスク制御装置
JP2001209577A (ja) 情報記録再生装置
JPH09237224A (ja) ディスクアレイ装置
JP2004240520A (ja) ノンキャッシュ領域内高速メモリアクセス方法
JPH04273548A (ja) ディスク制御装置
JPH05342152A (ja) バッファ制御方式