JPH06502271A - 計算機バスとディスクドライブ間のデータの複数のセクタの自動読み出し及び自動書き込みインテリジェントハードウェア - Google Patents

計算機バスとディスクドライブ間のデータの複数のセクタの自動読み出し及び自動書き込みインテリジェントハードウェア

Info

Publication number
JPH06502271A
JPH06502271A JP5503755A JP50375593A JPH06502271A JP H06502271 A JPH06502271 A JP H06502271A JP 5503755 A JP5503755 A JP 5503755A JP 50375593 A JP50375593 A JP 50375593A JP H06502271 A JPH06502271 A JP H06502271A
Authority
JP
Japan
Prior art keywords
host computer
signal
circuit
disk drive
data
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.)
Granted
Application number
JP5503755A
Other languages
English (en)
Other versions
JP3276147B2 (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.)
Steel Excel Inc
Original Assignee
Adaptec Inc
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 Adaptec Inc filed Critical Adaptec Inc
Publication of JPH06502271A publication Critical patent/JPH06502271A/ja
Application granted granted Critical
Publication of JP3276147B2 publication Critical patent/JP3276147B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0658Controller construction 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1258Formatting, e.g. arrangement of data block or words on the record carriers on discs where blocks are arranged within multiple radial zones, e.g. Zone Bit Recording or Constant Density Recording discs, MCAV discs, MCLV discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 計算機バスとディスクドライブ間のデータの複数のセクタの自動読み出し及び自 動書き込み用インテリジェントハードウェア 魔IIと1月 匡JLIΔ±」し上野 本発明は、ハードディスクドライブと計算機データバスとのインターフェースに 関し、特に、ディスクドライブへのマイクロプロセッサの介入なしに、ハードデ ィスクドライブと計算機間のデータの複数のセクタの読み出し及び書き込みを制 御する、自動化された読み出し及び書き込み用ハードウェアシーケンサに関する 。
i末Ω五」 マイクロコンピュータと呼ばれることもあるパーソナルコンピュータは、主に、 安価であり、かつ電子計算機の集約的なユーザアプリケーションを処理するため に充分な能力を有するために、近年、広範囲に亘るユーザを獲得してきた。パー ソナルコンピュータのデータ記憶及びデータ共用機能は、概ねlll1または複 数のハードディスクドライブを有する。
ハードディスクドライブ120(第1図)は、その上方に位置する読み出し/書 き込みヘッド141によって、あるパターンに磁化された、ディスクである回転 磁気媒体140を有する。書き込み動作中、ヘッド141は回転磁気媒体140 の磁気被膜にデータを表現するデータパターンを生みだし、読み出し動作中には 、ヘッドは書き込み動作中に生み出されたデータパターンを読み出す。
多くの大容量のディスクドライブでは、複数のディスクが、共通のスピンドルを 中心として互いに積み重ねられている。各ディスクは、ディスクの表面毎に少な くとも1個の読み出し/書き込みヘッドを有する。データは、ディスク表面の同 中心の複数の円からなるトラックに書き込まれる。複数のディスクが共通のスピ ンドル上で用いられるとき、ディスクのトラックには、隣接するディスクのトラ ック1の真上若しくは真下の、あるディスクのトラック1である各ディスクの相 対的な等しい半径方向の位置に、書き込みが行われる。積み重ねられたディスク の各ディスクのトラック1の位置は、ディスク表面に垂直に延在するシリンダを 形成するので、トラックの位置は一般にシリンダの位置と呼ばれる。
ハードディスクに記憶されたデータは、概ね、複数のファイルに分類される。各 ファイルは、計算機110によって処理されるデータの単位を表している。複数 のファイルは、回転ディスク140の複数のセクタに記憶される。ディスクの一 回転中に書き込まれるセクタ数は、lトラックからなる。従って、ディスクの表 面の任意のあるデータの位置を特定するために、ヘッドアドレス、シリンダアド レス、及びセクタアドレスが必要となる。ヘッドアドレス、シリンダアドレス、 及びセクタアドレスは、幾何学的アドレスと呼ばれることがある。
計算機110内で実行されるプログラムからの要求に応答して、ディスクドライ ブ120に対する読み出しまたは書き込みを行うために、計算機によって実行さ れる動作は、当業者にはよく知られている。概ね、この動作中に、ディスクドラ イブ120の電子回路130は、ドライブ120の1つのディスクのデータのあ るセクタのための要求を受け取る。即ち、電子回路130は、セクタの幾何学的 アドレスを提供される。
ディスクドライブ120の電子回路は、概ね、米国カリフォルニア州すニーベー ルのインテル社によって販売されているマイクロプロセッサNo、808078 085のような第1世代のマイクロプロセッサであるマイクロプロセッサ121 と、マイクロプロセッサ121をインタフェースする記憶制御集積回路130と 、ドライブ電子回路123と、計算機データバス115と、ランダムアクセスメ モリ122とを含む。ドライブ電子回路123は、読み出し/書き込みヘッド1 41からのアナログ信号を記憶制御回路130にへのデジタル信号に変換し、か つディスクドライブ120の機械的な動作を制御する。
例えば、計算機データバス115は、IBM ATパーソナルコンピュータまた は、そのようなパーソナルコンピュータの互換機であるパーソナルコンピュータ のデータバスである。それらのパーソナルコンピュータの構造及び動作は、当業 者にはよく知られている。
記憶制御集積回路130は、マイクロプロセッサインタフェース回路131と、 ディスク制御回路132と、バッファ制御133と、計算機バスインタフェース 回路134とを含む。例えば、カリフォルニア州フレモント(Fremont) のC1rrus Logicは、そのような集積回路をモデルNo。
5H260として提供している。カリフォルニア州すンノゼのChips an d Technologyは、そのような集積回路をモデルNo、82C505 9として提供している。カリフォルニア州ミルビタスのAdaptec Cor porationは、モデルNo、Arc−6060及びモデルNo、Arc− 7160を提供している。
マイクロプロセッサ121によって実行される動作は、概ね、ディスクドライブ 120が作動しているときに、不揮発性メモリからマイクロプロセッサ121に ロードされるプログラム命令によって決定される。計算機110は、制御バス( 図示されていない)を通して、読み出し/書き込みリクエストを回路130に提 供し、幾何学的アドレス即ち、ヘッドアドレス、シリンダアドレス、及びセクタ アドレスが、データバス115を通して非同期に提供される。
この情報は、インタフェース回路134を通り、回路130内のレジスタに直接 記憶される。概ね、回路130は、18Mタスクファイルをエミュレートするた めに必要なレジスタとカウンタとを含む。18Mタスクファイルは、IBMから 入手可能なIBM PC/AT Technical Referenceに定 義されており、この文献はここで言及したことによって、本出願の一部とされた い。代わりに、ATA仕様書に定義されている命令ブロックレジスタが使用され ることもある。
読み出し/書き込みリクエスト及び幾何学的アドレスを受け付けたとき、マイク ロプロセッサ121は、リクエストされた読み出しまたは書き込み動作のために 、計算機バスインタフェース回路134、ディスク制御回路132及びバッファ 制御回路133を初期化するために必要な動作を実行する。初期化信号は、マイ クロプロセッサ121から、マイクロプロセッサインタフェース回路131を通 って、マイクロプロセッサ制御バス136上を他の回路へ向けて通過する。図を 明瞭にするために、ディスク制御回路132、バッファ制御回路133、及び計 算機バスインタフェース回路134とRAMI 22との間の制御信号ラインと 同様に、マイクロプロセッサ121とマイクロプロセッサインタフェース回路1 31との間の制御信号ラインは、第1図には描かれていない。
読み出し動作のための初期化の後に、データはドライブ電子回路123から、デ ィスク制御回路132へ通過し、ディスク制御回路132は、そのデータをバッ ファ制御回路133へ送る。バッファ制御回路133はデータをRAM122に 記憶する。データの1セクタが、RAM122に完全に記憶されたとき、マイク ロプロセッサ121は、RAM122から計算機バスインタフェース回路134 内のFIFO(ファーストインファーストアウト)メモリへのデータの転送を開 始する。FIFOメモリがほぼいっばいになったとき、回路134は、データの セクタが作動可能であることを表すために、ホスト計算機に対する割り込みを開 始する。
セクタの転送が完了したとき、マイクロプロセッサは、次のセクタの転送を開始 するために、ホスト計算機110と対話する。従って、データの複数のセクタが ディスクドライブ120から計算機バス115へ転送されるにもかかわらず、マ イクロプロセッサ121は、各セクタを個々に送るために、動作速度が低下する 。マイクロプロセッサ121は、複数のセクタを送ることができないので、1つ のセクタのみの処理そして介入による時間的な限界は、回路130によって決定 される。
免肌旦且1 本発明の原理に基づけば、ハードディスクドライブと計算機データバスとの間の 複数のセクタの転送が、ハードディスクドライブ内の記憶制御集積回路の計算機 バッファインタフェース回路内のハードウェアによって制御される。
データの複数のセクタは、ハードディスクドライブの動作を制御するマイクロプ ロセッサの介入なしに転送される。
本発明の計算機バスインタフェース回路は、計算機データバスとインタフェース 回路との間のデータを自動的に転送するだけでなく、状態情報を生みだし、ホス ト計算機への割り込みを生みだし、かつタスクファイルレジスタを更新する。
本発明のディスクドライブ記憶#I御集積回路は、タイマ開始信号に応答するタ イマ手段を含み、タイマ開始信号がタイマ手段に受け取られると、タイマ手段が スタートする。
タイマ開始信号は、イネーブル信号とも呼ばれる。予め決められた時間間隔の後 、タイマ手段はホスト計算機割り込みタイムアウト信号を発生する。ホスト計算 機割り込みタイムアウト信号に応答して、ハードウェア割り込み発生手段は、ホ スト計算機割り込み信号を発生する。ホスト計算機が、ディスクドライブ記憶制 御を含むディスクドライブの状態を読み出すとき、読み出し動作の間、タイマ開 始信号が発生させられる。概ね、ディスクドライブの基板上にある、ディスクド ライブを制御するマイクロプロセッサによる介入なしに、ハードウェアがこれら の動作の全てを実行する。
他の実施例では、ディスクドライブ記憶制御集積回路は、ホスト計算機からの単 −書き込みセクタ命令に応答したディスクドライブに書き込まれた最初のデータ のセクタを、それに続くデータのセクタから区別する手段を含む。ディスクドラ イブ記憶制御集積回路は更に、ディスクドライブの動作を制御するマイクロプロ セッサによる介入なしに、最初のデータのセクタの後に各データのセクタの転送 を開始するためのホスト計算機割り込み信号を発生する手段を含む。
ディスクドライブの動作を制御するマイクロプロセッサの介入なしに、ホスト計 算機へ、またはホスト計算機から、データの複数のセクタを転送するための、本 発明のハードウェアの能力は、ディスクドライブのデータ処理速度を非常に高め る。マイクロプロセッサが、各セクタの転送を個々に制御する必要が解消され、 そのために、そのような制御に関連するオーバヘッドもまた解消された。
ある実施例では、本発明の自動読み出しシーケンサと、自動書き込みシーケンサ とが、記憶制御集積回路の計算機バスインタフェース回路内に含まれている。自 動読み出しシーケンサと、自動書き込みシーケンサとが、ホスト計算機の計算機 データバスをインタフェースする。自動読み出しシーケンサは、ホスト計算機と 対話し、マイクロプロセッサの介入なしに、ホスト計算機へのデータの複数のセ クタの転送のための要求されるホスト計算機割り込み信号を発生する。同様に、 自動書き込みシーケンサは、ホスト計算機と対話し、マイクロプロセッサの介入 なしに、ホスト計算機からのデータの複数のセクタの転送のためのホスト計算機 割り込み信号を発生する。ある実施例では、記憶制御集積回路もまた、バッファ 制御回路と、ディスク制御回路と、マイクロプロセッサインタフェース回路とを 含む。
バッファ制御回路と、ディスク制御回路と、マイクロプロセッサインタフェース 回路とは、従来技術の記憶制御回路内で用いられているものと等しい。
新規なタイマが、本発明の自動読み出しシーケンサと自動書き込みシーケンサと 共に用いられる。タイマは、2つの独自なタイマとして機能する。特に、タイマ は、第1の予め決められた値と第2の予め決められた値とを記憶する手段を含む 。タイマは、予め決められた値の各々に関連するイネーブル信号を有する。予め 決められた値の内の一方のためのイネーブル信号を受け付けたとき、その値がプ ログラム可能なタイマにロードされ、そのプログラム可能なタイマがスタートす る。プログラム可能なタイマは、予め決められた値によって決定されてた時間間 隔の後に、タイムアウトを起こす。即ち、本発明のタイマは、ホスト割り込みタ イムアウトタイマ、及びビジータイムアウトタイマとして機能するので、本発明 のシーケンサに必要なハードウェアを減少する。
本発明の自動読み出しシーケンサは、ディスクドライブからホスト計算機へデー タを自動的に転送するために、新規な過程を用いる。この過程では、自動読み出 しシーケンサは、最初に、ホスト計算機からの読み出しセクタ命令に応答して転 送されるセクタの個数を減少する。続いて、ディスクドライブの状態が更新され 、バッファ制御メモリから自動読み出しシーケンサのメモリへデータが先取りさ れる。自動読み出しシーケンサがほぼいっばいになったとき、データを自動読み 出しシーケンサから転送する準備が整ったことを知らせる割り込みが、ホスト計 算機に送られる。
ホスト計算機割り込みに応答して、ホスト計算機は、データを読み出すか、また はディスクドライブの状態を読み出す。もし状態が読み出されたならば、ホスト 計算機割り込みはリセットされ、ホスト計算機タイムアウトタイマがスタートす る。もし、タイマがタイムアウトする前に、ホスト計算機がデータを読み出せな ζすれば、他の割り込みがホスト計算機に送られる。
計算機がデータの読み出しを開始したとき、自動読み出しシーケンサは、データ の転送が完了することを待つ。データの転送が完了したとき、転送されるべきデ ータのセクタが残っているかどうかを確かめるために、セクタの個数がチェック される。もし全てのデータのセクタが転送されたならば、動作は終了する。
もし、転送されるべき更なるセクタが存在するならば、自動読み出しシーケンサ は、とジ−タイムアウトタイマをスタートさせる。タイマがタイムアウトした後 、自動読み出しシーケンサは、バッファ制御メモリの状態をチェックする。バッ ファ制御メモリの、次の動作のための準備が整ったとき、自動読み出しシーケン サは、データ転送の状態を定義するタスクファイルを更新し、転送されるべきセ クタの個数を減少するステップへ分岐する。
同様に、本発明の自動書き込みシーケンサは、ホスト計算機からディスクドライ ブへの、データの複数のセクタを自動的に転送するための、新規な過程を用いる 。この過程では、自動書き込みシーケンサは、最初に、ディスクドライブの状態 を更新し、そしてデータの第1のセクタが転送されるかどうかを決定する。もし 、第1のセクタが転送されるならば、自動書き込みシーケンサは、転送の完了を 待つ。もし次のセクタが転送されるならば、自動書き込みシーケンサは、ディス クドライブがデータを受け付ける準備の整ったことを表すために、ホスト計算機 へのホスト計算機割り込みを発生する。自動書き込みシーケンサは再び、データ の転送か完了するのを待つ。即ち、自動書き込みシーケンサは、ホスト計算機か らの単一の書き込み命令に応答してマイクロプロセッサの介入なしに転送される 、データの第1のセクタと次のセクタとを弁別する。
データの転送が完了したとき、自動書き込みシーケンサは、転送されるべき残り のセクタの個数と、次のセクタのために利用可能なバッファメモリのメモリ空間 とを更新する。次に、更新された利用可能なメモリ空間は、データの次のセクタ のために充分な空間が存在するかどうかを決定するためにチェックされる。もし 充分な空間が存在しなければ、自動書き込み動作は終了する。
もし次のセクタのために充分な空間が存在するならば、転送されるべき残りのセ クタの個数がチェックされる。もし転送されるべきセクタがもはや存在しなけれ ば、動作は終了する。しかし、もし転送されるべき更なるセクタが存在するなら ば、自動書き込みシーケンサはビジータイムアウトタイマをスタートさせる。タ イマがタイムアウトした後、シーケンサは、バッファ制御メモリの状態をチェッ クする。バッファ制御メモリが、次の動作に対する準備を整えたとき、自動書き 込みシーケンサは、データ転送の状態を定義するタスクファイルを更新し、ディ スクドライブの状態を更新するステップへ分岐する。
この全体の過程は、自動書き込みシーケンサのハードウェアによって制御される ので、ディスクドライブの動作を制御スるマイクロプロセッサによる介入は、必 要ない。従って、マイクロプロセッサのプログラミングオーバヘッドは減少し、 マイクロプロセッサは、計算機データバス上のデータの転送を制御する代わりに 、他のタスクを実行することができる。
図面の簡単な説明 第1泗は、計算機とハードディスクドライブとを含む、従来技術の計算機システ ムのブロック図である。
第2図は、本発明に基づく、自動ハードウェア読み出しシーケンサと自動ハード ウェア書き込みシーケンサとを含む記憶制御集積回路を有する、ハードディスク ドライブと、計算機とを含む計算機システムのブロック図である。
第3図は、本発明のハードウェアシーケンサのより詳細なブロック図である。
第4図は、本発明の自動ハードウェア読み出しシーケンサによって実行される動 作のプロセス流れ図である。
第5図は、本発明の自動ハードウェアの書き込みシーケンサのプロセス流れ図で ある。
第6図は、本発明のハードウェアシーケンサで使用されることに適したカウンタ の概略のブロック図である。
第7A図及び第7B図は、本発明の自動読み出し及び自動書き込みシーケンサで 使用される、論理回路、カウンタ、レジスタ、及びメモリ装置のより詳細なブロ ック図である。
第8図は、本発明のセクタ数カウンタの一実施例のブロック図である。
第9図は、第8図の要素5UCL8RAのより詳細な模式図である。
第10図は、第8図の要素CMP8のより詳細な模式図である。
第11図は、本発明のヘッド数カウンタの詳細なブロック図である。
第12図は、第11図の要素5UCLT4RBの詳細な模式図である。
第13図は、第11図の要素CMP 4の詳細な模式図である。
第14図は、本発明のシリンダ数カウンタのより詳細な模式図である。
第15図は、第14図の要素5UCL8RBのより詳細な模式図である。
第16図は、本発明のセクタカラ、ンタの詳細な模式図である。
第17図は、第16図の要素5DCL8RBのより詳細な模式図である。
第18図は、本発明のセクタカウント減少回路の詳細な模式図である。
第19A図及び第19B図は、本発明のホスト計算機割り込み発生回路の詳細な 模式図である。
第20図は、本発明の自動シーケンサ回路の詳細な模式第21図は、本発明のタ イマの模式図である。
第22図は、第21図の要素5DCL8Rの模式図である。
第23図は、同一な回路である、ラッチ回路LATCf(8A及びLATCH8 Bのより詳細な模式図である。
第24図は、第22図の要素MUX21X8のより詳細なブロック図である。
第25図は、同期ホスト計算機読み出しデータ信号を発生する回路の模式図であ る。
第26図は、本発明のビジータイマ制御回路の模式図である。
第27図は、本発明の更新制御回路770の模式図である。
第28図は、本発明の自動書き込みセクタカウンタの詳細なブロック図である。
第29図は、第28図の自動書き込みセクタカウンタの要素5DCL8Sの詳細 な模式図である。
第30図は、本発明の自動書き込みセクタカウント減少回路の模式図である。
l吸尖2■11泗 本発明の原理に基づけば、ハードディスクドライブとホスト計算機の計算機デー タバスとの間のデータの複数セクタの転送が、ハードディスクドライブ内の記憶 制御集積回路の計算機バスインターフェース内のハードウェアによって制御され る。データの複数のセクタは、ディスクドライブの動作を制御するマイクロプロ セッサの介入なしに転送される。概ね、そのようなマイクロプロセッサは、ハー ドディスクドライブ内に配置されている。本発明の計算機バスインタフェース回 路は、以下により詳しく説明されるように、ホスト計算機データバスと計算機バ スインタフェース回路との間で自動的にデータを転送するばかりでなく、状態情 報を生みだし、ホスト計算機への割り込みを生みだし、タスクファイルレジスタ を更新する。
ある実施例では、本発明の自動読み出しシーケンサ250と自動書き込みシーケ ンサ260(第2図)とが、記憶制御集積回路230の計算機バスインタフェー ス回路234内に含まれている。シーケンサ250、及び260は、ホスト計算 機210の計算機データバス215とインタフェースする。ホスト計算機210 は、 “ATパーソナルコンピュータ“と呼ばれているIBMパーソナルコンピ ュータか、そのような計算機の互換機であることが好ましい。
この実施例では、記憶制御集積回路230は更に、バッファ制御回路233、デ ィスク制御回路232、マイクロプロセッサインタフェース回路231、及びバ ッファクロック270を含む。バッファクロック270と同様に、回路231. 232、及び233は、従来技術の記憶制御回路130のそれらの回路と等しく 、当業者にはよく知られている。以下の詳細な開示内容を考慮して、本発明のシ ーケンサ250及び260に使用するための従来技術の回路の変更は、当業者に 取って明らかである。
既に説明したように、ディスクインタフェース回路232は、 (1)ディスク 240への書き込み時のエラー補正コードの発生、及び(2)ディスク240か らの読み出し時のエラーの検出と補正ばかりでなく、ディスク240への、及び ディスク240からのシリアルデータの転送を行う。
ディスクインタフェース回路232は、この実施例では8とットバスであるバス 237上で、バッファ制御回路233への、及びバッファ@御回路233からの 、データの転送を行う。バッファ制御回路233は、数本のシリアル制御ライン (図示されていない)に沿ったアドレスバス224及びデータバス225によっ て、概ねスタティックランダムアクセスメモリであるランダムアクセスメモリ  (RAM)222に連結されている。バッファ制御回路233によって、ディス クインタフェース回路232へ送られる、及びディスクインタフェース回路23 2から受け取られる、データは、RAM222から検索さ瓢 及びRAM222 へ記憶される。
バッファ制御回路233はまた、計算機バスインタフェース回路234ヘデータ を送り、かつ計算機バスインタフェース回路234からデータを受け付ける。再 び、バッファ制御回路233によって、計算機バスインタフェース回路に送られ るデータ、及び計算機バスインタフェース回路から受け付けられたデータは、R AM222から検索され、及びRAM222へ記憶される。データは、計算機バ スインタフェース回路234内のFIFOメモリに連結されたバス238を通し て送られへ 及び受け付けられる。この実施例では、バス238もまた8ビツト バスである。
バ・ノフ7制御回路233は、HFAVAIL、AUTOWRGO,AUTOR DGO,HPENS HPWRT及びBNRDYF)(ラインを含む幾つかのラ インによって、計算機バスインタフェース回路234内のシーケンサ250及び 260に連結されている。ディスクドライブマイクロプロセッサ221の介入な しに、データの複数のセクタを自動的に転送する、これらのライン上の信号の順 序が、以下により詳しく説明される。
マイクロプロセッサインタフェース回路231は、記憶制御回路230の状態を マイクロプロセッサ221へ戻すレジスタからの読み出しと同様に、記憶制御回 路230内のレジスタへのアクセス、及び特定の動作のために記憶制御回路23 0を構成するレジスタへの書き込みのために、マイクロプロセッサ221への割 り込みを許可する。データバス235は、マイクロプロセッサ221、マイクロ プロセッサインタフェース回路231、計算機バスインタフェース回路234、 バッファ制御回路233、及びディスクインタフェース回路232を接続する。
更に、マイクロプロセッサ制御バス236は、記憶制御回路230内の各回路2 31.232.233、及び234を接続する。通常、マイクロプロセッサ22 1は、ディスクドライブ220内に配置されている。しかしながら、マイクロプ ロセッサ221の位置は、本発明の重要な技術的視点ではない。
重要な技術的視点は、マイクロプロセッサ221がディスクドライブ220の動 作を制御するようにプログラムされていることである。
計算機バスインタフェース回路内の自動読み出しシーケンサ250及び自動書き 込みシーケンサ260は、マイクロプロセッサ221の介入なしに、データの複 数のセクタをバッファRAM222へ転送しく書き込み動作)、及びバッフyR AM222から転送する(読み出し動作)ので、上述された従来技術のディスク ドライブ120と比較して、シーケンサ250及び260は、計算機210とデ ィスクドライブ220との間のデータの転送に必要な時間を非常に減少する。
読み出し動作中、ホスト計算機210からの読み出し命令を受け付けた後、読み 出しシーケンサ250は、読み出し動作を開始するべく、ホスト計算機210へ の割り込み信号(割り込み)を発生する。割り込み信号に応答して、ホスト計算 機210は、データの読み出しを開始するか、またはディスクドライブ220の 状態をチェックする。もしディスクドライブの状態がチェックされるならば、ホ スト計算機割り込みはリセットされる。
読み出し命令を受け付け、かつホスト計算機割り込みを発生した後、読み出しシ ーケンサ150は、ホスト計算機120への割り込み信号が、データ転送の開始 に先立って、クリアされたかどうかを決定するために、チェックを行う。
もしホスト計算機割り込みがクリア即ちリセットされているならば、ホスト割り 込みタイムアウト間隔と呼ばれる、第1の予め決められた時間間隔の後、自動読 み出しシーケンサ250は、ホスト計算機割り込みを再び発生する。第1の予め 決められた時間間隔の後の、自動読み出しシーケンサ250によるホスト計算機 割り込みの再発生は、本発明のシーケンサ250を伴ったディスクドライブを含 む計算機システムの性能を高める。
従来技術のシステム(第1図)では、ホスト計算機割り込みがクリアされたとき 、マイクロプロセッサ121が割り込みを再発生することを要求される。即ち、 ホスト計算機割り込み状態をポーリングする命令と、割り込みを再発生する命令 とは、ディスクドライブ120の電源投入時に、マイクロプロセッサに提供され る命令に含まれていなければならない。更に、この命令の集合は、マイクロプロ セッサ121からの処理時間を要求するので、マイクロプロセッサは他のタスク のためには利用可能ではない。もしマイクロプロセッサ121が、割り込みの再 発生に失敗したならば、概ねホスト計算機110がタイムアウトし、かつエラー を報告する。この場合、ユーザはディスクアクセスを再試行するか、読み出し過 程を打ち切ることを要求される。
従って、性能は更に低下する。これら性能低下の全ては、本発明の自動読み出し シーケンサ250によって取り除かれる。
ホスト計算機割り込み過程に関連する性能低下を取り除くことに加えて、ホスト 計算機210は最初に、ヘッド数、シリンダアドレス、セクタアドレス、及び計 算機バスインタフェース回路234のタスクファイルレジスタに転送されるべき セクタ数をセットする。データの1セクタがホスト計算機210に転送された後 、本発明の自動読み出しシーケンサ250が、ヘッド数、シリンダアドレス、セ クタアドレス、及び計算機バスインタフェース回路234のタスクファイルレジ スタ内に転送されるべき残りのセクタ数を更新する。一方、従来技術のシステム は、マイクロプロセッサ121(第1図)が個々に各タスクファイルレジスタを 更新することを要求する。結果的に、マイクロプロセッサ221の処理オーバヘ ッドは、マイクロプロセッサ121よりも減少される。
タスクファイルレジスタが更新された後、自動読み出しシーケンサ250は、自 動的にホスト計算機割り込みを再発生し、かつデータの次のセクタを転送する。
ホスト計算機割り込み信号及びタスクファイルレジスタの制御は、マイクロプロ セッサ221からの援助または介入なしに完全に実行される。
即ち、従来技術のシステムとは異なり、マイクロプロセッサ221が自動読み出 しシーケンサの割り込みを許可した後、シーケンサ250はホスト計算機210 に関連する動作を制御し、そしてマイクロプロセッサ221はディスクドライブ 220の動作に関連する他の機能を実行するために利用可能である。即ち、シー ケンサ250は更に、従来技術のドライブ120よりもディスクドライブ220 の動作を改良する。
以下により詳しく説明されるように、自動書き込みシーケンサ260の動作は、 データの複数のセクタが、マイクロプロセッサ221の介入なしに、データバス 215からRAM220へ転送されることを除き、自動読み出しシーケンサ25 0の動作と等しい。最初に、ホスト計算機210は、ヘッド数、シリンダアドレ ス、セクタアドレス、及び計算機バスインタフェース回路234のタスクファイ ルレジスタへ転送されるセクタ数をセットする。データの1セクタが、ホスト計 算機210から転送された後、自動書き込みシーケンサ260は、シリンダアド レス、セクタアドレス、及び計算機バスインタフェース回路234のタスクファ イルレジスタへ転送されるべき残りのセクタ数を自動的に更新する。
タスクファイルレジスタを更新した後、自動書き込みシーケンサ260は、ホス ト計算機210からディスクドライブ220への次のセクタの転送を開始するべ く、ホスト計算機210へ割り込みを送る。ホスト計算機割り込みが、データの 第1のセクタの転送に先だって送られることはなく、ホスト計算機割り込みは、 データの第2のセクタの転送に先立って送られるということに注意するべきであ る。
自動書き込みシーケンサ260は、ホスト計算機210からの単一の書き込み命 令に応答して転送される、データの第1のセクタとそれに続くセクタとを弁別す る。
従来技術のシステムとは異なり、マイクロプロセッサ221がシーケンサ260 を割り込み許可した後、シーケンサ260がホスト計算機210に関する動作を 制御するので、マイクロプロセッサ221は、ディスクドライブ220の動作に 関連した他の機能を実行するために利用可能である。即ち、自動書き込みシーケ ンサ260は更に、従来技術のディスクドライブ120よりもディスクドライブ 220の動作を改良する。
ある実施例では、本発明のハードウェアシーケンサ250及び260は、多くの 共通な回路を共有するので、余分の構成要素及びまたは回路が取り除かれる。特 に、ハードウェアシーケンサ250及び260は、共通のFIFOメモリ回路3 40、共通のセクタカウンタ330、及び共通のタイミング回路310を有する 。自動読み出し制御回路350は、自動読み出しシーケンサ250によって要求 される機能を実行し、一方自動書き込み制御回路360は、自動書き込みシーケ ンサ260によって要求される機能を実行する。第3図では、種々の回路を接続 するラインは単なる例示に過ぎない。実際の接続は以下により詳しく説明される 。
電源が最初にディスクドライブ220へ加えられたとき、マイクロプロセッサ2 21は、トラック内のセクタの最大数と、レジスタ320内のヘッド数の最大値 をセットする。
更に、プログラマブルタイマ310は、2つの予め決められた値をロードされる 。第1の予め決められた値が選択され、かつタイマ310がスタートしたとき、 タイマ310は、第1の予め決められた時間間隔の後にタイムアウトする。ここ で、 “タイムアウト”は、タイマ310がスタートした後の予め決められた時 間間隔の経過を意味し、予め決められた時間間隔の後に、タイマ310は出力信 号を発生する。
第2の予め決められた値が選択され、かつタイマ310がスタートしたとき、タ イマ310は、第2の予め決められた時間間隔の後にタイムアウトする。即ち、 タイマ310は、ディスクドライブ220の電源投入時に、2つのタイムアウト 期間を決定する2つの値をロードされる二重機能のプログラマブルタイマである 。時間の値は、ディスクドライブ220が用いられている計算機システムに基づ いて、ユーザによって選択される。即ち、タイムアウトの時間間隔は、特定のコ ンピュータシステムの工場ではなく、ユーザの立場から決定することができるの で、タイマ310は更に、記憶コントローラ230の動作を向上させる。
更に、単一のタイミング回路が実際に2つの独立したタイマとして機能するので 、集積回路230の複雑さ及び大きさを減少させる。
自動読み出しシーケンサ250を割り込み可能にするために、マイクロプロセッ サ221は、複数のセクタの転送を割り込み許可するための信号ENMULXF R,自動読み出しシーケンスを割り込み許可するための信号ENAUT ORD 、 及びホスト計算機割り込みを割り込み許可するための信号ENAHI NT をセットする。ある実施例では、信号E N M U L X F R,E N  A U T ORD、及びENAHTNTは、マイクロプロセッサ221によ ってセットされた、レジスタ内のビットによって駆動される。
自動読み出しシーケンスを開始するために、ホスト計算機210は、データバス 215を通して、1)セクタカウントレジスタ330にロードされる、転送され るべきデータのセクタ数、2)セクタ数レジスタに記憶される、転送されるべき データの第1のセクタのセクタ数、3)ドライブ/ヘッドレジスタに記憶される 、ドライブ及びヘッド数、4)シリンダローレジスタに記憶される、スタートン リンダアドレスの、概ね8ビツトである下位ビット、及び5)シリンダハイレジ スタに記憶される、スタートシリンダアドレスの概ね8ビツトである上位ビット を、送ることによって自動読み出しシーケンサ250を初期化する。これらのレ ジスタはレジスタ320に含まれている。ここで、 ″下位とノド”は、アドレ スの最も重要でない複数のピントを表し、 “上位ビット“は、アドレスの最も 重要な複数のビットを表す。計算機バスインタフェース回路234を通しての、 ホストコンピュータ210による、レジスタ320へのロード、及びセクタカウ ンタ330の初期化は、当業者にはよく知られている。
読み出し動作のために、ホスト計算機210がレジスタを初期化した後、ホスト 計算機210は、計算機バスインタフェース回路234への読み出しセクタ命令 を発生する。
読み出しセクタ命令は、タスクファイルレジスタ320内のホスト命令レジスタ に記憶される。
ホスト計算機210が読み出しセクタ命令を発生したとき、リクエストされたセ クタは、既にバッファメモリ222内に存在しても良い。概ね、データの複数の セクタは、マイクロプロセッサ221が、 “リードアヘッド(readahe ad)”を実行するべくブaグラムされているので、バッファメモリ220内に ロードされている。これは、先の読み出しセクタ命令に応答して、マイクロプロ セッサ221が、次の読み出し動作でリクエストされるセクタが、現在読み出さ れているセクタに隣接するセクタになるであろうことを予測して、要求されたセ クタに隣接する1個若しくは複数のセクタをメモリ220内ヘロードすることを 意味する。 “リードアヘッド″過程の結果として、バッファメモリ222ヘロ ードされた第1のセクタの幾何学的アドレス、即ちセクタアドレス、シリンダア ドレス、及びヘッド数は、レジスタ“5TART”に記憶される。
自動読み出し制御回路350は、レジスタ5TARTに記録された値と、レジス タ320のセクタ数、シリンダアドレス、及びヘッド数を比較する。もしそれら の数値が等しければ、一致が存在し、比較器の出力信号は、計算機バスインタフ ェース回路234からバッファ制御回路233へのラインAUTORDGO上の パルスの発生となって現れる。ラインAUTORDGO上のパルスは、バッファ 制御回路233に、自動読み出しシーケンサ250へのホストポートイネーブル ラインHPEN上の論理高の信号を発生させる。
もし一致が存在しなければ、マイクロプロセッサ221は信号ENAUTORD を論理低の値にリセットし、ディスク240からバッファメモリ220へのデー タのリクエストされたセクタの転送を開始する。ある実施例では、一致が存在す るかどうかを検知するように、ユーザがマイクロプロセッサ221をプログラム する。特に、もし一致が存在するならば状態ビットAUTORDSTがセットさ れる。ユーザは、一致が存在するかどうかを決定するために、状態ビットAUT ORDSTをポーリングするようにマイクロプロセッサ221をプログラムする ことができる。代わりに、ビットAUTORDSTがセット状態の時、割り込み がマイクロプロセッサ221へ送られるように、回路234がユーザによって構 成されても良い。割り込みに応答して、マイクロプロセッサ221は、一致が発 生したかどうかを確かめるためにビットAUTORDSTを読み込む。もし一致 が存在しなければ、マイクロプロセッサ221に応答したディスク240からバ ッファメモリ220へのデータの転送は、当業者にはよく知られている。
データのリクエストされたセクタが、バッファメモリ222内に存在するとき、 バッファ制御回路233から計算機バスインタフェース回路234へのバッファ ノットレディラインBNRDYFH上の信号は、論理低になり、マイクロプロセ ッサ221はレジスタBPOTCTLのビットHPENを論理高にし、一方論理 高になったビットHPENは、バッファ制御回路233から計算機バスインタフ ェース回路234へのホストポートイネーブルラインHPEN上の信号を論理高 にする。ラインHPEN上の論理高の信号は、自動読み出しシーケンスを開始す る。ラインHPEN上の論理高の信号は、ハードウェアによって自動化された読 み出し過程400のスタートステップ401である。
ラインHPEN上の信号に応答して、自動読み出し制御回路350は、セクタカ ウンタ330を減少させ、即ちセクタカウンタ更新ステップ402を実行する。
即ち、本発明の原理に基づいて、自動読み出しシーケンサ250は、タスクファ イルのこの部分を目動的に更新する。
次に、回路350が状態更新ステップ403を実行する。
状態更新ステップ403は、 (1)ディスクドライブがビジーでないことを表 示するために、信号BUSYをリセットすることによって、及び(2)ディスク ドライブ220が、ホスト計算機210とディスクドライブ220との間の1ワ ード(2バイト)または1バイト(8ビツト)の転送に対して準備が整っている ことを表示するために、信号DRQをセットすることによって、ドライブ状態レ ジスタを更新する。この実施例では、信号BUSYは、信号DRQの補数である 。
イネーブル信号、即ちホストポートイネーブルラインHPEN上の論理高の信号 は、RAM220からFIFO回路340へのデータのリクエストされたセクタ の転送を開始する。この過程は、状態更新ステップ403に含まれる。
FIFO回路340は、FIFOメモリがほぼいっばいであることを表す、自動 読み出し##回路350へのFIFOニアリーフル信号を発生する。ある実施例 では、FrFOメそりは16バイトの大きさであり、ニアリーフル信号は、FI FO回路340内のFIF○メモリが約88%満たされたとき、即ちメモリ内の 14バイトがロードされた後に発生する。
FIFOニアリーフル信号に応答して、動作はホスト割り込みセットステップ4 04へ遷移する。ホスト割り込みセントステップ404は、自動読み出し制御回 路350に、ホスト計算機210への割り込みを送らせる。即ち、回路350は 、マイクロプロセッサ221の介入なしに、ホスト計算機210へ割り込みを送 る。割り込みに応答して、ホスト計算機210は、FTFO回路340からのデ ータの読み出しを開始するか、またはレジスタ320からのディスクドライブ状 態の読み出しを開始する。
ホストアクンコンチエノクステノブ405では、自動読み出し制御回路350は 、ホスト計算機210がデータを読み出すか、ディスクドライブ状態をチェック するかを決定する。もしホスト計算機210が、ディスクドライブ状態をチェッ クするならば、回路350は、ホスト計算機割り込みをリセットし、割り込みタ イマ開始ステップ406へ遷移する。
割り込みタイマ開始ステップ406では、回路350は、タイマ310へ第1の 予め決められた値HI N T T I M Eをロードし、かつタイマ310 をスタートする。値HINTT IMEによって初期化された第1の予め決めら れた時Ij1間隔の後、タイマ310は、ホスト割り込みタイムアウト信号を発 生する。概ね、この予め決められた時間間隔は、約10マイクロ秒(μ5ec) から約500マイクロ秒の範囲内にある。上述されたように、実際の値は、計算 機210内へのドライブ210のインストール時に、ユーザによって選択される 。
タイマ310がスタートした後、動作はタイムアウト/読み出しチェックステッ プ407に遷移する。もし、タイマ310が第1の予め決められた時間間隔をカ ウントダウンし、かつ割り込みタイムアウト信号を発生する前に、ホスト計算機 210かFIFO回路340内のデータを読み出すならば、動作は転送完了チェ ックステップ408へ遷移する。この場合、タイマ310からの次のホスト割り 込みタイムアウト信号は、ホスト計算機210のFIFO340からのデータの 読み出しの開始に応答して回路350から発生した信号によってマスクされる。
もしホスト計算機210が、第1の予め決められた時間間隔の完了の前に、FI FO回路304内のデータの読み出しができなければ、タイマ310は、ホスト 割り込みタイムアウト信号を発生する。ホスト割り込みタイムアウト信号に応答 して、自動読み出し制御回路350は、他のホスト計算機割り込みを発生するホ スト割り込みセットステップ404へ動作を戻す。上述したように、自動読み出 し制御回路350によるホスト計算機割り込みの発生は、ホスト計算機210が 、読み出しセクタ命令によってタイムアウトすること、及びユーザの、ディスク ドライブ220へのデータへのアクセスの打ち切り、失敗、または再試行をリク エストすることを妨げる。
ホスト計算機割り込みがステップ404でセットされたとき、ステップの以前の シーケンスにであい、続いてホスト計算機210は、ディスクドライブ220の 状態をチェックする。代わりに、ステップ405で、ホスト計算機210かFI FO回路340のデータの読込みを開始しても良い。この場合、動作は、転送完 了チェックステップ4゜8に直接遷移する。
転送完了チェックステップ408は、いつデータのセクタがホスト計算機210 へ転送されたかを決定するために、FIFO回路340からの信号を連続的にポ ーリングする。
ココテ、FIFO回路340は、FIFOメモリ、及びFIFOメモリの動作を 監視しかつ制御するためのそのようなメモリに関連した回路を意味する。FIF O回路は、異なったバス速度を伴った複数の回路をインタフェースするために用 いられ、かつそのためにFIFOメモリの制御、利用、及び監視は、当業者には よく知られている。これまで言及された従来技術の各記憶コントローラは、FI FOメモリと、関連する回路とを含む。例えば、Adaptecによって販売さ れている、部品番号AlC−6060及びAlC−7160の記憶制御回路は、 本発明の自動シーケンサに用いるのに適したFIFOメモリ及び回路を含む。
データのセクタが計算機210に転送されたとき、F■FO回路340は信号E MPTYDONEを発生する。信号DRQがリセットさね、信号BUSYがセッ トされる。
とはいえ、もし最後のセクタが送られたならば、ユーザによって特定された状態 に対して、信号DRQは、リセットされ、かつ信号BUSYがセットされる。も し、ホスト計算機210が、データを直接読み出し、そのためにホスト計算機割 り込みがリセットされないならば、ホスト計算機割り込みは、自動的にリセット される。とはいえ、初期化の過程に於いて、ビットENHINTR8TLがセッ トされ、そのビットがホスト計算機割り込みの自動的なりリアを禁止するように 、ユーザがマイクロプロセッサをプログラムしても良い。
データの転送、及び種々の信号の更新が完了した後、動作はセクタ数チェックス テップ409に遷移する。もしセクタカウンタ330がOの値を持つならば、全 てのセクタが転送され、動作は終了する。さもなければ、動作は、第2の予め決 められた間隔を待つステップ410へ遷移する。
第2の予め決められた期間を待つステップ410は、タイマ310へ第2の予め 決められたタイマ数値BUSYTIMEをロードし、タイマ310をスタートさ せる。第2の予め決められた時間間隔は、約1マイクロ秒から約270マイクロ 秒の範囲内にあり、好ましくは約35マイクロ秒である。従来技術の記憶制御回 路とは異なり、本発明の自動読み出しシーケンサ250は、マイクロプロセッサ 221の処理時間を必要としない。従って、マイクロプロセッサ221は他の動 作を行うことができ、第2の予め決められたタイムアウト間隔を確立する必要も なければ、タスクファイルレジスタを更新する必要もない。
第2の予め決められたタイムアウト間隔の後、動作はバッファレディチェックス テップ411に遷移する。バッファ制御回路233が、データの他のセクタがバ ッフyRAM222に含まれていることを示すための、ラインBNRDYFH上 のパブファノットレディ信号を論理低にセットするまで、バッファレディチェッ クステップ411は動作を遅延する。
自動読み出し制御回路350によって、ラインBNRDYFH上の論理低の信号 が受け付けられたとき、動作は幾何学的アドレス更新ステップ412へ遷移する 。幾何学的アドレス更新ステップ412は、レジスタ320内のセクタ数、シリ ンダアドレス、及びヘッド数を更新する。結果的に、制御回路350は、読み出 し動作に関連したタスクファイル内の残りのレジスタを自動的に更新する。そし て、制御回路350は、動作をセクタカウンタ更新ステップ402へ遷移するこ とによって、自動的にデータの次のセクタの転送を開始する。
従来技術のシステムよりも大幅に性能を改良する本発明の重要な特徴は、セクタ カウンタチェックステップ409が、ホスト計算機210が1個以上のセンタの 転送をリクエストしたことを判定するときに、動作が、マイクロプロセッサの介 入なしに自動的に継続するということである。
上述されたように、従来技術のシステムは、マイクロプロセッサとホスト計算機 とのハンド・シェイクを必要とし、各セクタの転送を独立した事象として処理し た。
自動書き込みシーケンサ260の動作は、データの転送の方向が異なること、即 ちデータがホスト計算機210からディスクドライブ220へ転送されることを 考慮すれば、自動読み出しシーケンサ250の動作と概ね等しい。更に、ある実 施例では、後により詳しく説明されるように、自動書き込み制御回路360は、 自動読み出し制御回路350で用いられている回路と等しい回路を含む。従って 、目勤続み出し制御回路350と自動書き込み制御回路360を使用することは 、本発明の原理の単なる例示であって、本発明を、2つの異なった制御回路に限 定することを意図するものではない。更に、自動読み出しシーケンサ250また は自動書き込みシーケンサ260の何れかが、計算機バスインタフェース回路内 に独自に用いられても良い。
電源投入時のリセット動作の間、自動書き込みセクタカウンタは、その最大値で あるFFhがセットされる。ホスト計算機210による書き込み命令の開始に先 立って、マイクロプロセッサ221は、ある特定数のセクタのために利用可能な スペースをRAM222内に割り当て、スペースが割り当てられたセクタの個数 に、自動書き込みセクタカウンタを初期化する。書き込みオートメーション過程 のスタートステップ501の前に、ホスト計算機210は再び、計算機データバ ス215からの幾何学的アドレスをレジスタ320内の適切なレジスタにロード する。同様に、セクタカウンタ320は、計算機210からディスクドライブ2 20へ転送されるセクタの個数をロードされる。
幾何学的アドレスがロードされた後に、ホスト計算機221が書き込みセクタ命 令を発生させ、かつ信号E N M ULXFRが論理高のとき、書き込みセク タ命令は、タスクファイルレジスタ320内のホスト命令レジスタに記憶され、 書き込み制御回路360は、バッファ制御回路233へのラインAUTOWRG O上にパルスを発生させる。
ラインAUTOWRGO上の論理高の信号に応答して、バッファ制御回路233 は、書き込み制御回路360へのホストポートイネーブルラインHPEN上の信 号と、ホストボート書き込みラインHRPRT上の信号とを論理高にセットする 。これが、本発明のハードウェア書き込みオートメーション過程500のスター トステップ501である。
ラインHPEN及びHRWRT上の信号に応答して、制御回路360の動作は、 状態更新ステップ502へ遷移する。
自動書き込み初期化に応答して、ステップ502の自動書き込み制御回路は、レ ジスタ320内の状態レジスタ内のビットBRQをセットし、かつビットBUS Yをリセットするので、それらのビットは、ホスト計算機によって読み出される ことが可能である。次に、ステップ503では、自動書き込み制御回路360は 、以下により詳しく説明されるように、これが、この書き込みリクエストに応答 して、ディスクドライブ220へ書き込まれるべき第1のセクタであるかどうか を決定する。
もしこれが、転送された第1のセクタならば、動作は、第1セクタチエツクステ ツプ503がらセクタ転送完了チェックステップ505へ遷移する。しかしなが ら、もしこれが転送されるべき第1のセクタでなければ、動作は、ホスト割り込 みセットステップ504へ遷移する。ホスト割り込みセットステップ504は、 データの他のセクタの転送の開始を表示するべく、ホスト計算機210へ割り込 みを送る。再び、この割り込みが、マイクロプロセッサ221による介入なしに 送られる。割り込みを受け付けた後に、ホスト計算機210は、データの次のセ クタの転送を開始し、動作はステップ505に遷移する。
データのセクタが、FIFO回路340を通して転送さレタトキ、FIFO回路 340は再び信号EMPTYDONEを発生する。信号EMPTYDONEに応 答して、動作はカウンタ更新ステップ506へ遷移する。カウンタ更新ステップ 506では、セクタカウンタ330及び自動書き込みセクタカウンタが減少させ られる。
カウンタが減少させられた後、自動書き込みセクタカウンタチェックステップ5 07は、自動書き込み制御回路360の自動書き込みセクタカウンタの値がOの 値を有するかどうかを判定する。もし自動書き込みセクタカウンタがOでないな らば、チェックステップ507は動作をセクタカウンタチェックステップ501 へ遷移させる。
反対に、もし自動書き込みセクタカウンタが値0を有し、かつ転送されるべき更 なるデータが残っているならば、ハードウェア自動書き込み過程500のための バッフ7メモI7222の割り当ては、充分ではない。従って、自動書き込みシ ーケンサ260の動作は終了する。レジスタ状態ビットXFRDONEがセット され、かつ動作は、チェックステップ507から、書き込み動作の制御がマイク ロプロセッサ221へ戻されるステップ508へ遷移する。
マイクロプロセッサ221は、ステップ508に於て、バッファメモリ222へ より以上のスペースを割り当てることができる。もしマイクロプロセッサ221 がメモリ222へ更なるスペースを割り当てるならば、オートメーション継続チ ェックステップ509は、マイクロプロセッサ221がレジスタ状態ビットXF RDONEをクリアするステップ510へ動作を遷移し、更新ステップ514へ の遷移によって、オートメーションは再び開始される。もしマイクロプロセッサ 221が更なるスペースの割り当てに失敗したならば、マイクロプロセッサ22 1は、従来技術のマニュアル方法を用いることによって書き込み動作を完了させ なければならない。
もし自動書き込みセクタカウンタチェックステップ5゜7が、値Oを検知しなけ れば、動作は、セクタカウントチェックステップ511、タイマ開始ステップ5 12、及びバッファレディステップ513、及び更新ステップ514というステ ップを順番に継続する。セクタカウントチェックステップ511、タイマ開始ス テップ512、バッファレディステップ513、及び更新ステップ514は、各 々、上述されたステップ409.410,411及び412と等しい。唯一の相 違点は、バッファレディステップ513が、スペース内にデータがロードされる ことを待つのではなく、バッファメモリ内のスペースが利用可能になることを待 つということである。
上述された開示内容を鑑みて、自動読み出しンーケンサ250と、自動書き込み シーケンサ260のためのハードウェア回路は、当業者によって様々な異なる方 法で実施されてもよい。従って、自動読み出しシーケンサ250及び自動書き込 みシーケンサ260のある実施例の以下のより詳細な説明は、本発明の原理の例 示であって、本発明を、説明された特定の実施例に限定することを1図するもの ではない。
この実施例では、タスクファイル内のシリンダレジスタ、ヘッドレジスタ、及び セクタ数レジスタは、各々、アップカウンタであり、セクタカウンタ3301  及び自動書き込みセクタカウンタは、各々、ダウンカウンタである。とりわけ、 第6図は、シリンダレジスタ、ヘッドレジスタ、及びセクタ数レジスタとして使 用することに適した、アップカウンタ600の実施例のブロック図である。以下 により詳しく説明されるように、カウンタは更なる特徴を有するが、しかし基本 的な動作はカウンタ600によって例示されている。カウンタは、シーケンサ2 50、及び260の動作中にホスト計算機210によって駆動される、 “n” 本の入力バスDと、入力ラインUPDATE、入力ラインCLK、入力ラインR S T、 及び入力ラインLOADを有する。カウンタ600からの出力ライン は、 “n”本の出力バスOUTを含む。
ホスト計算機210は、カウンタ600に書き込まれるべきデータを、非同期に 、バス215、及びバスDに提供するので、ホスト計算機210は、ラインLO AD上に信号を提供する。ラインLOAD上の信号は、ホストコンピュータ21 0によって、論理高レベルから論理低レベルへ駆動され、かつ再び論理高レベル へ戻される。カウンタ6oOは、ラインLOAD上のアクティブローの信号に応 答するので、ラインLOAD上の信号は、バスD上のデータをカウンタ600に ロードする、カウンタ600への同期した1クロツクの幅を有するパルスを発生 する。
ラインtJPDATE上の1クロツクの幅を有するパルス信号は、ラインCLK 上の次のクロックパルスによって、カウンタの値を1増加させることを可能にす る。ラインUPDATE上のパルスが発生し、かつカウンタ600がその最大値 であるならば、カウンタ600は、予め決められた値にリセットされる。ライン CLKはクロック信号を提供し、ラインR8Tはカウンタ600へのリセット信 号を提供する。カウンタ600の値は、常にバスOUT上で使用可能である。
セクタ数カウンタ710(第7A図)は、上述されたカウンタ600の各入力ラ インを有するプログラム可能な8ビツトアツプカウンタであり、ここでカウンタ 600のラインLOADは、ラインWR3ECNUM−である。更に、セクタ数 カウンタ710は、セクタ数カウンタ710に、1トラツク内の最大のセクタ数 を表すプログラム可能な値を提供する8ビツト人カバスMAXSECを含む。あ る実施例では、lトラックの最大のセクタ数は、ディスクドライブ220の電源 投入時に、レジスタへ記憶される。
比較器は、記憶された1トラツク内の最大値を、セクタ数カウンタ710と比較 し、それによってトラック内の最大のセクタ数が処理されたときを決定する。従 って、セクタ数カウンタ710が、1トラツク内の最大のセクタ数を表す値に到 達したとき、比較器からのSECEQMAX上の信号は論理高になる。
ラインUPDATE上にパルスが加えられ、かつセクタ数カウンタ710が、1 トラツク当たりの最大のセクタ数を表す値を有するとき、セクタ数カウンタ71 0はそのような状態に於て、上位7ビツトがクリアされ、最下位ビットがセット されるように構成されているので、セクタ数カウンタ710は値1にリセットさ れる。セクタ数カウンタ710のある実施例のより詳細な模式図が第8図、第9 図、及び第10図に表されている。要素MUX21 (第9図)は、2対1マル チプレクサである。
ヘッド数レジスタの下位4ビツトは、上述されたカウンタ600の各入力ライン を含むプログラム可能な4ビツトアツプカウンタであるヘッド数カウンタ(第7 図)であり、ここでカウンタ600のラインLOADはラインWRHEAT−で ある。更に、ヘッド数カウンタ720は、ヘッド数カウンタ720に最大のヘッ ド数を表すプログラム可能な値を提供する4ビツト入力ラインMAXHEADを 含む。
概ね、最大のヘッド数を課すプログラム可能な値は、ディスクドライブの製造業 者によって決められ、ディスクドライブ220の電源投入時にレジスタにロード される。
比較器は、記憶されたヘッド数の最大値を、ヘッド数カウンタ720の値と比較 するために用いられ、それによっていつ最大のヘッド数が達成されたかを決定す る。従って、ヘッド数カウンタ710が最大のヘッド数を表す値に到達したとき 、比較器からのラインHEADEQMAX上の信号は論理高になる。
セクタ数カウンタ710からのラインSECEQMAXは、ヘッド数カウンタ7 20への入力ラインである。ラインUPDATE上にパルスが存在し、かつライ ンSECEQMAX上の信号が論理高であるとき、ヘッド数カウンタ720は、 その値を1増加する。ラインUPDATE上にパルスが存在し、ラインSECE QMAX上の信号が論理高であって、かつヘッド数カウンタが最大のヘッド数で あるために、ラインHEADEQMAX上の信号が論理高であるとき、ヘッド数 カウンタはその値を0にリセットする。
ヘッド数カウンタ720のある実施例のより詳細な模式図が、第11図、第12 図、及び第13図に表されている。
シリンダ数レジスタ730(第7A図)は、ある実施例では2個の8ビツトシリ ンダ数アツプカウンタからなる、16ビツトアツプカウンタを含む。各8ビツト カウンタは、カウンタ600のための上述された各入力ラインを含み、ここでカ ウンタ600のラインLOADは、シリンダアドレスの上位ビットのためのライ ンWRCYLNHI−1及びシリンダアドレスの下位ビットのためのラインWR CYLNLO−である。もちろん、ラインCL K、D、RS T。
及びUPDATEの単一の集合が、シリンダ数カウンタ730の両方のカウンタ を駆動するために用いられる。セクタ数カウンタ710からのラインS E C E QMA Xは、ヘッド数カウンタ720からのラインHEADEQMAXの ように、シリンダ数カウンタ730の入力ラインとなっている。シリンダ数カウ ンタ730からの2個の8ビツト出力バスは、各々、シリンダアドレスの上位ビ ットと、下位ビットとを提供する。ラインSECEQMAX上の信号とラインH EADEQMAX上の信号とが論理高であって、かつラインUPDATE上にパ ルスが発生するとき、シリンダ数カウンタ730は減少する。カウンタ730の ある実施例のより詳細な模式図が、第14図及び第15図に表されている。
この実施例では減少カウンタである、セクタカウンタ330のより詳細な模式図 が、第7B図に表されている。セクタカウンタ330は、カウンタ600に対し て説明されたような方法で、ディスクドライブ220とホスト計算機210との 間で転送されるべきセクタの個数をロードされる。ラインWR3ECCNTは、 ホスト計算機とディスクドライブとの間で転送されるべきセクタの個数をカウン タ330にロードするために用いられる。カウンタ330の動作は、ラインUP DATE上にパルスが発生したときに、カウンタ300が1だけ減少すること以 外は、上述された動作と等しい。セクタカウンタ330のある実施例のより詳細 な模式図が、第16図及び第17図に表されている。
上述されたように、1トラツク当たりの最大のセクタ数と、最大のヘッド数とが ディスクドライブ220の電源投入時に、マイクロプロセッサ221によって各 々、最大セクタ数レジスタ内と、最大ヘッド数レジスタ内とにプログラムされる 。本発明の計算機バスインタフェース回路234は、ホスト割り込み時間レジス タHINTTIMEと、ビジ一時間レジスタBUSYTIMEとを含む。電源投 入時、マイクロプロセッサ221は、レジスタHTNTTIMEに第1の予め決 められた時間の値をロードし、レジスタBUSYTIMEに第2の予め決められ た時間の値をロードする。
計算機バスインタフェース回路234は、ホストFIFOカウントレジスタHF CT (第7A図)をも含み、そのレジスタは、タスクファイル内のホスト命令 レジスタが書き込みセクタ命令を記憶していることを表示するために、1にセッ トされるビットWRCMDを含む。ホスト命令レジスタが読み出しセクタ命令を 記憶しているとき、もう1つのビットRDCMDが1にセットされる。タスクフ ァイル内のホスト命令レジスタは、ホスト計算機によって記憶制御回路230に 対して発生させ祷られた最後の命令を保持する。レジスタHFCDの5個のビッ トHF CN Tは、16バイトFIFO回路340内に残っているバイト数を 表示する。ピットHFCNT内の値0は、FIFOメモリか空であることを表示 し、値10hは、FIFOメモリがいっばいであること表示している。
自動化された読み出し動作のための初期化過程に於て、第1の予め決められた値 を第2の予め決められた値とが、タイマ310に登録される。続いて、自動読み 出しサイクル400のための初期化プロセスに於て、マイクロプロセッサ221 は、ラインE NMU L X F R上の信号を駆動する、ホストモード制御 レジスタHMODECTLのピントENMULTFRと、ラインENAUTOR D上の信号を駆動する、レジスタHM OD E CT LのビットENAUT ORDとを論理高にセットする。ホスト計算機210は、セクタカウンタ303 及び上述された他のカウンタと同様に、タスクファイル内のレジスタ、即ちセク タ数カウンタ710、ヘッド数カウンタ720、及びシリンダ数カウンタ730 へのロードを行う。
計算機210による読み出しセクタ命令の発生時に、その命令は、タスクファイ ル内のホスト命令レジスタに記憶され、続いて、レジスタHFCT内のビットR DCMDが1にセットされる。上述されたそして本出願の一部とされた引用文献 に説明されているように、記憶制御回路230は、予見する特徴を有し、RAM 222にデータを記憶することができる。RAM222内のデータの最初の幾何 学的アドレスは、レジスタ5TART内に記憶される。回路234の比較器は、 レジスタ5TART内の信号を、計算機バスインタフェース回路234の幾何学 的アドレスタスクファイル内にロードされた値と比較する。もし値が一致するな らば、自動化された読み出しシーケンスを開始する信号が発生する。とりわけ、 計算機バスインタフェース回路234と、バッファ制御回路233との間のライ ンAUTORDGT上にパルスが発生する。ラインAUTORDGT上のパルス に応答して、バッファ制御回路233は、ホストボートイネーブルラインHPE N上の信号を論理高にセットし、ホストポート書き込みラインHPWT上の信号 を論理低にセットする。ラインHPEN上の論理高の信号は、スタートステップ 401である。
もし、レジスタ5TART内の値と、幾何学的アドレスタスクファイル内の値と が一致しなければ、マイクロプロセッサ221は、信号ENAUTORDを禁止 し、ディスク240からバッファメモリ222へのデータのリクエストされたセ クタの転送を開始する。バッファメモリ222がデータの複数のセクタを含んで いるとき、マイクロプロセッサ221は、ラインHPEN上の信号を論理高にセ ットする。
ラインHPEN上の論理高の信号もまた、ラインBTRNS上の信号を論理高に する。ラインWOR上の信号及びラインI−TPWRT上の信号は、論理低であ る。ラインRDOP上の信号は、ラインHPWRT上の信号の補数である。
即ち、ラインRDOP上の信号は、論理高である。セクタカウント減少回路74 0へのラインBTRNSX ENMUL X F R,及びRDOP (第7B 図)上の信号は全て論理高なので、バッファされたバッファクロツタ信号である 。
ラインBCLKC上の次のクロックパルスが、セクタカウント減少回路740に よるライン5ECCNTDECP上にパルスを発生させ、そのパルスがセクタカ ウンタ300の値を減少する。即ち、ハードウェア自動化読み出し過程400が 完了する。
セクタカウント減少回路740のより詳細な模式図が、第18図に表されている 。簡単に言えば、入カラインENMULXFR上の信号が、自動的な複数のセク タの転送を可能にするために論理高になる。入カラインBTRNS上の信号は、 最初の読み出し動作のために、ラインHPEN上の信号によって論理高に駆動さ 瓢 そして次のセクタのために、FIFO回路340内でデータの転送の準備が 整っているとき、論理高である。ラインRDOP上の信号は、自動的な読み出し 動作が実行されているとき論理高であり、ラインWoP上の信号は、自動的な書 き込み動作が実行されているとき論理高である。ラインEMPTYDONE上の 信号は、FIFO回路340が空で、かつセクタの転送が完了したときに論理高 になる。ラインEMPTYDONE上の信号は、読み出し動作及び書き込み動作 の両方で用いられるが、セクタカウント減少回路740は、その信号を自動的な 書き込み動作内でしか用いない。ラインBCLKCは、バッファされたバッファ クロック信号を伝える。
出力ライン5ECCNTDECPは、セクタカウント減少パルスを提供し、ライ ン5ECCNTDECPDは、遅延されたセクタカウント減少パルスを提供する 。
ラインBTRNS上の論理高になった信号と、かっFIFO回路340からのホ ストFIFOアベイラブルラインHFAVArL上の論理高である信号とに応答 して、データはRAM222からFIFO回路340に転送、即ちFIFO回路 340に先取りされる。ビットDRQは、データがFIFO回路340へ転送さ れるとき常にセットされている。ビットBUSYはビットDRQの補数なので、 ビットBUSYはリセットされている。そして、ハードウェア自動読み出しシー ケンスのステップ403が完了する。
ホスト計算機割り込み発生回路745への入力ラインDXFRL、HXFREN 、及びAFULL)1上の信号は、入力ラインENAHI NT上の論理高の信 号を、フリップフロップU23(第19B図)を通してクロックするクロックパ ルスを発生させ、そのフリップフロップU23は、ラインXFRIRQ(第7B 図及び第19B図)上の信号を論理高に駆動する。更に、人力ラインENHI  NDHT上の論理高の信号は、エクスクル−シブORゲート1901の第1入力 端子を駆動する。フリップフロップU23からの信号は、NORゲートU17( 第19B図)を駆動し、そのNORゲートU17は、エクスクル−シブORゲー ト1901の第2入力端子を駆動する。エクスクル−シブORゲート1901の 論理高の出力信号は、出力ラインH1する。
ホスト計算機割り込み発生回路745(第7B図)のより詳細な模式図が、第1 9A図及び第19B図に描かれている。入力ラインA U T ORD S T は、自動読み出し開始ラインである。ラインAUTORDGO上にパルスが発生 すると同時に、ラインAUTORDST上に論理高の信号がセットされる。ライ ンAUTORDST上の信号は状態信号である。ホスト計算機マスタリセットラ インATMR5TLは、アクティブローである。ラインBTRNS上の信号は、 これまでに説明されている。読み出し/書き込み開始人力うインRWSTART 上の信号は、1クロツクの幅を有するパルスであって、読み出しセクタ転送また は書き込みセクタ転送の開始時に、転送される。ホスト計算機221がディスク ドライブ220への書き込み命令を発生するとき、セットオートロー人カライン S E T 、A、 U T OL上の信号は論理低になる。ラインHXFRE N上の入力信号は、ホストポートイネーブルラインHPEN上の信号のバッファ された信号である。ラインBCLK上の信号はバッファクロック信号である。
オールモストフル入カラインAFULLHは、FIF。
回路340からのラインからなる。ラインAFULLH上の信号は、FIFOメ モリがほぼいっばいであることを表示する。FIFOメモリが16バイトFIF Oメモリからなる実施例では、FIFOメそり内の14バイトがロードされたと き、ラインAFULLH上の信号が論理高になる。
入力ラインADONEBは、バッファメモリ222からFIFO回路340への セクタの転送がほぼ完了したことを意味するオールモストダン信号を伝える。5 12バイトの内はぼ511バイトのセクタがバッファメモリ222からFIFO 回路340へ転送されたとき、ラインA D ON EB上の信号は概ね、論理 高状態になる。入力ラインDXFRLは、バッファ制御回路233からのライン である。ラインDXFRL上の信号はアクティブローであり、RAM、 222 かうF I FO回路340へ1バイトのデータが転送される毎に、バッファ制 御回路233によって、ラインDXFRL上に、パルスが発生される。入力ライ ンATDMAENは、本発明では使用されていない。ラインATDMAEN上の 信号は、ここで説明された動作の間は論理低である。ラインRDOP上の信号は 、既に説明された。
この実施例では、ビットE N HI N D HIは論理高にセットされてい る。アクティブローである入カラインSETAT I NTLは、本発明では使 用されていない。しかしながら、もしマイクロプロセッサ221がホスト計算機 割り込みを送ることが必要になったならば、このライン上の信号は、論理低にセ ットされ、次に論理高にセットされる。
ラインS ETXFRI RQ−は、自動シーケンサ750によって駆動され、 以下により詳しく説明される。ラインENAHT NT上の信号は、マイクロプ ロセッサ221によって制御されているレジスタの内の1つのレジスタのあるビ ットによって駆動される。このビットは、ホスト計算機割り込みの割り込みを許 可するために用いられる。ラインATCNDWRL上の信号は、アクティブロー であり、ホスト計算機が読み出し命令または書き込み命令を発生したときに論理 低となる。ラインATMR5TLは、既に説明されている。入カラインATBU SYLAT上の信号は、上述されたBUSY信号をも駆動するビジーレジスタに よって駆動される、ラッチされた信号である。ラインEMPTYDONEX上の 信号は、FIFo回路340が空であって、かつセクタの転送が完了したときに 、論理高になる。
人力ラインENHINTR3TL上の信号は、マイクロプロセッサ221によっ てプログラムされた1つのビ・ソトによって駆動される。もしそのビットが論理 高にセ・ノドされたならば、データのセクタの転送の最後でのホスト計算機割り 込みのクリアは禁止される。もしそのビットが論理低にセットされたとき、即ち ラインE N HI N T RS T L上の信号が論理低であるならば、ホ スト計算機割り込みは、データのセクタの転送の最後で自動的にクリアされる。
人力ラインATDMAENは既に説明されている。ホスト計算機210が状態を 読み出したとき、入カラインATRDSTATL上の信号は論理低となり、その 論理低の信号はラインHI N T上の信号の論理低にリセットする。出力ライ ンHINTは、ホスト計算機割り込み信号をホスト計算機210へ伝える。出力 ラインXFRIRQは、計算機ノくスインタフエース回路234のための内部割 り込み信号である。
従って、とりわけステップ404では、入力ライン5ETAUTOL (第19 A図)上の信号と、ラインATMR3TL (第19B図)上の信号とが両方と も論理高となる。
ホスト計算機210が読み出し命令を発生したとき、ラインATCMDWRL上 の信号は論理低となり続いて論理高に戻る。その結果として、2個のNANDゲ ートU1及びU2(第19A図)によって形成されたラッチは、論理高の出力信 号を有する。NANDゲートU1及びU2によって形成されたラッチからの出力 信号は、フリップフロ・ノブU4の入力端子りを駆動する。従って、ラインHP EN上の信号が論理高になり、その結果ラインHXFREN上の信号が論理高に なったとき、フリップフロップU4はクロックされ、端子NQ上の出力信号は論 理低となる。
フリップフロップU4からの論理低の出力信号は、NANDゲートU5からの出 力信号を論理高に駆動する。2個のクロックがラインBCLKを通過した後、N ANDゲートU5からの論理高の信号が、フリップフロ・ノブU6及びフリップ フロップU7を通してクロックされ、その結果フリップフロップU7の出力端子 Q上に論理高の信号が現れる。N A N DゲートU13からの出力信号は、 読み出し動作の間、論理高に保持される。NANDゲートU12Aからの出力信 号は、ラインATDMAEN上の論理低の信号によって、論理高に保持される。
フリップフロップU7の論理高の出力信号は、NANDゲートU12の5番目の 入力端子に印加される。ラインATDMAEN上の信号の論理低の信号は反転さ れ、かつNA N Dゲート口12の4番目の入力端子を論理高に保持し、入カ ラインRDOP上の信号はNANDゲートU12の3番目の入力端子を論理高に 保持する。バッファRAM 222からFIFO回路340へ1バイトが転送さ れたとき、ラインDXFRL上の信号は論理低となる。この論理低の信号は反転 され、反転された信号は、NANDゲートU12の第2の入力端子を論理高に保 持する。ORゲートU9からの出力信号によって駆動される、N A N Dゲ ート口12の1番目の入力端子は、FIFO回路340からのラインAFULL H上の信号が論理高となったとき、論理高となる。
NANDゲートU12への全ての人力信号が論理高となったとき、出力信号は論 理低となる。ANDゲートU14及びUl5への入力信号は、最初に全て論理高 である。しかし、NANDゲートU12からの信号が論理低になったとき、AN DゲートU14及びUl5からの出力信号は論理低となる。従って、フリップフ ロップU23(第19B図)へのクロックライン上の信号は論理低となる。
ANDゲートU14からの論理低の信号は、フリップフロップU4をリセットし 、フリップフロップU4の出力端子NQの信号を論理高に駆動する。フリップフ ロップU4からの論理高の信号は、NANDゲートU5の出力信号を論理低に駆 動する。その結果、既に説明されたパスと同様のバスに従って、論理低の信号が フリップフロップU6及びUlを通してクロックされ、論理低の信号がNAND ゲ−1−Ul 2の5番目の入力端子に印加され、NANDゲートU12の出力 信号を論理高に駆動する。従って、A N DゲートU14及び[J15からの 出力信号は論理高になる。
ANDゲートU15からの論理高の信号が、フリップフロップU23をクロック し、そしてラインENAHI NT上の論理高の信号が、ORゲート1902及 びNORゲートU17に印加される。その結果、既に説明されたように及び引用 文献で説明されているように、ラインHINT上に割り込みが発生させられる。
ラインHINT上のその論理高の信号は、ハードウェア自動化読み出しシーケン ス400のステップ404を完了する。
回路745から自動シーケンサ回路75o(第7A図)へのラインXFRI R Q上の信号は、ハードウェア自動読み出しシーケンス400のステップ405を 開始する。自動シーケンサ回路750のある実施例のより詳細な模式図が、第2 0図に提供されている。回路750への入力ラインXFRIRQは、内部ホスト 割り込み信号を伝える。人力うインATMR3TL上の信号は、アクティブロー であり、入力ラインATMR8TLはATブロックマスクリセットラインである 。入力ラインRDOPは既に説明されている。入カラインRST−上の信号はア クティブローであり、入力R8T−はパワーオンリセットラインである。入力ラ インATCMDWRLはATコマンドライトシグナルラインであり、入カライン ATCMDWRL上の信号はアクティブローである。人力ラインHRDDATA Pは、ホストリードデータ同期パルスである。入カラインXTIMEOUT上の 信号は、タイマ310からのホストインタラブドタイムアウトパルスである。ラ インEMPTYDONEは、既に説明されたものと同じである。人力ラインCL EARAUTO3−上の信号はアクティブローであり、ラインへ〇TOa上の信 号をクリアするために用いられる。
人力うインLASTSECT上の信号は、最後のセクタの転送を表示する。入力 ラインBCLKCは既に説明されている。出力ラインENXTTMERは、タイ マ310を使用可能にし、かつ第1の予め決められた値をタイマにロードする。
ライン5ETXFRIRQ−上の信号は、アクティブローであり、かつ回路74 5(第19B図)内にホスト計算機割り込みをセットする。ラインAUTO3上 の信号は、以下に更に詳しく説明されるようにビジータイマを使用可能にするた めに用いられる。
回路745(第7B図)から自動シーケンサ回路750(第7A図)へのライン XFRrRQ上の信号の立ち上がりエツジは、自動読み出しシーケンスのステッ プ405を開始し、かつフリップフロップUDI (第20図)をクロックし、 その結果、ラインAUTOI上の信号が論理高になる。既に説明したように、ホ スト計算機210は、ドライブ220の状態をチェックしても良いし、またはF IFO回路340からのデータの読み出しを開始しても良い。
もしホスト計算機210が状態を読み出すならば、ホスト計算機割り込み発生回 路745(第7B図及び第19B図)へのラインATRDSTATL上には、論 理低となり、次に論理高となるパルスが発生する。ラインATRDSTATL上 の信号の立ち下がりエツジは、要素U25及びU24をラッチし、立ち上がりエ ツジはフリップフロップU26及び27をクロックする。フリップフロップU2 7からの出力信号は、フリップフロップU23をリセットし、フリップフロップ U23は、ラインXFRI RQ上の信号を論理低に駆動する。同様に、フリッ プフロップU26からの出力信号は、フリップフロップU22をリセットする。
フリップフロップU22及びU23がらの論理低の信号は、NORゲートU17 の出力信号を論理高に駆動し、NORゲートU17は、エクスクル−シブORゲ ート1901の出力信号を論理低に駆動する。結果として、ラインHI NT上 のホスト計算機割り込み信号はリセットされる。
ラインXFRI RQ上の信号が論理低になったとき、自動シーケンス回路75 0は、ラインENXT I MER上に論理高の信号を発生する。とりわけ、ラ インXFRIRQ上の論理低の信号は、NORゲートU2(第20図)の出力信 号を論理高に駆動する。ラインCLKCを通過する次の2つのクロック信号が、 各々フリップフロップUD2とUD3とを通してNORゲートU2の出力信号を クロックする。フリップフロップUD3の出力信号は、ラインENXT 114 ER上の信号を論理高に駆動する。
ラインENXTIMER上の論理高の信号は、タイマ310(第7A図及び第2 1図)の入力ラインXTIMEENを駆動する。ラインXT IMEEN上の論 理高の信号は、タイマ310へ第1の予め決められた値をロードし、かつタイマ 310をスタートさせる。タイマ310のより詳細な模式図か、第21図、第2 2図、第23図及び第24図に表されている。
タイマ310(第21図)へのクロック入力信号は、入カラインCLK上に提供 され、リセット信号は、ラインR5T上に提供されている。入力ラインDは、マ イクロプロセッサデータバスである。ラインWRYT IMER−上の信号はア クティブローであり、かつ第2の予め決められた値をラッチLATCH8Aにロ ードするために用いられる。
人力うインWRXTIMER−上の信号もまたアクティブローであり、かつ第1 の予め決められた値をラッチLATC88Bにロードするために用いられる。ラ ッチLATCH8A及びLATCH8Bは、第23図の回路LATCHである。
自動シーケンサ回路750(第7A図)の出力ラインEN X T I M E  Rによって駆動されるラインXTIMEENは、ホスト割り込みタイムアウト カウンタイネーブル信号を伝える。ビジータイマ制御回路760のENYT I MERによって駆動される入力ラインYTIMEENは、ビジータイマカウント イネーブル信号を伝える。
出力バスQは、タイマ値出力バスである。ラインYTIMEOUTP上の信号は ビジータイムアウトパルスであり、−刃出力ラインXTIMEOUT上の信号は ホスト割り込みタイムアウトパルスである。ラインYTIMEOUT上の信号は ラッチされたビジータイムアウト信号である。
ラインXTIMEEN上の論理高の信号は、8ビツト2対1マルチプレクサMU X21X8 (第21図及び第24図)を通して、予め決められた値を8ビツト ラツチLATCH8B (第21図及び第23図)へ送り、かつプログラマブル カウンタ5DCL8R(第21図及び第22図)のラインLDP上の信号を発生 させるので、第1の予め決められた値がプログラマブルカウンタ5DCL8Rに ロードされる。第1の予め決められたタイムアウト期間、即ちホスト割り込みタ イムアウト期間は、レジスタHT NTT IME内の値の32倍の値に等しく 、かつバッファクロックのためにクロックのタイミングをとる。これは、読み出 しオートメーション過程のステップ406を完了する。
ステップ405に戻ると、ホスト計算機210は、1−rFO回路340内のデ ータの読み出しを開始するか、またはディスクドライブ220の状態の読み出し を開始する。
ステップ406に達するために、ホスト計算機210は状態を読み出す。そして 、ステップ406の後に、2つの事柄が可能である。タイマ310がタイムアウ トするか、またはホスト計算機がFIFO回路340内のデータの読み出しを開 始する。
もしホスト計算機210が、FIFO回路340内のデータの読み出しに失敗し たならば、ホスト割り込みタイムアウトタイマとして機能するタイマ310は、 タイムアウトし、続いて自動シーケンサ回路750のラインXTIMEOUTに 連結されている出カラインXTIMEOUTP上の信号を発生させる。ラインX TIMEOUT上の論理高の信号は、NANDゲートU5(第20図)の出力信 号を論理低に駆動する。NANDゲートU5からの論理低の信号は、アクティブ ローである、出力ラインS ETXFRIRQ−(第7A図及び第20図)を駆 動する。ライン5ETXFRI RQ−上の論理低の信号は、ホスト計算機割り 込み発生回路745(第7B図及び第19図)への入力信号である。
ライン5ETXFRTRQ−上の論理低の信号は、フリップフロップU23(第 19B図)をセ・ノドする。フリ、。
ブフロツプ023は、論理高の信号をORゲート1902及びNORゲーゲート 7に供給する。ORゲート1902への論理高の信号は、ラインXFRIRQ上 の信号を論理高に駆動する。NORゲーゲート7への論理高の信号は、エクスク ル−シブORゲート19o1への論理低の信号を発生し、エクスクル−シブOR ゲート1901はラインHINT上に論理高の信号を発生する。結果的に、もう 1つの割り込み信号がホスト計算機210へ送られる。しかしながら、これらの 動作は、ノ1−ドウエア自動読み出しシーケンス400のステップ404での動 作である。したがって、自動シーケンサ750とタイマ310はステップ406 及び407を実行し、ステップ404へ戻り、ステ・ツブ404が完了した後、 ステップ405が再び開始される。
ステップ405またはステップ407の何れかで、ホスト計算機210は、FI FO回路340からのデータの読み出しを開始しても良い。どちらの場合でも、 自動読み出しシーケンサ250の動作は等しいので、2つのステ・ツブを別々に 説明することはしない。ただ、ステップ407の違いを簡単に指摘する。
ホスト計算機210がFIFO回路340からの読み出しを開始したとき、ホス ト計算機210は、ラインATFRDL (第25図)上の信号を論理高レベル から論理低レベルへ駆動し、そして論理高レベルへ戻す信号を発生する。
ラインATFRDL上の信号の立ち上がりエツジは、フリップフロップ2501  (第25図)をクロックする。1つのクロックがラインBCLKCを通過した 後、正のパルスが出カラインHRDDATAP上に発生させられる。
ラインHRDDATAP上のパルスは、データのセクタが転送されるまで自動シ ーケンサ750をウェイトモードに置く、自動シーケンサ75o(第7A図及び 第20図)への入力信号である。しかしながら、自動シーケンサ回路750の状 態は、読み出しがステップ405から開始されたかまたはステップ407から開 始されたかによって異なる。ステップ405から開始された場合、ラインHRD DA T A P上の論理高の信号が、NANDゲートU7からの出力信号を論 理低に駆動する。N A N DゲートU7からの論理低の信号は、ANDゲー トU8の出力信号を論理低に駆動し、A N ’DゲートU8は、NANDゲー トUIOの出力信号を論理高に駆動する。ゲートU10からの論理高の信号は、 フリップフロップUD4を通してクロックされる。
フリップフロップUD4の端子NQ上の出力信号は、フリップフロップUDIを リセ・ノドする。これは、自動シーケンサ750を動作のウェイトモードに置く 。
ステップ407からの場合、ラインHRDDATAP上の論理高の信号は、NA NDゲートU6からの出力信号を論理低に駆動する。NANDゲートU6からの 論理低の信号は、ANDゲートU8の出力信号を論理低に駆動し、ANDゲート U8の出力信号は、NANDゲートU10の出力信号を論理高に駆動する。ゲー トUIOからの論理高の信号は、フリップフロップUD4を通してクロックされ る。
フリップフロップUD4の端子NQ上の出力信号は、フリップフロップUDIを リセットする。これは、自動シーケンサ750を動作のウェイトモードに置く。
FTFO回路340を通して、RAM222内のデータのセクタの転送が完了し 、回路340内のFIFOメモリが空になったとき、FIFO回路340は、ラ インEMPTYDONE上の信号を論理高に駆動する。また、FIFO回路34 0にデータが存在しないとき、ラインDRQ上の信号は論理低になる。結果とし て、ラインBUSY上の信号が論理高になる。ラインBUSY上の信号が論理高 になったとき、ラインATBUSYLAT上の信号もまた論理高になる(第19 B図)。同様に、ラインEMPTYDON E上の信号は論理高になったとき、 ラインEMPTYDONEX上の信号もまた論理高になる。ラインENHlNT R3TL上の信号は、ホスト計算機割り込みの自動的なりリアを許可するために 論理低にセットされている。うインENHINDR5TL上の信号の反転された 信号は論理高である。したがって、N A N DゲートU32の出力信号は論 理低に駆動される。
NANDゲートU32からの論理低の出力信号は、NANDゲートU33からの 出力信号を論理高に駆動し、NANDゲートU33からの出力信号は、インバー タU29からの出力信号を論理低に駆動する。インバータU29からの論理低の 出力信号は、ANDゲー)U30の出力信号を論理低に駆動し、ANDゲートU 30の出力信号は、フリップフロップU23をリセットする。もしホスト計算機 割り込み信号が、ディスクドライブの状態を読み出したホスト計算機210によ って予めリセットされていなければ、フリップフロップU23のリセットによっ て、ホスト計算機割り込みがリセットされる。
FIFO回路340が空で、かつセクタの転送が完了したとき、ステップ408 は完了する。もし最後のセクタが転送されていなければ、動作はステップ409 を通って遷移し、自動ンーケンサ750(第7A図)へのラインEMPTYDO NE上の論理高の信号が、ステップ410を開始するラインAUTOa上の信号 を論理高に駆動する。
とりわけ、ラインEMPTYDONE上の論理高の信号が反転され、かつNAN Dゲートゲー(第20図)に印加される。即ち、NANDゲートゲーの出力が論 理高に駆動される。ANDゲーゲー8の出力信号もまた論理高である。
従って、NANDゲート010の出力信号が論理低に駆動される。フリップフロ ップUD4への論理低の人力信号が、フリップフロップUD4でクロックされる とき、端子NQ上の信号は論理高になる。端子NQからの信号の立ち上がりエツ ジは、フリップフロップUD5をクロックするので、以下により詳しく説明する ように、出力ラインAUTO3は、論理高に駆動され、ステップ410をスター トする。
しかし、もし最後のセクタが転送されたならば、セクタカウンタ330からのラ インCNTEQO上の信号は論理高であり、ステップ409は動作を終了する。
とりわけ、ラインCNTEQO上の信号は、自動シーケンサ750のラインLA STSECTを駆動する。ラインLASTSECT上の論理高の信号は、フリッ プフロップUD5 (第20図)をリセットモードに保持し、従ってラインEM PTYDONE上の信号を無効にする。結果として、ラインAUTOa上の信号 は論理低に留まり、動作は終了する。
入力ラインAUTO3の論理高の信号に応答して、ビジータイマ制御回路760 (第7A図)は、出カラインENYTTMER上に論理高の信号を発生する。し かし、もし最後のセクタが処理さねヘ 従ってセクタカウンタ330からビジー タイマ制御回路760のラインLASTSECTまでのラインCNTEQO上の 信号が論理高であるならば、ラインENYTIMER上の信号が論理低に保たれ る。
ビジータイマ制御回路760のある実施例のより詳細な模式図が、第26図に表 されている。自動シーケンサ回路750からのラインAUTOa上の信号は、チ ェ・ツクイネーブル信号である。ラインRDOP、LASTSECT。
AUTO3、WOP、5ECCNTDECPD、R5T−1ATCMDWRL、 及びBCLKC上の信号は、上述された信号と等しい。ラインRESTARTE N−上の信号はアクティブローであり、かつ以下により詳しく説明される書き込 みオートメーションシーケンス内で用いられるリスタートイネーブル信号である 。ラインYTIMEOUT−上の信号もまたアクティブローであり、かつタイマ 310からのラッチされたとジ−タイムアウト信号である。出力ラインENYT IMERは、タイマ310のビジータイマ機能を可能にするための信号を伝える 。出力ラインCLEA RA U T O3−上の信号はアクティブローであり 、ラインAUTOa上の信号をクリアする自動シーケンス回路750への信号で ある。
第26図では、ラインRDOP上の信号は論理高であり、そのためラインAUT Oa上の論理高の信号は、NANDゲート2601の出力信号を論理低に駆動し 、NANDゲート2601の出力信号は、A N Dゲート2602の出力信号 を論理低に駆動する。ANDゲートからの論理低の出力信号は、NANDゲート 2603の出力信号を論理高に駆動する。論理高の信号は、ラインBCLKCを 通過する次のクロックによってフリップフロップ2604を通してクロックされ る。フリップフロップ2604からの論理高の信号は、出力ラインENYT I MER上の信号を論理高に駆動する。
ビジータイマ制御回路760のラインENY’TIMER上の論理高の信号は、 タイマ310のラインYTrMEENを駆動する。タイマ310のラインYTI MEEN上の論理高の信号は、回路LATCH8A (第21図及び第23図) にラッチされた第2の予め決められた値を、2対1マルチプレクサMUX21. X8(第21図及び第24図)を通してプログラマブルカウンタ5DCL8R( 第21図及び第22図)に送り、かつプログラマブルカウンタ5DCL8R(第 21図及び第22図)のラインLDP上に信号を発生させるので、第2の予め決 められた値は、プログラマブルカウンタ5DCL8Rにロードされる。
ラインの予め決められた時間間隔は、レジスタBUSYTIMEに記憶された値 、即ち第2の予め決められた値の32倍であり、バッファクロックのための通過 するクロックのタイミングをとる。第2の予め決められた時間間隔は、データの あるセクタの転送の完了と、データのもう1つのセクタの転送の開始との間の時 間間隔である。
ビジータイム間隔の後、カウンタ310は、ラインYTIMEOUTP上にバ) I、スヲ発生シ、ライ:/YT IMEOUT上にラッチされた論理高の信号を 発生させる。即ち、ステップ410が完了する。ラインYTrMEOUT上の論 理高の信号は、ラインYTIMEOUT−(第26図)の信号を論理低に駆動す る。
バッファ制御回路233がデータの他のセクタを有するとき、論理低の信号が、 制御回路770を更新するために、ラインBNRDYFH上に発生される。この 信号は、ラインYT丁MEOUT、ENMULXFR上の論理高の信号と協働し て、セクタ数カウンタ71o、シリンダアドレスカウンタ730、及びヘッド数 カウンタ720への、更新制御回路770の出カラインUPDATE上に1クロ ツクパルスの幅を有するパルスを発生する。
更新制御回路770のある実施例の詳細な模式図が、第27図に表されている。
入カラインBNRDYFH上の信号は、RAMバッファ222が作動可能でない ときに論理高である。入力ラインENMULXFRは、自動複数セクタ転送が望 まれるときに論理高である。入力ラインYTIMEOUTは、タイマ310から のラッチされたビジータイムアウト出力信号を伝える。ラインPCDONEは、 複数のセクタの転送が行われたとき、論理調の信号を伝える。
ラインPCDONE上の信号は、ラインXFRDONE上の信号と等しい。ライ ンRESTARTEM−は、アクティブローであり、既に説明されている。ライ ンHXFRENは、バッファされたホストポートイネーブル信号を伝える。出力 ラインUPDATEは、既に説明されたようにタスクレジスタファイルを更新す るために用いられるパルスを伝える。
回路77oからのラインUPDATE上のパルスの発生の後に、次のクロックパ ルスによって、これらのタスクレジスタは更新、即ちそれらの値が1だけ増加さ れる。RAM222内にデータの他のセクタが保持されているので、本発明の自 動化ハードウェアは、いままで説明されたプロセスを繰り返すことによって、デ ータの次のセクタの読み出しを開始する。
本発明の自動書き込み過程のための初期化過程は、既に説明されており、その説 明はここで言及したことによって本出願の一部とされたい。簡単に言えば、電源 投入時のリセット時に、自動書き込みセクタカウンタ790が、FFhにセット される。マイクロプロセッサ221は、複数のセクタの各々のために、RAM2 22の512バイトのメモリを割り当てる。そしてマイクロプロセッサ221は 、ラインLWR5CL上の論理低の信号を提供することによって、メモリが自動 書き込みセクタカウンタ790(第7B図)に割り当てられている、セクタの個 数をロードする。
とりわけ、セクタの個数は8ビツトラツチAWSCNT(第28図)にラッチさ れる。ホスト計算機210は、これまで説明されたように、セクタ数カウンタ7 101 ヘッド数カウンタ72o1 及びシリンダ数カウンタ730を初期化す る。同様に、セクタカウンタ330もまた、ホスト計算機210からディスクド ライブ220へ書き込まれるべきセクタの個数をロードされる。
計算機210による書き込みセクタ命令の発生に応答し列回路233へのライン AUTOWRGO上のパルスを発生する。ラインAUTOWRGO上のパルスは 、ラッチAWSCNT内の値を、プログラマブルカウンタ5DCL8S(第28 図及び第29図)へロードする。
ラインAUTOWRGO上の信号に応答して、バッファ制御回路233は、ライ ンHP’EN及びラインHPWRT上の信号を論理高にセットする。ラインWO P上の信号は、ラインHPWRT上の信号のバッファされた信号なので、ライン HPWRT上の信号は、ラインWOP上の信号を論理高に駆動する。これは、ハ ードウェア自動書き込み過程500のスタートステップ501である。
ハードウェア自動書き込み過程500に於て、信号DRQは状態信号であって、 かつ(1)ホストボートイネーブルラインHPEN上の信号が論理高であり、か つ(2)FIFO回路340のF rFoメモリ内に空間が存在するとき、論理 高にセットされる。既に説明されたように、信号BUSYは、信号DRQの補数 なので、信号DRQがセットされたとき、信号BUSYはリセットされる。信号 DRQのセットと、信号BUSYのリセットは、ハードウェア自動書き込み過程 500のステップ502を完了する。
始めのセクタチェックステップδ03とホスト計算機割り込みセットステップ5 04とは、ホスト計算機割り込み発生回路745(第7B図、第19A図、及び 第19B図)によって実行される。始めに、NANDゲートゲー(第19A図) の3つの入力端子のうちの任意の1つに論理低の信号が存在するときはいつも、 ANDゲーゲー15の入力端子に、アクティブローのパルスが提供され、AND ゲーゲー15がフリップフロップU23(第19B図)をクロックするので、フ リップフロップU23への入カラインENHINT上の信号がフリップフロップ を通してクロックされ、そして既に説明されたように出カラインHINT上に論 理高の信号を発生する。
ハードウェア自動書き込み動作500の間、ホスト計算機割り込み発生回路74 5へのラインBTRNS及びラインRWSTART上の信号は、ホスト計算機割 り込みがラインHINT上に発生させられるかどうかを決定するキー信号である 。書き込み動作に於て、データの最初のセクタの転送のために、ホストポートイ ネーブルラインHP EN上の信号は、ラインBTRNS上の信号を論理高に駆 動する。しかしながら、データの次のセクタの転送のために、ラインHPEN上 の信号は変化せず、そのためラインBTRN S上の信号に影響を与えない。
第2の及びそれに続くセクタの転送のために、ラインBTRNS上の信号は、ラ インRWSTART上のパルスによって論理高に駆動される。従って、計算機2 10からバッファメモリ222へのデータの第2の自動的な転送のために、ライ ンRWSTART上の信号が論理高になったとき、ラインBTRNS上の信号は 最初に論理低である。以下により詳しく説明されるように、ラインRWSTAR T上の信号レベルに対する、ラインBTRNS上の信号のレベルは、ホスト計算 機割り込み信号が発生させられるかどうかを決定する。即ち、ハードウェア回路 は、ホスト計算機からの単一の書き込み命令に応答して、ディスクドライブ22 0に書き込まれる、データの第1のセクタと、データの引き続くセクタとを弁別 する。
上述されたように、ハードウェア目勤続み出し動作400に於て、NANDゲー トゲー及びU2からなるラッチからの出力信号は普段は論理高である。しかし、 ハードウェア自動書き込みシーケンス500の開始時には、ライン5ETAUT OL上の信号が、ホスト計算機210からの書き込み命令に応答してリセットさ れるとき、そのランチの出力信号は論理低に駆動される。この論理低の信号は、 フリップフロップU4内で、ラインHXFREN上の信号によってクロックされ る。フリップフロップU4の端子のN9からの結果としての論理高の信号は、N  A N Dゲート口5への最初の論理高の信号である。既に説明されたように 、最初のセクタの転送時に、ラインRWSTART上の信号は、ラインBTRN S上の信号が論理高になった後に論理高になる。従って、ラインRW S T  A RT上の信号の立ち上かりエツジは、ラインBTRNS上の論理高の信号を フリップフロップU3を通してクロックするので、NANDゲートゲーの第2の 端子は論理高の入力信号を得る。最後に、ハードウェア自動書き込み過程500 に於て、ラインAUTORDST上の信号は論理低に留まるので、NANDゲー トゲーの3番目の入力端子は常に論理高に留まる。
NANDゲートゲーへの全ての入力信号が論理高なので、その出力信号は論理低 である。その論理低の信号は、ラインBCLKを通過する2つのクロックパルス によってフリップフロップU6及びUlを通してクロックされる。フリップフロ ップU7からの論理低の出力信号は、NANDゲート013の出力信号を論理高 に駆動するので、ANDゲーゲー15及びUl4からの出力信号は論理高に留ま る。
結果として、ホスト計算機割り込みは、データの最初のセクタの転送に先だって 発生されることはない。書き込み動作に於て、NANDゲートゲー2及びUl  2Aからの出力信号は論理高であることに注意するべきである。
第2のセクタ及びそれに続くセクタの転送中に、ラインRWSTART上の信号 は、BTRNS上の信号が論理高に駆動される前に論理高になる。従って、論理 低の信号はフリップフロップU3を通してクロックされ、かつNANDゲートゲ ーに提供される。この論理低の信号はNANDゲートゲーの出力信号を論理高に 駆動する。その論理高の信号は、ラインBCLKを通過する2個のクロックパル スによってフリップフロップU6及びUlを通してクロックされる。
フリップフロップU7からの論理高の出力信号は、NANDゲートゲー3の出力 信号を論理低に駆動し、NANDゲートゲー3の論理低の出力信号は、ANDゲ ーゲー14及びUl5の出力信号を論理低に駆動する。ANDゲーゲー14から の論理低の出力信号は、フリップフロップU4をリセットし、かつフリップフロ ップU3をセットする。
従って、NANDゲートゲーは、その全ての人力信号が論理高であるので、その 出力信号は論理低になる。その論理低の出力信号は、フリップフロップU6及び Ulを通してクロックされ、かつNANDゲート013の出力信号を論理高に駆 動するので、ANDゲーゲー14及びUl5からの出力信号は論理高になる。A NDゲーゲー15からの出力信号の立ち上がりエツジは、フリップフロップU2 3をクロックし、フリップフロップU23は、データの第2のセクタの転送に先 立って、かつ後続の各セクタの転送に先立って、ホスト計算機割り込み信号を発 生する。ホスト計算機への割り込み信号は、ディスクドライブ220かデータの 次のセクタを受け付ける準備かできていることを表示する。
即ち、第1のセクタに対しては、ステップ503のみが実行され、動作はステッ プ505を通って遷移する。第2のセクタ及び後続のセクタに対しては、動作は 、第1セクタチエツクステツプ503を通してホスト割り込みセットステシブ5 04へ遷移し、そして次にセクタ転送完了ステップ505に遷移する。より重要 なことは、l\−ドウエアが、これら全てのプロセスステップを、マイクロプロ セッサ221による介入なしに制御するということである。
ホスト計算機割り込みの発生の後に、データは、データバス215からFIFO 回路340を通してRAM222へ転送される。セクタの転送が完了したとき、 ラインEMPTYDONE上の信号は論理高になる。
既に述へたように、セクタカウント減少回路740(第7B図)へのラインwo p及びラインENMULXFR上の信号は全て論理高であり、従って、セクタカ ウンタ330のラインt、’PDATAへのライン5ECCNTDECP上のラ インに減少パルスが発生させられる。結果として、セクタカウンタ330は1減 少される。セクタカウント減少回路740から自動書き込みセクタカウント減少 回路780へのライン5ECCNTDECP上のパルスは、自動書き込みセクタ カウント減少回路780へのラインWoP上の論理高の信号と協働して、g勅書 き込みセクタカウンタ790へのラインAWSCTRDEC上にパルスを発生す る。これは、ステップ506の第1の部分を完了する。
自動書き込みセクタカウント減少回路780は、第30図により詳細に描かれて いる。入力ラインWOP、5ECCNTDECP、UPDATE、BcLKc、 ATCMDWRL、及びA T M RS T Lは、既に説明されている。入 力ラインAWSCTREQOは、自動書き込みセクタカウンタイコール0ライン であり、自動書き込みセクタカウンタが値0を有するとき論理高になる。出力信 号AWSCTRDECは、自動書き込みセクタカウンタを減少することに用いら れるパルスを伝える。
ラインAWSCTRDEC上のパルスの発生の後に、自動書き込みセクタカウン タ790(第7B図)へのラインBCLK上の次のクロックパルスによって、カ ウンタ790は、減少する。即ち、ステップ506が完了する。自動書き込みセ クタカウンタ790は、第28図に更に詳細に示されている。入力ラインDは、 8ビツトマイクロプロセツサデータパスである。ラインR3T、BCLK、AW SCTRDEC,及びAUTORDGO上の信号ハ既ニ説明されている。8ビツ トバス出カラインAWSCTRは、自動書き込みセクタカウンタ出力信号を含む 。自動書き込みセクタカウンタの値がOに等しいとき、出力ラインAWSCTR EQOは、論理高の信号を有する。第29図は、第28図の要素5DCL8Sの より詳細な模式図である。
もし自動書き込みセクタカウンタ790が値0に到達したならば、自動書き込み セクタカウンタ790からのラインAWSCTREQO上の信号は論理高である 。ラインAWSCTREQO上の論理高の信号は、自動書き込みセクタカウント 減少回路780の入力信号であり、その信号は、自動書き込みセクタカウント減 少回路780がらのラインAWSCTRDEC上の信号を論理低に保ち、がっラ インRESTARTEN−上の信号を論理高に駆動し、そのラインRESTAR TEN−上の論理高の信号は、自動読み出しシーケンスを終了する。従って、自 動書き込み過程のステップ507は、完了する。
残りのステップは、既に説明されたステップと等しく、その説明内容はここで言 及したことによって本出願の一部とされたい。
これまで説明された、本発明の自動読み出し及び書き込みシーケンサは、単一の 命令に応答してデータの複数のセクタを転送するためにマイクロプロセッサから の介入を必要としない。従って、そのような複数のセクタの転送を行うために、 従来技術の装置で必要とされたプログラム命令を取り除くことができる。更に、 マイクロプロセッサが複数のセクタの転送を行う必要がないため、転送が、本発 明のシーケンサによって実行されている間に、マイクロプロセッサは他の動作を 実行することができる。こうして、自動読み出し及び書き込みシーケンサは、デ ィスクドライブの性能を非常に向上させる。
本発明の1つの実施例がこれまで説明されてきた。この開示内容の観点から、本 発明の他の実施例が、当業者にとっては明かであろう。従って、これまでの説明 は、本発明の原理の単なる例示であって、本発明をこれまで説明された特定の実 施例に限定することを意図するものではない。
で 書き込ろオートメ−7W7 FlG、 5 FIG、 6 FIC’、 7A FIG、 8 FIG、9B FIG、10 IGi1A FIG、11B FIG、 13 FIG、 14 FIG、 15B 特表平6−502271 (32) FIG、 24 フロントページの続き (81)指定−EP(AT、BE、CH,DE。
DK、ES、FR,GB、GR,IE、IT、LU、MC,NL、SE)、0A (BF、BJ、CF、CG、CI、0〜丁、 GA、 GN、 ML、 MR, SN、 TD、 TG)、 AT、 AU、 BB、 BG、 BR,CA、  CH,C3゜DE、DK、ES、FI、GB、HU、JP、KP、KR,LK、  LU、〜iG、MN、〜IW、 NL、 No、 PL、 RO,RU、 S D、SE

Claims (41)

    【特許請求の範囲】
  1. 1.ディスクドライブ用マイクロプロセッサと連結可能なディスクドライブ記憶 制御用集積回路内の回路であって、ホスト計算機からの読み出し命令に応答して 、前記ホスト計算機へデータの複数のセクタを転送するために、前記ホスト計算 機の計算機バスに機能的に連結可能であって、かつ前記ディスクドライブ用マイ クロプロセッサによる介入なしに、データの各セクタの転送の開始時に、ホスト 計算機割り込み信号を発生する自動読み出しシーケンサと、前記ホスト計算機か らの書き込み命令に応答して、前記ホスト計算機からデータの複数のセクタを受 け付けるために、前記ホスト計算機の前記計算機バスに機能的に連結可能であっ て、かつ前記ディスクドライブ用マイクロプロセッサの介入なしに、データの2 番目のセクタの転送の開始時と、後続の各セクタの転送の開始時とに、ホスト計 算機割り込み信号を発生する自動書き込みシーケンサとを有することを特徴とす る回路。
  2. 2.前記自動読み出しシーケンサが更に、使用可能にされてから、予め決められ た時間間隔の後に、タイムアウト信号を発生するためのタイマ手段を有し、前記 読み出し命令が発生した後に、前記ホスト計算機が、前記自動読み出しシーケン サを含む前記ディスクドライブの状態を読み出したときに、前記自動読み出しシ ーケンサが、前記タイマ手段を使用可能にすることを特徴とする請求項1に記載 の回路。
  3. 3.前記自動読み出しシーケンサが更に、前記ホスト計算機に機能的に連結可能 であって、かつ前記ホスト計算機割り込み信号をリセットするためのハードウェ ア手段を有し、 前記ホスト計算機が、前記ディスクドライブの状態を読み込むときに、前記リセ ットするためのハードウェア手段が、前記ディスクドライブ用マイクロプロセッ サによる介入なしに、前記ホスト計算機割り込み信号をリセットすることを特赦 とする請求項2に記載の回路。
  4. 4.前記ハードウェア手段が更に、 前記タイマ手段に機能的に連結されていて、かつ前記タイマ手段を使用可能にす るイネーブル信号を発生するための手段を有することを特徴とする請求項3に記 載の回路。
  5. 5.前記ハードウェア手段が更に、 前記タイマ手段に機能的に連結されていて、かつ前記ディスクドライブ用マイク ロプロセッサの介入なしに、前記ホスト計算機割り込み信号をセットするための 手段を有し、前記タイマ手段からの前記タイムアウト信号を受け付けたときに、 前記セットするための手段が、前記ホスト計算機割り込み信号をセットし、それ によって、ディスクドライブーホスト計算機システムの性能が改良されることを 特徴とする請求項3に記載の回路。
  6. 6.前記タイマ手段が更に、 少なくとも1つの入力ラインと1つの出力ラインとを備えたプログラム可能なカ ウンタ手段を有することを特徴とする請求項2に記載の回路。
  7. 7.前記タイマ手段が更に、 前記プログラム可能なカウンタ手段の少なくとも1つの入力ラインに機能的に連 結されたラッチを有し、前記自動読み出しシーケンサの初期化の時に、予め決め られた値が前記ラッチ内にラッチされ、前記タイマ手段が使用可能にされるとき 、前記ラッチされた値が、前記プログラム可能なカウンタ手段にロードされるこ とを特徴とする請求項6に記載の回路。
  8. 8.前記自動書き込みシーケンサが更に、前記ホスト計算機に機能的に連結可能 であって、かつ前記ディスクドライブ記憶制御回路に書き込まれるデータの1番 目のセクタと、前記ディスクドライブマイクロプロセッサによる介入なしに、前 記ホスト計算機からの前記書き込み命令に応答して、前記ディスクドライブ記憶 制御回路に書き込まれる後続のセクタとを弁別するためのハードウェア手段を有 することを特徴とする請求項1に記載の回路。
  9. 9.前記ハードウェア手段が更に、 前記セクタ弁別手段に機能的に連結されていて、かつ前記ホスト計算機に機能的 に連結可能であって、かつ前記ホスト計算機割り込み信号を発生するための手段 を有し、前記ディスクドライブ用マイクロプロセッサによる介入なしに転送され る、前記第2のセクタ及び各後続のセクタの転送の前に、前記ホスト計算機割り 込み信号が、発生させられることを特徴とする請求項8に記載の回路。
  10. 10.タスクファイルレジスタを更に有し、前記ディスクドライブマイクロプロ セッサによる介入なしに、データの各セクタが転送された後に、前記自動読み出 しシーケンサ及び自動書き込みシーケンサのうちの1つが、前記タスクファイル レジスタを更新することを特徴とする請求項1に記載の回路。
  11. 11.前記タスクファイルレジスタが、セクタ数レジスタを含むことを特徴とす る請求項10に記載の回路。
  12. 12.前記セクタ数レジスタがカウンタを有することを特徴とする請求項11に 記載の回路。
  13. 13.前記タスクファイルレジスタがヘッド数レジスタを含むことを特徴とする 請求項10に記載の回路。
  14. 14.前記ヘッド数レジスタがカウンタを有することを特徴とする請求項13に 記載の回路。
  15. 15.前記タスクファイルレジスタがシリンダ数レジスタを含むことを特徴とす る請求項10に記載の回路。
  16. 16.前記シリンダ数レジスタがカウンタを有することを特徴とする請求項15 に記載の回路。
  17. 17.前記タスクファイルレジスタが、転送されるべきセクタの個数のレジスタ を含むことを特徴とする請求項10に記載の回路。
  18. 18.転送されるべきセクタの個数の前記レジスタがカウンタを有することを特 徴とする請求項17に記載の回路。
  19. 19.前記タイマ手段が使用可能にされてから予め決められた時間間隔の後に、 タイムアウト信号を発生するためのタイマ手段を更に有し、 前記自動読み出しシーケンサと自動書き込みシーケンサのうちの1つが、前記タ イマ手段を使用可能にすることを特徴とする請求項1に記載の回路。
  20. 20.前記タイマ手段が更に、 少なくとも1つの入力ラインと1つの出力ラインとを備えたプログラム可能なカ ウンタ手段を有することを特徴とする請求項19に記載の回路。
  21. 21.前記タイマ手段が更に、 前記プログラム可能なカウンタ手段の少なくとも1つの入力ラインに機能的に連 結された第1ラッチを有し、前記回路の初期化の時に、第1の予め決められた値 が前記第1ラッチ内にラッチされ、 第1のイネーブル信号を受け付けたとき、前記ラッチされた値が前記プログラム 可能なカウンタ手段にロードされることを特徴とする請求項20に記載の回路。
  22. 22.前記タイマ手段が更に、 前記プログラム可能なカウンタ手段の少なくとも1つの入力ラインに機能的に連 結された第2ラッチを有し、前記回路の初期化の時に、第2の予め決められた値 が前記第2ラッチ内にラッチされ、 前記第1のイネーブル信号とは異なる第2のイネーブル信号を受け付けたとき、 前記ラッチされた値が前記プログラム可能なカウンタにロードされることを特徴 とする請求項21に記載の回路。
  23. 23.読み出し命令の発生の後に、前記ホスト計算機がディスクドライブの状態 を読み込むことに応答してリセットされたときに、前記ホスト計算機割り込み信 号が、前記自動読込みシーケンサが前記第1のイネーブル信号を発生することを 特徴とする請求項21に記載の回路。
  24. 24.データのセクタの転送が完了し、かつ転送されるべき更なるセクタが残っ ているとき、前記自動読み出しシーケンサ及び前記自動書き込みシーケンサのう ちの1つが、前記第2のイネーブル信号を発生することを特徴とする請求項21 に記載の回路。
  25. 25.ディスクドライブに備えられ、かつ該ディスクドライブと、ホスト計算機 のバスとの間で、データの複数のセクタを目動的に転送するための、自動読み出 しシーケンサ回路であって、 前記ディスクドライブがマイクロプロセッサによって制御され、 前記自動読み出しシーケンサ回路が、 ホスト計算機と機能的に連結可能であって、かつホスト計算機割り込み信号をリ セットするための、第1ハードウエア手段と、 前記第1ハードウェア手段と機能的に連結された、プログラム可能なタイマ手段 と、 前記プログラム可能なタイマ手段に機能的に連結されていて、かつ前記ディスク ドライブ用マイクロプロセッサの介入なしに前記割り込み信号をセットするため の、第2ハードウェア手段とを有し、 読み出し命令の発生の後に、ホスト計算機がディスクドライブの状態を読み出し たとき、前記第1ハードウェア手段が、前記ディスクドライブ用マイクロプロセ ッサによる介入なしに、前記ホスト計算機割り込み信号をリセットし、前記第1 ハードウェア手段が前記ホスト計算機割り込み信号をリセットしたとき、前記プ ログラム可能なタイマ手段がスタートされ、かつ予め決められた時間間隔の後に タイムアウト信号を発生し、 前記プログラム可能なタイマ手段からの前記タイムアウト信号を受け付けたとき 、前記第2ハードウェア手段が前記割り込み信号をセットし、それによってディ スクドライブーホスト計算機システムの性能が改良されることを特徴とする自動 読み出しシーケンサ回路。
  26. 26.ディスクドライブ用マイクロプロセッサと連結可能な、ディスクドライブ 制御用集積回路内の自動読み出しシーケンサ回路であって、 第1の状態と第2の状態とを有する信号に応答するタイマ手段と、 前記タイマ手段に機能的に連結されていて、かつ計算機割り込み信号をセットす るための、ハードウェア割り込み発生手段とを有し、 前記信号が状態を変化させたとき、前記タイマ手段がスタートされ、かつ予め決 められた時間間隔の後にタイムアウト信号を発生し、 前記プログラム可能なタイマ手段からの前記タイムアウト信号を受け付けたとき 、前記ハードウェア割り込み発生手段が、ディスクドライブ用マイクロプロセッ サによる介入なしに、前記計算機割り込み信号をセットし、それによって、デー タの他のセクタが、前記割り込み信号を受け付けた前記計算機によって読み出さ れる準備が整っていることを表示することを特徴とする自動読み出しシーケンサ 回路。
  27. 27.ディスクドライブ用マイクロプロセッサに連結可能なディスクドライブ記 憶制御集積回路内の、自動書き込みシーケンサ回路であって、 ホスト計算機に機能的に連結可能であって、かつ前記ディスクドライブ用マイク ロプロセッサによる介入なしに、ホスト計算機からの書き込み命令に応答して、 前記ディスクドライブ記憶制御回路へ書き込まれるデータの1番目のセクタと、 前記ディスクドライブ記憶制御回路へ書き込まれる後続のセクタとを弁別するた めの、第1ハードウェア手段と、 前記第1ハードウェア手段に機能的に連結されていて、かつ前記ホスト計算機に 機能的に連結可能であって、かつホスト計算機割り込み信号を発生するための、 第2ハードウェア手段とを有し、 前記ホスト計算機割り込み信号が、前記2番目のセクタと、前記ディスクドライ ブ用マイクロプロセッサによる介入なしに転送される各後続のセクタとの転送に 先立って発生させられることを特徴とする自動書き込みシーケンサ回路。
  28. 28.ディスクドライブ用マイクロプロセッサに連結可能なディスクドライブ記 憶制御集積回路内の、二重機能タイマであって、 少なくとも1本の入力ラインと1本の出力ラインとを備えたプログラム可能なカ ウンタ手段と、前記プログラム可能なカウンタ手段の少なくとも1本の入力ライ ンに機能的に連結された第1ラッチと、前記プログラム可能なカウンタ手段の少 なくとも1本の入力ラインに機能的に連結された第2ラッチとを有し、前記タイ マの初期化時に、第1の予め決められた値が、前記第1ラッチ内にラッチされ、 第1イネーブル信号を受け付けたときに、前記ラッチされた値が、前記プログラ ム可能なカウンタ手段にロードされ、それによって、前記タイマが第1の機能を 実行し、 前記タイマの初期化時に、第2の予め決められた値が、前記第2ラッチ内にラッ チされ、第1イネーブル信号とは異なる第2イネーブル信号を受け付けたときに 、前記ラッチされた値が、前記プログラム可能なカウンタ手段にロードされ、そ れによって、前記タイマが第2の機能を実行することを特徴とする二重機能タイ マ。
  29. 29.ホスト計算機からの単一の読み出し命令に応答して、前記ホスト計算機と 、マイクロプロセッサによって制御された、ディスクドライブ内の記憶制御集積 回路の計算機バスインタフェース回路との間で、データのセクタの個数を目動的 に転送する方法であって、 a)ホスト計算機割り込み信号を発生する過程と、b)前記ホスト計算機が、前 記ディスクドライブの状態をチェックするか、またはデータのセクタを読み出す かを決定する過程と、 c)前記ホスト計算機が前記ディスクドライブの状態をチェックするときに、ホ スト計算機タイムアウトタイマをスタートさせる過程と、 d)前記ホスト計算機タイムアウトタイマが、タイムアウトするときに、タイム アウト信号を発生する過程と、e)前記ホスト計算機が前記データの読み出しを 開始するまでは、前記過程a)から前記過程d)を繰り返す過程とを有し、 前記各ステップが、前記マイクロプロセッサによる介入なしに、前記計算機バス インタフェース回路によって実行されることを特徴とする転送方法。
  30. 30.前記過程a)が実行される前に、転送されるべきセクタの前記個数を減少 する過程を更に有し、前記減少過程が、前記マイクロプロセッサの介入なしに、 前記計算機バスインタフェース回路内のハードウェアによって実行されることを 特徴とする請求項29に記載の方法。
  31. 31.前記ホスト計算機がデータの読み出しを開始した後に、データの前記セク タの前記転送の完了を待機する過程を更に有し、 前記待機過程が、前記マイクロプロセッサの介入なしに、前記計算機バスインタ フェース回路内のハードウェアによって実行されることを特徴とする請求項30 に記載の方法。
  32. 32.データの前記セクタの前記転送が完了したとき、転送されるべき残りのセ クタの前記個数をチェックする過程を更に有し、 もし、残りのセクタの個数が0ならば動作は終了し、前記チェック過程が、前記 マイクロプロセッサの介入なしに、前記計算機バスインタフェース回路内のハー ドウェアによって実行されることを特徴とする請求項31に記載の方法。
  33. 33.前記チェック過程が、転送されるべきデータのセクタが残っていることを 決定したときに、予め決められた時間間隔の間、待機する過程を更に有し、前記 待機過程が、前記マイクロプロセッサの介入なしに、前記計算機バスインタフェ ース回路内のハードウェアによって実行されることを特徴とする請求項32に記 載の方法。
  34. 34.前記予め決められた時間間隔の後に、タスクファイルレジスタを更新する 過程を更に有し、前記更新過程が、前記マイクロプロセッサの介入なしに、前記 計算機バスインタフェース回路内のハードウェアによって実行されることを特徴 とする請求項33に記載の方法。
  35. 35.前記減少過程から始まる方法の各過程を繰り返す過程を有し、 前記繰り返し過程が、前記マイクロプロセッサの介入なしに、前記計算機バスイ ンタフェース回路内のハードウェアによって実行されることを特徴とする請求項 34に記載の方法。
  36. 36.ホスト計算機からの単一の読み出し命令に応答して、前記ホスト計算機と 、マイクロプロセッサによって制御された、ディスクドライブ内の記憶制御集積 回路の計算機バスインタフェース回路との間で、データのセクタの個数を自動的 に転送する方法であって、 a)データの1番目のセクタまたはデータの後続のセクタのどちらかが転送され るべきかを決定する過程と、b)データの各セクタの前記転送の開始に先立って 、ホスト計算機割り込み信号を発生する過程とを有し、前記各過程が、前記マイ クロプロセッサの介入なしに、前記計算機バスインタフェース回路内のハードウ ェアによって実行されることを特徴とする転送方法。
  37. 37.c)セクタの転送の前記完了の後に、転送されるべきセクタの前記個数を 減少する過程を更に有し、前記減少過程が、前記マイクロプロセッサの介入なし に、前記計算機バスインタフェース回路内のハードウェアによって実行されるこ とを特徴とする請求項36に記載の方法。
  38. 38.セクタの前記個数を減少したときに、転送されるべき残りのセクタの前記 個数をチェックする過程を更に有し、もしセクタの前記個数が0ならば、動作が 終了し、前記チェック過程が、前記マイクロプロセッサの介入なしに、前記計算 機バスインタフェース回路内のハードウェアによって実行されることを特徴とす る請求項37に記載の方法。
  39. 39.前記チェック過程が、転送されるべきデータのセクタが残っていることを 決定したとき、予め決められた時間間隔の間、待機する過程を更に有し、 前記待機過程が、前記マイクロプロセッサの介入なしに、前記計算機バスインタ フェース回路内のハードウェアによって実行されることを特徴とする請求項38 に記載の方法。
  40. 40.前記予め決められた時間間隔の後に、タスクファイルレジスタを更新する 過程を更に有し、前記更新過程が、前記マイクロプロセッサの介入なしに、前記 計算機バスインタフェース回路内のハードウェアによって実行されることを特徴 とする請求項39に記載の方法。
  41. 41.前記方法の前記各過程を繰り返す過程を有し、前記繰り返された複数の過 程が、前記マイクロプロセッサの介入なしに、前記計算機バスインタフェース回 路内のハードウェアによって実行されることを特徴とする請求項40に記載の方 法。
JP50375593A 1991-08-07 1992-08-05 計算機バスとディスクドライブ間のデータの複数のセクタの自動読み出し及び自動書き込みインテリジェントハードウェア Expired - Fee Related JP3276147B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US74187291A 1991-08-07 1991-08-07
US741872 1991-08-07
PCT/US1992/006377 WO1993003438A1 (en) 1991-08-07 1992-08-05 Intelligent hardware for automatically reading and writing multiple sectors of data between a computer bus and a disk drive

Publications (2)

Publication Number Publication Date
JPH06502271A true JPH06502271A (ja) 1994-03-10
JP3276147B2 JP3276147B2 (ja) 2002-04-22

Family

ID=24982562

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50375593A Expired - Fee Related JP3276147B2 (ja) 1991-08-07 1992-08-05 計算機バスとディスクドライブ間のデータの複数のセクタの自動読み出し及び自動書き込みインテリジェントハードウェア

Country Status (5)

Country Link
US (1) US5768617A (ja)
EP (1) EP0551494A4 (ja)
JP (1) JP3276147B2 (ja)
AU (1) AU2418492A (ja)
WO (1) WO1993003438A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006049224A1 (ja) * 2004-11-08 2006-05-11 Matsushita Electric Industrial Co., Ltd. セキュアデバイスおよび中継端末

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465343A (en) * 1993-04-30 1995-11-07 Quantum Corporation Shared memory array for data block and control program storage in disk drive
US5465338A (en) * 1993-08-24 1995-11-07 Conner Peripherals, Inc. Disk drive system interface architecture employing state machines
US5935220A (en) * 1996-08-09 1999-08-10 Motorola Inc. Apparatus and method for high speed data and command transfer over an interface
US6553476B1 (en) 1997-02-10 2003-04-22 Matsushita Electric Industrial Co., Ltd. Storage management based on predicted I/O execution times
US6282045B1 (en) * 1997-09-15 2001-08-28 Texas Instruments Incorporated Server hard disk drive integrated circuit and method of operation
US6141728A (en) * 1997-09-29 2000-10-31 Quantum Corporation Embedded cache manager
US6366980B1 (en) * 1999-06-04 2002-04-02 Seagate Technology Llc Disc drive for achieving improved audio and visual data transfer
US7457896B1 (en) * 1999-08-25 2008-11-25 Seagate Technology Llc Automated register data transfer to reduce processing burden on a processing device
JP2001101787A (ja) * 1999-09-27 2001-04-13 Internatl Business Mach Corp <Ibm> ディスクドライブ装置、ディスクドライブコントローラ、ディスク装置の制御方法
US6594780B1 (en) * 1999-10-19 2003-07-15 Inasoft, Inc. Operating system and data protection
US7337360B2 (en) * 1999-10-19 2008-02-26 Idocrase Investments Llc Stored memory recovery system
JP2001297316A (ja) * 2000-04-14 2001-10-26 Mitsubishi Electric Corp メモリカード及びその制御方法
US7054790B1 (en) * 2000-05-18 2006-05-30 Maxtor Corporation Method and apparatus for storage device performance measurement
US6691186B2 (en) * 2001-10-09 2004-02-10 Texas Instruments Incorporated Dual sequencer based disk formatter
US20030172229A1 (en) * 2002-03-08 2003-09-11 Takasugi Robin Alexis Systems and methods for detecting and compensating for runt block data transfers
EP1484667A1 (en) 2003-06-05 2004-12-08 Deutsche Thomson-Brandt Gmbh Method for fast verification of sector addresses
EP1484669A1 (en) * 2003-06-05 2004-12-08 Thomson Licensing S.A. Method for fast verification of sector addresses
JPWO2005069152A1 (ja) * 2004-01-13 2007-12-27 セイコーインスツル株式会社 メモリインタフェース装置、メモリインタフェース方法、およびモデム装置
JP4153882B2 (ja) * 2004-02-17 2008-09-24 株式会社東芝 半導体集積回路装置
US20060112218A1 (en) * 2004-11-23 2006-05-25 Steven Bress Systems and methods for an improved computer long-term memory comparing device
WO2007147443A1 (en) * 2006-06-23 2007-12-27 Freescale Semiconductor, Inc. Interrupt response control apparatus and method therefor
US8037468B2 (en) * 2006-08-02 2011-10-11 Sandisk Il Ltd. Methods for synchronous code retrieval from an asynchronous source
US8230198B2 (en) * 2006-08-02 2012-07-24 Sandisk Il Ltd. System for synchronous code retrieval from an asynchronous source
KR102398201B1 (ko) * 2017-06-30 2022-05-17 삼성전자주식회사 프로세서의 개입 없이 단순 작업을 관리하는 스토리지 장치
US11676651B2 (en) * 2019-10-31 2023-06-13 SK Hynix Inc. Arithmetic devices conducting auto-load operation
US11915125B2 (en) 2019-10-31 2024-02-27 SK Hynix Inc. Arithmetic devices for neural network
US11386947B2 (en) 2019-10-31 2022-07-12 SK Hynix Inc. Arithmetic devices conducting auto-load operation for writing the activation functions

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3646520A (en) * 1970-05-25 1972-02-29 Bell Telephone Labor Inc Adaptive reading circuit for a disk memory
US3673576A (en) * 1970-07-13 1972-06-27 Eg & G Inc Programmable computer-peripheral interface
US4200928A (en) * 1978-01-23 1980-04-29 Sperry Rand Corporation Method and apparatus for weighting the priority of access to variable length data blocks in a multiple-disk drive data storage system having an auxiliary processing device
US4357657A (en) * 1979-08-24 1982-11-02 Monolithic Systems, Corp. Floppy-disk interface controller
JPS5717049A (en) * 1980-07-04 1982-01-28 Hitachi Ltd Direct memory access controlling circuit and data processing system
US4414664A (en) * 1981-02-23 1983-11-08 Genrad, Inc. Wait circuitry for interfacing between field maintenance processor and device specific adaptor circuit
US4489378A (en) * 1981-06-05 1984-12-18 International Business Machines Corporation Automatic adjustment of the quantity of prefetch data in a disk cache operation
US4517641A (en) * 1982-04-30 1985-05-14 International Business Machines Corporation Lookahead I/O device control subsystem
US4513392A (en) * 1982-05-25 1985-04-23 Honeywell Information Systems Inc. Method and apparatus for generating a repetitive serial pattern using a recirculating shift register
US4612613A (en) * 1983-05-16 1986-09-16 Data General Corporation Digital data bus system for connecting a controller and disk drives
US4649474A (en) * 1983-09-23 1987-03-10 Western Digital Corporation Chip topography for a MOS disk memory controller circuit
JPS60106073A (ja) * 1983-11-14 1985-06-11 Toshiba Corp 記録再生装置
JPS60235269A (ja) * 1984-05-08 1985-11-21 Toshiba Corp デ−タ転送制御装置
US4843544A (en) * 1987-09-25 1989-06-27 Ncr Corporation Method and apparatus for controlling data transfers through multiple buffers
US4888691A (en) * 1988-03-09 1989-12-19 Prime Computer, Inc. Method for disk I/O transfer
US5150465A (en) * 1988-11-30 1992-09-22 Compaq Computer Corporation Mode-selectable integrated disk drive for computer
DE69031983T2 (de) * 1989-10-10 1998-07-30 Storage Technology Corp Mehrschritt-datenlesevorrichtung
EP0428021B1 (en) * 1989-11-03 1998-09-02 Compaq Computer Corporation Method for data distribution in a disk array
US5249279A (en) * 1989-11-03 1993-09-28 Compaq Computer Corporation Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands
US5125093A (en) * 1990-08-14 1992-06-23 Nexgen Microsystems Interrupt control for multiprocessor computer system
US5420730A (en) * 1990-08-17 1995-05-30 Moon; Ronald R. Servo data recovery circuit for disk drive having digital embedded sector servo
US5394527A (en) * 1991-05-17 1995-02-28 Zenith Data Systems Corporation Method and apparatus facilitating use of a hard disk drive in a computer system having suspend/resume capability

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006049224A1 (ja) * 2004-11-08 2006-05-11 Matsushita Electric Industrial Co., Ltd. セキュアデバイスおよび中継端末
JP2006155589A (ja) * 2004-11-08 2006-06-15 Matsushita Electric Ind Co Ltd セキュアデバイスおよび中継端末
US8184810B2 (en) 2004-11-08 2012-05-22 Panasonic Corporation Secure device and relay terminal

Also Published As

Publication number Publication date
WO1993003438A1 (en) 1993-02-18
AU2418492A (en) 1993-03-02
JP3276147B2 (ja) 2002-04-22
US5768617A (en) 1998-06-16
EP0551494A1 (en) 1993-07-21
EP0551494A4 (en) 1995-03-01

Similar Documents

Publication Publication Date Title
JPH06502271A (ja) 計算機バスとディスクドライブ間のデータの複数のセクタの自動読み出し及び自動書き込みインテリジェントハードウェア
US5740466A (en) Flexible processor-driven SCSI controller with buffer memory and local processor memory coupled via separate buses
JP3137293B2 (ja) ステートマシンを利用するataインターフェースアーキテクチャ
US5987627A (en) Methods and apparatus for high-speed mass storage access in a computer system
US5210860A (en) Intelligent disk array controller
US5640593A (en) System for generating second interrupt signal for data transfer completion for a first SCSI data transfer command that is not autotransfer
US4825403A (en) Apparatus guaranteeing that a controller in a disk drive system receives at least some data from an invalid track sector
US7480754B2 (en) Assignment of queue execution modes using tag values
JP3078856B2 (ja) 大容量磁気ディスク駆動装置
US7216258B2 (en) Method and apparatus for recovering from a non-fatal fault during background operations
JP2014154155A (ja) コマンド・プッシュ・モデルの使用によりデータ・ストレージ・システムにおける書込みレイテンシを低減させるための方法およびシステム
US5996045A (en) IDE disk drive arrangement that combines the capacity of a master drive and slave drive while hiding the presence of slave drive to a host computer
CN111880727A (zh) 一种用于硬盘端口号灵活分配的硬件架构及其实现方法
US11455250B2 (en) Managing unexpected shutdown in a disk drive with multiple actuators and controllers
TWI437493B (zh) 電腦系統及其作業系統載入方法
CN111880728B (zh) 机械硬盘系统启动控制方法以及装置、存储设备
US6105107A (en) ATAPI state machine controlled by a microcontroller for interfacing a DVD controller with an ATA host bus
TW200820060A (en) Hard disk controller having multiple, distributed processors
US8291125B2 (en) Speculative read-ahead for improving system throughput
TW434491B (en) Increasing I/O performance through storage of packetized operational information in local memory
US6108723A (en) System for implementing hardware automated control of burst mode data transfer over a communication link between devices operating in a block mode
EP0434688B1 (en) Seeking multitasking disk controller
TWI714116B (zh) 記憶體控制器、記憶體控制方法、以及電腦系統
WO2007132931A1 (ja) データ記憶装置およびこの初期化方法
US5754889A (en) Auto write counter for controlling a multi-sector write operation in a disk drive controller

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080208

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090208

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090208

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100208

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110208

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120208

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees