JPS581452B2 - デツドロツク回避装置 - Google Patents
デツドロツク回避装置Info
- Publication number
- JPS581452B2 JPS581452B2 JP54033451A JP3345179A JPS581452B2 JP S581452 B2 JPS581452 B2 JP S581452B2 JP 54033451 A JP54033451 A JP 54033451A JP 3345179 A JP3345179 A JP 3345179A JP S581452 B2 JPS581452 B2 JP S581452B2
- Authority
- JP
- Japan
- Prior art keywords
- control device
- signal
- response
- controller
- cpu
- 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
Links
- 230000004044 response Effects 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 35
- 230000002093 peripheral effect Effects 0.000 claims description 14
- 238000001514 detection method Methods 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical compound C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/122—Program 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
- Small-Scale Networks (AREA)
- Bus Control (AREA)
Description
【発明の詳細な説明】
近来の複合データ処理システムは、複数の周辺装置若し
くはI/O装置と共に複数の処理装置を用いており、複
数の周辺装置若しくはI/O装置は制御装置若しくはイ
ンターフェースを介して1台以上の処理装置からアクセ
スされる様になっている。
くはI/O装置と共に複数の処理装置を用いており、複
数の周辺装置若しくはI/O装置は制御装置若しくはイ
ンターフェースを介して1台以上の処理装置からアクセ
スされる様になっている。
そして、特別な機能を有する制御装置を介して複数の処
理装置(CPU)と複数のI/O装置とがデータのやり
とりを行なう階層構造のシステムが増えてきている。
理装置(CPU)と複数のI/O装置とがデータのやり
とりを行なう階層構造のシステムが増えてきている。
この様なシステムの特徴として、CPUはI/O装置の
状態を監視し、CPU及びI/O装置と承認シーケンス
を変換し、更にCPUが所与のI/O装置に関する制御
権を取得してデータの転送を行なうことを可能ならしめ
る。
状態を監視し、CPU及びI/O装置と承認シーケンス
を変換し、更にCPUが所与のI/O装置に関する制御
権を取得してデータの転送を行なうことを可能ならしめ
る。
この型の構成において、制御装置は多重化動作を行なう
のみならず、所与のタスクを行なう際にI/O装置の利
用可能性及びステータスに関する最新の情報をCPUに
与えることができる様に内部監視シーケンスを実行する
。
のみならず、所与のタスクを行なう際にI/O装置の利
用可能性及びステータスに関する最新の情報をCPUに
与えることができる様に内部監視シーケンスを実行する
。
通常、CPUと制御装置とは主従関係をもって動作する
。
。
即ち、制御装置は指令及びリクエストに追従し、且つ質
問に応答しなければならない。
問に応答しなければならない。
制御装置は、接続されているI/O装置の走査を完了し
且つ種々の機能の完了のために内部の信号の順序づけを
行なうように動作するけれど、CPUからのステータス
要求に対する応答を独立して遅らすことはできない。
且つ種々の機能の完了のために内部の信号の順序づけを
行なうように動作するけれど、CPUからのステータス
要求に対する応答を独立して遅らすことはできない。
従って、制御装置は、2つの同期していないCPUに応
答することが必要な場合には、優先順位に従って応答す
るけれど、応答のために、そのときの動作を中断するこ
と及び後で適当な動作サイクル点へ戻ることが必要であ
る。
答することが必要な場合には、優先順位に従って応答す
るけれど、応答のために、そのときの動作を中断するこ
と及び後で適当な動作サイクル点へ戻ることが必要であ
る。
ところで、制御装置は小型のサテライト処理装置に関連
して独立して動作する大型の中央処理装置の様に相当異
なったデータ速度で動作する複数の処理装置に接続され
ることもある。
して独立して動作する大型の中央処理装置の様に相当異
なったデータ速度で動作する複数の処理装置に接続され
ることもある。
高速の処理装置は、着手すべき作業の待ち行列を設定し
、この待ち行列を迅速に調べて、特定の制御装置に対し
てステータス要求を送る。
、この待ち行列を迅速に調べて、特定の制御装置に対し
てステータス要求を送る。
一方、制御装置は低速の処理装置に対する再接続を行お
うとしているときには、所与のI/O装置が前に割当て
られたタスクを完了していて処理装置のプログラムにお
ける次のステップのために利用可能であることを確かめ
てから、低速の処理装置に対する再接続の試みをしなけ
ればならない。
うとしているときには、所与のI/O装置が前に割当て
られたタスクを完了していて処理装置のプログラムにお
ける次のステップのために利用可能であることを確かめ
てから、低速の処理装置に対する再接続の試みをしなけ
ればならない。
しかしながら、再接続がなされる前に高速の処理装置が
ステータス要求を生じて、制御装置の動作シーケンスが
完了する前に応答を要求することがありうる。
ステータス要求を生じて、制御装置の動作シーケンスが
完了する前に応答を要求することがありうる。
高速の処理装置がアクセスすることを望んでいるI/O
装置が既に低速の処理装置のために使用されているもの
であり、それについて再接続が行なわれる必要がある場
合には、高速の処理装置が繰り返しステータス要求を出
しても、対象とするI/O装置が使用中であるという応
答しか得られず、デッドロック(行きづまり)状態にな
る。
装置が既に低速の処理装置のために使用されているもの
であり、それについて再接続が行なわれる必要がある場
合には、高速の処理装置が繰り返しステータス要求を出
しても、対象とするI/O装置が使用中であるという応
答しか得られず、デッドロック(行きづまり)状態にな
る。
デッドロック状態を避けるために十分な独立性をもって
動作するように制御装置を設計することは、制御体系を
崩すことになるので、好ましくない。
動作するように制御装置を設計することは、制御体系を
崩すことになるので、好ましくない。
又、中央処理装置に余分なソフトウエア上の要件を課す
ることも好ましくない。
ることも好ましくない。
本発明は従来のシステムの欠点を排除することを意図し
ている。
ている。
本発明によるシステムは、制御装置による応答自体を監
視し、装置使用中を示す応答が絶え間なく過度に生ずる
ならば、制御装置が内部動作シーケンスを完了すること
を可能ならしめ且つ前に開始された動作を完了するよう
に再接続を行なうことを可能ならしめるために、l台以
上の処理装置若しくはチャネルに対してステータス要求
の拒絶を示す信号を与える所定時間の動作を行なう。
視し、装置使用中を示す応答が絶え間なく過度に生ずる
ならば、制御装置が内部動作シーケンスを完了すること
を可能ならしめ且つ前に開始された動作を完了するよう
に再接続を行なうことを可能ならしめるために、l台以
上の処理装置若しくはチャネルに対してステータス要求
の拒絶を示す信号を与える所定時間の動作を行なう。
本発明によるシステムの特定の例の場合、2台以上のI
/O装置に接続されると共に少なくとも2台の異なった
処理装置に接続される共用マルチデバイス制御装置は、
装置が前の指令の完了のために専用されているとき、処
理装置のチャネルからの要求に応じて設置使用中信号を
生ずる。
/O装置に接続されると共に少なくとも2台の異なった
処理装置に接続される共用マルチデバイス制御装置は、
装置が前の指令の完了のために専用されているとき、処
理装置のチャネルからの要求に応じて設置使用中信号を
生ずる。
装置使用中信号は検出されて計数器の駆動のために利用
される。
される。
この計数器は予定のカウントに達すると出力信号を生ず
る。
る。
しかしながら、ステータス要求に応答する装置使用中信
号が発生しないとき又は他の異なる種類の応答信号が発
生するときには、計数器はリセットされた後、再び計数
動作を行なう。
号が発生しないとき又は他の異なる種類の応答信号が発
生するときには、計数器はリセットされた後、再び計数
動作を行なう。
計数器のカウントが予定値に達すると、プリセット可能
な時間範囲を定める計時回路が動作し始め、その時間範
囲において制御装置使用中を示す応答が1以上の処理装
置へ送られ、制御装置は遂行すべき内部タスクにとりか
かることが可能になり、又、前にI/O装置に割当てら
れているタスクの完了のために所与の処理装置に対する
再接続を要求することが可能になる。
な時間範囲を定める計時回路が動作し始め、その時間範
囲において制御装置使用中を示す応答が1以上の処理装
置へ送られ、制御装置は遂行すべき内部タスクにとりか
かることが可能になり、又、前にI/O装置に割当てら
れているタスクの完了のために所与の処理装置に対する
再接続を要求することが可能になる。
所定の時間範囲内で再接続が行なわれない場合には、計
時回路は計数器をリセットし、デッドロック状態が再び
検出されることに応じて、別の再接続に関する動作サイ
クルが行なわれる。
時回路は計数器をリセットし、デッドロック状態が再び
検出されることに応じて、別の再接続に関する動作サイ
クルが行なわれる。
この様にして、デッドロック状態にある時間を分断し且
つデードロック状態を変更することが可能であり、しか
も処理装置と周辺装置との間あるいは処理装置と制御装
置との間における基本的な関係を修正することは不必要
である。
つデードロック状態を変更することが可能であり、しか
も処理装置と周辺装置との間あるいは処理装置と制御装
置との間における基本的な関係を修正することは不必要
である。
本発明による典型的なシステムの概要は第1図に示して
ある。
ある。
広く使用されるシステム構成が用いられている。
このシステムにおいて、第1の中央データ処理装置(第
1のCPUと略称する)10及び第2の中央データ処理
装置(第2のCPUと略称する)12は、互いに協働す
ると共にI/O装置として言及する多数の周辺装置とも
協働する。
1のCPUと略称する)10及び第2の中央データ処理
装置(第2のCPUと略称する)12は、互いに協働す
ると共にI/O装置として言及する多数の周辺装置とも
協働する。
このシステム構成は、種々の組合わせの周辺装置を用い
て種々のタスクを実行するために高速のCPU(第1の
CPU)と複数の低速のCPU(第2のCPU)とが統
合されている型のシステムを例示するものである。
て種々のタスクを実行するために高速のCPU(第1の
CPU)と複数の低速のCPU(第2のCPU)とが統
合されている型のシステムを例示するものである。
この種技術分野の専門家には種々の組合わせや代替的構
成がある事も容易に分かる筈であるが、第1図のシステ
ムは融通性をもったシステムの典型例である。
成がある事も容易に分かる筈であるが、第1図のシステ
ムは融通性をもったシステムの典型例である。
この構成に於で、第1のCPU10はチャネルA2及び
チャネルB3を有し、第2のCPU12はチャネルC4
及びチャネルD5を有する。
チャネルB3を有し、第2のCPU12はチャネルC4
及びチャネルD5を有する。
これらのチャネルは異なった態様で他の装置に接続され
ている。
ている。
チャネルA2は、I/Oインターフェース6によって第
1及び第2のマルチ・デバイス制御装置14,15、シ
ングルデバイス制御装置16、及び共用マルチデバイス
制御装置17に直列的に接続されている。
1及び第2のマルチ・デバイス制御装置14,15、シ
ングルデバイス制御装置16、及び共用マルチデバイス
制御装置17に直列的に接続されている。
I/Oインターフェース6は共用マルチデバイス制御装
置17のターミネイタ・ブロック(TB)1 8で終っ
ている。
置17のターミネイタ・ブロック(TB)1 8で終っ
ている。
第1のマルチ・デバイス制御装置14は共用スイッチ回
路20によって1組のI/O装置22の夫々に接続され
る。
路20によって1組のI/O装置22の夫々に接続され
る。
第2のマルチ・デバイス制御装置15は単独で1組の異
なったI/O装置22を制御する。
なったI/O装置22を制御する。
一方、シングルデバイス制御装置16は、その名称のと
おり、単一のI/O装置22だけを制御する。
おり、単一のI/O装置22だけを制御する。
これらの構成要素は、全体的なシステム構成を例示する
ためだけのものであるから、これ以上詳しい説明は省略
する。
ためだけのものであるから、これ以上詳しい説明は省略
する。
但し、共用マルチデバイス制御装置17に関しては、特
別な問題があるので、後で述べる様に本発明に従った回
路を設けることが必要になっている。
別な問題があるので、後で述べる様に本発明に従った回
路を設けることが必要になっている。
チャネルB3はチャネル間アダプタ24を介して異なっ
た態様で使用される。
た態様で使用される。
I/Oインターフェース7はチャネル間アダプタ24を
介して第3のマルチデバイス制御装置26に接続されて
いる。
介して第3のマルチデバイス制御装置26に接続されて
いる。
第3のマルチデバイス制御装置26は更に共用スイッチ
回路20に接続されている。
回路20に接続されている。
チャネル間アダプタ24には第2のCPU12における
チャネルC4から第4のマルチデバイス制御装置28へ
通ずるI/Oインターフェース8も関連している。
チャネルC4から第4のマルチデバイス制御装置28へ
通ずるI/Oインターフェース8も関連している。
チャネルD5から出ているI/Oインターフェース9は
、第5のマルチデバイス制御装置30、統合制御装置3
2、及び共用マルチデバイス制御装置17に接続されて
いる。
、第5のマルチデバイス制御装置30、統合制御装置3
2、及び共用マルチデバイス制御装置17に接続されて
いる。
統合制御装置32に関連している一対のI/O装置22
はチャネルD5と通信したり、両者間で通信するように
用いられる。
はチャネルD5と通信したり、両者間で通信するように
用いられる。
共用マルチデバイス制御装置17は、多数のI/O装置
を制御することができるけれど、この例では一対のI/
O装置22だけを制御するようになっている。
を制御することができるけれど、この例では一対のI/
O装置22だけを制御するようになっている。
第1のCPU10及び第2のCPU12はマスターとし
て動作し、種々の制御装置はスレーブとして動作する。
て動作し、種々の制御装置はスレーブとして動作する。
この階層構成において、種々の制御装置はCPUによっ
て質問されるときには応答することを要求される。
て質問されるときには応答することを要求される。
換言すれば、CPUは高レベルの計算及び制御能力を有
し、従って制御装置からの信号によって支配されないと
いうことである。
し、従って制御装置からの信号によって支配されないと
いうことである。
ここで幾つかの一般的事項について説明しておくことに
する。
する。
最近の制御装置は、マルチデバイス制御装置、シングル
デバイス制御装置、統合制御装置、共用マルチデバイス
制御装置の種類にかかわりなく、相当な判断能力を有す
るのが普通である。
デバイス制御装置、統合制御装置、共用マルチデバイス
制御装置の種類にかかわりなく、相当な判断能力を有す
るのが普通である。
例えば、アドレスされたディスク装置において作動アー
ムが或る位置から別の位置へ動かされるときには、その
動作に関連して相当な(ミリ秒の桁の)時間がかかるこ
とになる。
ムが或る位置から別の位置へ動かされるときには、その
動作に関連して相当な(ミリ秒の桁の)時間がかかるこ
とになる。
制御装置は先ずそのディスク装置を要求したチャネルと
連絡し、装置の利用可能性についての信号を応答として
送り、次に、関連するCPUからの指令に応じて所望の
動作を開始する。
連絡し、装置の利用可能性についての信号を応答として
送り、次に、関連するCPUからの指令に応じて所望の
動作を開始する。
周辺装置に対して所望の動作を行なうように命令してし
まえば、制御装置は、動作が完了するまで(例えば、ア
ームが所望のトラック位置に達するまで)、他の機能を
果たすことができる。
まえば、制御装置は、動作が完了するまで(例えば、ア
ームが所望のトラック位置に達するまで)、他の機能を
果たすことができる。
周辺装置において動作が完了するまでの時間中、制御装
置と周辺装置との間に電気的接続はないが、制御装置は
プログラムされたステップが完了するときCPUにアド
バイスを与える機能を有することによって論理的接続を
維持する。
置と周辺装置との間に電気的接続はないが、制御装置は
プログラムされたステップが完了するときCPUにアド
バイスを与える機能を有することによって論理的接続を
維持する。
周辺装置がデータの転送や次の指令の供給などの後続ス
テップを持っていることを示すときには、制御装置は適
当なCPUチャネルとの再接続を試みる。
テップを持っていることを示すときには、制御装置は適
当なCPUチャネルとの再接続を試みる。
この様に、CPUは中間的な制御及び監視動作を行なう
ことも個々の周辺装置との繁雑な接続手順に関与するこ
とも必要ないので、CPUの高速データ処理能力が有効
に利用される。
ことも個々の周辺装置との繁雑な接続手順に関与するこ
とも必要ないので、CPUの高速データ処理能力が有効
に利用される。
前述のI/Oインターフェース6,7,8.9はそれぞ
れ1本の線ではなく複数の線から成り、データ、特別の
標識、アドレス、指令などを伝える。
れ1本の線ではなく複数の線から成り、データ、特別の
標識、アドレス、指令などを伝える。
これらの事項についての詳細は、例えば米国1特許第3
336582号に開示されている。
336582号に開示されている。
更に、CPUと制御装置との間のやりとりに関して用い
られる全てのタグ、選択制御信号及び指令と共に特別の
信号シーケンスやゲート回路及び制御回路もこの米国特
許に開示されている。
られる全てのタグ、選択制御信号及び指令と共に特別の
信号シーケンスやゲート回路及び制御回路もこの米国特
許に開示されている。
種々の信号のうちの幾つかの要求及び応答信号しか本発
明の実施例に関係しないので、種々の信号の詳細につい
ては省略する。
明の実施例に関係しないので、種々の信号の詳細につい
ては省略する。
第2図から分かる様に、デッドロック検出制御回路40
は、既存の制御装置と協働したりその1部となるように
構成される。
は、既存の制御装置と協働したりその1部となるように
構成される。
米国特許第3840859号、第3909795号、第
3866184号などに示されている様に種々のI/O
制御装置が存在するが、第1図に示されている種々の制
御装置の例として、IBM3830磁気ディスク制御装
置の様な制御装置を使用することが望ましい。
3866184号などに示されている様に種々のI/O
制御装置が存在するが、第1図に示されている種々の制
御装置の例として、IBM3830磁気ディスク制御装
置の様な制御装置を使用することが望ましい。
共用マルチデバイス制御装置17は周知の機能を有する
外に、本発明に従って、次の(a)及至(e)の特定の
要求及び応答にも関係するように修正されている。
外に、本発明に従って、次の(a)及至(e)の特定の
要求及び応答にも関係するように修正されている。
(a)CPUのチャネルからの制御信号若しくはステー
タス要求信号二入出力開始(SIO)又は入出力テスト
(TIO)信号と呼ばれることもある。
タス要求信号二入出力開始(SIO)又は入出力テスト
(TIO)信号と呼ばれることもある。
(b) 制御装置からチャネルへの応答として出され
る「装置使用中」信号。
る「装置使用中」信号。
(c) 制御装置からチャネルへ送られる再接続要求
信号: 「リクエスト・イン」信号と呼ばれる。
信号: 「リクエスト・イン」信号と呼ばれる。
(e) 制御装置による再接続の要求に対するチャネ
ルの承認若しくは応答信号:「セレクト・アウト」信号
と呼ばれる。
ルの承認若しくは応答信号:「セレクト・アウト」信号
と呼ばれる。
第2図において、本発明に従ってデッドロック検出匍脚
回路40が共用マルチデバイス制御装置17の入力及び
出力線に接続されている。
回路40が共用マルチデバイス制御装置17の入力及び
出力線に接続されている。
デッドロック検出制御回路40の入力側には、装置使用
中信号及び制御装置使用中信号を伝えるバス・イン線4
2、ステータス・イン線44、チャネル選択を示すアド
レス・アウト線49、制御装置の要求に対するチャネル
の応答を伝えるセレクト・アウト線46、及び制御装置
の要求を伝えるリクエスト・イン線48が接続されてい
る。
中信号及び制御装置使用中信号を伝えるバス・イン線4
2、ステータス・イン線44、チャネル選択を示すアド
レス・アウト線49、制御装置の要求に対するチャネル
の応答を伝えるセレクト・アウト線46、及び制御装置
の要求を伝えるリクエスト・イン線48が接続されてい
る。
IBMシステム/370のチャネルの場合、入出力テス
ト指令は、チャネルによって要求された接続が行なわれ
るときバス・アウト線に出される。
ト指令は、チャネルによって要求された接続が行なわれ
るときバス・アウト線に出される。
チャネルによる選択は、セレクト・アウトとアドレス・
アウトとが同時に生ずることによって示される。
アウトとが同時に生ずることによって示される。
デッドロック検出制御回路40の唯一の出力線71には
、制御装置使用中信号が生ずる。
、制御装置使用中信号が生ずる。
この信号は、チャネルへの返送のためにオア回路(図示
せず)において、共用マルチデバイス制御装置17の内
部で生ずる制御装置使用中応答と組合わされる。
せず)において、共用マルチデバイス制御装置17の内
部で生ずる制御装置使用中応答と組合わされる。
即ち、共用マルチデバイス制御装置17が本来の機能と
して制御装置使用中応答を生ずることの外にデッドロッ
ク検出制御回路40も同じ応答を生ずることができる。
して制御装置使用中応答を生ずることの外にデッドロッ
ク検出制御回路40も同じ応答を生ずることができる。
デッドロック検出制御回路40において、バス・イン線
42はデコーダ52に接続されている。
42はデコーダ52に接続されている。
デコーダ52は装置使用中信号だけを検出して出力信号
を生ずる。
を生ずる。
装置使用中信号は、制御装置がチャネル選択シーケンス
に応じて、装置の使用中であることを示す応答としてス
テータス・イン信号と共に生ずるものである。
に応じて、装置の使用中であることを示す応答としてス
テータス・イン信号と共に生ずるものである。
ステータスの要求は、明示されないけれど、新しいチャ
ネル選択毎に行なわれる。
ネル選択毎に行なわれる。
デコーダ52の出力信号は、線44のステータス・イン
信号と共にアンド・ゲート54に与えられる。
信号と共にアンド・ゲート54に与えられる。
アンド・ゲート54の出力信号は計数器56を歩進させ
るように利用されている。
るように利用されている。
計数器56は所定のカウント、例えばカウント64に達
するとオーバーフローを起こして出力信号を生ずるよう
になっている。
するとオーバーフローを起こして出力信号を生ずるよう
になっている。
なお、計数器に関連して任意に選定されるカウントのと
き出力信号を生ずるデコーダを用いてもよい。
き出力信号を生ずるデコーダを用いてもよい。
共用マルチデバイス制御装置が装置使用中を示さず、ス
テータス・イン信号だけが存在するときには、アンド・
ゲート54の出力信号は低レベルであり、反転器58の
出力信号が高レベルになる。
テータス・イン信号だけが存在するときには、アンド・
ゲート54の出力信号は低レベルであり、反転器58の
出力信号が高レベルになる。
従って、アンド・ゲート60が出力信号を生じて計数器
をリセットする。
をリセットする。
計数器56は共用マルチデバイス制御装置17からチャ
ネルへ戻されるリクエスト・イン信号とセレクト・アウ
ト信号の同時発生に応じてもリセットされるようになっ
ている。
ネルへ戻されるリクエスト・イン信号とセレクト・アウ
ト信号の同時発生に応じてもリセットされるようになっ
ている。
但し、線49にアドレス・アウト信号がないことにより
、反転器47が高レベルの信号を生じていることが必要
である。
、反転器47が高レベルの信号を生じていることが必要
である。
この場合、制御装置の接続要求に対するチャネルの応答
を表わす信号がアンド・ゲート62から生じ、この信号
はオア・ゲート64を介して計数器56をリセットする
。
を表わす信号がアンド・ゲート62から生じ、この信号
はオア・ゲート64を介して計数器56をリセットする
。
計数器56の出力信号はフリツプフロツプ66をセット
する働きをする。
する働きをする。
フリツブフロツプ66の出力信号は計時回路68の動作
を開始させる。
を開始させる。
計時回路68は、例えば、自走発振器に応じて動作する
計数器及びそれに付随して予定のカウント出力を選択す
るデコーダから成るものでよい。
計数器及びそれに付随して予定のカウント出力を選択す
るデコーダから成るものでよい。
又、計時回路68はクロック信号に応答して動作するも
のでもよい。
のでもよい。
いずれにせよ、予定時間が経過するとき計時回路68は
線69に出力信号を生じ、この信号はオア・ゲート64
を介して計数器56のみならずフリツプフロツブ66及
び計時回路68をリセットする。
線69に出力信号を生じ、この信号はオア・ゲート64
を介して計数器56のみならずフリツプフロツブ66及
び計時回路68をリセットする。
フリツブフロツプ66の出力信号は制御装置使用中応答
を示し、線67における任意のチャネル選択信号の制御
によりアンド・ゲート70を通過する。
を示し、線67における任意のチャネル選択信号の制御
によりアンド・ゲート70を通過する。
この代りに、最も高速のCPUにだけ制御装置使用中応
答を与え、CPUによるそれ以上の要求を拒絶するよう
にアンドゲート70の入力を選定することも可能である
。
答を与え、CPUによるそれ以上の要求を拒絶するよう
にアンドゲート70の入力を選定することも可能である
。
第2図の構成の動作について更に説明するにあたって、
第1図における第1のCPU1 0は第2のCPU12
よりも相当高速なデータ速度を有することが注意される
。
第1図における第1のCPU1 0は第2のCPU12
よりも相当高速なデータ速度を有することが注意される
。
2台のCPUが非同期的に動作していること、及び両者
のデータ速度が異なることに鑑み、デッドロック状態が
種々の態様で生ずる。
のデータ速度が異なることに鑑み、デッドロック状態が
種々の態様で生ずる。
第1のCPU1 0は異なったI/O装置に関する要求
の待ち行列を設定し、この待ち行列を走査し、必要な動
作を開始し、共用マルチデバイス制御装置17等の所与
の装置に動作を命ずることを、第2のCPU12よりも
迅速に行なうことができる。
の待ち行列を設定し、この待ち行列を走査し、必要な動
作を開始し、共用マルチデバイス制御装置17等の所与
の装置に動作を命ずることを、第2のCPU12よりも
迅速に行なうことができる。
但し、この制御装置17は、前に割当てたタスクの完了
に関して特定のI/O装置22との間の論理接続を維持
しうる。
に関して特定のI/O装置22との間の論理接続を維持
しうる。
前に命じた動作が完了していることを制御装置がCPU
へ知らせることが必要となっている限りにおいて、これ
は「割込み」と呼ばれることもある。
へ知らせることが必要となっている限りにおいて、これ
は「割込み」と呼ばれることもある。
これはスレーブ・モードからの逸脱を意味せず、前に要
求された動作の完了に関する単なる承認を意味する。
求された動作の完了に関する単なる承認を意味する。
しかしながら、制御装置においては、適当なチャネルに
再接続するために、一連の動作を行なわなければならな
い。
再接続するために、一連の動作を行なわなければならな
い。
制御装置は先ず監視動作の一環として、割当てたタスク
が完了したかいなか、換言すれば「装置終了」信号が生
じたかいなかを繰り返し調べる必要がある。
が完了したかいなか、換言すれば「装置終了」信号が生
じたかいなかを繰り返し調べる必要がある。
次に制御装置は関連するチャネルとの再接続を要求する
リクエスト・イン信号を送り、それに対応して、チャネ
ルから再接続を可能ならしめるセレクト・アウトと称す
る承認信号を受取る。
リクエスト・イン信号を送り、それに対応して、チャネ
ルから再接続を可能ならしめるセレクト・アウトと称す
る承認信号を受取る。
その後、制御装置は制御装置使用中信号を他のチャネル
に出して、適当なチャネルに関連した動作を継続する。
に出して、適当なチャネルに関連した動作を継続する。
この様な内部動作シーケンスは、制御装置が所望のチャ
ネルと再接続できないときには中止される。
ネルと再接続できないときには中止される。
即ち、再接続ができないときには、制御装置はスレーブ
装置として、関連するマスターとしてのCPUからくる
他の要求に応答しなければならない。
装置として、関連するマスターとしてのCPUからくる
他の要求に応答しなければならない。
もし低速のCPUが或るI/O装置に関する動作を終え
ていす、再接続が行なわれる前に高速のCPUが同じI
/O装置を繰り返し要求するならば、そのとき出すこと
のできる唯一の応答は装置が使用中であることを示すも
のである。
ていす、再接続が行なわれる前に高速のCPUが同じI
/O装置を繰り返し要求するならば、そのとき出すこと
のできる唯一の応答は装置が使用中であることを示すも
のである。
結局、高速のCPUが或るI/O装置にアクセスするこ
とを繰り返し要求するときには、制御装置は、ずっと装
置使用中応答を出すように強制され、制御装置は低速の
CPUに関して必要とされる再接続を行なうことができ
なくなる。
とを繰り返し要求するときには、制御装置は、ずっと装
置使用中応答を出すように強制され、制御装置は低速の
CPUに関して必要とされる再接続を行なうことができ
なくなる。
この様な状況において、デコーダ52は、線44にステ
ータス・イン信号が現われるのと同時に一連の装置使用
中応答を表わす出力信号を生ずる。
ータス・イン信号が現われるのと同時に一連の装置使用
中応答を表わす出力信号を生ずる。
この信号に応じて計数器56は計数動作を行なう。
もし装置使用中応答なしにステータス・イン信号が出さ
れることなどによって状況が変わると、アンド・ゲート
60の出力信号によって計数器56がリセットされる。
れることなどによって状況が変わると、アンド・ゲート
60の出力信号によって計数器56がリセットされる。
又、制御装置の要求に対するチャネルの応答、即ち、ア
ドレス・アウト信号なしにセレクト・アウト信号及びリ
クエスト・イン信号が生ずることによってアンド・ゲー
ト62から出力信号が生ずるときにも計数器56はリセ
ットされる。
ドレス・アウト信号なしにセレクト・アウト信号及びリ
クエスト・イン信号が生ずることによってアンド・ゲー
ト62から出力信号が生ずるときにも計数器56はリセ
ットされる。
しかしながら、状況が変わらず装置使用中信号が絶え間
なく出されるときには、計数器はカウント64に達して
出力信号を生じ、フリツプフロツプ66をセットする。
なく出されるときには、計数器はカウント64に達して
出力信号を生じ、フリツプフロツプ66をセットする。
従って、全ての選択されたチャネルに対して、これ以降
のチャネルからの要求を拒絶することを意味する制御装
置使用中応答を与える。
のチャネルからの要求を拒絶することを意味する制御装
置使用中応答を与える。
この様な拒絶状態を維持する時間は計時回路68によっ
て定められる。
て定められる。
その時間は、あまり長い必要はなく、例えば、低速のC
PUの2つあるいは3動作サイクルにわたる程度でよい
。
PUの2つあるいは3動作サイクルにわたる程度でよい
。
定められた時間の終りに、計時回路68は出力信号を生
じ、それは計数器56をリセットすると共にフリツブフ
ロツブ66と計時回路68自体をリセットする。
じ、それは計数器56をリセットすると共にフリツブフ
ロツブ66と計時回路68自体をリセットする。
従って、デッドロック状態が依然として維持されるとき
、デッドロック検出制御回路40は今述べた動作を繰り
返えすことができる。
、デッドロック検出制御回路40は今述べた動作を繰り
返えすことができる。
制御装置によって要求される低速のCPUとの接続が行
なかれるときには、デッドロック検出制御回路40はリ
セットされる。
なかれるときには、デッドロック検出制御回路40はリ
セットされる。
以上の様に本発明の方法は、特定の使用中応答が別の動
作若しくは応答によって中断されることなく所定回数k
続いて出されるデッドロック状態を検出するために、制
御装置自体の応答を監祝することに基づいている。
作若しくは応答によって中断されることなく所定回数k
続いて出されるデッドロック状態を検出するために、制
御装置自体の応答を監祝することに基づいている。
デッドロック状態が検出されると、所与のプログラム・
ステップを実行中の特定のCPUに対する再接続を可能
ならしめるに十分な所定時間Tの間、独立した動作が行
なわれる。
ステップを実行中の特定のCPUに対する再接続を可能
ならしめるに十分な所定時間Tの間、独立した動作が行
なわれる。
独立した動作は、内部タスク及び要求チャネルに対する
再接続を完了することを含み、更に、もし適当ならば、
関連している他のCPUからの要求による妨害を防ぐた
めに、同時に使用中信号を出すことをも含む。
再接続を完了することを含み、更に、もし適当ならば、
関連している他のCPUからの要求による妨害を防ぐた
めに、同時に使用中信号を出すことをも含む。
独立した動作は、所定時間Tを越えて行なわれることは
なく、又、再接続がなされた後も行なわれない。
なく、又、再接続がなされた後も行なわれない。
デッドロック状態でなくなれば、制御装置はCPUに対
するスレーブ関係を維持するように復帰する。
するスレーブ関係を維持するように復帰する。
再接続が行なわれないときには、デッドロック状態の検
出及びその後の動作が繰り返される。
出及びその後の動作が繰り返される。
第1図は本発明を実施するのに適したデータ処理システ
ムのブロック図、第2図は本発明に従って共用マルチデ
バイス制御装置に関連してデッドロック検出制御回路を
用いる構成のブロック図である。 10・・・・・・第1のCPU,12・・・・・・第2
のCPU,14,15,26,28,及び30・・・・
・・第1乃至第5のマルチデバイス制御装置、16・・
・・・・シングルデバイス制御装置、17・・・・・・
共用マルチデバイス制御装置、20・・・・・・共用ス
イッチ、22・・・・・I/O装置、32・・・・・・
統合制御装置、40・・・・・・デッドロック検出制御
回路、52・・・・・・デコーダ、56・・・・・・計
数器、66・・・・・・フリツプフロツプ、68・・・
・・・計時回路。
ムのブロック図、第2図は本発明に従って共用マルチデ
バイス制御装置に関連してデッドロック検出制御回路を
用いる構成のブロック図である。 10・・・・・・第1のCPU,12・・・・・・第2
のCPU,14,15,26,28,及び30・・・・
・・第1乃至第5のマルチデバイス制御装置、16・・
・・・・シングルデバイス制御装置、17・・・・・・
共用マルチデバイス制御装置、20・・・・・・共用ス
イッチ、22・・・・・I/O装置、32・・・・・・
統合制御装置、40・・・・・・デッドロック検出制御
回路、52・・・・・・デコーダ、56・・・・・・計
数器、66・・・・・・フリツプフロツプ、68・・・
・・・計時回路。
Claims (1)
- 【特許請求の範囲】 1 非同期的に動作する複数の処理装置によって複数の
周辺装置の制御のための制御装置が共用され、該制御装
置が任意の処理装置からのステータス要求に応じて自己
及び周辺装置のステータスを示す応答を返すようになっ
ており且つ周辺装置に割当てた所与の仕事の完了の際関
係する処理装置に対して再接続を行なわなければならな
い様な構成がなされており、且つ或る処理装置からステ
ータス要求が高速度で繰り返し出されることに応じて、
制御装置より装置使用中を示す応答信号を繰り返し出す
必要があるため、制御装置が他の処理装置への再接続を
することができなくなるデッドロック状態が起こりうる
データ処理システムにおいてこのデッドロック状態に対
処するための装置であって、 上記制御装置より装置使用中を示す応答信号が絶え間な
く所定回数出されることを検出するとき出力信号を生ず
る検出手段と、 上記検出手段の出力信号に応じて制御装置使用中を示す
信号を少なくとも1つの処理装置に対して送る信号発生
手段と、 上記検出手段及び信号発生手段に接続されていて、所定
時間を越えない範囲内で上記信号発生手段から上記制御
装置使用中を示す信号を生じさせる手段と、 を有し、上記制御装置使用中を示す信号が生じている間
に制御装置が所望の処理装置に対して再接続の要求を出
すことを可能ならしめるデッドロック回避装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/894,738 US4191997A (en) | 1978-04-10 | 1978-04-10 | Circuits and methods for multiple control in data processing systems |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS54134939A JPS54134939A (en) | 1979-10-19 |
JPS581452B2 true JPS581452B2 (ja) | 1983-01-11 |
Family
ID=25403472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP54033451A Expired JPS581452B2 (ja) | 1978-04-10 | 1979-03-23 | デツドロツク回避装置 |
Country Status (12)
Country | Link |
---|---|
US (1) | US4191997A (ja) |
JP (1) | JPS581452B2 (ja) |
AU (1) | AU518849B2 (ja) |
BR (1) | BR7902170A (ja) |
CA (1) | CA1102425A (ja) |
DE (1) | DE2911677C3 (ja) |
ES (1) | ES479374A1 (ja) |
FR (1) | FR2423002B1 (ja) |
GB (1) | GB2018478B (ja) |
IT (1) | IT1166704B (ja) |
NL (1) | NL7902668A (ja) |
SE (1) | SE435555B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60215370A (ja) * | 1984-04-11 | 1985-10-28 | 伊藤超短波株式会社 | 電位治療器 |
JPS60225577A (ja) * | 1984-04-25 | 1985-11-09 | 伊藤超短波株式会社 | 電位治療器 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4390943A (en) * | 1979-12-26 | 1983-06-28 | Honeywell Information Systems Inc. | Interface apparatus for data transfer through an input/output multiplexer from plural CPU subsystems to peripheral subsystems |
US4413317A (en) * | 1980-11-14 | 1983-11-01 | Sperry Corporation | Multiprocessor system with cache/disk subsystem with status routing for plural disk drives |
US4400773A (en) * | 1980-12-31 | 1983-08-23 | International Business Machines Corp. | Independent handling of I/O interrupt requests and associated status information transfers |
US4525806A (en) * | 1981-03-26 | 1985-06-25 | International Business Machines Corporation | Printer sharing by plurality of display units in word processing system |
US4445197A (en) * | 1981-10-27 | 1984-04-24 | International Business Machines Corporation | Weak synchronization and scheduling among concurrent asynchronous processors |
US4580232A (en) * | 1982-09-21 | 1986-04-01 | Xerox Corporation | Single point microprocessor reset |
JPH0670787B2 (ja) * | 1984-06-29 | 1994-09-07 | 富士通株式会社 | 処理装置間指令転送制御システム |
US5062076A (en) * | 1985-07-12 | 1991-10-29 | Wang Laboratories, Inc. | Cascadable, high-bandwidth, multi-channel image transfer controller |
US5701512A (en) * | 1986-03-11 | 1997-12-23 | Canon Kabushiki Kaisha | Data transmission control apparatus for system with input/output units used in common by several CPU's |
JPS62256154A (ja) * | 1986-04-30 | 1987-11-07 | Fujitsu Ltd | チヤネル・パス制御方式 |
JPH0752420B2 (ja) * | 1986-09-10 | 1995-06-05 | 株式会社日立製作所 | 入出力装置アドレス方式 |
US4812968A (en) * | 1986-11-12 | 1989-03-14 | International Business Machines Corp. | Method for controlling processor access to input/output devices |
US5140680A (en) * | 1988-04-13 | 1992-08-18 | Rockwell International Corporation | Method and apparatus for self-timed digital data transfer and bus arbitration |
JPH02100755A (ja) * | 1988-10-08 | 1990-04-12 | Nec Corp | 情報処理装置 |
US5253347A (en) * | 1988-11-18 | 1993-10-12 | Bull Hn Information Systems Italia S.P.A. | Centralized arbitration system using the status of target resources to selectively mask requests from master units |
US5303351A (en) * | 1988-12-30 | 1994-04-12 | International Business Machines Corporation | Error recovery in a multiple 170 channel computer system |
EP0375909B1 (en) * | 1988-12-30 | 1995-08-30 | International Business Machines Corporation | Multiple I/O channel |
US5367695A (en) * | 1991-09-27 | 1994-11-22 | Sun Microsystems, Inc. | Bus-to-bus interface for preventing data incoherence in a multiple processor computer system |
JP3474646B2 (ja) * | 1994-09-01 | 2003-12-08 | 富士通株式会社 | 入出力制御装置及び入出力制御方法 |
CA2154509A1 (en) * | 1994-10-03 | 1996-04-04 | Paul Peixoto Carreiro | Method and apparatus for automatic frame transmission on a channel to controller interface in a data processing system |
US5784624A (en) * | 1996-01-31 | 1998-07-21 | Dallas Semiconductor Corp | Multiple asynchronous event arbitrator |
JP4847036B2 (ja) * | 2005-03-30 | 2011-12-28 | キヤノン株式会社 | バスアクセスを調停する制御装置およびデータ処理装置の制御方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5152250A (ja) * | 1974-11-01 | 1976-05-08 | Hitachi Ltd | Basukanketsugosochi |
JPS51109741A (ja) * | 1975-03-22 | 1976-09-28 | Hitachi Ltd |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3336582A (en) * | 1964-09-01 | 1967-08-15 | Ibm | Interlocked communication system |
FR2186155A5 (ja) * | 1972-05-01 | 1974-01-04 | Ibm | |
US3840859A (en) * | 1972-07-03 | 1974-10-08 | Burroughs Corp | Method and apparatus for regulating input/output traffic of a data processing system |
US3828326A (en) * | 1973-04-18 | 1974-08-06 | Ibm | Adapter for interfacing a programmable controller to a data processor channel |
US4079448A (en) * | 1975-04-07 | 1978-03-14 | Compagnie Honeywell Bull | Apparatus for synchronizing tasks on peripheral devices |
-
1978
- 1978-04-10 US US05/894,738 patent/US4191997A/en not_active Expired - Lifetime
-
1979
- 1979-02-01 CA CA320,694A patent/CA1102425A/en not_active Expired
- 1979-03-02 GB GB7907467A patent/GB2018478B/en not_active Expired
- 1979-03-08 FR FR7906429A patent/FR2423002B1/fr not_active Expired
- 1979-03-16 IT IT21035/79A patent/IT1166704B/it active
- 1979-03-23 JP JP54033451A patent/JPS581452B2/ja not_active Expired
- 1979-03-24 DE DE2911677A patent/DE2911677C3/de not_active Expired
- 1979-03-30 AU AU45639/79A patent/AU518849B2/en not_active Ceased
- 1979-04-05 NL NL7902668A patent/NL7902668A/xx not_active Application Discontinuation
- 1979-04-06 ES ES479374A patent/ES479374A1/es not_active Expired
- 1979-04-09 SE SE7903133A patent/SE435555B/sv unknown
- 1979-04-09 BR BR7902170A patent/BR7902170A/pt unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5152250A (ja) * | 1974-11-01 | 1976-05-08 | Hitachi Ltd | Basukanketsugosochi |
JPS51109741A (ja) * | 1975-03-22 | 1976-09-28 | Hitachi Ltd |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60215370A (ja) * | 1984-04-11 | 1985-10-28 | 伊藤超短波株式会社 | 電位治療器 |
JPS60225577A (ja) * | 1984-04-25 | 1985-11-09 | 伊藤超短波株式会社 | 電位治療器 |
Also Published As
Publication number | Publication date |
---|---|
DE2911677B2 (de) | 1980-12-18 |
CA1102425A (en) | 1981-06-02 |
FR2423002A1 (fr) | 1979-11-09 |
GB2018478A (en) | 1979-10-17 |
ES479374A1 (es) | 1979-07-16 |
NL7902668A (nl) | 1979-10-12 |
US4191997A (en) | 1980-03-04 |
FR2423002B1 (fr) | 1985-11-29 |
SE435555B (sv) | 1984-10-01 |
DE2911677A1 (de) | 1979-10-11 |
SE7903133L (sv) | 1979-10-11 |
AU518849B2 (en) | 1981-10-22 |
JPS54134939A (en) | 1979-10-19 |
IT1166704B (it) | 1987-05-06 |
BR7902170A (pt) | 1979-12-04 |
GB2018478B (en) | 1982-03-10 |
DE2911677C3 (de) | 1981-08-06 |
AU4563979A (en) | 1979-10-18 |
IT7921035A0 (it) | 1979-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS581452B2 (ja) | デツドロツク回避装置 | |
US4602327A (en) | Bus master capable of relinquishing bus on request and retrying bus cycle | |
EP0343770B1 (en) | Multi-bus microcomputer system with bus arbitration | |
JPS63204350A (ja) | データ処理システム | |
KR930002791B1 (ko) | 펜디드 버스에서의 인터럽트 서비스노드 | |
WO1982001430A1 (en) | Improved system for interrupt arbitration | |
JPH04312160A (ja) | マルチプロセッサシステムおよびそのメッセージ送受信制御装置 | |
US4583160A (en) | Priority control apparatus for a bus in a bus control system having input/output devices | |
US4237533A (en) | Preventing initial program load failures | |
US3828326A (en) | Adapter for interfacing a programmable controller to a data processor channel | |
JPH04230559A (ja) | アービトレーション・システム | |
JPH0635849A (ja) | バスの使用を制御する方法及びコンピュータ・システム | |
JPS6237428B2 (ja) | ||
JP3014494B2 (ja) | デュアルポートディスク制御装置 | |
KR960014829B1 (ko) | 버스 리퀘스터 운용방법 | |
EP0481830A2 (en) | Method and apparatus for microprocessor access arbitration | |
JPH02115962A (ja) | コンピュータ装置とその周辺装置との接続方式 | |
JPH06266657A (ja) | 情報処理装置 | |
KR100243868B1 (ko) | 주 전산기에서의 중재로직 방법 | |
JPH02291039A (ja) | メモリ制御システム | |
JPH11184827A (ja) | マスタスレーブ装置 | |
CN111143141A (zh) | 一种状态机设置方法及*** | |
JP3661609B2 (ja) | Scsiインタフェース制御装置およびそのセレクション監視方法 | |
JPH0724044B2 (ja) | Dmaアクセスが可能なコンピユータ・システム | |
JPH1139266A (ja) | マルチプロセッサ装置 |