JP2003196155A - ディスク装置及び同装置のキャッシュ制御方法 - Google Patents
ディスク装置及び同装置のキャッシュ制御方法Info
- Publication number
- JP2003196155A JP2003196155A JP2001395745A JP2001395745A JP2003196155A JP 2003196155 A JP2003196155 A JP 2003196155A JP 2001395745 A JP2001395745 A JP 2001395745A JP 2001395745 A JP2001395745 A JP 2001395745A JP 2003196155 A JP2003196155 A JP 2003196155A
- Authority
- JP
- Japan
- Prior art keywords
- skip
- address
- read
- request
- host device
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
(57)【要約】
【課題】ホストからのスキップ読出し要求があっても、
予想されるデータのみを先読みしてキャッシュバッファ
に蓄えることで、ホスト装置からのリード要求に対する
キャッシュバッファでのヒット効率を向上させるディス
ク装置及び同装置のキャッシュ制御方法を提供すること
にある。 【解決手段】本発明のディスク装置のキャッシュ制御方
法は、アドレス保存手段に保存されている前記アドレス
情報からホスト装置からの読出し要求がスキップ要求で
あるか否かを判定し、スキップ要求であると判定された
場合、スキップ要求により次に読出すアドレスであるス
キップアドレスを算出して、このスキップアドレスによ
り指定された領域の情報を選択して、スキップキャッシ
ュを実施する。
予想されるデータのみを先読みしてキャッシュバッファ
に蓄えることで、ホスト装置からのリード要求に対する
キャッシュバッファでのヒット効率を向上させるディス
ク装置及び同装置のキャッシュ制御方法を提供すること
にある。 【解決手段】本発明のディスク装置のキャッシュ制御方
法は、アドレス保存手段に保存されている前記アドレス
情報からホスト装置からの読出し要求がスキップ要求で
あるか否かを判定し、スキップ要求であると判定された
場合、スキップ要求により次に読出すアドレスであるス
キップアドレスを算出して、このスキップアドレスによ
り指定された領域の情報を選択して、スキップキャッシ
ュを実施する。
Description
【0001】
【発明の属する技術分野】本発明はディスク装置におけ
るリードキャッシュ方式に関するものである。
るリードキャッシュ方式に関するものである。
【0002】
【従来の技術】近年、小型磁気ディスク装置は、パーソ
ナルコンピュータなどのホスト装置に搭載され、このホ
スト装置とデータのやり取りが行われる。
ナルコンピュータなどのホスト装置に搭載され、このホ
スト装置とデータのやり取りが行われる。
【0003】ホスト装置から磁気ディスク装置に記憶さ
れているデータの読み出し要求があると、磁気ディスク
装置では、このホスト装置からの要求データをディスク
より読み出しホスト装置へ転送すると同時に、ホスト装
置から要求された読み出しデータに続くデータをディス
ク内の所定の領域からキャッシュバッファと呼ばれる揮
発性のメモリに読み出しておく先読み処理動作を実行す
るものがある。そして、後にホスト装置からこの先読み
しておいた所定の領域に対する読み出し要求があった場
合、都度ディスクをアクセスして読み出しを実行するこ
となく、キャッシュバッファに予め先読み処理動作によ
り蓄えたデータを直接ホスト装置に転送する。これによ
り、ホスト装置から連続したデータのアクセスが発生し
た場合、都度ディスクからデータを読み出した場合に比
較して、ホスト装置に対し高速にデータを返送すること
が可能となっていた。
れているデータの読み出し要求があると、磁気ディスク
装置では、このホスト装置からの要求データをディスク
より読み出しホスト装置へ転送すると同時に、ホスト装
置から要求された読み出しデータに続くデータをディス
ク内の所定の領域からキャッシュバッファと呼ばれる揮
発性のメモリに読み出しておく先読み処理動作を実行す
るものがある。そして、後にホスト装置からこの先読み
しておいた所定の領域に対する読み出し要求があった場
合、都度ディスクをアクセスして読み出しを実行するこ
となく、キャッシュバッファに予め先読み処理動作によ
り蓄えたデータを直接ホスト装置に転送する。これによ
り、ホスト装置から連続したデータのアクセスが発生し
た場合、都度ディスクからデータを読み出した場合に比
較して、ホスト装置に対し高速にデータを返送すること
が可能となっていた。
【0004】しかし、ホスト装置からの読み出し要求
が、連続した範囲ではなく、いくつかのセクタを断続的
に読み出す、いわゆるスキップリード要求であった場
合、上述の先読み処理動作によりキャッシュバッファに
ホスト装置から要求されるデータ以外のデータを蓄積し
まっており、ホスト装置からの読み出し要求に対するキ
ャッシュバッファ内のデータのヒット効率を落とすとい
う問題が生じてきた。
が、連続した範囲ではなく、いくつかのセクタを断続的
に読み出す、いわゆるスキップリード要求であった場
合、上述の先読み処理動作によりキャッシュバッファに
ホスト装置から要求されるデータ以外のデータを蓄積し
まっており、ホスト装置からの読み出し要求に対するキ
ャッシュバッファ内のデータのヒット効率を落とすとい
う問題が生じてきた。
【0005】このようにキャッシュバッファ内のデータ
のヒット効率を落とさない方法として、特許第3149
856号が提案されている。
のヒット効率を落とさない方法として、特許第3149
856号が提案されている。
【0006】特許第3149856号には、いわゆるシ
ーケンシャルI/O(磁気ディスクの連続した記録空間
に順次アクセスするI/OパターンをシーケンシャルI
/Oと呼び、I/Oはインプット、アウトプットの略
で、特にリードアクセスを意味するものである)の途中
が少し欠けるアクセスパターンであるニアシーケンシャ
ルI/Oに対するスループットパフォーマンスの向上を
提案している。
ーケンシャルI/O(磁気ディスクの連続した記録空間
に順次アクセスするI/OパターンをシーケンシャルI
/Oと呼び、I/Oはインプット、アウトプットの略
で、特にリードアクセスを意味するものである)の途中
が少し欠けるアクセスパターンであるニアシーケンシャ
ルI/Oに対するスループットパフォーマンスの向上を
提案している。
【0007】この提案によれば、システム構成によって
は、ホスト装置が連続した大きなデータを必要とする場
合であっても、インデックスなどの手法を用いて全デー
タにアクセスせずに済むようにしている場合がある。こ
のような場合、ニアシーケンシャルI/Oが生じるが、
従来のディスク制御装置では、かかるニアシーケンシャ
ルI/Oに対しランダムI/Oと同じ処理、即ち都度磁
気ディスクドライブをアクセスする処理を行っていた。
そこで、ニアシーケンシャルI/Oにおいてもシーケン
シャルI/Oと同様の先読みを行い、予めまとめてキャ
ッシュメモリにデータを格納しておくことにより、ニア
シーケンシャルI/Oにおけるスループットパフォーマ
ンスの向上を図っている。
は、ホスト装置が連続した大きなデータを必要とする場
合であっても、インデックスなどの手法を用いて全デー
タにアクセスせずに済むようにしている場合がある。こ
のような場合、ニアシーケンシャルI/Oが生じるが、
従来のディスク制御装置では、かかるニアシーケンシャ
ルI/Oに対しランダムI/Oと同じ処理、即ち都度磁
気ディスクドライブをアクセスする処理を行っていた。
そこで、ニアシーケンシャルI/Oにおいてもシーケン
シャルI/Oと同様の先読みを行い、予めまとめてキャ
ッシュメモリにデータを格納しておくことにより、ニア
シーケンシャルI/Oにおけるスループットパフォーマ
ンスの向上を図っている。
【0008】しかし、上述の方法では、次にホスト装置
が読み出し要求するアドレスを予想することはできず、
スキップリード要求に対する高速なデータ転送処理を実
現することは難しかった。
が読み出し要求するアドレスを予想することはできず、
スキップリード要求に対する高速なデータ転送処理を実
現することは難しかった。
【0009】
【発明が解決しようとする課題】上述したように、ホス
ト装置からの読み出し要求に対して、磁気ディスク装置
は要求データの読み出しを実施すると同時に、それに続
く領域をキャッシュバッファに蓄えておくこと(これを
先読みキャッシュ処理と称する)で、以後ホスト装置か
らキャッシュバッファに蓄えられたデータの読み出しが
要求された場合、ディスクからの読み出しを行わずにキ
ャッシュバッファから直接、ホスト装置から読み出し要
求があったデータを転送することにより、データの転送
処理を高速化することができ、装置のパフォーマンスを
向上させることを図ってきたが、ホスト装置からの読み
出し要求範囲が、連続的ではなく、ある一定アドレス間
隔で飛び飛びの連続的な読み出し要求(これをスキップ
要求と称する)範囲であった場合、上述の先読みキャッ
シュ処理ではキャッシュバッファに、ホスト装置から読
み出しされていない不要なデータまで先読みされてしま
うため、ホスト装置からのリード要求に対するキャッシ
ュバッファでのヒット効率を落とすという問題が生じて
きた。
ト装置からの読み出し要求に対して、磁気ディスク装置
は要求データの読み出しを実施すると同時に、それに続
く領域をキャッシュバッファに蓄えておくこと(これを
先読みキャッシュ処理と称する)で、以後ホスト装置か
らキャッシュバッファに蓄えられたデータの読み出しが
要求された場合、ディスクからの読み出しを行わずにキ
ャッシュバッファから直接、ホスト装置から読み出し要
求があったデータを転送することにより、データの転送
処理を高速化することができ、装置のパフォーマンスを
向上させることを図ってきたが、ホスト装置からの読み
出し要求範囲が、連続的ではなく、ある一定アドレス間
隔で飛び飛びの連続的な読み出し要求(これをスキップ
要求と称する)範囲であった場合、上述の先読みキャッ
シュ処理ではキャッシュバッファに、ホスト装置から読
み出しされていない不要なデータまで先読みされてしま
うため、ホスト装置からのリード要求に対するキャッシ
ュバッファでのヒット効率を落とすという問題が生じて
きた。
【0010】そこで本発明の目的は、スキップ要求の場
合においても、ホスト装置から読み出し要求されると予
想されるデータのみを先読みしてキャッシュバッファに
蓄えることで、ホスト装置からのリード要求に対するキ
ャッシュバッファでのヒット効率(パフォーマンス)を
向上させるディスク装置及び同装置のキャッシュ制御方
法を提供することにある。
合においても、ホスト装置から読み出し要求されると予
想されるデータのみを先読みしてキャッシュバッファに
蓄えることで、ホスト装置からのリード要求に対するキ
ャッシュバッファでのヒット効率(パフォーマンス)を
向上させるディスク装置及び同装置のキャッシュ制御方
法を提供することにある。
【0011】
【課題を解決するための手段】上記目的を達成するた
め、本発明にかかるディスク装置は、ホスト装置から読
出し要求のあったアドレス情報を保存するアドレス保存
手段と、前記アドレス保存手段に保存されている前記ア
ドレス情報から、前記ホスト装置からの読出し要求がス
キップ要求であるか否かを判定するスキップ要求判定手
段と、前記スキップ要求判定手段により、前記ホスト装
置からの読出し要求がスキップ要求であると判定された
場合、前記スキップ要求により次に読出すアドレスであ
るスキップアドレスを算出するスキップアドレス算出手
段と、前記スキップアドレス算出手段により算出された
前記スキップアドレスにより指定された領域の情報を選
択して読出すスキップ読出し手段と、前記スキップ読出
し手段により読出された情報を一時的に保存するスキッ
プキャッシュ手段とを有することを特徴とするものであ
る。
め、本発明にかかるディスク装置は、ホスト装置から読
出し要求のあったアドレス情報を保存するアドレス保存
手段と、前記アドレス保存手段に保存されている前記ア
ドレス情報から、前記ホスト装置からの読出し要求がス
キップ要求であるか否かを判定するスキップ要求判定手
段と、前記スキップ要求判定手段により、前記ホスト装
置からの読出し要求がスキップ要求であると判定された
場合、前記スキップ要求により次に読出すアドレスであ
るスキップアドレスを算出するスキップアドレス算出手
段と、前記スキップアドレス算出手段により算出された
前記スキップアドレスにより指定された領域の情報を選
択して読出すスキップ読出し手段と、前記スキップ読出
し手段により読出された情報を一時的に保存するスキッ
プキャッシュ手段とを有することを特徴とするものであ
る。
【0012】上記のように構成されたディスク装置によ
れば、ホスト装置からの読み出し要求にヒットする可能
性の高いデータのみキャッシュバッファに蓄えておくと
が可能となるため、ホスト装置からのリード要求に対す
るキャッシュバッファでのヒット効率(パフォーマン
ス)を向上させるディスク装置を提供することが可能と
なる。
れば、ホスト装置からの読み出し要求にヒットする可能
性の高いデータのみキャッシュバッファに蓄えておくと
が可能となるため、ホスト装置からのリード要求に対す
るキャッシュバッファでのヒット効率(パフォーマン
ス)を向上させるディスク装置を提供することが可能と
なる。
【0013】また、本発明にかかるディスク装置のキャ
ッシュ制御方法は、ホスト装置よりアドレスbの読み出
し要求があった場合、RAMに保存していた以前のホス
ト装置からの読み出し要求アドレスaと比較し、今回の
アドレスbと以前のアドレスaとの差を計算しxとして
保持する。そして、次にホスト装置から読み出し要求さ
れる領域は、アドレスbからxはなれたアドレスcの領
域である確率が高いと判定する。この判定に基づき、ホ
スト装置から読み出だし要求があったb領域をディスク
から読み出し、ホスト装置に転送した後、c両行きのデ
ィスク読み出しを実施し、キャッシュバッファに保持す
る。また、c両行きの読み出し後、更にxはなれたd領
域を読み出し、キャッシュバッファに保持してゆくこと
を特徴とするものである。
ッシュ制御方法は、ホスト装置よりアドレスbの読み出
し要求があった場合、RAMに保存していた以前のホス
ト装置からの読み出し要求アドレスaと比較し、今回の
アドレスbと以前のアドレスaとの差を計算しxとして
保持する。そして、次にホスト装置から読み出し要求さ
れる領域は、アドレスbからxはなれたアドレスcの領
域である確率が高いと判定する。この判定に基づき、ホ
スト装置から読み出だし要求があったb領域をディスク
から読み出し、ホスト装置に転送した後、c両行きのデ
ィスク読み出しを実施し、キャッシュバッファに保持す
る。また、c両行きの読み出し後、更にxはなれたd領
域を読み出し、キャッシュバッファに保持してゆくこと
を特徴とするものである。
【0014】これにより、以後に読み出だし要求される
確率の高いデータのみキャッシュバッファに保持してお
くことで、キャッシュバッファを有効に使用することが
可能となり、ホスト装置からのリード要求に対するキャ
ッシュバッファでのヒット効率(パフォーマンス)を向
上させるディスク装置を提供することが可能となる。
確率の高いデータのみキャッシュバッファに保持してお
くことで、キャッシュバッファを有効に使用することが
可能となり、ホスト装置からのリード要求に対するキャ
ッシュバッファでのヒット効率(パフォーマンス)を向
上させるディスク装置を提供することが可能となる。
【0015】更に、本発明にかかるディスク装置のキャ
ッシュ制御方法は、c領域、d領域の物理アドレスを求
め、ホスト装置が要求したb領域のデータを読み出した
後、現在のディスク上の物理位置からヘッドをシーク
し、各領域の読み出しを実行した場合に、短い時間で読
み出しを行える領域から先にディスク読み出しを実行
し、キャッシュバッファにデータを保持していくことを
特徴とするものである。
ッシュ制御方法は、c領域、d領域の物理アドレスを求
め、ホスト装置が要求したb領域のデータを読み出した
後、現在のディスク上の物理位置からヘッドをシーク
し、各領域の読み出しを実行した場合に、短い時間で読
み出しを行える領域から先にディスク読み出しを実行
し、キャッシュバッファにデータを保持していくことを
特徴とするものである。
【0016】これにより、回転待ちの生じないデータの
高速且つ高効率なキャッシングが実行可能となり、ホス
ト装置からのリード要求に対するキャッシュバッファで
のヒット効率(パフォーマンス)の高いデータをいち早
くキャッシュバッファに読み出すことが可能でスループ
ットパフォーマンスの高いディスク装置のキャッシュ制
御方法を提供することが可能となる。
高速且つ高効率なキャッシングが実行可能となり、ホス
ト装置からのリード要求に対するキャッシュバッファで
のヒット効率(パフォーマンス)の高いデータをいち早
くキャッシュバッファに読み出すことが可能でスループ
ットパフォーマンスの高いディスク装置のキャッシュ制
御方法を提供することが可能となる。
【0017】
【発明の実施の形態】以下、図面を参照しながら、この
発明を情報記録再生装置としてのハードディスクドライ
ブ(以下HDDと称する)に適用した実施の形態につい
て詳細に説明する。
発明を情報記録再生装置としてのハードディスクドライ
ブ(以下HDDと称する)に適用した実施の形態につい
て詳細に説明する。
【0018】まず図1を用いて本発明の実施形態に係る
HDDのブロック構成を説明する。同図において、CP
U1はHDD全体の制御およびモータドライバ2の制御
を時分割を行うものである。
HDDのブロック構成を説明する。同図において、CP
U1はHDD全体の制御およびモータドライバ2の制御
を時分割を行うものである。
【0019】モータドライバ2はCPU1からの制御に
より磁気ディスク3を定常回転させるためのスピンドル
モータ(SPM)4および磁気ヘッド5を磁気ディスク
3面状の目的の位置(トラック)に、磁気ディスク面に
所定の間隔を維持して浮上した状態で移動させるための
ボイスコイルモータ(VCM)6を駆動するための電流
をスピンドルモータ(SPM)4およびボイスコイルモ
ータ(VCM)6に流す。
より磁気ディスク3を定常回転させるためのスピンドル
モータ(SPM)4および磁気ヘッド5を磁気ディスク
3面状の目的の位置(トラック)に、磁気ディスク面に
所定の間隔を維持して浮上した状態で移動させるための
ボイスコイルモータ(VCM)6を駆動するための電流
をスピンドルモータ(SPM)4およびボイスコイルモ
ータ(VCM)6に流す。
【0020】CPUバス14にはCPU1が実行すべき
プログラムが記録されている読み出し専用メモリである
ROM6および変数等を記録するのに使用するための書
き換え可能なランダムアクセスメモリ7とハードディス
クコントローラ(HDC)8およびHDD全体の制御に
必要な諸信号の生成を行うゲートアレイ9が接続されて
いる。
プログラムが記録されている読み出し専用メモリである
ROM6および変数等を記録するのに使用するための書
き換え可能なランダムアクセスメモリ7とハードディス
クコントローラ(HDC)8およびHDD全体の制御に
必要な諸信号の生成を行うゲートアレイ9が接続されて
いる。
【0021】ハードディスクコントローラ(HDC)8
およびゲートアレイ9の制御用レジスタ1bは、CPU
1のメモリ領域1aの一部に割り当てられており、CP
U1がこの領域に対して読み出しおよび書き込みを行な
うことでハードディスクコントローラ(HDC)8およ
びゲートアレイ9の制御を行なう。
およびゲートアレイ9の制御用レジスタ1bは、CPU
1のメモリ領域1aの一部に割り当てられており、CP
U1がこの領域に対して読み出しおよび書き込みを行な
うことでハードディスクコントローラ(HDC)8およ
びゲートアレイ9の制御を行なう。
【0022】ハードディスクコントローラ(HDC)8
はCPUバス14以外に、ゲートアレイ9、キャッシュ
バッファとして使用されるバッファRAM10、リード
/ライトIC11に接続されている。
はCPUバス14以外に、ゲートアレイ9、キャッシュ
バッファとして使用されるバッファRAM10、リード
/ライトIC11に接続されている。
【0023】読み出し時、磁気ディスク3から磁気ヘッ
ド5によって読み出され、ヘッドIC12によって増幅
されたアナログ信号は、リード/ライトIC11によっ
て符号化され、ハードディスクコントローラ(HDC)
8はこれをゲートアレイ9からの制御用の各信号に従っ
て処理することによりホストシステム13に転送すべき
データを生成する。このデータは一旦バッファRAM
(キャッシュバッファ)10に格納されてからホストシ
ステム13に転送される。
ド5によって読み出され、ヘッドIC12によって増幅
されたアナログ信号は、リード/ライトIC11によっ
て符号化され、ハードディスクコントローラ(HDC)
8はこれをゲートアレイ9からの制御用の各信号に従っ
て処理することによりホストシステム13に転送すべき
データを生成する。このデータは一旦バッファRAM
(キャッシュバッファ)10に格納されてからホストシ
ステム13に転送される。
【0024】書き込み時、ホストシステム13からハー
ドディスクコントローラ(HDC)8に転送されたデー
タは一旦バッファRAM(キャッシュバッファ)10に
格納された後、ゲートアレイ9からの制御用の各信号に
したがって、ハードディスクコントローラ(HDC)8
によって符号化され、リード/ライトIC11によって
書き込み用の信号に変換され、ヘッドIC12を経由し
て磁気ヘッド5によって磁気ディスク3に書込まれる。
ドディスクコントローラ(HDC)8に転送されたデー
タは一旦バッファRAM(キャッシュバッファ)10に
格納された後、ゲートアレイ9からの制御用の各信号に
したがって、ハードディスクコントローラ(HDC)8
によって符号化され、リード/ライトIC11によって
書き込み用の信号に変換され、ヘッドIC12を経由し
て磁気ヘッド5によって磁気ディスク3に書込まれる。
【0025】バッファRAM(キャッシュバッファ)1
0はリングバッファとして使用され、図2に示すように
磁気ディスク3とバッファRAM(キャッシュバッフ
ァ)10との間のデータ転送によってその転送長だけ進
むディスクポインタ101と、ホスト装置13とバッフ
ァRAM(キャッシュバッファ)10との間のデータ転
送によってその転送長だけ進むホストポインタ102に
よって管理される。
0はリングバッファとして使用され、図2に示すように
磁気ディスク3とバッファRAM(キャッシュバッフ
ァ)10との間のデータ転送によってその転送長だけ進
むディスクポインタ101と、ホスト装置13とバッフ
ァRAM(キャッシュバッファ)10との間のデータ転
送によってその転送長だけ進むホストポインタ102に
よって管理される。
【0026】ディスクポインタ101、ホストポインタ
102ともバッファRAM(キャッシュバッファ)10
の上限まで達し、そこから更に進める必要が生じた場合
には、バッファRAM(キャッシュバッファ)10の下
限に戻る、いわゆる、ラップ処理を行うようになってい
る。
102ともバッファRAM(キャッシュバッファ)10
の上限まで達し、そこから更に進める必要が生じた場合
には、バッファRAM(キャッシュバッファ)10の下
限に戻る、いわゆる、ラップ処理を行うようになってい
る。
【0027】読み出し時、データが磁気ディスク3から
読み出されると、ディスクポインタ101はデータ読み
出し量だけ進み、これによって常に次にデータが書き込
まれるべきバッファRAM(キャッシュバッファ)10
上の位置を保持する。これに対してホストポインタ10
2は読み込んだデータをホスト装置13に転送するとこ
の点送量だけ進み、これによって常に次にホスト装置1
3に転送すべきデータのバッファRAM(キャッシュバ
ッファ)10上の位置を保持する。ホスト装置13への
データ転送制御はホストポインタ102がディスクポイ
ンタ101を追い越さないようにすることで行われてい
る。
読み出されると、ディスクポインタ101はデータ読み
出し量だけ進み、これによって常に次にデータが書き込
まれるべきバッファRAM(キャッシュバッファ)10
上の位置を保持する。これに対してホストポインタ10
2は読み込んだデータをホスト装置13に転送するとこ
の点送量だけ進み、これによって常に次にホスト装置1
3に転送すべきデータのバッファRAM(キャッシュバ
ッファ)10上の位置を保持する。ホスト装置13への
データ転送制御はホストポインタ102がディスクポイ
ンタ101を追い越さないようにすることで行われてい
る。
【0028】次に、書き込み時では、データがホスト装
置13からバッファRAM(キャッシュバッファ)10
へ転送されるとホストポインタ102はデータ転送量だ
け進み、これによって常に次にホスト装置13からのデ
ータが入るべきバッファRAM(キャッシュバッファ)
10の位置を保持する。これに対してディスクポインタ
101はバッファRAM(キャッシュバッファ)10内
のデータを磁気ディスク3に書き込むと、この書き込み
量だけ進み、これによって常に次に磁気ディスク3に書
き込むべきデータがバッファRAM(キャッシュバッフ
ァ)10上の位置を保持する。磁気ディスク3への書き
込み制御はディスクポインタ101がホストポインタ1
02を追い越さないようにすることで行なわれる。
置13からバッファRAM(キャッシュバッファ)10
へ転送されるとホストポインタ102はデータ転送量だ
け進み、これによって常に次にホスト装置13からのデ
ータが入るべきバッファRAM(キャッシュバッファ)
10の位置を保持する。これに対してディスクポインタ
101はバッファRAM(キャッシュバッファ)10内
のデータを磁気ディスク3に書き込むと、この書き込み
量だけ進み、これによって常に次に磁気ディスク3に書
き込むべきデータがバッファRAM(キャッシュバッフ
ァ)10上の位置を保持する。磁気ディスク3への書き
込み制御はディスクポインタ101がホストポインタ1
02を追い越さないようにすることで行なわれる。
【0029】次に、図3を用いて本発明の実施形態に係
るキャッシュ制御動作を、バッファRAM(キャッシュ
バッファ)10への読み出しを例にとり説明する。
るキャッシュ制御動作を、バッファRAM(キャッシュ
バッファ)10への読み出しを例にとり説明する。
【0030】ホスト装置13よりアドレスbの読み出し
要求があった場合、RAM7に保存した以前のホスト装
置13からの読み出し要求アドレスaと比較する。この
とき、アドレスaとアドレスbの領域の差をxとする
と、次に読み出し要求される領域は、アドレスbからx
はなれたアドレスcの領域である確立が高いと判定す
る。この判定に基づき、ホスト装置13から読み出し要
求のあったアドレスbの領域を磁気ディスク3から読み
出し、ホスト装置13に転送した後、アドレスcの領域
の磁気ディスク3からの読み出しを実施し、データをバ
ッファRAM(キャッシュバッファ)10に保持する。
要求があった場合、RAM7に保存した以前のホスト装
置13からの読み出し要求アドレスaと比較する。この
とき、アドレスaとアドレスbの領域の差をxとする
と、次に読み出し要求される領域は、アドレスbからx
はなれたアドレスcの領域である確立が高いと判定す
る。この判定に基づき、ホスト装置13から読み出し要
求のあったアドレスbの領域を磁気ディスク3から読み
出し、ホスト装置13に転送した後、アドレスcの領域
の磁気ディスク3からの読み出しを実施し、データをバ
ッファRAM(キャッシュバッファ)10に保持する。
【0031】また、アドレスcの領域の読み出し後、更
にx離れたアドレスdの領域を読み出しバッファRAM
(キャッシュバッファ)10に保持していく。このよう
に、以後に読み出し要求される確立の高いデータのみバ
ッファRAM(キャッシュバッファ)10に保存してお
くことで、バッファRAM(キャッシュバッファ)10
を有効に使用し、パフォーマンスを向上させることが可
能となる。
にx離れたアドレスdの領域を読み出しバッファRAM
(キャッシュバッファ)10に保持していく。このよう
に、以後に読み出し要求される確立の高いデータのみバ
ッファRAM(キャッシュバッファ)10に保存してお
くことで、バッファRAM(キャッシュバッファ)10
を有効に使用し、パフォーマンスを向上させることが可
能となる。
【0032】次に、アドレスc領域、アドレスd領域の
物理アドレスを求める。
物理アドレスを求める。
【0033】ホスト装置13が要求したアドレスb領域
の読み出し後、現在の磁気ディスク3上での物理位置か
ら、磁気ヘッド5を移動(シーク)して、各領域の読み
出しを実施した場合に、短い時間で読み出しを行える領
域から先に磁気ディスク3からの読み出しを実行し、バ
ッファRAM(キャッシュバッファ)10にデータを保
存していく。すなわち、磁気ディスク3の1回転に伴っ
て、磁気ヘッド5の半径方向のシーク動作に関係なく、
順番に読み取ることができるアドレス領域のデータから
読み出して、バッファRAM(キャッシュバッファ)1
0に保持していく方法である。
の読み出し後、現在の磁気ディスク3上での物理位置か
ら、磁気ヘッド5を移動(シーク)して、各領域の読み
出しを実施した場合に、短い時間で読み出しを行える領
域から先に磁気ディスク3からの読み出しを実行し、バ
ッファRAM(キャッシュバッファ)10にデータを保
存していく。すなわち、磁気ディスク3の1回転に伴っ
て、磁気ヘッド5の半径方向のシーク動作に関係なく、
順番に読み取ることができるアドレス領域のデータから
読み出して、バッファRAM(キャッシュバッファ)1
0に保持していく方法である。
【0034】具体的に言うと、例えば、アドレスbの領
域からアドレスcの領域に磁気ヘッド5を移動(シー
ク)するのに必要な時間と、磁気ディスク3の回転待ち
時間の和であるctと、同じくアドレスdの領域に磁気
ヘッド5を移動(シーク)するのに必要な時間と、磁気
ディスク3の回転待ち時間の和であるdtとを比較し、
短い方から先に読み出しを実施する。
域からアドレスcの領域に磁気ヘッド5を移動(シー
ク)するのに必要な時間と、磁気ディスク3の回転待ち
時間の和であるctと、同じくアドレスdの領域に磁気
ヘッド5を移動(シーク)するのに必要な時間と、磁気
ディスク3の回転待ち時間の和であるdtとを比較し、
短い方から先に読み出しを実施する。
【0035】これによりホスト装置13からのリード要
求は論理アドレス順ではあるが、磁気ディスク3上では
必ずしも連続していない物理アドレスに配置されたデー
タを要求された論理アドレス順に読み出しを実施した場
合より短時間でバッファRAM(キャッシュバッファ)
10への読み出しが可能になる場合があり、HDDのパ
フォーマンスが向上する。
求は論理アドレス順ではあるが、磁気ディスク3上では
必ずしも連続していない物理アドレスに配置されたデー
タを要求された論理アドレス順に読み出しを実施した場
合より短時間でバッファRAM(キャッシュバッファ)
10への読み出しが可能になる場合があり、HDDのパ
フォーマンスが向上する。
【0036】上述の実施形態における磁気ヘッド5によ
る磁気ディスク4上のデータの読み出し動作(磁気ヘッ
ド5の動き)を図4、図5を用いて説明する。
る磁気ディスク4上のデータの読み出し動作(磁気ヘッ
ド5の動き)を図4、図5を用いて説明する。
【0037】ct<dtの場合、図4に示すように、ア
ドレスbの領域の読み出しの後、アドレスc、アドレス
dの順にバッファRAM(キャッシュバッファ)10に
読み出しを実施するように磁気ヘッド5が移動し、デー
タの読み出しが行われる。
ドレスbの領域の読み出しの後、アドレスc、アドレス
dの順にバッファRAM(キャッシュバッファ)10に
読み出しを実施するように磁気ヘッド5が移動し、デー
タの読み出しが行われる。
【0038】また、dt<ctの場合、図5に示すよう
に、アドレスbの領域の読み出しの後、アドレスd、ア
ドレスcの順にバッファRAM(キャッシュバッファ)
10に読み出しを実施するように磁気ヘッド5が移動
し、データの読み出しが行われる。
に、アドレスbの領域の読み出しの後、アドレスd、ア
ドレスcの順にバッファRAM(キャッシュバッファ)
10に読み出しを実施するように磁気ヘッド5が移動
し、データの読み出しが行われる。
【0039】このようなキャッシュ制御方法によれば、
スキップ要求の場合においても、ホスト装置から読み出
し要求されると予想されるデータのみを先読みしてキャ
ッシュバッファに蓄えることで、ホスト装置からのリー
ド要求に対するキャッシュバッファでのヒット効率(パ
フォーマンス)を向上させるディスク装置及び同装置の
キャッシュ制御方法を提供することが可能となる。
スキップ要求の場合においても、ホスト装置から読み出
し要求されると予想されるデータのみを先読みしてキャ
ッシュバッファに蓄えることで、ホスト装置からのリー
ド要求に対するキャッシュバッファでのヒット効率(パ
フォーマンス)を向上させるディスク装置及び同装置の
キャッシュ制御方法を提供することが可能となる。
【0040】なお、本実施例において磁気ディスク装置
であるHDDを例に構造、動作を説明したが、これに限
るものではない。ホスト装置に接続され、ホスト装置か
らの要求によってディスクに対しデータを読み書きす
る、例えば光ディスク装置、光磁気ディスク装置につい
ても、上記同様の作用効果を得ることができることは言
うまでもない。
であるHDDを例に構造、動作を説明したが、これに限
るものではない。ホスト装置に接続され、ホスト装置か
らの要求によってディスクに対しデータを読み書きす
る、例えば光ディスク装置、光磁気ディスク装置につい
ても、上記同様の作用効果を得ることができることは言
うまでもない。
【0041】
【発明の効果】以上詳述したように、本発明によれば、
ホスト装置から読出し要求のあったアドレス情報を保存
するアドレス保存手段に保持し、この保存されているア
ドレス情報から参照し、ホスト装置からの読出し要求が
スキップ要求であるか否かを判定し、この読み出し要求
がスキップ要求であると判定された場合、このスキップ
要求により次に読出すアドレスであるスキップアドレス
を算出し、算出されたスキップアドレスで指定された領
域の情報を選択して読出すとともに、これにより読出さ
れた情報を一時的にバッファRAM(キャッシュバッフ
ァ)に保存するようにすることで、ホスト装置からの読
み出し要求にヒットする可能性の高いデータのみキャッ
シュバッファに蓄えておくとが可能となるため、ホスト
装置からのリード要求に対するキャッシュバッファでの
ヒット効率(パフォーマンス)を向上させるディスク装
置を提供することができる。
ホスト装置から読出し要求のあったアドレス情報を保存
するアドレス保存手段に保持し、この保存されているア
ドレス情報から参照し、ホスト装置からの読出し要求が
スキップ要求であるか否かを判定し、この読み出し要求
がスキップ要求であると判定された場合、このスキップ
要求により次に読出すアドレスであるスキップアドレス
を算出し、算出されたスキップアドレスで指定された領
域の情報を選択して読出すとともに、これにより読出さ
れた情報を一時的にバッファRAM(キャッシュバッフ
ァ)に保存するようにすることで、ホスト装置からの読
み出し要求にヒットする可能性の高いデータのみキャッ
シュバッファに蓄えておくとが可能となるため、ホスト
装置からのリード要求に対するキャッシュバッファでの
ヒット効率(パフォーマンス)を向上させるディスク装
置を提供することができる。
【図1】 本発明の実施形態に係る磁気ディスク装置の
全体の構造を示すブロック図。
全体の構造を示すブロック図。
【図2】 本発明の実施形態に係るバッファRAM(キ
ャッシュバッファ)とポインタの関係を表す概念図。
ャッシュバッファ)とポインタの関係を表す概念図。
【図3】 本発明の実施形態に係るスキップアクセス動
作を説明する動作概念図。
作を説明する動作概念図。
【図4】 本発明の実施形態に係る磁気ディスク上のデ
ータの読み出し動作(ヘッドの移動動作)を説明する図
(読み出し順序変更なし)。
ータの読み出し動作(ヘッドの移動動作)を説明する図
(読み出し順序変更なし)。
【図5】 本発明の実施形態に係る磁気ディスク上のデ
ータの読み出し動作(ヘッドの移動動作)を説明する図
(読み出し順序変更あり)。
ータの読み出し動作(ヘッドの移動動作)を説明する図
(読み出し順序変更あり)。
【図6】 本発明の実施形態に係るキャッシュ制御方法
を説明するフローチャート。
を説明するフローチャート。
【図7】 本発明の実施形態に係るキャッシュ制御方法
の物理アドレス判定読み出し方法を説明するサブルーチ
ンフローチャート。
の物理アドレス判定読み出し方法を説明するサブルーチ
ンフローチャート。
1……CPU
1a…キャッシュメモリ
1b…制御用レジスタ
2……モータドライバ
3……磁気ディスク
4……スピンドルモータ(SPM)
5……磁気ヘッド
6……ボイスコイルモータ(VCM)
7……RAM
8……ハードディスクコントローラ(HDC)
9……ゲートアレイ
10…バッファRAM
11……リード/ライトIC
12…ヘッドIC
13…ホストシステム
101…ディスクポインタ
102…ホストポインタ
フロントページの続き
(51)Int.Cl.7 識別記号 FI テーマコート゛(参考)
G11B 20/10 G11B 20/10 A
D
321 321Z
Claims (6)
- 【請求項1】 ホスト装置から読出し要求のあったアド
レス情報を保存するアドレス保存手段と、 前記アドレス保存手段に保存されている前記アドレス情
報から、前記ホスト装置からの読出し要求がスキップ要
求であるか否かを判定するスキップ要求判定手段と、 前記スキップ要求判定手段により、前記ホスト装置から
の読出し要求がスキップ要求であると判定された場合、
前記スキップ要求により次に読出すアドレスであるスキ
ップアドレスを算出するスキップアドレス算出手段と、 前記スキップアドレス算出手段により算出された前記ス
キップアドレスにより指定された領域の情報を選択して
読出すスキップ読出し手段と、 前記スキップ読出し手段により読出された情報を一時的
に保存するスキップキャッシュ手段と、 を有することを特徴とするディスク装置。 - 【請求項2】 前記スキップ要求判定手段により、複数
のスキップ要求があると判定された場合、前記複数のス
キップ要求各々に対応する読出しアドレスであるスキッ
プアドレスを算出するスキップアドレス算出手段と、 前記スキップアドレス算出手段により算出された各々の
読出しアドレスのディスク上での物理アドレスを算出す
る物理アドレス算出手段と、 前記物理アドレス算出手段により算出された物理アドレ
ス上に記録されたデータの読出しが開始できるまでの時
間をカウントする読出し開始時間カウント手段と、 前記アクセス要求のそれぞれを前記読出し開始時間カウ
ント手段によるカウント値の小さい順に順番を並べ替え
るソート手段と、 前記ソート手段により並べ替えた順番にディスクから情
報を読出す読出し制御手段とを持つことを特徴とする請
求項1記載のディスク装置。 - 【請求項3】 前記ディスクは磁気的情報の記録再生が
可能な媒体であることを特徴とする請求項2記載のディ
スク装置。 - 【請求項4】 ホスト装置から読出し要求のあったアド
レス情報をアドレス保持手段に保存するステップと、 前記アドレス保存手段に保存されている前記アドレス情
報から、前記ホスト装置からの読出し要求がスキップ要
求であるか否かをスキップ要求判定手段により判定する
ステップと、 前記スキップ要求判定手段により、前記ホスト装置から
の読出し要求がスキップ要求であると判定された場合、
前記スキップ要求により次に読出すアドレスであるスキ
ップアドレスをスキップアドレス算出手段により算出す
るステップと、 前記スキップアドレス算出手段により算出された前記ス
キップアドレスにより指定された領域の情報を選択して
スキップ読出し手段により読出す出すステップと、 前記スキップ読出し手段により読出された情報を一時的
にスキップキャッシュ手段に保存するステップと、 からなるキャッシュ制御方法。 - 【請求項5】 前記スキップ要求判定手段により、複数
のスキップ要求があると判定された場合、前記複数のス
キップ要求各々に対応する読出しアドレスであるスキッ
プアドレスをスキップアドレス算出手段により算出する
ステップと、 前記スキップアドレス算出手段により算出された各々の
読出しアドレスのディスク上での物理アドレスを物理ア
ドレス算出手段により算出するステップと、 前記物理アドレス算出手段により算出された物理アドレ
ス上に記録されたデータの読出しが開始できるまでの時
間を読出し開始時間カウント手段によりカウントするス
テップと、 前記アクセス要求のそれぞれを前記読出し開始時間カウ
ント手段によるカウント値の小さい順にソート手段によ
り順番を並べ替えるステップと、 前記ソート手段により並べ替えた順番にディスクから読
出し制御手段により情報を読出すステップとからなる請
求項4記載のキャッシュ制御方法。 - 【請求項6】 前記ディスクは磁気的情報の記録再生が
可能な媒体であることを特徴とする請求項5記載のキャ
ッシュ制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001395745A JP2003196155A (ja) | 2001-12-27 | 2001-12-27 | ディスク装置及び同装置のキャッシュ制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001395745A JP2003196155A (ja) | 2001-12-27 | 2001-12-27 | ディスク装置及び同装置のキャッシュ制御方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2003196155A true JP2003196155A (ja) | 2003-07-11 |
Family
ID=27602042
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001395745A Pending JP2003196155A (ja) | 2001-12-27 | 2001-12-27 | ディスク装置及び同装置のキャッシュ制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2003196155A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006004387A (ja) * | 2004-06-21 | 2006-01-05 | Ricoh Co Ltd | 情報処理装置及び情報処理方法 |
-
2001
- 2001-12-27 JP JP2001395745A patent/JP2003196155A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006004387A (ja) * | 2004-06-21 | 2006-01-05 | Ricoh Co Ltd | 情報処理装置及び情報処理方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6779081B2 (en) | Apparatus and method for defragmentation in disk storage system | |
| US7853761B2 (en) | Classifying write commands into groups based on cumulated flush time | |
| US6523086B1 (en) | Method for improving performance of read cache of magnetic disk drive | |
| JPH11110139A (ja) | データ読み取り方法及びデータ読み取り装置 | |
| JP2007304691A (ja) | ディスク装置及び回転型記憶装置の先読み制御方法 | |
| JPH06314177A (ja) | 磁気ディスク装置及びアクセス方法 | |
| JP2003196155A (ja) | ディスク装置及び同装置のキャッシュ制御方法 | |
| JP2845658B2 (ja) | データ記録再生装置のアクセス制御装置 | |
| JPH10171713A (ja) | ディスク記憶装置及び同装置に適用するキャッシュ制御方法 | |
| JPH0944315A (ja) | 記憶装置及びその方法 | |
| JP2914834B2 (ja) | 磁気ディスク装置 | |
| JP2010044820A (ja) | 記録装置及び記録方法 | |
| JP3080758B2 (ja) | 磁気ディスク装置 | |
| JP2009087460A (ja) | ディスク記憶装置のコマンド処理方法 | |
| JPH10208255A (ja) | 光ディスク再生方法及び光ディスク装置 | |
| JP2000222137A (ja) | ディスク記憶装置及び同装置におけるバッファ制御方法 | |
| JPH11232037A (ja) | ディスクキャッシュライト機能を持った磁気ディスク装置 | |
| JP3735495B2 (ja) | ディスク制御装置 | |
| JP2000181798A (ja) | ディスク装置のキャッシュ制御方式 | |
| JPH11232046A (ja) | 磁気ディスク装置 | |
| JPH0695808A (ja) | 磁気ディスク装置 | |
| JP2001265534A (ja) | アクセス制御方法及びこれを用いたディスク装置 | |
| JPH10106143A (ja) | 光ディスク記録再生装置 | |
| JPH0820931B2 (ja) | ディスク装置 | |
| JPH1116269A (ja) | 光ディスク再生方法及び光ディスク装置 |