JPH1021012A - 磁気ディスク装置及び同装置のコマンド処理方法 - Google Patents

磁気ディスク装置及び同装置のコマンド処理方法

Info

Publication number
JPH1021012A
JPH1021012A JP8170414A JP17041496A JPH1021012A JP H1021012 A JPH1021012 A JP H1021012A JP 8170414 A JP8170414 A JP 8170414A JP 17041496 A JP17041496 A JP 17041496A JP H1021012 A JPH1021012 A JP H1021012A
Authority
JP
Japan
Prior art keywords
command
read
write
host system
address
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
JP8170414A
Other languages
English (en)
Inventor
Shuichi Ishii
周一 石井
Yasuhiko Ichikawa
靖彦 市川
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 JP8170414A priority Critical patent/JPH1021012A/ja
Priority to US08/764,862 priority patent/US5890210A/en
Publication of JPH1021012A publication Critical patent/JPH1021012A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】本発明はリードコマンドおよびライトコマンド
が交互に発行されるような状況においても、キャッシュ
機能が有効に働き、上記リードまたはライトコマンドを
高速に実行可能な磁気ディスク装置、及び同装置のコマ
ンド処理方法を提供することを目的とする。 【解決手段】HDC4はホストシステムからのリードコ
マンド発行時にバッファRAM3に対するアクセス開始
アドレスが設定され、当該リードコマンドによるアクセ
スアドレスを保持するリードアドレス保持レジスタ41
と、ホストシステムからのライトコマンド発行時にバッ
ファRAM3に対するアクセス開始アドレスが設定さ
れ、当該ライトコマンドによるアクセスアドレスを保持
するライトアドレス保持レジスタ42と、を具備してい
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ホストシステムか
らのコマンド処理およびデータ転送を制御するハードデ
ィスクコントローラ(HDC)を備えた磁気ディスク装
置、及び同装置のコマンド処理方法に関する。
【0002】
【従来の技術】従来から知られているこの種の磁気ディ
スク装置は、コンピュータの外部記憶装置として広く普
及している。磁気ディスク装置においては、回転する円
盤状の磁気ディスク(以下、メディアと称する)の半径
方向に向かって磁気ヘッドがシーク動作することにより
データ記録(または読み出し)が行なわれる。
【0003】ホストシステム(コンピュータ)によっ
て、磁気ディスク装置に対するリードコマンドまたはラ
イトコマンドが発行される。発行されたコマンドは、磁
気ディスク装置内のハードディスクコントローラ(Hard
Disk Controller: HDC)に送られる。このHDC
は、コマンドのアクセスアドレス、すなわち、送られて
きたコマンドが指定するアクセスを行うべきアドレス
(ここでは、シリンダ、ヘッド、セクタ(CHS) またはロ
ジカルアドレス(LBA) とする)を保持する。コマンド終
了時において、このアクセスアドレスは連続する次のア
ドレス値に更新されて保持される。
【0004】そして、新たに別のリードコマンドまたは
ライトコマンドが発行され、かつそのコマンドのアクセ
スアドレスが上記保持されたアドレスに一致する場合、
連続(シーケンシャル)なアクセスであることがHDC
によって判定される。これによりファームウェア(F
W)が介在しない自動的なコマンド実行(データ転送を
含む)を行うことができる。すなわちシーケンシャルな
アドレスに対して同一コマンドが継続して発行された場
合におけるコマンド実行の高速化が可能となる。このよ
うな高速化の手法は、一般に、シーケンシャルキャッシ
ュ機能と称されている。
【0005】ここで、シーケンシャルキャッシュ機能に
ついて具体的に説明する。例えばリードコマンドにおい
ては、まず最初にリードコマンドが発行され、メディア
に対するリード動作が開始される。メディアに記録され
ているデータは、リード動作によりバッファRAMに読
み込まれる。そして、目的のデータの読み込みを全て完
了した後も、連続したアドレスのデータがさらに継続し
て読み出される(先読み)。これにより、ホストシステ
ムからの連続したアドレスへのコマンド発行に対し、先
読みされたバッファRAMに格納されたリードデータを
連続的に転送することが可能となる。これにより、リー
ドコマンドを高速に実行することができる。
【0006】しかしながら、上述したような従来の磁気
ディスク装置におけるシーケンシャルキャッシュ機能に
は、次のような問題点がある。
【0007】異なるコマンドが発行された時点におい
て、直前のコマンド終了時におけるアドレスが消去さ
れ、この消去された領域に新たなアドレスが保持され
る。このため、例えば複数のリードコマンドが連続的に
HDCにより実行されている状態において、仮にライト
コマンドが一回実行されたとすると、最後のリードコマ
ンドが終了した時点で保持されているアドレスが消去さ
れ、新たにライトアドレスが保持されることになる。し
たがって、このライトコマンドの終了後に、再び今まで
の連続したリードアクセスの続きを行った場合、前回の
キャッシュ動作で既にリードデータがバッファRAM上
に存在しているにもかかわらず、アドレスが連続してい
るか否かを判定し得ない。このためシーケンシャルキャ
ッシュ機能が有効に働かず、再度新しくメディアからの
リード動作を開始しなければならない。したがって、コ
マンドの実行時間が大幅に増加してしまうという問題点
がある。
【0008】ところで、一連のアクセスアドレスが完全
には連続でない場合、例えばあるアドレスと次のアドレ
スとが比較的近接しているような場合においては、先読
みによってバッファRAM上にデータが転送済みであれ
ば、このデータを利用することにより、連続でないアド
レスへのコマンド発行に対するキャッシュが行われてい
る。
【0009】すなわち、連続でないアドレスに対しての
リードコマンド発行では、HDCによる自動実行が行え
ないためにFWが介在してコマンドを実行する。この
時、前回のアクセス終了アドレスと今回のアクセスアド
レスとが比較的近い場合では、既にバッファRAM上に
そのデータが読み出されているか、またはこれから直ち
に読み出されることから、FWによるバッファRAMデ
ータの管理によって高速にコマンド実行(データ転送)
を行うことができる。
【0010】また、以前に行ったリードコマンドの実行
により読み出されているデータがバッファRAMに残っ
て(残して)いる場合では、再度そのアドレスエリアに
対してリードコマンドが発行された場合は、メディアか
らのリード動作無しに即座にコマンド実行を行うことが
できる。
【0011】このような場合においても、次のような問
題がある。すなわち、上記したようにライトコマンドが
リードコマンドの間に一回でも実行されることにより、
バッファRAM上のリードデータが変更されているかど
うかを確認する必要が生じる。つまりバッファRAM上
に残っているリードデータのアドレス範囲に対して、ラ
イトコマンドにより書き換えられたデータのアドレス範
囲が含まれているか否かということである。ところが上
述したように、リードコマンドの間に実行された複数の
(シーケンシャルな)ライトコマンドが終了した時点に
おける保持アドレスは、次回のリードコマンドの発行に
より消去されてしまう。このため、ライトされたアドレ
ス範囲が不明となってしまい、結局、バッファRAM上
のリードデータを放棄しなければならず、効率の良いシ
ーケンシャルキャッシュが行えない。したがって、コマ
ンドの実行時間が大幅に増加してしまうという問題点が
ある。
【0012】
【発明が解決しようとする課題】そこで本発明は上記の
問題を解決するため、リードコマンドおよびライトコマ
ンドが交互に発行されるような状況においても、キャッ
シュ機能が有効に働き、上記リードまたはライトコマン
ドを高速に実行可能な磁気ディスク装置、及び同装置の
コマンド処理方法を提供することを目的とする。
【0013】
【課題を解決するための手段】本発明の請求項1に係る
磁気ディスク装置は、ホストシステムからのリードコマ
ンドまたはライトコマンドに応じて、磁気ディスクと前
記ホストシステムとの間で送受される情報を一時的に記
憶するバッファを有し、このバッファを用いてコントロ
ールプログラムの介入無しにホストシステムとのキャッ
シュ動作を行なう磁気ディスク装置において、前記ホス
トシステムからのリードコマンド受け付け時に、前記リ
ードコマンドのアクセス開始アドレスを保持し、前記ホ
ストシステムへの単位量のデータ送信毎に加算されるリ
ードアドレス保持レジスタと、前記ホストシステムから
のライトコマンド受け付け時に、前記ライトコマンドの
アクセス開始アドレスを保持し、前記ホストシステムか
らの単位量のデータ受信毎に加算されるライトアドレス
保持レジスタと、を具備し、前記リードアドレス保持レ
ジスタを用いたリードコマンドにおけるキャッシュ動作
と、前記ライトアドレス保持レジスタを用いたライトコ
マンドにおけるキャッシュ動作とが独立して行われるこ
とを特徴とする。
【0014】本発明の請求項2に係る磁気ディスク装置
は、ホストシステムからのリードコマンドまたはライト
コマンドに応じて、磁気ディスクと前記ホストシステム
との間で送受される情報を一時的に記憶するバッファを
有し、このバッファを用いてコントロールプログラムの
介入無しにホストシステムとのキャッシュ動作を行なう
磁気ディスク装置において、前記ホストシステムからの
リードコマンドまたはライトコマンド受け付け時に、前
記リードコマンドまたはライトコマンドのアクセス開始
アドレスを保持し、前記ホストシステムとの単位量のデ
ータ送受信毎に加算されるアドレス保持カウンタと、前
記リードコマンド終了時において、前記アドレス保持カ
ウンタの内容を保持するリードアドレス保持レジスタ
と、前記ライトコマンド終了時において、前記アドレス
保持カウンタの内容を保持するライトアドレス保持レジ
スタと、を具備し、前記リードアドレス保持レジスタを
用いたリードコマンドにおけるキャッシュ動作と、前記
ライトアドレス保持レジスタを用いたライトコマンドに
おけるキャッシュ動作とが独立して行われることを特徴
とする。
【0015】本発明の請求項3に係る磁気ディスク装置
は、ホストシステムからのリードコマンドまたはライト
コマンドに応じて、磁気ディスクと前記ホストシステム
との間で送受される情報を一時的に記憶するバッファを
有し、このバッファを用いてコントロールプログラムの
介入無しにホストシステムとのキャッシュ動作を行なう
磁気ディスク装置において、前記ホストシステムからの
リードコマンドまたはライトコマンド受け付け時に、前
記リードコマンドまたはライトコマンドのアクセス開始
アドレスを保持し、前記ホストシステムとの単位量のデ
ータ送受信毎に加算されるアドレス保持カウンタと、前
回のコマンドがリードコマンドであって、今回のコマン
ドがライトコマンドである場合に、前記アドレス保持カ
ウンタの内容を保持するリードアドレス保持レジスタ
と、前回のコマンドがライトコマンドであって、今回の
コマンドがリードコマンドである場合に、前記アドレス
保持カウンタの内容を保持するライトアドレス保持レジ
スタと、前記リードアドレス保持レジスタを用いたリー
ドコマンドにおけるキャッシュ動作と、前記ライトアド
レス保持レジスタを用いたライトコマンドにおけるキャ
ッシュ動作とが独立して行われることを特徴とする。
【0016】本発明の請求項5に係る磁気ディスク装置
のコマンド処理方法は、ホストシステムからのリードコ
マンドまたはライトコマンドに応じて、磁気ディスクと
前記ホストシステムとの間で送受される情報をバッファ
により一時的に記憶し、このバッファを用いてコントロ
ールプログラムの介入無しにホストシステムとのキャッ
シュ動作を行なう磁気ディスク装置のコマンド処理方法
において、前記ホストシステムからのリードコマンド受
け付け時に、前記リードコマンドのアクセス開始アドレ
スをリードアドレス保持レジスタにより保持し、前記ホ
ストシステムへの単位量のデータ送信毎に、該リードア
ドレス保持レジスタを加算するリードアドレス保持ステ
ップと、前記ホストシステムからのライトコマンド受け
付け時に、前記ライトコマンドのアクセス開始アドレス
をライトアドレス保持レジスタにより保持し、前記ホス
トシステムからの単位量のデータ受信毎に、該ライトア
ドレス保持レジスタを加算するライトアドレス保持ステ
ップと、を具備し、前記リードアドレス保持レジスタを
用いたリードコマンドにおけるキャッシュ動作と、前記
ライトアドレス保持レジスタを用いたライトコマンドに
おけるキャッシュ動作とが独立して行われることを特徴
とする。
【0017】本発明の請求項6に係る磁気ディスク装置
のコマンド処理方法は、ホストシステムからのリードコ
マンドまたはライトコマンドに応じて、磁気ディスクと
前記ホストシステムとの間で送受される情報をバッファ
により一時的に記憶し、このバッファを用いてコントロ
ールプログラムの介入無しにホストシステムとのキャッ
シュ動作を行なう磁気ディスク装置のコマンド処理方法
において、前記ホストシステムからのリードコマンドま
たはライトコマンド受け付け時に、前記リードコマンド
またはライトコマンドのアクセス開始アドレスをアドレ
ス保持カウンタにより保持し、前記ホストシステムとの
単位量のデータ送受信毎に該アドレス保持カウンタを加
算するアドレス保持ステップと、前記リードコマンド終
了時において、前記アドレス保持カウンタの内容をリー
ドアドレス保持レジスタにより保持するリードアドレス
保持ステップと、前記ライトコマンド終了時において、
前記アドレス保持カウンタの内容をライトアドレス保持
レジスタにより保持するライトアドレス保持ステップ
と、を具備し、前記リードアドレス保持レジスタを用い
たリードコマンドにおけるキャッシュ動作と、前記ライ
トアドレス保持レジスタを用いたライトコマンドにおけ
るキャッシュ動作とが独立して行われることを特徴とす
る。
【0018】本発明の請求項7に係る磁気ディスク装置
のコマンド処理方法は、ホストシステムからのリードコ
マンドまたはライトコマンドに応じて、磁気ディスクと
前記ホストシステムとの間で送受される情報をバッファ
により一時的に記憶し、このバッファを用いてコントロ
ールプログラムの介入無しにホストシステムとのキャッ
シュ動作を行なう磁気ディスク装置のコマンド処理方法
において、前記ホストシステムからのリードコマンドま
たはライトコマンド受け付け時に、前記リードコマンド
またはライトコマンドのアクセス開始アドレスをアドレ
ス保持カウンタにより保持し、前記ホストシステムとの
単位量のデータ送受信毎に該アドレス保持カウンタを加
算するアドレス保持ステップと、前回のコマンドがリー
ドコマンドであって、今回のコマンドがライトコマンド
である場合に、前記アドレス保持カウンタの内容をリー
ドアドレス保持レジスタにより保持するリードアドレス
保持ステップと、前回のコマンドがライトコマンドであ
って、今回のコマンドがリードコマンドである場合に、
前記アドレス保持カウンタの内容をライトアドレス保持
レジスタにより保持するライトアドレス保持ステップ
と、前記リードアドレス保持レジスタを用いたリードコ
マンドにおけるキャッシュ動作と、前記ライトアドレス
保持レジスタを用いたライトコマンドにおけるキャッシ
ュ動作とが独立して行われることを特徴とする。
【0019】
【発明の実施の形態】以下、図面を参照しながら、本発
明に係る磁気ディスク装置の第1〜第5実施形態を説明
する。
【0020】第1実施形態においては、シーケンシャル
なリードコマンドを処理し、続いてシーケンシャルなラ
イトコマンドを処理し、続いて前回のリードコマンドの
アクセスアドレスに対して連続するアドレスに対するリ
ードコマンドを処理する磁気ディスク装置について説明
する。
【0021】第2実施形態においては、上記リードコマ
ンドのアクセスアドレスが完全には連続でない場合にお
けるキャッシュ動作について説明する。
【0022】第3実施形態においては、第1または第2
実施形態におけるアドレス保持レジスタの構成の第1の
変形例について説明する。
【0023】第4実施形態においては、第1または第2
実施形態におけるアドレス保持レジスタの構成の第2の
変形例について説明する。
【0024】第5実施形態においては、ライトコマンド
を処理し、続いてリードコマンドを処理し、続いて前回
のライトコマンドのアクセスアドレスに対して連続する
アドレスに対するライトコマンドを処理する磁気ディス
ク装置について説明する。
【0025】(第1実施形態)図1は本発明の第1実施
形態に係る磁気ディスク装置の構成を概略的に示すブロ
ック図である。他の実施形態の説明において、本実施形
態と同一部分は、同一の参照符号を用いて説明する。1
はホスト側に設けられ、磁気ディスク装置に対するイン
ターフェイスを司るホストインターフェイスである。2
は、磁気ディスク装置側に設けられ、ホストに対するイ
ンターフェイスを司る磁気ディスク装置インターフェイ
スである。3は、ホストからのライトデータおよびメデ
ィアからのリードデータを一時的に保持するためのバッ
ファRAMである。
【0026】4は、ハードディスクコントローラ(HD
C)であって、ホストとの間のコマンド処理/データ転
送、リードライトチャンネルとの間のデータ転送、そし
てバッファRAMの管理、等を行うものである。このH
DC4は、ホストシステムにおいてライトコマンドが発
行されると、このライトコマンドに係るライトデータを
ホストシステムから受け取り、バッファRAMに一時保
存する機能およびバッファRAMに一時保存されたデー
タをリードライトチャネルに対し送信する機能を備えて
いる。また、ホストシステムにおいてリードコマンドが
発行されると、メディアから読み出されたデータをリー
ドライトチャネルから受け取り、バッファRAMに一時
保存する機能およびバッファRAMに保存されたデータ
をホストシステムに対して送信する機能を備えている。
【0027】ここでは、ホストシステムとバッファRA
Mとのデータ転送機能が、コントロールプログラムの介
入無しに全てHWにより行われ、またコマンドが発行さ
れたアドレスによっては、コントロールプログラム(フ
ァームウェア:FWとも称する)の介入無しに、コマン
ド受付、データ転送、コマンド終了までをハードウェア
(HW)によって行うHDCを対象としている。
【0028】5はCPUであって、磁気デイスク装置全
体の管理処理を行う。6はROMであって、CPU5の
実行プログラム、データテーブル等が記憶保持されてい
る。7はRAMであって、CPU5によるファームウェ
ア(FW)実行の際のデータワークエリアとして使用さ
れることがある。8はリードライトチャネルであって、
メディア9とのデータ入出力、信号処理等を行う。
【0029】ところで、バッファRAM3は、ホストシ
ステムからのリードコマンドまたはライトコマンドに応
じてメディア9とホストシステムとの間で送受される情
報を一時的に記憶するものであって、このバッファRA
M3を用いたキャッシュ動作が行われる。また、HDC
4は、前記ホストシステムからのリードコマンド発行時
に前記バッファRAM3に対するアクセス開始アドレス
が設定され、当該リードコマンドによるアクセスアドレ
スを保持するリードアドレス保持レジスタ41と、前記
ホストシステムからのライトコマンド発行時に前記バッ
ファRAM3に対するアクセス開始アドレスが設定さ
れ、当該ライトコマンドによるアクセスアドレスを保持
するライトアドレス保持レジスタ42と、を具備し、リ
ードアドレス保持レジスタ41を用いたリードコマンド
におけるキャッシュ動作と、ライトアドレス保持レジス
タ42を用いたライトコマンドにおけるキャッシュ動作
とが独立して行われるものとなっている。
【0030】このため、リードコマンドの次にライトコ
マンドが発行され、さらにリードコマンドが発行される
様なアクセスであっても、リードキャッシュ動作を停止
させずに高速にコマンド実行を可能とすることができ
る。
【0031】図2〜図6は、第1実施形態の動作を示す
フローチャートである。すなわち、第1実施形態におい
ては、図2及び図3に示すようにシーケンシャルなリー
ドコマンドを処理し、続いて図4及び図5に示すように
シーケンシャルなライトコマンドを処理し、続いて図6
に示すように前回のリードコマンドのアクセスアドレス
に対して連続するアドレスに対するリードコマンドを処
理するものとなっており、リードコマンドにおけるシー
ケンシャキャッシュ動作およびライトコマンドにおける
シーケンシャルライトキャッシュを行なうものとなって
いる。なお以降で説明する動作において、括弧書き内は
ステップの参照符号を示している。
【0032】まずホストシステムからホストインターフ
ェイス1および磁気ディスク装置インターフェイス2を
通じてリードコマンドが発行されると(H1)、HDC
4はアクセス開始アドレスをリードアドレス保持レジス
タ41に保存し(D1)、CPU5に対してコマンドが
発行された事を通知する(D2)。
【0033】CPU5は、その通知により、HDC4に
対してメディア9に対するリード動作(ディスクリー
ド)の開始を指示する(C1)。これによりバッファR
AM3に対するデータ転送が開始される(C2)。また
CPU5は、HDC4に対し、バッファRAM3からの
データ転送の開始を指示する(C3)。ただしHDC4
は、バッファRAM3に必要量のリードデータが存在し
なければ、ホストシステムへの転送を開始しない。
【0034】バッファRAMに必要量のリードデータか
ら読み出された時点から、HDC4は、ホストシステム
へのデータ転送を開始する(D4)。転送時は、1セク
タのデータが転送される度にリードアドレス保持レジス
タ41の値がインクリメント(増加)される(D6)。
ホストシステムからの要求セクタ数のデータ転送を完了
した時点(D8)においては、リードアドレス保持レジ
スタ41は、次の領域のアドレスを示している。なお、
HDC4はコマンド受付が可能な状態となる。
【0035】図3に示すように、ホストシステムから連
続したアドレスに対する次のリードコマンドが発行され
ると(H4)、HDC4はリードアドレス保持レジスタ
41とホストシステムからのアクセス開始アドレスとを
比較する(D9)。この場合は一致するため、CPU5
に対してコマンド受付を通知し(D10)、ホストシス
テムへのデータ転送を開始する。この時も同様にバッフ
ァRAM3に必要量のリードデータが読み出されるまで
は転送を開始しない。
【0036】バッファRAM3に必要量のリードデータ
が読み出された時点から、HDC4はホストシステムへ
のデータ転送を開始する(D11)。この場合も、転送
時は1セクタのデータが転送される度にリードアドレス
保持レジスタ41の値をインクリメントする(D1
3)。
【0037】ホストシステムからの要求セクタ数のデー
タ転送を完了(コマンド終了)した後は、リードアドレ
ス保持レジスタ41は次の領域のアドレスを示してお
り、HDC4はコマンド受付が可能な状態となる(D1
5)。なお、この時点においても、ディスクリードは続
行されている(C4〜C6)。
【0038】ここで、図4に示すようにホストシステム
においてライトコマンドが発行されると(H7)、HD
C4はアクセス開始アドレスをライトアドレス保持レジ
スタ42に保存し(D16)、CPU5に対してコマン
ドが発行された事を通知する(D17)。また同時に、
ホストシステムからのライトデータを、バッファRAM
3に転送することを開始する(D18)。転送時は、1
セクタのデータを受け取る度に、ライトアドレス保持レ
ジスタ42がインクリメントされる(D20)。
【0039】CPU5は、ライトコマンド発行の通知に
より、HDC4に対してメディア9からのディスクリー
ドの停止を指示する(C7)。この時、停止した時点ま
でバッファRAM3上に読み出されているデータ量(セ
クタ数)がRAM7に保存される(C8)。またCPU
5は、HDC4に対してメディア9に対するライト動作
の開始を指示し(C10)、バッファRAM3に転送さ
れているライトデータをメディア9上に転送することを
開始する(C11)。但しホストシステムからバッファ
RAM3に必要量のデータが転送されるまでは、メディ
ア9への書き込みは行わない。
【0040】ホストシステムからの要求量のデータを受
け取った後は、ライトアドレス保持レジスタ42は次の
領域のアドレスを示し、HDC4はコマンド受付が可能
な状態となる(D22)。
【0041】ここで、図5に示すようにホストシステム
から、連続したアドレスに対する次のライトコマンドが
発行されると(H10)、HDC4はライトアドレス保
持レジスタ42とホストシステムからのアクセス開始ア
ドレスとを比較する(D23)。この場合は一致するた
め、CPU5に対してコマンド受付を通知し(D2
4)、ホストシステムからのデータ転送を開始する(D
25)。この場合も、転送時は1セクタのデータを受け
取るたびに、ライトアドレス保持レジスタ42の値がイ
ンクリメントされる(D27)。
【0042】HDC4は、ステップC10で開始されて
いるメディア9への書き込み動作を続行しているため
(C12)、バッファRAM3にホストシステムからラ
イトデータが転送されると、メディア9へのデータ書き
込みを行う(C13)。
【0043】ホストシステムからの要求量のデータを受
け取った後は、ライトアドレス保持レジスタ42は次の
領域のアドレスを示している。なお、HDC4はコマン
ド受付が可能な状態となる(D29)。
【0044】続いて、図6に示すようにホストシステム
から、ステップH6でのリードコマンド完了時のアクセ
スアドレスAに対して連続するアドレスへのリードコマ
ンドが発行されると(H13)、HDC4はCPU5に
対してコマンド受付を通知する(D30)。この場合、
リードアドレス保持レジスタ41には、アクセス開始ア
ドレスをリードアドレス保持レジスタに保存しない。こ
れは、前回のコマンドがリードコマンドでなかったこと
を、HDC4が認識しているためである。
【0045】CPU5は、この通知によりホストシステ
ムにより発行されたリードコマンドのアクセス開始アド
レスと、リードアドレス保持レジスタ42とを比較する
(C14)。この場合は一致するため、CPU5はさら
にステップH7,H10の時点で発行されたライトコマ
ンドのライト範囲を調べる(C15)。このライト範囲
は、ステップH7の時点でのライト開始アドレスと、現
時点でのライトアドレス保持レジスタ42の値により判
断される。ここでは、ライト範囲はホストシステムから
のリード要求アドレスよりも前方にあるものとする(す
なわちバッファRAM3上のリードデータには影響がな
いものとする)。
【0046】CPU5は、HDC4に対してバッファR
AM3からのデータ転送の開始を指示する(C16)。
ただしHDC4は、バッファRAM3に必要量のリード
データが存在しなくなった時点で、ホストシステムへの
転送を中断する(データが新たに読み出されれば転送を
再開する)。この場合も同様に1セクタのデータが転送
される度にリードアドレス保持レジスタ41の値がイン
クリメントされる(D33)。
【0047】またCPU5は、HDC4に対してメディ
ア9へのライト動作の停止を指示する(C17)。但
し、バッファRAM3に保存されているライトデータが
メディア9に全て書き込まれるまでは停止されないもの
とする。ここではCPU5は、メディア9へのライト動
作の完了を待つものとする(C17)。
【0048】さらにCPU5は、バッファRAM3上に
読み出されたリードデータ量(ステップC8の時点でR
AM7に保存)を参照し、それ以降のアドレスに対して
HDC4に対してメディア9からのリード動作の開始を
指示する(C19)。ホストからの要求セクタ数のデー
タを転送した後は、リードアドレス保持レジスタ41は
次の領域のアドレスを示し、HDC4はコマンド受付が
可能な状態となる(D35)。
【0049】以上説明したように、第1実施形態によれ
ば、HDC4は「リードアドレス保持レジスタ41」と
ライトアドレス保持レジスタ42」とを有しているた
め、リードアドレス保持レジスタ41を用いたリードコ
マンドにおけるキャッシュ動作と、ライトアドレス保持
レジスタ42を用いたライトコマンドにおけるキャッシ
ュ動作とを独立して行なうことができる。このような構
成により、リードコマンドがシーケンシャルに発行され
ている途中にライトコマンドが発行され、再びシーケン
シャルなリードコマンドが発行されるような場合、バッ
ファRAM3上に既に読み出したリードデータが存在す
る場合は、メディア9へのリード動作を必要とせずに単
に上記リードデータを転送するだけで済む。したがっ
て、発行されたリードコマンドを高速に実行することが
可能となる。
【0050】(第2実施形態)第2実施形態は、第1実
施形態の変形例に係り、リードコマンドのアクセスアド
レスが完全には連続でない場合におけるキャッシュ動作
に関するものである。すなわち、第1実施形態の図6に
示したステップH13の代わりに、第2実施形態におい
ては、図7に示すようにホストシステムから、ステップ
H6でのリードコマンド完了時のアクセスアドレスAに
対して10セクタ後方のアドレスへのリードコマンドが
発行される(H100)。
【0051】HDC4はCPU5に対してコマンド受付
を通知する(D100)。この場合、リードアドレス保
持レジスタ41には、アクセス開始アドレスをリードア
ドレス保持レジスタに保存しない。これは、前回のコマ
ンドがリードコマンドでなかったことを、HDC4が認
識しているためである。
【0052】CPU5は、この通知によりホストシステ
ムにより発行されたリードコマンドのアクセス開始アド
レスと、リードアドレス保持レジスタ42とを比較する
(C100)。この場合は一致しないため、CPU5は
さらにリードアドレス保持レジスタ41とアクセス開始
アドレスの差を計算(C101)する。
【0053】続いてCPU5は、バッファRAM3に目
的アドレスのデータが存在するか否かを判定する(C1
02)。ここでYESの場合、リード要求範囲はライト
された範囲を含むかどうかを判定する(C110)。こ
こで、NOの場合は目的アドレスのデータが転送される
ように設定変更を行ない(C103)、図7に示すよう
にHDC4に対してホストデータの転送開始を指示する
(C104)。ただしHDC4は、バッファRAM3に
必要量のリードデータが存在しなくなった時点で、ホス
トシステムへの転送を中断する(データが新たに読み出
されれば転送を再開する)。この場合も同様に1セクタ
のデータが転送される度にリードアドレス保持レジスタ
41の値がインクリメントされる(D103)。
【0054】またCPU5は、HDC4に対してメディ
ア9へのライト動作の停止を指示する(C106)。但
し、バッファRAM3に保存されているライトデータが
メディア9に全て書き込まれるまでは停止されないもの
とする。ここではCPU5は、メディア9へのライト動
作の完了を待つものとする(C105)。
【0055】さらにCPU5は、バッファRAM3上に
読み出されたリードデータ量(ステップC8の時点でR
AM7に保存)を参照し、それ以降のアドレスに対して
HDC4に対してメディア9からのリード動作の開始を
指示する(C107)。ホストからの要求セクタ数のデ
ータを転送した後は、リードアドレス保持レジスタ41
は次の領域のアドレスを示し、HDC4はコマンド受付
が可能な状態となる(D105)。
【0056】以上説明したように、第2実施形態によれ
ば、リードコマンドのアクセスアドレスが完全には連続
でない場合であっても、かかるリードコマンドのアクセ
ス開始アドレスと、リードアドレス保持レジスタ42と
が比較され、さらにリードアドレス保持レジスタ41と
アクセス開始アドレスの差が計算され、バッファRAM
3に目的アドレスのデータが存在するか否かを判定され
る。さらに目的データが存在すると判定された場合は、
目的アドレスのデータが転送されるように適宜設定変更
が行われる。これにより、第1実施形態と同様に、HD
C4は「リードアドレス保持レジスタ41」と「ライト
アドレス保持レジスタ42」とを有しているため、リー
ドアドレス保持レジスタ41を用いたリードコマンドに
おけるキャッシュ動作と、ライトアドレス保持レジスタ
42を用いたライトコマンドにおけるキャッシュ動作と
を独立して行なうことができる。
【0057】このような構成により、リードコマンドが
シーケンシャルに発行されている途中にライトコマンド
が発行され、再びシーケンシャルなリードコマンドが発
行されるような場合、バッファRAM3上に既に読み出
したリードデータが存在する場合は、メディア9へのリ
ード動作を必要とせずに単に上記リードデータを転送す
るだけで済む。したがって、発行されたリードコマンド
を高速に実行することが可能となる。
【0058】(第3実施形態)第3実施形態は、第1ま
たは第2実施形態におけるアドレス保持レジスタの構成
の第1の変形例に関するものである。図9〜図13は第
3実施形態の動作を示すフローチャートである。このよ
うな第3実施形態の動作は、アドレス保持レジスタの構
成の相違を除いては第1実施形態のものと同様である。
すなわち、図9及び図10に示すようにシーケンシャル
なリードコマンドを処理し、続いて11及び図12に示
すようにシーケンシャルなライトコマンドを処理し、続
いて図13に示すように前回のリードコマンドのアクセ
スアドレスに対して連続するアドレスに対するリードコ
マンドを処理するものとなっている。
【0059】まずホストシステムからホストインターフ
ェイス1および磁気ディスク装置インターフェイス2を
通じてリードコマンドが発行されると(H200)、H
DC4はアクセス開始アドレスをアドレス保持カウンタ
(不図示)に転送し(D200)、CPU5に対してコ
マンドが発行された事を通知する(D201)。
【0060】CPU5は、その通知により、HDC4に
対してメディア9に対するリード動作(ディスクリー
ド)の開始を指示する(C200)。これによりバッフ
ァRAM3に対するデータ転送が開始される(C20
2)。またCPU5は、HDC4に対し、バッファRA
M3からのデータ転送の開始を指示する(C201)。
ただしHDC4は、バッファRAM3に必要量のリード
データが存在しなければ、ホストシステムへの転送を開
始しない。
【0061】バッファRAMに必要量のリードデータか
ら読み出された時点から、HDC4は、ホストシステム
へのデータ転送を開始する(D203)。転送時は、1
セクタのデータが転送される度にアドレス保持カウンタ
の値がインクリメント(増加)される(D205)。ホ
ストシステムからの要求セクタ数のデータ転送を完了し
た時点において、アドレス保持カウンタの内容がリード
アドレス保持レジスタ41に転送される。リードアドレ
ス保持レジスタ41は、次の領域のアドレスを示してい
る。なお、HDC4はコマンド受付が可能な状態とな
る。
【0062】図10に示すように、ホストシステムから
連続したアドレスに対する次のリードコマンドが発行さ
れると(H204)、HDC4はアクセス開始アドレス
をアドレス保持カウンタに転送し、リードアドレス保持
レジスタ41とホストシステムからのアクセス開始アド
レスとを比較する(D210)。この場合は一致するた
め、CPU5に対してコマンド受付を通知し(D21
1)、ホストシステムへのデータ転送を開始する。この
時も同様にバッファRAM3に必要量のリードデータが
読み出されるまでは転送を開始しない。
【0063】バッファRAM3に必要量のリードデータ
が読み出された時点から、HDC4はホストシステムへ
のデータ転送を開始する(D212)。この場合も、転
送時は1セクタのデータが転送される度にアドレス保持
カウンタの値をインクリメントする(D214)。ホス
トシステムからの要求セクタ数のデータ転送を完了(コ
マンド終了)した後は、アドレス保持カウンタの内容が
リードアドレス保持レジスタ41に転送される。ここ
で、リードアドレス保持レジスタ41は次の領域のアド
レスを示しており、HDC4はコマンド受付が可能な状
態となる(D216)。なお、この時点においても、デ
ィスクリードは続行されている(C203〜C20
5)。
【0064】ここで、図11に示すようにホストシステ
ムにおいてライトコマンドが発行されると(H20
7)、HDC4はアクセス開始アドレスをアドレス保持
カウンタに転送し(D218)、CPU5に対してコマ
ンドが発行された事を通知する(D219)。また同時
に、ホストシステムからのライトデータを、バッファR
AM3に転送することを開始する(D220)。転送時
は、1セクタのデータを受け取る度に、アドレス保持カ
ウンタがインクリメントされる(D222)。
【0065】CPU5は、ライトコマンド発行の通知に
より、HDC4に対してメディア9からのディスクリー
ドの停止を指示する(C206)。この時、停止した時
点までバッファRAM3上に読み出されているデータ量
(セクタ数)がRAM7に保存される(C207)。ま
たCPU5は、HDC4に対してメディア9に対するラ
イト動作の開始を指示し(C209)、バッファRAM
3に転送されているライトデータをメディア9上に転送
することを開始する(C210)。但しホストシステム
からバッファRAM3に必要量のデータが転送されるま
では、メディア9への書き込みは行わない。
【0066】ホストシステムからの要求量のデータを受
け取った後は、アドレス保持カウンタの内容がライトア
ドレス保持レジスタ42に転送される。このライトアド
レス保持レジスタ42は次の領域のアドレスを示し、H
DC4はコマンド受付が可能な状態となる(D22
5)。
【0067】ここで、図12に示すようにホストシステ
ムから、連続したアドレスに対する次のライトコマンド
が発行されると(H210)、HDC4はアクセス開始
アドレスをアドレス保持カウンタに転送し(D22
6)、ライトアドレス保持レジスタ42とホストシステ
ムからのアクセス開始アドレスとを比較する(D22
7)。この場合は一致するため、CPU5に対してコマ
ンド受付を通知し(D228)、ホストシステムからの
データ転送を開始する(D229)。この場合も、転送
時は1セクタのデータを受け取るたびに、アドレス保持
カウンタの値がインクリメントされる(D231)。
【0068】HDC4は、ステップC209で開始され
ているメディア9への書き込み動作を続行しているため
(C211)、バッファRAM3にホストシステムから
ライトデータが転送されると、メディア9へのデータ書
き込みを行う(C222)。
【0069】ホストシステムからの要求量のデータを受
け取った後は、アドレス保持カウンタの内容がライトア
ドレス保持レジスタ42に転送される。このライトアド
レス保持レジスタ42は次の領域のアドレスを示してい
る。なお、HDC4はコマンド受付が可能な状態となる
(D234)。続いて、図13に示すようにホストシス
テムから、ステップH206でのリードコマンド完了時
のアクセスアドレスに対して連続するアドレスへのリー
ドコマンドが発行されると(H213)、HDC4は、
アクセス開示アドレスをアドレス保持カウンタに転送し
(D235)、CPU5に対してコマンド受付を通知す
る(D236)。
【0070】CPU5は、この通知によりホストシステ
ムにより発行されたリードコマンドのアクセス開始アド
レスと、リードアドレス保持レジスタ42とを比較する
(C223)。この場合は一致するため、CPU5はさ
らにステップH207,H210の時点で発行されたラ
イトコマンドのライト範囲を調べる(C224)。この
ライト範囲は、ステップH207の時点でのライト開始
アドレスと、現時点でのライトアドレス保持レジスタ4
2の値により判断される。ここでは、ライト範囲はホス
トシステムからのリード要求アドレスよりも前方にある
ものとする(すなわちバッファRAM3上のリードデー
タには影響がないものとする)。
【0071】CPU5は、HDC4に対してバッファR
AM3からのデータ転送の開始を指示する(C22
5)。ただしHDC4は、バッファに必要量のリードデ
ータが存在しなくなった時点で、ホストシステムへの転
送を中断する(データが新たに読み出されれば転送を再
開する)。この場合も同様に1セクタのデータが転送さ
れる度にアドレス保持カウンタの値がインクリメントさ
れる(D239)。
【0072】CPU5は、HDC4に対してメディア9
へのライト動作の停止を指示する(C227)。但し、
バッファRAM3に保存されているライトデータがメデ
ィア9に全て書き込まれるまでは停止されないものとす
る。ここではCPU5は、メディア9へのライト動作の
完了を待つものとする(C226)。またCPU5は、
ステップC207の時点でRAM7に保存されている、
バッファRAM3上に読み出されているリードデータ量
を参照し、それ以降のアドレスに対してHDC4に対し
てメディア9からのリード動作の開始を指示する(C2
29)。
【0073】ホストからの要求セクタ数のデータを転送
した後は、アドレス保持カウンタの内容がリードアドレ
ス保持レジスタ41に転送される。このリードアドレス
保持レジスタ41は次の領域のアドレスを示し、HDC
4はコマンド受付が可能な状態となる(D242)。
【0074】以上説明したように、第3実施形態によれ
ば、HDC4はホストシステムからのリードコマンドま
たはライトコマンドによるバッファRAM3に対するア
クセスアドレスを保持するアドレス保持カウンタと、リ
ードコマンドの終了時において、アドレス保持カウンタ
の内容を保持するリードアドレス保持レジスタ41と、
ライトコマンドの終了時において、アドレス保持カウン
タの内容を保持するライトアドレス保持レジスタ42
と、を有しており、アドレス保持カウンタおよびリード
アドレス保持レジスタ41を用いたリードコマンドにお
けるキャッシュ動作と、アドレス保持カウンタおよびラ
イトアドレス保持レジスタ42を用いたライトコマンド
におけるキャッシュ動作とを独立して行なうことができ
る。
【0075】このような構成により、リードコマンドが
シーケンシャルに発行されている途中にライトコマンド
が発行され、再びシーケンシャルなリードコマンドが発
行されるような場合、バッファRAM3上に既に読み出
したリードデータが存在する場合は、メディア9へのリ
ード動作を必要とせずに単に上記リードデータを転送す
るだけで済む。したがって、発行されたリードコマンド
を高速に実行することが可能となる。
【0076】(第4実施形態)第4実施形態は、第1ま
たは第2実施形態におけるアドレス保持レジスタの構成
の第2の変形例に関するものである。図14〜図18は
第4実施形態の動作を示すフローチャートである。この
ような第4実施形態の動作は、アドレス保持レジスタの
構成の相違を除いては第1実施形態のものと同様であ
る。すなわち、図14及び図15に示すようにシーケン
シャルなリードコマンドを処理し、続いて16及び図1
7に示すようにシーケンシャルなライトコマンドを処理
し、続いて図18に示すように前回のリードコマンドの
アクセスアドレスに対して連続するアドレスに対するリ
ードコマンドを処理するものとなっている。
【0077】まずホストシステムからホストインターフ
ェイス1および磁気ディスク装置インターフェイス2を
通じてリードコマンドが発行されると(H300)、H
DC4はアクセス開始アドレスをアドレス保持カウンタ
(不図示)に転送し(D300)、CPU5に対してコ
マンドが発行された事を通知する(D301)。
【0078】CPU5は、その通知により、HDC4に
対してメディア9に対するリード動作(ディスクリー
ド)の開始を指示する(C300)。これによりバッフ
ァRAM3に対するデータ転送が開始される(C30
2)。またCPU5は、HDC4に対し、バッファRA
M3からのデータ転送の開始を指示する(C301)。
ただしHDC4は、バッファRAM3に必要量のリード
データが存在しなければ、ホストシステムへの転送を開
始しない。
【0079】バッファRAMに必要量のリードデータか
ら読み出された時点から、HDC4は、ホストシステム
へのデータ転送を開始する(D303)。転送時は、1
セクタのデータが転送される度にアドレス保持カウンタ
の値がインクリメント(増加)される(D305)。ホ
ストシステムからの要求セクタ数のデータ転送を完了し
た時点においてリードアドレス保持レジスタ41は、次
の領域のアドレスを示している。なお、HDC4はコマ
ンド受付が可能な状態となる(307)。
【0080】図14に示すように、ホストシステムから
連続したアドレスに対する次のリードコマンドが発行さ
れると(H303)、HDC4はホストシステムからの
アクセス開始アドレスとアドレス保持カウンタとを比較
する(D308)。ここで、アドレスが一致しない場合
は、アクセス開始アドレスをアドレス保持カウンタに転
送する(D309)、また一致する場合は、CPU5に
対してコマンド受付を通知し(D310)、ホストシス
テムへのデータ転送を開始する。この時も同様にバッフ
ァRAM3に必要量のリードデータが読み出されるまで
は転送を開始しない。
【0081】バッファRAM3に必要量のリードデータ
が読み出された時点から、HDC4はホストシステムへ
のデータ転送を開始する(D311)。この場合も、転
送時は1セクタのデータが転送される度にアドレス保持
カウンタの値をインクリメントする(D313)。ホス
トシステムからの要求セクタ数のデータ転送を完了(コ
マンド終了)した後は、HDC4はコマンド受付が可能
な状態となる(D315)。なお、この時点において
も、ディスクリードは続行されている(C303〜C3
04)。
【0082】ここで、図16に示すようにホストシステ
ムにおいてライトコマンドが発行されると(H30
6)、HDC4は、アドレス保持カウンタの内容をリー
ドアドレス保持レジスタ41に転送し(D316)、ア
クセス開始アドレスをアドレス保持カウンタに転送し
(D317)、さらにCPU5に対してコマンドが発行
された事を通知する(D318)。また同時に、ホスト
システムからのライトデータを、バッファRAM3に転
送することを開始する(D319)。転送時は、1セク
タのデータを受け取る度に、アドレス保持カウンタがイ
ンクリメントされる(D321)。
【0083】CPU5は、ライトコマンド発行の通知に
より、HDC4に対してメディア9からのディスクリー
ドの停止を指示する(C306)。この時、停止した時
点までバッファRAM3上に読み出されているデータ量
(セクタ数)がRAM7に保存される(C307)。ま
たCPU5は、HDC4に対してメディア9に対するラ
イト動作の開始を指示し(C309)、バッファRAM
3に転送されているライトデータをメディア9上に転送
することを開始する(C310)。但しホストシステム
からバッファRAM3に必要量のデータが転送されるま
では、メディア9への書き込みは行わない。ホストシス
テムからの要求量のデータを受け取った後は、HDC4
はコマンド受付が可能な状態となる(D323)。
【0084】ここで、図17に示すようにホストシステ
ムから、連続したアドレスに対する次のライトコマンド
が発行されると(H309)、HDC4はライトアドレ
ス保持レジスタ42とホストシステムからのアクセス開
始アドレスとを比較する(D324)。ここでアドレス
が一致しない場合は、アクセス開始アドレスをアドレス
保持カウンタに転送し(D325)、一致する場合は、
CPU5に対してコマンド受付を通知し(D326)、
ホストシステムからのデータ転送を開始する(D32
7)。この場合も、転送時は1セクタのデータを受け取
るたびに、アドレス保持カウンタの値がインクリメント
される(D329)。
【0085】HDC4は、ステップC209で開始され
ているメディア9への書き込み動作を続行しているため
(C311)、バッファRAM3にホストシステムから
ライトデータが転送されると、メディア9へのデータ書
き込みを行う(C312)。
【0086】ホストシステムからの要求量のデータを受
け取った後は、HDC4はコマンド受付が可能な状態と
なる(D331)。
【0087】続いて、図18に示すようにホストシステ
ムから、ステップH305でのリードコマンド完了時の
アクセスアドレスに対して連続するアドレスへのリード
コマンドが発行されると(H312)、HDC4は、ア
ドレス保持カウンタをライトアドレス保持レジスタ42
に転送し(D332)、アクセス開示アドレスをアドレ
ス保持カウンタに転送し(D333)、CPU5に対し
てコマンド受付を通知する(D334)。
【0088】CPU5は、この通知によりホストシステ
ムにより発行されたリードコマンドのアクセス開始アド
レスと、リードアドレス保持レジスタ42とを比較する
(C313)。この場合は一致するため、CPU5はさ
らにステップH306,H309の時点で発行されたラ
イトコマンドのライト範囲を調べる(C314)。この
ライト範囲は、ステップH306の時点でのライト開始
アドレスと、現時点でのライトアドレス保持レジスタ4
2の値により判断される。ここでは、ライト範囲はホス
トシステムからのリード要求アドレスよりも前方にある
ものとする(すなわちバッファRAM3上のリードデー
タには影響がないものとする)。またCPU5は、HD
C4に対してバッファRAM3からのデータ転送の開始
を指示する(C315)。ただしHDC4は、バッファ
に必要量のリードデータが存在しなくなった時点で、ホ
ストシステムへの転送を中断する(データが新たに読み
出されれば転送を再開する)。この場合も同様に1セク
タのデータが転送される度にアドレス保持カウンタの値
がインクリメントされる(D337)。
【0089】さらにCPU5は、HDC4に対してメデ
ィア9へのライト動作の停止を指示する(C317)。
但し、バッファRAM3に保存されているライトデータ
がメディア9に全て書き込まれるまでは停止されないも
のとする。ここではCPU5は、メディア9へのライト
動作の完了を待つものとする(C316)。
【0090】さらにCPU5は、ステップC307の時
点でRAM7に保存されている、バッファRAM3上に
読み出されているリードデータ量を参照し、それ以降の
アドレスに対してHDC4に対してメディア9からのリ
ード動作の開始を指示する(C319)。
【0091】ホストからの要求セクタ数のデータを転送
した後は、HDC4はコマンド受付が可能な状態となる
(D339)。
【0092】以上説明したように、第4実施形態によれ
ば、HDC4はホストシステムからのリードコマンドま
たはライトコマンドによるバッファRAM3に対するア
クセスアドレスを保持するアドレス保持カウンタと、前
回のコマンドがリードコマンドであって、今回のコマン
ドがライトコマンドである場合に、アドレス保持カウン
タの内容を保持するリードアドレス保持レジスタ41
と、前回のコマンドがライトコマンドであって、今回の
コマンドがリードコマンドである場合に、アドレス保持
カウンタの内容を保持するライトアドレス保持レジスタ
42と、を有しており、アドレス保持カウンタおよびリ
ードアドレス保持レジスタ41を用いたリードコマンド
におけるキャッシュ動作と、アドレス保持カウンタおよ
びライトアドレス保持レジスタ42を用いたライトコマ
ンドにおけるキャッシュ動作とを独立して行なうことが
できる。
【0093】このような構成により、リードコマンドが
シーケンシャルに発行されている途中にライトコマンド
が発行され、再びシーケンシャルなリードコマンドが発
行されるような場合、バッファRAM3上に既に読み出
したリードデータが存在する場合は、メディア9へのリ
ード動作を必要とせずに単に上記リードデータを転送す
るだけで済む。したがって、発行されたリードコマンド
を高速に実行することが可能となる。
【0094】(第5実施形態)図19〜図21は、第5
実施形態の動作を示すフローチャートである。すなわ
ち、第5実施形態においては、図19に示すようにライ
トコマンドを処理し、続いて図20に示すようにリード
コマンドを処理し、続いて図21に示すように前回のラ
イトコマンドのアクセスアドレスに対して連続するアド
レスに対するライトコマンドを処理するものとなってお
り、ライトコマンドにおけるシーケンシャルライトキャ
ッシュを行なうものとなっている。なお以降で説明する
動作において、括弧書き内はステップの参照符号を示し
ている。
【0095】まず図19に示すようにホストシステムに
おいてライトコマンドが発行されると(H400)、H
DC4はアクセス開始アドレスをライトアドレス保持レ
ジスタ42に保存し(D400)、CPU5に対してコ
マンドが発行された事を通知する(D401)。また同
時に、ホストシステムからのライトデータを、バッファ
RAM3に転送することを開始する(D402)。転送
時は、1セクタのデータを受け取る度に、ライトアドレ
ス保持レジスタ42がインクリメントされる(D40
4)。
【0096】CPU5は、ライトコマンド発行の通知に
より、メディア9に対するディスクライトの開始を指示
し(C400)、バッファRAM3に転送されているラ
イトデータをメディア9上に転送開始を指示する(C4
01)。但しホストシステムからバッファRAM3に必
要量のデータが転送されるまでは、メディア9への書き
込みは行わない。ホストシステムからの要求量のデータ
を受け取った後は、ライトアドレス保持レジスタ42は
次の領域のアドレスを示し、HDC4はコマンド受付が
可能な状態となる(D406)。
【0097】ここで、図20に示すようにリードコマン
ドが発行されると(H403)、HDC4はアクセス開
始アドレスをリードアドレス保持レジスタ41に保存し
(D407)、CPU5に対してコマンドが発行された
事を通知する(D408)。
【0098】CPU5は、その通知により、バッファR
AM3に目的のデータが存在するか否かを判定する(4
02)。ここでは目的データの存在が判定される。な
お、ディスクライトは続行している(C403)。また
CPU5は、メディア9から読み出したデータのバッフ
ァRAM3への転送開始を指示する(C404)。
【0099】HDC4は、ホストシステムへのデータ転
送を開始する(D409)。転送時は、1セクタのデー
タが転送される度にリードアドレス保持レジスタ41の
値がインクリメント(増加)される(D411)。ホス
トシステムからの要求セクタ数のデータ転送を完了した
時点(D413)においては、リードアドレス保持レジ
スタ41は、次の領域のアドレスを示している。なお、
HDC4はコマンド受付が可能な状態となる。なお、こ
の時点においてもディスクライトは続行している(C4
05)。
【0100】続いて図21に示すように、ホストシステ
ムから、連続したアドレスに対する次のライトコマンド
が発行されると(H406)、HDC4はライトアドレ
ス保持レジスタ42とホストシステムからのアクセス開
始アドレスとを比較する(D414)。この場合は一致
するため、CPU5に対してコマンド受付を通知し(D
415)、ホストシステムからのデータ転送を開始する
(D416)。この場合も、転送時は1セクタのデータ
を受け取るたびに、ライトアドレス保持レジスタ42の
値がインクリメントされる(D418)。
【0101】HDC4は、ステップC4000で開始さ
れているメディア9への書き込み動作を続行している
(C406)。
【0102】第5実施形態によれば、ライトコマンドが
シーケンシャルに発行されている途中にリードコマンド
が発行され、再びシーケンシャルなライトコマンドが発
行されるような場合において、「リードアドレス保持レ
ジスタ41」とライトアドレス保持レジスタ42」とを
有しているため、リードアドレス保持レジスタ41を用
いたリードコマンドにおけるキャッシュ動作と、ライト
アドレス保持レジスタ42を用いたライトコマンドにお
けるキャッシュ動作とを独立して行なうことができる。
【0103】すなわちここでは、上記リードアドレス保
持レジスタ41及びライトアドレス保持レジスタ42を
用いることによりバッファRAM3上に所望のリードデ
ータが格納されているか否かを判定可能となる。したが
って、所望のリードデータが格納されていると判定され
れば、このリードデータの転送を、メディア9へのライ
ト動作とは独立して行なうことができ、メディア9への
ライト動作を停止させる必要がない。このためリードコ
マンドおよびライトコマンドを高速に実行することがで
きる。
【0104】第1〜第5実施形態によれば、リードコマ
ンドおよびライトコマンドとの間でアドレス保持レジス
タが共通であって、且つリードコマンドとライトコマン
ドとが交互に発行されるような場合において発生し得る
キャッシュ機能不全を回避できる。すなわち、リードコ
マンドおよびライトコマンドはアドレス保持レジスタを
個別に有しているので、コマンドの切り替わり(リード
→ライトまたはライト→リード)の時点において、直前
のコマンドアドレス内容、すなわちアドレス保持レジス
タの内容が消去され、これにより、キャッシュヒットが
可能なデータがバッファRAM上に存在しているにも拘
らずそのデータを活用し得ず、メディアに対する新規の
アクセス動作が必要になるということがない。したがっ
て、キャッシュ機能が有効に働くようになり、メディア
に対するデータアクセス時間を減らすことができ、これ
によりコマンド実行時間を短縮することができる。
【0105】なお本発明は上述した実施形態に限定され
ず、種々変形して実施可能である。例えば、上記第1実
施形態及び第3〜第5実施形態においては、シーケンシ
ャルキャッシュを行なう場合について説明したが、シー
ケンシャルキャッシュを行わない場合についても本発明
は実施可能である。例えば、リードコマンドおよびライ
トコマンドとがアドレス保持レジスタを個別に有し、コ
マンドの切り替わり(リード→ライトまたはライト→リ
ード)の時点で前回のコマンドアドレス内容、すなわち
アドレス保持レジスタの内容が消去されないように構成
する。これにより例えばライトコマンドの直後にリード
コマンドが発行された場合に、当該リードコマンドのコ
マンドアドレスが上記ライトコマンドのコマンドアドレ
スと同一か否かを判定可能となる。これによりバッファ
RAM上のライトデータをそのままリードデータとして
ホストに対し即座に転送させることができる。したがっ
て、リードコマンドを高速に実行できる。
【0106】
【発明の効果】以上説明したように本発明によれば、リ
ードコマンドおよびライトコマンドが交互に発行される
ような状況においても、キャッシュ機能が有効に働き、
上記リードまたはライトコマンドを高速に実行可能な磁
気ディスク装置、及び同装置のコマンド処理方法を提供
できる。
【図面の簡単な説明】
【図1】本発明による磁気ディスク装置の実施形態の概
略構成を示すブロック図。
【図2】第1実施形態の動作を示すフローチャート。
【図3】第1実施形態の動作を示すフローチャート。
【図4】第1実施形態の動作を示すフローチャート。
【図5】第1実施形態の動作を示すフローチャート。
【図6】第1実施形態の動作を示すフローチャート。
【図7】第2実施形態の動作を示すフローチャート。
【図8】第2実施形態の動作を示すフローチャート。
【図9】第3実施形態の動作を示すフローチャート。
【図10】第3実施形態の動作を示すフローチャート。
【図11】第3実施形態の動作を示すフローチャート。
【図12】第3実施形態の動作を示すフローチャート。
【図13】第3実施形態の動作を示すフローチャート。
【図14】第4実施形態の動作を示すフローチャート。
【図15】第4実施形態の動作を示すフローチャート。
【図16】第4実施形態の動作を示すフローチャート。
【図17】第4実施形態の動作を示すフローチャート。
【図18】第4実施形態の動作を示すフローチャート。
【図19】第5実施形態の動作を示すフローチャート。
【図20】第5実施形態の動作を示すフローチャート。
【図21】第5実施形態の動作を示すフローチャート。
【符号の説明】
1…ホストインターフェイス 2…磁気ディスク装置インターフェイス 3…バッファRAM 4…HDC 5…CPU 6…ROM 7…RAM 8…リードライトチャネル 9…メディア 41…リードアドレス保持レジスタ 42…ライトアドレス保持レジスタ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 ホストシステムからのリードコマンドま
    たはライトコマンドに応じて、磁気ディスクと前記ホス
    トシステムとの間で送受される情報を一時的に記憶する
    バッファを有し、このバッファを用いてコントロールプ
    ログラムの介入無しにホストシステムとのキャッシュ動
    作を行なう磁気ディスク装置において、 前記ホストシステムからのリードコマンド受け付け時
    に、前記リードコマンドのアクセス開始アドレスを保持
    し、前記ホストシステムへの単位量のデータ送信毎に加
    算されるリードアドレス保持レジスタと、 前記ホストシステムからのライトコマンド受け付け時
    に、前記ライトコマンドのアクセス開始アドレスを保持
    し、前記ホストシステムからの単位量のデータ受信毎に
    加算されるライトアドレス保持レジスタと、を具備し、 前記リードアドレス保持レジスタを用いたリードコマン
    ドにおけるキャッシュ動作と、前記ライトアドレス保持
    レジスタを用いたライトコマンドにおけるキャッシュ動
    作とが独立して行われることを特徴とする磁気ディスク
    装置。
  2. 【請求項2】 ホストシステムからのリードコマンドま
    たはライトコマンドに応じて、磁気ディスクと前記ホス
    トシステムとの間で送受される情報を一時的に記憶する
    バッファを有し、このバッファを用いてコントロールプ
    ログラムの介入無しにホストシステムとのキャッシュ動
    作を行なう磁気ディスク装置において、 前記ホストシステムからのリードコマンドまたはライト
    コマンド受け付け時に、前記リードコマンドまたはライ
    トコマンドのアクセス開始アドレスを保持し、前記ホス
    トシステムとの単位量のデータ送受信毎に加算されるア
    ドレス保持カウンタと、 前記リードコマンド終了時において、前記アドレス保持
    カウンタの内容を保持するリードアドレス保持レジスタ
    と、 前記ライトコマンド終了時において、前記アドレス保持
    カウンタの内容を保持するライトアドレス保持レジスタ
    と、を具備し、 前記リードアドレス保持レジスタを用いたリードコマン
    ドにおけるキャッシュ動作と、前記ライトアドレス保持
    レジスタを用いたライトコマンドにおけるキャッシュ動
    作とが独立して行われることを特徴とする磁気ディスク
    装置。
  3. 【請求項3】 ホストシステムからのリードコマンドま
    たはライトコマンドに応じて、磁気ディスクと前記ホス
    トシステムとの間で送受される情報を一時的に記憶する
    バッファを有し、このバッファを用いてコントロールプ
    ログラムの介入無しにホストシステムとのキャッシュ動
    作を行なう磁気ディスク装置において、 前記ホストシステムからのリードコマンドまたはライト
    コマンド受け付け時に、前記リードコマンドまたはライ
    トコマンドのアクセス開始アドレスを保持し、前記ホス
    トシステムとの単位量のデータ送受信毎に加算されるア
    ドレス保持カウンタと、 前回のコマンドがリードコマンドであって、今回のコマ
    ンドがライトコマンドである場合に、前記アドレス保持
    カウンタの内容を保持するリードアドレス保持レジスタ
    と、 前回のコマンドがライトコマンドであって、今回のコマ
    ンドがリードコマンドである場合に、前記アドレス保持
    カウンタの内容を保持するライトアドレス保持レジスタ
    と、 前記リードアドレス保持レジスタを用いたリードコマン
    ドにおけるキャッシュ動作と、前記ライトアドレス保持
    レジスタを用いたライトコマンドにおけるキャッシュ動
    作とが独立して行われることを特徴とする磁気ディスク
    装置。
  4. 【請求項4】前記リードコマンドあるいはライトコマン
    ドのアクセスアドレスは、シリンダ・ヘッド・セクタア
    ドレスまたはロジカルアドレスであることを特徴とする
    請求項1又は2又は3に記載の磁気ディスク装置。
  5. 【請求項5】 ホストシステムからのリードコマンドま
    たはライトコマンドに応じて、磁気ディスクと前記ホス
    トシステムとの間で送受される情報をバッファにより一
    時的に記憶し、このバッファを用いてコントロールプロ
    グラムの介入無しにホストシステムとのキャッシュ動作
    を行なう磁気ディスク装置のコマンド処理方法におい
    て、 前記ホストシステムからのリードコマンド受け付け時
    に、前記リードコマンドのアクセス開始アドレスをリー
    ドアドレス保持レジスタにより保持し、前記ホストシス
    テムへの単位量のデータ送信毎に、該リードアドレス保
    持レジスタを加算するリードアドレス保持ステップと、 前記ホストシステムからのライトコマンド受け付け時
    に、前記ライトコマンドのアクセス開始アドレスをライ
    トアドレス保持レジスタにより保持し、前記ホストシス
    テムからの単位量のデータ受信毎に、該ライトアドレス
    保持レジスタを加算するライトアドレス保持ステップ
    と、を具備し、 前記リードアドレス保持レジスタを用いたリードコマン
    ドにおけるキャッシュ動作と、前記ライトアドレス保持
    レジスタを用いたライトコマンドにおけるキャッシュ動
    作とが独立して行われることを特徴とする磁気ディスク
    装置のコマンド処理方法。
  6. 【請求項6】 ホストシステムからのリードコマンドま
    たはライトコマンドに応じて、磁気ディスクと前記ホス
    トシステムとの間で送受される情報をバッファにより一
    時的に記憶し、このバッファを用いてコントロールプロ
    グラムの介入無しにホストシステムとのキャッシュ動作
    を行なう磁気ディスク装置のコマンド処理方法におい
    て、 前記ホストシステムからのリードコマンドまたはライト
    コマンド受け付け時に、前記リードコマンドまたはライ
    トコマンドのアクセス開始アドレスをアドレス保持カウ
    ンタにより保持し、前記ホストシステムとの単位量のデ
    ータ送受信毎に該アドレス保持カウンタを加算するアド
    レス保持ステップと、 前記リードコマンド終了時において、前記アドレス保持
    カウンタの内容をリードアドレス保持レジスタにより保
    持するリードアドレス保持ステップと、 前記ライトコマンド終了時において、前記アドレス保持
    カウンタの内容をライトアドレス保持レジスタにより保
    持するライトアドレス保持ステップと、を具備し、 前記リードアドレス保持レジスタを用いたリードコマン
    ドにおけるキャッシュ動作と、前記ライトアドレス保持
    レジスタを用いたライトコマンドにおけるキャッシュ動
    作とが独立して行われることを特徴とする磁気ディスク
    装置のコマンド処理方法。
  7. 【請求項7】 ホストシステムからのリードコマンドま
    たはライトコマンドに応じて、磁気ディスクと前記ホス
    トシステムとの間で送受される情報をバッファにより一
    時的に記憶し、このバッファを用いてコントロールプロ
    グラムの介入無しにホストシステムとのキャッシュ動作
    を行なう磁気ディスク装置のコマンド処理方法におい
    て、 前記ホストシステムからのリードコマンドまたはライト
    コマンド受け付け時に、前記リードコマンドまたはライ
    トコマンドのアクセス開始アドレスをアドレス保持カウ
    ンタにより保持し、前記ホストシステムとの単位量のデ
    ータ送受信毎に該アドレス保持カウンタを加算するアド
    レス保持ステップと、 前回のコマンドがリードコマンドであって、今回のコマ
    ンドがライトコマンドである場合に、前記アドレス保持
    カウンタの内容をリードアドレス保持レジスタにより保
    持するリードアドレス保持ステップと、 前回のコマンドがライトコマンドであって、今回のコマ
    ンドがリードコマンドである場合に、前記アドレス保持
    カウンタの内容をライトアドレス保持レジスタにより保
    持するライトアドレス保持ステップと、 前記リードアドレス保持レジスタを用いたリードコマン
    ドにおけるキャッシュ動作と、前記ライトアドレス保持
    レジスタを用いたライトコマンドにおけるキャッシュ動
    作とが独立して行われることを特徴とする磁気ディスク
    装置のコマンド処理方法。
  8. 【請求項8】前記リードコマンドあるいはライトコマン
    ドのアクセスアドレスは、シリンダ・ヘッド・セクタア
    ドレスまたはロジカルアドレスであることを特徴とする
    請求項5又は6又は7に記載の磁気ディスク装置のコマ
    ンド処理方法。
JP8170414A 1996-06-28 1996-06-28 磁気ディスク装置及び同装置のコマンド処理方法 Pending JPH1021012A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP8170414A JPH1021012A (ja) 1996-06-28 1996-06-28 磁気ディスク装置及び同装置のコマンド処理方法
US08/764,862 US5890210A (en) 1996-06-28 1996-12-13 Magnetic disk apparatus and command processing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8170414A JPH1021012A (ja) 1996-06-28 1996-06-28 磁気ディスク装置及び同装置のコマンド処理方法

Publications (1)

Publication Number Publication Date
JPH1021012A true JPH1021012A (ja) 1998-01-23

Family

ID=15904489

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8170414A Pending JPH1021012A (ja) 1996-06-28 1996-06-28 磁気ディスク装置及び同装置のコマンド処理方法

Country Status (2)

Country Link
US (1) US5890210A (ja)
JP (1) JPH1021012A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0974909A3 (en) * 1998-07-20 2001-09-05 Hewlett-Packard Company, A Delaware Corporation Data transfer management system for managing burst data transfer
CN114036096A (zh) * 2021-11-04 2022-02-11 珠海一微半导体股份有限公司 一种基于总线接口的读控制器

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3745552B2 (ja) * 1999-02-26 2006-02-15 富士通株式会社 情報記憶装置
JP4061563B2 (ja) * 1999-09-16 2008-03-19 松下電器産業株式会社 磁気ディスク装置、磁気ディスク装置のディスクアクセス方法、及び磁気ディスク装置用ディスクアクセス制御プログラム記録媒体
US6557058B1 (en) * 1999-12-01 2003-04-29 Iomega Corporation Method and apparatus of sustained sequential data transfer in a media drive
JP2001229115A (ja) * 2000-02-17 2001-08-24 Matsushita Electric Ind Co Ltd Atapiコマンド処理方式
JP3431582B2 (ja) * 2000-06-29 2003-07-28 株式会社東芝 デスク記憶装置、及び同装置に適用されるハングアップ発生時の処理方法
US6826650B1 (en) 2000-08-22 2004-11-30 Qlogic Corporation Disk controller configured to perform out of order execution of write operations
US6925539B2 (en) 2002-02-06 2005-08-02 Seagate Technology Llc Data transfer performance through resource allocation
JP2004199187A (ja) * 2002-12-16 2004-07-15 Matsushita Electric Ind Co Ltd Cpu内蔵lsi
US7007114B1 (en) * 2003-01-31 2006-02-28 Qlogic Corporation System and method for padding data blocks and/or removing padding from data blocks in storage controllers
US7099963B2 (en) * 2003-03-10 2006-08-29 Qlogic Corporation Method and system for monitoring embedded disk controller components
US7492545B1 (en) 2003-03-10 2009-02-17 Marvell International Ltd. Method and system for automatic time base adjustment for disk drive servo controllers
US7039771B1 (en) 2003-03-10 2006-05-02 Marvell International Ltd. Method and system for supporting multiple external serial port devices using a serial port controller in embedded disk controllers
US7219182B2 (en) 2003-03-10 2007-05-15 Marvell International Ltd. Method and system for using an external bus controller in embedded disk controllers
US7870346B2 (en) * 2003-03-10 2011-01-11 Marvell International Ltd. Servo controller interface module for embedded disk controllers
US7139150B2 (en) * 2004-02-10 2006-11-21 Marvell International Ltd. Method and system for head position control in embedded disk drive controllers
US7120084B2 (en) * 2004-06-14 2006-10-10 Marvell International Ltd. Integrated memory controller
US8166217B2 (en) * 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
US9201599B2 (en) * 2004-07-19 2015-12-01 Marvell International Ltd. System and method for transmitting data in storage controllers
US8032674B2 (en) * 2004-07-19 2011-10-04 Marvell International Ltd. System and method for controlling buffer memory overflow and underflow conditions in storage controllers
US7757009B2 (en) 2004-07-19 2010-07-13 Marvell International Ltd. Storage controllers with dynamic WWN storage modules and methods for managing data and connections between a host and a storage device
US7386661B2 (en) 2004-10-13 2008-06-10 Marvell International Ltd. Power save module for storage controllers
US7240267B2 (en) 2004-11-08 2007-07-03 Marvell International Ltd. System and method for conducting BIST operations
US7802026B2 (en) * 2004-11-15 2010-09-21 Marvell International Ltd. Method and system for processing frames in storage controllers
US7609468B2 (en) * 2005-04-06 2009-10-27 Marvell International Ltd. Method and system for read gate timing control for storage controllers
TWI366094B (en) * 2007-12-28 2012-06-11 Asmedia Technology Inc Method and system of integrating data assessing commands and data accessing device thereof

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0152979B1 (ko) * 1988-07-15 1998-11-16 가시오 가즈오 가변길이 데이터 처리장치
JPH04225444A (ja) * 1990-12-27 1992-08-14 Fujitsu Ltd データバッファの読出し/書込み制御方式
US5317713A (en) * 1991-09-19 1994-05-31 Quantum Corporation Micro-winchester disk drive having on-board segmented cache memory
US5694570A (en) * 1992-09-23 1997-12-02 International Business Machines Corporation Method and system of buffering data written to direct access storage devices in data processing systems
US5381528A (en) * 1992-10-15 1995-01-10 Maxtor Corporation Demand allocation of read/write buffer partitions favoring sequential read cache
KR970008188B1 (ko) * 1993-04-08 1997-05-21 가부시끼가이샤 히다찌세이사꾸쇼 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치
US5465338A (en) * 1993-08-24 1995-11-07 Conner Peripherals, Inc. Disk drive system interface architecture employing state machines
JP3257916B2 (ja) * 1995-02-28 2002-02-18 富士通株式会社 外部記憶装置
US5710943A (en) * 1995-06-30 1998-01-20 Maxtor Corporation Time based data retention in a variable data rate disk drive
US5771359A (en) * 1995-10-13 1998-06-23 Compaq Computer Corporation Bridge having a data buffer for each bus master

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0974909A3 (en) * 1998-07-20 2001-09-05 Hewlett-Packard Company, A Delaware Corporation Data transfer management system for managing burst data transfer
CN114036096A (zh) * 2021-11-04 2022-02-11 珠海一微半导体股份有限公司 一种基于总线接口的读控制器
CN114036096B (zh) * 2021-11-04 2024-05-03 珠海一微半导体股份有限公司 一种基于总线接口的读控制器

Also Published As

Publication number Publication date
US5890210A (en) 1999-03-30

Similar Documents

Publication Publication Date Title
JPH1021012A (ja) 磁気ディスク装置及び同装置のコマンド処理方法
EP1344213B1 (en) Disk controller configured to perform out of order execution of write operations
US5557767A (en) Disk control system using identification codes for retrieving related data for storage in a read ahead cache
US6381677B1 (en) Method and system for staging data into cache
JP2001312373A (ja) データの書き込み方法およびディスクドライブ装置
JPH1063578A (ja) 情報記録再生装置
US6523142B1 (en) Apparatus and method of performing in a disk drive commands issued from a host system
KR19980029917A (ko) 자기 디스크 드라이브에서 읽기 캐쉬의 성능을 높이기 위한 방법
KR20070060301A (ko) 불휘발성 메모리를 쓰기 캐시로 구비한 하드 디스크드라이버
JP2001216092A (ja) データの書き込み方法、データの読み出し方法、ディスクドライブ装置およびディスクドライブ装置のコントローラ
JP2004062663A (ja) ディスク記憶装置において実行されるプログラムを書き換えるための方法及び装置
JP3122702B2 (ja) ディスク装置のライトバック制御方法
JP2001014111A (ja) 回転形記憶装置の制御方法
US6421747B1 (en) Method for maximizing buffer usage on a disk drive
US5907445A (en) Apparatus and method for controlling hard disk drive-locating position by counting sectors
US6041392A (en) Disk drive device and method for controlling the same
JP2000020398A (ja) ディスク記憶装置及び同装置に適用するディスクコントローラ
JPH1027069A (ja) 記憶装置
JP2000306389A (ja) 不揮発性半導体メモリを用いた記憶装置
JP2007328912A (ja) ディスク装置
JP2848099B2 (ja) 多重ドライブ制御方式
JPH09274543A (ja) ディスクアレイ装置
JP2748056B2 (ja) ディスクコントローラ
US20030200385A1 (en) Method and system for increasing disk drive performance
JP2005071399A (ja) 情報記録再生装置におけるアクセス制御装置および方法