JPH0656601B2 - データ転送制御用インタフェース回路 - Google Patents

データ転送制御用インタフェース回路

Info

Publication number
JPH0656601B2
JPH0656601B2 JP3337995A JP33799591A JPH0656601B2 JP H0656601 B2 JPH0656601 B2 JP H0656601B2 JP 3337995 A JP3337995 A JP 3337995A JP 33799591 A JP33799591 A JP 33799591A JP H0656601 B2 JPH0656601 B2 JP H0656601B2
Authority
JP
Japan
Prior art keywords
host
mode
data
interface circuit
flip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP3337995A
Other languages
English (en)
Other versions
JPH05233513A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP3337995A priority Critical patent/JPH0656601B2/ja
Priority to US07/981,709 priority patent/US5459870A/en
Publication of JPH05233513A publication Critical patent/JPH05233513A/ja
Publication of JPH0656601B2 publication Critical patent/JPH0656601B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータ転送制御用インタ
フェース回路に係り、特にハード・ディスク・ドライブ
(HDD)のような周辺装置からホストに割込みをかけ
て、それらの間でデータ転送を行うインタフェース回路
に係る。
【0002】
【従来の技術】パーソナル・コンピュータ・システムに
おいて、ホストとその周辺装置を接続するのにいわゆる
ATインタフェースが広く採用されている。HDDは代
表的な周辺装置の一つである。周辺装置のメーカーから
すれば、ATインタフェースを介するホストとのやりと
りは統一されているのが望ましいが、コマンドによって
は幾つかの動作シーケンスが可能になっているものがあ
る。例えば、HDDに対する読取りコマンドは、ホスト
がHDDの状況レジスタをいつ読むかに応じて、2つの
動作シーケンスの何れかで実行される。その第1の動作
シーケンスは次のようになっている。
【0003】1.HDDは、ホストに転送するデータ
(通常は1セクタ分のデータ)が準備できた時、状況レ
ジスタのデータ要求(DRQ)ビットをハイにし、同時
にホストに対して割込み要求IRQをアサートする。
【0004】2.HDDからIRQを受け取ると、ホス
トはまず、HDDの状況レジスタを読み(この時IRQ
はリセットすなわち落される。IRQは、ホストが状況
レジスタを読むと必ずリセットされる)、それからデー
タ転送を始める。
【0005】3.1セクタ分のデータの転送が終ると、
HDDは一度DRQビットをリセットする。
【0006】4.ステップ1〜3を必要なセクタ数だけ
繰り返す。
【0007】上述のシーケンスでは、データ転送を始め
る前にホストが状況レジスタを読んでいるので、以下こ
のシーケンスを「前読み」ということにする。しかし、
ホストによっては次のように読取りコマンドを処理して
いるものもある。
【0008】1.前読みのステップ1と同じ。
【0009】2.HDDからIRQを受け取ると、ホス
トはまずデータ転送を始め、そのセクタの終りまで転送
する。
【0010】3.前読みのステップ3と同じ。
【0011】4.ホストはHDDの状況レジスタを読む
(これによりIRQがリセットされる)。
【0012】5.ステップ1〜4を必要なセクタ数だけ
繰り返す。
【0013】この2番目のシーケンスでは、1セクタ分
のデータの転送が終った後でホストが状況レジスタを読
んでいるので、以下これを「後読み」ということにす
る。ホストが後読みモードで動作する場合、次のような
時に誤動作が生じることがあった。すなわち、ホストが
現在のセクタの状況を知ろうとしてHDDの状況レジス
タを読むタイミング(後読みのステップ4)が、HDD
において次のセクタの準備ができるタイミング(ステッ
プ4の後のステップ1)より遅い時である。この場合に
は、前のセクタ転送に対する状況レジスタ読取りによっ
て次のセクタのIRQがリセットされてしまい、その結
果ホストは次のセクタのIRQを待ち続け、HDDはデ
ータ転送を待ち続けるという異常事態が生じる。実際、
次のセクタのIRQはセクタ・データの準備ができ次第
ハードウェアによってアサートされるので、このような
事態が発生した。
【0014】上述のような異常事態を避けるためには、
ホストが状況レジスタを読んだ後に、次のセクタのIR
Qをアサートするようにする必要がある。しかし、ホス
トが前読みモードの場合は上のような異常事態は発生し
ないので、単純にIRQを遅らせる方法をとると、ホス
トが前読みモードのときにデータ転送のパフォーマンス
が悪くなるという問題がある。従って従来は、ホストが
前読みモードか後読みモードかに応じてスイッチを設定
し、後読みの場合は、IRQを遅らせるのではなく、状
況レジスタが読まれた時に直ちにIRQを再度アサート
するという方式をとっていた。これは、後読みの場合で
もパフォーマンスを悪くしないためである。しかし、最
近のホストには、オペレーティング・システム(OS)
によって前読みになったり後読みになったりする場合が
多々あり(例えば、OS/2では前読みになり、通常の
DOSでは後読みになる)、その場合はモードが変わる
度にスイッチを設定し直さなければならない。
【0015】IRQの制御をすべてマイクロコードで行
うようにした方式もある。この方式によると、IRQが
アサートされるタイミングがいつも遅いため、前読み及
び後読みの両モードとも正常に動作するが、ハードウェ
アでの制御に比べてパフォーマンスが悪い。
【0016】
【発明が解決しようとする課題】以上のように、スイッ
チで切り替える方法は前読み及び後読みが混在する場合
に問題があり、マイクロコードで制御する方法はパフォ
ーマンスが悪いという問題があった。
【0017】従って本発明の目的は、同一のハードウェ
アで前読み及び後読みの何れにも誤りなく対応できるイ
ンタフェース回路を提供することにある。
【0018】本発明の他の目的は、ホストが前読みモー
ドか後読みモードかを自動的に判断する回路を含むその
ようなインタフェース回路を提供することにある。
【0019】本発明の他の目的は、ホストが後読みモー
ドの場合にのみホストへの割込みを所定の時間だけ遅ら
せるインタフェース回路を提供することにある。
【0020】
【課題を解決するための手段】本発明は、割込みに基づ
いて周辺装置とホストとの間でデータを転送するコンピ
ュータ・システムにおいて、ホストが何れのモードであ
っても誤りなくデータ転送を実行するインタフェース回
路に係る。このようなコンピュータ・システムでは、周
辺装置は1ブロックのデータの転送準備ができた時にデ
ータ要求を発生してホストに割込み要求を送る。ホスト
は、この割込み要求に応答して周辺装置の状況を読み取
ってからブロック・データ転送を開始する第1のモー
ド、又はブロック・データ転送が終了してから周辺装置
の状況を読み取る第2のモードで動作する。本発明に従
うインタフェース回路は、ホストが第1のモード及び第
2のモードの何れで動作しているかを検出するモード検
出手段と、このモード検出手段が第2のモードを検出し
た時にデータ要求を所定時間だけ遅らせる遅延手段と、
この遅延手段の出力に応答してホストに割込み要求を送
る割込み手段と、を具備している。
【0021】
【実施例】本発明に従うインタフェース回路を含む全体
のシステム構成を図1に示す。本実施例では、周辺装置
としてHDDを想定しているが、本発明は前述のような
前読み及び後読みの問題がある周辺装置であればどのよ
うなものにも適用できる。
【0022】図1において、破線で囲んだHDD10は
インタフェース回路14及びシステム・バス(ATバ
ス)16を介してホスト12に接続される。ホスト12
はi80386等のマイクロプロセッサを含んでおり、
HDD10及び図示していない他の周辺装置(キーボー
ドやディスプレイ等)と共に、本出願人のパーソナル・
コンピュータATシステム或はその互換システムを構成
している。
【0023】HDD10は、HDD全体の制御を司るマ
イクロプロセッサ制御のデバイス・コントローラ18を
含む。デバイス・コントローラ18の主な機能は3つあ
る。すなわち、ヘッド20を用いる読取り及び書込みの
制御、ヘッド20を移動させるためのボイス・コイル・
モータ(VCM)22の制御、並びにディスク(図示せ
ず)を回転させるためのスピンドル・モータ24の制御
である。ヘッド20による読取り及び書込みは、セクタ
・バッファ26及び読取り/書込み(R/W)回路28
を用いて行われる。セクタ・バッファ26は、本実施例
では64セクタ分のデータ(32Kバイト)を記憶する
ことができる。R/W回路28は周知の構成であって、
読取り及び書込みに必要な各種回路、すなわち増幅器、
ピーク検出器、可変周波数発振器(VFO)、符号器、
復号器、サーボ論理、アナログ・ディジタル変換器、デ
ィジタル・アナログ変換器などを含んでいる。VCM2
2及びスピンドル・モータ24の制御は、それぞれVC
Mドライバ30及びスピンドル・ドライバ32を介して
行われる。図1に示した各システム要素は、インタフェ
ース回路14を除くと通常のものでよく、またそれらの
構成は既に周知であるから、それらの詳細については省
略する。
【0024】インタフェース回路14の入出力部の構成
を図2に示す。これは、レジスタ選択器40によって選
択される複数のレジスタ、すなわちセクタ・カウント・
レジスタ42、アドレス・レジスタ44、コマンド・レ
ジスタ46、データ・レジスタ48及び状況レジスタ5
0を含む。アドレス・レジスタ44は、実際には4つの
レジスタ(2つのシリンダ・アドレス・レジスタ、1つ
のセクタ・アドレス・レジスタ及び1つのドライブ/ヘ
ッド・アドレス・レジスタ)から成っているが、ここで
は便宜上、それらを1つのレジスタにまとめて取り扱う
ことにする。
【0025】セクタ・カウント・レジスタ42は読取り
又は書込みが行われるセクタの数を保持し、アドレス・
レジスタ44はその開始アドレスを保持し、コマンド・
レジスタ46はコマンド・コードを保持し、データ・レ
ジスタはホスト12からHDD10に書込むデータ又は
HDD10からホスト12に読み出すデータを保持し、
状況レジスタ50はHDDの状況を示す複数のビットを
含む(詳細については、ATインタフェースの規格案で
あるATアタッチメントを参照されたい)。これらのレ
ジスタは、ホスト12からシステム・バス16を介して
レジスタ選択器40に供給される情報により選択され
る。その時レジスタ選択器40は、特定のレジスタを選
択する信号Si(i=1、2、3・・)を発生する。図
2には、本発明の理解に必要な5つのレジスタしか示し
ていないが、実際にはもっと多くのレジスタが設けられ
ている。
【0026】ホスト12は、インタフェース回路14に
コマンドを送る場合、特定のレジスタを選択するアドレ
ス及び入出力書込み信号(−IOW)をバス16Aに乗
せ、そして選択したレジスタに書込むべき情報をバス1
6Bに乗せる。バス16Aおよび16Bはシステム・バ
ス16の一部である。読取りコマンドを例にとると、ホ
スト12はまず、セクタ・カウント・レジスタ42への
書込みを指示する信号、すなわちセクタ・カウント・レ
ジスタ42のアドレス及び入出力書込み信号をバス16
Aに乗せ、そしてセクタ・カウントをバス16Bに乗せ
る。レジスタ選択器40は、バス16A上の信号に応答
して、セクタ・カウント・レジスタ42を選択する信号
S1を発生し、バス16B上のセクタ・カウントをレジ
スタ42にロードさせる。次にホスト12は、アドレス
・レジスタ44への書込みを指示する信号及び開始アド
レスをそれぞれバス16A及び16Bに乗せる。レジス
タ選択器40はこれにより信号S2を発生してアドレス
・レジスタ44を選択し、バス16B上の開始アドレス
をレジスタ44にロードさせる。最後にホスト12は、
コマンド・レジスタ46への書込みを指示する信号及び
読取りコマンド・コードをそれぞれバス16A及び16
Bに乗せ、かくして読取りコマンド・コードがコマンド
・レジスタ46にロードされる。レジスタ42、44及
び46のロードが終ると、コントローラ18はそれらの
内容によって指定された読取り動作を実行し、ディスク
(図示せず)から読み取ったデータをセクタ・バッファ
26に書込む。書込みコマンドの場合は、上述に加え
て、ディスクに書込むべきデータがバス16Bからデー
タ・レジスタ48に送られる。なお、書込み動作におい
ては、前述の前読み及び後読みの問題が生じないので、
ここでは書込みについては触れないことにする。
【0027】読取り動作中のHDD10からホスト12
へのデータ転送は割込みに基づいて行われる。前述のよ
うに、HDD10は、所定数のセクタのデータ(例えば
1セクタ分のデータ)がディスクからセクタ・バッファ
26に書込まれて、ホストへのデータ転送の準備ができ
ると、インタフェース回路14にデータ要求信号DRQ
を送る。インタフェース回路14はそれに応答して、セ
クタ・バッファ26からホスト12へのデータ転送を開
始させるため、ホスト12に割込みをかける。ホスト1
2が前読みモード及び後読みモードの何れであっても、
割込みによるデータ転送を効率よく行えるようにしたイ
ンタフェース回路の割込み制御部の構成を図3に示す。
【0028】図3の割込み制御部は、コントローラ18
からのデータ要求信号DRQ及びホスト12へ送られる
割込み要求信号IRQの状態に応じて、ホスト12のモ
ードを自動的に検出するモード検出回路60、ホスト1
2が後読みモードの場合にDRQを所定時間だけ遅らせ
る遅延回路62、及び遅延回路62の出力(以下、被制
御DRQという)に応答して割込み要求信号IRQを発
生する割込み要求発生回路64を含む。ホスト12が前
読みモードであることをモード検出回路60が検出した
場合は、遅延回路62は働かず、DRQは遅延なしに被
制御DRQとして割込み要求発生回路64へ供給され
る。
【0029】図4は、割込み制御部の詳細な回路図を示
したものである。割込み制御部は、割込み要求発生回路
64として働く第1フリップフロップ70、及びモード
検出回路60として働く第2フリップフロップ72を含
む。残りのNORゲート74、カウンタ76、遅延値レ
ジスタ78及び比較器80は図3の遅延回路62を構成
している。第1フリップフロップ70のデータ端子Dは
常時ハイに保たれ、クロック端子CKはNORゲート7
4の出力に接続されている。第1フリップフロップ70
のQ出力は第2フリップフロップ72のデータ端子Dに
供給され、更にホスト12にも供給される。第2フリッ
プフロップ72は、そのクロック端子CKに、コントロ
ーラ18からのデータ要求信号DRQを反転器82を介
して受け取る。反転器82の出力はNORゲート74の
第1入力にも供給される。第2フリップフロップ72の
Q出力はNORゲート74の第2入力及びカウンタ76
の負リセット端子−Rに接続される。カウンタ76は、
負リセット端子への負入力によってリセット状態を解除
されると、クロックに応答してカウントを始め、そのカ
ウント値を比較器80の第1入力に供給する。比較器8
0の第2入力には、遅延値レジスタ78に設定されてい
る遅延値DLが供給される。遅延値レジスタ78は、パ
ワーオンの度にコントローラ18のマイクロプロセッサ
(図しせず)から所定の遅延値DLをロードされる。比
較器80は、両方の入力が等しくなると、第2フリップ
フロップ72をリセットする。第1フリップフロップ7
0は、状況レジスタ50の読取りがホスト12によって
指示された時、すなわちレジスタ選択器40から状況レ
ジスタ選択信号S5が発生され、且つホスト12から入
出力読取り信号−IORを受け取った時に、NANDゲ
ート84の出力によってリセットされる。
【0030】次に、前読みのタイミング・チャートを示
す図5及び後読みのタイミング・チャートを示す図6を
参照しながら、本発明に従うインタフェース回路の動作
の詳細を説明する。
【0031】1.前読み 前述のように、読取りコマンドは、読み取るべきセクタ
の数を指定するセクタ・カウント、開始アドレス、及び
コマンド・コードを含んでおり、これらが図2のレジス
タ42、44及び46にそれぞれ受け取られると、コン
トローラ18はディスクからセクタ・バッファ26への
読取りを開始する。セクタ・バッファ26に1セクタ分
のデータが書込まれると、コントローラ18はデータ要
求信号DRQを発生して、インタフェース回路14の割
込み制御部(図3)に送る。このDRQは反転器82で
反転された後、フリップフロップ72のクロック端子C
K及びNORゲート74の第1入力に供給される。NO
Rゲート74の第2入力、すなわちフリップフロップ7
2のQ出力はローに保たれているので、NORゲート7
4の出力はハイになり、それが被制御DRQ信号として
第1フリップフロップ70のクロック端子CKに印加さ
れる。フリップフロップ70のデータ端子Dは常時ハイ
であり、従って被制御DRQの印加によりフリップフロ
ップ70はセットされて、そのQ出力すなわち割込み要
求IRQがハイになり、ホスト12に割込みをかける。
IRQはフリップフロップ72のデータ端子Dにも印加
されるが、その時フリップフロップ72のクロック端子
CKはローのため、フリップフロップ72はリセットさ
れたままである。
【0032】前読みモードのホスト12は、データ転送
を開始する前にHDD10の状況を知るため、HDD1
0からの割込み要求IRQに応答して、インタフェース
回路14にある状況レジスタ50を読む。そのため、ホ
スト12は状況レジスタ50の読取りを指示する信号、
すなわち状況レジスタ50のアドレス及び入出力読取り
信号−IORをバス16Aに乗せる。レジスタ選択器4
0はこの信号に応答して、状況レジスタ50を選択する
信号S5を発生し、その内容をバス16Bの方へゲート
する。状況レジスタ50は、前述のDRQビットの他
に、HDD10がビジーであることを示すビジー・ビッ
ト、コマンド実行中にエラーが生じたことを示すエラー
・ビットなどの、HDD10の状況を示す複数の状況ビ
ットを含んでいる。
【0033】状況レジスタ選択信号S5はNANDゲー
ト84の第1入力にも印加される。NANDゲート84
の第2入力には、ホスト12からの入出力読取り信号−
IORが印加される。この信号は、インタフェース回路
14にある各種入出力レジスタ(図2参照)の読取りを
示す信号であり、ATインタフェースにおいては、ロー
レベルが活動状態を表すように決められている。NAN
Dゲート84は活動状態のS5及び−IORにより条件
付けられ、フリップフロップ70をリセットする。この
結果、ホスト12への割込み要求IRQは落される(図
5のIRQの波形参照)。
【0034】ホスト12はセクタ・バッファ26に書き
込まれたデータを読み取るため、状況レジスタ50の読
取りに続いてデータ・レジスタ48の読取りを指示する
信号をバス16Aに乗せる。データ・レジスタ48のビ
ット幅を16ビット、1セクタを512バイトとする
と、ホスト12は1セクタにつきデータ・レジスタ48
の読取りを256回行う必要がある。データ・レジスタ
48はラッチ型及びゲート型の何れでもよい。データ・
レジスタ48がラッチ型の場合、コントローラ18は、
最初の16ビット・ワードをセクタ・バッファ26から
データ・レジスタ48にロードした後データ要求信号D
RQを発生し、以後ホスト12がデータ・レジスタ48
を読み取る度に、セクタ・バッファ26から16ビット
・ワードを順次に取り出してデータ・レジスタ48にロ
ードする。データ・レジスタ48がゲート型の場合は、
コントローラ18は1セクタ分のデータをセクタ・バッ
ファ26に書込んだ時点でDRQを発生し、以後ホスト
12がデータ・レジスタ48の読取りを指示する度に、
セクタ・バッファ26から16ビット・ワードを順次に
取り出して、バス16Bの方へゲートする。何れの場合
も、コントローラ18はホスト12からの読取り信号−
IORをカウントしており、それが256に達するとD
RQを落す。
【0035】DRQがローになると、反転器82の出力
がハイになり、従ってNORゲート74の出力、すなわ
ち被制御DRQがローになる。この後、次のセクタ・デ
ータの転送準備ができると、コントローラ18は再びD
RQをハイにし、上述の動作を繰り返す。このように、
前読みモードにおいては、DRQ及び被制御DRQは、
反転器82及びNORゲート74での遅延を無視する
と、同じタイミングを持っている。なお、ホスト12が
最初のセクタ・データを読み取ってから、次のセクタ・
データをディスクから読み出してセクタ・バッファ26
に書込むようにすると、読取りコマンドの実行完了まで
の時間が長くなるので、セクタ・バッファ26からホス
ト12への読出しと、ディスクからセクタ・バッファ2
6への書込みを並行して行うのが好ましい。その場合、
セクタ・バッファ26から読み出したデータをホスト1
2へ転送している間に、すなわちセクタ・バッファ26
の読取りが行われていない間に、ディスクからのデータ
がセクタ・バッファ26に書込まれる。これは、次の後
読みモードの場合も同じである。セクタ・カウント・レ
ジスタ42にロードされたセクタ・カウントの数だけセ
クタ・データがホスト12へ転送されると、読取りコマ
ンドの実行が完了する。
【0036】2.後読み ホスト12が後読みモードの場合の動作は、割込み要求
IRQが発生される迄は前読みモードの時と同じであ
る。後読みモードにおいては、ホスト12は割込み要求
IRQに応答して、まずデータ・レジスタ48の読取り
を指示することによって、セクタ・バッファ26からホ
スト12へのデータ転送を開始する。そして1セクタ分
のデータを読み取った後、状況レジスタ50の読取りを
指示する。インタフェース回路14においては、前読み
の場合と同様に、ホスト12が512バイトのセクタ・
データを読み取るとDRQがローになり、それに伴って
被制御DRQもローになる。しかし図6に示すように、
DRQ及び被制御DRQがローになった時点では、状況
レジスタ50はまだ読み取られていないので、フリップ
フロップ70はリセットされず、割込み要求IRQはハ
イのままである。従って、DRQがローになって、フリ
ップフロップ72のクロック端子CKが反転器82によ
り付勢されると、フリップフロップ72はセットされ
る。フリップフロップ72がセットされるのはこの時だ
け、すなわちDRQがローで且つIRQがハイの時だけ
である。これは、ホスト12が後読みモードであること
を示す。従って、フリップフロップ72はモード検出器
として働くことが判る。NORゲート74はフリップフ
ロップ72のQ出力を受け取るので、その出力である被
制御DRQは、フリップフロップ72がセットされてい
る限りローに保たれる。
【0037】ハイのQ出力はまたカウンタ76のリセッ
ト状態を解除する。カウンタ76は、フリップフロップ
72がリセットされていて、負リセット端子−Rがロー
に保たれている限り、リセット状態にある。カウンタ7
6は、リセット状態を解除されるとカウントを開始し、
クロック・パルスの印加の度に1ずつ増分する。カウン
タ76の内容は比較器80に供給され、そこで遅延値レ
ジスタ78の内容と比較される。遅延値レジスタ78に
は、パワーオンの時に所定の遅延値DLがコントローラ
18のマイクロプロセッサ(図示せず)からロードされ
ている。この遅延値DLはプログラマブルであり、ホス
ト12の状況レジスタ読取りによってIRQがリセット
されるタイミングを考慮して、被制御DRQの立上りが
それよりも遅れるように、予め設定される(図6参
照)。カウンタ76のカウント値が遅延値レジスタ78
の内容に等しくなると、比較器80の出力がローになっ
て、フリップフロップ72をリセットする。仮に、フリ
ップフロップ72がリセットされるまでの間に、次のセ
クタ・データの転送準備ができて、コントローラ18が
DRQを再びハイにしても、NORゲート74の出力で
ある被制御DRQは、フリップフロップ72がリセット
されるまではローのままである。フリップフロップ72
がリセットされるまでに状況レジスタ50が読み取られ
ると、NANDゲート84の出力によってフリップフロ
ップ70がリセットされる。
【0038】フリップフロップ72がリセットされた時
DRQが再びハイになっていると、NORゲート74が
条件付けられて、その出力をハイにする。その結果フリ
ップフロップ70が再びセットされ、それにより割込み
要求IRQがホスト12に対して再びアサートされる。
このように、本発明によれば、2回目以降のセクタ・デ
ータ転送においてDRQが立ち上がった時にIRQがま
だリセットされていなくても、次のセクタ・データ転送
に対するIRQを確実に発生することができる。指定さ
れた数のセクタ・データがホスト12に読み取られる
と、読取りコマンドの実行が完了する。
【0039】以上、本発明の良好な実施例を説明してき
たが、本発明はそれらに限定されることなく様々な変更
が可能である。例えば、実施例では512バイトのセク
タを単位ブロックとしてDRQ及びIRQを制御してい
たが、単位ブロックの大きさは512バイトに限らず、
適当な範囲で任意に決めることができる。また、後読み
モードの場合、IRQは状況レジスタの読取りによって
リセットされていたが、最終セクタ・データの読取りの
時を除いて、DRQがローになった直後にリセットする
ようにしてもよい。図6中の点線はこの様子を示してい
る。その場合、DRQがローになったこと及び最終セク
タ・データの読取りでないことを条件としてフリップフ
ロップ70をリセットする回路を追加すればよい。
【0040】
【発明の効果】本発明によれば、ホストが前読みモード
か後読みモードかを自動的に検出することによって、同
じハードウェアで何れのホストにも誤りなく対処するこ
とができる。
【図面の簡単な説明】
【図1】本発明に従うインタフェース回路を含むコンピ
ュータ・システムの一構成例を示すブロック図。
【図2】インタフェース回路におけるホストに対する入
出力部の構成を示すブロック図。
【図3】インタフェース回路における割込み制御部の構
成を示すブロック図。
【図4】図3に示した割込み制御部の詳細な回路図。
【図5】ホストが前読みモードの場合の動作のタイミン
グ・チャート。
【図6】ホストが後読みモードの場合の動作のタイミン
グ・チャート。
【符号の説明】
10 ハード・ディスク・ドライブ(HDD) 12 ホスト 14 インタフェース回路 18 デバイス・コントローラ 26 セクタ・バッファ 60 モード検出回路 62 遅延回路 64 割込み要求発生回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岩佐 博之 神奈川県藤沢市桐原町1番地 日本アイ・ ビー・エム株式会社 藤沢事業所内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】周辺装置でブロック・データの転送準備が
    できた時にデータ要求を発生してホストに割込み要求を
    送り、該ホストは、前記割込み要求に応答して前記周辺
    装置の状況を読み取ってからブロック・データ転送を開
    始する第1のモード、又は前記ブロック・データ転送が
    終了してから前記状況を読み取る第2のモードで動作す
    るコンピュータ・システムにおいて、 前記ホストが前記第1のモード及び前記第2のモードの
    何れで動作しているかを検出するモード検出手段と、 前記モード検出手段が前記第2のモードを検出した時に
    前記データ要求を所定時間だけ遅らせる遅延手段と、 前記遅延手段の出力に応答して前記ホストに割込み要求
    を送る割込み手段と、を具備するデータ転送制御用イン
    タフェース回路。
  2. 【請求項2】前記割込み要求は前記状況の読取りによっ
    てリセットされる、請求項1に記載のインタフェース回
    路。
  3. 【請求項3】前記データ要求は前記ブロック・データの
    読取りが終るとリセットされ、次のブロック・データの
    転送準備ができると再び発生される、請求項2に記載の
    インタフェース回路。
  4. 【請求項4】前記モード検出手段は前記データ要求及び
    前記割込み要求に応答して前記ホストのモードを検出す
    る、請求項3に記載のインタフェース回路。
  5. 【請求項5】前記モード検出手段は前記データ要求がリ
    セットされたこと及び前記割込み要求がリセットされて
    いないことを条件としてセットされるフリップフロップ
    を含む、請求項4に記載のインタフェース回路。
  6. 【請求項6】前記遅延手段は、前記フリップフロップが
    セットされたことに応答してカウントを開始するカウン
    タ、所定の遅延値をロードされるレジスタ、前記カウン
    タ及び前記レジスタの内容を比較してそれらが一致した
    時に前記フリップフロップをリセットする比較器、並び
    に前記フリップフロップがリセットされたことに応答し
    て遅延されたデータ要求を発生するゲート回路を含む、
    請求項5に記載のインタフェース回路。
  7. 【請求項7】前記ゲート回路は、前記フリップフロップ
    の出力及び反転されたデータ要求を受け取るNORゲー
    トである、請求項6に記載のインタフェース回路。
  8. 【請求項8】前記割込み手段は、前記ゲート回路の出力
    が付勢された時にセットされる第2のフリップフロップ
    を含む、請求項6又は7に記載のインタフェース回路。
  9. 【請求項9】前記第2のフリップフロップは前記状況の
    読取りによってリセットされる、請求項8に記載のイン
    タフェース回路。
JP3337995A 1991-11-28 1991-11-28 データ転送制御用インタフェース回路 Expired - Lifetime JPH0656601B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP3337995A JPH0656601B2 (ja) 1991-11-28 1991-11-28 データ転送制御用インタフェース回路
US07/981,709 US5459870A (en) 1991-11-28 1992-11-25 Interface circuit for controlling data transfers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3337995A JPH0656601B2 (ja) 1991-11-28 1991-11-28 データ転送制御用インタフェース回路

Publications (2)

Publication Number Publication Date
JPH05233513A JPH05233513A (ja) 1993-09-10
JPH0656601B2 true JPH0656601B2 (ja) 1994-07-27

Family

ID=18313957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3337995A Expired - Lifetime JPH0656601B2 (ja) 1991-11-28 1991-11-28 データ転送制御用インタフェース回路

Country Status (2)

Country Link
US (1) US5459870A (ja)
JP (1) JPH0656601B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11844345B2 (en) 2005-06-28 2023-12-19 Transmedics, Inc. Systems, methods, compositions and solutions for perfusing an organ

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5797037A (en) * 1995-03-31 1998-08-18 Cirrus Logic, Inc. Interrupt request control logic reducing the number of interrupts required for I/O data transfer
US5826091A (en) * 1996-08-30 1998-10-20 Sony Corporation Method and apparatus for regenerating edge-sensitive interrupts
JP3711432B2 (ja) * 1998-04-15 2005-11-02 セイコーエプソン株式会社 周辺処理装置およびその制御方法
JP2000347980A (ja) * 1999-03-29 2000-12-15 Canon Inc 周辺装置、周辺装置の制御方法、記憶媒体、及び、情報処理システム
JP3568118B2 (ja) * 2000-10-19 2004-09-22 松下電器産業株式会社 シリアル通信用データ処理装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1505535A (en) * 1974-10-30 1978-03-30 Motorola Inc Microprocessor system
US4069510A (en) * 1974-10-30 1978-01-17 Motorola, Inc. Interrupt status register for interface adaptor chip
US4268906A (en) * 1978-12-22 1981-05-19 International Business Machines Corporation Data processor input/output controller
US4456970A (en) * 1981-12-10 1984-06-26 Burroughs Corporation Interrupt system for peripheral controller
JPS619748A (ja) * 1984-06-25 1986-01-17 Nec Corp 入出力制御装置
US5038275A (en) * 1988-10-07 1991-08-06 Advanced Micro Devices, Inc. Status transfer structure within a data processing system with status read indication
US5150465A (en) * 1988-11-30 1992-09-22 Compaq Computer Corporation Mode-selectable integrated disk drive for computer
US5274795A (en) * 1989-08-18 1993-12-28 Schlumberger Technology Corporation Peripheral I/O bus and programmable bus interface for computer data acquisition

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11844345B2 (en) 2005-06-28 2023-12-19 Transmedics, Inc. Systems, methods, compositions and solutions for perfusing an organ

Also Published As

Publication number Publication date
JPH05233513A (ja) 1993-09-10
US5459870A (en) 1995-10-17

Similar Documents

Publication Publication Date Title
US5524268A (en) Flexible processor-driven control of SCSI buses utilizing tags appended to data bytes to determine SCSI-protocol phases
JP3137293B2 (ja) ステートマシンを利用するataインターフェースアーキテクチャ
US5446877A (en) Method and apparatus for operation of a data archival apparatus allowing for coupling of the data archival device with an ide interface
US5450546A (en) Intelligent hardware for automatically controlling buffer memory storage space in a disk drive
US6449666B2 (en) One retrieval channel in a data controller having staging registers and a next pointer register and programming a context of a direct memory access block
JPH0934740A (ja) 外部記憶装置およびそのメモリアクセス制御方法
US5555437A (en) Read-write state machine in a host interface for controlling read and write operations in a disk drive
US6539518B1 (en) Autodisk controller
JP2770901B2 (ja) ディスク制御方法
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
KR100212084B1 (ko) 시리얼 인터페이스 회로
EP0597512B1 (en) Interface circuit for controlling data transfers
JP2530113B2 (ja) デ―タ転送制御用インタ―フェ―ス回路及び磁気ディスク装置
JPH0656601B2 (ja) データ転送制御用インタフェース回路
US4584617A (en) Method and apparatus for improving the transfer time in rotating data storage systems
US5455954A (en) Host interrupt signal generation circuit for controlling an auto read operation in a disk drive controller
JPS5832417B2 (ja) デ−タ転送制御方式
US5875458A (en) Disk storage device
JPH04291648A (ja) 非同期データ転送システムおよび方法
JP2913873B2 (ja) データ処理システム
JPH06274462A (ja) 共有メモリの非同期書込み方式
JPH07121308A (ja) ディスク装置のライトバック制御方法
US5754889A (en) Auto write counter for controlling a multi-sector write operation in a disk drive controller
JPS6253864B2 (ja)
JPH11328084A (ja) ディスク装置のホストインターフェース回路およびディスク装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041115

A02 Decision of refusal

Effective date: 20050404

Free format text: JAPANESE INTERMEDIATE CODE: A02