JPH0535661A - SCSI controller IC - Google Patents

SCSI controller 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
Japanese (ja)
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/en
Priority to KR92012877A priority patent/KR960001750B1/en
Priority to US07/921,743 priority patent/US5313588A/en
Publication of JPH0535661A publication Critical patent/JPH0535661A/en
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に通知する割込み信号を抑止することが
できる。
(57) [Summary] [Purpose] If the processing of the first command of two commands issued consecutively ends normally, the normal end report to the CPU is omitted. [Structure] A command FIFO (6, 7) stores two commands issued continuously by the CPU. The sequencer (8) processes the first command, stores the normal end code in the status register (16), and outputs the normal end interrupt setting signal (20). At this time, since the command display bit (14) indicating that there is a command to be processed remains set, the normal end interrupt setting signal is suppressed by the AND gate (19) and the interrupt signal (13) is No output. On the other hand, at the end of the processing of the second command, since the command display bit (14) is reset, the interrupt signal (13) is output to the CPU. [Effect] When the processing of the first command of the two commands issued consecutively ends normally, the interrupt signal for notifying the CPU of the end of command execution can be suppressed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、情報処理システムにお
いてSCSI(Small Computer Sys
tem Interface)の制御に用いられるSC
SIコントラ−ラICに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to SCSI (Small Computer Sys) in an information processing system.
SC used to control the tem Interface)
The present invention relates to the SI controller IC.

【0002】[0002]

【従来の技術】従来、小規模な情報処理システムにおけ
るデバイス間のインタ−フェ−スには、SCSIが広く
用いられている。
2. Description of the Related Art Conventionally, SCSI has been widely used as an interface between devices in a small-scale information processing system.

【0003】SCSIは、制御線9本よりなる制御バス
と、データ線9本よりなるデータバスとよりなるSCS
Iバスを用いてデータの送受信を行うパラレルインター
フェ−スである。また、SCSIバスには、最大8台ま
でのデバイスが接続可能となっている。
The SCSI is an SCS composed of a control bus consisting of nine control lines and a data bus consisting of nine data lines.
It is a parallel interface for transmitting and receiving data using the I bus. Also, up to eight devices can be connected to the SCSI bus.

【0004】このような、SCSIバスに接続されたデ
バイス間のSCSIによるデータ伝送を制御するのがS
CSIコントロ−ラである。
It is S to control the SCSI data transmission between the devices connected to the SCSI bus.
It is a CSI controller.

【0005】このような、SCSIコントローラは、L
SI等のICとして供給される場合が多い。
Such a SCSI controller is
It is often supplied as an IC such as SI.

【0006】ここで、従来のSCSIコントロ−ラLS
Iの構成を図5に示す。
[0006] Here, the conventional SCSI controller LS
The configuration of I is shown in FIG.

【0007】図中、1はCPU側内部バス、2はSCS
I側内部バス、3はCPUに接続されるCPU接続バ
ス、4はSCSIバスである。
In the figure, 1 is an internal bus on the CPU side, 2 is an SCS
The I-side internal bus, 3 is a CPU connection bus connected to the CPU, and 4 is a SCSI bus.

【0008】また、5は、転送データを一旦格納し、C
PUバスとSCSIバスの間のデータ転送速度を調整す
るデータFIFO(First in First Out)メモリであ
る。
Reference numeral 5 temporarily stores transfer data, and C
A data FIFO (First in First Out) memory that adjusts the data transfer rate between the PU bus and the SCSI bus.

【0009】6、7は、CPUにより設定されたSCS
I制御用コマンドを2つまで格納するコマンドFIFO
である。また、そのうち、6が現在実行中のコマンドを
格納する1段目FIFO、7がコマンド実行待ち状態の
コマンドを格納する2段目FIFOである。
Reference numerals 6 and 7 denote SCSs set by the CPU.
Command FIFO for storing up to two I control commands
Is. Further, among them, 6 is a first-stage FIFO for storing a command currently being executed, and 7 is a second-stage FIFO for storing a command in a command execution waiting state.

【0010】8は、コマンドFIFO6に格納されたコ
マンドに従いSCSIバスを制御するシーケンサであ
る。
Reference numeral 8 is a sequencer for controlling the SCSI bus in accordance with the command stored in the command FIFO 6.

【0011】また、9、10は、シーケンサ8のコマン
ドの実行結果を2つまで格納するステータスFIFOで
ある。また、そのうち、9は1段目のFIFOであり、
10は2段目のFIFOである。
Further, 9 and 10 are status FIFOs for storing up to two command execution results of the sequencer 8. Also, 9 of them is the first-stage FIFO,
Reference numeral 10 is a second stage FIFO.

【0012】11、12は、それぞれステータスFIF
O9、10に含まれる割込みビットを示している。
Numerals 11 and 12 are status FIFOs, respectively.
The interrupt bits included in O9 and O10 are shown.

【0013】また、13はCPUに対する割込み信号で
ある。
Reference numeral 13 is an interrupt signal to the CPU.

【0014】以下、この従来のSCSIコントロ−ラL
SIの動作を説明する。
Hereinafter, this conventional SCSI controller L
The operation of SI will be described.

【0015】図6は、従来のSCSIコントロ−ラLS
Iの動作タイミングを示したものである。
FIG. 6 shows a conventional SCSI controller LS.
3 shows the operation timing of I.

【0016】図示するように、コマンド1は、CPUに
よりコマンドFIFO1段目6に書き込まれる。そし
て、CPUよりの、次のコマンド2はコマンドFIFO
2段目7に書き込まれる。
As shown in the figure, the command 1 is written in the first stage 6 of the command FIFO by the CPU. Then, the next command 2 from the CPU is the command FIFO
It is written in the second row 7.

【0017】シーケンサ8は、コマンドFIFO1段目
6に書き込まれたコマンド1を処理する。そして、処理
を終えると、ステータスFIFO1段目9にコマンド1
の終了ステータスを格納し、コマンドFIFO2段目7
に格納されていたコマンド2をコマンドFIFO1段目
6にロードする。そして、コマンドFIFO1段目6に
書き込まれたコマンド2の処理を開始する。
The sequencer 8 processes the command 1 written in the first stage 6 of the command FIFO. When the processing is completed, the command 1 is added to the first stage 9 of the status FIFO.
Stores the end status of command FIFO 2nd stage 7
The command 2 stored in the command FIFO is loaded into the first stage 6 of the command FIFO. Then, the processing of the command 2 written in the first stage 6 of the command FIFO is started.

【0018】一方、シーケンサ8によって、ステータス
FIFO1段目9にコマンド1の終了ステータス1が格
納されると、割込み信号13がCPUに出力される。
On the other hand, when the sequencer 8 stores the end status 1 of the command 1 in the first stage 9 of the status FIFO, the interrupt signal 13 is output to the CPU.

【0019】シーケンサ8は、コマンド2の処理を終え
ると、ステータスFIFO2段目10にコマンド2の終
了ステータスを格納する。
When the sequencer 8 finishes processing the command 2, it stores the end status of the command 2 in the second stage 10 of the status FIFO.

【0020】割込み信号13を受けたCPUは、発行し
たコマンド1の実行結果を知るために、ステータスFI
FO1段目9に格納されているコマンド1終了ステータ
スを読みだすと、ステータスFIFO2段目10に格納
されていたコマンド2終了ステータスがステータスFI
FO1段目9にロードされる。
Upon receiving the interrupt signal 13, the CPU receives the status FI in order to know the execution result of the issued command 1.
When the command 1 end status stored in the first FO 9 is read, the command 2 end status stored in the second status FIFO 10 is changed to the status FI.
It is loaded in the first stage 9 of the FO.

【0021】また、コマンド2終了ステータスがステー
タスFIFO1段目9にロードされると、再度CPUに
対する割込み信号13が出力される。
When the command 2 end status is loaded in the first stage 9 of the status FIFO, the interrupt signal 13 to the CPU is output again.

【0022】そして、2度目の割込み信号13を受けた
CPUは、発行したコマンド2の実行結果を知るため
に、ステータスFIFO1段目9に格納されているコマ
ンド2終了ステータスを読みだす。
The CPU receiving the second interrupt signal 13 reads the command 2 end status stored in the first stage 9 of the status FIFO in order to know the execution result of the issued command 2.

【0023】なお、コマンド1が異常終了した場合に
は、シーケンサ8はコマンド1の異常終了時にCPUに
対して異常終了割込みを発生し、コマンド2を自動的に
クリアする。
When command 1 ends abnormally, sequencer 8 issues an abnormal end interrupt to the CPU when command 1 ends abnormally, and command 2 is automatically cleared.

【0024】ここで、表1に、CPUがSCSIコント
ロ−ラLSIに発行するコマンドの例を示す。表中、中
欄がコマンド、右欄がコマンドの指定する動作である。
Table 1 shows an example of commands issued by the CPU to the SCSI controller LSI. In the table, the middle column is the command, and the right column is the operation specified by the command.

【0025】[0025]

【表1】 [Table 1]

【0026】次に、イニシエ−タがタ−ゲットにリード
コマンドを発行し、タ−ゲットからデータを受け取るシ
ーケンスを例にとって、SCSIコントロ−ラLSI
が、イニシエータのSCSIアダプタとして適用された
場合の動作を動作を説明する。
Next, taking a sequence in which the initiator issues a read command to the target and receives data from the target, the SCSI controller LSI is exemplified.
The operation will be described when it is applied as a SCSI adapter of the initiator.

【0027】図4に示すように、このシーケンスにおい
て、フェーズはバスフリーフェーズ、アービトレーショ
ンフェーズ、セレクションフェーズ、メッセージアウト
フェーズ、コマンドフェーズ、メッセージインフェー
ズ、バスフリーフェーズと遷移する。
As shown in FIG. 4, in this sequence, the phases transit to a bus free phase, an arbitration phase, a selection phase, a message out phase, a command phase, a message in phase, and a bus free phase.

【0028】図示するように、CPUは、まずデータF
IFO5にタ−ゲットに送信する、リ−ドコマンドデー
タ等の送信データを書き込み、表1に示すSelect With
ATNSequenceコマンド及びTransfer Informationコマン
ドを、SCSIコントロ−ラLSIに発行する。
As shown in the figure, the CPU firstly outputs the data F
Write transmission data such as read command data to be transmitted to the target in the IFO5, and Select With shown in Table 1
The ATN Sequence command and the Transfer Information command are issued to the SCSI controller LSI.

【0029】すると、SCSIコントロ−ラLSIのシ
ーケンサ8は、Select With ATN Sequenceコマンドを実
行し、SCSIバスを制御しアービトレーションフェー
ズ、セレクションフェーズ、メッセージアウトフェー
ズ、コマンドフェーズを実行する。
Then, the sequencer 8 of the SCSI controller LSI executes the Select With ATN Sequence command, controls the SCSI bus, and executes the arbitration phase, the selection phase, the message out phase, and the command phase.

【0030】コマンドフェーズが終了し、ACK/40
1信号をネゲートするとシーケンサ8は、ステータスF
IFO1段目9に正常終了を示すコードを出力し、割込
みビット11に`1`をセットし、割込み信号13をC
PUに対して出力する。つぎに、該従来例のシーケンサ
8は、Transfer Informationコマンド200を実行しメ
ッセージインフェーズにて1バイト受け取り、ACK/
信号をアサートした状態で、ステータスFIFO2段目
10に正常終了を示すコードを出力し、割込みビット1
2に`1`をセットする。
Command phase ends, ACK / 40
When negating 1 signal, the sequencer 8
A code indicating normal termination is output to the IFO first stage 9, "1" is set in the interrupt bit 11, and the interrupt signal 13 is set to C.
Output to PU. Next, the sequencer 8 of the conventional example executes the Transfer Information command 200, receives 1 byte in the message in phase, and receives ACK /
With the signal asserted, a code indicating normal termination is output to the second stage 10 of the status FIFO, and interrupt bit 1
Set "1" to 2.

【0031】CPUがSelect With ATN Sequenceコマン
ドの正常終了ステータスを読みだすと、ステータスFI
FO2段目10に格納されたTransfer Informationコマ
ンドの正常ステータスは、ステータスFIFO1段目9
にロードされる。また、割込みビット12のあたいは割
込みビット11にロードされ、割込み信号13をCPU
に対して再出力する。
When the CPU reads the normal end status of the Select With ATN Sequence command, the status FI
The normal status of the Transfer Information command stored in the FO second stage 10 is the status FIFO first stage 9
Loaded in. Also, the interrupt bit 12 is loaded into the interrupt bit 11 and the interrupt signal 13 is sent to the CPU.
Output again.

【0032】つぎに、CPUがTransfer Informationコ
マンドの正常ステータスを読みだすと、ステータスFI
FO1段目9及び割込みビット11の値はクリアされ割
込み信号13はネゲートされる。
Next, when the CPU reads the normal status of the Transfer Information command, the status FI
The values of the first FO 9 and the interrupt bit 11 are cleared and the interrupt signal 13 is negated.

【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に対して出力する。
Next, the CPU reads the input data stored in the data FIFO received in the message in phase, and ACK / 401 in the message in phase.
A Message Accepted command for clearing and a Transfer Information command 200 for receiving the next 1 byte. Sequencer 8 uses Message Accept
Execute ed command, negate ACK / 401, RE
When Q / 402 is asserted by the target, a code indicating normal termination is output to the first stage 9 of the status FIFO, "1" is set in the interrupt bit 11, and the interrupt signal 13 is output to the CPU.

【0034】次に、シ−ケンサ8は、Transfer Inform
ationコマンドを実行しメッセージインフェーズにて1
バイト受け取り、ACK/信号401をアサートした状
態で、ステータスFIFO2段目10に正常終了を示す
コードを出力し、割込みビット12に`1`をセットす
る。
Next, the sequencer 8 transfers Transfer Inform.
ation command is executed and 1 in the message in phase
In the state where the byte is received and the ACK / signal 401 is asserted, a code indicating a normal end is output to the second stage 10 of the status FIFO, and "1" is set in the interrupt bit 12.

【0035】CPUがMessage Acceptedコマンドの正常
終了ステータスを読みだすと、ステータスFIFO2段
目10に格納されたTransfer Informationコマンドの正
常ステータスは、ステータスFIFO1段目9にロード
される。また、割込みビット12の値は割込みビット1
1にロードされ、割込み信号13をCPUに対して再出
力する。
When the CPU reads the normal end status of the Message Accepted command, the normal status of the Transfer Information command stored in the second stage 10 of the status FIFO is loaded in the first stage 9 of the status FIFO. The value of interrupt bit 12 is interrupt bit 1
1 and re-output the interrupt signal 13 to the CPU.

【0036】次に、CPUがTransfer Informationコマ
ンドの正常ステータスを読みだすと、ステータスFIF
O1段目9及び割込みビット11の値はクリアされ割込
み信号13はネゲートされる。CPUはさらに、メッセ
ージインフェーズのACK/信号401をクリアするた
めにMessage Acceptedコマンドを発行する。
Next, when the CPU reads the normal status of the Transfer Information command, the status FIFO
The values of the O1 stage 9 and the interrupt bit 11 are cleared and the interrupt signal 13 is negated. The CPU further issues a Message Accepted command to clear the ACK / signal 401 of the message in phase.

【0037】シーケンサ8は、Message Acceptedコマン
ドを実行しACK/をネゲートし、BSY/がターゲッ
トによりネゲートされるとステータスFIFO1段目9
に正常終了を示すコードを出力し、割込みビット11に
`1`をセットし、割込み信号13をCPUに対して出
力する。
The sequencer 8 executes the Message Accepted command, negates ACK /, and when BSY / is negated by the target, the status FIFO first stage 9
A code indicating normal termination is output to, the interrupt bit 11 is set to "1", and the interrupt signal 13 is output to the CPU.

【0038】CPUがMessage Acceptedコマンドの正常
終了ステータスを読みだし正常終了を確認すると、ステ
ータスFIFO1段目9及び割込みビット11の値はク
リアされ割込み信号13はネゲートされる。
When the CPU reads the normal end status of the Message Accepted command and confirms the normal end, the values of the status FIFO first stage 9 and the interrupt bit 11 are cleared and the interrupt signal 13 is negated.

【0039】このように、SCSIコントロ−ラLSI
のSCSI制御シ−ケンスは、一般に、CPUによっ
て、汎用性あるコマンドの組み合わせによって指定され
る。SCSIの動作シ−ケンス毎にコマンド設けると、
コマンド種数が膨大なものになるため、汎用性ある少数
のコマンドの組み合わせによって動作シ−ケンスを指定
しているのである。
As described above, the SCSI controller LSI
The SCSI control sequence is generally specified by the CPU by a combination of versatile commands. If a command is provided for each SCSI operation sequence,
Since the number of command types becomes enormous, the operation sequence is specified by a combination of a small number of versatile commands.

【0040】なお、前掲した表中の各コマンドも、異な
る複数のSCSI制御シ−ケンスの実現のために他のコ
マンドと組み合わせて用いられる。
Each command in the above-mentioned table is also used in combination with another command to realize a plurality of different SCSI control sequences.

【0041】以上説明したように、従来のSCSIコン
トロ−ラを用いた場合、先に示した、リードコマンドを
発行し、タ−ゲットからデータを受け取るシーケンスを
実現するために、CPUは、受け取った5回の割込みに
対応して5回の割込み処理を実行しなければならない。
As described above, in the case of using the conventional SCSI controller, the CPU receives the read command in order to realize the sequence for receiving the data and receiving the data from the target. Five interrupt processes must be executed corresponding to the five interrupts.

【0042】[0042]

【発明が解決しようとする課題】このように、従来のS
CSIコントロ−ラによれば、コマンドの組み合わせに
よってSCSI制御シ−ケンスを指定するために、各コ
マンドに対応してCPUにコマンドの実行終了状態の報
告が、割込みによって行なわれる。そのため、CPUの
SCSIプロトコル処理において、割込み処理によるオ
−バ−ヘッドが大きいという問題があった。
As described above, the conventional S
According to the CSI controller, in order to specify the SCSI control sequence by the combination of commands, the execution completion status of the command is reported to the CPU by an interrupt in response to each command. Therefore, in the SCSI protocol processing of the CPU, there is a problem that the overhead due to the interrupt processing is large.

【0043】一方、SCSI制御シ−ケンスを1つのコ
マンドにより指定しようとすると、コマンド種が増大
し、これを処理するシ−ケンサが複雑化する。
On the other hand, if the SCSI control sequence is to be specified by one command, the number of command types increases and the sequencer for processing this becomes complicated.

【0044】そこで、本発明は、コマンド種数を増大す
ることなく、CPUののSCSIプロトコル処理におけ
る、SCSIコントロ−ラからの、コマンドの実行終了
状態の報告に起因するオーバーヘッドを低減することの
できるSCSIコントロ−ラICを提供することを目的
とする。
Therefore, according to the present invention, it is possible to reduce the overhead in the SCSI protocol processing of the CPU due to the report of the execution completion status of the command from the SCSI controller without increasing the number of command types. The purpose is to provide a SCSI controller IC.

【0045】[0045]

【課題を解決するための手段】前記目的達成のために、
本発明は、外部より与えられた複数のコマンドを実行
し、順次SCSIバスを制御するSCSIコントロ−ラ
ICであって、与えられた2以上のコマンドを格納可能
なコマンド格納手段と、前記コマンド格納手段にコマン
ドが格納された順に順次、コマンドを実行するコマンド
処理手段と、前記コマンド処理手段のコマンドの実行終
了時にコマンドの実行終了状態を外部に報告する実行結
果報告手段と、前記コマンド処理手段が実行したコマン
ドが最後に前記コマンド格納手段に格納されたコマンド
か否かを判定する判定手段と、前記判定手段が前記コマ
ンド処理手段が実行したコマンドが最後に前記コマンド
格納手段に格納されたコマンドでないと判定した場合で
あって、かつ、前記コマンド処理手段が実行したコマン
ドの実行終了状態が正常終了であった場合に、当該コマ
ンド処理手段が実行したコマンドの実行終了状態の外部
への報告を抑止する報告禁止手段とを有することを特徴
とするSCSIコントロ−ラICを提供する。
[Means for Solving the Problems] To achieve the above object,
The present invention is a SCSI controller IC for executing a plurality of commands given from the outside and sequentially controlling a SCSI bus, and a command storing means capable of storing two or more given commands, and the command storing means. Command processing means for sequentially executing the commands in the order in which the commands are stored in the means, execution result reporting means for externally reporting the execution completion state of the command when the command processing means has finished executing the command, and the command processing means Determination means for determining whether or not the executed command is the last command stored in the command storage means, and the command executed by the command processing means by the determination means is not the last command stored in the command storage means If it is determined that the execution end status of the command executed by the command processing means is Providing La IC - when was normally finished, SCSI controller, characterized in that it comprises a reporting inhibiting means for inhibiting reporting to outside of the execution completion status of the command as the command processing means executes.

【0046】[0046]

【作用】本発明に係るSCSIコントロ−ラICによれ
ば、報告禁止手段は、判定手段が前記コマンド処理手段
が実行したコマンドが最後に前記コマンド格納手段に格
納されたコマンドでないと判定した場合であって、か
つ、前記コマンド処理手段が実行したコマンドの実行終
了状態が正常終了であった場合には、当該コマンド処理
手段が実行したコマンドの実行終了状態の外部への報告
を抑止する。
According to the SCSI controller IC of the present invention, the report prohibiting means determines that the determining means determines that the command executed by the command processing means is not the last command stored in the command storing means. If there is, and the execution end state of the command executed by the command processing means is normal end, the execution end state of the command executed by the command processing means is suppressed from being reported to the outside.

【0047】すなわち、コマンドの実行が正常に終了し
た場合は、コマンド格納手段に格納した2以上のコマン
ドのうち、最後に与えられたコマンド以外のコマンドに
ついては、正常終了の報告を行なわずに、最後に与えら
れたコマンドについてのみ正常終了の報告を行なう。一
方、コマンドの実行が異常に終了した場合は、常に、異
常終了の報告を行なう。
That is, when the execution of the command is completed normally, the command other than the command given last among the two or more commands stored in the command storage means is not reported as normal completion, Only the command given last is reported as a normal end. On the other hand, when the execution of the command ends abnormally, the abnormal end is always reported.

【0048】[0048]

【実施例】以下、本発明に係るSCSIコント−ラLS
Iの一実地例を説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The SCSI controller LS according to the present invention is described below.
A practical example of I will be described.

【0049】まず、図3にSCSIを採用する情報処理
システムの構成を示す。
First, FIG. 3 shows the configuration of an information processing system adopting SCSI.

【0050】図中、310、320、330、340、
350、360、370、380が、それぞれコンピュ
−タやディスクドライブやプリンタ等のデバイスであ
り、390がSCSIバスである。また、各デバイス中
の311、321、331、341、351、361、
371、381が本実施例に係るSCSIコントロ−ラ
LSIである。
In the figure, 310, 320, 330, 340,
Reference numerals 350, 360, 370 and 380 are devices such as computers, disk drives and printers, and 390 is a SCSI bus. In addition, 311, 321, 331, 341, 351, 361 in each device,
Reference numerals 371 and 381 are SCSI controller LSIs according to this embodiment.

【0051】コンピュ−タであるデバイス310、32
0、330は、SCSI上イニシエ−タとして動作し、
その他のデバイス340、350、360、370、3
80はSCSI上タ−ゲットとして動作する。各SCS
Iコントロ−ラLSIはSCSIバスを制御して、各デ
バイスのSCSIバスを用いたデ−タ伝送を可能にす
る。
Computer devices 310 and 32
0 and 330 operate as an initiator on SCSI,
Other devices 340, 350, 360, 370, 3
80 operates as a target on SCSI. Each SCS
The I controller LSI controls the SCSI bus to enable data transmission using the SCSI bus of each device.

【0052】次に、本実施例に係るSCSIコントロ−
ラLSIの構成を図1に示す。
Next, the SCSI controller according to the present embodiment will be described.
The configuration of the LaLSI is shown in FIG.

【0053】図中、1はCPU側内部バス、2はSCS
I側内部バス、3はCPUバス、4はSCSIバス、5
はデ−タFIFO、6はコマンドFIFO1段目、7は
コマンドFIFO2段目、8はシ−ケンサ、13は割込
み信号である。
In the figure, 1 is an internal bus on the CPU side, 2 is an SCS
I side internal bus, 3 is CPU bus, 4 is SCSI bus, 5
Is a data FIFO, 6 is a first stage of the command FIFO, 7 is a second stage of the command FIFO, 8 is a sequencer, and 13 is an interrupt signal.

【0054】14はコマンドFIFO2段目にコマンド
が存在するかどうかを示すコマンド存在表示ビットであ
り、15は1つめのコマンドの終了が正常終了であっ
て、終了時に2つめのコマンドがコマンドFIFOの中
に存在する場合は、コマンドの終了による割込みの出力
を禁止する中間割込み禁止ビットである。
Reference numeral 14 is a command presence display bit indicating whether or not a command exists in the second stage of the command FIFO, and reference numeral 15 indicates that the end of the first command is a normal end, and at the end, the second command is the command FIFO. If present, it is an intermediate interrupt prohibition bit that prohibits the output of an interrupt due to the end of the command.

【0055】また、16はシ−ケンサ8により実行され
たコマンドの終了状態を保持するステ−タスレジスタで
ある。このステ−タスレジスタ16は、中間割込み禁止
ビット15がセットされている場合は単独のステ−タス
レジスタとして働くが、中間割込み禁止ビット15がセ
ットされていない場合は、前記従来技術に係るSCSI
コントロ−ラLSI(図5参照)のステ−タスFIFO
1段目9として、図示せざるステ−タスFIFO2段目
10と共にステ−タスFIFOの一部として働く。
Reference numeral 16 is a status register for holding the end state of the command executed by the sequencer 8. The status register 16 operates as a separate status register when the intermediate interrupt prohibition bit 15 is set, but when the intermediate interrupt prohibition bit 15 is not set, the SCSI according to the prior art described above is used.
Status FIFO of controller LSI (see FIG. 5)
As the first stage 9, it works as a part of the status FIFO together with the second stage 10 (not shown).

【0056】17は割込みを保持する割込みビット、1
8はNANDゲ−ト、19はANDゲ−ト、20は正常
終了割込みセット信号、21は異常終了割込みセット信
号である。
Reference numeral 17 is an interrupt bit for holding an interrupt, 1
Reference numeral 8 is a NAND gate, 19 is an AND gate, 20 is a normal end interrupt set signal, and 21 is an abnormal end interrupt set signal.

【0057】次に、本実施例に係るSCSIコントロ−
ラLSIの動作を説明する。
Next, the SCSI controller according to the present embodiment will be described.
The operation of the LaLSI will be described.

【0058】中間割込み禁止ビット15がセットされて
いない場合、本実施例に係るSCSIコントロ−ラLS
Iは、前述した従来のSCSIコントロ−ラLSIと同
じく動作する。なお、このとき、ステ−タスレジスタ1
6は、前述したように前記従来技術に係るSCSIコン
トロ−ラLSI(図5参照)のステ−タスFIFO1段
目9として、図示せざるステ−タスFIFO2段目10
と共にステ−タスFIFOの一部として働く。
If the intermediate interrupt prohibition bit 15 is not set, the SCSI controller LS according to the present embodiment.
I operates in the same manner as the above-mentioned conventional SCSI controller LSI. At this time, the status register 1
As described above, 6 is the status FIFO first stage 9 of the SCSI controller LSI (see FIG. 5) according to the prior art, and the status FIFO second stage 10 (not shown).
Also works as part of the Status FIFO.

【0059】中間割込み禁止ビット15がセットされて
いる場合は、図2に示す動作タイミングで動作する。
When the intermediate interrupt prohibition bit 15 is set, the operation is performed at the operation timing shown in FIG.

【0060】すなわち、図示するように、コマンド1
は、CPUによりコマンドFIFO1段目6に書き込ま
れる。そして、CPUよりの、次のコマンド2はコマン
ドFIFO2段目7に書き込まれる。コマンドがコマン
ドFIFO2段目7に書き込まれると、コマンド存在表
示ビット14がセットされる。
That is, as shown in the figure, command 1
Is written in the first stage 6 of the command FIFO by the CPU. Then, the next command 2 from the CPU is written in the second stage 7 of the command FIFO. When the command is written in the second stage 7 of the command FIFO, the command presence indicating bit 14 is set.

【0061】シ−ケンサ8は、コマンドFIFO1段目
6に書き込まれたコマンド1を処理する。そして、処理
を終えると、ステ−タスレジスタ16にコマンド1の終
了ステ−タスを格納し、正常終了割込みセット信号20
を発行する。このとき、ステ−タスレジスタ16にコマ
ンド1の終了ステ−タスが格納されても、コマンド存在
表示ビット14と中間割込み禁止ビット15により、正
常終了割込み信号20は抑止され、割込みビット17は
セットされない。
The sequencer 8 processes the command 1 written in the first stage 6 of the command FIFO. When the processing is completed, the end status of the command 1 is stored in the status register 16 and the normal end interrupt set signal 20
To issue. At this time, even if the end status of the command 1 is stored in the status register 16, the normal end interrupt signal 20 is suppressed and the interrupt bit 17 is not set by the command presence display bit 14 and the intermediate interrupt prohibition bit 15. .

【0062】次に、シ−ケンサ8は、コマンドFIFO
2段目7に格納されていたコマンド2をコマンドFIF
O1段目6にロ−ドする。そして、コマンドFIFO1
段目6に書き込まれたコマンド2の処理を開始する。コ
マンドFIFO2段目7が空になると、コマンド存在表
示ビット14はクリアされる。
Next, the sequencer 8 outputs the command FIFO.
The command 2 stored in the second row 7 is replaced by the command FIF
Load to the 1st stage of O6. And the command FIFO1
The processing of the command 2 written in the stage 6 is started. When the command FIFO second stage 7 becomes empty, the command presence display bit 14 is cleared.

【0063】シ−ケンサ8は、コマンド2の処理を終え
ると、ステ−タスレジスタ16にコマンド2の正常終了
ステ−タスを格納し、正常終了割込みセット信号20を
発行する。
After finishing the processing of the command 2, the sequencer 8 stores the normal end status of the command 2 in the status register 16 and issues the normal end interrupt set signal 20.

【0064】コマンド2の処理が終了し、コマンド2終
了ステ−タスがステ−タスレジスタ16にロ−ドされる
と、コマンド存在表示ビット14はクリアされているの
で、正常終了割込みセット信号20は抑止されない、し
たがい、割込みビット17はセットされ、CPUに対す
る割込み信号13が出力される。
When the command 2 processing is completed and the command 2 completion status is loaded to the status register 16, the command presence display bit 14 is cleared, so the normal completion interrupt set signal 20 is Not inhibited, therefore the interrupt bit 17 is set and the interrupt signal 13 to the CPU is output.

【0065】割込み信号13を受けたCPUは、発行し
たコマンド2の実行結果を知るために、ステ−タスレジ
スタ1段目9に格納されているコマンド2終了ステ−タ
スを読みだす。
The CPU receiving the interrupt signal 13 reads out the command 2 end status stored in the first stage 9 of the status register in order to know the execution result of the issued command 2.

【0066】なお、コマンドが異常終了した場合には、
シ−ケンサ8はコマンドの異常終了時にCPUに対して
異常終了割込みを発生し、コマンドを自動的にクリアす
る。異常終了時の割込みビットの設定21はコマンド存
在表示ビット14と中間割込み禁止ビット15によって
抑止されないので、コマンド1が異常終了した場合でも
割込み信号13は出力される。したがって、CPUは異
常処理を行なうことができる。
If the command ends abnormally,
When the command ends abnormally, the sequencer 8 issues an abnormal end interrupt to the CPU and automatically clears the command. Since the setting 21 of the interrupt bit at abnormal end is not suppressed by the command presence display bit 14 and the intermediate interrupt prohibition bit 15, the interrupt signal 13 is output even when the command 1 ends abnormally. Therefore, the CPU can perform abnormal processing.

【0067】以下、前記従来技術の項で、従来のSCS
Iコントロ−ラLSIの動作に用いた、イニシエ−タが
タ−ゲットにリ−ドコマンドを発行し、タ−ゲットから
デ−タを受け取るシ−ケンスを例にとって、イニシエ−
タのSCSIアダプタとして適用されたSCSIコント
ロ−ラLSIの動作を説明する。
The conventional SCS is described below in the section of the prior art.
The initiator used in the operation of the I controller LSI is the initiator which issues a read command to the target and receives data from the target.
The operation of the SCSI controller LSI applied as the SCSI adapter of the computer will be described.

【0068】前述したように、このシ−ケンスにおいて
フェ−ズはバスフリ−フェ−ズ、ア−ビトレ−ションフ
ェ−ズ、セレクションフェ−ズ、メッセ−ジアウトフェ
−ズ、コマンドフェ−ズ、メッセ−ジインフェ−ズ、バ
スフリ−フェ−ズと遷移し、SCSIバスの各信号は図
4に示すように遷移する。
As described above, in this sequence, the phases are bass free phase, arbitration phase, selection phase, message out phase, command phase, message phase. -, The bus-free phase, and the signals on the SCSI bus transit as shown in FIG.

【0069】また、本実施例においても、前記従来技術
で表1に示したコマンドを用いる。
Also in this embodiment, the commands shown in Table 1 in the above-mentioned prior art are used.

【0070】図4に示したシ−ケンスを実現するため
に、CPUは、図4中410で示す動作を行う。
In order to realize the sequence shown in FIG. 4, the CPU performs the operation indicated by 410 in FIG.

【0071】すなわち、まず、CPUは、SCSIコン
トロ−ラLSI(図1参照)の中間割込み禁止ビット1
5をセットし、デ−タFIFO5にメッセ−ジアウトフ
ェ−ズ、コマンドフェ−ズにて送信するリ−ドコマンド
デ−タ等を書き込み、SelectWith ATN Sequenceコマン
ド及びTransfer Informationコマンドを発行する。
That is, first, the CPU determines the intermediate interrupt inhibit bit 1 of the SCSI controller LSI (see FIG. 1).
5 is set, the read command data to be transmitted by the message out phase and the command phase are written in the data FIFO 5, and the Select With ATN Sequence command and Transfer Information command are issued.

【0072】一方、SCSIコントロ−ラLSIにおい
て、CPUが発行したSelect WithATN Sequenceコマン
ドはコマンドFIFO1段目6に格納され、Transfer I
nformationコマンドはコマンドFIFO2段目7に格納
される。また、コマンドFIFO2段目7にコマンドが
格納されると、コマンド存在表示ビット14には1がセ
ットされる。
On the other hand, in the SCSI controller LSI, the Select With ATN Sequence command issued by the CPU is stored in the first stage 6 of the command FIFO, and the Transfer I
The nformation command is stored in the second stage 7 of the command FIFO. When the command is stored in the second stage 7 of the command FIFO, 1 is set in the command presence display bit 14.

【0073】シ−ケンサ8は、コマンドFIFO1段目
6に格納されたSelect With ATN Sequenceコマンドを実
行し、SCSIバスを制御してア−ビトレ−ションフェ
−ズ、セレクションフェ−ズ、メッセ−ジアウトフェ−
ズ、コマンドフェ−ズを実行する。
The sequencer 8 executes the Select With ATN Sequence command stored in the first stage 6 of the command FIFO and controls the SCSI bus to arbitration phase, selection phase, message out phase.
Execute the command phase.

【0074】シ−ケンサ8は、コマンドフェ−ズが終了
し、ACK/信号401をネゲ−トして、Select With
ATN Sequenceコマンドの処理を終了する。そして、ステ
−タスレジスタ16に正常終了を示すコ−ドを出力し、
正常終了割込みセット信号20をパルス出力する。
The sequencer 8 negates the ACK / signal 401 upon completion of the command phase and selects With
Terminates processing of the ATN Sequence command. Then, a code indicating normal termination is output to the status register 16,
The normal termination interrupt set signal 20 is output as a pulse.

【0075】ここで、あらかじめCPUにより中間割込
み禁止ビット15がセットされているので、コマンド存
在表示ビット14、中間割込み禁止ビット15はともに
1である。したがって、NANDゲ−ト18の出力は`
0`と成り、ANDゲ−ト19の出力はアクティブとな
らない。
Here, since the intermediate interrupt prohibition bit 15 is set in advance by the CPU, both the command presence display bit 14 and the intermediate interrupt prohibition bit 15 are 1. Therefore, the output of the NAND gate 18 is
The output of AND gate 19 does not become active.

【0076】よって割込みビット17は`1`にセット
されず、割込み信号13は出力されない。
Therefore, the interrupt bit 17 is not set to "1" and the interrupt signal 13 is not output.

【0077】つぎに、コマンドFIFO2段目7に格納
されていたTransfer Informationコマンドが、コマンド
FIFO1段目6にロ−ドされる。
Next, the Transfer Information command stored in the second stage 7 of the command FIFO is loaded into the first stage 6 of the command FIFO.

【0078】コマンドFIFO2段目7にはコマンドが
なくなったので、コマンド存在表示ビット14はクリア
され`0`になる。したがって、NANDゲ−ト18の
出力は`1`となる。
Since there are no commands in the second stage 7 of the command FIFO, the command presence display bit 14 is cleared to "0". Therefore, the output of the NAND gate 18 becomes "1".

【0079】シ−ケンサ8は、FIFO1段目6にロ−
ドされたTransfer Informationコマンドを実行し、メッ
セ−ジインフェ−ズにてデ−タを1バイト受け取るとこ
のデ−タをデ−タFIFO5に格納し、ACK/信号4
01をアサ−トしたままTransfer Informationコマンド
の処理を終了する。そして、ステ−タスレジスタ16に
正常終了を示すコ−ドを出力し、正常終了割込みセット
信号をパルス出力する。
The sequencer 8 is loaded in the first stage 6 of the FIFO.
When the transferred Transfer Information command is executed and one byte of data is received by the message inphase, this data is stored in the data FIFO 5, and the ACK / signal 4
The processing of the Transfer Information command is terminated with 01 being asserted. Then, a code indicating a normal end is output to the status register 16 and a normal end interrupt set signal is pulsed.

【0080】このとき、前述したように、NANDゲ−
ト18の出力は1となっているので、ANDゲ−ト19
の出力は1となり、割込みビット17に`1`がセット
され、割込み信号13は出力される。
At this time, as described above, the NAND gate is
Since the output of the gate 18 is 1, the AND gate 19
Is 1, the interrupt bit 17 is set to "1", and the interrupt signal 13 is output.

【0081】この割込み信号13による割込みを受けた
CPUは、ステ−タスレジスタ16の値を読みだし、正
常終了であることを確認する。CPUが、ステ−タスレ
ジスタ16の値を読みだすと割込みビット17の値はク
リアされ、割込み信号13はネゲ−トされる。
The CPU which has received the interrupt by the interrupt signal 13 reads the value of the status register 16 and confirms the normal end. When the CPU reads the value of the status register 16, the value of the interrupt bit 17 is cleared and the interrupt signal 13 is negated.

【0082】CPUは、次に、デ−タFIFO5の値を
読みだして、メッセ−ジインフェ−ズのACK/をクリ
アするためにMessage Acceptedコマンドを発行する。ま
た、続けて、次のデ−タを1バイトを受け取るためにTr
ansfer Informationコマンドを発行する。
The CPU then reads the value of the data FIFO 5 and issues a Message Accepted command in order to clear the ACK / of the message inphase. Also, in order to receive 1 byte of the next data, Tr
Issue the ansfer Information command.

【0083】一方、SCSIコントロ−ラLSIにおい
て、CPUが発行したMessage Acceptedコマンドはコマ
ンドFIFO1段目6に格納され、Transfer Informati
onコマンドはコマンドFIFO2段目7に格納される。
また、コマンドFIFO2段目7にコマンドが格納され
ると、コマンド存在表示ビット14には1がセットされ
る。
On the other hand, in the SCSI controller LSI, the Message Accepted command issued by the CPU is stored in the first stage 6 of the command FIFO, and the Transfer Informati
The on command is stored in the second stage 7 of the command FIFO.
When the command is stored in the second stage 7 of the command FIFO, 1 is set in the command presence display bit 14.

【0084】シ−ケンサ8は、コマンドFIFO1段目
6に格納されたMessage Acceptedコマンドを実行しAC
K/401をネゲ−トし、REQ/402がタ−ゲット
によりアサ−トされるとステ−タスレジスタ16に正常
終了を示すコ−ドを出力し、正常終了割込みセット信号
20をパルス出力する。
The sequencer 8 executes the Message Accepted command stored in the first stage 6 of the command FIFO and executes AC.
When K / 401 is negated and REQ / 402 is asserted by the target, a code indicating normal termination is output to the status register 16 and a normal termination interrupt set signal 20 is output as a pulse. .

【0085】このとき、中間割込み禁止ビット15がセ
ットされており、コマンドFIFO2段目にTransfer I
nformationコマンドが格納されているため、割込み信号
13は出力されない。
At this time, the intermediate interrupt prohibition bit 15 is set, and Transfer I is set in the second stage of the command FIFO.
Since the nformation command is stored, the interrupt signal 13 is not output.

【0086】一方、コマンドFIFO2段目7に格納さ
れていたTransfer Informationコマンドは、コマンドF
IFO1段目6にロ−ドされる。
On the other hand, the Transfer Information command stored in the second stage 7 of the command FIFO is the command F
It is loaded to the first stage 6 of the IFO.

【0087】コマンドFIFO2段目7にはコマンドが
なくなったので、コマンド存在表示ビット14はクリア
され`0`になる。したがって、NANDゲ−ト18の
出力は`1`となる。
Since there are no commands in the second stage 7 of the command FIFO, the command presence display bit 14 is cleared to "0". Therefore, the output of the NAND gate 18 becomes "1".

【0088】以下、先ほどTransfer Informationコマン
ドの処理と同様に、シ−ケンサ8は、FIFO1段目6
にロ−ドされたTransfer Informationコマンドを実行
し、メッセ−ジインフェ−ズにてデ−タを1バイト受け
取るとこのデ−タをデ−タFIFO5に格納し、ACK
/信号401をアサ−トしたままTransfer Information
コマンドの処理を終了する。そして、ステ−タスレジス
タ16に正常終了を示すコ−ドを出力し、正常終了割込
みセット信号をパルス出力する。
In the same way as the processing of the Transfer Information command, the sequencer 8 uses the FIFO first stage 6
When the Transfer Information command loaded into the memory is executed and one byte of data is received by the message inphase, this data is stored in the data FIFO 5 and ACK is sent.
/ Transfer Information with signal 401 asserted
Terminates command processing. Then, a code indicating a normal end is output to the status register 16 and a normal end interrupt set signal is pulsed.

【0089】このとき、前述したように、NANDゲ−
ト18の出力は1となっているので、ANDゲ−ト19
の出力は1となり、割込みビット17に`1`がセット
され、割込み信号13は出力される。
At this time, as described above, the NAND gate is
Since the output of the gate 18 is 1, the AND gate 19
Is 1, the interrupt bit 17 is set to "1", and the interrupt signal 13 is output.

【0090】この割込み信号13による割込みを受けた
CPUは、ステ−タスレジスタ16の値を読みだし、正
常終了であることを確認する。CPUが、ステ−タスレ
ジスタ16の値を読みだすと割込みビット17の値はク
リアされ、割込み信号13はネゲ−トされる。
The CPU which has received the interrupt by the interrupt signal 13 reads the value of the status register 16 and confirms that it is normally completed. When the CPU reads the value of the status register 16, the value of the interrupt bit 17 is cleared and the interrupt signal 13 is negated.

【0091】そして、CPUはメッセ−ジインフェ−ズ
にて受信した、デ−タFIFO5の値を読みだす。
Then, the CPU reads out the value of the data FIFO 5 received by the message inphase.

【0092】また、CPUは、メッセ−ジインフェ−ズ
のACK/をクリアするためにMessage Acceptedコマン
ドを発行する。
Further, the CPU issues a Message Accepted command to clear ACK / of the message inphase.

【0093】一方、SCSIコントロ−ラLSIにおい
て、CPUが発行したMessage Acceptedコマンドはコマ
ンドFIFO1段目6に格納される。
On the other hand, in the SCSI controller LSI, the Message Accepted command issued by the CPU is stored in the first stage 6 of the command FIFO.

【0094】シ−ケンサ8は、コマンドFIFO1段目
6に格納されたMessage Acceptedコマンドを実行しAC
K/401をネゲ−トし、BSY/403がタ−ゲット
によりネゲ−トされると、正常終了を示すコ−ドを出力
し、正常終了割込みセット信号20をパルス出力する。
The sequencer 8 executes the Message Accepted command stored in the first stage 6 of the command FIFO and executes AC.
When K / 401 is negated and BSY / 403 is negated by the target, the code indicating normal termination is output and the normal termination interrupt set signal 20 is output in pulses.

【0095】このとき、コマンドFIFO2段目にコマ
ンドは格納されていないためNANDゲ−ト18の出力
は1となっているので、ANDゲ−ト19の出力は1と
なり、割込みビット17に`1`がセットされ、割込み
信号13は出力される。
At this time, since the command is not stored in the second stage of the command FIFO, the output of the NAND gate 18 is 1, so that the output of the AND gate 19 is 1 and the interrupt bit 17 has "1". ` is set, and the interrupt signal 13 is output.

【0096】この割込みを受けたCPUは、Message Ac
ceptedコマンドの正常終了ステ−タスを読みだし正常終
了を確認する。正常終了ステ−タスがよみだされると、
ステ−タスレジスタおよび割込みビット17の値はクリ
アされ割込み信号13はネゲ−トされる。
Upon receipt of this interrupt, the CPU receives Message Ac
Read the normal end status of the cepted command and confirm the normal end. When the normal termination status is read out,
The status register and interrupt bit 17 values are cleared and interrupt signal 13 is negated.

【0097】なお、コマンドが異常終了した場合には、
シ−ケンサ8はコマンド1の異常終了時に異常終了時の
割込みセット信号21を発生して、割込みビットをセッ
トし、CPUに対して割込みを発生し、コマンドFIF
O2段目7のコマンドを自動的にクリアする。異常終了
割込みセット信号は21はコマンド存在表示ビット14
と中間割込み禁止ビット15によって抑止されないの
で、コマンドが異常終了した場合でも割込み信号13は
出力される。したがい、CPUは、発行した全てのコマ
ンドについて、異常処理を行なうことができる。
If the command ends abnormally,
When the command 1 ends abnormally, the sequencer 8 generates an interrupt set signal 21 at the time of abnormal end, sets an interrupt bit, generates an interrupt to the CPU, and outputs the command FIF.
The command of the second stage 7 is automatically cleared. Abnormal end interrupt set signal 21 is command existence indication bit 14
Since it is not suppressed by the intermediate interrupt prohibition bit 15, the interrupt signal 13 is output even if the command ends abnormally. Therefore, the CPU can perform the abnormal processing for all the issued commands.

【0098】以上が、本実施例に係るSCSIコントロ
−ラLSIによる。イニシエ−タがタ−ゲットにリ−ド
コマンドを発行し、タ−ゲットからデ−タを受け取るシ
−ケンスの動作である。そして、以上説明したように、
本実施例によれば、CPUは、割込み処理を3回行うだ
けで本シ−ケンスを実現している。これは前述した従来
技術において必要であったCPUの割込み処理回数5回
よりも少ない。また、本実施例において、コマンドは前
述した従来技術と同じものを用いている。
The above is the SCSI controller LSI according to the present embodiment. This is a sequence operation in which the initiator issues a read command to the target and receives data from the target. And, as explained above,
According to this embodiment, the CPU realizes this sequence only by performing interrupt processing three times. This is less than the CPU interrupt processing frequency of 5 required in the above-described conventional technique. Further, in this embodiment, the same command as the above-mentioned conventional technique is used as the command.

【0099】以上のように、本実施例によれば、CPU
が連続して発行した2つのコマンドのうちの1つ目のコ
マンドの処理が正常に終了した場合は正常終了の報告を
省略し、1つ目のコマンドの処理の正常終了の情報を2
つ目のコマンドの処理の終了報告に含ませている。この
ため、CPUの割込み処理回数は減り、SCSIコント
ロ−ラからの割込みに起因するCPUのオ−バ−ヘッド
を低減することができる。一方、コマンドの処理が異常
終了した場合は、1つ目のコマンドの処理であっても、
これを報告することにより、CPUの異常処理を可能と
している。
As described above, according to this embodiment, the CPU
If the processing of the first command of the two commands issued in succession is completed normally, the report of normal completion is omitted and the information of the normal completion of the processing of the first command is 2
It is included in the completion report of the processing of the second command. For this reason, the number of interrupt processings of the CPU is reduced, and the overhead of the CPU due to the interrupt from the SCSI controller can be reduced. On the other hand, if the command processing ends abnormally, even if it is the first command processing,
By reporting this, the CPU can be processed abnormally.

【0100】これは、前述したシ−ケンスにおけるよう
に、CPUが連続して複数のコマンドを発行した場合、
1つ目のコマンドの処理が正常終了に起因して、CPU
が行なうべき処理が生じる場合が少ないと想定されるこ
とを利用したものである。
This is because when the CPU continuously issues a plurality of commands as in the above-mentioned sequence,
Due to the normal termination of the processing of the first command, the CPU
It is assumed that there are few cases where processing that should be performed occurs.

【0101】一方、本実施例によれば、1つ目のコマン
ドについての正常終了の報告の省略を指定する中間割込
み禁止ビットを外部より設定可能としているので、1つ
目のコマンドの処理の正常終了に起因してCPUが行な
うべき処理がある場合には、1つ目のコマンドの処理の
正常終了報告を省略せずに行なうようにすることができ
る。
On the other hand, according to the present embodiment, since the intermediate interrupt prohibition bit designating the omission of the report of the normal end of the first command can be set from the outside, the normal processing of the first command can be performed. If there is a process to be performed by the CPU due to the end, it is possible to perform the normal end report of the process of the first command without omitting it.

【0102】なお、本実施例においては、SCSIコン
トロ−ラLSIが、一度に連続して受付け可能なコマン
ド数を2つとしたが、一度に連続して受付け可能なコマ
ンド数を3以上とするようにしてもよい。この場合に
は、CPUより発行されたコマンドを格納するコマンド
FIFOの段数を、受付け可能としたコマンド数に応じ
て増やし、最終に受付けたコマンド以外のコマンドは、
前記実施例の説明中における初めに受付けたコマンドの
処理と同様に処理し、最終に受付けたコマンドは、前記
実施例の説明中における2番目に受付けたコマンドの処
理と同様に処理するようにすればよい。
In the present embodiment, the SCSI controller LSI has set the number of commands that can be continuously received at two to two, but the number of commands that can be continuously received at once is three or more. You may In this case, the number of stages of the command FIFO that stores the command issued by the CPU is increased according to the number of commands that can be accepted, and the commands other than the last command accepted are
The command received at the beginning in the description of the embodiment is processed in the same manner, and the command received at the end is processed in the same way as the processing of the command received second in the description of the embodiment. Good.

【0103】また、本実施例はSCSIコントロ−ラL
SIについて説明したが、CPUの発行したコマンドに
基づいて処理を実行し、処理結果を報告する他の周辺I
Cにも同様に適用することができる。
Further, this embodiment is based on the SCSI controller L.
Although the SI has been described, other peripheral I that executes the process based on the command issued by the CPU and reports the process result
The same applies to C as well.

【0104】[0104]

【発明の効果】以上のように、本発明によれば、コマン
ド種数を増大することなく、CPUののSCSIプロト
コル処理における、SCSIコントロ−ラからのコマン
ドの実行終了状態の報告に起因するオ−バ−ヘッドを低
減することのできるSCSIコントロ−ラICを提供す
ることができる。
As described above, according to the present invention, it is possible to increase the number of command types without increasing the number of command types, which is caused by the report of the command execution end state from the SCSI controller in the CPU's SCSI protocol processing. It is possible to provide a SCSI controller IC capable of reducing the bar head.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例に係るSCSIコントロ−ラ
の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a SCSI controller according to an embodiment of the present invention.

【図2】本発明の一実施例に係るSCSIコントロ−ラ
の動作を示すタイミングチャ−トである。
FIG. 2 is a timing chart showing the operation of the SCSI controller according to the embodiment of the present invention.

【図3】本発明の一実施例に係る情報処理システムの構
成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of an information processing system according to an embodiment of the present invention.

【図4】SCSIバスのシ−ケンスの一例とCPUの処
理との関係を示したタイミングチャ−トである。
FIG. 4 is a timing chart showing the relationship between an example of the sequence of the SCSI bus and the processing of the CPU.

【図5】従来技術に係るSCSIコントロ−ラの構成を
示すブロック図である。
FIG. 5 is a block diagram showing a configuration of a SCSI controller according to a conventional technique.

【図6】従来技術に係るSCSIコントロ−ラの動作を
示すタイミングチャ−トである。
FIG. 6 is a timing chart showing the operation of the SCSI controller according to the prior art.

【符号の説明】[Explanation of symbols]

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 異常終了割込みセット信号 1 CPU side internal bus 2 SCSI side internal bus 3 CPU connection bus, 4 SCSI bus 5 data FIFO 6 First-stage command FIFO 7 Second stage command FIFO 8 sequencer 9 First-stage status FIFO 10 Second stage status FIFO 11 interrupt bits 12 interrupt bits 13 Interrupt signal 14 Command existence display bit 15 Intermediate interrupt disable bit 16 Status Register 17 interrupt bits 18 NAND gate 19 AND Gate 20 Normal end interrupt set signal 21 Abnormal end interrupt set signal

───────────────────────────────────────────────────── フロントページの続き (72)発明者 渡辺 国夫 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 志田 光司 群馬県高崎市西横手町111番地 株式会社 日立製作所半導体設計開発センタ内   ─────────────────────────────────────────────────── ─── Continued front page    (72) Inventor Kunio Watanabe             292 Yoshida-cho, Totsuka-ku, Yokohama-shi, Kanagawa             Ceremony Hitachi Microelectronics             Device Development Laboratory (72) Inventor Koji Shida             Gunma Prefecture Takasaki City Nishi-Yokote-cho 111 Address Co., Ltd.             Within Hitachi Semiconductor Design Development Center

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】外部より与えられた複数のコマンドを実行
し、順次SCSIバスを制御するSCSIコントロ−ラ
ICであって、 与えられた2以上のコマンドを格納可能なコマンド格納
手段と、前記コマンド格納手段にコマンドが格納された
順に順次、コマンドを実行するコマンド処理手段と、前
記コマンド処理手段のコマンドの実行終了時にコマンド
の実行終了状態を外部に報告する実行結果報告手段と、
前記コマンド処理手段が実行したコマンドが最後に前記
コマンド格納手段に格納されたコマンドか否かを判定す
る判定手段と、前記判定手段が前記コマンド処理手段が
実行したコマンドが最後に前記コマンド格納手段に格納
されたコマンドでないと判定した場合であって、かつ、
前記コマンド処理手段が実行したコマンドの実行終了状
態が正常終了であった場合に、当該コマンド処理手段が
実行したコマンドの実行終了状態の外部への報告を抑止
する報告禁止手段とを有することを特徴とするSCSI
コントロ−ラIC。
1. A SCSI controller IC for executing a plurality of commands given from the outside and sequentially controlling a SCSI bus, the command storage means being capable of storing two or more given commands, and the command. Command processing means for sequentially executing the commands in the order in which the commands are stored in the storage means;
Determining means for determining whether or not the command executed by the command processing means is the command last stored in the command storing means, and the command executed by the command processing means by the judging means is finally stored in the command storing means. If it is determined that the command is not a stored command, and
And a report prohibiting unit that suppresses an external report of the execution end state of the command executed by the command processing unit when the execution end state of the command executed by the command processing unit is normal end. SCSI
Controller IC.
【請求項2】請求項1記載のSCSIコントロ−ラIC
であって、 前記コマンド格納手段は複数の前記コマンドを格納可能
なFIFOメモリであって、前記判定手段は、前記コマ
ンド処理手段によるコマンドの実行終了時に、前記FI
FOメモリに未実行のコマンドが存在するか否かを判定
することにより、前記コマンド処理手段が実行したコマ
ンドが、最後に前記コマンド格納手段に格納されたコマ
ンドか否かを判定することを特徴とするSCSIコント
ロ−ラIC。
2. The SCSI controller IC according to claim 1.
The command storage means is a FIFO memory capable of storing a plurality of commands, and the determination means is configured to execute the FI at the end of command execution by the command processing means.
By determining whether or not there is an unexecuted command in the FO memory, it is determined whether or not the command executed by the command processing means is the last command stored in the command storage means. A SCSI controller IC that does.
【請求項3】請求項1記載のSCSIコントロ−ラIC
であって、 外部よりの設定に基づいて、前記報告禁止手段によるコ
マンドの実行終了状態の外部への報告の抑止を行なうか
否かを制御する報告抑止制御手段を有することを特徴と
するSCSIコントロ−ラIC。
3. The SCSI controller IC according to claim 1.
A SCSI control means for controlling whether or not to suppress the report of the execution completion state of the command by the report prohibiting means to the outside based on an external setting. -La IC.
【請求項4】請求項3記載のSCSIコントロールIC
であって、 前記報告禁止手段によるコマンドの実行終了状態の外部
への報告の抑止を行なうか否かの指定を格納する、外部
より設定可能な報告抑止レジスタを備え、かつ、前記報
告抑止制御手段は、報告抑止レジスタの設定内容に基づ
いて、前記報告禁止手段によるコマンドの実行終了状態
の外部への報告の抑止をを制御することを特徴とするS
CSIコントロ−ラIC。
4. The SCSI control IC according to claim 3.
An externally settable report suppression register for storing designation of whether or not to suppress the report of the execution end state of the command by the report prohibiting means is provided, and the report suppression control means Controls the suppression of the external report of the command execution end state by the report prohibiting means based on the setting contents of the report suppression register.
CSI controller IC.
【請求項5】請求項1記載のSCSIコントロ−ラIC
であって、 前記実行結果報告手段は、コマンドの実行終了状態を格
納するステ−タスレジスタを備え、かつ、前記ステ−タ
スレジスタにコマンドの実行終了状態を格納して割込み
信号を外部に出力することにより、外部にコマンドの実
行終了状態を報告し、 前記報告禁止手段は、前記割込み信号の外部への出力を
抑止することにより、前記実行結果報告手段のコマンド
の実行終了状態の外部への報告を抑止することを特徴と
するSCSIコントロ−ラIC。
5. The SCSI controller IC according to claim 1.
The execution result reporting means includes a status register for storing the execution end state of the command, and stores the execution end state of the command in the status register to output an interrupt signal to the outside. Thereby, the execution end state of the command is reported to the outside, and the report prohibiting means reports the execution end state of the command of the execution result reporting means to the outside by suppressing the output of the interrupt signal to the outside. A SCSI controller IC characterized by suppressing the above.
【請求項6】CPUより与えられるコマンドを実行する
周辺ICであって、 CPUより与えられた2以上のコマンドを格納可能なコ
マンド格納手段と、前記コマンド格納手段にコマンドが
格納された順に順次、コマンドを実行するコマンド処理
手段と、前記コマンド処理手段のコマンドの実行終了時
にコマンドの実行終了状態を外部に報告する実行結果報
告手段と、前記コマンド処理手段が実行したコマンドが
最後に前記コマンド格納手段に格納されたコマンドか否
かを判定する判定手段と、前記判定手段が前記コマンド
処理手段が実行したコマンドが最後に前記コマンド格納
手段に格納されたコマンドでないと判定した場合であっ
て、かつ、前記コマンド処理手段が実行したコマンドの
実行終了状態が正常終了であった場合に、当該コマンド
処理手段が実行したコマンドの実行終了状態の外部への
報告を抑止する報告禁止手段とを有することを特徴とす
る周辺IC。
6. A peripheral IC for executing a command given by a CPU, the command storing means capable of storing two or more commands given by the CPU, and the command storing means sequentially storing the commands in order. Command processing means for executing a command, execution result reporting means for externally reporting the execution completion state of the command when the command processing means has finished executing the command, and the command executed by the command processing means is the command storage means at the end. Determining means for determining whether or not the command is stored in the command storing means, and the determining means determines that the command executed by the command processing means is not the last command stored in the command storing means, and If the execution end status of the command executed by the command processing means is normal end, the command A peripheral IC, comprising: a report prohibiting unit that suppresses the external report of the execution end state of the command executed by the command processing unit.
【請求項7】請求項6記載の周辺ICであって、 外部よりの設定に基づいて、前記報告禁止手段によるコ
マンドの実行終了状態の外部への報告の抑止を行なうか
否かを制御する報告抑止制御手段を有することを特徴と
する周辺IC。
7. The peripheral IC according to claim 6, wherein a report for controlling whether or not to suppress the report of the execution end state of the command by the report prohibiting means to the outside based on the setting from the outside. A peripheral IC, characterized by having a deterrent control means.
【請求項8】SCSIバスを制御する請求項1記載のS
CSIコントロ−ラICと、前記SCSIコントロ−ラ
ICにコマンドを発行し、SCSIコントロ−ラICに
よるSCSIバスの制御を利用して、SCSIバスを用
いたデータ伝送を行なうCPUとを有することを特徴と
する情報処理システム。
8. The S according to claim 1, which controls a SCSI bus.
And a CPU for issuing a command to the SCSI controller IC and utilizing the control of the SCSI bus by the SCSI controller IC to perform data transmission using the SCSI bus. Information processing system.
JP3190242A 1991-07-30 1991-07-30 SCSI controller IC Pending JPH0535661A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP3190242A JPH0535661A (en) 1991-07-30 1991-07-30 SCSI controller 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 (en) 1991-07-30 1991-07-30 SCSI controller IC

Publications (1)

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

Family

ID=16254876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3190242A Pending JPH0535661A (en) 1991-07-30 1991-07-30 SCSI controller IC

Country Status (1)

Country Link
JP (1) JPH0535661A (en)

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 (en) * 2008-08-07 2013-12-04 日本電気株式会社 Multiprocessor system and control method thereof

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 (en)
JPH06161950A (en) Control method of data transmission used for computation system provided with multiple bus architecture
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 (en) First-in first-out memory device
JPS63123130A (en) Pipeline control system
JPH0553902A (en) Memory control circuit
JPH07325779A (en) Input/output controller
JP2713204B2 (en) Information processing system
JPH0962633A (en) Network control unit
JPH09218859A (en) Multiprocessor control system
JP3467188B2 (en) Multiplexing bus order guarantee system.
JP2820054B2 (en) Bus interface device
JPS63292356A (en) Dma controller
JP2848171B2 (en) SCSI controller
JPH0283779A (en) Instruction execution control method for vector processing equipment
JPH0512219A (en) Process transferring system
JPH05197610A (en) Main memory preport control system
JPH03262063A (en) Bus control circuit for dma transfer
JPH01318140A (en) Multiprocessor system
JPH0376505B2 (en)