JP2007094995A - ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法 - Google Patents

ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法 Download PDF

Info

Publication number
JP2007094995A
JP2007094995A JP2005286927A JP2005286927A JP2007094995A JP 2007094995 A JP2007094995 A JP 2007094995A JP 2005286927 A JP2005286927 A JP 2005286927A JP 2005286927 A JP2005286927 A JP 2005286927A JP 2007094995 A JP2007094995 A JP 2007094995A
Authority
JP
Japan
Prior art keywords
command
command management
write
data
management table
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
JP2005286927A
Other languages
English (en)
Inventor
Yoshiyuki Sato
賀之 佐藤
Hideaki Tanaka
秀明 田中
Tatsuya Haga
達也 芳賀
Shigeru Shimizu
滋 清水
Takumi Sumiya
巧 角谷
Yuichi Hirao
雄一 平尾
Masami Aihara
正実 相原
Keiko Murai
啓晃 村井
Masaki Kofuchi
将揮 小渕
Mitsuhiko Sugiyama
光彦 杉山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005286927A priority Critical patent/JP2007094995A/ja
Publication of JP2007094995A publication Critical patent/JP2007094995A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】ライトコマンドに応じて、ライトデータをキャッシュメモリに格納するディスク装置において、パワーセーブコマンドを受領した際に、データの保全を行う。
【解決手段】ディスク記憶装置(10)は、ホストからのライトコマンドに応じて、ライトデータをデータバッファ(14)のキャッシュ領域(14A)に格納して、ホストへライト完了を報告し、その後キャッシュ領域(14A)のライトデータを、記憶媒体(19)に書き込む。ディスク記憶装置は、パワーセーブコマンドを受信したことに応じて、データバッファ(14)内の格納されたライトデータを、記憶ディスク(19)に設けられた退避領域に格納し、パワーセーブコマンドを実行して、ホストに応答を報告する。このため、ライトデータの安全性を維持しつつ、このコマンドに対する処理時間が短くなり、ホストへの応答時間を短縮できる。
【選択図】図5

Description

本発明は、ディスクにデータをヘッドで記録するディスク記憶装置及びキャッシュ制御方法に関し、特に、ライトコマンドに応じて、ライトデータをキャッシュメモリに格納し、ライト完了を通知するディスク記憶装置及びキャッシュ制御方法に関する。
近年のデータ電子化処理の要求により、データを記憶する磁気ディスク装置や光ディスク装置の媒体記憶装置に、大容量化が要求されている。このため、ディスク媒体は、益々トラック密度や記録密度が高くなっている。しかも、高速なアクセスが要求されている。このため、通常のライトコマンドに対しては、キャッシュメモリにライトデータを格納し、ホストへ完了を報告している。そして、その後、キャッシュメモリのライトデータを、ディスクにライトする、所謂ライトバックを実行する。
図8は、従来技術の説明図である。図8に示すように、ライトキャッシュ機能を持たせるには、データを格納するキャッシュ領域120と、その管理データを格納するコマンド管理テーブル110を、ディスク記憶装置に設ける。ホストからライトコマンドとライトデータを受信すると、ライトコマンドから得た開始LBA(Logical Block Address)、要求セクタ数、キャッシュ領域120の格納アドレス等のコマンド管理情報を作成し、コマンド管理テーブル110に格納する。そして、ライトデータは、キャッシュ領域120のコマンド管理テーブル110の指定する格納アドレス位置に、格納する。
又、ホストからのアクセスがない場合には、このキャッシュ領域120のライトデータを、ディスク100のコマンド管理テーブル110のコマンド管理データで指定するアドレス(セクタ位置)に、ライトする。
一方、パーソナルコンピュータや、携帯音楽プレーヤー等の携帯機器への、ディスク記憶装置の搭載が進んでいる。このため、ディスク記憶装置も小型化、低価格のものが望まれる。このため、キャッシュ領域の容量も、増加するのが、困難である。このため、ライトキャッシュできるコマンド数やデータ量に制限が生じる。
このキャッシュ容量を仮想的に増加する方法として、キャッシュメモリの容量を越えたライトコマンドやライトデータを、ディスク上に設けた2次キャッシュ領域にライトし、ホストへライト完了を返送し、その後、2次キャッシュ領域を含むキャッシュ領域のライトデータを、ディスクの指定位置にライトバックする方法が提案されている(例えば、特許文献1)。
又、他の従来技術としては、図8のように、キャッシュ領域120内のライトデータの書き込み位置が、ランダムであると、複数のライトデータW1,W2,W3を書き込むため、シーク時間や回転待ち時間が生じる。このため、到来したライトコマンドがランダムであるかを判定し、ランダムなライトデータの場合には、キャッシュ領域120には、格納せずに、ディスク100上に設けた退避領域にライトし、ホストへライト完了を返送し、その後、退避領域を含むキャッシュ領域のライトデータを、ディスク100の指定位置にライトバックする方法が提案されている(例えば、特許文献2)。
特開平6−348597号公報 特開平11−232037号公報
この従来技術は、ライトコマンドに対するライトキャッシュ領域の仮想的拡張方法である。近年の省電力化の要請により、ホストからパワーセーブに関するコマンドが、発行されることがある。このパワーセーブコマンドが発行された場合には、ディスク装置は、スピンドルモータや、アクチュエータの電力供給をカットし、且つ回路系の動作を低消費電力とする。例えば、クロック周波数を低くする。
このパワーセーブコマンドの実行後も、ライトキャッシュ領域120のデータは、回路系の電源維持のため、保持される。しかしながら、パワーセーブコマンド後に、電源オフのコマンドが発行されると、電源オフにより、ライトキャッシュ領域120のデータは、失われてしまう。
これを防止するには、スピンドルモータを再度、回転し、アクチュエータに電源供給し、ヘッドがライト状態に復帰させた後、キャッシュ領域120内にすでにライトキャッシュデータを保持している場合には、図8のように、ライトキャッシュデータを、ディスク100の指定位置に、全てライトしてから、受領したコマンドを実行するため、ホスト装置へのコマンド応答が遅れ、且つ電源オフまでの時間がかかる場合がある。
従って、本発明の目的は、パワーセーブコマンドを受信しても、ホストへの応答の遅れを防止するためのディスク記憶装置及びディスク記憶装置のキャッシュ制御方法を提供することにある。
又、本発明の他の目的は、パワーセーブコマンドを受信しても、キャッシュ領域のライトデータを保存しつつ、ホストへの応答の遅れを防止するためのディスク記憶装置及びディスク記憶装置のキャッシュ制御方法を提供することにある。
本発明の更に他の目的は、パワーセーブコマンドを受信しても、ディスク上で、仮想的なライトキャッシュ動作を行ない、ホストへの応答の遅れを防止するためのディスク記憶装置及びディスク記憶装置のキャッシュ制御方法を提供することにある。
本発明の更に他の目的は、パワーセーブコマンドを受信し、ディスク上で仮想キャッシュ動作をしても、そのライトデータの管理を確実にするためのディスク記憶装置及びディスク記憶装置のキャッシュ制御方法を提供することにある。
この目的の達成のため、本発明のディスク記憶装置は、記憶ディスクのトラックのデータのリード及びライトのいずれかを行うヘッドと、前記記憶ディスクの所望トラックに前記ヘッドを位置付けるアクチュエータと、ホストからのライトデータを格納するデータバッファと、前記ホストからのライトコマンドに応じて、前記ホストからのライトデータを前記データバッファに格納し、前記ホストにステータス報告した後、前記データバッファの前記ライトデータを前記ヘッドで前記記憶ディスクにライトする制御ユニットとを有し、前記制御ユニットは、パワーセーブコマンドを受信したことに応じて、前記データバッファ内の前記格納された前記ライトデータを、前記記憶ディスクに設けられた退避領域に格納し、前記パワーセーブコマンドを実行し、前記ホストに応答を報告した後、前記記憶ディスクの退避領域に格納された前記ライトデータを前記記憶ディスクの指定された位置にライトする。
又、本発明では、好ましくは、前記制御ユニットは、前記ホストからのライトデータの書き込み位置を指定するコマンド管理情報をコマンド管理テーブルに格納するとともに、前記ライトデータとともに、前記退避領域に格納する。
又、本発明では、好ましくは、前記制御ユニットは、前記データ保全を要するコマンドを受信したことに応じて、前記コマンド管理テーブルのコマンド管理情報を、退避用コマンド管理テーブルに格納し、前記退避用コマンド管理テーブルと、前記データバッファ内の前記格納された前記ライトデータとを、前記記憶ディスクに設けられた退避領域に格納する。
又、本発明では、好ましくは、前記制御ユニットは、前記退避用コマンド管理テーブルに格納された前記コマンド管理情報を、前記コマンド管理テーブルから削除する。
又、本発明では、好ましくは、前記制御ユニットは、前記コマンド管理テーブルに格納された前記コマンド管理情報が、2つ以上登録されているかを判定し、前記コマンド管理情報が、2つ以上登録されている場合に、前記退避領域への格納処理を実行する。
又、本発明では、好ましくは、前記制御ユニットは、前記退避用コマンド管理テーブルに前記コマンド管理情報が登録されているかを判定し、前記退避用コマンド管理テーブルに前記コマンド管理情報が登録されている場合に、前記ディスクの前記退避領域から前記退避した前記退避用コマンド管理テーブルを読み出し、前記コマンド管理テーブルに、前記退避用コマンド管理テーブルの前記コマンド管理情報を登録し、前記コマンド管理情報に従い、前記記憶ディスクの退避領域に格納された前記ライトデータを前記記憶ディスクの指定された位置にライトする。
又、本発明では、好ましくは、前記制御ユニットは、前記コマンド管理テーブルに登録された前記コマンド管理情報を、前記退避用コマンド管理テーブルから削除する。
又、本発明では、好ましくは、前記制御ユニットは、前記コマンド管理テーブルに格納された前記コマンド管理情報が、1つ登録されている場合に、前記コマンド管理情報に従い、前記ライトデータを前記記憶ディスクの指定された位置にライトする。
本発明では、パワーセーブコマンドを受信したことに応じて、データバッファ内の格納されたライトデータを、記憶ディスクに設けられた退避領域に格納し、パワーセーブコマンドを実行し、前記ホストに応答を報告するので、キャッシュデータを保全しつつ、このコマンドに対する処理時間が短くなり、ホストへの応答時間を短縮できる。又、退避用のフォーマットを、複数コマンド(管理データ)、ライトデータとしたため、その後のライトバック処理が容易となる。
以下、本発明の実施の形態を、ディスク記憶装置、ライトキャッシュ処理、キャッシュデータ退避処理、ライトバック処理、他の実施の形態の順で説明する。
・・ディスク記憶装置・・
図1は、本発明の一実施の形態のディスク記憶装置の構成図、図2は、図1のコマンド管理テーブル及びキャッシュデータ管理テーブルの説明図、図3は、図1の退避領域用コマンド管理テーブルの説明図である。図1は、ディスク記憶装置として、磁気ディスクにデータをリード/ライトする磁気ディスク装置(Hard Disk Drive)を例に示す。
図1に示すように、磁気ディスク装置10は、パーソナルコンピュータに内蔵され、パーソナルコンピュータのホスト(図示せず)とATA(AT Attachment)規格のインタフェースのケーブル9で接続される。
磁気ディスク装置10は、磁気ディスク19と、磁気ディスク19を回転するスピンドルモータ20と、磁気ディスク19にデータをリード/ライトする磁気ヘッド25と、磁気ヘッド25を磁気ディスク19の半径方向(トラック横断方向)に移動するアクチュエータ(Voice Coil Motor)22とを備える。
又、制御部として、HDC(Hard Disk Controller)26と、データバッファ14と、MPU11と、メモリ(RAM/ROM)13と、ヘッドIC18と、スピンドルモータドライバ21と、VCMドライバ23と、位置検出部24と、これらを接続するバス17とを備える。
HDC26は、ホストからタスクをセットするタスクファイル12Aを有するATAインタフェース制御回路12と、データバッファ14を制御するデータバッファ制御回路15と、記録データのフォーマットの制御を行うフォーマッタ制御回路16とを有する。
データバッファ14は、キャッシュメモリ14Aの役目を果たし、ホストからのライトデータを保存し、磁気ディスク19からのリードデータを保存する。そして、ライトバック時には、データバッファ14のライトデータを、磁気ディスク19にライトし、リード時には、データバッファ14のリードデータを、ホストへ転送する。
ヘッドIC18は、ライト時は、記録データに従い磁気ヘッド25に記録電流を流し、リード時は、磁気ヘッド25からの読取信号を増幅して、リードデータ(サーボ情報を含む)を出力する。位置検出部24は、ヘッドIC18からのサーボ情報から磁気ヘッド25の位置を検出する。
スピンドルドライバ21は、スピンドルモータ20を回転駆動する。VCMドライバ23は、磁気ヘッド25を移動するVCM22を駆動する。MPU(Micro Processor)11は、磁気ヘッド25の位置制御、リード/ライト制御、リトライ制御を行う。メモリ(RAM/ROM)13は、MPU11の処理に必要なデータを格納する。又、メモリ13は、図2,図3で後述するコマンド管理テーブル13−1、キャッシュデータ管理テーブル13−2、退避領域用コマンド管理テーブル13−3を格納する。
図2に示すように、バッファ管理テーブル13−1は、キャッシュメモリ14Aに格納されるライトデータW1、W2,W3のコマンド管理テーブル番号と、その格納(バッファ)アドレスからなるバッファ管理データを格納する。コマンド管理テーブル13−2は、キャッシュメモリ14Aに格納されるライトデータW1、W2,W3の開始LBA(Logical Block Address)、要求セクタ数等のライトデータ管理データを格納する。
図3に示すように、退避領域用コマンド管理テーブル13−3は、コマンド管理テーブル13−2に格納された各ライトデータのライトデータ管理データ(開始LBA、要求セクタ数)を格納する。
尚、図1の磁気ヘッド25は、リード素子とライト素子とが分離されたヘッドであり、リード素子は、MR(Magneto-Resistive)素子、ライト素子は、磁気コアとコイルを有する誘導素子で構成される。
・・ライトキャッシュ処理・・
図4は、本発明の一実施の形態のライトキャッシュ処理フロー図である。
(S10)ホスト(図示せず)が、ディスク記憶装置10に、ライト要求を発行すると、HDC26のATAインタフェース回路12で受信し、MPU11に通知する。MPU11は、受領したライトコマンドを管理するコマンド管理テーブル13−2に、ライトコマンドに含まれる開始LBA,要求セクタ数を登録する。そして、MPU11は、キャッシュデータ管理テーブル13−1に、この登録したコマンド管理テーブルの番号と、データバッファ内に割り当てるバッファアドレスを格納する。更に、この後、ホストにライトデータの転送を要求し、ホストからライトデータを受信すると、データバッファ制御回路15が、このバッファ管理テーブル13−1を参照し、データバッファ14の登録したバッファアドレスに、ライトデータを転送する(書き込む)。
(S12)次に、データバッファ制御回路15が、ライトデータの転送が終了したかを判定する。
(S14)ライトデータの転送が終了すると、MPU11は、コマンド管理テーブル13−2に次のコマンドを登録する空きがあるかを確認する。空きがない場合には、終了し、ホストへビジー通知する。
(S16)コマンド管理テーブル13−2に空きがある場合には、MPU11は、キャッシュ管理テーブル13−1に、次のコマンドを登録する空き(即ち、キャッシュ14Aにデータ受領する領域)があるかを確認する。空きがない場合には、終了し、ホストへビジー通知する。
(S18)キャッシュ管理テーブル13−1に空きがあると、次のコマンドの受け付けが可能なため、ホストにライトコマンド終了のステータスを報告し、終了する。
・・キャッシュデータ退避処理・・
次に、キャッシュデータ退避処理を説明する。図5は、本発明の一実施の形態のキャッシュデータ退避処理フロー図、図6は、その動作説明図である。この実施例では、ホストより複数のライトコマンド(W1,W2,W3)を受領している状態で、パワーセーブコマンドを受領した場合に、ディスクの退避領域に、媒体ライト処理を実行する場合を例に説明する。尚、パワーセーブコマンドは、ホストが、ディスク装置を利用しない環境(所定時間、処理要求が無い等)であることに応じて、省電力化を目的として、ディスク記憶装置に発行するコマンドである。
(S20)まず、HDC26のATAインタフェース制御回路12が、ホストから、パワーセーブコマンドを受領した場合、MPU11は、コマンド管理テーブル13−2(図2)に、格納されているライトコマンド(W1,W2,W3)があるかどうかを判定する。あれば、MPU11は、コマンド管理テーブル13−2に、2つ以上のライトコマンド(ライトデータ管理データ)が登録されているかを判定する。2つ以上のライトデータ管理データが登録されていない場合には、登録されたライトデータ管理データ数が「0」なら、データ退避の必要がないため、ステップS32に進み、登録されたライトデータ管理データ数が「1」なら、1箇所のライトデータの書き込みのため、このライトデータを指定セクタ位置に書き込み、ステップS32に進む。
(S22)一方、2つ以上のライトデータ管理データが登録されていない場合には、MPU11は、退避領域用コマンド管理テーブル13−3(図3)の空きを確認する。空きがなければ、これ以上退避できないため、ステップS32に進む。
(S24)逆に、退避領域用コマンド管理テーブル13−3に、空きがあれば、MPU11は、コマンド管理テーブル13−2からライトデータ管理データを取り出し、退避領域用コマンド管理テーブル13−3に登録する。更に、MPU11は、キャッシュ管理テーブル13−1の管理番号を、退避領域用コマンド管理テーブル13−3の番号に書き換える。更に、MPU11は、管理テーブル13−3に登録したライトデータ管理データを、コマンド管理テーブル13−2から削除し、コマンド管理テーブルを空けておく。
(S26)MPU11は、コマンド管理テーブル13−2に、未登録のライトデータ管理データがあるかを判定する。コマンド管理テーブル13−2に、未登録のライトデータ管理データがある場合には、ステップS22に戻る。
(S28)逆に、コマンド管理テーブル13−2に、未登録のライトデータ管理データがない場合には、MPU11は、退避領域用コマンド管理テーブル13−3(図3)にライトデータ管理データが登録されているかを確認する。登録されていない場合には、ステップS32に進む。
(S30)MPU11は、退避領域用コマンド管理テーブル13−3に登録されている場合、バッファ制御回路15に指示し、退避領域用コマンド管理テーブル13−3と、退避領域用コマンド管理テーブル13−3に登録したライトコマンドのデータ(図6では、W1,W2,W3)とを、連続して、結合する。一方、図6に示すように、磁気ディスク19のユーザー領域外、例えば、最インナーの領域に、退避領域を設定しておく。そして、MPU11は、アクチュエータ22を制御し、磁気ヘッド25を、磁気ディスク19の退避領域に、シーク動作を行い、磁気ヘッド25で、退避領域用コマンド管理テーブル13−3(図3のヘッダ、W1,W2,W3の開始LBA,要求セクタ数)及び要求ライトデータW1、要求ライトデータW2、要求ライトデータW3を,連続して、ライトする。
(S32)そして、MPU11は、パワーセーブコマンドの本来の処理を実行する。例えば、パワーセーブのレベルにもよるが、主に、スピンドルモータドライバ21、VCMドライバ23、ヘッドIC18の電力供給をカットし,より省電力化する場合には、位置検出回路18の電力供給をカットする。更に、MPU11やHDC26へのクロックを低周波数に切り替える。そして、MPU11は、HDC26を介し、ホストに完了報告を行い、パワーセーブコマンドの処理を終了する。
このように、従来は、図8に示したように、パワーセーブコマンドを受けた場合に、データを保全するには、コマンド管理テーブル110の先頭からライトキャッシュ管理データを取り出し、その開始LBAに対してシーク動作(図8のS1)を行い、要求セクタ分のライト処理(図8のW1)を開始する。このライトデータW1の要求セクタ分のライト動作完了後、コマンド管理テーブル110から次のライトキャッシュ管理データを取り出し、その開始LBAに対してシーク動作(図8のS2)を行い、要求セクタ分のライト処理(図8のW2)を開始する。このライトデータW2の要求セクタ分のライト動作完了後、コマンド管理テーブル110から次のライトキャッシュ管理データを取り出し、その開始LBAに対してシーク動作(図8のS3)を行い、要求セクタ分のライト処理(図8のW3)を開始する。全てのライトキャッシュデータを,媒体19にライトした後、ホストにコマンド完了のステータスを報告する。
このように、従来方法であると、ライトデータW1,W2,W3を,ライトキャッシュしていた場合、各コマンドのライト処理で,シーク処理(図8のS1,S2,S3)が必要であり,パワーセーブコマンドの処理時間が長くなる。
これに対し、本発明では、図6に示したように、パワーセーブコマンド受領時に、コマンド管理テーブル13−2に、2つ以上ライトコマンドが登録されている場合には、ライトコマンド(W1,W2,W3)を順番に取り出し、退避領域用コマンド管理テーブル13−3に登録して、複数コマンドを、一つにまとめて登録する。この時、退避するライトコマンドは、コマンド管理テーブル13−2から削除し、コマンド管理テーブルを空けておく。
そして、退避領域用コマンド管理テーブル13−3の登録データと退避領域用コマンド管理テーブル13−3に登録したライトコマンドのデータとをまとめて、連続してライトできるように結合する。その後、磁気ディスク19の退避領域に対してシーク動作を行い、結合した退避領域用コマンド管理テーブル及び要求ライトデータW1、要求ライトデータW2、要求ライトデータW3を、連続してライト処理する。
このため、このコマンドに対する処理時間が短くなり、ホストへの応答時間を短縮できる。又、退避用のフォーマットを、複数コマンド(管理データ)、ライトデータとしたため、その後のライトバック処理が容易となる。
・・ライトバック処理・・
次に、図7により、ライトバック処理を説明する。
(S40)MPU11は、一定時間、ホストからコマンド発行がないかを判定する。ホストからのコマンド発行があれば、MPU11は、受領したコマンドの処理を実行する。
(S42)逆に、一定時間ホストからコマンド発行がないと判定すると、時間に余裕があるので、退避領域用管理テーブル13−3に、ライトデータ管理データが登録されているかを確認する。ライトデータ管理データが登録されていない場合には、退避領域に退避していないため、ホストからのコマンド待ちのループに戻る。
(S44)MPU11は、退避領域用管理テーブル13−3に、ライトデータ管理データが登録されている場合には、退避領域に退避しているため、アクチュエータ25を制御し、磁気ヘッド25を、磁気ディスク19の退避領域(図6参照)に位置付け、退避領域に書いてあるデータを、リードする。MPU11は、リードしたデータから、退避領域用コマンド管理テーブル13−3に登録されているコマンドであることを確認し、その順番に、コマンド管理テーブル13−2に登録する。そして、MPU11は、キャッシュ管理テーブル13−1の情報を、コマンド管理テーブル13−2の番号に書き換え、退避領域用コマンド管理テーブル13−3からライトコマンドを削除する。
(S46)MPU11は、退避領域のリードデータから、次のライトコマンドがあるかを判定し、有れば、ステップS44に戻る。
(S48)MPU11は、次のライトコマンドが無ければ、コマンド管理テーブル13−2に登録されているライトコマンドに従い、ライトデータを、磁気ディスク19の指定位置にライトする。この場合に、MPU11は、ホストから電源断後の開始コマンドが到来していたか、又は、パワーセーブ後のパワーセーブ解除コマンド(通常のホストからのアクセスコマンド)が到来していたかを判定する。即ち、MPU11は、VCMドライバ23を介しVCM22を駆動して、媒体19上の所定の位置(トラック)まで,シーク(トラックチェンジ,ヘッドチェンジ)する。更に、電源断後の開始コマンドが到来していた場合には、ステップS44で、退避領域からライトデータをリードし、バッファメモリ14に再格納した後、MPU11は、HDC26に媒体ライトを指示し、HDC26は、バッファメモリ14のライトデータを,ヘッドIC18を経由して、磁気ヘッド25(ライト素子)に送り、ライトバックを実行する。一方、パワーセーブ解除コマンドが到来していた場合には、バッファメモリ14にライトデータが残っているため、MPU11は、HDC26に媒体ライトを指示し、HDC26は、バッファメモリ14のライトデータを,ヘッドIC18を経由して、磁気ヘッド25(ライト素子)に送り、ライトバックを実行する。又、複数トラックにまたがる場合には,該当トラック部分の媒体ライトである。
このようにして、ライトキャッシュのライトデータ管理データとライトデータを、磁気ディスク19の退避領域にシーケンシャルに書き込み、コマンド完了とし、ホストからのコマンドが一定時間ない空き時間に、磁気ディスク19の指定位置にランダムにライトデータを書き込むことができる。
・・他の実施の形態・・
前述の実施の形態では、ディスク記憶装置を磁気ディスク装置で説明したが、光ディスク、光磁気ディスク、他の記憶媒体を使用した記憶装置にも適用できる。又、インタフェースは、ATAに限らず、他のインタフェースにも適用できる。更に、データの安全性のためのコマンドを、パワーセーブコマンドで説明したが、他のキャッシュデータの安全性が必要なコマンドにも適用できる。
更に、図5のステップS24で、退避用管理テーブル13−3に登録したコマンド管理テーブル13−2のコマンドを削除しているが、削除しなくても良い。同様に、管理テーブル13−1,13−2,13−3を、メモリ13に設けているが、バッファメモリ14に設けても良い。
以上、本発明を実施の形態により説明したが、本発明の趣旨の範囲内において、本発明は、種々の変形が可能であり、本発明の範囲からこれらを排除するものではない。
パワーセーブコマンドを受信したことに応じて、データバッファ内の格納されたライトデータを、記憶ディスクに設けられた退避領域に格納し、パワーセーブコマンドを実行し、ホストに応答を報告するので、キャッシュデータを保全しつつ、このコマンドに対する処理時間が短くなり、ホストへの応答時間を短縮できる。又、退避用のフォーマットを、複数コマンド(管理データ)、ライトデータとしたため、その後のライトバック処理が容易となる。
本発明の一実施の形態のディスク記憶装置の構成図である。 図1のコマンド管理テーブル及びキャッシュデータ管理テーブルの説明図である。 図1の退避領域用コマンド管理テーブルの説明図である。 本発明の一実施の形態のライトキャッシュ処理フロー図である。 本発明の一実施の形態のライトコマンド以外のコマンド受信時のキャッシュデータ退避処理フロー図である。 図5の処理によるキャッシュデータ退避動作の説明図である。 本発明の一実施の形態のライトバック処理フロー図である。 従来のライトキャッシュ動作の説明図である。
符号の説明
10 ディスク記憶装置
11 MPU
13 メモリ
13−1 キャッシュデータ管理テーブル
13−2 コマンド管理テーブル
13−3 退避領域用コマンド管理テーブル
14 データバッファ
14A キャッシュ領域
19 磁気ディスク
22 アクチュエータ
25 ヘッド
26 HDC

Claims (10)

  1. 記憶ディスクのトラックのデータのリード及びライトのいずれかを行うヘッドと、
    前記記憶ディスクの所望トラックに前記ヘッドを位置付けるアクチュエータと、
    ホストからのライトデータを格納するデータバッファと、
    前記ホストからのライトコマンドに応じて、前記ホストからのライトデータを前記データバッファに格納し、前記ホストにステータス報告した後、前記データバッファの前記ライトデータを前記ヘッドで前記記憶ディスクにライトする制御ユニットとを有し、
    前記制御ユニットは、パワーセーブコマンドを受信したことに応じて、前記データバッファ内の前記格納された前記ライトデータを、前記記憶ディスクに設けられた退避領域に格納し、前記パワーセーブコマンドを実行して、前記ホストに応答を報告した後、前記記憶ディスクの退避領域に格納された前記ライトデータを前記記憶ディスクの指定された位置にライトする
    ことを特徴とするディスク記憶装置。
  2. 前記制御ユニットは、前記ホストからのライトデータの書き込み位置を指定するコマンド管理情報をコマンド管理テーブルに格納するとともに、前記ライトデータとともに、前記退避領域に格納する
    ことを特徴とする請求項1のディスク記憶装置。
  3. 前記制御ユニットは、前記パワーセーブコマンドを受信したことに応じて、前記コマンド管理テーブルのコマンド管理情報を、退避用コマンド管理テーブルに格納し、前記退避用コマンド管理テーブルと、前記データバッファ内の前記格納された前記ライトデータとを、前記記憶ディスクに設けられた退避領域に格納する
    ことを特徴とする請求項2のディスク記憶装置。
  4. 前記制御ユニットは、前記退避用コマンド管理テーブルに格納された前記コマンド管理情報を、前記コマンド管理テーブルから削除する
    ことを特徴とする請求項3のディスク記憶装置。
  5. 前記制御ユニットは、前記コマンド管理テーブルに格納された前記コマンド管理情報が、2つ以上登録されているかを判定し、前記コマンド管理情報が、2つ以上登録されている場合に、前記退避領域への格納処理を実行する
    ことを特徴とする請求項2のディスク記憶装置。
  6. 前記制御ユニットは、前記退避用コマンド管理テーブルに前記コマンド管理情報が登録されているかを判定し、前記退避用コマンド管理テーブルに前記コマンド管理情報が登録されている場合に、前記ディスクの前記退避領域から前記退避した前記退避用コマンド管理テーブルを読み出し、前記コマンド管理テーブルに、前記退避用コマンド管理テーブルの前記コマンド管理情報を登録し、前記コマンド管理情報に従い、前記記憶ディスクの退避領域に格納された前記ライトデータを前記記憶ディスクの指定された位置にライトすることを特徴とする請求項3のディスク記憶装置。
  7. 前記制御ユニットは、前記コマンド管理テーブルに登録された前記コマンド管理情報を、前記退避用コマンド管理テーブルから削除する
    ことを特徴とする請求項6のディスク記憶装置。
  8. 前記制御ユニットは、前記コマンド管理テーブルに格納された前記コマンド管理情報が、1つ登録されている場合に、前記コマンド管理情報に従い、前記ライトデータを前記記憶ディスクの指定された位置にライトする
    ことを特徴とする請求項5のディスク記憶装置。
  9. 記憶ディスクのトラックのデータを、ヘッドでリード及びライトのいずれかを行うディスク記憶装置のキャッシュ制御方法において、
    ホストからのライトコマンドに応じて、前記ホストからのライトデータをデータバッファに格納し、前記ホストに応答を返すステップと、
    パワーセーブコマンドを受信したことに応じて、前記データバッファ内の前記格納された前記ライトデータを、前記記憶ディスクに設けられた退避領域に格納し、前記パワーセーブコマンドを実行し、前記ホストに応答を報告するステップと、
    前記記憶ディスクの退避領域に格納された前記ライトデータを前記記憶ディスクの指定された位置にライトするステップとを有する
    ことを特徴とするディスク記憶装置のキャッシュ制御方法。
  10. 前記応答を返すステップは、前記ホストからのライトデータの書き込み位置を指定するコマンド管理情報をコマンド管理テーブルに格納するステップを更に有し、
    前記応答を報告するステップは、前記ライトデータとともに、前記コマンド管理情報を前記退避領域に格納するステップを更に有する
    ことを特徴とする請求項9のディスク記憶装置のキャッシュ制御方法。
JP2005286927A 2005-09-30 2005-09-30 ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法 Pending JP2007094995A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005286927A JP2007094995A (ja) 2005-09-30 2005-09-30 ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005286927A JP2007094995A (ja) 2005-09-30 2005-09-30 ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法

Publications (1)

Publication Number Publication Date
JP2007094995A true JP2007094995A (ja) 2007-04-12

Family

ID=37980603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005286927A Pending JP2007094995A (ja) 2005-09-30 2005-09-30 ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法

Country Status (1)

Country Link
JP (1) JP2007094995A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008149657A1 (ja) * 2007-06-05 2008-12-11 Nec Corporation 入出力制御システム、入出力制御方法、及び、入出力制御プログラム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07121306A (ja) * 1993-10-28 1995-05-12 Pfu Ltd ダミーシーク制御方式
JPH07248973A (ja) * 1994-03-11 1995-09-26 Pfu Ltd バックアップ処理方法
JPH0887366A (ja) * 1994-09-07 1996-04-02 Internatl Business Mach Corp <Ibm> データの損失を防ぐスタンバイ・チェックポイント
JPH0973704A (ja) * 1995-09-01 1997-03-18 Fujitsu Ltd 記憶装置
JPH10207588A (ja) * 1996-11-21 1998-08-07 Hitachi Ltd 情報処理装置
JPH11306674A (ja) * 1998-04-20 1999-11-05 Toshiba Corp ディスク記憶装置及び同装置に適用されるディスクライト制御方法
JP2000100054A (ja) * 1998-09-22 2000-04-07 Matsushita Electric Ind Co Ltd 二次記憶装置
JP2001014107A (ja) * 1999-06-14 2001-01-19 Internatl Business Mach Corp <Ibm> 復帰時間予測方法、復帰時間予測装置及びハードディスクドライブ

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07121306A (ja) * 1993-10-28 1995-05-12 Pfu Ltd ダミーシーク制御方式
JPH07248973A (ja) * 1994-03-11 1995-09-26 Pfu Ltd バックアップ処理方法
JPH0887366A (ja) * 1994-09-07 1996-04-02 Internatl Business Mach Corp <Ibm> データの損失を防ぐスタンバイ・チェックポイント
JPH0973704A (ja) * 1995-09-01 1997-03-18 Fujitsu Ltd 記憶装置
JPH10207588A (ja) * 1996-11-21 1998-08-07 Hitachi Ltd 情報処理装置
JPH11306674A (ja) * 1998-04-20 1999-11-05 Toshiba Corp ディスク記憶装置及び同装置に適用されるディスクライト制御方法
JP2000100054A (ja) * 1998-09-22 2000-04-07 Matsushita Electric Ind Co Ltd 二次記憶装置
JP2001014107A (ja) * 1999-06-14 2001-01-19 Internatl Business Mach Corp <Ibm> 復帰時間予測方法、復帰時間予測装置及びハードディスクドライブ

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008149657A1 (ja) * 2007-06-05 2008-12-11 Nec Corporation 入出力制御システム、入出力制御方法、及び、入出力制御プログラム
US8239634B2 (en) 2007-06-05 2012-08-07 Nec Corporation Input/output control based on information specifying input/output issuing source and input/output priority
JP5158576B2 (ja) * 2007-06-05 2013-03-06 日本電気株式会社 入出力制御システム、入出力制御方法、及び、入出力制御プログラム

Similar Documents

Publication Publication Date Title
US7320050B2 (en) Data transmission control method and storage device
JP4675881B2 (ja) 磁気ディスク装置およびその制御方法
US20060101174A1 (en) Media drive, and power saving method thereof
JP2009020986A (ja) ディスク・ドライブ装置及びディスク・ドライブ装置において不揮発性半導体メモリ領域上のデータを管理するテーブルを保存する方法
US7859784B2 (en) Data storage device and adjacent track rewrite processing method
KR101465099B1 (ko) 특정 조건을 갖는 파일을 신속하게 판독할 수 있는 하이브리드 하드디스크 드라이브, 이에 적합한 제어 방법 및 이에 적합한 기록 매체
JP2009110287A (ja) アクセス制御装置およびアクセス制御方法
US20100079904A1 (en) Storage control method, storage control unit and storage apparatus
US6957311B2 (en) Data storage apparatus, computer apparatus, data processing apparatus, and data processing method
JPH06236241A (ja) フラッシュメモリを用いたハードディスク装置
JPWO2009050765A1 (ja) 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置
US8117491B2 (en) Disk-drive device and method for error recovery thereof
US6567886B1 (en) Disk drive apparatus and control method thereof
US20040015878A1 (en) Reordering controller, reordering method and storage apparatus
US8320066B2 (en) Storage device and read/write processing method therefor
JP5030387B2 (ja) データ記憶装置
US7603517B2 (en) Disk storage device and cache control method for disk storage device
JP2007094995A (ja) ディスク記憶装置及びディスク記憶装置のキャッシュ制御方法
JP4919983B2 (ja) データ記憶装置及びデータ記憶装置におけるデータ管理方法
JP2006172032A (ja) データ記憶装置及びそのバッファ制御方法
JP2009087460A (ja) ディスク記憶装置のコマンド処理方法
JP2012038330A (ja) ハードディスクドライブ
JP2000222137A (ja) ディスク記憶装置及び同装置におけるバッファ制御方法
CN115116479A (zh) 磁盘装置
JP2011129221A (ja) 異なるサイズのデータ・セクタによるインターフェースをサポートするディスク・ドライブ及びそのユーザ・データのバックアップ方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20091022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110405