JPH0793096A - タスクファイル自動化回路及びタスクファイル回路自動化方法 - Google Patents
タスクファイル自動化回路及びタスクファイル回路自動化方法Info
- Publication number
- JPH0793096A JPH0793096A JP4204958A JP20495892A JPH0793096A JP H0793096 A JPH0793096 A JP H0793096A JP 4204958 A JP4204958 A JP 4204958A JP 20495892 A JP20495892 A JP 20495892A JP H0793096 A JPH0793096 A JP H0793096A
- Authority
- JP
- Japan
- Prior art keywords
- register
- sector
- head
- drive
- value
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage 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)
Abstract
クドライブ及びハードディスクコントローラシステムで
使用されるATタスクファイル・レジスタの操作を自動
化する。 【構成】 8ビットのデジタル・アップカウンタ4個、
4ビットのデジタル・アップカウンタ1個、8ビットの
データ・レジスタ1個と4ビットのデータ・レジスタ1
個を用いている。これらのカウンタは、転送中のデータ
のセクターの物理アドレスを示し、データの各セクター
が転送されるにつれて必要なだけインクリメント又はリ
ロードされる。ディスクドライブ上のセクターのナンバ
ーを保持するために、8ビットのデータ・レジスタ−最
大セクター・レジスタ−を、またディスクドライブ上の
ヘッドのナンバーを保持するために、4ビットのレジス
タ−最大ヘッド・レジスタ−を使用する。次に、各セク
ターが転送されるにつれてマイクロプロセッサの支援な
しに、最大ヘッド・レジスタ及び最大セクター・レジス
タの内容に基づいて必要なだけカウンタがリロード又は
インクリメントされる。
Description
T−BIOS(Basic Input/Output System)、特にホ
ストとマイクロプロセッサ間のATインターフェースに
適合するハードディスク・コントローラシステムの分野
に関するものである。
クドライブが大量のデータを記憶するため使用されてい
る。一般的には、磁気ディスクのディスク表面の一連の
同心円トラック上にデータが記憶される。読取り/書込
み用ヘッドがディスク上を半径方向に前後に動いて一つ
のトラックの上に選択的に位置することができるように
される。効果的にデータの読取り及び書込みを行うに
は、ヘッドに対するトラックの位置を知る必要がある。
どのトラックの上にヘッドがあるかを知ることの他に、
ヘッドがその特定トラックのどこに位置するかを知る必
要がある。位置情報を得るにはサーボパターンが用いら
れる。セクターサーボはサーボパターンの一種で、これ
はデータ領域間でディスク表面上に配置されたサーボ情
報のバーストによって構成されている。
にあるかを知る必要もある。これは一般にサーボパター
ンの円周の特定箇所に定められる「インデックス」によ
って行われ、これにより各データトラックの開始/終了
箇所が示される。また、適切なアドレス指定のために、
ドライブのヘッドによって現在アクセスされているすべ
てのトラックの組合せであるシリンダ情報も必要であ
る。いったんトラック上の定位置にくると、ヘッドはト
ラックがその下で回転している間その位置にとどまり、
そのヘッドでトラック上のデータを読取り、又はトラッ
ク上にデータを書込むことができる。
ーフェースのようなインターフェースを通してディスク
ドライブとの通信を行う。多くの場合ATバスインター
フェースには、ホストがディスクドライブ・コントロー
ラと通信するために使用する数個のレジスタが含まれて
いる。レジスタのセット全体は、まとめてATタスクフ
ァイルと呼ばれる。インターフェースのコントロール・
レジスタは、データの書込み及び読取りを行うために、
またホストとディスク・マイクロプロセッサの間でコマ
ンドを出すために用いられている。コントロール・レジ
スタはまた、ホストへエラー状態を含むステータス情報
を伝える。ATタスクファイルのその他のレジスタは、
読取り又は書込みコマンドのための物理アドレスを指定
する。インターフェースを含むこれらのレジスタはすべ
て、ホストとドライブの間を適切に調整するために必要
である。
らびにステータス情報は次に、データ情報がホストコン
ピュータに伝達される前にATバス・インターフェース
へ送られる。ATインターフェース内のATタスクファ
イル・レジスタは、レジスタを更新するためにドライブ
からのステータス情報を受け取る。各データセクターを
転送したあと、ATインターフェースのATタスクファ
イル・レジスタは、転送中のデータのセクターの物理ア
ドレスを示すために更新される。
グラムを、図4に示す。ホストコンピュータ・ブロック
120とディスクドライブ・マイクロプロセッサ110
は、バスライン160を通してATインターフェース1
30に結合される。ATインターフェース・ブロック1
30は、ATインターフェース130の一部であるAT
タスクファイル・ブロック140にも結合される。AT
タスクファイル140は、マイクロプロセッサ110に
結合される。ATインターフェースは、ヘッドドライブ
・アセンブリ(HDA)150に結合したその他の電子
ブロック170と結合される。ヘッドドライブ・アセン
ブリ150は、マイクロプロセッサ110にも結合され
る。その他の電子ブロック170はATインターフェー
ス130といっしょにディスクドライブのディスクコン
トローラを形成する。
行うため、コマンドがディスクドライブに送られる。こ
のデータは、コンピュータに送り返される。データ情報
がATインターフェース130及びバスライン160を
通して、ホスト120又はマイクロプロセッサ110に
転送されると、ATタスクファイル・ブロック140
は、ステータス情報に基づいてマイクロプロセッサによ
り更新される。これらのタスクファイル・レジスタに
は、(転送中のデータセクターの物理アドレスを与える
ために、各データブロック又はセクターが転送されたあ
と更新されるが)セクターカウント・レジスタ、セクタ
ーナンバー・レジスタ、ドライブ/ヘッドナンバー・レ
ジスタ、シリンダロー・レジスタ、シリンダハイ・レジ
スタが含まれている。
トとマイクロプロセッサの両方で利用できるデュアルポ
ートの、読取り/書込みレジスタである。このレジスタ
は8ビットのパラメータ・レジスタであり、セクターI
Dを与えるために用いられる。このレジスタは、現在の
読取り/書込みセクターコマンドのための開始セクター
ナンバーを指定するのに用られる。このレジスタは通
常、各セクターがホスト及びコントローラによって転送
されたあと、あるいはコントローラからホストへ転送さ
れた(読取り操作)あと、ローカル・マイクロコントロ
ーラによってインクリメントされる。
Dに達するほどセクターナンバー・レジスタを増加する
と、(セクターナンバー・レジスタの上限)、次にデー
タセクターが転送されときに、マイクロプロセッサは適
切な更新を行うようレジスタをリセットしなければなら
ない。マイクロプロセッサはこの上限値を記憶し、レジ
スタの値がこの値を越えて増加しないようにする。
り/書込みセクターコマンド中に転送されるセクターの
ナンバーを指定するために用いられる。このレジスタは
通常各セクターが転送された後、ローカル・マイクロコ
ントローラによってデクリメントされる。レジスタがゼ
ロでロードされると、256個のセクターが転送され
る。
トがヘッドナンバーとドライブナンバーを指定するため
に用いられる8ビットのレジスタである。さらに、この
レジスタの第4ビットは、ホストからアクセスできる2
つのドライブステータス・レジスタの1つ、すなわちド
ライブ0ステータス・レジスタ又はドライブ1ステータ
ス・レジスタを選ぶために用いられる。3〜0ビットに
は、選択されるヘッドの二進化アドレスが含まれてい
る。先のATタスクファイルでは、各トラック又はシリ
ンダの境界を越えると、マイクロプロセッサがヘッドア
ドレスを変更する。
シリンダアドレスの下位8ビットを指定するために用い
られる。このレジスタは、シリンダハイ・レジスタと一
緒に16ビットシリンダ・アドレスを構成する。このレ
ジスタは、通常、各シリンダ境界を越えるとローカル・
マイクロコントローラによってインクリメントされる。
コマンド終了時に、このレジスタは現在のシリンダナン
バーを反映するよう更新される。
クセスのための開始シリンダアドレスの上位のビットが
含まれている。コマンド終了時に、このレジスタは現在
のシリンダナンバーを反映するよう更新される。シリン
ダアドレスの最上位のビットは、シリンダハイ・レジス
タにロードされる。
に述べたレジスタは現在のセクター、ヘッド、及びシリ
ンダ情報に従って更新されなければならない。先行技術
では、この過程は通常はシステム・マイクロプロセッサ
によって行われる。この場合には、マイクロプロセッサ
が、転送されるデータの各ブロックのための各タスクフ
ァイル・レジスタを維持し、インクリメントし、リロー
ドする必要がある。だがあいにく、これによって利用で
きるマイクロプロセッサの帯域幅は低下し、ディスクド
ライブからホストコンピュータへデータ転送する場合に
タイムオーバー・ヘッドが増加する。
てよいようなマイクロプロセッサの帯域幅をとることが
望ましい。タスクファイルの更新を含めてすべてのドラ
イブ機能を支援するためにディスクドライブで1個のマ
イクロプロセッサが用いられる場合には、タスクファイ
ル・レジスタ値を維持できるマイクロプロセッサの帯域
幅が得られないことがある。マイクロプロセッサがタス
クファイル・レジスタを更新しなくてよいようにするの
が望ましい。
びハードディスク・コントローラシステムに用いられて
いるATタスクファイル・レジスタの操作を自動化する
ものである。本発明は、ディスクコントローラ回路とホ
ストコンピュータ間をインターフェースすることのでき
るレジスタを提供する。本発明は、8ビットのデジタル
アップ・カウンタ4個、4ビットのデジタルアップカウ
ンタ1個、8ビットのデータ・レジスタ1個と4ビット
のデータ・レジスタ1個を利用している。
ーの物理アドレスを示し、データの各セクターが転送さ
れるにつれて必要なだけインクリメント又はリロードさ
れる。本発明は、ドライブ上のトラックごとにセクター
のナンバーを保持するために、8ビットのデータ・レジ
スタ−最大セクター・レジスタ−を、またディスクドラ
イブ上のヘッドのナンバーを保持するために、4ビット
のレジスタ−最大ヘッド・レジスタ−を使用する。次
に、カウンタは、各セクターが転送されたあとマイクロ
プロセッサの支援なしに、最大ヘッド・レジスタ及び最
大セクター・レジスタの内容に基づいて必要なだけリロ
ード又はインクリメントされる。
スクドライブからホストへ、各データセクターが転送さ
れたあと、本発明のセクターカウント・レジスタは自動
的にデクリメントされる。本発明では、セクターナンバ
ー・レジスタ値は、各セクターが転送されたあと最大セ
クター・レジスタの値と比べることによって自動的に更
新される。セクターナンバー・レジスタの値が最大セク
ター・レジスタの値と等しい場合には、それぞれの比較
のあと、セクターナンバー・レジスタには1がロードさ
れる。それ以外の場合は、インクリメントされる。
も、セクターカウント・レジスタがリロードされると最
大ヘッド・レジスタの値と比べることによって自動的に
更新される。ドライブ/ヘッド・レジスタの下位3ビッ
トが最大ヘッド・レジスタと等しい場合には、各比較の
あとドライブ/ヘッド・レジスタにはゼロがロードされ
る。それ以外の場合は、インクリメントされる。シリン
ダロー・レジスタ値及びシリンダハイ・レジスタ値も、
本発明では自動的に更新される。シリンダロー・レジス
タ値はドライブ/ヘッド・レジスタに記憶されている値
に基づいて更新され、そのあとシリンダハイ・レジスタ
値は、シリンダロー・レジスタに記憶されている値に基
づいて続けて更新される。外部回路(一般にはマイクロ
プロセッサ)は、これらのどの操作にも必要としない。
ATタスクファイルの自動更新を行うのが望ましい。こ
れによって、ATタスクファイルを支援する場合にコマ
ンドオーバー・ヘッド及びマイクロプロセッサ帯域幅条
件を低減することができるからである。本発明は、AT
A(AT Attachment) 仕様に適合する(ANSI標準
化又はBIOS互換性)。
(9)に記載する。 (1)転送中のデータセクターの物理アドレスを与える
ために用いられるIBM−ATタスクファイル・レジス
タの操作を自動化し、前記タスクファイル・レジスタが
ディスクコントローラ回路とIBM−ATコンピュータ
の間をインターフェースするための回路であって:イン
ターフェース手段と;前記ドライブコントローラ回路が
使用するセクターのナンバーを記憶するための前記イン
ターフェース手段に結合される第一記憶手段と;前記デ
ィスクコントローラ回路が使用するヘッドのナンバーを
記憶するために前記インターフェース手段に結合される
第二記憶手段と;転送されるセクターのナンバーを指定
するための前記インターフェース手段に結合される第一
カウント手段と;前記インターフェース手段に結合さ
れ、ディスクデータアクセスのための開始セクターナン
バーを指定するための第二カウント手段と;ドライブ及
びヘッドナンバーを指定するために前記インターフェー
ス手段に結合される第三カウント手段と;ディスクシリ
ンダ・アドレスを指定するために前記インターフェース
手段と結合される第四及び第五カウント手段と;前記第
二及び第三カウント手段の更新を決定するために前記第
一記憶手段及び前記第二カウント手段に結合される第一
比較手段と;前記第三、第四及び第五カウント手段の更
新を決定するために前記第二記憶手段及び前記第三カウ
ント手段に結合される第二比較手段、から構成される。
t)仕様(BIOS互換におけるANSI標準化)に適
合することを特徴とする前記(1)記載の回路。
ュータと前記ディスクコントローラ回路の間で転送され
たあと前記第一カウント手段が自動的にデクリメントさ
れ、また前記第一カウント手段が多重パラレルロードを
備えた8ビット・ダウンカウンタを含む前記(2)記載
の回路。
ルロードを備えた8ビット・アップカウンタを含む前記
(3)の回路。
ルロードを備えた4ビット・アップカウンタを含む前記
(4)記載の回路。
れぞれ8ビット・アップカウンタを含む前記(5)記載
の回路。
ルーシブNORゲートを含む前記(6)記載の回路。
ルーシブNORゲートを含む前記(7)記載の回路。
ロセッサの両方によってアクセスすることができるAT
インターフェース・ブロックにおいて、データセクター
が転送されたあとATタスクファイル・レジスタの更新
を自動化することによってマイクロプロセッサの性能を
向上させるための方法であって;ドライブのセクターの
ナンバーを記憶する段階と;前記ドライブにヘッドのナ
ンバーを記憶する段階と;各前記セクターが転送された
あとセクターカウント・レジスタを自動的に更新する段
階と;セクターのナンバーをセクターナンバー・レジス
タの値と比較する段階と;前記セクターナンバー・レジ
スタ値が前記セクターナンバーと等しくない場合に前記
セクターナンバー・レジスタの前記値をインクリメント
する段階と;前記セクターナンバー・レジスタ値と前記
セクターナンバーが等しい場合に前記セクターナンバー
・レジスタに1をロードし、ドライブ/ヘッド・レジス
タ値をインクリメントする段階と;前記ヘッドナンバー
を前記ドライブ/ヘッド・レジスタの値と比較する段階
と;前記ヘッドナンバーが前記ドライブ/ヘッド・レジ
スタの前記値と等しくない場合に、前記ドライブ/ ヘ
ッド・レジスタの前記値をインクリメントする段階と;
前記ヘッドナンバーが前記ドライブ/ヘッド・レジスタ
の前記値に等しい場合に、前記ドライブ/ヘッド・レジ
スタにゼロをロードし、シリンダロー・レジスタをイン
クリメントする段階と;前記シリンダロー・レジスタの
値がゼロにリセットされた場合にだけシリンダハイ・レ
ジスタをインクリメントする段階、から構成される。
トコンピュータの間でインターフェースするためのレジ
スタを提供するシステムに関するものである。以下の説
明の中で、レジスタの種類、トラックのナンバーなど多
くの特定の詳細事項について詳しく述べる。しかし、技
術精通者には、これらの特定の詳細事項がなくても本発
明を実施できることは明白であろう。その他の点では、
本発明を不必要にわかりにくくしないよう、公知の特徴
については詳しく説明しない。
機能の数を減らすことにより、コントローラの性能を向
上させる回路を提供する。この回路には、タスクファイ
ル・レジスタの自動更新が含まれる。タスクファイル・
レジスタは一括して、転送中のデータのセクターの物理
アドレスを示し、またこれらのレジスタはデータの各セ
クターが転送されるにつれて必要なだけインクリメント
され又はリロードされる。たとえば、書込み多重コマン
ド又は読取り多重コマンドを実行する時、タスクファイ
ルのセクターナンバー・レジスタは各セクターが転送さ
れるにつれて、最大セクター・レジスタにより指定され
たセクターナンバーまで自動的にインクリメントされ
る。この値に達したあと、セクターナンバー・レジスタ
は1になり、ドライブ/ヘッド・レジスタはインクリメ
ントされる。
ディスクドライブ・システムのブロックダイアグラムで
ある。図4では、ホスト120は、ATインターフェー
ス130に結合されたバスライン160に結合されてい
る。ATインターフェース・ブロック130内には、A
Tタスクファイル・レジスタ・ブロック140がある。
ATインターフェース130はまた、バスライン160
を通してディスクドライブ・マイクロプロセッサ110
にも結合されている。ディスクドライブ・プロセッサ1
10は、HDA150に結合されている。
スクドライブへ、あるいはディスクドライブからホスト
へ転送されるときに、ホスト及びディスクドライブ・プ
ロセッサが互いにどのように通信するかを示している。
ATインターフェース130のATタスクファイル・レ
ジスタ140は転送中のデータセクターの物理アドレス
を与える。図4でわかるように、ディスクドライブ・プ
ロセッサ110とホスト120は両方ともバス160を
通してATインターフェース130にアクセスする。図
4のシステムは、ホスト120とディスクドライブ・プ
ロセッサ110が別々に、ATインターフェース130
へのアクセスだけを行えるように設計されている。本発
明では、ATインターフェース130は、ブロック14
0のATタスクファイル・レジスタがマイクロプロセッ
サの支援なしに自動的に更新されるように設計されてい
る。
更新、ならびにヘッド・レジスタとセクターナンバー・
レジスタの関係を示すフローチャートである。更新は、
開始ブロック10で始まる。ステップ12で、データセ
クターがディスクドライブからホストへ転送される。判
定ブロック14で、「セクターナンバー・レジスタ値は
最大セクター・レジスタ値に等しいか?」という設問が
出る。「YES」の場合は、ステップ16へ進む。
スタ値がリセットされる。またステップ16で、ドライ
ブ/ヘッド・レジスタが自動的にインクリメントされ
る。
は、ステップ18へ進む。ステップ18で、セクターナ
ンバー・レジスタは自動的にインクリメントされ、ステ
ップ20終了へ進む。
クロプロセッサによって書込まれたトラック上の最大セ
クターIDを記憶する。最大セクター・レジスターはセ
クターナンバー・レジスタの上限であるため、判定ブロ
ック14での答が「NO」の場合は、セクターナンバー
・レジスタはインクリメントされる。セクターナンバー
・レジスタ値が最大セクター・レジスタ値に等しいと
き、これは、セクターナンバー・レジスタがトラックの
上限に達し、したがってセクターナンバー・レジスタが
自動的に1 にリセットされることを意味している。同
時に、セクターナンバー・レジスタはリセットされ、こ
れによって桁上げが行われ、操作ブロック16によって
指定されたとおりにドライブ/ヘッド・レジスタがイン
クリメントされる。
動更新、ならびにシリンダロー・レジスタ及びシリンダ
ハイ・レジスタを示すフローチャートである。
る。ステップ22で、データセクターはディスクドライ
ブからホスト、又はホストからディスクドライブへ転送
される。この時点で判定ブロック23へ進み、「ヘッド
・レジスタ値は最大ヘッド・レジスタ値に等しいか?」
という設問が出る。答が「YES」の場合は、ステップ
24へ進む。ステップ24で、ヘッド・レジスタがリセ
ットされ、シリンダロー・レジスタがインクリメントさ
れる。判定ブロック26へと進む。判定ブロック26
で、「シリンダローがゼロにオーバーフローするか?」
という設問が出される。答が「NO」の場合は、ステッ
プ32に進む。
場合は、シリンダハイ・レジスタがステップ28でイン
クリメントされ、最終ブロック32へ進む。
23での答が「NO」の場合は、ステップ30へ進み、
ヘッド・レジスタがインクリメントされる。次に、最終
ブロック32へ進む。
化のためのブロック・ダイアグラムを、図3に示す。図
3には、データバス、8ビットのデジタルアップカウン
タ(レジスタ/カウンタ)4個、4ビットのデジタル・
アップカウンタ(レジスタ/カウンタ)1個、8ビット
のデータ・レジスタ1個、及び4ビットのデータ・レジ
スタ1個が含まれる。最大セクター・レジスタは8ビッ
トのデータ・レジスタであり、最大ドライブ/ヘッド・
レジスタは4ビットのデータ・レジスタであり、セクタ
ーカウンタ・レジスタ、セクターナンバー・レジスタ、
シリンダロー・レジスタ及びシリンダハイ・レジスタは
8ビットのデジタル・アップカウンタであり、ドライブ
/ヘッド・レジスタは4ビットのデジタル・アップカウ
ンタである。
/データバス72が、最大セクター・レジスタ40、最
大ドライブ/ヘッド・レジスタ42、セクターカウント
・レジスタ44、セクターナンバー・レジスタ46、ド
ライブ/ヘッド・レジスタ48、シリンダロー・レジス
タ50、及びシリンダハイ・レジスタ52を含むすべて
のレジスタへデータ入力を与え、またそれらからデータ
出力を受ける。セクターカウント・レジスタ44は、マ
イクロプロセッサのアドレス/データバス72に出力信
号45を与える。セクターナンバー・レジスタ46も、
マイクロプロセッサのアドレス/データバス72に出力
信号47を与える。
クロプロセッサのアドレス/データバス72に出力信号
49を与える。シリンダロー・レジスタ50は、マイク
ロプロセッサのアドレス/データバス72に出力信号5
1を与える。シリンダハイ・レジスタ52は、マイクロ
プロセッサのアドレス/データバス72に出力信号53
を与える。最大セクター・レジスタ40は、マイクロプ
ロセッサのアドレス/データバス72に出力信号41を
与える。最大ドライブ/ヘッド・レジスタ42は、マイ
クロプロセッサのアドレス/ データバス72に出力信
号43を与える。出力信号41、43、45、47、4
9、51及び53はすべて、それぞれのレジスタのトラ
イステート反転出力である。バス72は、マイクロプロ
セッサからもホストコンピュータからもアクセスでき
る。
スタ40、最大ドライブ/ヘッド・レジスタ42、セク
ターカウント・レジスタ44、セクターナンバー・レジ
スタ46、ドライブ/ヘッド・レジスタ48、シリンダ
ロー・レジスタ50、及びシリンダハイ・レジスタ52
へ送られる。セクター信号74は、クロック信号をセク
ターカウント・レジスタ44、セクターナンバー・レジ
スタ46、ドライブ/ヘッド・レジスタ48、シリンダ
ロー・レジスタ50及びシリンダハイ・レジスタ52へ
送る。自動タスクファイルイネーブル信号80は、セク
ターカウント・レジスタ44、セクターナンバー・レジ
スタ46、ドライブ/ヘッド・レジスタ48、シリンダ
ロー・レジスタ50、及びシリンダハイ・レジスタ52
へ送られる。セクターカウント・ロード信号76は、セ
クターカウント・レジスタ44へ送られる。ドライブ/
ヘッド・ロード信号78は、ドライブ/ヘッド・レジス
タ48へ送られる。
ダロー・レジスタ50へ送られる。シリンダハイ・ロー
ド信号84は、シリンダハイ・レジスタ52へ送られ
る。セクターナンバー・ロード信号86は、セクターナ
ンバー・レジスタ46へ送られる。信号62と68は、
最大ドライブ/ヘッド・レジスタ42へ送られ、それぞ
れ読取り及び書込み操作を行えるようにする。信号64
と66は最大セクター・レジスタ40へ送られ、それぞ
れ読取り及び書込み操作を行えるようにする。最大セク
ター・レジスタ40からの8ビット出力信号88の各ビ
ットは、図3のエクスクルーシブNORゲート54で示
した8個の個別の2−入力エクスクルーシブNORゲー
トに結合される。セクターナンバー・レジスタ46から
の8ビット出力信号92の各ビットも、8個の個別の2
−入力エクスクルーシブNORゲート54に結合され
る。8個のエクスクルーシブNORゲート54からの8
つの出力は、次に8入力ANDゲート56に送られる。
ANDゲート56からの出力信号96は、「カウントイ
ネーブル」信号としてドライブ/ヘッド・レジスタ48
へ送られる。
の4ビット出力信号90の各ビットは、図3にエクスク
ルーシブNORゲート58で示された4個の個別の2−
入力エクスクルーシブNORゲートへ送られる。また、
ドライブ/ヘッド・レジスタ48からの4ビット出力信
号94の各ビットは4個の2−入力エクスクルーシブN
ORゲート58に結合される。エクスクルーシブNOR
ゲート58からの4個の個別の出力は、次に入力AND
ゲート60へ送られる。ANDゲート60からの出力信
号98は、次に「カウントイネーブル」信号としてシリ
ンダロー・レジスタ50へ送られる。
部回路(普通はマイクロプロセッサ)は、ドライブが使
用するセクターナンバーを最大セクター・レジスタ40
に、またヘッドナンバーを最大ドライブ/ヘッド・レジ
スタ42にロードする。その後データ転送が外部回路に
よって開始される。各セクターが転送されたあと、外部
回路はセクター信号74にパルスを発生する。セクター
カウント・レジスタ44は、セクターパルス74の立下
がりエッジの一つによってデクリメントされる。
に、マイクロプロセッサのアドレス/データバス72か
ら受けたセクターナンバー・レジスタ46の値は、8個
のエクスクルーシブNORゲート54を使用する最大セ
クター・レジスタ40に記憶されている値と比較され
る。エクスクルーシブNORゲート54は、セクターナ
ンバー・レジスタ46ならびに最大セクター・レジスタ
40から8ビット入力を受ける。8個のエクスクルーシ
ブNORゲート54は、図1の判定ブロック14に相当
する。セクターナンバー・レジスタ46の8個のビット
すべてが最大セクター・レジスタ40の8個のビットに
等しい場合(すべての8個のエクスクルーシブNORゲ
ート出力がロジック1である場合)は、セクターナンバ
ー・レジスタ46がその上限に達して1がロードされ、
ドライブ/ヘッド・レジスタ48がインクリメントされ
る。この判定は、セクターナンバーが1にリセットさ
れ、ヘッド・レジスタがインクリメントされ、図1のブ
ロック16に相当する。
よって受入れられた8個の入力のすべてがロジック1で
ある場合は、ANDゲート56からの出力信号96はイ
ンクリメントされるレジスタのためにドライブ/ヘッド
・レジスタ48に信号を送る。ANDゲート56への8
個の入力のすべてがロジック1でない場合は、これはセ
クターナンバー・レジスタがその上限に達していないこ
とを意味する。次に、図1のブロック18に示したよう
にセクターナンバー・レジスタ46がインクリメントさ
れ、出力96はドライブ/ヘッド・レジスタ48がカウ
ントできないようにする。同時に、最大ドライブ/ヘッ
ド・レジスタ42のビット0〜3に記憶されている値
が、ドライブ/ヘッド・レジスタ48のビット0〜3の
値と比較される。この比較は、ヘッド、シリンダロー・
レジスタ及びシリンダハイ・レジスタのための更新過程
を示した図2のフローチャートに示されている。この比
較は、4入力ANDゲート60と一緒に4個のエクスク
ルーシブNORゲート58を用いることによって行われ
る。NORゲート58は、図2の判定ブロック22で表
されている。
の4個のビットが最大ドライブ/ヘッド・レジスタ42
の各ビットに等しい場合(すべての4個のエクスクルー
シブNORゲート出力がロジック1である場合)、これ
は、ドライブ/ヘッド・レジスタ値が最大ドライブ/ヘ
ッド・レジスタ値に等しいことを意味する。次に、AN
Dゲート60が信号98を出力し、これによってシリン
ダロー・レジスタ50を1だけインクリメントできるよ
うにする。また、ドライブ/ヘッド・レジスタ48のビ
ット3〜0は、図2のブロック24に示されているよう
にクリアされる。シリンダロー・レジスタの最後のイン
クリメントによってシリンダロー・レジスタ50がゼロ
にオーバーフローする場合は、シリンダロー・レジスタ
50は出力信号100をシリンダハイ・レジスタ52へ
送り、シリンダハイ・レジスタ52がその値をインクリ
メントできるようにする。この過程が図2のブロック2
6と28である。タスクファイル・レジスタを更新する
この一連のステップは、転送中のデータセクターの正し
い物理アドレスを与えるために必要である。
ライブ/ヘッド、シリンダロー・レジスタ、及びシリン
ダハイ・レジスタの出力は、個別のトライステート・イ
ンバーターを経由してホストデータバス/マイクロプロ
セッサデータバス72に接続される。BUSY信号がロ
ジックゼロであるときは、ホストはこれらのレジスタに
アクセスすることができる。BUSY信号がロジック1
であるときは、マイクロプロセッサがこれらのレジスタ
にアクセスできる。
て、ATタスクファイルをサポートする場合の、マイク
ロプロセッサ帯域幅条件のコマンドオーバー・ヘッドが
低減される。(タスクファイル更新機能付きの)ホスト
インターフェースを含むすべてのドライブ機能を支援す
るために1個のマイクロプロセッサをディスクドライブ
で使用する場合、タスクファイル・レジスタ値を維持で
きるマイクロプロセッサ帯域幅が得られないことがあ
る。この機能をマイクロプロセッサの支援なしに実行す
ることによって、本発明はマイクロプロセッサの帯域幅
使用範囲を狭め、また1個のマイクロプロセッサでディ
スクドライブ・システムの効率を高めることができる。
更新操作について説明した。
するためのフローチャート。 図2 ヘッド・レジスタ値ならびにシリンダロー・レジ
スタ値及びシリンダハイ・レジスタ値の更新過程を説明
するためのフローチャート。 図3 本発明の自動タスクファイルの好ましい実施例を
説明するための、ブロックダイアグラム。 図4 ホストコンピュータ/ATバス/ディスクドライ
ブシステムのブロックダイアグラム。
Claims (9)
- 【請求項1】 転送中のデータセクターの物理アドレス
を与えるために用いられるATタスクファイル・レジス
タの操作を自動化し、前記タスクファイル・レジスタが
ディスクコントローラ回路とATコンピュータの間をイ
ンターフェースするためのタスクファイル自動化回路で
あって:インターフェース手段と;前記ドライブコント
ローラ回路が使用するセクターのナンバーを記憶するた
めの前記インターフェース手段に結合される第一記憶手
段と;前記ディスクコントローラ回路が使用するヘッド
のナンバーを記憶するために前記インターフェース手段
に結合される第二記憶手段と;転送されるセクターのナ
ンバーを指定するための前記インターフェース手段に結
合される第一カウント手段と;前記インターフェース手
段に結合され、ディスクデータアクセスのための開始セ
クターナンバーを指定するための第二カウント手段と;
ドライブ及びヘッドナンバーを指定するために前記イン
ターフェース手段に結合される第三カウント手段と;デ
ィスクシリンダ・アドレスを指定するために前記インタ
ーフェース手段と結合される第四及び第五カウント手段
と;前記第二及び第三カウント手段の更新を決定するた
めに前記第一記憶手段及び前記第二カウント手段に結合
される第一比較手段と;前記第三、第四及び第五カウン
ト手段の更新を決定するために前記第二記憶手段及び前
記第三カウント手段に結合される第二比較手段、とによ
って構成されることを特徴とするATタスクファイル・
レジスタの操作を自動化するためのタスクファイル自動
化回路。 - 【請求項2】 前記回路がATA(AT Attachment)仕
様(BIOS互換におけるANSI標準化)に適合する
ことを特徴とする請求項1記載のタスクファイル自動化
回路。 - 【請求項3】 各前記データセクターが前記コンピュー
タと前記ディスクコントローラ回路の間で転送されたあ
と前記第一カウント手段が自動的にデクリメントされ、
また前記第一カウント手段が多重パラレルロードを備え
た8ビット・ダウンカウンタを含むことを特徴とする請
求項2記載のタスクファイル自動化回路。 - 【請求項4】 前記第二カウント手段が多重パラレルロ
ードを備えた8ビット・アップカウンタを含むことを特
徴とする、請求項3記載のタスクファイル回路。 - 【請求項5】 前記第三カウント手段が多重パラレルロ
ードを備えた4ビット・アップカウンタを含むことを特
徴とする請求項4記載のタスクファイル自動化回路。 - 【請求項6】 前記第四及び第五カウント手段がそれぞ
れ8ビット・アップカウンタを含むことを特徴とする請
求項5記載のタスクファイル自動化回路。 - 【請求項7】 前記第二比較手段が4個のエクスクルー
シブNORゲートを含むことを特徴とする請求項6記載
のタスクファイル自動化回路。 - 【請求項8】 前記第一比較手段が8個のエクスクルー
シブNORゲートを含むことを特徴とする請求項7記載
のタスクファイル自動化回路。 - 【請求項9】 コンピュータのホストとマイクロプロセ
ッサの両方によってアクセスすることができるATイン
ターフェース・ブロックにおいて、データセクターが転
送されたあとATタスクファイル・レジスタの更新を自
動化することによってマイクロプロセッサの性能を向上
させるためのタスクファイル回路自動化方法であって;
ドライブのセクターのナンバーを記憶する段階と;前記
ドライブにヘッドのナンバーを記憶する段階と;各前記
セクターが転送されたあとセクターカウント・レジスタ
を自動的に更新する段階と;セクターのナンバーをセク
ターナンバー・レジスタの値と比較する段階と;前記セ
クターナンバー・レジスタ値が前記セクターナンバーと
等しくない場合に前記セクターナンバー・レジスタの前
記値をインクリメントする段階と;前記セクターナンバ
ー・レジスタ値と前記セクターナンバーが等しい場合に
前記セクターナンバー・レジスタに1をロードし、ドラ
イブ/ヘッド・レジスタ値をインクリメントする段階
と;前記ヘッドナンバーを前記ドライブ/ヘッド・レジ
スタの値と比較する段階と;前記ヘッドナンバーが前記
ドライブ/ヘッド・レジスタの前記値と等しくない場合
に、前記ドライブ/ ヘッド・レジスタの前記値をイン
クリメントする段階と;前記ヘッドナンバーが前記ドラ
イブ/ヘッド・レジスタの前記値に等しい場合に、前記
ドライブ/ヘッド・レジスタにゼロをロードし、シリン
ダロー・レジスタをインクリメントする段階と;前記シ
リンダロー・レジスタの値がゼロにリセットされた場合
にだけシリンダハイ・レジスタをインクリメントする段
階、 とによって構成されるマイクロプロセッサの性能を向上
させるためのタスクファイル回路自動化方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/738,268 US5280602A (en) | 1991-07-31 | 1991-07-31 | Task file with automatic update of task file registers |
US07/738,268 | 1991-07-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0793096A true JPH0793096A (ja) | 1995-04-07 |
JP3242703B2 JP3242703B2 (ja) | 2001-12-25 |
Family
ID=24967300
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20495892A Expired - Fee Related JP3242703B2 (ja) | 1991-07-31 | 1992-07-31 | タスクファイル自動化回路及びタスクファイル回路自動化方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5280602A (ja) |
JP (1) | JP3242703B2 (ja) |
KR (1) | KR100233398B1 (ja) |
DE (1) | DE4225091A1 (ja) |
GB (1) | GB2258327B (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2540768B2 (ja) * | 1993-11-12 | 1996-10-09 | 日本電気株式会社 | セクタid情報の転送機能を持つ磁気ディスクコントロ―ラ |
US5805857A (en) * | 1994-04-07 | 1998-09-08 | International Business Machines Corporation | DASD capacity in excess of 528 megabytes apparatus and method for personal computers |
US5909592A (en) * | 1994-09-07 | 1999-06-01 | Intel Corporation | Method in a basic input-output system (BIOS) of detecting and configuring integrated device electronics (IDE) devices |
US6430694B1 (en) * | 1998-12-31 | 2002-08-06 | At&T Corp. | Method and apparatus for synchronizing the provision of data among geographically distributed databases |
US6272565B1 (en) | 1999-03-31 | 2001-08-07 | International Business Machines Corporation | Method, system, and program for reordering a queue of input/output (I/O) commands into buckets defining ranges of consecutive sector numbers in a storage medium and performing iterations of a selection routine to select and I/O command to execute |
US7085873B1 (en) * | 2002-06-21 | 2006-08-01 | Cypress Semiconductor Corp. | ATA device access system with surrogate registers corresponding to ATA registers |
KR100601702B1 (ko) * | 2004-09-30 | 2006-07-18 | 삼성전자주식회사 | Osd 데이터 출력 제어 방법 및 장치 |
US7493430B2 (en) | 2005-07-14 | 2009-02-17 | Quantum Corporation | Data flow control and bridging architecture enhancing performance of removable data storage systems |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3771143A (en) * | 1972-06-01 | 1973-11-06 | Burroughs Corp | Method and apparatus for providing alternate storage areas on a magnetic disk pack |
US4210959A (en) * | 1978-05-10 | 1980-07-01 | Apple Computer, Inc. | Controller for magnetic disc, recorder, or the like |
US4425615A (en) * | 1980-11-14 | 1984-01-10 | Sperry Corporation | Hierarchical memory system having cache/disk subsystem with command queues for plural disks |
-
1991
- 1991-07-31 US US07/738,268 patent/US5280602A/en not_active Expired - Lifetime
-
1992
- 1992-07-29 GB GB9216149A patent/GB2258327B/en not_active Expired - Fee Related
- 1992-07-29 DE DE4225091A patent/DE4225091A1/de not_active Withdrawn
- 1992-07-31 JP JP20495892A patent/JP3242703B2/ja not_active Expired - Fee Related
- 1992-07-31 KR KR1019920013823A patent/KR100233398B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
DE4225091A1 (de) | 1993-02-04 |
GB2258327B (en) | 1995-03-29 |
KR100233398B1 (ko) | 1999-12-01 |
JP3242703B2 (ja) | 2001-12-25 |
GB9216149D0 (en) | 1992-09-09 |
GB2258327A (en) | 1993-02-03 |
US5280602A (en) | 1994-01-18 |
KR930002952A (ko) | 1993-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5561821A (en) | System for performing I/O access and memory access by driving address of DMA configuration registers and memory address stored therein respectively on local bus | |
US5875349A (en) | Method and arrangement for allowing a computer to communicate with a data storage device | |
US5768584A (en) | ROM chip enable encoding method and computer system employing the same | |
US6487631B2 (en) | Circuit and method for monitoring sector transfers to and from storage medium | |
US5555437A (en) | Read-write state machine in a host interface for controlling read and write operations in a disk drive | |
JPS6126970A (ja) | デイスク判別装置 | |
US5293618A (en) | Method for controlling access to a shared file and apparatus therefor | |
US5561819A (en) | Computer system selecting byte lane for a peripheral device during I/O addressing technique of disabling non-participating peripherals by driving an address within a range on the local bus in a DMA controller | |
US5687389A (en) | System for controlling an automatic read operation of read cache control circuit in a disk drive controller utilizing a start counter, a working counter, and a sector counter | |
US6167461A (en) | Programmable high performance disk formatter for headerless disk drive controller executing a series of low level instructions generated by a high level processing engine | |
JP3242703B2 (ja) | タスクファイル自動化回路及びタスクファイル回路自動化方法 | |
US6021498A (en) | Power management unit including a programmable index register for accessing configuration registers | |
US5457787A (en) | Interface circuit for controlling data transfers | |
WO2009123603A1 (en) | Systems and methods for accessing hard disk drives | |
US5455954A (en) | Host interrupt signal generation circuit for controlling an auto read operation in a disk drive controller | |
US5459870A (en) | Interface circuit for controlling data transfers | |
JPH07210382A (ja) | レジスタの内容を変更するための装置および方法 | |
JPS6126971A (ja) | デイスク・ドライブ判別装置 | |
US4628450A (en) | Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor | |
JPH0816321A (ja) | データ転送制御用インターフェース回路及び磁気ディスク装置 | |
JPH06348503A (ja) | マスタ/スレーブ制御系を有する装置と、その制御方法 | |
JPS59231665A (ja) | デイスク制御装置 | |
JPH06290547A (ja) | ディスク装置の高速データ転送方法 | |
JPH0991147A (ja) | 記憶装置 | |
JPS60150270A (ja) | デ−タフオ−マツト自動変更方式 |
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 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081019 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081019 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091019 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091019 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101019 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |