JP2856623B2 - バッファ制御装置 - Google Patents

バッファ制御装置

Info

Publication number
JP2856623B2
JP2856623B2 JP3687493A JP3687493A JP2856623B2 JP 2856623 B2 JP2856623 B2 JP 2856623B2 JP 3687493 A JP3687493 A JP 3687493A JP 3687493 A JP3687493 A JP 3687493A JP 2856623 B2 JP2856623 B2 JP 2856623B2
Authority
JP
Japan
Prior art keywords
buffer
data
track
address
disk
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 - Fee Related
Application number
JP3687493A
Other languages
English (en)
Other versions
JPH06251501A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3687493A priority Critical patent/JP2856623B2/ja
Publication of JPH06251501A publication Critical patent/JPH06251501A/ja
Application granted granted Critical
Publication of JP2856623B2 publication Critical patent/JP2856623B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えば磁気ディスク装
置に使用されるデータバッファにおけるデータの読出し
及び書込みのタイミング制御及びトラックアドレス管理
を行うバッファ制御装置に関する。
【0002】
【従来の技術】一般に、磁気ディスク装置のデータ転送
には、複数のデータバッファが使用されて、ディスクコ
ントローラの制御プログラムに基づき、バッファ制御装
置を介してバッファの切替えや、データ転送の開始、停
止等を行っている。
【0003】図5に示す如く、従来のバッファ制御装置
は、主にディスクコントローラの命令に基づいて、ディ
スク200からのリードデータをトラックバッファ80
に書込み、そのトラックバッファ80のデータを読出し
てディスクコントローラに転送する為のタイミングを制
御するバッファ制御部30と、トラックバッファ80内
のバッファアドレス、データのトラック又はセクタのア
ドレス(シリンダ番号、ヘッド番号又はトラック番号、
セクタ番号)及びトラックバッファ80内のデータが有
効か無効か等を管理するバッファ管理部20とから構成
される。トラックバッファ80には、ディスクのトラッ
ク複数本分のデータ容量を有するDRAM等の半導体メ
モリで構成される。
【0004】尚、バッファ制御のデータの流れや、デー
タ転送の開始及び停止等のタイミング制御方式は特開昭
64−42067号、特開平3−134732号等で種
々開示されており、又本発明に直接は影響しない為、詳
細には説明せず、バッファ管理20の説明でその都度概
略を、説明する。
【0005】一般的なバッファ管理部20の動作を通常
のバッファ制御装置の動作に従って説明する。尚本発明
では管理する単位をトラック単位で行っているがセクタ
単位で管理する場合は、トラックをセクタ、シリンダ番
号をトラックアドレス及びヘッド番号をセクタ番号と読
み換えれば全く同様である。
【0006】図3はバッファ管理部20内の管理情報の
一例を示す。は、トラックバッファ80のバッファア
ドレス#1と#2にシリンダ番号=A、ヘッド番号=I
及びI+1のディスクからのリードデータをトラックバ
ッファにロードする予定でまだロードが完了していない
状態を示す。バッファアドレス#nは、過去にディスク
コントローラからの命令でシリンダ番号=Z、ヘッド番
号=Kのデータがトラックバッファにロードされ、完了
している状態を示す(バッファアドレス#nの有効か否
かを示す有効フラグが1)。
【0007】シリンダ番号=Aのヘッド番号=Iがロー
ド完了すると、の如く、バッファアドレス#1の有効
フラグを“1”にして、次にヘッド番号=I+1のロー
ドを開始する。
【0008】一方、シリンダ番号=A、ヘッド番号=I
のデータが有効になったので、ディスクコントローラに
トラックバッファからデータを転送する。次に、ヘッド
番号=I+1のロードが完了すると、の如くバッファ
アドレス#2の有効フラグを“1”にして、ヘッド番号
=Iと同様ヘッド番号=I+1のデータもディスクコン
トローラに転送する。
【0009】このヘッド番号=I+1としてディスク2
00のデータを読み出す際、ディスク200からデータ
切替回路70へ転送時、あるいはトラックバッファ80
にデータを書込み時等に一時的なデータ誤りが発生し
て、データ誤りの有るデータがトラックバッファ80の
バッファアドレス#2に書込まれてそのデータをディス
クコントローラが読出したとする。この場合、ディスク
コントローラはリトライ動作としてバッファアドレス#
2の有効フラグをクリアして、ディスク200から直接
リードデータを転送する様(トラックバッファを使用し
ないでディスクに直接アクセスする)命令を出してリト
ライを実行する。この命令により管理情報は図3のの
如くとなる。但し、トラックバッファ80の内容はその
まま残っている。すなわち本例ではバッファアドレス#
2のトラックバッファ80にはシリンダ番号=A、ヘッ
ド番号=I+1の誤りの有るデータがそのまま残ってい
る。
【0010】次に全く別の動作として、すでにトラック
バッファ80にデータが有効になっているトラックのデ
ータを読出す動作、すなわちキャッシュヒット動作とそ
のトラックのデータを書替える為にディスクに直接デー
タを書込む動作時の管理情報について図4にて説明す
る。
【0011】図4のはバッファアドレス#1にシリン
ダ番号=B、ヘッド番号=Jのトラックのデータが有効
になっている状態を示す。
【0012】そこでディスクコントローラがシリンダ番
号=B、ヘッド番号=Jのデータを読出そうとした場
合、すでに有効フラグは“1”の為、バッファ制御装置
はディスクからのデータをトラックバッファ80にロー
ドする動作は行わず、トラックバッファ80の当該デー
タを、ただちにディスクコントローラに転送する。これ
はバッファ制御装置のキャッシュ機能の効果が発揮され
た例である。この場合、管理情報は図4ののままであ
る。
【0013】次に、同一トラックのデータを書替える場
合、ディスクコントローラはバッファ管理部20内の管
理情報を読出して、本例ではバッファアドレス#1の有
効フラグをクリアして、ディスク200に直接データを
書込む(トラックバッファを使用せずディスクに直接ア
クセスする)命令を出してディスク200のデータを書
換える。その時の管理情報の内容は図4のの如くバッ
ファアドレス#1の有効フラグを0にするのみで、トラ
ックバッファ80のデータは書換えない為、旧データが
残ったままとなっている。
【0014】尚、このような従来技術に関連する公知例
としては、特開平3−134732号、特開昭64−4
2067号、特開昭64−42068号及び特開昭62
−3455号がある。
【0015】
【発明が解決しようとする課題】上述した従来のバッフ
ァ制御装置は、トラックバッファ内のデータを無効にす
る時、すなわち前述の如くリトライ動作やディスク内の
データ書替動作時等は、有効フラグのみをクリアしてい
る。この為、バッファ管理部等の素子不良やディスクコ
ントローラの命令誤り等の不慮の事故等で有効フラグが
一時的にクリアできない状態で動作を続けた場合、例え
ば前述のリトライ動作で図3のからに変化する時
に、バッファアドレス#2の有効フラグがクリアできな
かった時、のまま(有効フラグ=1)でかつトラック
バッファ内のデータはデータ誤りが有るまま保持されて
いるという事態が生じうる。その結果、リトライ動作終
了後、次に再度そのトラック(図3のの場合シリンダ
番号=A、ヘッド番号=I+1)のデータを読出した場
合、前述のキャッシュヒット動作でトラックバッファ8
0にはロードを行なうことなく、トラックバッファ80
のデータ誤りの有るデータをディスクコントローラに転
送してしまい、再度リトライ動作が必要となってしま
う。
【0016】また、前述のデータ書替動作時に有効フラ
グがクリアできないままデータ書替動作を行った場合、
図4のの状態のまま(有効フラグ=1)で、ディスク
内のデータのみ書替えられてトラックバッファ80内の
データの書替えは行われていない為、再度そのトラック
(図4のではシリンダ番号=B、ヘッド番号=J)の
データを読出した場合、やはりキャッシュヒット動作で
トラックバッファ80内のデータをディスクコントロー
ラに転送してしまう。すなわち、旧データ(データ書替
え前のデータ)を転送してしまうという事態が生じ、デ
ータの信頼性の面での問題があった。
【0017】本発明の目的は、不慮の事故等でトラック
バッファの有効フラグのクリアができなかった場合で
も、誤りのあるデータや旧データを上位装置へ転送する
ことを防止することにより、信頼性の高いデータを確保
することができるバッファ制御装置を提供することにあ
る。
【0018】
【課題を解決するための手段】上記目的を達成するため
に、本発明によるバッファ制御装置は、ディスクより読
出されたデータを複数トラック分記憶するトラックバッ
ファと、上位装置からの指示に応じて該トラックバッフ
ァの書込み及び読出しの制御を行うバッファ制御制御手
段と、前記トラックバッファの状況を管理するバッファ
管理手段とを備えたバッファ制御装置において、前記ト
ラックバッファ内に記憶されたデータに関して、前記上
位装置からの前記ディスクの当該データの領域に直接ア
クセスする命令またはバッファイレーズ命令を受けたと
き、前記バッファ管理手段における当該記憶されたデー
タの管理情報を無効にするとともに、前記トラックバッ
ファ内の当該データ自体を予め定めたイレーズパターン
に書き換えるイレーズ手段を具備するものである。
【0019】
【作用】本発明は、バッファアドレスと共にイレーズ命
令をディスクコントローラから受けると、管理情報とし
ての有効フラグをクリアすると共に、イレーズアドレス
を生成して該当トラックバッファを予め定めたパターン
(イレーズパターン)にイレーズするので、万一不慮の
事故で有効フラグがクリアされなかった場合でも誤りの
有るデータや書替え前の旧データを、再度読出すという
ことは無くなる。
【0020】また、ディスクコントローラがトラックバ
ッファを使用せずに直接ディスクのデータを読出し、書
込みを行った場合に、バッファ制御装置にて自動的にそ
のトラックアドレスとバッファ管理情報内のトラックア
ドレスとを比較して一致した場合に、有効フラグをクリ
アし、該当トラックバッファをイレーズすることにより
ディスクコントロールからのイレーズ命令等の特殊な命
令無しで、バッファのイレーズが可能となる。
【0021】
【実施例】以下、本発明の実施例について、詳細に説明
する。
【0022】図1に本発明のバッファ制御装置の第1の
実施例の構成を示す。図5に示した要素と同一の要素に
は同一の参番号を付してある。
【0023】トラックバッファ80は、前述のとおり、
ディスク200からのリードデータをトラック(もしく
はセクタ)単位に蓄えるメモリであり、その具体構成に
ついては後述する。インタフェース回路10は、ディス
クコントローラの命令をバッファ制御部30へ転送し、
ディスク200又はトラックバッファ80のデータをデ
ィスクコントローラに転送する等、ディスクコントロー
ラとのデータや命令を受渡しするための回路である。前
述の通り、バッファ管理部20は、トラックバッファ8
0の状態を管理する。バッファ制御部30は、ディスク
コントローラからの命令によりディスク200からのリ
ードデータをトラックバッファ80にロード開始させた
り、トラックバッファ80からのデータをディスクコン
トローラに転送する動作を開始させたりするタイミング
等の制御を行う。
【0024】リードアドレス生成回路40は、トラック
バッファ80からディスクコントローラにデータを転送
する為にトラックバッファ80からデータを読出すアド
レスを生成する。ロードアドレス生成回路50は、ディ
スク200からのリードデータをトラックバッファ80
の所定位置にロードするアドレスを生成する。さらに、
ADR切替回路60は、トラックバッファ80に与える
べきアドレス(ADR)を、トラックバッファ80から
のデータを読出す時はリードアドレスに、ディスクから
のリードデータをロードする時はロードアドレスに、ま
た後述のイレーズ時はイレーズアドレスに切替える。デ
ータ切替回路70は、ロード時にディスク200からの
リードデータをトラックバッファ80のデータラインに
接続し、ディスクコントローラにトラックバッファ80
のデータを転送する時にトラックバッファ80のデータ
をバッファ制御部30に接続し、ディスク200に直接
アクセスする時はディスク300からのリードデータを
バッファ制御部30に接続する(BUSAとBUSBを
直結する)ようデータバスの接続切替を行う。
【0025】これらの構成に、トラックバッファイレー
ズを行うアドレスを生成するイレーズアドレス生成回路
110と、イレーズパターンを生成するイレーズパター
ン生成回路120とから構成されるイレーズ制御部10
0を新たに設ける。これに伴い、ADR切替回路60に
は、イレーズアドレス生成回路110からのアドレスを
トラックバッファ80のアドレスラインに接続する機能
を追加し、データ切替回路70には、イレーズ時に、イ
レーズパターン生成回路120からのイレーズパターン
をトラックバッファ80のデータラインに接続する機能
を追加する。
【0026】図9に、ADR切替回路60およびデータ
切替回路70の、状態別の切替接続態様を従来の場合と
対比して示す。
【0027】ディスク200からトラックバッファ80
へデータを読み出すロード時(第1の状態)、トラック
バッファ80からディスクコントローラへデータを読み
出すリード時(第2の状態)、ディスクコントローラか
らディスク200にダイレクトにデータを書き込むデー
タ書込み時(第3の状態)、およびディスク200から
ディスクコントローラへダイレクトにデータを読み出す
リトライ時(第4の状態)の4状態について、それぞれ
切替接続状態を示している。図から分かるように、本発
明のイレーズ動作は第3および第4の状態において行わ
れるので、これらの状態において従来と切替接続が異な
っている。
【0028】トラックバッファ80自体は公知である
が、本実施例の理解を容易にするために、その構成例を
図6に示す。このトラックバッファ80は、本実施例で
はDRAMで構成するが、SRAM、その他のメモリを
使用してもよい。nトラック分のデータ容量を有し、1
トラックは、yロー、mカラムのx個のメモリアドレス
から構成される。zは、1CAS(カラムアドレススト
ローブ)にてアクセスするデータビット量を示し、1メ
モリチップで不足の場合には複数のメモリチップを使用
すればよい。カラムアドレスmとしては、メモリチップ
により256、512、1024、2048等がある。
ローアドレスも同様に数種(256、512、102
4、2048等)存在するが、それを複数個に分割し
て、それぞれ1個を1トラック(または1セクタ)に対
応させるよう構成する。図6の例では、ローアドレスを
yアドレスずつ分割して、それぞれをバッファアドレス
#1,#2,#3…とし、バッファアドレス1個を1ト
ラック分のデータ容量とする。従って、1トラック容量
は、m×y×zバイトからなる。また、カラムアドレス
とローアドレスによって決定される各1アドレスを、図
6の如く、0,1,2,…,m−1,m,m+1,…,
X−1,x,x+1,…と、通し番号(メモリアドレ
ス)を割り付ける。分割したバッファアドレスのそれぞ
れの先頭のアドレスを0,x,2x,3x,…(トラッ
ク先頭メモリアドレス)と定義しておけば、トラックバ
ッファ80の任意のアドレスはトラック先頭メモリアド
レスとそのトラック内のデータ位置(0〜x−1の位
置)の加算により表現することができる。
【0029】図7に、イレーズアドレス生成回路110
の構成例を示す。この回路は、バッファアドレスレジス
タ111、メモリアドレス変換部112、AND回路1
13、アップカウンタ114、および加算回路115か
らなる。バッファアドレスレジスタ111には、制御部
30(後述する第2の実施例ではトラックアドレス比較
部90)からイレーズ対象のバッファアドレスを受けて
格納する。このバッファアドレスを、メモリアドレス変
換部112が図6に示したそのバッファアドレス#にお
けるトラック先頭メモリアドレスに変換する。例えば、
トラックバッファ80内のバッファアドレス#2をイレ
ーズしようとした場合、まず、バッファ制御部30より
イレーズしようとしているバッファアドレス#2(HE
Xの“2”であっても、それぞれ専用ビットでビット
“2”であってもよい)がバッファアドレスレジスタ1
11にセットされたならば、メモリアドレス変換部11
2はバッファアドレス#2をトラック先頭メモリアドレ
ス“x”に変換し、加算回路115のA端子にxを伝達
する。
【0030】一方、バッファ制御部30からイレーズ開
始指示(図7の「イレーズ開始」信号を“1”にする)
が出ると、ANDゲート113のゲートが平木、クロッ
クがアップカウンタ112のCK端子に入力される。ア
ップカウンタ114は、CK端子にクロックが1個入力
される毎に、0、1、2、3…とカウントアップし、計
数値がx−1になったところで、0に戻る。このカウン
タ出力は加算回路115のB端子に入力される。A端子
には“x”を、B端子には“0”〜“x−1”のカウン
ト出力を入力された加算回路115は、A端子とB端子
を常時加算し、加算結果“x”,“x+1”,“x+
2”,…,“x+x−1”をイレーズアドレスとして順
次出力する。この1アドレス毎に、イレーズパターン生
成回路120で生成されるパターンをメモリに書き込む
ことにより、バッファアドレス#2がイレーズされる。
【0031】図8に、イレーズパターン生成回路120
の構成例を示す。複数ビット(zバイト分)のセット
(S),リセット(R)端子付きDフリップフロップ1
21で構成する。例えば、全ビット“1”のパターンで
行いたい場合、S端子(オール1モード)を“1”に
し、全ビット“0”のパターンで行いたい場合、R端子
(オール0モード)を“1”にする。また、これら以外
の特殊なパターン(例えば、1−7RLLのギャップパ
ターン100100…,2−7RLLのギャップパター
ン10001000…等)のパターンを選択するときに
は、データ入力端子にそのパターンを入力し、ストロー
ブ信号を“1”にすることにより、そのパターンがフリ
ップフロップ121に取り込まれる。このようにして、
フリップフロップ121の保持内容がzバイト分のイレ
ーズパターンとして出力される。
【0032】前述のように、リトライ動作とデータ書替
動作のいずれにおいても、バッファ制御装置の動作とし
てはディスクコントローラがディスクを直接アクセス
し、同じイレーズ動作が行われるので、ここではデータ
書替動作を想定して、本実施例の動作説明を行う。
【0033】図10に、バッファ制御部30の動作を、
他の要素の動作とともに示す。ここでは、トラックバッ
ファ60についてのバッファ管理部20の有効フラグを
クリアするとともに、ディスクコントローラからディス
ク200に直接データを書き込む動作例について説明す
る。
【0034】ディスクコントローラがディスク200に
データを直接書き込もうとしたとき(図示しないホスト
CPUからの書込み命令を受けたとき)、ディスクコン
トローラは、まず、トラックバッファ80内に書込み予
定のトラックアドレスのデータが存在するか否かを調べ
るために、センスコマンドをバッファ制御部30に対し
て発行する(S10)。このセンスコマンドに応答し
て、バッファ制御部30は、バッファ管理部20内の管
理情報を読出して、その情報をディスクコントローラに
転送する(S11)。ディスクコントローラは、ホスト
CPUからの書込み命令のトラックアドレスと管理情報
のトラックアドレスとを比較することにより、受け取っ
た情報の中に書込み予定のトラックアドレスが存在する
か否かをチェックし(S12)、存在しなければそのま
ま書込み命令を発行してディスクに直接データを書き込
むディスクアクセスコマンド(書込み命令)を発行する
(S23)。存在すれば、有効フラグが“0”/“1”
を問わず、そのトラックアドレスに対応するバッファア
ドレス#とイレーズコマンドを発行する(S13)。さ
らに、前記ステップS23と同様のディスクアクセスコ
マンドを発行する。イレーズコマンドに応答して、バッ
ファ制御部30は、受け取ったバッファアドレスを元に
(S15)、バッファ管理部20内の管理情報レジスタ
のトラックアドレスと有効フラグをクリアする(S1
6)。さらに、書込み命令を受けているので、ADR切
替回路60およびデータ切替回路70を、図9の第3の
状態に切替て(S17)、各部にデータ転送開始指示を
出力し、書込みデータをディスク200に書き込むよう
指示する(S18)。
【0035】本実施例では、この動作とともに、バッフ
ァ制御部30は、イレーズコマンドに応じて、その指示
されたバッファアドレスをイレーズアドレス生成回路1
10に転送し(S19)、イレーズパターン生成回路1
20にイレーズパターンをセットする(S20)。次
に、書込み命令に応じて、トラックバッファの該当する
バッファアドレスのデータのイレーズを開始する指示を
出力する(S21)。前記書込みデータをディスク20
0に転送する動作と並行して、トラックバッファのデー
タイレーズが行われる(S22)。
【0036】前記ステップS23に続くステップS24
およびS25はそれぞれS17およびS18と同じ処理
であり、これに応じて書込みデータがディスク200に
書き込まれる(S26)。
【0037】例えば、ホストCPUからの書込み命令の
トラックアドレスがシリンダ番号=B、ヘッド番号=J
であり、一方、バッファ管理部20の管理情報が図4の
の状態だったとすれば、ディスクコントローラは、ト
ラックバッファ80を使用しないでディスクに直接アク
セスする命令と、バッファアドレス#1をイレーズする
命令とをバッファ制御装置に出す。この命令は、図1の
インタフェース回路10を通りバッファ制御部30に送
られる。バッファ制御部30はイレーズ制御部100内
のイレーズアドレス生成回路110にバッファアドレス
#1を伝達する。それを受けてイレーズアドレス生成回
路110はトラックバッファ80のイレーズアドレスに
変換して、そのイレーズアドレスをADR切替回路60
に送出する。
【0038】一方、バッファ制御部30はイレーズアド
レスをトラックバッファ80のアドレスライン(AD
R)へ、またイレーズパターン生成回路120で生成さ
れたイレーズパターンをトラックバッファ80のデータ
ライン(DATA)に送出する様、それぞれADR切替
回路60とデータ切替回路70を切替える。さらにBU
SAとBUSBをデータ切替回路70で接続し、ディス
クコントローラの命令やデータがインタフェース回路1
0、バッファ制御部30、及びデータ切替回路70を経
由してディスクに直接伝達できる様、すなわちディスク
コントローラが直接ディスクにアクセスできる様に切替
えて、ディスクコントローラはホストCPUからの書込
み命令を実行する。
【0039】また、イレーズアドレスもイレーズパター
ンもトラックバッファ80に伝達されているのでバッフ
ァ制御部30はバッファ管理部20内管理情報の該当バ
ッファアドレス#1の有効フラグをクリア(図4のか
らに変化)して、トラックバッファ80の該当トラッ
クのデータをイレーズパターンにイレーズする動作を開
始する。すなわち、ディスクコントローラが直接ディス
クにアクセス(本例では書込み命令を実行)している間
に、該当トラックのデータをイレーズする様動作する。
【0040】本実施例によればディスクコントローラが
ディスクに直接アクセスしている間にバッファ管理部2
0の有効フラグだけでなくトラックバッファ80の該当
データ事態もクリアできる。したがって、ディスクコン
トローラがイレーズ命令を出す時間が必要なだけでアク
セスタイムにはほとんど影響を与えることなく、かつ万
一不慮の事故で有効フラグのクリアができなかった場合
でも旧データや誤りの有るデータをディスクコントロー
ラに転送することは無くなる。
【0041】次に、図2に本発明の第2の実施例の構成
を示す。この構成はトラックアドレス比較部90を付加
した以外は第1の実施例(図1)と全く同一の構成の
為、本説明では第1の実施例と異る部分の動作のみを説
明する。
【0042】第1の実施例と異るのは、第1の実施例で
はトラックバッファイレーズ時は、ディスクコントロー
ラが管理情報を読出して、イレーズするバッファアドレ
スを指示してイレーズ命令を発行していたが、第2の実
施例ではディスクコントローラはトラックバッファ80
を使用しないでディスクに直接アクセスする命令のみを
発行して、ディスクにバッファ制御部30及びデータ切
替回路70を経由して直接アクセスを行う(ヘッドを目
的トラック(セクタ)に位置付けして書込み動作を行
う)。
【0043】そこで、バッファ制御部30は、ディスク
コントローラがディスクに直接送出する目的トラック
(シリンダ番号、ヘッド番号)アドレスがバッファ制御
部30を経由するのを利用して、トラックアドレスが送
出された時点でそれを記憶してその情報をトラックアド
レス比較部90に送出する。次にトラックアドレス比較
部90はバッファ管理部20内の管理情報のトラックア
ドレスと、バッファ制御部30から送られてきたトラッ
クアドレスを比較して、一致した場合そのバッファアド
レスをイレーズアドレス生成回路110に送出する。
【0044】以降は第1の実施例と同様、バッファ管理
部20の該当バッファアドレスの有効フラグをクリア
し、イレーズパターン生成回路120からのパターン
で、イレーズアドレス生成回路110からのイレーズア
ドレスのトラックバッファ80のイレーズを行う。
【0045】図11に、具体的な動作フローを示す。
【0046】まず、ディスクコントローラは、管理情報
をセンスすることなく、ディスクアクセスコマンドを発
行する(S30)。このコマンド内の情報としては、ト
ラックアドレス(アクセス対象を特定するためのディス
クのシリンダ、ヘッド、セクタ番号等)、読出し/書込
みの別(読出し:ディスクからのデータ読出し、書込
み:ディスクへのデータ書込み)、バッファ/ダイレク
トの別(バッファ:トラックバッファ80を使用してデ
ータを読み出す。ダイレクト:トラックバッファ80を
使用せずに直接読出し/書込みを行う)等の情報が含ま
れている。バッファ制御部30は、トラックアドレスを
受け取り(S31)、これをトラックアドレス比較部9
0に転送する(S32)。そこで、トラックアドレス比
較部90は、その情報に基づいて、書込み時またはダイ
レクト時に、バッファ管理部管理情報をサーチし(S3
3)、受け取ったアドレスを管理情報レジスタ内のトラ
ックアドレスと比較して、一致するアドレスが存在する
か否かを判断する(S34)。なお、ここでは書込み動
作の例のみを示しているので、比較を行うか否かの判定
部分は省略している。一致するトラックアドレスが存在
すれば、以下、図10と同様、ステップS16〜S22
およびS26を実行する。存在しなければ、やはり図1
0と同様、ステップS24〜S26を実行する。
【0047】以上の説明から分かるように第2の実施例
によれば、ディスクコントローラがバッファ管理部20
内の管理情報を読出して比較し、イレーズするバッファ
アドレスを指定してイレーズ命令を出す必要が無くな
る。すなわち、ディスクコントローラは、バッファ管理
部20の管理情報を意識することなくディスクアクセス
コマンドを発行して、直接ディスクにアクセスできるの
で、アクセスタイムの損失が無くなる。
【0048】
【発明の効果】以上の様に本実施例の如く、イレーズ制
御部もしくはトラックアドレス比較部とイレーズ制御部
を具備することにより、リトライ動作時やディスク内デ
ータの書替動作時等に該当トラックバッファのイレーズ
も共に行う為、万一不慮の事故で有効フラグがクリアさ
れなかった場合でも誤りの有るデータや書替え前の旧デ
ータをディスクコントローラに転送してしまうというこ
とは無くなる。また第2の実施例によれば、ディスクコ
ントローラの制御プログラムを変更せずに上記効果であ
る信頼性の非常に高いデータを転送できる。
【図面の簡単な説明】
【図1】本発明の第1の実施例のブロック図
【図2】本発明の第2の実施例のブロック図
【図3】バッファ管理部の管理情報の第1例の説明図
【図4】バッファ管理部の管理情報の第2例の説明図
【図5】従来技術のバッファ制御装置のブロック図
【図6】実施例におけるトラックバッファの構成例の説
明図
【図7】実施例におけるイレーズアドレス生成回路の構
成例を示すブロック図
【図8】実施例におけるイレーズパターン生成回路の構
成例を示すブロック図
【図9】実施例におけるアドレス切替回路およびデータ
切替回路の状態別の接続内容を示す説明図
【図10】第1の実施例におけるデータ書込み動作を示
すフローチャート
【図11】第2の実施例におけるデータ書込み動作を示
すフォローチャート
【符号の説明】 10 インタフェース回路 20 バッファ管理部 30 バッファ制御部 40 リードアドレス生成回路 50 ロードアドレス生成回路 60 ADR切替回路 70 データ切替回路 80 トラックバッファ 90 トラックアドレス比較部 100 イレーズ制御部 110 イレーズアドレス生成回路 120 イレーズパターン生成回路 200 ディスク

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】ディスクより読出されたデータを複数トラ
    ック分記憶するトラックバッファと、上位装置からの指
    示に応じて該トラックバッファの書込み及び読出しの制
    御を行うバッファ制御手段と、前記トラックバッファの
    状況を管理するバッファ管理手段とを備えたバッファ制
    御装置において、 前記トラックバッファ内に記憶されたデータに関して、
    前記上位装置から前記ディスクの当該データの領域に直
    接アクセスする命令またはバッファイレーズ命令を受け
    たとき、前記バッファ管理手段における当該データの管
    理情報を無効にするとともに、前記トラックバッファ内
    の当該データ自体を予め定めたイレーズパターンに書き
    換えるイレーズ手段を具備することを特徴とするバッフ
    ァ制御装置。
  2. 【請求項2】前記上位装置から前記命令を受けたとき、
    該命令がアクセスしようとする前記ディスクのトラック
    アドレスのデータが前記トラックバッファ内に存在する
    か否かを、前記命令のトラックアドレスと前記トラック
    バッファ内に格納されたトラックアドレスとを比較する
    ことにより判定するトラックアドレス比較手段を具備す
    ることを特徴とする請求項1記載のバッファ制御装置。
  3. 【請求項3】前記イレーズパターンとして任意のデータ
    パターンを生成するイレーズパターン生成手段と、該イ
    レーズパターンを前記トラックバッファのデータバスに
    接続する接続切替手段とを具備することを特徴とする請
    求項1または2記載のバッファ制御装置。
  4. 【請求項4】前記トラックバッファのイレーズの対象と
    なる領域のアドレスを生成するアドレス生成手段と、該
    手段により生成されたアドレスを前記トラックバッファ
    のアドレスバスに接続する接続切替手段とを具備するこ
    とを特徴とする請求項1、2または3記載のバッファ制
    御装置。
JP3687493A 1993-02-25 1993-02-25 バッファ制御装置 Expired - Fee Related JP2856623B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3687493A JP2856623B2 (ja) 1993-02-25 1993-02-25 バッファ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3687493A JP2856623B2 (ja) 1993-02-25 1993-02-25 バッファ制御装置

Publications (2)

Publication Number Publication Date
JPH06251501A JPH06251501A (ja) 1994-09-09
JP2856623B2 true JP2856623B2 (ja) 1999-02-10

Family

ID=12481934

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3687493A Expired - Fee Related JP2856623B2 (ja) 1993-02-25 1993-02-25 バッファ制御装置

Country Status (1)

Country Link
JP (1) JP2856623B2 (ja)

Also Published As

Publication number Publication date
JPH06251501A (ja) 1994-09-09

Similar Documents

Publication Publication Date Title
US7450457B2 (en) Memory system comprising a controller managing independent data transfer between input-output terminal, synchronous dynamic random access memory, and flash memory
US8397019B2 (en) Memory for accessing multiple sectors of information substantially concurrently
JP3485938B2 (ja) 不揮発性半導体メモリ装置
US6202138B1 (en) Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5864568A (en) Semiconductor memory device for mass storage block access applications
US5920884A (en) Nonvolatile memory interface protocol which selects a memory device, transmits an address, deselects the device, subsequently reselects the device and accesses data
JP2000067574A (ja) 半導体記憶装置
JP2004139503A (ja) 記憶装置及びその制御方法
JP2856623B2 (ja) バッファ制御装置
US5479609A (en) Solid state peripheral storage device having redundent mapping memory algorithm
JP2000276402A (ja) フラッシュメモリ駆動方法及びフラッシュメモリ装置
JPH0519981A (ja) 光デイスク装置のデータ書込み正常終了判定方法
JP2001134496A (ja) 不揮発性半導体メモリを用いた記憶装置
JPH0210446A (ja) バッファ記憶装置
JP2003263894A (ja) 不揮発性半導体メモリ装置の制御方法
JPH071490B2 (ja) デ−タ書戻し方式
JPH0519975A (ja) ハードデイスクエミユレータのアドレス情報統合方法
JP2003242788A (ja) 不揮発性半導体メモリ装置及びその制御方法
JP2581057B2 (ja) 評価用マイクロコンピユ−タ
JPH08195098A (ja) フラッシュメモリ装置
JPH04111030A (ja) 情報記録装置
JP2001043132A (ja) キャッシュメモリの制御方法
JPH02165248A (ja) ディスクキャッシュ制御装置
JPH0431136B2 (ja)
JP2001034536A (ja) ディスク装置、及び記録媒体

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees