JPH0535661A - Scsiコントロ−ラic - Google Patents

Scsiコントロ−ラic

Info

Publication number
JPH0535661A
JPH0535661A JP3190242A JP19024291A JPH0535661A JP H0535661 A JPH0535661 A JP H0535661A JP 3190242 A JP3190242 A JP 3190242A JP 19024291 A JP19024291 A JP 19024291A JP H0535661 A JPH0535661 A JP H0535661A
Authority
JP
Japan
Prior art keywords
command
report
scsi
cpu
interrupt
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP3190242A
Other languages
English (en)
Inventor
Yukari Nagae
ゆかり 永重
Soichi Isono
聡一 磯野
Kunio Watanabe
国夫 渡辺
Koji Shida
光司 志田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3190242A priority Critical patent/JPH0535661A/ja
Priority to KR92012877A priority patent/KR960001750B1/ko
Priority to US07/921,743 priority patent/US5313588A/en
Publication of JPH0535661A publication Critical patent/JPH0535661A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】連続して発行された2つのコマンドのうちの初
めのコマンドの処理が正常に終了した場合、CPUへの
正常終了報告を省略する。 【構成】コマンドFIFO(6、7)は、CPUが連続
して発行したコマンドを2つ格納する。シ−ケンサ
(8)は、初めのコマンドの処理を行ない、正常終了コ
−ドをステ−タスレジスタ(16)に格納し、正常終了
割込み設定信号(20)を出力する。このとき、処理す
べきコマンドが残っていることを示すコマンド表示ビッ
ト(14)はセットされているので、正常終了割込み設
定信号はANDゲ−ト(19)によって抑止され、割込
み信号(13)は出力されない。一方、2つ目のコマン
ドの処理の終了時は、コマンド表示ビット(14)はリ
セットされているので、割込み信号(13)がCPUに
出力される。 【効果】連続して発行された2つのコマンドのうちの初
めのコマンドの処理が正常に終了した場合、コマンド実
行終了をCPUに通知する割込み信号を抑止することが
できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理システムにお
いてSCSI(Small Computer Sys
tem Interface)の制御に用いられるSC
SIコントラ−ラICに関するものである。
【0002】
【従来の技術】従来、小規模な情報処理システムにおけ
るデバイス間のインタ−フェ−スには、SCSIが広く
用いられている。
【0003】SCSIは、制御線9本よりなる制御バス
と、データ線9本よりなるデータバスとよりなるSCS
Iバスを用いてデータの送受信を行うパラレルインター
フェ−スである。また、SCSIバスには、最大8台ま
でのデバイスが接続可能となっている。
【0004】このような、SCSIバスに接続されたデ
バイス間のSCSIによるデータ伝送を制御するのがS
CSIコントロ−ラである。
【0005】このような、SCSIコントローラは、L
SI等のICとして供給される場合が多い。
【0006】ここで、従来のSCSIコントロ−ラLS
Iの構成を図5に示す。
【0007】図中、1はCPU側内部バス、2はSCS
I側内部バス、3はCPUに接続されるCPU接続バ
ス、4はSCSIバスである。
【0008】また、5は、転送データを一旦格納し、C
PUバスとSCSIバスの間のデータ転送速度を調整す
るデータFIFO(First in First Out)メモリであ
る。
【0009】6、7は、CPUにより設定されたSCS
I制御用コマンドを2つまで格納するコマンドFIFO
である。また、そのうち、6が現在実行中のコマンドを
格納する1段目FIFO、7がコマンド実行待ち状態の
コマンドを格納する2段目FIFOである。
【0010】8は、コマンドFIFO6に格納されたコ
マンドに従いSCSIバスを制御するシーケンサであ
る。
【0011】また、9、10は、シーケンサ8のコマン
ドの実行結果を2つまで格納するステータスFIFOで
ある。また、そのうち、9は1段目のFIFOであり、
10は2段目のFIFOである。
【0012】11、12は、それぞれステータスFIF
O9、10に含まれる割込みビットを示している。
【0013】また、13はCPUに対する割込み信号で
ある。
【0014】以下、この従来のSCSIコントロ−ラL
SIの動作を説明する。
【0015】図6は、従来のSCSIコントロ−ラLS
Iの動作タイミングを示したものである。
【0016】図示するように、コマンド1は、CPUに
よりコマンドFIFO1段目6に書き込まれる。そし
て、CPUよりの、次のコマンド2はコマンドFIFO
2段目7に書き込まれる。
【0017】シーケンサ8は、コマンドFIFO1段目
6に書き込まれたコマンド1を処理する。そして、処理
を終えると、ステータスFIFO1段目9にコマンド1
の終了ステータスを格納し、コマンドFIFO2段目7
に格納されていたコマンド2をコマンドFIFO1段目
6にロードする。そして、コマンドFIFO1段目6に
書き込まれたコマンド2の処理を開始する。
【0018】一方、シーケンサ8によって、ステータス
FIFO1段目9にコマンド1の終了ステータス1が格
納されると、割込み信号13がCPUに出力される。
【0019】シーケンサ8は、コマンド2の処理を終え
ると、ステータスFIFO2段目10にコマンド2の終
了ステータスを格納する。
【0020】割込み信号13を受けたCPUは、発行し
たコマンド1の実行結果を知るために、ステータスFI
FO1段目9に格納されているコマンド1終了ステータ
スを読みだすと、ステータスFIFO2段目10に格納
されていたコマンド2終了ステータスがステータスFI
FO1段目9にロードされる。
【0021】また、コマンド2終了ステータスがステー
タスFIFO1段目9にロードされると、再度CPUに
対する割込み信号13が出力される。
【0022】そして、2度目の割込み信号13を受けた
CPUは、発行したコマンド2の実行結果を知るため
に、ステータスFIFO1段目9に格納されているコマ
ンド2終了ステータスを読みだす。
【0023】なお、コマンド1が異常終了した場合に
は、シーケンサ8はコマンド1の異常終了時にCPUに
対して異常終了割込みを発生し、コマンド2を自動的に
クリアする。
【0024】ここで、表1に、CPUがSCSIコント
ロ−ラLSIに発行するコマンドの例を示す。表中、中
欄がコマンド、右欄がコマンドの指定する動作である。
【0025】
【表1】
【0026】次に、イニシエ−タがタ−ゲットにリード
コマンドを発行し、タ−ゲットからデータを受け取るシ
ーケンスを例にとって、SCSIコントロ−ラLSI
が、イニシエータのSCSIアダプタとして適用された
場合の動作を動作を説明する。
【0027】図4に示すように、このシーケンスにおい
て、フェーズはバスフリーフェーズ、アービトレーショ
ンフェーズ、セレクションフェーズ、メッセージアウト
フェーズ、コマンドフェーズ、メッセージインフェー
ズ、バスフリーフェーズと遷移する。
【0028】図示するように、CPUは、まずデータF
IFO5にタ−ゲットに送信する、リ−ドコマンドデー
タ等の送信データを書き込み、表1に示すSelect With
ATNSequenceコマンド及びTransfer Informationコマン
ドを、SCSIコントロ−ラLSIに発行する。
【0029】すると、SCSIコントロ−ラLSIのシ
ーケンサ8は、Select With ATN Sequenceコマンドを実
行し、SCSIバスを制御しアービトレーションフェー
ズ、セレクションフェーズ、メッセージアウトフェー
ズ、コマンドフェーズを実行する。
【0030】コマンドフェーズが終了し、ACK/40
1信号をネゲートするとシーケンサ8は、ステータスF
IFO1段目9に正常終了を示すコードを出力し、割込
みビット11に`1`をセットし、割込み信号13をC
PUに対して出力する。つぎに、該従来例のシーケンサ
8は、Transfer Informationコマンド200を実行しメ
ッセージインフェーズにて1バイト受け取り、ACK/
信号をアサートした状態で、ステータスFIFO2段目
10に正常終了を示すコードを出力し、割込みビット1
2に`1`をセットする。
【0031】CPUがSelect With ATN Sequenceコマン
ドの正常終了ステータスを読みだすと、ステータスFI
FO2段目10に格納されたTransfer Informationコマ
ンドの正常ステータスは、ステータスFIFO1段目9
にロードされる。また、割込みビット12のあたいは割
込みビット11にロードされ、割込み信号13をCPU
に対して再出力する。
【0032】つぎに、CPUがTransfer Informationコ
マンドの正常ステータスを読みだすと、ステータスFI
FO1段目9及び割込みビット11の値はクリアされ割
込み信号13はネゲートされる。
【0033】次にCPUは、メッセージインフェーズに
て受信したデータFIFOに格納されている入力データ
を読みだし、メッセージインフェーズのACK/401
をクリアするためにMessage Acceptedコマンドと、次の
1バイトを受け取るためにTransfer Informationコマン
ド200を発行する。シーケンサ8は、Message Accept
edコマンドを実行しACK/401をネゲートし、RE
Q/402がターゲットによりアサートされるとステー
タスFIFO1段目9に正常終了を示すコードを出力
し、割込みビット11に`1`をセットし、割込み信号
13をCPUに対して出力する。
【0034】次に、シ−ケンサ8は、Transfer Inform
ationコマンドを実行しメッセージインフェーズにて1
バイト受け取り、ACK/信号401をアサートした状
態で、ステータスFIFO2段目10に正常終了を示す
コードを出力し、割込みビット12に`1`をセットす
る。
【0035】CPUがMessage Acceptedコマンドの正常
終了ステータスを読みだすと、ステータスFIFO2段
目10に格納されたTransfer Informationコマンドの正
常ステータスは、ステータスFIFO1段目9にロード
される。また、割込みビット12の値は割込みビット1
1にロードされ、割込み信号13をCPUに対して再出
力する。
【0036】次に、CPUがTransfer Informationコマ
ンドの正常ステータスを読みだすと、ステータスFIF
O1段目9及び割込みビット11の値はクリアされ割込
み信号13はネゲートされる。CPUはさらに、メッセ
ージインフェーズのACK/信号401をクリアするた
めにMessage Acceptedコマンドを発行する。
【0037】シーケンサ8は、Message Acceptedコマン
ドを実行しACK/をネゲートし、BSY/がターゲッ
トによりネゲートされるとステータスFIFO1段目9
に正常終了を示すコードを出力し、割込みビット11に
`1`をセットし、割込み信号13をCPUに対して出
力する。
【0038】CPUがMessage Acceptedコマンドの正常
終了ステータスを読みだし正常終了を確認すると、ステ
ータスFIFO1段目9及び割込みビット11の値はク
リアされ割込み信号13はネゲートされる。
【0039】このように、SCSIコントロ−ラLSI
のSCSI制御シ−ケンスは、一般に、CPUによっ
て、汎用性あるコマンドの組み合わせによって指定され
る。SCSIの動作シ−ケンス毎にコマンド設けると、
コマンド種数が膨大なものになるため、汎用性ある少数
のコマンドの組み合わせによって動作シ−ケンスを指定
しているのである。
【0040】なお、前掲した表中の各コマンドも、異な
る複数のSCSI制御シ−ケンスの実現のために他のコ
マンドと組み合わせて用いられる。
【0041】以上説明したように、従来のSCSIコン
トロ−ラを用いた場合、先に示した、リードコマンドを
発行し、タ−ゲットからデータを受け取るシーケンスを
実現するために、CPUは、受け取った5回の割込みに
対応して5回の割込み処理を実行しなければならない。
【0042】
【発明が解決しようとする課題】このように、従来のS
CSIコントロ−ラによれば、コマンドの組み合わせに
よってSCSI制御シ−ケンスを指定するために、各コ
マンドに対応してCPUにコマンドの実行終了状態の報
告が、割込みによって行なわれる。そのため、CPUの
SCSIプロトコル処理において、割込み処理によるオ
−バ−ヘッドが大きいという問題があった。
【0043】一方、SCSI制御シ−ケンスを1つのコ
マンドにより指定しようとすると、コマンド種が増大
し、これを処理するシ−ケンサが複雑化する。
【0044】そこで、本発明は、コマンド種数を増大す
ることなく、CPUののSCSIプロトコル処理におけ
る、SCSIコントロ−ラからの、コマンドの実行終了
状態の報告に起因するオーバーヘッドを低減することの
できるSCSIコントロ−ラICを提供することを目的
とする。
【0045】
【課題を解決するための手段】前記目的達成のために、
本発明は、外部より与えられた複数のコマンドを実行
し、順次SCSIバスを制御するSCSIコントロ−ラ
ICであって、与えられた2以上のコマンドを格納可能
なコマンド格納手段と、前記コマンド格納手段にコマン
ドが格納された順に順次、コマンドを実行するコマンド
処理手段と、前記コマンド処理手段のコマンドの実行終
了時にコマンドの実行終了状態を外部に報告する実行結
果報告手段と、前記コマンド処理手段が実行したコマン
ドが最後に前記コマンド格納手段に格納されたコマンド
か否かを判定する判定手段と、前記判定手段が前記コマ
ンド処理手段が実行したコマンドが最後に前記コマンド
格納手段に格納されたコマンドでないと判定した場合で
あって、かつ、前記コマンド処理手段が実行したコマン
ドの実行終了状態が正常終了であった場合に、当該コマ
ンド処理手段が実行したコマンドの実行終了状態の外部
への報告を抑止する報告禁止手段とを有することを特徴
とするSCSIコントロ−ラICを提供する。
【0046】
【作用】本発明に係るSCSIコントロ−ラICによれ
ば、報告禁止手段は、判定手段が前記コマンド処理手段
が実行したコマンドが最後に前記コマンド格納手段に格
納されたコマンドでないと判定した場合であって、か
つ、前記コマンド処理手段が実行したコマンドの実行終
了状態が正常終了であった場合には、当該コマンド処理
手段が実行したコマンドの実行終了状態の外部への報告
を抑止する。
【0047】すなわち、コマンドの実行が正常に終了し
た場合は、コマンド格納手段に格納した2以上のコマン
ドのうち、最後に与えられたコマンド以外のコマンドに
ついては、正常終了の報告を行なわずに、最後に与えら
れたコマンドについてのみ正常終了の報告を行なう。一
方、コマンドの実行が異常に終了した場合は、常に、異
常終了の報告を行なう。
【0048】
【実施例】以下、本発明に係るSCSIコント−ラLS
Iの一実地例を説明する。
【0049】まず、図3にSCSIを採用する情報処理
システムの構成を示す。
【0050】図中、310、320、330、340、
350、360、370、380が、それぞれコンピュ
−タやディスクドライブやプリンタ等のデバイスであ
り、390がSCSIバスである。また、各デバイス中
の311、321、331、341、351、361、
371、381が本実施例に係るSCSIコントロ−ラ
LSIである。
【0051】コンピュ−タであるデバイス310、32
0、330は、SCSI上イニシエ−タとして動作し、
その他のデバイス340、350、360、370、3
80はSCSI上タ−ゲットとして動作する。各SCS
Iコントロ−ラLSIはSCSIバスを制御して、各デ
バイスのSCSIバスを用いたデ−タ伝送を可能にす
る。
【0052】次に、本実施例に係るSCSIコントロ−
ラLSIの構成を図1に示す。
【0053】図中、1はCPU側内部バス、2はSCS
I側内部バス、3はCPUバス、4はSCSIバス、5
はデ−タFIFO、6はコマンドFIFO1段目、7は
コマンドFIFO2段目、8はシ−ケンサ、13は割込
み信号である。
【0054】14はコマンドFIFO2段目にコマンド
が存在するかどうかを示すコマンド存在表示ビットであ
り、15は1つめのコマンドの終了が正常終了であっ
て、終了時に2つめのコマンドがコマンドFIFOの中
に存在する場合は、コマンドの終了による割込みの出力
を禁止する中間割込み禁止ビットである。
【0055】また、16はシ−ケンサ8により実行され
たコマンドの終了状態を保持するステ−タスレジスタで
ある。このステ−タスレジスタ16は、中間割込み禁止
ビット15がセットされている場合は単独のステ−タス
レジスタとして働くが、中間割込み禁止ビット15がセ
ットされていない場合は、前記従来技術に係るSCSI
コントロ−ラLSI(図5参照)のステ−タスFIFO
1段目9として、図示せざるステ−タスFIFO2段目
10と共にステ−タスFIFOの一部として働く。
【0056】17は割込みを保持する割込みビット、1
8はNANDゲ−ト、19はANDゲ−ト、20は正常
終了割込みセット信号、21は異常終了割込みセット信
号である。
【0057】次に、本実施例に係るSCSIコントロ−
ラLSIの動作を説明する。
【0058】中間割込み禁止ビット15がセットされて
いない場合、本実施例に係るSCSIコントロ−ラLS
Iは、前述した従来のSCSIコントロ−ラLSIと同
じく動作する。なお、このとき、ステ−タスレジスタ1
6は、前述したように前記従来技術に係るSCSIコン
トロ−ラLSI(図5参照)のステ−タスFIFO1段
目9として、図示せざるステ−タスFIFO2段目10
と共にステ−タスFIFOの一部として働く。
【0059】中間割込み禁止ビット15がセットされて
いる場合は、図2に示す動作タイミングで動作する。
【0060】すなわち、図示するように、コマンド1
は、CPUによりコマンドFIFO1段目6に書き込ま
れる。そして、CPUよりの、次のコマンド2はコマン
ドFIFO2段目7に書き込まれる。コマンドがコマン
ドFIFO2段目7に書き込まれると、コマンド存在表
示ビット14がセットされる。
【0061】シ−ケンサ8は、コマンドFIFO1段目
6に書き込まれたコマンド1を処理する。そして、処理
を終えると、ステ−タスレジスタ16にコマンド1の終
了ステ−タスを格納し、正常終了割込みセット信号20
を発行する。このとき、ステ−タスレジスタ16にコマ
ンド1の終了ステ−タスが格納されても、コマンド存在
表示ビット14と中間割込み禁止ビット15により、正
常終了割込み信号20は抑止され、割込みビット17は
セットされない。
【0062】次に、シ−ケンサ8は、コマンドFIFO
2段目7に格納されていたコマンド2をコマンドFIF
O1段目6にロ−ドする。そして、コマンドFIFO1
段目6に書き込まれたコマンド2の処理を開始する。コ
マンドFIFO2段目7が空になると、コマンド存在表
示ビット14はクリアされる。
【0063】シ−ケンサ8は、コマンド2の処理を終え
ると、ステ−タスレジスタ16にコマンド2の正常終了
ステ−タスを格納し、正常終了割込みセット信号20を
発行する。
【0064】コマンド2の処理が終了し、コマンド2終
了ステ−タスがステ−タスレジスタ16にロ−ドされる
と、コマンド存在表示ビット14はクリアされているの
で、正常終了割込みセット信号20は抑止されない、し
たがい、割込みビット17はセットされ、CPUに対す
る割込み信号13が出力される。
【0065】割込み信号13を受けたCPUは、発行し
たコマンド2の実行結果を知るために、ステ−タスレジ
スタ1段目9に格納されているコマンド2終了ステ−タ
スを読みだす。
【0066】なお、コマンドが異常終了した場合には、
シ−ケンサ8はコマンドの異常終了時にCPUに対して
異常終了割込みを発生し、コマンドを自動的にクリアす
る。異常終了時の割込みビットの設定21はコマンド存
在表示ビット14と中間割込み禁止ビット15によって
抑止されないので、コマンド1が異常終了した場合でも
割込み信号13は出力される。したがって、CPUは異
常処理を行なうことができる。
【0067】以下、前記従来技術の項で、従来のSCS
Iコントロ−ラLSIの動作に用いた、イニシエ−タが
タ−ゲットにリ−ドコマンドを発行し、タ−ゲットから
デ−タを受け取るシ−ケンスを例にとって、イニシエ−
タのSCSIアダプタとして適用されたSCSIコント
ロ−ラLSIの動作を説明する。
【0068】前述したように、このシ−ケンスにおいて
フェ−ズはバスフリ−フェ−ズ、ア−ビトレ−ションフ
ェ−ズ、セレクションフェ−ズ、メッセ−ジアウトフェ
−ズ、コマンドフェ−ズ、メッセ−ジインフェ−ズ、バ
スフリ−フェ−ズと遷移し、SCSIバスの各信号は図
4に示すように遷移する。
【0069】また、本実施例においても、前記従来技術
で表1に示したコマンドを用いる。
【0070】図4に示したシ−ケンスを実現するため
に、CPUは、図4中410で示す動作を行う。
【0071】すなわち、まず、CPUは、SCSIコン
トロ−ラLSI(図1参照)の中間割込み禁止ビット1
5をセットし、デ−タFIFO5にメッセ−ジアウトフ
ェ−ズ、コマンドフェ−ズにて送信するリ−ドコマンド
デ−タ等を書き込み、SelectWith ATN Sequenceコマン
ド及びTransfer Informationコマンドを発行する。
【0072】一方、SCSIコントロ−ラLSIにおい
て、CPUが発行したSelect WithATN Sequenceコマン
ドはコマンドFIFO1段目6に格納され、Transfer I
nformationコマンドはコマンドFIFO2段目7に格納
される。また、コマンドFIFO2段目7にコマンドが
格納されると、コマンド存在表示ビット14には1がセ
ットされる。
【0073】シ−ケンサ8は、コマンドFIFO1段目
6に格納されたSelect With ATN Sequenceコマンドを実
行し、SCSIバスを制御してア−ビトレ−ションフェ
−ズ、セレクションフェ−ズ、メッセ−ジアウトフェ−
ズ、コマンドフェ−ズを実行する。
【0074】シ−ケンサ8は、コマンドフェ−ズが終了
し、ACK/信号401をネゲ−トして、Select With
ATN Sequenceコマンドの処理を終了する。そして、ステ
−タスレジスタ16に正常終了を示すコ−ドを出力し、
正常終了割込みセット信号20をパルス出力する。
【0075】ここで、あらかじめCPUにより中間割込
み禁止ビット15がセットされているので、コマンド存
在表示ビット14、中間割込み禁止ビット15はともに
1である。したがって、NANDゲ−ト18の出力は`
0`と成り、ANDゲ−ト19の出力はアクティブとな
らない。
【0076】よって割込みビット17は`1`にセット
されず、割込み信号13は出力されない。
【0077】つぎに、コマンドFIFO2段目7に格納
されていたTransfer Informationコマンドが、コマンド
FIFO1段目6にロ−ドされる。
【0078】コマンドFIFO2段目7にはコマンドが
なくなったので、コマンド存在表示ビット14はクリア
され`0`になる。したがって、NANDゲ−ト18の
出力は`1`となる。
【0079】シ−ケンサ8は、FIFO1段目6にロ−
ドされたTransfer Informationコマンドを実行し、メッ
セ−ジインフェ−ズにてデ−タを1バイト受け取るとこ
のデ−タをデ−タFIFO5に格納し、ACK/信号4
01をアサ−トしたままTransfer Informationコマンド
の処理を終了する。そして、ステ−タスレジスタ16に
正常終了を示すコ−ドを出力し、正常終了割込みセット
信号をパルス出力する。
【0080】このとき、前述したように、NANDゲ−
ト18の出力は1となっているので、ANDゲ−ト19
の出力は1となり、割込みビット17に`1`がセット
され、割込み信号13は出力される。
【0081】この割込み信号13による割込みを受けた
CPUは、ステ−タスレジスタ16の値を読みだし、正
常終了であることを確認する。CPUが、ステ−タスレ
ジスタ16の値を読みだすと割込みビット17の値はク
リアされ、割込み信号13はネゲ−トされる。
【0082】CPUは、次に、デ−タFIFO5の値を
読みだして、メッセ−ジインフェ−ズのACK/をクリ
アするためにMessage Acceptedコマンドを発行する。ま
た、続けて、次のデ−タを1バイトを受け取るためにTr
ansfer Informationコマンドを発行する。
【0083】一方、SCSIコントロ−ラLSIにおい
て、CPUが発行したMessage Acceptedコマンドはコマ
ンドFIFO1段目6に格納され、Transfer Informati
onコマンドはコマンドFIFO2段目7に格納される。
また、コマンドFIFO2段目7にコマンドが格納され
ると、コマンド存在表示ビット14には1がセットされ
る。
【0084】シ−ケンサ8は、コマンドFIFO1段目
6に格納されたMessage Acceptedコマンドを実行しAC
K/401をネゲ−トし、REQ/402がタ−ゲット
によりアサ−トされるとステ−タスレジスタ16に正常
終了を示すコ−ドを出力し、正常終了割込みセット信号
20をパルス出力する。
【0085】このとき、中間割込み禁止ビット15がセ
ットされており、コマンドFIFO2段目にTransfer I
nformationコマンドが格納されているため、割込み信号
13は出力されない。
【0086】一方、コマンドFIFO2段目7に格納さ
れていたTransfer Informationコマンドは、コマンドF
IFO1段目6にロ−ドされる。
【0087】コマンドFIFO2段目7にはコマンドが
なくなったので、コマンド存在表示ビット14はクリア
され`0`になる。したがって、NANDゲ−ト18の
出力は`1`となる。
【0088】以下、先ほどTransfer Informationコマン
ドの処理と同様に、シ−ケンサ8は、FIFO1段目6
にロ−ドされたTransfer Informationコマンドを実行
し、メッセ−ジインフェ−ズにてデ−タを1バイト受け
取るとこのデ−タをデ−タFIFO5に格納し、ACK
/信号401をアサ−トしたままTransfer Information
コマンドの処理を終了する。そして、ステ−タスレジス
タ16に正常終了を示すコ−ドを出力し、正常終了割込
みセット信号をパルス出力する。
【0089】このとき、前述したように、NANDゲ−
ト18の出力は1となっているので、ANDゲ−ト19
の出力は1となり、割込みビット17に`1`がセット
され、割込み信号13は出力される。
【0090】この割込み信号13による割込みを受けた
CPUは、ステ−タスレジスタ16の値を読みだし、正
常終了であることを確認する。CPUが、ステ−タスレ
ジスタ16の値を読みだすと割込みビット17の値はク
リアされ、割込み信号13はネゲ−トされる。
【0091】そして、CPUはメッセ−ジインフェ−ズ
にて受信した、デ−タFIFO5の値を読みだす。
【0092】また、CPUは、メッセ−ジインフェ−ズ
のACK/をクリアするためにMessage Acceptedコマン
ドを発行する。
【0093】一方、SCSIコントロ−ラLSIにおい
て、CPUが発行したMessage Acceptedコマンドはコマ
ンドFIFO1段目6に格納される。
【0094】シ−ケンサ8は、コマンドFIFO1段目
6に格納されたMessage Acceptedコマンドを実行しAC
K/401をネゲ−トし、BSY/403がタ−ゲット
によりネゲ−トされると、正常終了を示すコ−ドを出力
し、正常終了割込みセット信号20をパルス出力する。
【0095】このとき、コマンドFIFO2段目にコマ
ンドは格納されていないためNANDゲ−ト18の出力
は1となっているので、ANDゲ−ト19の出力は1と
なり、割込みビット17に`1`がセットされ、割込み
信号13は出力される。
【0096】この割込みを受けたCPUは、Message Ac
ceptedコマンドの正常終了ステ−タスを読みだし正常終
了を確認する。正常終了ステ−タスがよみだされると、
ステ−タスレジスタおよび割込みビット17の値はクリ
アされ割込み信号13はネゲ−トされる。
【0097】なお、コマンドが異常終了した場合には、
シ−ケンサ8はコマンド1の異常終了時に異常終了時の
割込みセット信号21を発生して、割込みビットをセッ
トし、CPUに対して割込みを発生し、コマンドFIF
O2段目7のコマンドを自動的にクリアする。異常終了
割込みセット信号は21はコマンド存在表示ビット14
と中間割込み禁止ビット15によって抑止されないの
で、コマンドが異常終了した場合でも割込み信号13は
出力される。したがい、CPUは、発行した全てのコマ
ンドについて、異常処理を行なうことができる。
【0098】以上が、本実施例に係るSCSIコントロ
−ラLSIによる。イニシエ−タがタ−ゲットにリ−ド
コマンドを発行し、タ−ゲットからデ−タを受け取るシ
−ケンスの動作である。そして、以上説明したように、
本実施例によれば、CPUは、割込み処理を3回行うだ
けで本シ−ケンスを実現している。これは前述した従来
技術において必要であったCPUの割込み処理回数5回
よりも少ない。また、本実施例において、コマンドは前
述した従来技術と同じものを用いている。
【0099】以上のように、本実施例によれば、CPU
が連続して発行した2つのコマンドのうちの1つ目のコ
マンドの処理が正常に終了した場合は正常終了の報告を
省略し、1つ目のコマンドの処理の正常終了の情報を2
つ目のコマンドの処理の終了報告に含ませている。この
ため、CPUの割込み処理回数は減り、SCSIコント
ロ−ラからの割込みに起因するCPUのオ−バ−ヘッド
を低減することができる。一方、コマンドの処理が異常
終了した場合は、1つ目のコマンドの処理であっても、
これを報告することにより、CPUの異常処理を可能と
している。
【0100】これは、前述したシ−ケンスにおけるよう
に、CPUが連続して複数のコマンドを発行した場合、
1つ目のコマンドの処理が正常終了に起因して、CPU
が行なうべき処理が生じる場合が少ないと想定されるこ
とを利用したものである。
【0101】一方、本実施例によれば、1つ目のコマン
ドについての正常終了の報告の省略を指定する中間割込
み禁止ビットを外部より設定可能としているので、1つ
目のコマンドの処理の正常終了に起因してCPUが行な
うべき処理がある場合には、1つ目のコマンドの処理の
正常終了報告を省略せずに行なうようにすることができ
る。
【0102】なお、本実施例においては、SCSIコン
トロ−ラLSIが、一度に連続して受付け可能なコマン
ド数を2つとしたが、一度に連続して受付け可能なコマ
ンド数を3以上とするようにしてもよい。この場合に
は、CPUより発行されたコマンドを格納するコマンド
FIFOの段数を、受付け可能としたコマンド数に応じ
て増やし、最終に受付けたコマンド以外のコマンドは、
前記実施例の説明中における初めに受付けたコマンドの
処理と同様に処理し、最終に受付けたコマンドは、前記
実施例の説明中における2番目に受付けたコマンドの処
理と同様に処理するようにすればよい。
【0103】また、本実施例はSCSIコントロ−ラL
SIについて説明したが、CPUの発行したコマンドに
基づいて処理を実行し、処理結果を報告する他の周辺I
Cにも同様に適用することができる。
【0104】
【発明の効果】以上のように、本発明によれば、コマン
ド種数を増大することなく、CPUののSCSIプロト
コル処理における、SCSIコントロ−ラからのコマン
ドの実行終了状態の報告に起因するオ−バ−ヘッドを低
減することのできるSCSIコントロ−ラICを提供す
ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例に係るSCSIコントロ−ラ
の構成を示すブロック図である。
【図2】本発明の一実施例に係るSCSIコントロ−ラ
の動作を示すタイミングチャ−トである。
【図3】本発明の一実施例に係る情報処理システムの構
成を示すブロック図である。
【図4】SCSIバスのシ−ケンスの一例とCPUの処
理との関係を示したタイミングチャ−トである。
【図5】従来技術に係るSCSIコントロ−ラの構成を
示すブロック図である。
【図6】従来技術に係るSCSIコントロ−ラの動作を
示すタイミングチャ−トである。
【符号の説明】
1 CPU側内部バス 2 SCSI側内部バス 3 CPU接続バス、 4 SCSIバス 5 デ−タFIFO 6 1段目コマンドFIFO 7 2段目コマンドFIFO 8 シ−ケンサ 9 1段目ステ−タスFIFO 10 2段目ステ−タスFIFO 11 割込みビット 12 割込みビット 13 割込み信号 14 コマンド存在表示ビット 15 中間割込み禁止ビット 16 ステ−タスレジスタ 17 割込みビット 18 NANDゲ−ト 19 ANDゲ−ト 20 正常終了割込みセット信号 21 異常終了割込みセット信号
───────────────────────────────────────────────────── フロントページの続き (72)発明者 渡辺 国夫 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 志田 光司 群馬県高崎市西横手町111番地 株式会社 日立製作所半導体設計開発センタ内

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】外部より与えられた複数のコマンドを実行
    し、順次SCSIバスを制御するSCSIコントロ−ラ
    ICであって、 与えられた2以上のコマンドを格納可能なコマンド格納
    手段と、前記コマンド格納手段にコマンドが格納された
    順に順次、コマンドを実行するコマンド処理手段と、前
    記コマンド処理手段のコマンドの実行終了時にコマンド
    の実行終了状態を外部に報告する実行結果報告手段と、
    前記コマンド処理手段が実行したコマンドが最後に前記
    コマンド格納手段に格納されたコマンドか否かを判定す
    る判定手段と、前記判定手段が前記コマンド処理手段が
    実行したコマンドが最後に前記コマンド格納手段に格納
    されたコマンドでないと判定した場合であって、かつ、
    前記コマンド処理手段が実行したコマンドの実行終了状
    態が正常終了であった場合に、当該コマンド処理手段が
    実行したコマンドの実行終了状態の外部への報告を抑止
    する報告禁止手段とを有することを特徴とするSCSI
    コントロ−ラIC。
  2. 【請求項2】請求項1記載のSCSIコントロ−ラIC
    であって、 前記コマンド格納手段は複数の前記コマンドを格納可能
    なFIFOメモリであって、前記判定手段は、前記コマ
    ンド処理手段によるコマンドの実行終了時に、前記FI
    FOメモリに未実行のコマンドが存在するか否かを判定
    することにより、前記コマンド処理手段が実行したコマ
    ンドが、最後に前記コマンド格納手段に格納されたコマ
    ンドか否かを判定することを特徴とするSCSIコント
    ロ−ラIC。
  3. 【請求項3】請求項1記載のSCSIコントロ−ラIC
    であって、 外部よりの設定に基づいて、前記報告禁止手段によるコ
    マンドの実行終了状態の外部への報告の抑止を行なうか
    否かを制御する報告抑止制御手段を有することを特徴と
    するSCSIコントロ−ラIC。
  4. 【請求項4】請求項3記載のSCSIコントロールIC
    であって、 前記報告禁止手段によるコマンドの実行終了状態の外部
    への報告の抑止を行なうか否かの指定を格納する、外部
    より設定可能な報告抑止レジスタを備え、かつ、前記報
    告抑止制御手段は、報告抑止レジスタの設定内容に基づ
    いて、前記報告禁止手段によるコマンドの実行終了状態
    の外部への報告の抑止をを制御することを特徴とするS
    CSIコントロ−ラIC。
  5. 【請求項5】請求項1記載のSCSIコントロ−ラIC
    であって、 前記実行結果報告手段は、コマンドの実行終了状態を格
    納するステ−タスレジスタを備え、かつ、前記ステ−タ
    スレジスタにコマンドの実行終了状態を格納して割込み
    信号を外部に出力することにより、外部にコマンドの実
    行終了状態を報告し、 前記報告禁止手段は、前記割込み信号の外部への出力を
    抑止することにより、前記実行結果報告手段のコマンド
    の実行終了状態の外部への報告を抑止することを特徴と
    するSCSIコントロ−ラIC。
  6. 【請求項6】CPUより与えられるコマンドを実行する
    周辺ICであって、 CPUより与えられた2以上のコマンドを格納可能なコ
    マンド格納手段と、前記コマンド格納手段にコマンドが
    格納された順に順次、コマンドを実行するコマンド処理
    手段と、前記コマンド処理手段のコマンドの実行終了時
    にコマンドの実行終了状態を外部に報告する実行結果報
    告手段と、前記コマンド処理手段が実行したコマンドが
    最後に前記コマンド格納手段に格納されたコマンドか否
    かを判定する判定手段と、前記判定手段が前記コマンド
    処理手段が実行したコマンドが最後に前記コマンド格納
    手段に格納されたコマンドでないと判定した場合であっ
    て、かつ、前記コマンド処理手段が実行したコマンドの
    実行終了状態が正常終了であった場合に、当該コマンド
    処理手段が実行したコマンドの実行終了状態の外部への
    報告を抑止する報告禁止手段とを有することを特徴とす
    る周辺IC。
  7. 【請求項7】請求項6記載の周辺ICであって、 外部よりの設定に基づいて、前記報告禁止手段によるコ
    マンドの実行終了状態の外部への報告の抑止を行なうか
    否かを制御する報告抑止制御手段を有することを特徴と
    する周辺IC。
  8. 【請求項8】SCSIバスを制御する請求項1記載のS
    CSIコントロ−ラICと、前記SCSIコントロ−ラ
    ICにコマンドを発行し、SCSIコントロ−ラICに
    よるSCSIバスの制御を利用して、SCSIバスを用
    いたデータ伝送を行なうCPUとを有することを特徴と
    する情報処理システム。
JP3190242A 1991-07-30 1991-07-30 Scsiコントロ−ラic Pending JPH0535661A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP3190242A JPH0535661A (ja) 1991-07-30 1991-07-30 Scsiコントロ−ラic
KR92012877A KR960001750B1 (en) 1991-07-30 1992-07-20 Scsi controller and the method for use on an information
US07/921,743 US5313588A (en) 1991-07-30 1992-07-30 SCSI controller and method for use on an information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3190242A JPH0535661A (ja) 1991-07-30 1991-07-30 Scsiコントロ−ラic

Publications (1)

Publication Number Publication Date
JPH0535661A true JPH0535661A (ja) 1993-02-12

Family

ID=16254876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3190242A Pending JPH0535661A (ja) 1991-07-30 1991-07-30 Scsiコントロ−ラic

Country Status (1)

Country Link
JP (1) JPH0535661A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6904481B1 (en) * 2001-04-12 2005-06-07 Lsi Logic Corporation Bus sequence operation with automatic linking from current I/O information to subsequent I/O information
US8583845B2 (en) 2008-08-07 2013-11-12 Nec Corporation Multi-processor system and controlling method thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6904481B1 (en) * 2001-04-12 2005-06-07 Lsi Logic Corporation Bus sequence operation with automatic linking from current I/O information to subsequent I/O information
US8583845B2 (en) 2008-08-07 2013-11-12 Nec Corporation Multi-processor system and controlling method thereof
JP5360061B2 (ja) * 2008-08-07 2013-12-04 日本電気株式会社 マルチプロセッサシステム及びその制御方法

Similar Documents

Publication Publication Date Title
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
US5313588A (en) SCSI controller and method for use on an information processing system
US6108743A (en) Technique for performing DMA including arbitration between a chained low priority DMA and high priority DMA occurring between two links in the chained low priority
JPS6122333B2 (ja)
JPH06161950A (ja) 複式バス・アーキテクチャを有する計算システムに使用するデータ伝送の管理方法。
US20080147906A1 (en) DMA Transferring System, DMA Controller, and DMA Transferring Method
US5546550A (en) Method for assuring equal access to all input/output devices coupled to a SCSI bus
US6968409B1 (en) Method and apparatus of establishing a dynamically adjustable loop of delayed read commands for completion in a queue buffer
JPS6027976A (ja) 先入先出メモリ装置
JPS63123130A (ja) パイプライン制御方式
JPH0553902A (ja) メモリ制御回路
JPH07325779A (ja) 入出力制御装置
JP2713204B2 (ja) 情報処理システム
JPH0962633A (ja) ネットワーク制御装置
JPH09218859A (ja) マルチプロセッサ制御システム
JP3467188B2 (ja) 多重化バスの順序保証システム
JP2820054B2 (ja) バスインタフェース装置
JPS63292356A (ja) Dma制御装置
JP2848171B2 (ja) Scsiコントローラ
JPH0283779A (ja) ベクトル処理装置の命令実行制御方式
JPH0512219A (ja) プロセス転送方式
JPH05197610A (ja) 主記憶プリポート制御方式
JPH03262063A (ja) Dma転送のバス制御回路
JPH01318140A (ja) マルチプロセッサシステム
JPH0376505B2 (ja)