JPS5939766B2 - multiplexer channel equipment - Google Patents

multiplexer channel equipment

Info

Publication number
JPS5939766B2
JPS5939766B2 JP9721180A JP9721180A JPS5939766B2 JP S5939766 B2 JPS5939766 B2 JP S5939766B2 JP 9721180 A JP9721180 A JP 9721180A JP 9721180 A JP9721180 A JP 9721180A JP S5939766 B2 JPS5939766 B2 JP S5939766B2
Authority
JP
Japan
Prior art keywords
input
channel
data
register
output
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
Application number
JP9721180A
Other languages
Japanese (ja)
Other versions
JPS5723135A (en
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura Electric Co 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP9721180A priority Critical patent/JPS5939766B2/en
Publication of JPS5723135A publication Critical patent/JPS5723135A/en
Publication of JPS5939766B2 publication Critical patent/JPS5939766B2/en
Expired 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Description

【発明の詳細な説明】 本発明は、情報処理システムにおける入出力装置一メモ
リ間のデータ転送制御を行なうチャネル装置に係わり、
特にデータ転送を行なう入出力装置を入出力装置からの
割込みもしくはチャネル起動命令毎に切替えるマルチプ
レクサチャネル装置に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a channel device that controls data transfer between an input/output device and a memory in an information processing system.
In particular, the present invention relates to a multiplexer channel device that switches an input/output device that performs data transfer every time an interrupt from the input/output device or a channel activation command occurs.

従来、情報処理システムに用いられるマルチプレクサチ
ャネルは第1図に示すCPU(中央処理装置)11内の
マイクロプログラム(μP)の中に組込まれ、実現され
ていた。
Conventionally, multiplexer channels used in information processing systems have been implemented by being incorporated into a microprogram (μP) within a CPU (central processing unit) 11 shown in FIG.

第2図は上記マイクロプログラム(μP)の処理シーケ
ンスを示したものである。図中のフェイズ0(PH0)
で命令フェッチ、解読を行なう。命令解読の結果、アド
レス計算、オペランドフエツチの必要な命令タイプの場
合はフェイズ1(PHI)を通つて、フェイズ2(PH
2)の命令実行に入る。アドレス計算、オペランドフエ
ツチを必要としない命令タイプの場合はPH0からPH
2に入る。フェイズ2を抜ける時に、割込み要因があれ
ばフェイズ3(PH3)に入り、各種割込みが判別され
、処理される。割込み要因がなければPH0に移る。第
3図はフェイズ3(PH3)における入出力バス12か
らの割込み処理(マルチプレクサチャネルとしての動作
)を示したものである。割込みをかけている入出力装置
13の機器番号を調べた後(ST−A)、メモリ14の
チャネルコントロールブロックをフェッチし解読を行な
う(ST−B)。チャネルコントロールブロック(以下
CCBと呼称する)は入出力動作の内容を記したもので
あり、そのフォーマットを第4図に示す。図中41はチ
ャネルコントロールワード(CCW)であり、動作の種
別(リード、ライト等)、チェーン等の指定をするワー
ドである。42はデータ転送を行なうべきメモリの転送
開始番地(スタートアドレス)である。
FIG. 2 shows the processing sequence of the microprogram (μP). Phase 0 (PH0) in the diagram
fetches and decodes instructions. As a result of instruction decoding, if the instruction type requires address calculation or operand fetch, it passes through Phase 1 (PHI) and then passes through Phase 2 (PHI).
2) starts executing the command. For instruction types that do not require address calculation or operand fetch, PH0 to PH
Enter 2. When exiting phase 2, if there is an interrupt factor, the process enters phase 3 (PH3), where various interrupts are determined and processed. If there is no interrupt factor, the process moves to PH0. FIG. 3 shows interrupt processing from the input/output bus 12 (operation as a multiplexer channel) in phase 3 (PH3). After checking the device number of the input/output device 13 that is causing the interrupt (ST-A), the channel control block in the memory 14 is fetched and decoded (ST-B). The channel control block (hereinafter referred to as CCB) describes the contents of input/output operations, and its format is shown in FIG. In the figure, numeral 41 is a channel control word (CCW), which is a word that specifies the type of operation (read, write, etc.), chain, etc. 42 is a transfer start address (start address) of the memory to which data is to be transferred.

43の転送バイト数はデータ転送の領域を指定し、コマ
ンドは入出力装置13に送出するコマンドデータを指定
し、ターミナルキャラクタはデータ転送に際してこの欄
で指定したデータと一致した場合、データ転送を終了さ
せる指定である。
The number of transfer bytes in 43 specifies the data transfer area, the command specifies the command data to be sent to the input/output device 13, and the terminal character terminates the data transfer if it matches the data specified in this column. This is a specification to allow

44はCCBの動作終了時にチヤネル(CH)と入出力
装置のアドレス(DEV)とチャネルおよび機器ステー
タスとが格納される欄であり、45のチェーンアドレス
は、CCBの動作終了後、新CCBへチェーンする指定
(CCW4lで指定)がある場合、新CCBの格納先頭
番地をこの欄で指定するためのものである。
44 is a column in which the channel (CH), input/output device address (DEV), channel and device status are stored when the CCB operation is completed, and the chain address 45 is a column in which the channel (CH), input/output device address (DEV), and channel and equipment status are stored when the CCB operation is completed. If there is a designation (specified in CCW4l), this field is used to designate the storage start address of the new CCB.

さて、第3図においてCCBの解読(ST−B)が終る
と、データ転送を行ない(ST−C)、CCB動作が終
了したか否かの判定(ST−D)、即ちCCBで指定し
たデータ領域の転送が終つたかあるいはターミナルキャ
ラクタ、入力装置13の異常を検出したかの判定を行な
い、終了していれば動作終了をプログラムに知らせるタ
ーミネーシヨン処理(ST−E)に移る。
Now, in Fig. 3, when the CCB decoding (ST-B) is completed, data transfer is performed (ST-C), and it is determined whether or not the CCB operation is completed (ST-D), that is, the data specified by the CCB is It is determined whether the transfer of the area has been completed or whether an abnormality in the terminal character or input device 13 has been detected, and if it has been completed, the process moves to termination processing (ST-E) which notifies the program of the end of the operation.

上記CCB動作が終了していなければフエイズ0(PH
O)に行き次の命令の処理を行なう。第5図は、CPU
llのフエイズ遷移と入力装置の動作のタイミングチャ
ートである。
If the above CCB operation is not completed, phase 0 (PH
O) and processes the next instruction. Figure 5 shows the CPU
11 is a timing chart of the phase transition of ll and the operation of the input device.

出力動作を行なつているI/O−1の動作が終了した時
点で割込みATN−0がCPUllに入る。CPUll
は命令13の実行後、PH3に入り第3図の割込み処理
を行なう。11−0は第3図のデータ転送ST−Cを示
す。
When the operation of I/O-1 that is performing the output operation is completed, interrupt ATN-0 is input to CPUll. CPUll
After executing instruction 13, enters PH3 and performs the interrupt processing shown in FIG. 11-0 indicates data transfer ST-C in FIG.

CPUllとデータ転送が行なわれると、I/O−1の
出力動作が開始され、終了した時点で割込みANT−2
が入る。以下同様の動作が、CCBで指定した転送バイ
ト数分行なわれる。入力動作のI/0−2は、オペレー
タがキーインしてデータ転送の準備ができると割込みA
TN−1をかける。CPUllは14の命令実行後、割
込み処理を行ない、データ転送11−1を行なう。この
様にして入出力バス12に接続されている入出力装置1
3を同時に動作させるマルチプレクサチヤネルが実現さ
れる。しかしながらこの方式の場合、第2図および第5
図から明らかなように、CPUllが命令実行中は割込
み処理ができない。
When the data transfer with CPUI is performed, the output operation of I/O-1 starts, and when it is finished, interrupt ANT-2 is generated.
enters. Thereafter, similar operations are performed for the number of transfer bytes specified by the CCB. Input operation I/0-2 generates an interrupt A when the operator presses the key and is ready to transfer data.
Multiply TN-1. After executing instruction 14, CPUll performs interrupt processing and performs data transfer 11-1. Input/output device 1 connected to input/output bus 12 in this way
A multiplexer channel is implemented that operates three at the same time. However, in the case of this method, Figures 2 and 5
As is clear from the figure, interrupt processing cannot be performed while the CPU 11 is executing an instruction.

また割込み処理中は命令実行ができない。即ち、割込み
処理のために、命令の実行が待たされることがある。ま
た、入出力装置13の割込みは命令の実行が終るまで受
付けられないと言う欠点があつた。システムとしてのス
ループツトは命令の実行と入出力装置13の動作が多重
化されていることにより向上するが、最近、高機能命令
により命令実行時間が長くなつており、また入出力装置
の速度が速くなつているために、割込み処理のために命
令の実行が待たされたり、割込み処理が高機能命令のた
め待たされることが無視できなくなつている。本発明は
上記実情に鑑みなされたもので、CPUの命令実行によ
る割込み処理の遅延、更には割込み処理による命令実行
の遅延が存在しないマルチプレクサチャネルを提供する
ことを目的とする。
Also, instructions cannot be executed during interrupt processing. That is, execution of an instruction may be delayed due to interrupt processing. Another drawback is that interrupts from the input/output device 13 cannot be accepted until the execution of an instruction is completed. The throughput of the system is improved by multiplexing the execution of instructions and the operation of the input/output device 13, but recently, the instruction execution time has become longer due to high-performance instructions, and the speed of the input/output device has become faster. As a result, it has become impossible to ignore the fact that the execution of instructions is forced to wait for interrupt processing, or that interrupt processing is made to wait because it is a high-performance instruction. The present invention has been made in view of the above-mentioned circumstances, and an object of the present invention is to provide a multiplexer channel in which there is no delay in interrupt processing due to instruction execution by the CPU, and further, there is no delay in instruction execution due to interrupt processing.

以下図面を参照して本発明の一実施例を説明する。第6
図はシステム構成を示すプロツク図であり、図中、11
1はCPU、 112は入出力バス(1/O−BUS)
、113,113・・・は入出力装置である。114は
主メモリ、115はメモリ制御装置である。
An embodiment of the present invention will be described below with reference to the drawings. 6th
The figure is a block diagram showing the system configuration.
1 is the CPU, 112 is the input/output bus (1/O-BUS)
, 113, 113... are input/output devices. 114 is a main memory, and 115 is a memory control device.

116は本発明で対象とするマルチプレクサチヤネル、
117は高速DMA(DirectMemOryAcc
ess)バスである。
116 is a multiplexer channel targeted by the present invention;
117 is high-speed DMA (DirectMemOryAcc
ess) bus.

第7図は上記マルチプレクサチヤネル116の構成を示
すもので図中、201は高速DMAバス117のデータ
が通る高速バスドライバ・レシーバ回路、202は高速
バス制御回路である。203はCPUlllにCCB動
作終了を知らせるターミネーシヨンレジスタである。
FIG. 7 shows the configuration of the multiplexer channel 116. In the figure, 201 is a high-speed bus driver/receiver circuit through which data on the high-speed DMA bus 117 passes, and 202 is a high-speed bus control circuit. 203 is a termination register that notifies CPUll of the end of CCB operation.

204はメモリの読出しデータを保持するリードデータ
レジスタである。
A read data register 204 holds read data from the memory.

205はメモ1月14への書込みデータを保持するライ
トデータレジスタである。
A write data register 205 holds data written to the memo January 14.

206はデータ転送のメモリアドレスを保持するメモリ
アドレスレジスタである。
A memory address register 206 holds a memory address for data transfer.

207はCPUlllからのチヤネル起動命令によつて
チヤネルに通知されるCCB先頭アドレスを保持するC
CBアドレスレジスタである。
207 is C that holds the CCB start address notified to the channel by the channel start command from CPUll.
This is the CB address register.

208はCPUlllからのチヤネル起動命令によりチ
ヤネルに通知されるチヤネル番号、機器番号を保持する
デバイスナンバレジスタである。
208 is a device number register that holds the channel number and equipment number notified to the channel by the channel activation command from the CPUll.

209は内部バスA(A−BUS)で、各レジスタ、R
AM等のデータが通るバスである。
209 is an internal bus A (A-BUS), and each register, R
This is a bus that carries AM and other data.

210は入出力バス112に送出するデータを保持する
リードデータバッファレジスタであり、マイクロコンピ
ユータ221が各レジスタ、RAM等のデータを取込む
時のデータを保持するレジスタとしても用いられる。
A read data buffer register 210 holds data to be sent to the input/output bus 112, and is also used as a register to hold data when the microcomputer 221 reads data from each register, RAM, etc.

211は入出力バス112からのデータを保持するライ
トデータバッファレジスタであり、マイクロコンピュー
タ220からのデータを保持するレジスタとしても用い
られる。
A write data buffer register 211 holds data from the input/output bus 112, and is also used as a register to hold data from the microcomputer 220.

212は転送バイト数を保持するカウンタであり、入出
力装置113とのデータ転送毎に減算される。
212 is a counter that holds the number of transferred bytes, and is decremented every time data is transferred with the input/output device 113.

213はRAM(ランダムアクセスメモリ)であり、C
CB、入出力データ等が記憶される。
213 is a RAM (random access memory), and C
CB, input/output data, etc. are stored.

214はCCWレジスタであり、RAM2l3にストア
しているCCWを保持する。
A CCW register 214 holds the CCW stored in the RAM 2l3.

215はCCWをデコードしてマイクロプログラムの実
行開始番地をマイクロプログラムカウンタ217に知ら
せるデコードROMである。
A decode ROM 215 decodes the CCW and informs the microprogram counter 217 of the execution start address of the microprogram.

216はROMアドレスセレクタであり、マイクロプロ
グラムカウンタ217に分岐先をセレクトするゲートで
ある。
216 is a ROM address selector, which is a gate that selects a branch destination for the microprogram counter 217.

217はマイクロプログラムカウンタであり、次に実行
するマイクロプログラムのアドレスを保持する。
A microprogram counter 217 holds the address of the next microprogram to be executed.

このカウンタ217はマイクロプログラムの実行毎に「
1」ずつインクリメントされ、分岐を伴なうマイクロ命
令の場合にはROMアドレスセレクタ216からのデー
タを保持する。218はマイクロプログラムが格納され
ているROMl2l9はROM2l8からの読出しデー
タを保持するROMデータレジスタ、220はマイクロ
コンピユータ、221は入出力バス制御回路、222は
内部バスA2O9の制御回路、223はテスト(TES
T)条件判定回路である。
This counter 217 is set every time the microprogram is executed.
It is incremented by 1'' and holds data from the ROM address selector 216 in the case of a microinstruction that involves a branch. 218, ROM1219 in which a microprogram is stored, a ROM data register that holds read data from ROM218, 220, a microcomputer, 221, an input/output bus control circuit, 222, a control circuit for internal bus A2O9, 223, a test (TES)
T) Condition determination circuit.

224は内部バスB(B−BUS)でありマイクロコン
ピユータ220との入出力データ、入出力バス112の
入出力データ等が通る。
224 is an internal bus B (B-BUS) through which input/output data with the microcomputer 220, input/output data of the input/output bus 112, etc. are passed.

225は入出力バス112との間のデータの受渡しを行
なうための入出力バスドライバ・レシーバ回路である。
225 is an input/output bus driver/receiver circuit for exchanging data with the input/output bus 112;

226は割込みをかけた機器番号を保持するレジスタ、
227はチャネル起動命令により起動のかけられた機器
番号を保持するSIOスタツク、228はSIOスタツ
ク227の読出しデータを保持するスタツクレジスタで
ある。
226 is a register that holds the device number that caused the interrupt;
227 is an SIO stack that holds the device number activated by the channel activation command, and 228 is a stack register that holds read data of the SIO stack 227.

上記レジスタ226,228の出力はRAM2l3のア
ドレス情報となる。229は機器番号を保持し入出力バ
ス112に送出するためのアドレスレジスタである。
The outputs of the registers 226 and 228 become address information of the RAM 2l3. Reference numeral 229 is an address register for holding a device number and sending it to the input/output bus 112.

ここで作用を説明する。The effect will be explained here.

CPUlllがマルチプレクサチヤネル116を起動す
る場合、第4図のCCBをメモリ114上に記した後、
第8図のスタートI/O命令(SIO)を実行する。第
8図において、81はSIO命令のフオーマツトで0P
は命令コード、R1はゼネラルレジスタ指定、Nはサブ
コードでありチャネル動作を指定する。82はR1レジ
スタの内容であり、ここでチヤネル番号、機械番号を指
定する。
When the CPU1ll starts the multiplexer channel 116, after writing the CCB of FIG. 4 on the memory 114,
The start I/O command (SIO) shown in FIG. 8 is executed. In Figure 8, 81 is the SIO instruction format and is 0P.
is an instruction code, R1 is a general register designation, and N is a subcode that designates a channel operation. 82 is the contents of the R1 register, where the channel number and machine number are specified.

83はR1+1レジスタの内容であり、ターミネーシヨ
ンキユ一番号とCCBアドレスを指定する。
83 is the contents of the R1+1 register, which specifies the termination key number and CCB address.

CPUlllがスタートI/O命令を実行すると、R1
(82)、R1+1(83)の内容がマルチプレクサチ
ヤネル116に送出される。以後のチヤネル動作を第7
図を参照して説明する。
When CPUll executes the start I/O command, R1
(82), the contents of R1+1 (83) are sent to the multiplexer channel 116. The subsequent channel operation is
This will be explained with reference to the figures.

スタートI/O命令によりR1(82)、R1+1(8
3)の内容は、高速バスドライバ・レシーバ回路201
を通つてデバイスナンバレジスタ208、CCBアドレ
スレジスタ207に保持される。上記Rl,Rl+1の
内容が上記レジスタ208,207に保持されると、高
速バス制御回路202から内部バス制御回路222に要
求が伝達される。内部バス制御回路222がバス使用を
許可すると、CCBアドレスレジスタ207のデータは
RAM2l3へ、又、デバイスナンバレジスタ208の
データはSIOスタツク227に保持される。このRA
M2l3、SOスタツク227に上記データが保存され
ると、内部バス制御回路222からTEST条件判定回
路223へSlO受付の信号が伝達される。而してTE
ST条件判定回路223はセレクタ216、カウンタ2
17を介してROM2l8からSIO受付けのテスト&
ブランチマイクロプログラムを読出し実行する。そして
、次にROM2l8から読出されるマイクロプログラム
によつてSIO命令の処理に入る。以下SIO命令処理
の説明を行なう。
R1 (82), R1+1 (8
The content of 3) is the high-speed bus driver/receiver circuit 201.
The data is held in the device number register 208 and CCB address register 207 through the CCB address register 207. When the contents of Rl and Rl+1 are held in the registers 208 and 207, a request is transmitted from the high-speed bus control circuit 202 to the internal bus control circuit 222. When the internal bus control circuit 222 permits bus use, the data in the CCB address register 207 is held in the RAM 2l3, and the data in the device number register 208 is held in the SIO stack 227. This R.A.
When the above data is stored in the M213 and SO stack 227, an SIO acceptance signal is transmitted from the internal bus control circuit 222 to the TEST condition determination circuit 223. Then TE
The ST condition determination circuit 223 includes a selector 216 and a counter 2.
Test & SIO reception from ROM2l8 via 17
Read and execute the branch microprogram. Then, the microprogram read from the ROM 2l8 starts processing the SIO command. The SIO command processing will be explained below.

ROM2l8からのSIO命令を処理するマイクロプロ
グラムのマイクロ命令が順次読出され、先ずROMデー
タレジスタ219を介して内部バス制御回路222にS
IOスタック取出し指令が出されると、内部バス制御回
路222はSIOスタツク227からスタツクレジスタ
228へ機器番号を転送する。この動作時に、内部バス
制御回路222は以後のRAM2l3のアドレスとして
スタツクレジスタ228を選ぶように動作する。次にR
OM2l8から、RAM2l3からCCBアドレスを取
出し、メモリアドレスレジスタ206へセツトする指令
が同じく内部バス制御回路222へ出力され実行される
The microinstructions of the microprogram that processes the SIO instructions from the ROM 2l8 are sequentially read out, and first the SIO instructions are sent to the internal bus control circuit 222 via the ROM data register 219.
When an IO stack retrieval command is issued, internal bus control circuit 222 transfers the device number from SIO stack 227 to stack register 228. During this operation, the internal bus control circuit 222 operates to select the stack register 228 as the subsequent address of the RAM 2l3. Then R
A command to take out the CCB address from the RAM 2l3 and set it in the memory address register 206 is also output from the OM 2l8 to the internal bus control circuit 222 and executed.

然る後、ROM2l8から高速バス制御回路202へメ
モリリード指令が出される。メモリリード指令が出され
ると高速バス制御回路202はメモリ制御装置115へ
バス使用要求を出し、バス117の使用が許可されると
メモリアドレスレジスタ206のデータをメモリ制御装
置115に送る。メモリ制御装置115が動作して主メ
モ1川14からのメモリリードが終り、読出しデータを
チャネル116に送つて来ると、リードデータレジスタ
204にデータが保持される。そしてROM2l8から
内部バス制御回路222にストア命令が出力されリード
データレジスタ204のデータがRAM2l3に保存さ
れる。これにより、主メモI月14内のCCBがチヤネ
ル116内のRAM2l3に取込まれる。そして、上述
の動作が繰り返されてCCBの取出しが終ると、内部バ
ス制御回路222はROM2l8からのマイクロ命令に
よりRAM2l3に格納したCCWレジスタ214に取
出す。CCWレジスタ214の出力はデコードROM2
l5のアドレス信号になつており、デコードROM2l
5によりCCWの解読が行なわれ、次に実行するマイク
ロプログラムのアドレスがROMアドレスセレクタ21
6を通つてマイクロプログラムカウンタ217に入力さ
れる。従つて、マイクロプログラムが分岐し、CCBを
処理するマイクロプログラムのマイクロ命令がROM2
l8から順次読出される。以下CCWでライト(WRI
TE)モードの指令がある時の動作を記す。先ずマイク
ロプログラムは入出力装置113とチャネルとを接続す
るために、アドレスレジスタ229に保持されている機
器番号を入出力バスに送出する指令を入出力バス制御回
路221に出す。入出力バス制御回路221は入出力バ
ス112に機器番号を送出した後、バスの情報が機器番
号であることを示す第9図のCADRLO9−1を入出
力バス112に送出する。入出力バス112に接続され
ている入出力装置113は、入出力バス112のデータ
と自己装置に固有の番号との一致がとれると第10図に
示す入出力装置113の入出力バスインターフエイス回
路のアドレスフリツプフロツプ301をセツトする。機
器番号のブ致のとれたI/O(入出力装置)からCSY
NLO9−2が返つてくると、入出力バス制御回路22
2は機器アドレスとCADRLO9−1の送出を止める
。CADRLO第9図9−1、第10図303がアクテ
イブ状態からイナクテイブ状態になるとCSYNLO9
−2がイナクテイブになる。第9図はチャネル一1/0
間の動作を示したものであり、第10図は入出力装置1
13の入出力バスインターフエース回路例である。チヤ
ネルからI/Oへの転送時には、入出力バス112に入
出力バス制御回路221がデータを送出したのち、デー
タの意味を示すコントロール信号をアクテイブにする。
CADVLO9−4はI/Oに出力するデータであるこ
とを意味し、CCMDLO9−7はコマンドデータであ
ることを意味する。チヤネルI/O転送時には、先ずコ
ントロール信号を出し、I/Oが要求されたデータを出
しCSYNLO9−2が返つてくると、コントカール信
号をイナクテイブにする。CSRQLO9−3はステー
タスデータ要求信号、CDRQLO9−5は入力データ
要求、CACKLO9−6は割込み機器番号送出要求信
号である。第10図のCACKLOライン304はデイ
ジーチェーンになつており、CTAKLO3O6が次の
I/OのCACKLO3O4,9−6になつている。従
つて割込みフリツプフロツプ307がセツトしている1
/OにCRAKLO3O4が来た場合にはステアリング
フリツプフロツプ308がセツトしてCTAKLO3O
6が出されない。このことにより同時に割込みがあつた
場合の優先度が決まる。また、第10図のアドレスフリ
ツプフロツプ301がセツトしているI/Oとのみ以後
のデータ転送が行なわれるので、チヤネル一1/O間の
接続とはI/Oのアドレスフリツプフロツプ301をセ
ツトすることを意味する。チヤネル一1/O間の接続が
完了するとチヤネル116のマイクロプログラムは、R
AM2l3に保存しているスタートアドレス42をメモ
リアドレスレジスタ206にセツトする。次に転送バイ
ト数43をカウンタ212にセツトする。然る後、RA
M2l3に読み込んでいるデータをリードデータバッフ
ァレジスタ210にセツトした後、ステータス要求信号
CSRQLO9−3を入出力バス112に送出し、ステ
ータスデータを取込む。ステータスをチエツクし異常が
なければリードデータバッファ210のデータを入出力
バス112に送出する。入出力装置113がデータを受
取る(CSYNLO9−2が返つてくる)と、カウンタ
212を「1」減算し、メモリアドレスレジスタ206
を「1」インクリメントし、再びRAM2l3に保存す
る。通常高速DMAバス117は入出力バス112のデ
ータ幅のn倍で構成されるから転送バイト数43がnの
整数倍毎にメモリ114からの読出しが行なわれ、RA
M2l3に保存される。入出力装置113が出力動作を
終了すると割込み(CATNLO3O5)をチヤネルに
かける。
Thereafter, a memory read command is issued from the ROM 2l8 to the high-speed bus control circuit 202. When a memory read command is issued, the high-speed bus control circuit 202 issues a bus use request to the memory control device 115, and when use of the bus 117 is permitted, the data in the memory address register 206 is sent to the memory control device 115. When the memory control device 115 operates to finish reading the memory from the main memory 14 and sends the read data to the channel 116, the data is held in the read data register 204. Then, a store command is output from the ROM 2l8 to the internal bus control circuit 222, and the data in the read data register 204 is stored in the RAM 2l3. As a result, the CCB in the main memo I month 14 is taken into the RAM 2l3 in the channel 116. Then, when the above-described operation is repeated and the CCB has been taken out, the internal bus control circuit 222 takes out the CCB into the CCW register 214 stored in the RAM 2l3 according to a microinstruction from the ROM 2l8. The output of CCW register 214 is decoded ROM2
It is used as the address signal for decode ROM2l5.
5, the CCW is decoded and the address of the next microprogram to be executed is sent to the ROM address selector 21.
6 to the microprogram counter 217. Therefore, the microprogram branches and the microinstruction of the microprogram that processes the CCB is transferred to ROM2.
The data are read out sequentially from l8. Write below with CCW (WRI
The operation when there is a TE) mode command is described. First, the microprogram issues a command to the input/output bus control circuit 221 to send the device number held in the address register 229 to the input/output bus in order to connect the input/output device 113 and the channel. After sending the device number to the input/output bus 112, the input/output bus control circuit 221 sends CADRLO9-1 of FIG. 9 to the input/output bus 112, which indicates that the bus information is the device number. When the input/output device 113 connected to the input/output bus 112 matches the data on the input/output bus 112 with the number unique to the device itself, the input/output bus interface circuit of the input/output device 113 shown in FIG. address flip-flop 301 is set. CSY from I/O (input/output device) with matching device number
When NLO9-2 returns, the input/output bus control circuit 22
2 stops sending the device address and CADRLO9-1. When CADRLO 9-1 in Figure 9 and 303 in Figure 10 change from active state to inactive state, CSYNLO9
-2 becomes inactive. Figure 9 shows channel 1/0
Figure 10 shows the operation of the input/output device 1.
This is an example of No. 13 input/output bus interface circuit. During transfer from a channel to an I/O, after the input/output bus control circuit 221 sends data to the input/output bus 112, a control signal indicating the meaning of the data is activated.
CADVLO9-4 means data to be output to I/O, and CCMDLO9-7 means command data. During channel I/O transfer, first a control signal is issued, the I/O outputs the requested data, and when CSYNLO 9-2 is returned, the control signal is made inactive. CSRQLO9-3 is a status data request signal, CDRQLO9-5 is an input data request signal, and CACKLO9-6 is an interrupt device number sending request signal. The CACKLO lines 304 in FIG. 10 are daisy-chained, with CTAKLO3O6 becoming the next I/O CACKLO3O4, 9-6. Therefore, interrupt flip-flop 307 is set to 1.
When CRAKLO3O4 comes to /O, the steering flip-flop 308 is set and CTAKLO3O
6 is not rolled. This determines the priority when interrupts occur at the same time. Furthermore, since subsequent data transfer is performed only with the I/O set by the address flip-flop 301 in FIG. 301. When the connection between channel 1/O is completed, the microprogram of channel 116 executes R.
The start address 42 stored in AM2l3 is set in the memory address register 206. Next, the number of transferred bytes 43 is set in the counter 212. After that, R.A.
After setting the data read into M2l3 into the read data buffer register 210, the status request signal CSRQLO9-3 is sent to the input/output bus 112 and the status data is taken in. The status is checked, and if there is no abnormality, the data in the read data buffer 210 is sent to the input/output bus 112. When the input/output device 113 receives the data (CSYNLO9-2 is returned), it subtracts "1" from the counter 212 and stores the data in the memory address register 206.
is incremented by "1" and stored in RAM2l3 again. Normally, the high-speed DMA bus 117 is configured with n times the data width of the input/output bus 112, so reading from the memory 114 is performed every time the number of transfer bytes 43 is an integer multiple of n.
Stored in M2l3. When the input/output device 113 completes its output operation, it issues an interrupt (CATNLO3O5) to the channel.

割込みを受付けるとCACKLO9−6,304が入出
力バス制御回路221から送出され、割込み機器番号が
割込み機器番号レジスタ226にセツトされる。入出力
バス制御回路221がCAKLO96,3O4を出すと
以後のRAM2l3のアドレスは割込み機器番号レジス
タ226が選ばれる。SIO命令の時と同様にRAM2
l3のCCWがCCWレジスタ214に読出され以後同
様のシーケンスでデータ転送が行なわれる。尚、アドレ
スレジスタ229へのデータセットは、CCWをRAM
2l3から取出す時に行なわれる。以後人出力装置11
3からの割込みがある毎に同様の動作を行ない、カウン
タ212の内容が「O」になつた時点で、動作の終了状
態、即ち転送終了時のメモリアドレス42、転送バイト
数43、チヤネルステータス、機器ステータス44等を
メモリ114に格納する。以上詳記したように、情報処
理システムにおいて、本発明のマルチプレクサチャネル
を用いることにより、入出力装置からの割込みがCPU
の命令実行によつて待たされることなく、又、割込み処
理のためにCPUの命令実行が待たされることがないた
め、CPUの処理性能並びに処理速度を著しく向上でき
、これによつてシステムスループツトを向上できる。
When an interrupt is accepted, CACKLO9-6, 304 is sent from the input/output bus control circuit 221, and the interrupt device number is set in the interrupt device number register 226. When the input/output bus control circuit 221 outputs CAKLO96, 3O4, the interrupt device number register 226 is selected as the subsequent address of the RAM 2l3. As with the SIO instruction, RAM2
The CCW of l3 is read to the CCW register 214, and thereafter data transfer is performed in the same sequence. Note that data is set to the address register 229 by using CCW in RAM.
This is done when taking out from 2l3. From now on, the human output device 11
A similar operation is performed every time there is an interrupt from 3, and when the contents of the counter 212 reach "O", the operation completion state, that is, the memory address 42 at the end of the transfer, the number of transferred bytes 43, the channel status, The device status 44 and the like are stored in the memory 114. As described in detail above, by using the multiplexer channel of the present invention in an information processing system, interrupts from input/output devices can be
Since the execution of instructions by the CPU is not made to wait for execution of instructions, and the execution of instructions by the CPU is not made to wait for interrupt processing, the processing performance and processing speed of the CPU can be significantly improved, thereby reducing system throughput. You can improve.

更に、チヤネルコントロールプロツク記憶用の記憶装置
を有しているため、主メモリのアクセス頻度を低減でき
、これによつて主メモリを効率良く用いることができる
Furthermore, since it has a storage device for storing channel control programs, the frequency of access to the main memory can be reduced, thereby making it possible to use the main memory efficiently.

【図面の簡単な説明】 第1図は従来のマルチプレクサチヤネルを説明するため
のプロツク図、第2図は上記第1図の構成におけるマイ
クロプログラムの処理シーケンスを示す図、第3図は上
記第2図に示すフエイズ3の処理フローを示す図、第4
図はチヤネルコントロールプロツクを示す図、第5図は
従来のCPUフエイズ遷移と入出力装置の動作を示すタ
イミングチヤート、第6図は本発明の一実施例を示すシ
ステムプロツク図、第7図は上記実施例におけるマルチ
プレクサチヤネル装置の構成を示すプロツク図、第8図
は上記実施例におけるスタート1/O命令のフオーマツ
ト図、第9図は上記実施例におけるチヤネル一1/O間
の動作状態例を示す図、第10図は上記実施例における
入出力装置の入出力インターフエイス回路例を示す回路
プロツク図である。 111・・・・・・CPU、 112・・・・・・入出
力バス、113・・・・・・入出力装置、114・・・
・・・主メモリ、115・・・・・・メモリ制御装置、
116・・・・・・マルチプレクサチヤネル、117・
・・・・・DMAバス、201・・・・・・高速バスド
ライバレシーバ回路、202・・・・・・高速バス制御
回路、203・・・・・・ターミネーシヨンレジスタ、
204・・・・・・リードデータレジスタ、205・・
・・・・ライトデータレジスタ、206・・・・・・メ
モリアドレスレジスタ、207・・・・・・CCBアド
レスレジスタ、208・・・・・・デイバイスナンバレ
ジスタ、209,224・・・・・・内部バス、210
・・・・・・リードデータバツフアレジスタ、211・
・・・・・ラィトデータバツフアレジスタ、212・・
・・・・カウンタ、213・・・・・・RAM、214
・・・・・{℃Wレジスタ、215・・・・・・デコー
ドROM、216・・・・・・ROMアドレスセレクタ
、217・・・・・゜マイクロプログラムカウンタ、2
18・・・・・・ROM、219・・・・・・ROMデ
ータレジスタ、220・・・・・・マイクロコンピユー
タ、221・・・・・・入出力バス制御回路、222・
・・・・・内部バスA制御回路、223・・・・・・T
EST条件判定回路、225・・・・・・入出力バスド
ライバレシーバ回路、226・・・・・・割込み機器番
号レジスタ、227・・・・・・SIOスタツク、22
8・・・・・・スタツクレジスタ、229・・・・・・
アドレスレジスタ。
[Brief Description of the Drawings] Fig. 1 is a block diagram for explaining a conventional multiplexer channel, Fig. 2 is a diagram showing a processing sequence of a microprogram in the configuration of Fig. 1, and Fig. 3 is a block diagram for explaining a conventional multiplexer channel. Figure 4 showing the processing flow of phase 3 shown in Figure 4.
5 is a diagram showing a channel control block, FIG. 5 is a timing chart showing conventional CPU phase transitions and operation of input/output devices, FIG. 6 is a system block diagram showing an embodiment of the present invention, and FIG. 7 is a diagram showing a channel control block. is a block diagram showing the configuration of the multiplexer channel device in the above embodiment, FIG. 8 is a format diagram of the start 1/O command in the above embodiment, and FIG. 9 is an example of the operating state between channels and 1/O in the above embodiment. FIG. 10 is a circuit block diagram showing an example of the input/output interface circuit of the input/output device in the above embodiment. 111... CPU, 112... Input/output bus, 113... Input/output device, 114...
...Main memory, 115...Memory control device,
116...Multiplexer channel, 117.
...DMA bus, 201 ... High speed bus driver receiver circuit, 202 ... High speed bus control circuit, 203 ... Termination register,
204... Read data register, 205...
...Write data register, 206...Memory address register, 207...CCB address register, 208...Device number register, 209, 224... Internal bus, 210
... Read data buffer register, 211.
...Write data buffer register, 212...
...Counter, 213...RAM, 214
...{℃W register, 215...Decode ROM, 216...ROM address selector, 217...゜Micro program counter, 2
18...ROM, 219...ROM data register, 220...Microcomputer, 221...I/O bus control circuit, 222...
...Internal bus A control circuit, 223...T
EST condition determination circuit, 225... Input/output bus driver receiver circuit, 226... Interrupt device number register, 227... SIO stack, 22
8...Stack register, 229...
Address register.

Claims (1)

【特許請求の範囲】[Claims] 1 ダイレクトメモリアクセスバスに接続され上位装置
からのチャネル起動命令により通知されるチャネルコン
トロールブロックの格納先番地および入出力装置の機器
番号を保持する手段と、チャネル内をマイクロプログラ
ムで制御するマイクロプログラム制御部と、この制御部
からの前記チャネル起動命令を実行するマイクロプログ
ラムにより前記チャネルコントロールブロックの格納先
番地に基づき主メモリからチャネルコントロールブロッ
クを読取る手段と、この手段で読取つた前記チャネルコ
ントロールブロックを前記機器番号によつて指定される
番地に格納する記憶部と、前記入出力装置からの割込み
要求に対し、当該入出力機器の前記入出力番号を用いて
前記記憶部から対応するチャネルコントロールブロック
を読取る手段とを具備することを特徴とするマルチプレ
クサチャネル装置。
1. Means for holding the storage address of the channel control block connected to the direct memory access bus and notified by the channel activation command from the host device and the equipment number of the input/output device, and microprogram control for controlling the inside of the channel by the microprogram. a means for reading a channel control block from the main memory based on a storage address of the channel control block by a microprogram that executes the channel activation instruction from the control section; A storage section stores the block at an address specified by the device number, and in response to an interrupt request from the input/output device, reads a corresponding channel control block from the storage section using the input/output number of the input/output device. A multiplexer channel device comprising: means.
JP9721180A 1980-07-16 1980-07-16 multiplexer channel equipment Expired JPS5939766B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9721180A JPS5939766B2 (en) 1980-07-16 1980-07-16 multiplexer channel equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9721180A JPS5939766B2 (en) 1980-07-16 1980-07-16 multiplexer channel equipment

Publications (2)

Publication Number Publication Date
JPS5723135A JPS5723135A (en) 1982-02-06
JPS5939766B2 true JPS5939766B2 (en) 1984-09-26

Family

ID=14186282

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9721180A Expired JPS5939766B2 (en) 1980-07-16 1980-07-16 multiplexer channel equipment

Country Status (1)

Country Link
JP (1) JPS5939766B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59178238A (en) * 1983-03-30 1984-10-09 Fujikura Rubber Ltd Method and apparatus for molding endless product having large number of projections on its surface

Also Published As

Publication number Publication date
JPS5723135A (en) 1982-02-06

Similar Documents

Publication Publication Date Title
JP4883824B2 (en) Method and apparatus for influencing subsequent instruction processing in a data processor
KR970003321B1 (en) System using microprocessor address lines coprocessor selection within a multi-coprocessor apparatus
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
JPS5939766B2 (en) multiplexer channel equipment
KR100188374B1 (en) Central processing unit and an arithmetic operation processing unit
JP2577023B2 (en) Address extension control method for information processing equipment
EP0573071A2 (en) A microprocessor
JP2643931B2 (en) Information processing device
JPS6134188B2 (en)
JPS6315628B2 (en)
JP3139310B2 (en) Digital signal processor
JP2814683B2 (en) Instruction processing unit
JPH0425581B2 (en)
JPS6148743B2 (en)
JP2504224B2 (en) Data processing device
JP3168845B2 (en) Digital signal processor
JP2762441B2 (en) Coprocessor
JPS6236581B2 (en)
JP3493768B2 (en) Data processing device
JPS5935050B2 (en) multiplexer channel equipment
JPH0317135B2 (en)
JPS5896346A (en) Hierarchical arithmetic system
JPS5942331B2 (en) Prosetsusasouchinoseigiohoshiki
JPH0752402B2 (en) Data processing device
JPS63132362A (en) Command operation control system