JP3080758B2 - 磁気ディスク装置 - Google Patents

磁気ディスク装置

Info

Publication number
JP3080758B2
JP3080758B2 JP04071965A JP7196592A JP3080758B2 JP 3080758 B2 JP3080758 B2 JP 3080758B2 JP 04071965 A JP04071965 A JP 04071965A JP 7196592 A JP7196592 A JP 7196592A JP 3080758 B2 JP3080758 B2 JP 3080758B2
Authority
JP
Japan
Prior art keywords
read
data
buffer
host device
amount
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 - Lifetime
Application number
JP04071965A
Other languages
English (en)
Other versions
JPH05274090A (ja
Inventor
郁子 飯田
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 JP04071965A priority Critical patent/JP3080758B2/ja
Publication of JPH05274090A publication Critical patent/JPH05274090A/ja
Application granted granted Critical
Publication of JP3080758B2 publication Critical patent/JP3080758B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、キャッシュ機能を備え
た磁気ディスク装置に関する。
【0002】
【従来の技術】近年、磁気ディスク装置(HDD)で
は、ディスクコントローラ(HDC)を内蔵することが
一般的になって来ている。このディスクコントローラ
は、ディスクからのデータの読出し/書込み処理とホス
トデータの転送処理の両処理を行い、ホスト装置とのイ
ンタフェースを行うものである。
【0003】ところで、このディスクコントローラに
は、通常、リード性能を向上させるために「リードアヘ
ッドキャッシュ」と呼ばれるキャッシュ機能を備えてい
る。このキャッシュ機能は、ホスト装置が要求している
セクタより先のセクタデータをバッファ(キャッシュメ
モリ)に読込んでおき(これを先読みと呼ぶ)、次回の
データリード時に、ホスト要求データがバッファ内にあ
れば(これをヒットと呼ぶ)、ディスクから読まずにバ
ッファより取出してホスト装置に転送することにより、
ディスクの回転待ち時間を短縮し、スループットの向上
を図る処理である。従来、このようなキャッシュ機能に
おいて、前回のリード要求時での先読みの最中に、次の
リード要求があると、次のような処理を行っていた。 (1)その要求データの全てがバッファに読込まれるま
で、ホスト装置に対するデータ転送を開始しなかった。
【0004】(2)また、先読みで読込む量は前回読出
されたセクタの次のセクタからバッファのサイズ分であ
り、次の要求データがこれを越えるような場合に、一
旦、バッファのサイズ分までを読込み、それをホスト装
置へ転送した後、残りのデータをバッファに読込み、そ
して転送を行っていた。
【0005】図3を参照して具体的に説明すると、従来
は例えば64セクタの容量を有するバッファにおいて、
前回読出されたセクタの次のセクタからバッファのサイ
ズ分を読込んでいる最中にホスト装置からリード要求が
あると、その要求データの一部が現在バッファに読込ま
れていても、全てがバッファに読込まれるを待ってデー
タ転送を行っていた(同図(a)参照)。また、要求デ
ータが先読み量を越えるような場合、まず、バッファの
サイズ分までを読込み、そのバッファ内にある要求デー
タの一部をホスト装置に転送した後、その要求データの
残り分をバッファに読込み、再びホスト装置に転送して
いた(同図(b)参照)。ファームウェアの構成は次の
ようになる。
【0006】ファームウェアはホスト・バッファ間のデ
ータ転送とバッファ・ディスク間のデータ転送の制御を
別々に行っている。図4に示すように、ホスト装置のリ
ード要求を受取ったときに、前回のリード要求の先読み
中であれば、ホスト・バッファ間のデータ転送を行うた
めにバッファへの読込み状況を監視する。そして、ホス
ト装置の要求データの全てが読込まれた場合またはバッ
ファが一杯になった場合に、ホスト装置へのデータ転送
を行っている(ステップB1〜B6)。バッファが一杯
になったときには(ステップB3)、一旦バッファ内の
要求データをホスト装置に転送後(ステップB4)、残
り分をバッファに読込むように準備し、ディスクから読
込み(ステップB5)、ホスト装置に転送する(ステッ
プB6)。
【0007】
【発明が解決しようとする課題】上記したような従来の
キャッシュ機能では、要求データの全てがバッファに読
込まれるでは、ホスト装置にデータが転送されないた
め、シーケンシャルリードのパフォーマンス低下を招い
ていた。また、リード要求量が大きい場合には、先読み
分と残りのデータを読込む間に目的IDを待つ必要があ
り、その分、1回転以上のロスが生じ、これがパフォー
マンス低下に大きく影響する等の問題があった。
【0008】本発明は上記のような点に鑑みなされたも
ので、データ転送の行われない無駄な時間をなくした効
率的なキャッシュ動作を実現できる磁気ディスク装置を
提供することを目的とする。
【0009】
【課題を解決するための手段】本発明に係る磁気ディス
ク装置は、ホスト装置からのリード要求に応じてディス
クから読出されたデータを先読みデータとして記憶する
バッファを備え、このバッファに先読みデータを読込ん
でいる最中にリード要求があったとき、その要求データ
の量が現在読込み中の先読みデータの量を越える場合
に、要求データの量に応じて上記バッファへの読込み量
を更新し、また、上記要求データとマッチする先読みデ
ータが上記バッファに所定単位以上読込まれている場合
に、当該バッファに既にあるものから所定単位で上記ホ
スト装置に順次転送するようにしたものである。
【0010】
【作用】上記の構成によれば、ホスト装置の要求量に応
じてバッファへの読込み量が更新され、また、その中で
現在バッファにあるものからホスト装置に転送される。
したがって、要求量が先読み量より多くても、バッファ
への読込み動作を中断することなく、ホスト装置にデー
タ転送でき、また、その要求データの全てがバッファに
読込まれるのを待たずしてホスト装置にデータ転送でき
る。
【0011】
【実施例】以下、図面を参照して本発明の一実施例を説
明する。
【0012】図1はディスクコントローラ(HDC)を
内蔵した磁気ディスク装置(HDD)の構成を示すブロ
ック図である。図1はおいて、ディスク11は記録媒体
であり、図示せぬスピンドルモータの駆動により回転す
る。磁気ヘッド12はディスク11に対するデータのリ
ード/ライトを行うものであり、図示せぬボイスコイル
モータの駆動によりディスク11の半径方向に移動す
る。ヘッドアンブ13は、磁気ヘッド12の読出し信号
を増幅する。リード/ライト回路14は、ディスクコン
トローラ(以下、HDCと称す)15の制御の下でデー
タのリード/ライト処理を行う。
【0013】HDC15は、ホスト装置とのデータの送
受信を行うものであり、ここでは装置(HDD)内に内
蔵され、キャッシュ処理を行う。バッファ16は、ホス
ト装置からのリード要求に応じてディスク11から読出
されたデータを先読みデータとして記憶するメモリであ
る。次に、同実施例の動作を説明する。
【0014】HDC15は、ホスト装置からリード要求
を受取ると、ディスク11上のデータを一旦バッファ1
6に読込み、このバッファ16からホスト装置にデータ
を転送する。この場合、ホスト装置のリード要求は、少
ないときで1セクタ分であるのに対し、バッファ16は
例えば64セクタまたは128セクタ等のサイズを有す
る。また、ホスト装置からのリード要求はシーケンシャ
ルに送られる場合が多い。そこで、HDC15は、ホス
ト装置からの要求セクタをリードした後、その次のセク
タからのデータを先読みデータとしてバッファ16のサ
イズ分読込んでおき、次のリード要求がこの先読みデー
タとマッチすれば、バッファ16からデータを読出して
ホスト装置に転送するリードアヘッドキャッシュを行
う。
【0015】ここで、同実施例では、このようなキャッ
シュ動作において、先読み中(バッファ16に先読みデ
ータを読込んでいる最中)に、ホスト装置からリード要
求を受けた場合に、その要求データの全てがバッファ1
6に読込まれていなくとも、現在バッファ16にあるも
のから1セクタ単位で順次ホスト装置に転送し始めるこ
とを特徴とする。また、要求量が現在の先読み量(バッ
ファ16に現在読込み中の先読みデータの量)を越える
場合に、バッファ16に読込むべきデータ量を更新する
ことを特徴とする。図2を参照して同実施例のキャッシ
ュ動作を説明する。
【0016】先読み中にホスト装置からリード要求があ
ると、HDC15はその要求データが前回のリード要求
時での先読みデータとマッチするか否かを調べる(ステ
ップA1)。要求データと先読みデータがマッチした場
合、HDC15はその要求データの量がバッファ16に
現在読込み中の先読みデータを越えるか否かを調べ(ス
テップA2)、越える場合にはバッファ16への読込み
量を要求データの全てがバッファ16に読込まれるまで
更新する(ステップA3)。
【0017】また、HDC15はバッファ16のデータ
読込み状態を監視し、バッファ16に要求データとマッ
チする先読みデータが1セクタ以上読込まれていれば
(ステップA4)、その要求データの全てがバッファ1
6に読込まれていなくとも、現在バッファ16にあるも
のから1セクタ単位で順次ホスト装置に転送する(ステ
ップA5)。
【0018】このように、ホスト装置の要求量に応じて
バッファ16への読込み量が更新され、また、その中で
現在バッファ16にあるものからホスト装置に転送され
る。したがって、要求量が先読み量より多くても、バッ
ファ16への読込み動作を中断することなく、ホスト装
置にデータ転送でき、また、その要求データの全てがバ
ッファ16に読込まれるのを待たずしてホスト装置にデ
ータ転送できる。
【0019】
【発明の効果】以上のように本発明によれば、ディスク
・バッファ間、バッファ・ディスク間ともに、データ転
送の行われない時間をなくすことによって、シーケンシ
ャルリードのパフォーマンスを大きく向上させることが
できる。具体的には、先読み中にリードコマンドを受取
るタイミングでシーケンシャルリードを繰り返した場
合、トータルとしての要求量を1コマンドでリードした
ときと同じパフォーマンスが得られる。
【図面の簡単な説明】
【図1】本発明の一実施例に係る磁気ディスク装置の構
成を示すブロック図。
【図2】同実施例のキャッシュ動作を説明するためのフ
ローチャート。
【図3】従来のキャッシュ動作を説明するための図。
【図4】従来のキャッシュ動作を説明するためのフロー
チャート。
【符号の説明】
11…ディスク、12…磁気ヘッド、13…ヘッドアン
ブ、14…リード/ライト回路、15…HDC(ディス
クコントローラ)、16…バッファ。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 3/06 302 G11B 20/10

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 ホスト装置からのリード要求に応じてデ
    ィスクから読出されたデータを先読みデータとして記憶
    するバッファと、このバッファに先読みデータを読込んでいる最中に、上
    記ホスト装置からリード要求があったとき、その要求デ
    ータの量が現在読込み中の先読みデータの量を越える場
    合に、上記要求データの量に応じて上記バッファへの読
    込み量を更新する更新手段と、 上記要求データとマッチする先読みデータが上記バッフ
    ァに所定単位以上読込まれている場合に、当該バッファ
    に既にあるものから所定単位で上記ホスト装置に順次転
    送する転送手段と を具備したことを特徴とする磁気ディ
    スク装置。
JP04071965A 1992-03-30 1992-03-30 磁気ディスク装置 Expired - Lifetime JP3080758B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04071965A JP3080758B2 (ja) 1992-03-30 1992-03-30 磁気ディスク装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04071965A JP3080758B2 (ja) 1992-03-30 1992-03-30 磁気ディスク装置

Publications (2)

Publication Number Publication Date
JPH05274090A JPH05274090A (ja) 1993-10-22
JP3080758B2 true JP3080758B2 (ja) 2000-08-28

Family

ID=13475698

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04071965A Expired - Lifetime JP3080758B2 (ja) 1992-03-30 1992-03-30 磁気ディスク装置

Country Status (1)

Country Link
JP (1) JP3080758B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3586887B2 (ja) * 1994-06-10 2004-11-10 松下電器産業株式会社 情報記録再生装置およびデータキャッシュ方法
JP3898968B2 (ja) 2002-03-15 2007-03-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報記録方法および情報記録システム

Also Published As

Publication number Publication date
JPH05274090A (ja) 1993-10-22

Similar Documents

Publication Publication Date Title
JP4925230B2 (ja) 記憶装置、記憶制御装置及び制御方法
US6523086B1 (en) Method for improving performance of read cache of magnetic disk drive
JPH11110139A (ja) データ読み取り方法及びデータ読み取り装置
JP3078204B2 (ja) 磁気ディスク装置及び磁気ディスク装置におけるバッファ管理方法
US6219750B1 (en) Disk drive having control mechanism to reduce or eliminate redundant write operations and the method thereof
US20040015878A1 (en) Reordering controller, reordering method and storage apparatus
JPH087662B2 (ja) データ転送制御方法
US20060129716A1 (en) Data storage device and buffer control method thereof
JPH10269027A (ja) ディスク装置及び同装置におけるバッファ管理制御方法
JP4858926B2 (ja) 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置
JP2001014109A (ja) 記憶装置
JP3080758B2 (ja) 磁気ディスク装置
US6957300B2 (en) Reducing delay of command completion due to overlap condition
JPH10171713A (ja) ディスク記憶装置及び同装置に適用するキャッシュ制御方法
JP3847888B2 (ja) ディスク装置及び同装置における欠陥による再配置データの高速ホスト転送方法
US6041392A (en) Disk drive device and method for controlling the same
JPH05274089A (ja) データ記録再生装置のアクセス制御装置
JP2002342038A (ja) コマンドの実行順序を制御するディスク装置
JP2000222137A (ja) ディスク記憶装置及び同装置におけるバッファ制御方法
JP2914834B2 (ja) 磁気ディスク装置
JP3579395B2 (ja) ディスク記憶装置及びアクセス方法
JPH0588979A (ja) 磁気デイスク装置
JP2002288927A (ja) ディスク再生装置のデータ再生処理方法
JP2704138B2 (ja) 磁気ディスクキャッシュの制御方法
JP2003173294A (ja) ディスク装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090623

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090623

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100623

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100623

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110623

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120623

Year of fee payment: 12

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120623

Year of fee payment: 12