JPH0414370B2 - - Google Patents

Info

Publication number
JPH0414370B2
JPH0414370B2 JP59137061A JP13706184A JPH0414370B2 JP H0414370 B2 JPH0414370 B2 JP H0414370B2 JP 59137061 A JP59137061 A JP 59137061A JP 13706184 A JP13706184 A JP 13706184A JP H0414370 B2 JPH0414370 B2 JP H0414370B2
Authority
JP
Japan
Prior art keywords
signal
lock
memory
bus
devices
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP59137061A
Other languages
English (en)
Other versions
JPS6039266A (ja
Inventor
Ei Boodoroo Danieru
Emu Sandeni Jeemuzu
Aaru Seirasu Edowaado
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.)
HANEIUERU INFUOOMEISHON SHISUTEMUSU Inc
Original Assignee
HANEIUERU INFUOOMEISHON SHISUTEMUSU Inc
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 HANEIUERU INFUOOMEISHON SHISUTEMUSU Inc filed Critical HANEIUERU INFUOOMEISHON SHISUTEMUSU Inc
Publication of JPS6039266A publication Critical patent/JPS6039266A/ja
Publication of JPH0414370B2 publication Critical patent/JPH0414370B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)
  • Small-Scale Networks (AREA)
  • Arc Welding Control (AREA)
  • Numerical Control (AREA)
  • Hardware Redundancy (AREA)
  • Lock And Its Accessories (AREA)

Description

【発明の詳細な説明】
本願と同じ譲受人に譲渡された下記の米国特許
出願は関連する主題を有し、本文に参考のため引
用される。これらの出願に開示されるシステムお
よび方法のある部分は弊発明ではなく、下記の米
国特許出願における特許請求の範囲により定義さ
れる如き下記の発明者達の発明である。即ち、
【表】 する最下位の優先順位
E.R.Salas
レベルの優先順位管理
機構
【表】 される非同期型多重並
列アクセス・メモリー
本発明は、データ処理システムに関し、特にあ
る共有資源の一人又は複数のユーザが共有資源が
ロツクされる期間中共有資源の独占使用を許され
るロツク操作に関する。 1つの共有資源に対して複数の装置が接続され
るシステムにおいては、ユーザの装置の1つがあ
る種類の操作のため共有資源の独占使用を獲得す
ることができるある秩序システムが提供されなけ
ればならない。独占使用を必要とするある操作を
行なう装置の1つによるこの独占使用期間中、他
の装置もまた共有資源の独占使用を要するある操
作の実行を要求する。この問題は、このような装
置が例えば1つ以上のデータ・プロセツサ、1つ
以上の記憶装置、および磁気テープ記憶装置、デ
イスク記憶装置、カード読取り装置等の如き種々
の形式の周辺機器を含む場合には更に複雑とな
る。 このようなシステムを連結するための色々な方
法および装置が従来技術において公知である。こ
のような従来技術のシステムは、共通のデータ経
路を有するものから種々の装置間の特殊な経路を
有するものまでの範囲にわたる。このようなシス
テムはまた、バス形式と組合わされる同期または
非同期の動作のための能力を含むことができる。
このようなあるシステムは、これらが接続される
かあるいは操作される方法の如何を問わず、例え
ばデータ・プロセツサ以外の諸装置間の転送が生
じ得る場合でも、バス上のこのようなデータ転送
を制御するためデータ・プロセツサを必要とす
る。 かかる構成の1つは、米国特許第4000485号
「共有資源のロツク操作を行なうデータ処理シス
テム」において示されている。この特許は、共有
資源が、その上で装置コントローラおよび中央処
理装置に関する全ての転送が行なわれる共通のバ
スに対して接続された主記憶装置であるデータ処
理システムについて記載している。このシステム
においては、もし中央処理装置が主記憶装置にお
ける記憶場所の内容について読出し/修正/書込
み操作を行なうことを要求するならば、データ処
理システムは読出され更新されるべき場所を含む
主記憶装置を最初にロツクして、最初に記憶場所
の読出しを行ない次いでこれを書戻すために要す
る多重共通バス・サイクルの間、最初のロツク操
作が完了するまで、別のロツク操作を行なうこと
ができる別の中央処理システムまたは装置コント
ローラなしに割込みされずにその実施が可能であ
るようにする。このシステムにおいては、共通バ
スが非同期バス(共通バスが既に使用中でなけれ
ば、如何なる時でもこの共通バス上の転送を要求
する任意の装置がこのバスの使用を非同期的に要
求することができる)であるが、共有資源と関連
するロツク機構が共有資源が最初の要求側により
ロツク中であり、しかも2番目のロツク要求がそ
の共有資源に関するロツク操作を行なうことを要
求する第2の要求側から非同期的に行なわれるよ
うな場合の取扱いができることを必要としないよ
うな優先順位の管理機構が存在する。 二重ポート・メモリーの開発により、複数のユ
ーザが共有資源に対するロツク操作の実施を同時
に要求することが可能となつた。例えば、もし1
つのポートが装置コントローラを主記憶装置に対
して接続する共通バスに対して接続され、また2
番目のポートが中央処理装置に接続されるなら
ば、装置コントローラは、中央処理装置がロツク
操作の実施を要求すると同時に、主記憶装置に対
するロツク操作の実施を試みることが可能とな
る。従つて、必要なことは、共有資源のロツクま
たはアンロツクのため複数の要求側からの競合す
る非同期の要求の取扱いが可能である共有資源の
ためのロツク機構である。 従つて、本発明の一目的は、ある共有資源をロ
ツクすることの複数の非同期の要求を解決するこ
とができる共有資源のための改善されたロツク機
構の提供にある。 本発明の別の目的は、共有資源のための低コス
トのロツク機構の提供にある。 本発明については、特に頭書の特許請求の範囲
において記載されている。本発明の上記および他
の目的および利点については、図面に関して以下
の記述を照合することにより理解することができ
よう。 本発明の上記および他の目的は、複数の装置の
任意の2つの間で情報を転送するための共通バス
により接続された複数の装置を含む、データ処理
システム内のロツク操作ロジツクの提供によつて
達成される。前記複数の装置とは少なくとも第1
と第2の装置を含み、第1の装置は少なくとも第
2の装置および第3の装置により共有することが
できる資源であり、この場合第2の装置と第3の
装置は相互に非同期的に動作し、その両者は第1
の装置の割込みされない使用を要求することがで
きる。第1の装置には、第2の装置または複数の
装置の任意の他の装置からのロツク信号を記憶す
るための第1の記憶装置が含まれ、このロツク信
号はロツク信号を発する第2または他の装置が第
1の装置に対する割込みされないアクセスを要求
することを表示する。第3の装置が第1の装置に
対する割込みされないアクセスを要求することの
表示を記憶するための第2の記憶装置が第1の装
置に設けられる。第2の装置がロツク信号を提供
する時第2の記憶装置の表示を記憶する第3の記
憶装置が設けられている。第1の装置には、第2
の装置が共有装置に対して割込みされないアクセ
スを要求する時、第1の記憶装置または第3の記
憶装置のいずれも共有資源に対する割込みされな
いアクセスが要求されたことを表示しないなら
ば、第1の記憶装置および第3の記憶装置の表示
に応答して第2の装置に対して肯定応答を行なう
ロジツクが設けられている。この同じロジツクは
また、第2の装置がロツク信号を生じる時、第1
の記憶装置または第3の記憶装置のいずれかが共
有資源に対する割込みされないアクセスが要求さ
れたことを表示するならば、第2の装置に対して
否定応答を生じる。共通バス上の複数の装置のど
れかに対して肯定応答が生成される時はいつでも
第1の記憶装置におけるロツク信号の状態を記憶
するロジツクもまた設けられている。第1の装置
は、共通バス上の複数の装置のいずれかにより与
えられたアンロツク信号に応答して肯定応答が第
1の装置により生成されるならば第1の記憶装置
がリセツトされるように、アンロツク信号に対し
て応答する別のロジツクも含まれている。複数の
装置の1つの装置が共有装置に対する割込みされ
ないアクセスを要求することを第1の記憶装置が
表示するならば第3の装置が第1の装置に対する
アクセスを行なうことを禁止するロジツクもまた
設けられている。一旦第2の装置が共有装置に対
する割込みされないアクセスを要求する操作を完
了すると第2の記憶装置をリセツトするための別
の装置が設けられている。 本発明の方法が実施される方法、および本発明
の装置が構成される方法、および其作用モードに
ついては、同じ番号がいくつかの図面における類
似の要素に付される図面と共に以下の詳細な記述
を照合すれば最もよく理解がなされよう。 (ロツク操作ロジツクを含むデータ処理システ
ム) 第1図は、CPU/メモリー・ボード100と、
メモリー・モジユール1 101と、メモリー・
モジユール2 102と、I/O装置105が取
付けられた第1のI/O制御装置103と、I/
O装置106が取付けられた第2のI/O制御装
置104と、共通バス107とからなる望ましい
実施態様のデータ処理システムを示している。第
1図においては、種々の構成要素を接続する比較
的細い線は制御回線であり、構成要素を接続する
比較的太い線はデータ/アドレス回線である。 CPU/メモリー・ボード100は、共通バス
107と接続する単一の印刷回路ボードである。
CPU/メモリー・ボード100は、CPUロジツ
ク108とメモリー制御ロジツク109の両方を
含んでいる。CPU/メモリー・ボード100内
には主記憶装置は存在しない。データおよびソフ
トウエア命令を保持するための主記憶装置が、メ
モリー・モジユール1 101およびメモリー・
モジユール2 102の如き1つ以上のメモリ
ー・モジユールをCPU/メモリー・ボード10
0に対して接続することにより提供される。
CPUまたはI/O制御装置のいずれかからのも
のであり得るメモリー・モジユー1およびメモリ
ー・モジユール2に含まれる主記憶装置をアクセ
スする全ての要求は、メモリー制御ロジツク10
9を介する。メモリー制御ロジツク109は二重
のポートが設けられる。1つのポートは、メモリ
ーの要求およびデータの転送がI/O制御装置1
03またはI/O制御装置104のいずれかによ
り共通バス107を介して行なうことができるよ
うに共通バス107に対して接続する。データま
たはソフトウエア命令を求めるCPUロジツク1
08からのメモリー要求は、通常は、共通バス1
07を介することなくメモリー制御ロジツク10
9の第2のポートを介してCPUロジツク108
間で直接行なわれる。 望ましい実施態様の範囲内では、メモリー・モ
ジユール1 101および102の各々が、例え
ば、主記憶装置の256K(1K=1024)ワードを保
有することができる。この望ましい実施態様にお
いては、メモリーの各ワードがこれもまた2つの
8ビツト・バイトとしてアドレス指定可能なデー
タの16ビツトを含む。望ましい実施態様において
は、このメモリーは各記憶場所が実際に22ビツト
の情報を含むメモリー内のMOS半導体チツプか
らなつている。前記ワードにおけるデータの16ビ
ツトに対しては16のビツトが使用され、エラーの
検出および訂正(EDAC)に対しては6ビツトが
使用される。各メモリー・モジユールは、各々
64Kビツトの88個のMOSメモリー・チツプを含
む個々の物理的な印刷回路ボードである。メモリ
ー制御ロジツク109は、ロツク操作ロジツク1
10と、優先順位管理装置111と、リフレツシ
ユ・ロジツク112からなつている。更に、メモ
リー制御ロジツク109は、タイミング、エラー
検出兼訂正ロジツクおよび第1図には示されない
チツプ・アドレス指定ロジツクを保有する。 ロツク操作ロジツク110は、CPUまたは
I/O制御装置の一方の指令の下に、主記憶装置
がアンロツク状態になるまでI/O制御装置また
はCPUの一方により行なわれる別のロツク操作
を行なわないように主記憶装置のロツクを行なう
ために設けられる。優先順位管理ロジツク111
は、主記憶装置に対するアクセスの競合する要求
を解決するために設けられる。CPUロジツク1
08から、または共通バス107を介してI/O
制御装置103または104から、あるいはまた
リフレツシユ・ロジツク112から生じる主記憶
装置アクセス要求間で優先順位が解決されなけれ
ばならない。 優先順位管理ロジツク111は、主記憶装置が
使用可能となる毎に、アクセス要求の3つの全て
のソースを検査してリフレツシユ・ロジツク11
2からの要求に対して最初に主記憶装置を割当て
る解決サイクルが生じるように構成されている。
もしリフレシユ要求が存在しなければ、これは主
記憶装置をI/O制御装置から生じた共通バス1
07からの要求に対して割当てを行なうことにな
る。もしリフレツシユおよびバス要求のいずれも
存在しない場合には、もしCPUロジツク108
が要求中であるならばこれに対して主記憶装置の
割当てを行なうことになる。優先順位管理ロジツ
ク111の作用については、参考のため本文に引
用される米国特許出願第449703号「最も短い論理
経路を有する最下位の優先順位を有する優先順位
管理機構」において更に詳細に記載されている。
リフレツシユ・ロジツク112は、メモリー・モ
ジユール1 101およびメモリー・モジユール
2 102の揮発性を有するMOSメモリー・チ
ツプに記憶されるデータのリフレツシユ操作を周
期的に行なうために設けられる。 (バス要求および応答サイクル) 望ましい実施態様のシステムの共通バス107
は、システムにおける2つの装置間に通信経路を
提供する。この共通バス107は構造において非
同期であり、バスに対して接続される色々な速度
の装置が同じシステムにおいて有効に作動するこ
とを可能にする。本発明のバスの構成は、記憶の
転送、割込み、データと状態と指令の転送を含む
通信動作を可能にする。このようなシステムのバ
スおよびインターフエース・ロジツクのこれ以上
説明については、参考のため本文に引用される
1976年11月23日発行の米国特許第3993981号およ
び1980年11月25日発行の同第4236203号を参照さ
れたい。 共通バス107はどの2つの装置のいづれでも
共有される信号経路を経て任意の時点に相互に通
信することを可能にする。通信を欲するどの装置
でも1つのバス・サイクルを要求する。このバ
ス・サイクルが許与されると、前記装置はマスタ
ーとなつてシステムにおける他のどの装置でもス
レーブとしてアドレス指定することができる。あ
る形式のバスの交換は、1つの応答サイクル(例
えば、単一の取出しメモリー読出し)を必要とす
る。応答サイクルが要求される場合には、要求側
はマスターの役割をとり、応答が要求される旨を
表示し、スレーブに対してそれ自体を識別する。
要求された情報が使用可能状態になると、(スレ
ーブの応答時間に従つて)スレーブがマスターの
役割をとつて要求側の装置に対する転送を開始す
る。これにより、この場合に2つのバス・サイク
ルを要した単一の取出し交換動作を完了する。バ
スに対するこれら2つのサイクル(要求サイクル
と応答サイクル)間の時間は、これらの2つの装
置に関与しない他のシステムの通信のため使用す
ることもできる。 (バス信号) マスターはバス上の他のどんな装置でもスレー
ブとしてアドレス指定することができる。このマ
スターは、アドレス・リード上にスレーブ・アド
レスを置くことによりこれを行なう。メモリー照
合信号(BSMREF−)と呼ばれる付随する制御
リードの状態に従つて、2つの解釈の一方をとる
ことができる例えば24本のアドレス・リードが存
在し得る。もしメモリーの照合信号が2進数0で
あるならば、第2図のフオーマツトは、このよう
なリードの24番目が最下位ビツトであるアドレ
ス・リードに妥当する。本明細書において用いら
れる如き用語「2進数0」および「2進数1」と
は、それぞれ電気的信号のローおよびハイの状態
を表わすために用いられる。もしメモリー照合信
号が2進数1であれば、第3図に示されるような
24ビツトに対するフオーマツトが妥当する。要約
すれば、メモリーがアドレス指定されつつある
時、バスは2の24乗バイトまでを直接メモリーに
おいてアドレス指定することを可能にする。装置
が制御情報、データまたは割込みを送りつつある
時、この装置は相互にチヤネル番号によつてアド
レス指定する。このチヤネル番号は、2の10乗ま
でのチヤネルがバスによりアドレス指定されるこ
とを可能にする。チヤネル番号と共に、2の6乗
までの可能な機能のどれをこの転送が示唆するか
を指示する16ビツトの機能コードが送られる。 あるマスターはスレーブから1つの応答サイク
ルを要求する時、BSWRIT−で示される制御リ
ードの1つの状態(読出し指令)によつてスレー
ブに対しその旨を表示する(その他の状態は応答
即ち書込み指令を要求しない)。この場合、マス
ターはチヤネル番号によつて自らの識別をスレー
ブに対して行なう。バス・アドレス・リードとは
対照的に、データ・リードは、スレーブから応答
を要求される時マスターの識別を表示するため第
4図のフオーマツトに従つて符号化される。この
応答サイクルは、非メモリー照合転送により要求
側に対して向けられる。2番目の半分のバス・サ
イクル(BSSHBC−)として表わされる制御リ
ードは、これが待機サイクル(別の装置からの不
当な転送とは対照的に)であることを表示するた
め付勢される。マスターはスレーブから二重取出
し操作を要求する時、BSDBPL−で表わされる
制御リードの1つの状態によりスレーブに対して
この旨表示する(その他の状態は二重取出しを要
求しない、即ち単一取出し操作を要求)。スレー
ブがマスターの要求に応答する時、この同じ制御
リードの1つの状態(BSDBPL−)は、この応
答サイクルが2つの応答サイクルの最初の応答サ
イクルである旨を要求側の装置に対して表示する
ため使用される(その他の状態はこれが二重取出
し操作の最後の応答サイクルであることを表示す
る)。 分布された均衡状態を破る回路網は、バス・サ
イクルを許与しかつバスの使用に対する同時の要
求を解決する機能を提供する。ほとんどの場合に
バスにおける物理的位置に基づいて優先順位が与
えられるが、最上位の優先順位はそのバスにおけ
る最初の装置に対して与えられる。均衡状態を破
る機能を行なうロジツクはバスに対して接続され
た全ての装置間に分布され、共に参考のため本文
に引用される米国特許第4030075号において詳細
に記載されており、その改善については米国特許
第4096569号において記載されている。典型的な
システムにおいては、メモリーは最も高い優先順
位が与えられ、中央処理装置は最も低い優先順位
が与えられ、他の装置はそれらの性能要件に基づ
いて位置が決められる。第1図に示される望まし
い実施態様のシステムにおいては、CPUのロジ
ツクおよびメモリー制御装置の双方が、共通バス
の高い優先順位の端部に配置される単一の印刷回
路ボード上にあり、優先順位ロジツクは、参考の
ため本文に引用される米国特許出願第453406号
「低い優先順位の装置を高い優先順位位置に常駐
することを可能にする分散された優先順位回路網
ロジツク」に記載される如くCPUに最も低い優
先順位を割当てることを可能にするよう改善され
ている。 このように、第1図によれば、本発明の典型的
なシステムはCPUと、メモリーと、1つ以上の
I/O装置および制御装置と接続された多重回線
の共通バス107を含んでいる。このようなメモ
リー制御ロジツク109は最も高い優先順位を有
し、CPUロジツク108は最も低い優先順位を
有し、I/O制御装置103,104は中間の優
先順位を有する。更に、このような装置の各々は
そのチヤネル番号またはメモリー・アドレスを識
別するためのアドレス・ロジツクを含んでいる。
典型的な基本装置に対するアドレス・ロジツクに
ついても、米国特許第4030075号において論述さ
れている。 メモリー・アドレスにより識別されるメモリー
形式の処理作用装置を除いて、ある特定のシステ
ムにおける各終端点毎に1つのチヤネル番号が付
される。1つのチヤネル番号はこのような各装置
に対して割当てられている。全二重方式の装置な
らびに半二重方式の装置は2つのチヤネル番号を
使用する。出力のみまたは入力のみの装置は各々
唯1つのチヤネル番号を使用する。チヤネル番号
は容易に変更可能であり、従つて1つ以上の16段
階の回転スイツチ(つまみ型スイツチ)は装置の
アドレスの表示または設定のためバスと接続され
る如き各装置毎に使用することができる。このよ
うに、あるシステムが構成されると、チヤネル番
号はこの特定のシステムに対して適当なバスと接
続された特定の装置に対して付すことができる。
多重入出力(I/O)ポートを備えた装置は、一
般に連続するチヤネル番号のブロツクを必要とす
る。一例として、4つのポートの装置は1つのチ
ヤネル番号の上位の7ビツトを割当てるため回転
スイツチを使用し、ポート番号の規定および出力
ポートからの入力ポートの識別のためその下位の
3ビツトを使用することができる。スレーブ装置
のチヤネル番号は、第3図に示されるように全て
の非記憶転送のためのアドレス・バス上に示され
る。各装置は、この番号をそれ自体の内部に記憶
された(回転スイツチにより内部に格納された)
番号と比較する。比較を行なう装置は定義により
スレーブであり、このサイクルに対し応答したけ
ればならない。一般に、1つのシステムにおける
2つの点が同じチヤネル番号を割当てられること
はない。第3図に示されるように、ある特定のバ
ス即ちI/O機能は、非記憶転送のためのバスの
アドレス・リードのビツト18乃至23により示され
る如く実施することができる。機能コードは出力
または入力の操作を指示することができる。全て
の奇数の機能コードは出力転送(書込み)を表わ
すが、全ての偶数の機能コード入力転送要求(読
出し)を表わす。例えば、00の機能コード(基底
数16)は単一の取出しメモリー読出しを表わし、
20の機能コード(基底数16)は二重取出し読出し
操作を表わす。中央処理装置は、ある入出力指令
に対する6ビツトの機能コードのフイールドの最
下位ビツト23を検査し、1つのバス・リードを用
いて方向を表わす。 色々な出力および入力機能がある。出力機能は
1つは、これによりあるデータ量例えば16ビツト
がバスからチヤネルに対してロードされる指令で
ある。個々のデータ・ビツトの意味は構成装置に
特有のものであるが、データ量は特定の構成装置
の機能に従つて記憶、送出、転送等が行なわれる
データを意味するため用いられる。このような出
力機能の別のものは、これにより例えば24ビツト
の量が1つのチヤネル・アドレス・レジスタ(図
示せず)に対してロードされる1つの指令であ
る。アドレスはメモリー・バイト・アドレスであ
り、チヤネルがデータの入出力を開始するメモリ
ー中の始動場所を意味する。他の色々な出力機能
には、ある特定の転送に対するチヤネルに割当て
られたメモリー・バツフアの大きさを規定する出
力範囲指令、その個々のビツトにより特定の応答
を生じる出力制御指令、ターミナル速度、カード
読出しモード等の如き機能を表示する指令である
印刷指令の出力形態、および第5図に示される如
きフオーマツトを有する例えばチヤネルに対する
16ビツトのワードをロードする指令である出力割
込み制御が含まれる。最初の10ビツト(ビツト0
乃至9)は中央処理装置のチヤネル番号を示し、
ビツト10乃至15は割込みレベルを表示する。割込
みと同時に、中央処理装置のチヤネル番号はアド
レス・バス上に戻されるが割込みレベルはデー
タ・バス上に戻される。入力機能は、この場合入
力データが装置からバス介して中央処理装置に対
して送られる点を除いて、出力機能と類似の諸機
能を含んでいる。 前に述べたように、特定の装置の識別番号がこ
のバスに接続される異なる形式の各装置に対して
割付けられている。この番号は、入力装置の識別
と呼ばれる入力機能指令に応答してバス上に提示
される。この番号は、第6図に示されたフオーマ
ツトにおいてデータ・バス上に置かれる。この番
号は、便利なように、装置を識別する13ビツト
(ビツト0乃至12)および必要に応じて装置のあ
る機能を識別する3ビツト(ビツト13乃至15)に
分割される。 (バスのタイミング) 第7図はバスのタイミング図を示し、これにつ
いては以下において更に詳細に論述する。しか
し、一般にはこのタイミングは下記の如くであ
る。タイミングは、1つのマスター装置からバス
に接続されるスレーブ装置に対する全ての転送に
適用する。転送を行なうことができる速度は、シ
ステムの形態に依存する。即ち、バスに対し接続
される装置が多くなりかつバスが長くなる程、バ
ス上の通信に要する時間が長くなる。一方、バス
上の装置の数が少なると応答時間が短くなる。従
つて、バスのタイミングは本質的に真に非同期の
ものである。1つのバス・サイクルを要求するマ
スターがバスの要求を行なう。信号BSREQT−
はバス上の全ての装置に対し共通であり、もし2
進数0ならば、少なくとも1つの装置が1つのバ
ス・サイクルを要求中であることを示す。1つの
バス・サイクルが許与されると、信号BSDCNN
−は2進数0となつて均衡を破る機能が完了して
1つの特定のマスターがこの時バスの使用権を握
ることを表わす。信号がBSDCNN−が2進数0
となる時、マスターはバスに対して送るべき情報
を与える。バス上の各装置が信号BSDCNN−か
ら内部ストローブ(BSDCND−)を生じる。こ
のストローブBSDCND−は、信号BSDCNN−
の2進数0の状態の受取りから例えば約60ナノ秒
間遅らされる。この遅れがスレーブにおいて完了
すると、バスの伝播時間の変動が勘定され、各ス
レーブ装置がそのアドレス(メモリー・アドレス
即ちチヤネル番号)を識別することができること
になる。アドレス指定されたスレーブは、この時
これらの応答の1つを受諾(ACK)、拒否
(NAK)または待機(WAIT)信号に、特に信
号BSACKR−、BSNAR−またはBSWAIT−に
することができる。この応答はバス上に送出する
ことができ、スレーブが要求された動作を識別し
た旨のマスターに対する信号として供する。この
時、制御回線は第7図に示される如きシーケンス
において2進数1の状態に戻る。このように、バ
スの初期接続手順は完全に非同期であり、各変換
は前の変換が受取られた時にのみ生じることにな
る。従つて、個々の装置はその内部の機能に応じ
てストローブ、ACK等の変換の間の異なる長さ
の時間を要する。もしバス上の装置が全く要求に
応答しない場合に生じ得る立ち往生の状態を阻止
するためバスの時間満了機能が存在する。 バス上に送られる情報は、下記の如く分解し得
る例えば50の信号即ちビツトを含み得る。即ち、
24のアドレス・ビツト、16のデータ・ビツト、5
制御ビツトおよび5保全ビツトからなる。これら
の色々の信号については以下に論述することにす
る。 (バスの優先順位) 共通バス要求の均衡状態の撤回機能は、ある場
所の優先順位システムに基づいてサービスおよび
バス・サイクルに対する異なる装置からの同時の
要求を解決する機能である。前に示したように、
例え共に物理的に共通バス107の一端部に位置
する場合でもメモリーが最も高い優先順位を有
し、中央処理装置は最も低い優先順位を有する。
他の装置はバスに沿つて各位置を占め、バスのメ
モリー端部に対するそれらの接近度に従つて順位
が進む優先順位を有する。この優先順位ロジツク
は、均衡を破る機能を行なうためバスに対して直
接接続された装置の各々に含まれる。このような
各装置の優先順位回路網は1つの許諾フリツプフ
ロツプを含んでいる。如何なる時点においても、
唯1つの特定の許諾フリツプフロツプがセツトで
き、この装置が定義によりこの特定のバス・サイ
クルにおけるマスターとなる。如何なる装置も何
時でもこれが1つのバス・サイクルを必要とし、
そのユーザ・フリツプフロツプをセツトすること
を決定することができる。従つて、如何なる時
も、それぞれ1つの将来のバス・サイクルを表わ
す多くのユーザ・フリツプフロツプがセツトされ
得る。更に、バス上の各装置は1つの要求フリツ
プフロツプを保有する。全ての装置が一体に考え
られる時は、要求のフリツプフロツプは1つの要
求側のレジスタと見做すことができる。どんな要
求が継続中であつても、唯1つの許与フリツプフ
ロツプだけをセツトするように機能する均衡撤回
回路網を提供するのはこのレジスタの出力であ
る。更に、もし継続中のユーザが存在しなけれ
ば、要求フリツプフロツプはセツトされることは
ない。最初にセツトするユーザ・フリツプフロツ
プがその要求フリツプフロツプをセツトさせるこ
とになる。これは更に、以下に説明するような短
い遅れの後、他の装置がその要求フリツプフロツ
プをセツトすることを禁止することになる。この
ため、実際に生じることは、全てのユーザ・フリ
ツプフロツプのスナツプ・シヨツトがある期間
(遅延期間)だけ行なわれることである。その結
果、多数の要求フリツプフロツプがその着信状態
に従つてこの遅延期間においてセツトすることが
できることになる。要求フリツプフロツプがその
出力を安定状態にさせるためには、各装置はこの
ような安定状態が生じることを確保するためにこ
のような遅れを含む。もしこれと関連する装置が
その要求フリツプフロツプをセツトさせかつ遅れ
の期間が経過して、これより高い優先順位の装置
がバス・サイクルを要求しなければ、ある特定の
許与フリツプフロツプがセツトされる。この時、
別の遅れ期間の後ストローブ信号が生成され、最
後にマスターがスレーブ装置から信号ACK、
NAKまたはWAITを受取る時に許与フリツプフ
ロツプがクリアされる。 前に示したように、3つの可能なスレーブの応
答、即ちACK、WAITまたはNAK信号が生じ
る。更に、全く応答が生じない第4の状態が存在
する。バス上の装置がこれに対してアドレス指定
された如き転送を認識しない場合には、応答が生
じることはない。この時時間満了機能が生じ、
NAK信号が生成されることによりバスをクリア
する。もしスレーブがマスターからのバス転送を
受諾することができかつこれを欲するならば、信
号ACKが生成される。応答WAITは、もしスレ
ーブが一時的に使用中であつてこの時転送を受諾
できなければ、このスレーブにより生成される。
信号WAITの受取りと同時に、マスターはこれ
に与えられた次のバス・サイクルにおいてこのサ
イクルの再試行を行ない、成功するまでこれを続
行する。中央処理装置がマスターである時スレー
ブからの応答WAITを生じるある条件とは、制
御装置がメモリーからの応答を待機中であるか、
あるいは制御装置が未だ前の入出力指令を処理し
ていなかつた場合、あるいは本発明の場合におい
て装置がマスターであつてメモリーのロツクを試
み、メモリーが既に別の制御装置または中央処理
装置により既にロツクされている場合である。ス
レーブにより生じる信号NAKは、これがこの時
転送の受諾ができないことを意味する。NAK信
号の受取りと同時に、マスター装置は直ちに再試
行は行なわないが、マスターの形式に従つて特定
の動作を行なうことになる。 一般に前に述べたように、バス上にはその初期
接続手順を行なう基本タイミング信号が存在す
る。前に論述した如き5つの信号は、2進数0の
時バス上の1つ以上の装置がバス・サイクルを要
求したことを表示するバス要求信号BSREQT−、
2進数0の時特定のマスターがバス転送中であり
かつある特定のスレーブにより使用されるためバ
ス上に情報を置いたことを表示する現在データ・
サイクル信号BSDCNN−、この信号を2進数0
にすることによりスレーブがこの転送を受諾する
ことを表示するマスターに対してスレーブにより
生成された信号であるACK信号BSACRK−、2
進数0である時マスターに対してスレーブがこの
転送を拒否することを表示するスレーブによりマ
スターに対し生成される信号であるNAK信号
BSNARK−、および2進数0である時スレーブ
が転送に対する決定を延期することをマスターに
対して表示するスレーブにより生成される信号で
あるWAIT信号BSWAIT−である。 更に前に示されたように、各バス・サイクルの
情報内容として転送される50もの情報信号が存在
し得る。これらの信号は、第7図のストローブ信
号BSDCND−の立上りにおいてスレーブによつ
て使用されるため有効である。以下の全ての論議
は例示であつて、ビツトの数は異なる機能に対し
て変更することができることを理解すべきであ
る。このため、データに対して与えられる16のリ
ード即ちビツトが存在し得る。アドレスに対して
は24のリードが与えられる。2進数0の時アドレ
ス・リードが1つのメモリー・アドレスを含むこ
とを示すメモリー照合信号BSMREF−に対して
1つのビツトが与えられる。メモリー照合信号が
2進数1である時、これは第3図に示されるよう
にアドレス・リードが1つのチヤネル・アドレス
と、1つの機能コードを有することを示す。ま
た、2進数0の時にその時の変換が1ワードが2
つのバイトからなるのが一般的なワード変換では
なくバイト変換であることを示すバイト信号
BSBYTE−もまた提供される。2進数1の時マ
スターに対して情報を供給するためスレーブが要
求されつつあることを示す書込み信号BSWRIT
−もまた存在する。別のバス転送がこの情報を提
供する。スレーブに対してこれが前に要求された
情報であることを示すためマスターにより使用さ
れる第2の半バス・サイクルBSSHBC−も更に
提供される。バス上の1対の装置が信号
BSWRIT−により示される如き読出し操作を開
始した時からメモリーから読出されたデータ
(BSSHBC−により示される)の転送を完了する
第2のサイクルまで、両方の装置はバス上の他の
全ての装置に対して使用中の状態となる。 (バスのロツク・メモリー操作) 色々なエラーおよびパリテイ信号に加えて、バ
ス上の50の情報信号中にはロツク信号もまた含ま
れる。このロツク信号(BSLOCK−)はロツク
操作を生じさせるため使用される。メモリー・ロ
ツク操作は、これにより1つの装置がバス上の他
の装置を伴うことなくメモリーの1つの1ワード
または複数のワード領域の読出しまたは書込みを
行なうことができ、中央処理装置が別のロツク操
作により操作に割込むことができる多重サイク
ル・バス転送である。この操作は、フラツグとし
て記憶場所を用いて、システム内の非同期な処理
装置間の通信を容易にするものである。ロツク操
作の効果は、ある種の操作に対するメモリー・サ
イクルの期間を超えて使用中の条件を延長するこ
とにある。最後のサイクルが完了する前にロツク
信号を開始するよう試みるバス上の他の装置は
NAK応答を受取ることになる。しかし、メモリ
ーは依然として他の(ロツク状態にない)メモリ
ー要求に対して応答することになる。 ロツク操作の一例は読出し/修正/書込みサイ
クルであり、その3つのバス・サイクルは下記の
如くである。最初のバス・サイクル(第9図にお
ける時点AからFまで)の間、アドレス・バスは
メモリー・アドレスを含み、データ・バスは発信
元のチヤネル番号を含み、信号BSWRIT−は応
答が要求されることを示す2進数0であり、信号
BSLOCK−はこれがロツク操作であることを示
す2進数0であり、更に信号BSMREF−は2進
数1である。前記の読出し/修正/書込み操作の
第2のバス・サイクル(第9図における時点G乃
至K)においては、アドレス・バスは発信元のチ
ヤネル番号を含み、データ・バスはメモリー・デ
ータを含み、信号BSSHBC−は読出し応答を示
す2進数0であり、信号BSMREF−は2進数1
である。第3のバス・サイクル(第9図における
時点L乃至P)においては、アドレス・バスはメ
モリー・アドレスを含み、データ・バスはメモリ
ー・データを含み、信号BSLOCK−は読出し/
修正/書込み操作の完了を示す2進数0であり、
信号BSMREF−は2進数0であり、信号
BSSHBC−は2進数0である。更に、信号
BSWRIT−は2進数1である。以上の論議は一
般論であり、個々の信号は第9図に示される如き
バス・サイクルの一部に対する説明の状態に置か
れるに過ぎないことを留意されたい。他の全ての
操作における如く、読出し/修正/書込み操作の
3つのバス・サイクル間のバス上の介入時間は、
転送に関与しない他の装置により使用することが
できる。更に、中央処理装置がメモリー・ロツク
操作を試みない限り、中央処理装置はメモリーの
アクセスが可能である。 他の制御信号に加えて、バス上には、通常は2
進数1であるがシステムのパワーアツプ・シーケ
ンスの間の如くマスターのクリア操作が行なわれ
る時は2進数0となるバス・クリア信号
BSMCLR−も与えられるのである。 (バスの優先順位の正味のタイミング) 第7図のタイミング図については、メモリーお
よび中央処理装置のアドレス論理回路に関して更
に詳細に論述しよう。 第7図のタイミング図においては、各バス・サ
イクル毎に3つの識別可能な部分、特に最も高い
優先順位を要求する装置がバスを獲得する期間
(7−A乃至7−C)、マスター装置が1つのスレ
ーブ装置を呼出す期間(7−C乃至7−E)、お
よびスレーブが応答する期間(7−E乃至7−
G)がある。バスが遊休状態にある時は、バス要
求信号BSREQT−が2進数1となる。このバス
要求信号の時点7−Aにおける負になる立上りは
優先順位の正味サイクルを開始する。システム内
で優先順位正味サイクルが(時点7−Bにおい
て)鎮静させられかつバスのマスター・ユーザが
選択させられた非同期の遅れが存在する。バス上
の次の信号はBSDCNN−、即ち現在データ・サ
イクル信号である。時点7−Cにおける信号
BSDCNN−の2進数0への変換は、バスの使用
がマスター装置に対して与えられたことを意味す
る。その後、バス操作の第2の位相は、マスター
が選択され、その時、共通バス107のデータ、
アドレスおよび制御リードに関する情報をマスタ
ーがそのように指定したスレーブ装置に対して自
由に転送することを意味する。 スレーブ装置は、ストローブ信号BSDCND−
の負になる立上りにおいて始まるバス操作の第3
の位相を開始する用意がある。このストローブ信
号は、バスの優先順位解決ロジツクにおいて第8
図の遅延回線824による信号BSDCNN−の負
になる立上りから、例えば60ナノ秒だけ遅れてい
る。時点7−Dにおける信号BSDCD−の負にな
る立上りの発生と同時に、この時スレーブ装置は
これがそのアドレスであるかどうか、またこれが
どのプロセツサの応答を生じさせるかの判定を開
始するため呼出されつつあるかどうかを調べるた
め検査することができる。一般に、この状態は確
認信号BSACKR−をしてスレーブ装置によつて
生成させるか、あるいは一般的ではない場合に
は、前に述べたように信号BSNAKR−または
BSWAIT−を生じ、更に全く応答が生じないこ
と(スレーブが存在しない場合)もある。マスタ
ー装置により受取られる時点7−Eにおける確認
信号の負になる立上りは、マスターの信号
BSDCNN−の時点7−Fにおいて2進数0にさ
せる。ストローブ信号は、第8図の遅延回線82
4により与えられる時点7−Fからの遅れである
時点7−Gにおける2進数1の状態に戻る。この
ように、バス操作の第3の位相においては、バス
上のデータおよびアドレスはスレーブ装置によつ
て記憶され、このバス・サイクルは遮断動作を開
始することになる。このサイクルの終り即ち信号
BSDCNN−が2進数1になる時、別の優先順位
の正味の解を動的に可能にする。 バス要求信号はこの時生成され、もし受取られ
なければ、これはバスが遊休状態に戻ることを意
味し、従つて信号BSREQT−は2進数1の状態
になる。もしバス要求信号がこの時存在する、即
ち示されるように2進数0であるならば、この状
態は非同期の優先順位の正味選択過程を開始し、
これに続いて信号BSDCNN−の別の負になる立
上りが図示の如く時点7−Iおよび7−Jにおい
て点線で示される如く可能状態となる。この優先
順位の正味解決過程は時点7−Hにおける確認信
号の正になる立上りにより待機するかもしくはト
リガーされる必要はないが、実際はその後ある装
置が1つのバス・サイクルを要求するならば、バ
スの遊休状態への変換の直後の時点7−Fにおい
てトリガーすることもできることに注目すべきで
ある。優先順位の正味の解決は信号BSDCNN−
の正になる立上りにより時点7−Fにおいてトリ
ガーされ得るが、信号BSDCNN−の第2の負に
なる立上りは、許与フリツプフロツプのセツテイ
ングに応答して、時点7−Hにおける確認信号の
正になる立上りを待機しなければならない。時点
7−Iにおける信号BSDCNN−の負になる立上
りは、優先順位の正味解決が時点7−Fにおいて
トリガーされかつこの解決が時点7−Hの前に生
じる場合を示している。時点7−Jにおける信号
BSDCNN−の負になる立上りは、優先順位の正
味の解決の前に肯定応答信号がクリアする場合を
示している。時点7−Lにおける信号BSDCNN
−の負になる立上りは、時点7−Fにおいてバス
要求が存在しない場合を示し、優先順位の正味の
会解決は時点7−Kにおける後のバス要求信号
BSREQT−によつてトリガーされる。この過程
は非同期状態で反復する。 (メモリー読出し操作) メモリー読出し操作については、例示として以
下に論述する。本例においては、I/O制御装置
がメモリーの読出し要求を行ない、この要求およ
び応答と関連する2つのバス・サイクルが検査さ
れることになる。最初のバス・サイクルの間、
I/O制御装置がマスターとなり、メモリーはス
レーブとなる。この最初のサイクルの間、I/O
制御装置はその優先順位回路ロジツクを用いてバ
スを割当て、メモリー制御装置が応答する。メモ
リー制御装置がマスターとなり中央処理装置がス
レーブとなる第2のバス・サイクルにおいては、
マスターとI/O制御装置がスレーブとなり、メ
モリーがその優先順位回路ロジツクを用いてバス
の割当てを行ない、I/O制御装置がバス・イン
ターフエース・ロジツクを用いて応答する。メモ
リー制御装置に対し接続されたメモリー・モジユ
ールメモリーの1つが実際に使用中であることを
表示するため制御装置使用中の信号が与えられ
る。もし1つのメモリー・モジユールが使用中で
あれば、信号WAITがメモリー要求を行なう
(要求側の)マスター装置に応答して生成される
ことになる。確認信号(ACK)は、メモリー制
御装置が使用中でない時生成されることになる。
信号WAITはメモリーが依然として使用中であ
るため非常に短い遅れが存在することを意味する
ことが再び判るであろう。 (メモリー・ロツク操作) ACK、NAKまたはWAITのどれが生成される
べきかを示す他の条件は、以前に示したように、
この操作に割込みができる他のどんなロツク装置
もなく、これによりある装置がある特定の記憶場
所をアクセスすることができる多重サイクル・バ
ス転送を含むロツク信号である。このロツク操作
の効果は、ある種の操作のための1つのサイクル
の終了以上にメモリー制御装置の使用中の条件を
延長することである。シーケンスの最終のサイク
ルの前にロツク操作を開始しようとする共通バス
107上の各装置は、NAK信号を受取ることに
なる。しかし、次に説明するように、メモリーは
依然としてメモリー要求に対して応答することに
なる。これらのバス・サイクル間の時間は転送に
関与しない他の装置によつて使用することができ
ることが判るであろう。ロツク操作は、主として
2つ以上の装置はまたは装置が例えばメモリーの
如き同じ資源を共有することが望ましい場合に使
用される。いくつのバス・サイクルおよびメモリ
ー・サイクルでも含み得るロツク操作は、共有さ
れた資源を確保した特定の装置または装置により
アンロツクされる。共有資源がロツクされる間、
その共有資源のアクセスを欲するバス上の他の装
置がロツク制御信号を提供するか、あるいは
CPUがロツク操作を実施しようとするならば、
かかる他の装置はロツクアウトされることにな
る。もしロツク操作が試みられなければ、CPU
またはかかる他の装置は例えば緊急の要求もしく
は手順を処理する如く共有資源に対してアクセス
することが可能である。ロツク信号を提示する装
置が共有資源に対するアクセスを獲得する前に、
共有資源はこれがロツク操作に関与するかどうか
を調べるため検査され、もしこの資源がロツク操
作に関与していなければ、この資源はロツク操作
を試みる装置によつてアクセスすることができ
る。 このように、ある資源を共有するためのロツク
操作は適当な制御信号即ちロツク制御信号を発す
る装置間で有効であるものであり、例えば情報の
テーブルが格納できるメモリーの一部を共有する
際に使用することができるものであることが判
る。更に、もしこれら装置の1つが共有された資
源における情報を変更することを欲するならば、
他の装置は部分的に変更された情報へのアクセス
を確保もできないようにロツクアウトされ、この
ような全ての変更がなされた後にのみアクセスが
許容される。 以下において明らかになるように、共通バス1
07を介して行なわれるロツク操作のための信号
BSSHBC−が、これまで論述されたものとは異
なる方法で使用されることが判る。バス・ロツク
操作の間、検査兼ロツク手順によつて共有資源に
対するアクセスを行ないかつそのロツク操作を完
了した時共有資源をアンロツクするため、資源を
共有しようとする装置によつて信号BSSHBC−
が発される。 (ロツク操作ロジツク) メモリー制御装置109のロツク操作ロジツク
110を用いてI/O制御装置または中央処理装
置の代りに個々のメモリー操作を行なう方法につ
いては、第8図の論理ブロツク図および第9図の
タイミング図に関して以下に論述する。I/O制
御装置から共通バス107を介し、あるいは中央
処理ロジツク108からのメモリー・アクセスを
行なう二重ポートがメモリー制御装置109に設
けられるため、ロツク操作ロジツク110はI/
O制御装置または中央処理装置ロジツクのいずれ
かにより非同期的に生成され得るロツク要求の同
期を行なわなければならない。非同期のロツクお
よびアンロツク操作のこの同期作用は以下に述べ
る如く生じる。 第8図は、メモリー制御ロジツク109のロツ
ク操作ロジツク110の論理ブロツク図である。
第8図においては、論理素子の入力または出力側
における小さな円がそれぞれ反転入力および出力
を表わしている。第8図においては、ロツク操作
ロジツク110はCPUロツク・フリツプフロツ
プ801、バス・ロツク・フリツプフロツプ82
0、同期フリツプフロツプ802および他のフリ
ツプフロツプ、インバータ、ANDゲート、
NANDゲートおよびNORゲートから構成され
る。フリツプフロツプ801と820は、米国テ
キサス州ダラスのTexas Instruments社製造の
SN74S112型のプリセツトおよびクリア付きJ−
K型負立上りトリガー・フリツプフロツプであ
り、参考のため本文に引用される同社の「設計技
術者のためのTTLデータ・ブツク」第2版
(1976年版権)において記載されている。同期フ
リツプフロツプ802は、米国カリフオルニア州
マウンテンビユーのFairchild Camera and
Instrument社製造の74F74型のプリセツトおよび
クリア付きD型の正立上りトリガー・フリツプフ
ロツプであり、参考のため本文に引用する
「Fairchild社の進歩した高速型シヨツトキー
TTL」(1980年版権)において記載されている。 最初に、メモリー・ロツク操作が開始する前
に、CPUロツク・フリツプフロツプ801、バ
ス・ロツク・フリツプフロツプ820および同期
フリツプフロツプ802は、そのQ出力における
出力信号が2進数0となりかつそのQバー出力に
おける出力が2進数1となるようにそのリセツト
状態にある。このように、フリツプフロツプ80
1のQ出力における信号CPLKME+およびバ
ス・ロツク・フリツプフロツプ820のQ出力に
おける信号LOCKDD+は2進数0となり、バ
ス・ロツク・フリツプフロツプ820のQバー出
力における信号LOCKDD−および802のQバ
ー出力における信号LOCKED−は2進数1とな
る。フリツプフロツプ801,820および80
2は最初にこれらの各フリツプフロツプのリセツ
ト(R)入力に対する入力であるバス・マスタ
ー・クリア信号BSMCLR−によりリセツト状態
にセツトされ、共通バス107に接続された各装
置におけるロジツクが初期化状態にクリアされる
ようにシステムが初期化される時短い期間2進数
0に変換する。 (メモリー・ロツクの事例) 第8図のロツク操作ロジツク110について
は、I/O制御装置がメモリー・モジユールの1
つにおけるある記憶場所に対するロツク操作を行
なうことを要求する場合を示す第9図のタイミン
グ図に関して説明する。第9図に示された本実施
例においては、I/O制御装置がメモリー・ロツ
ク操作を開始した後、CPUがメモリーに対する
ロツク操作を実施することを要求することを判定
し、またロツク操作を開始する。第9図における
実施例は、I/O制御装置のロツク操作がCPU
のロツク操作の実施を許容される前に完了するこ
とを示している。CPUのロツク操作の間、I/
Oは別のメモリー・ロツク操作を開始しようと試
みる。第9図は、I/Oのメモリー・ロツク操作
が時点Aにおいて開始し時点Oにおいて完了する
ことを示し、その間メモリー読出しが時点Aから
時点Jの間に行なわれ、データがI/O制御装置
により時点JからLにかけて修正され、修正され
たデータは時点LからOにかけてメモリーに対し
て書込まれる。I/O制御装置の代りにバス・メ
モリーのロツク操作に続いて、CPUはそのメモ
リーロツク操作を完了するが、この状態は時点
AAにおいて開始し、その間にCPUが時点Cから
Xにかけてメモリーをロツクし、これはCPUの
時点BBからCCにかけてのメモリー読出し、
CPUの時点CCからDにかけてのデータの修正、
および時点DDからEEにかけてのメモリーに対す
るCPUの修正データの書込みからなる。CPUが
結果としてNAK応答のメモリー・ロツク操作を
行なう間、I/O制御装置が時点RからUにかけ
てのメモリーのロツク操作を行おうとし、その結
果NAK応答を惹起する。 第9図においては、第1図のI/O制御装置1
03の如きI/O制御装置が時点Aにおいて、メ
モリーにおけるある記憶場合の読出し/修正/書
込み操作の実施を要求することを判断する。この
状態はメモリーのロツク操作が行なわれることを
要求し、また時点Aにおいて、バス要求信号
BSREQT−を2進数1から2進数0の状態に変
換させることにより、I/O制御装置が共通バス
107の使用を要求する。バス要求信号
BSREQT−が2進数0の状態に変換する時、こ
の信号はバスの優先順位の解決サイクルを開始
し、共通バス107に取付けられた各装置におけ
る優先順位ロジツクが進行して全ての可能な要求
側の装置のどれ最も高い優先順位を有するかを判
定し、もしI/O制御装置が最も高い優先順位を
有するならば、これはマスター装置としてバスを
許与され、I/O制御装置の優先順位ロジツクが
時点Bにおいてバス上の現在データ・サイクル信
号BSDCNN−を2進数1から2進数0の状態に
変換させる。同時に、I/O制御装置103がマ
スター装置としてバス・アドレス回線上に読出さ
れるべき記憶場所のアドレスを置き、またバス・
ロツク信号BSLOCK−を2進数0の状態にセツ
トして、第2の半バス・サイクルの信号
BSHHBC−を2進数1の状態に残し、これによ
りロツク操作が行なわれることをスレーブ装置と
してのメモリーに対して信号する。このため、第
9図の時点Bにおいては、信号BSHHBC−が第
8図のANDゲート818の1つの入力側におけ
る2進数1であり、かつ信号BSLOCK+がAND
ゲート818の他の入力側において2進数1であ
り、その出力である信号LOCKER+バス・ロツ
ク・フリツプフロツプ820によりロツクされた
J入力における2進数1にさせる。信号
BSLOCK+は、共通バス107からの入力信号
BSLOCK−を反転させるインバータ821によ
り出力される。第8図の時点Bにおいて2進数1
となるバス・ロツク信号BSLOCK+もまたAND
ゲート819にする1つの入力である。 ANDゲート819に対する他の入力は、バス
の第2の半サイクルである信号BSSHBC+であ
り、前記インバータの入力は共通バス107から
の信号BSSHBC−である。時点Bにおいては、
信号BSSHBC+が2進数0の状態を維持し、こ
のためANDゲート819の出力を消勢して信号
UNLOCK+をバス・ロツク・フリツプフロツプ
820によりロツクされたK入力における2進数
0にさせる。時点Bにおいては、バス上の現在デ
ータ・サイクル信号BSDCNN−が2進数1から
2進数0の状態に変化し、インバータ823の出
力信号BSDCNN+を2進数0から2進数1の状
態に変化させ、これにより同期フリツプフロツプ
802のクロツク(C)入力においてそのデータ(D)入
力における信号CPLKME+をクロツクする。信
号CPLKMF+が時点Bにおける2進数0である
ため、バス・ロツク・フリツプフロツプ820は
リセツト状態を維持してそのQバー出力の信号
LOCKED−を2進数1の状態に維持し、このた
めNANDゲート804を部分的に可能状態に継
続する。 このように、以下において更に明らかになるよ
うに、I/O制御装置がメモリーのロツクを試み
つつある時、I/O制御装置が信号BSLOCK−
を2進数0にセツトするとこれに応答してAND
ゲート818の出力である信号LOCKER+は2
進数1であり、ANDゲート819の出力である
信号UNLOCK+は2進数0となり、I/Oメモ
リー・ロツク操作の初めにおいて第9図の時点B
およびSにおいてなされたように、信号
BSSHBC−を2進数1の状態に維持する。第9
図における時点Mにおける場合のように、信号
BSLOCK−を2進数0の状態にセツトしかつバ
スの第2の半サイクルの信号BSSHBC−を2進
数1の状態にセツトするI/O制御装置によりな
されるメモリーのアンロツク操作をI/O制御装
置が試みる時、ANDゲート818の出力は2進
数0であり、ANDゲート819の出力は2進数
1となる。このように、第9図の時点Bにおいて
は、ロツクおよびアンロツク信号はそれぞれバ
ス・ロツク・フリツプフロツプ820によりロツ
クされたJおよびK入力において確保される。バ
ス・ロツク・フリツプフロツプ820のJおよび
K入力におけるこれら入力の状態の確保は、後の
時点Dにおいて生じる2進数0の状態に変換する
信号MEACKR−をクロツクすることによりバ
ス・ロツク・フリツプフロツプ820がクロツク
されるまで何等の影響も及ぼさない。時点Dまで
NANDゲート804の他の入力における2進数
1の状態にバス・ロツク・フリツプフロツプ82
0によりロツクされたリセツト状態を維持する。
NANDゲート804の両方の入力が2進数1の
状態にある時、その出力である信号LOCKED+
は、その一方の入力が2進数0となるまで2進数
0の状態のままである。 信号LOCKED+は、ANDゲート805および
NANDゲート807に対する入力の1つである。 ANDゲート805およびNANDゲート807
に対する他の入力は、ANDゲート818の出力
である信号LOCKER+である。NANDゲート8
04の出力である信号LOCKED+は、もしメモ
リーが既にCPUまたはバスのいずれかによりロ
ツクされているならば2進数1となり、もしメモ
リーがCPUまたはバスのいずれかによつてもロ
ツクされなければ2進数0となる。 ANDゲート805の1つの入力における2進
数0である信号LOCKED+はこれらゲートを消
勢して、それぞれの出力である信号MENAKR+
を2進数0にまた信号MENAKR−を2進数1に
させる。信号MENAKR+はNORゲート806
に対する1つの入力であり、信号MENAKR−は
NORゲート808に対する1つの入力である。
NORゲート806および808に対する他の入
力は信号MESAME−、MODPAR−、PARER8
+およびPARER0+である。NORゲート806
またはNORゲート808の出力が2進数1とな
るためには、その5つの入力の各々が2進数0と
ならなければならない。読出しまたは書込みが行
なわれるべき記憶場所のアドレスがメモリー制御
装置109のアドレス空間内にある時、信号
MESAME−は2進数0となる(即ち、アドレス
の記憶場所はメモリー・モジユール1 101ま
たはメモリー・モジユール2 102内になけれ
ばならず、またアドレス指定されたモジユールは
システム内に物理的に存在しなければならな
い。)。従つて、時点Bにおいては、もしマスター
としてのI/O制御装置103による共通バス1
07上に与えられたアドレスが存在する1つのメ
モリー・モジユール内に該当するならば、信号
MESAME−は2進数0となる。信号MODPAR
−は、共通バスの上位の8ビツト・アドレス線上
のパリテイが共通バス上のパリテイ線と一致する
かどうかを表示するアドレス・モジユラー・パリ
テイ信号であり、もしそうであれば2進数0とな
る。パリテイ・エラー信号PARER0+および
PARER8+は、それぞれ下位の8ビツトおよび
上位の8ビツトのデータ回線に対するデータ・パ
リテイ・エラー標識であり、もしパリテイ・エラ
ーが生じなければ2進数0となる。従つて、I/
O制御装置がメモリー内の1つの記憶場所をアド
レス指定しつつある通常の状態においては、信号
MESAME−、MODPAR−、PARER8+および
PARER0+は全て2進数0となり、NORゲート
806,808の出力はそれぞれ入力信号
MENAKR+およびMENAKR−によつて専ら判
定されることになる。この場合、時点Bにおい
て、信号MENAKR+は2進数0となつてNOR
ゲート806の出力である信号MECYLE+を2
進数1にさせ、また信号MENAKR−は2進数1
となつて、NORゲート808の出力である信号
MENAKR+を2進数0にさせる。D型フリツプ
フロツプ809および810はそのクロツク(C)入
力におけるストローブ信号BSDCND+によりク
ロツクされて2進数0から2進数1の状態に変換
する。ストローブ信号BSDCND+は、メモリー
制御装置のバスの優先順位解決ロジツクの一部で
ある遅延回線824によつて約60ナノ秒間信号
BSDCNN+を遅延させることにより得られる。
第7図に示される信号BSDCND−は、インバー
タ826により信号BSDCND+を反転させるこ
とにより得られる。フリツプフロツプ809のD
入力における2進数1の信号MECYLE+のクロ
ツク動作はフリツプフロツプ809のセツト動作
を惹起する結果となり、そのQ出力である信号
MECYLL+を2進数1にさせ、そのQバー出力
である信号MECYLL−を2進数0にさせる。信
号BSDCND+が2進数0から2進数1の状態に
変換する時と同時に、フリツプフロツプ810が
クロツクされ、そのD入力における信号
MENAKR+の2進数0はフリツプフロツプ81
0にリセツト状態を維持させる結果となり、この
状態はそのQバー出力の信号MENAKK−に2
進数1の状態を維持させることになる。フリツプ
フロツプ809および810のクロツク動作は、
信号BSDCND+が2進数0から2進数1の状態
に変換する時時点Dにおいて生じる。フリツプフ
ロツプ809の出力である信号MECYLL+およ
びMECYLL−は肯定応答(ACK)または待機
(WAIT)応答のどちらがマスター装置からのバ
スを介する要求に対するスレーブ装置としてのメ
モリーにより生成されるかを判定するため使用さ
れる。フリツプフロツプ810の出力である信号
MENAKK−は、否定(NAK)応答が要求側の
装置に対して生成されるかを判定するため使用さ
れる。 時点Dにおいては、フリツプフロツプ809が
セツトされた後、信号MECYLL+が2進数1と
なつて、NANDゲート811を部分的に付勢す
ることになる。また時点Dにおいても、信号
MECYLL−はNORゲート812の1つの入力側
において2進数0となり、従つてその出力信号
MYWAIT+はその他の入力信号WAITER−に
よつて判定される。信号WAITER−は、メモリ
ーがその時使用中であるかどうかを表示するため
使用されるメモリー使用中フリツプフロツプ80
3によつて出力される。信号WAITER−もまた
NANDゲート811に対する他の入力である。
従つて、時点Dにおいては、もしメモリー使用中
フリツプフロツプ803がセツトされずメモリー
がその時使用中でないことを表示するならば、信
号WAITER−はそのQバー出力において2進数
1となり、時点Dにおいて信号MECYLL+が2
進数1となる時、NANDゲート811を部分的
に付勢してその出力である信号MEACKR−を2
進数0の状態にさせる。信号MEACKR−がイン
バータ814によつて反転されて信号MYACKR
+を生じ、これは更にインバータ815により反
転されて、第9図の時点Dにおける2進数0の状
態となるバスの肯定応答信号である信号
BSACKR−を生じる。説明を簡単にするため、
第8図の各素子と関連する伝播の遅れは多くの場
合に第9図のタイミング図においては無視される
ことに注意されたい。例えば、時点Dにおける信
号BSDCNN−の2進数0への変換が結果として
直ちに信号BSACKR−を2進数0にさせる如く
に示され、素子823,809,811,814
および815の伝播の遅れを無視する。NORゲ
ート812の1つの入力において信号WAITER
−が2進数1となると、時点Dにおける信号
MECYLL−の2進数1から2進数0の状態への
変換が、信号MYWAIT+が2進数0の状態を維
持しかつインバータ816により出力されるバス
待機信号BSWAIT−が2進数1の状態を維持す
るように、NORゲート812の出力においては
如何なる差も生じないことになる。 このように、第9図の時点Dにおいては、もし
I/O制御装置がメモリーのロツクを試みかつメ
モリーがI/O制御装置またはCPUのいずれに
よつても前にロツクされず、またメモリーは使用
中でなければ、肯定応答(ACK)がスレーブ装
置のロツク操作ロジツク110によつて生成さ
れ、時点Dにおいて共通バス107を介してマス
ター装置としてのI/O制御装置に対して送出さ
れることが判るであろう。再び信号MENAKR+
の2進数0の状態がフリツプフロツプ810に対
してクロツクされる時点Dにおけるフリツプフロ
ツプ810について見れば、フリツプフロツプ8
10はリセツトの状態を維持し、そのQバー出力
である信号MENAKK−は2進数1の状態を維
持してインバータ813の出力である信号
MYNAKR+に2進数0の状態を維持させ、こ
れは更にインバータ817により反転されて2進
数1の状態を維持する信号BSNAKR−を生じ、
これにより否定応答(NAK)がロツク操作を行
ないつつある要求側のI/O制御装置に対しては
生成されないことを表示する。 時点Dにおいてバス・ロツク・フリツプフロツ
プ820によりクロツク(C)入力がロツクされた信
号MEACKR−の2進数1から2進数0の状態へ
の変換は、J入力における信号LOCKER+の2
進数1をクロツクし、これによりバス・ロツク・
フリツプフロツプ820をセツトして信号
LOCKDD+を2進数1に、また信号LOCKDD−
を2進数0の状態にさせる。このためバス・ロツ
ク・フリツプフロツプ820は、共通バス107
に対して取付けられた要求側の装置がメモリー装
置ロジツク109から肯定応答(ACK)を受取
る毎にクロツクされる。時点Dにおける信号
LOCKDD−の2進数1から2進数0の状態への
変換は、NANDゲート804の出力である信号
LOCKED+を時点Fにおいて2進数1の状態に
させる。 I/O制御装置からのメモリー要求が肯定応答
を与えられることをメモリー制御装置が判定する
時点Dにおいて、メモリー制御装置はメモリー・
アドレスにおいて二重ポートのメモリーのバス・
ポートに対してラツチし、また更にメモリーの読
出しまたは書込み操作が実施されてバスに対して
取付けられた装置の代りに行なわれるべきメモリ
ー・サイクルに対する優先順位管理装置111の
要求を行なうかどうかを表示するバス回線の状態
においてラツチする。時点Eにおいては、本実施
例においてはI/O制御装置103であるマスタ
ー装置がメモリー制御ロジツク109からの
ACKを受取つた後、I/O制御装置がバス・ロ
ツクおよび現在データ・サイクル信号BSLOCK
−およびBSDCNN−を排除し、これら信号を2
進数0から2進数1の状態に戻し、更にI/O制
御装置はメモリー・アドレス、および読出しまた
は書込みメモリー表示信号を排除する。現在デー
タ・サイクル信号BSDCNN−の時点Eにおける
2進数0から2進数1への変換は、その後、時点
Eにおいて信号BSREQT−が2進数0から2進
数1の状態に変換するようにI/O制御装置をし
てバス要求信号をリセツトさせる。時点Fにおい
ては、両方のフリツプフロツプ809と810が
信号BSDCNB+によりリセツトされてそのリセ
ツト(R)入力において2進数0となる。信号
BSDCNB+は、信号BSDCND+および信号
BSDCNN+の入力を有するORゲート825に
より出力される。メモリー・バス・サイクルの終
りにおけるフリツプフロツプ809および810
のリセツト動作の結果、第9図の時点Fにおける
信号BSACKR−における如く、信号ACK、
WAITまたはNAKのいずれかがリセツトされて
2進数1の状態に戻ることになる。このように、
時点Fにおいては、次のバス・サイクルに備え
て、スレーブ装置がその肯定、待機または否定応
答信号をバスから排除する。 後の時点Gにおいて、要求されたデータがメモ
リーから読出される時、バス要求信号BSREQT
−を2進数1から2進数0の状態に変換させるこ
とによりメモリー制御ロジツク109は時点Gに
おけるバスの使用の要求を行なう。優先順位の解
決が行なわれた後、時点Hにおいて信号
BSDCNN−は2進数1から2進数0の状態へ変
換し、メモリーがバスを獲得したものとすれば、
メモリーはマスター装置としてバス・データ回線
上にメモリーから読出されたデータのワードを置
く。これはまた、この時点において、バスの第2
の半サイクルの信号BSSHBC−をして2進数1
から2進数0の状態へ変換させて、これによりス
レーブ装置に対してこれが前に読出された要求に
対する応答サイクルであることを表示する。I/
O制御装置がスレーブとして共通バス107上の
その制御装置のアドレスを識別する時、この制御
装置は肯定応答を生じることにより応答して時点
Iにおいて信号BSACKR−を2進数1から2進
数0の状態に変化させる。 メモリーが肯定応答ACKを受取ると、時点J
においてメモリー制御装置の優先順位回路網ロジ
ツクをして現在データ・サイクル信号BSDCNN
−を2進数0から2進数1の状態へ変換させ、ま
たメモリーをしてバスの第2の半サイクル信号
BSSHBC−を排除させ、その結果この信号は時
点Jにおいて2進数0から2進数1の状態に戻
る。肯定応答の受取りおよび現在データ・サイク
ル信号の2進数0から2進数1の状態への変化
は、時点Jにおいてメモリー制御装置からのバス
要求信号BSREQT−を2進数0から2進数1の
状態へ変換させる。時点Kにおいては、現在デー
タ・サイクル信号BSDDNN−をその優先順位回
路網ロジツク内で遅れさせた後、スレーブ装置と
して肯定応答に応答したI/O制御装置は時点K
においてバス確認信号BSACKR−を2進数0か
ら2進数1の状態にリセツトする。 ロツク操作の事例におけるこの時点において
I/Oメモリー要求が完了したが、これにおいて
時点AからFまでI/O制御装置がマスターであ
り、メモリーはスレーブとして応答してバスから
のメモリー・アドレスを取り、時点GからKにお
いてはメモリーはマスターとなりI/O制御装置
に対しスレーブとして応答し、メモリーから読出
されたデータのワードを提供した。時点EとGの
間では、共通バス107上の他の装置がバスに対
するアクセスを要求してこれを受取ることがで
き、またこれら装置がロツク操作を試みない時メ
モリー制御装置に対するアクセスを受取ることも
できた。またこの期間中、もし時点Cにおいてロ
ツク操作を要求しなかつたならば、優先順位管理
装置111により決定される如き比較的高い優先
順位であるバス要求に応答してメモリーが使用中
でなかつた時にCPUはメモリーに対するアクセ
スを行なうことができた。時点JからLにおい
て、I/O制御装置メモリーから読出されたデー
タを修正する操作を行なつた。時点Lにおいて、
I/O制御装置はメモリーに対して修正されたデ
ータの書戻しを欲し、バス要求回線を2進数1か
ら2進数0の状態にセツトすることによりバスの
使用を要求した。I/O制御装置がマスターとし
てバスを獲得した後、この制御装置は時点Mにお
いて現在データ・サイクル信号BSDCNN−をし
て2進数1から2進数0の状態に変換させ、更に
メモリーにおける記憶場所のアドレスをバス・ア
ドレス回線に対して書込ませ、またメモリーにお
けるデータをバス・アドレス回線における前記場
所に対して書込ませる。時点Mにおいて、I/O
制御装置はまた、これがロツク操作の完了である
ことを表示し、またこれを行なうために、信号
BSLOCK−をして2進数1から2進数0の状態
へ変換させることにより、また第2の半バス・サ
イクル回線BSSHBC−をして2進数1から2進
数0の状態へ変換させることによりメモリーをア
ンロツクし、これによりこの操作が、信号
BSSHBC−が2進数1の状態に保持される時点
Bにおいて生じたロツク操作とは対照的にアンロ
ツク操作であることを表示する。 次に、第8図に示されるロツク操作ロジツク1
10については、マスター装置としてのI/O制
御装置がメモリーが信号BSLOCK−および信号
BSSHBC−を2進数0の状態にセツトすること
によりアンロツクされるべきことを表示したメモ
リー書込みバス・サイクルの時点Mにおいて、
ANDゲート818の出力である信号LOCKER+
が2進数0であつてこれがロツク操作ではないこ
とを表示する2進数0となり、またANDゲート
819の出力である信号UNLOCK+が2進数1
であつてこれがアンロツク操作であることを表示
する2進数1となることが判るであろう。この時
点Mにおいては、バス・ロツク・フリツプフロツ
プ820によりロツクされた状態がセツト状態に
維持されてそのQバー出力である信号LOCKDD
−を2進数0の状態に維持させる。信号
LOCKDD−の2進数0はNANDゲート804を
消勢してその出力である信号LOCKED+を2進
数1にさせ、これによりこのメモリーがその時ロ
ツクされることを表示する。信号LOCKED+の
2進数1はANDゲート805およびNANDゲー
ト807を部分的に付勢状態にする。しかし、こ
れら両方のゲートは信号LOCKER+の2進数0
により消勢されて、このためANDゲート805
の出力の信号MENAKR+を2進数0にし、
NANDゲート807の出力の信号MENAKR−
を2進数1にする。NORゲート806および
NORゲート808に対する入力である他の4つ
の信号が2進数0の状態にあつてバス上のメモリ
ー・アドレスがメモリー制御装置により制御され
る記憶場所に対するものであること、またアドレ
ス・パリテイまたはデータ・パリテイ・エラーが
存在しないことを表示することを仮定すれば、
NORゲート806の出力である信号MECYLE+
は2進数1となり、NORゲート808の出力で
ある信号MENAKR+は2進数0となるが、これ
はその入力信号MENAKR−が2進数1であるた
めである。その後信号BSDCNN+が遅延回線8
24により遅らせてクロツク信号BSDCND+を
2進数0から2進数1の状態に変換させてフリツ
プフロツプ809および810をクロツクした
後、フリツプフロツプ809がセツトされてその
Q出力信号MECYLL+を2進数1にさせ、フリ
ツプフロツプ810はリセツト状態を維持してそ
のQバー信号MEANKK−を2進数1の状態に
維持させることになる。 メモリー使用中フリツプフロツプ803の出力
である信号WAITER−が2進数1である如くメ
モリーがその時使用可能状態にあるものとすれ
ば、NANDゲート811は完全に使用可能状態
にされてその出力信号MEACKR−を2進数1に
させることになり、この状態は更にインバータ8
14,815によつて反転されてバス確認信号
BSACKR−を第9図の時点Nにおいて2進数0
の状態にさせることにある。第9図の時点Nにお
いては、バス待機信号およびバスNAK信号の
BAWAIT−およびBANAKR−が2進数1の状
態を維持することになる。信号MEACKR−が時
点Nにおいて2進数1から2進数0の状態になる
時、この信号はそのJ入力において2進数0をま
たそのK入力において2進数1を有するバス・ロ
ツク・フリツプフロツプ820によりロツク状態
でクロツクして、その結果フリツプフロツプ82
0のリセツト状態を惹起し、これがそのQ出力の
信号LOCKDD+を2進数1から2進数0の状態
へ変換させることになる。 前に述べたように、本例においてはI/O制御
装置であるスレーブ装置による確認信号の受取り
は、時点OにおいてI/O制御装置をして、バ
ス・ロツクおよびバスの第2の半バス・サイクル
および書込みアドレスおよび共通バス107から
のデータを排除させ、これにより信号BSDCNN
−、BSLOCK−およびBSSHBC−を2進数0か
ら2進数1の状態へ変換させる。ACKおよび現
在データ・サイクル信号BSDCNN−の受取りも
また、I/O制御装置のバス要求回線の解除を惹
起することになり、その結果時点Oにおいて信号
BSREQT−が2進数0から2進数1の状態に変
換する。メモリー制御装置の優先順位解決ロジツ
クの遅延回線824における信号BSDCNN+を
遅延させた後、フリツプフロツプ809,810
のリセツト(R)入力におけるORゲート825
の出力である信号BSDCNB+は2進数1から2
進数1に変り、このため両方のフリツプフロツプ
をリセツトしてバス確認信号BSACKR−をして
時点Pにおいて2進数1から2進数0の状態に変
換させる。 時点Pにおける確認作号BSACKR−が2進数
1の状態に戻るとI/Oメモリー書込みサイクル
を完了し、またバス・ロツク・フリツプフロツプ
820によりロツクされた状態がセツトされた時
点Dにおける読出しサイクルの初めにおいてメモ
リーが最初にロツクされた全ての読出し/修正/
書込みサイクルを完了し、バス・ロツク・フリツ
プフロツプ820によりロツクされた状態がリセ
ツトされた時点Nにおいて書込みサイクルの終り
で終了する。 第8図のロツク操作ロジツク110の以上が論
述から判るように、ロツク操作ロジツクがバスの
使用を要求中のマスター装置に対してACKを生
成する毎に、バス・ロツク・フリツプフロツプ8
20がロツクされて信号MEACKR−によつてク
ロツクされて、第9図の時点D、IおよびNにお
ける如く2進数1から2進数0の状態に変換す
る。時点Dにおいては、バス・ロツク・フリツプ
フロツプ820がロツクされてセツトされ、時点
Nにおいてはこれはリセツトされた。時点Iにお
いては、バス・ロツク・フリツプフロツプ820
のクロツク動作はフリツプフロツプの如何なる変
化も惹起しなかつたが、これはANDゲート81
8、819がロツク信号BSLOCK+の2進数0
の状態により消勢されたためにJおよびK入力が
2進数0の状態にあつた故である。 マスター装置がメモリー内のある記憶場所をア
ドレス指定した時はフリツプフロツプ809およ
び810は単にバス上に信号ACK、WAITまた
はNAKを生成するのみであること、またマスタ
ー装置が別のI/O制御装置またはメモリー制御
装置109により制御されたメモリー内に存在し
ない記憶場所をアドレス指定中の時は生成されな
いことが判るであろう。この状態は、例え信号
BSDCND+が各バス・サイクルの間フリツプフ
ロツプ809および810をクロツクする場合で
さえ生じる。しかし、共通バス107上のアドレ
ス回線がメモリー内のある記憶場所を表示しなけ
れば、NORゲート806と808の双方に対す
る入力である信号MESAME−が2進数1の状態
にあり、これによりその出力でありフリツプフロ
ツプのデータ(D)入力に対する入力である信号
MECYLE+およびMENAKR+をそれぞれ2進
数0の状態にさせ、またこれによりフリツプフロ
ツプ809および810が信号BSDCND+によ
つてクロツクされる時は常にこれらを常にリセツ
ト状態にさせる結果となる。このリセツト状態は
更にそのQおよびQバー出力の状態の変化をもた
らさず、これは更に信号ACK、WAITまたは
NAKを2進数0の状態に変化させる結果となら
ない。 ACK応答を生じるため使用される以外に、
NANDゲート811により出力される信号
MEACKR−もまた、メモリーが共通バス107
からのメモリー要求に対する肯定応答(ACK)
を与える毎に優先順位管理装置111を介してメ
モリー要求を行なうように、優先順位管理装置1
11に対するI/Oメモリー要求としても使用さ
れる。 J−Kフリツプフロツプは、2進数1をJ入力
に対してクロツクすることによりセツトされ、2
進数1をK入力に対してクロツクすることにより
リセツトされる。従つて、バス・ロツク・フリツ
プフロツプ820のクロツク動作は、メモリー制
御装置がバス上にスレーブ装置として存在する毎
に、書込みまたは読出しのための記憶場所を要求
するマスター装置に対するACKに応答する。バ
ス・ロツク・フリツプフロツプ820は、もしこ
れがロツクされるか、あるいは第9図における時
点BおよびMにおいて生じる如き信号BSLOCK
−およびBSSHBC−の組合せにより指定される
如くアンロツクされつつあるならば状態を変化さ
せるのみであるが、信号BSLOCK−が2進数1
であるため、第9図の時点Hにおいては生じるこ
とがない。 メモリーがCPUによりロツクされる方法につ
いて論述する前に、メモリーがロツクされる間通
常の(即ち、ロツクされない)メモリー読出しま
たは書込み操作が共通バス107に取付けられた
I/O制御装置の代りに生じることが判るであろ
う。即ち、メモリーのロツク中に禁止される唯1
つのことは、CPUまたはバスからの如何を問わ
ず別のロツクされる読出しまたは書込み操作であ
る。例えば、もし1つのI/O制御装置がメモリ
ーの読出しを要求した場合に、マスター装置が時
点Bにおいてバス・ロツク信号BSLOCK−を2
進数0の状態にさせることがなく、従つてフリツ
プフロツプ820のJ入力における信号
LOCKER+が2進数0となり、またこれはAND
ゲート805の入力において2進数0となり、こ
のゲートがその出力である信号MENAKR+を2
進数0にさせ、その結果NORゲート806の出
力の信号MECYLE+が2進数1となることを除
いて、時点A乃至時点Jにおいて開始する第9図
に示されたシーケンスが生じる。信号MECYLE
+の2進数1が信号BSDCND+の2進数1の状
態への変換によりフリツプフロツプ809に対し
てクロツクされた時、信号WAITER−が2進数
1であるものとするとNANDゲート811は完
全に使用可能状態となり、その結果スレーブ装置
としてのメモリーからマスター装置としてのI/
O制御装置に対するACKを生じることになる。
マスター装置のこのACK動作の結果バス・ロツ
ク・フリツプフロツプ802のクロツク動作を惹
起するが、2進数0がそのJとKの両入力側に現
われるため、バス・ロツク・フリツプフロツプ8
20の状態は変化せず、その前のアンロツク状態
が変化しない状態を維持することになる。 (CPUのメモリー・ロツク操作) CPUがメモリー・ロツク操作を行なうことを
許容するロツク操作ロジツク110の部分につい
ては、第8図、第9図および第10図に関して以
下に論述する。CPUがメモリーに関して読出し
または書込みをアンロツク操作またはロツク操作
中の如何を問わず行なうことを要求する時、
CPUは共通バス107を介してメモリーと通信
することはなく、その代りメモリー制御ロジツク
109の第2のポートを使用する。従つて、
CPUは、バス要求回線BSREQT−の状態を変化
させることにより共通バス107を使用する要求
を行なわず、あるいはCPUは現在データ・サイ
クル信号BSDCNN−またはロツク信号BSLOCK
−の如きタイミング信号、または第2の半バス・
サイクル信号BSSHBC−のいずれかを使用する
こともない。更に、CPUは、スレーブ装置とし
てのメモリーがメモリーのアクセスを要求するマ
スター装置からの指令を受諾したかどうかを調べ
るため信号回線ACK、WAITまたはNAKの探索
を行なうことはない。 このマスター装置とスレーブ装置の関係は
CPUとメモリー間には存在しないが、これは
CPUがそれ自体のポートを介してメモリーに対
し直接通信を行なうためである。CPUは、上記
の如くJ−KフリツプフロツプであるCPUロツ
ク・フリツプフロツプ801をセツテイングする
ことによりロツク操作を行なうことを要求する時
は常にメモリーのロツクを行なう。望ましい実施
態様においては、CPUはマイクロプログラムさ
れたシステムであり、記憶場所がCPUのレジス
タに読込まれることを要求する減分命令を実行中
の如きメモリーロツク操作を必要とするソフトウ
エア命令の実行しつつある期間、1つがレジスタ
の内容から控除され、次いでレジスタの内容はメ
モリーに書戻される。CPUは、セツト(S)フ
リツプフロツプ801における信号SETLCK−
を2進数1から2進数0の状態へ変換させるマイ
クロ操作を実行することによりフリツプフロツプ
801をセツトする。フリツプフロツプ801の
セツト動作は、そのQ出力の信号CPLKME+を
2進数0から2進数1の状態に変換させる。この
一例が第9図の時点Cにおいて示されるが、この
状態は時点Bにおいてバスから生じたメモリー要
求によりメモリーが既にロツクされた僅か後に生
じた。以下において明らかになるように、共通バ
ス107におけるバス・サイクルに関するCPU
のマイクロ操作の実行の非同期操作の故に、
CPUがメモリーのロツクを行おうとする同時の
バスのメモリーのロツク動作との間の競合条件が
生じ得る。CPUとバス間のメモリーのロツクに
おいて生じ得る競合状態について記述する前に、
CPUがメモリーをロツクする方法について説明
する。 前述の如く、CPUロツク・フリツプフロツプ
801は、同期フリツプフロツプ802およびバ
ス・ロツク・フリツプフロツプ820における如
くCPUが初期化される時、バス・マスター・ク
リア信号BSMCLR−によつてリセツト状態に初
期化される。その後、CPUによるソフトウエア
の実行中、CPUが割込みされることなくある場
所の読出し、内容の修正およびその書戻しを要求
するため、ソフトウエア命令が、ロツク操作があ
るメモリーについて行なわれることを要求する
時、このソフトウエア命令を実行中のマイクロ命
令は、フリツプフロツプ801のセツト(S)入
力における2進数0の状態に信号SETLCK−を
生成することによりセツト・ロツク操作を行な
う。このロツク・メモリーのマイクロ操作は第1
0図においてブロツク1001として示されてい
る。CPUロツク・フリツプフロツプ801のセ
ツト動作は、メモリーが既にバスによりロツクさ
れたかどうかを判定するためバス・ロツク・フリ
ツプフロツプ820の状態をCPUが検査するこ
となく、CPUによつて一方的に生じることが判
るであろう。更に、CPUは、メモリーのロツク
を、次いでアンロツクを行なうマイクロ命令シー
ケンスが、もしメモリーがCPUのマイクロ操作
により前にロツクされたならばその後にアンロツ
ク・マイクロ操作が続き、従つてもしCPUがこ
の時メモリーをロツクする位置にある場合はこれ
がリセツト状態にありかつメモリーがこの時
CPUによりロツクされない如きものでなければ
ならないように割込み不能であることを暗黙の内
に知るため、CPUロツク・フリツプフロツプ8
01によりロツクされた状態を検査することによ
りCPUによつてメモリーが既にロツクされたか
どうかの判定を行なう必要はない。 同期フリツプフロツプ802は、CPUのマイ
クロ命令の実行に関するバス信号の非同期の性質
の故に必要となる。従つて、CPUロツク・フリ
ツプフロツプ801によりロツクされた出力にお
いて、フリツプフロツプ802のデータ(D)入力に
おける信号CPLKME+をインバータ823によ
りバス信号BSDCNN−を反転することにより得
られる現在のバス・データ・サイクル信号
BSDCNN+を用いてクロツクすることにより、
同期フリツプフロツプ802のQバー出力である
信号LOCKED−が安定化され、これによりフリ
ツプフロツプ809,810のデータ(D)入力にお
ける信号が、2進数1の状態に変換する信号
BSDCND+によつて約60ナノ秒後にクロツクさ
れる時、安定状態となることを保証する。従つ
て、同期フリツプフロツプ802は、もしCPU
がバス上の2進数0状態となる現在データ・サイ
クル信号BSDCNN−の発生前にメモリーをロツ
クするならば、CPUによりロツクされた信号は
フリツプフロツプ809,810の入力側におけ
る信号MECYLE+およびMENAKR+の状態に
影響を及ぼしてバスからの要求のNAK動作を生
じてロツクされたメモリー操作を行なうように視
認および安定化が可能となる。しかし、もし
CPUがバス上の現在データ・サイクル信号の発
生前にCPUロツク・フリツプフロツプ801が
セツトしなければ同期フリツプフロツプ802は
リセツト状態を維持し、フリツプフロツプ80
9,810に対する入力は次のバス・サイクルま
で影響を受けることがない。フリツプフロツプ8
09,810を同期フリツプフロツプ802のク
ロツクの60ナノ秒後にクロツクすることにより、
フリツプフロツプ802のQバー出力が安定状態
に達することを保証するに充分な20乃至30ナノ秒
を要する時間が与えられ、この出力はフリツプフ
ロツプ809,810のクロツク動作の前に、
NANDゲート804、ANDゲート805、
NORゲート806を通り、またNANDゲート8
04、NANDゲート807およびNORゲート8
08を通つて伝播するに充分な時間を有すること
になる。一旦CPUがCPUロツク・フリツプフロ
ツプ801をセツトしその出力がバス上の現在デ
ータ・サイクル信号の発生により同期フリツプフ
ロツプ802に対してクロツクされると、信号
LOCKED−の2進数0の状態はNANDゲート8
04の出力をして2進数1の状態にさせ、同期フ
リツプフロツプ802とバス・ロツク・フリツプ
フロツプ820の双方がリセツトされる如き時間
までこの状態に止まる。このように、NANDゲ
ート804の出力である信号LOCKED+は、2
進数1の時、メモリーがCPUまたはバス、また
はその両方によりロツクされたことを表示する。 ロツク操作ロジツク110の残部による信号
LOCKED+の使用状態は、バスからのメモリー
のロツク操作に関して前に述べたものと同じであ
る。しかし、CPUによるメモリーのロツク操作
がACK、CPUに対する応答WAITまたはNAK
の生成を惹起することはないが、これはこれら信
号が単に共通バス107上のメモリーの使用を要
求するマスター装置に応答して生成されるに過ぎ
ないためである。バス・サイクルはCPUのメモ
リーの使用に関与せず、従つてCPUによるメモ
リーのロツク操作はマスター装置に対するスレー
ブとしてのメモリーからの応答を生じる効果をも
たらされないが、バスのロツク操作があるバス・
サイクルの一部として生じる故に、メモリーがバ
スによりロツクされる時は応答が生成される。従
つて、CPUロツク、フリツプフロツプ801の
セツト操作はある後続のバス・メモリー・サイク
ルに備えて行なわれ、その結果バスを介するメモ
リーに対するロツク操作を行おうとする試みにお
いてマスターとして作用するI/O装置はいずれ
も、メモリーがバス上のI/O装置またはCPU
のどちらによつてロツクされたかに拘らず、適正
な応答を受取ることになる。 前述の如く、CPUロツク・フリツプフロツプ
801は、信号SETLCK−を2進数0の状態に
させるマイクロ操作を実行するCPUによつてセ
ツトされる。このCPUは、ある記憶場所の読出
し/修正/書込み操作を要求するロツク操作を実
施中、このセツト・ロツクされたマイクロ操作を
実行する。読出しまたは書込みのための各メモリ
ーのアクセス毎に、またアクセスがCPUまたは
共通バスと接続されたI/O装置のいずれの代り
に行なわれつつあるかの如何に拘らず、行アドレ
スが主記憶装置を構成する半導体チツプに対して
与えられる時、タイミング信号MCASCP−は2
進数0となる。従つて、メモリーのアクセス毎
に、CPUロツク・フリツプフロツプ801はク
ロツク(C)入力において2進数0となる信号
MCASCP−によりクロツクされることになる。
CPUの代りに、かつ共通バス上のI/O制御装
置の代りではなく実施されつつあるメモリーの書
込みの間、行アドレス信号MCASCP−が2進数
0となる時信号MMWRIT+が2進数1となる。
従つて、CPUのメモリー書込み信号MMWRIT
+をフリツプフロツプ801のK入力に対して入
力することにより、CPUロツク・フリツプフロ
ツプはCPUの代りにメモリー書込みが行なわれ
る毎にリセツトされることになる。従つて、
CPUロツク・フリツプフロツプ801は読出
し/修正/書込み操作の実施を予期してCPUの
マイクロ命令の実行によつてセツトされ、またこ
のフリツプフロツプがメモリー書込みがCPUの
代りに行なわれる時常に従来条件にリセツトされ
ることが理解できよう。ロツク操作ロジツク11
0のこのような簡素化は、CPUがメモリーをロ
ツクする時のみが読出し/修正/書込み操作の実
施に備えるものであること、従つてメモリーがロ
ツクされることを要求し得た読出し/修正/書込
みシーケンスの最後の動作となる故に、ロジツク
がCPUの書込みの操作の終りにCPUロツク・フ
リツプフロツプ801を無条件にリセツトし得る
ことが暗に了解されるため可能である。 メモリー使用中フリツプフロツプ803につい
ては、その出力信号WAITER−に関して前に記
述した。メモリー使用中フリツプフロツプ803
がセツトされる時、そのQバー出力である信号
WAITER−は2進数0となつて二重ポートのメ
モリーバス・メモリー・ポートが共通バス107
と接続された装置の代りにメモリー操作の実施の
ため使用中であることを示す。このように、メモ
リー使用中フリツプフロツプ803のセツト動作
はその後のバスからのメモリー要求がその時のメ
モリー要求が完了するまで確実に確認されること
を阻止する。以上の論議において判るように、メ
モリー使用中フリツプフロツプ803がセツトさ
れる時、信号WAITER−の2進数0はNANDゲ
ート811を消勢し、ACKがメモリーへのアク
セスを要求中のマスター装置に対して生成される
ことを阻止し、その代りメモリーへのアクセスを
求めるI/O制御装置からの要求に応答して、そ
の結果信号WAITがメモリーにより生成される
ことになるNORゲート812の使用中可能状態
を生じることになる。 システムが初期化される時、信号MEMRDY
−は2進数0の状態にセツトされ、これによりフ
リツプフロツプ803をセツトして、システムが
パワーアツプされメモリーが加速されてクリア・
アウトされる時までこれをセツト状態に保持す
る。その後、信号MEMRDY+が2進数1に戻
り、現在データ・サイクル信号BSDCNN−がク
ロツク(C)入力において2進数1となる時、データ
(D)信号MEBUSY+が2進数1ならば、メモリー
使用中フリツプフロツプ803は1つのバス・サ
イクルの間セツトされる。信号MEBUSY+は二
重ポート・メモリーのバス・ポートと関連するメ
モリー信号の収集の累積から生じ、その結果二重
ポート・メモリーのバス・ポートがメモリー操作
に関わり共通バス107からのメモリー要求を自
由に受諾できない時は常に信号MEBUSY+は2
進数1の状態となる。メモリーが共通バス107
と接続される装置の代りにメモリー操作を完了し
た時、信号MEBUSY+は2進数0の状態に戻
り、次にメモリー使用中フリツプフロツプ803
が現在バス・データ・サイクル信号BSDCNN+
によりクロツクされる時、メモリー使用中フリツ
プフロツプ803がリセツトされることになる。
このリセツト状態は、あるI/O制御装置からの
メモリー要求が生じるバス・サイクルのACKま
たはWAIT信号の生成に先立つてメモリー使用
中フリツプフロツプ803がリセツトされるよう
に、バス・サイクル内で充分早期に生じる。 以上の論議により、バス・ロツク・フリツプフ
ロツプ820をセツトすることによりバスがメモ
リーをロツクできる方法、およびCPUロツク・
フリツプフロツプ801をセツトすることにより
CPUがメモリーをロツクできる方法が示された。
バス・ロツク・フリツプフロツプ820がリセツ
トされる方法は、メモリー書込み操作がCPUの
代りに実施された時常にCPUロツク・フリツプ
フロツプ801が無条件にリセツトされる方法に
おける如く説明された。メモリーが既にCPUま
たはバスのいずれかによつてロツクされる期間中
ロツク操作を行なう試みがなされるならば、バス
からの以降のロツク操作が否定応答(NAK)を
与えられる方法についても論述した。CPUがロ
ツクされた操作を行おうと試みる時、メモリーが
バスによつてロツクされたかどうかをCPUが判
定する方法については以下に説明する。 メモリーがバスから生じたメモリー要求に対し
て応答しつつある時にのみ生成されるACK、
WAITまたはNAK信号についてCPUは判らない
ため、CPUはQ出力信号LOCKDD+を検査する
ことによりバス・ロツク・フリツプフロツプ82
0の出力を直接索引する。基本的には、CPUが
行なうことは、フアームウエア・マイクロ操作を
介してCPUロツク・フリツプフロツプ801を
無条件にセツトすることであり、別のフアームウ
エア・マイクロ操作によつてバス・ロツク・フリ
ツプフロツプ820の状態を索引し、メモリーが
バスによりロツクされるまで循環する。この時、
CPUはCPUロツク・フリツプフロツプ801を
リセツトするCPUによるメモリー書込みを伴な
うその読出し/修正/書込み操作を行なう。この
シーケンスは、各々がCPUのフアームウエアの
1つのマイクロ操作と対応する4つのブロツクを
示す第10図において示される。これらの4つの
ブロツク、即ち1000乃至1004は、前に述
べた如きメモリー・ロツク操作、例えば1つのワ
ードがメモリーから読出され、このワードが1つ
ずつ減分され、減分された値がメモリーに対して
書戻される個々のワード操作を実施するソフトウ
エア命令の一部でよいマイクロ操作を表わす。 ブロツク1001においては、CPUフアーム
ウエアはCPUロツク・フリツプフロツプ801
を無条件にセツトする。このマイクロ操作は、そ
の直後にブロツク1002により表わされるマイ
クロ操作が続き、あるいはブロツク1001から
ブロツク1002に続く点線で示される如き介入
するマイクロ操作が存在してもよい。ブロツク1
002においては、同じマイクロ操作内でそれに
ついて操作される記憶場所の内容を読出し、バ
ス・ロツク・フリツプフロツプ820がセツトさ
れるかどうかを調べるためのテキストが形成され
るマイクロ操作が行なわれる。もし信号LCKDD
+が2進数1であり、メモリーがバスによりロツ
クされたことを表示するならば、マイクロ操作
は、ブロツク1002が再び実行されかつこの場
所が再びメモリーおよび再び検査されたバス・ロ
ツク・フリツプフロツプ820から読出されるよ
うに、最初に戻るように分岐する。ブロツク10
02内のこのループ動作は、バス・ロツク・フリ
ツプフロツプ820がリセツトされる如き時まで
継続し、その時マイクロ操作1002は再び分岐
することがなくブロツク1003のマイクロ操作
が実行されることになる。実際に、ブロツク10
03は更新された値がその後メモリーに対して書
込むことができるようにメモリーから読出された
ワードの新たな値を計算するいくつかのマイクロ
操作でよい。再び、点線により示される如くブロ
ツク1002と1003間、およびブロツク10
03と1004間に介入するマイクロ操作が存在
し得る。ブロツク1004においては、更新され
た値がメモリーに対して書込まれ、各メモリー書
込み操作が無条件にCPUロツク・フリツプフロ
ツプ801をリセツトするため、メモリーは
CPUによつてアンロツクされる。上記の如く、
ブロツク1004においてアンロツクされるまで
ブロツク1001におけるメモリーをロツクした
期間中は、共通バス107上のある装置がメモリ
ーをアンロツクしようとする試みは、マスター装
置として要求を行ないつつあるI/O制御装置に
対してメモリーがスレーブ装置として応答する
時、NAKがロツク操作ロジツク110により生
成される結果となる。 次に第9図に戻つて、CPUが時点AAにおいて
始まり時点EEにおいて終るCPUメモリー・ロツ
ク操作を行なうことが判るであろう。時点AAか
ら時点BBまで、CPUは第10図のブロツク10
01のメモリー・ロツク操作を実行中であり、こ
れは時点CにおいてそのQ出力である接続
CPLKME+を2進数1にさせるCPUロツク・フ
リツプフロツプ801のセツト動作を惹起する結
果となる。時点BB乃至時点CCにおいては、
CPUのフアームウエアは、メモリーが優先順位
管理装置111により判定される如きメモリーが
CPUに対して使用可能状態となる時は常にCPU
フアームウエアがメモリーを読出すと同時にバ
ス・ロツク・フリツプフロツプ820を試験しブ
ロツク最終の実行の間信号LOCKDD+が時点N
において2進数0に戻ることを見出すまで、ブロ
ツク1002の再実行を継続するループに関与す
る。時点CCから時点DDにかけては、CPUはメ
モリーに対して書込まれるデータを修正するブロ
ツク1003を含むブロツク1002と1004
間でマイクロ命令を実行する。時点DD乃至時点
EEの間、CPUはブロツク1004を実行してデ
ータをメモリーに対して再び書込む。CPUによ
るメモリーへのデータの書込みの結果、CPUロ
ツク・フリツプフロツプ801のリセツト動作を
惹起し、これは時点Xにおいて信号CPLMKE+
を2進数1から2進数0の状態へ変換させる。時
点Xの後に、第9図における時点Yにおいてバス
の使用に対する以降の要求が、時点Zにおいて現
在データ・サイクル信号BSDCNN−を2進数1
から2進数0の状態へ変換させる結果となり、こ
の状態は更に同期フリツプフロツプ802のリセ
ツトを惹起し、これはNANDゲート804の出
力である信号LOCKED+をして時点Zにおいて
2進数1から2進数0の状態へ変換させることに
なる。 また第9図には、CPUのみがメモリーをロツ
クした期間中メモリー・ロツク操作を行なうため
のI/O制御装置による試みが示されている。こ
のように、時点Rにおいては、マスター装置とし
てのI/O制御装置が、現在データ・サイクル信
号BSDCNN−をして2進数1から2進数0に変
換させるバスに対する要求を行なつて、I/O制
御装置がバスに対して読出されるべきメモリー・
アドレスを置く結果となり、またこれを時点Sに
おいてロツクされた信号BSLOCK−を2進数0
の状態にセツトさせてロツク操作が望ましいこと
を表示する。NANDゲート804の出力である
信号LOCKED+が2進数1の状態にあるという
事実により表示される如くバスはこの時CPUに
よりロツクされているため、NANDゲート80
7の出力である信号MENAKR−が2進数0とな
つてNORゲート808の出力を2進数1にさせ、
その結果時点Tにおいてフリツプフロツプ810
のセツト状態を生じ、これが更にNAKをバスに
おいて生じさせ、時点Tにおいて信号
BSNACKR−を2進数1から2進数0の状態へ
変換させる。否定応答が時点Uにおいてスレーブ
装置としてのメモリーからマスター装置としての
I/O制御装置により受取られる時、I/O制御
装置はバス・ロツク信号、現在データ・サイクル
信号BSDCNN−およびバス要求信号をバスから
除き、その結果時点Uにおいて信号BSLOCK−、
BSDCNN−およびBSREQT−が2進数0から2
進数1の状態へ変換する。時点Wにおいてフリツ
プフロツプ810がそのリセツト(R)入力側で
2進数0の状態に変換する信号BSDCNB+によ
りリセツトされる時、フリツプフロツプ810が
リセツトされて信号BSNACKR−を2進数0か
ら2進数1の状態に変換させることになる。 この試みられたI/Oメモリー・ロツク操作が
前のI/Oメモリー・ロツク操作の完了後に表示
されるが、メモリーがバスの代りにロツクされる
期間中別のI/O制御装置によるメモリーロツク
操作の実施しようとする試みは、I/O制御装置
がメモリーからNAKを受取るロツク操作を行お
うとする試みと同じシーケンスが生じる結果とな
る。これは、NANDゲート804の出力がメモ
リーがCPUまたはバス、もしくはその両方の代
りにロツクされることを表示する故にこの状態と
なり、そのいずれも共通バス107と接続される
装置の代りにロツク操作を開始しようとする以降
の試みに応答してNAKが生成される結果とな
る。 CPUとバスの両者が略々同時にメモリーをロ
ツクしようとする可能性のある競合状態の故に、
CPUロツク・フリツプフロツプ801をセツト
するCPUの実行されるマイクロ命令とバス・ロ
ツク・フリツプフロツプ820の出力を索引する
マイクロ命令との間に経過しなければならない最
短時間に関してある制限が存在する。メモリーロ
ツクを略々同時に試みる状態には問題となる2つ
の場合がある。第1の場合はバスがメモリーをロ
ツクする僅か前にCPUがメモリーをロツクする
ものであり、第2の場合はバスがメモリーをロツ
クした僅か後にCPUがメモリーをロツクするも
のである。第2の場合は、CPUがCPUロツク・
フリツプフロツプ801を制御する時と、バス・
ロツク・フリツプフロツプ820の出力を索引す
る時の間に経過しなければならない最短時間に対
してこの時間的制限を課すものである。 第1の場合において、もしバス上のあるI/O
制御装置がメモリーのメモリー・ロツク操作を行
なう僅か前に第10図のブロツク1001のマイ
クロ操作を実行することによつて、CPUがCPU
ロツク・フリツプフロツプ801をセツトした許
りであるならば、CPUロツク・フリツプフロツ
プ801は、データ・サイクルを示すバスからの
信号BSDCNN−がこの時同期フリツプフロツプ
802をクロツクする前に、CPUロツク・フリ
ツプフロツプ801がセツトされる。この場合、
メモリーのロツクを試みるバスと関連するバス・
サイクルの初めは同期フリツプフロツプ802の
セツト動作を惹起する結果となり、これは更にそ
の出力信号LOCKED−が2進数0となる結果を
もたらすことになる。2進数0である信号
LOCKED−はNANDゲート804の出力を2進
数1にさせる結果となり、これは更にバスからの
ロツク要求に応答して否定応答(NAK)を生じ
させる結果となる。バス・ロツク・フリツプフロ
ツプ820はACKの代りにNAKが生成された故
にクロツクされず、従つて、バスはメモリーのロ
ツクを行なわず、CPUがその全メモリーロツク
操作(即ち、メモリーに対する読出し/修正/書
込み操作)を完了するまではメモリーがCPUに
よりロツクすることができない。CPUがバスか
らのロツク要求の更に僅か前にメモリーのロツク
を行なう場合には、CPUロツク・フリツプフロ
ツプをセツトするマイクロ命令1001の実行
と、バス・ロツク・フリツプフロツプ820の状
態を索引するブロツク1002と関連するマイク
ロ命令の実行との間の経過時間に関しては何の制
限もない。 第2の場合においては、CPUロツク・フリツ
プフロツプ801をセツトすることによりCPU
がメモリーをロツクする時の僅か前にバスがロツ
ク要求を行なう時、CPUとバスの間にメモリー
のロツクのための競合が生じる。I/O制御装置
が時点Aにおいてメモリーのロツク要求を行な
い、第10図におけるブロツク1001と関連す
るマイクロ操作が実行される時間の僅か前である
時点Bにおいて現在データ・サイクル信号
BSDCNN−がI/O制御装置によつて生成さ
れ、CPUロツク・フリツプフロツプ801が時
点Cにおいてセツトされる結果信号CPLMKE+
が2進数1となるように信号SETLCK−を2進
数0にセツトする場合が第9図に示されている。
この場合、同期フリツプフロツプ802のデータ
(D)入力側において得られる2進数1はそのQバー
出力信号LOCKED−が2進数1の状態を維持す
るようにフリツプフロツプ802に対してクロツ
クされ損なう。時点Cにおいてはバス・ロツク・
フリツプフロツプ820がI/O制御装置に対し
て生成されることになるACKによつてクロツク
される故に、NANDゲート804に対する他の
信号であるLOCKDD−もまた2進数1となつて
NANDゲート804を完全に使用可能状態にす
る。従つて、時点Cにおいては、メモリーはバス
によつてロツクされず、同期フリツプフロツプは
セツトされず、その結果NORゲート806の出
力が2進数1となり、これがフリツプフロツプ8
09のセツト動作を生じ、これが更にロツク操作
が行なわれることを要求するI/O制御装置に対
してACKが生成される結果となる。ACK信号の
生成は更にバス・ロツク・フリツプフロツプ82
0をクロツクして、その結果そのQ出力信号であ
るLOCKDD+が時点Dにおいて2進数1に変化
するようにセツトされることになる。 バスがメモリーのロツク操作の競合において先
を越したこの第2の場合においては、もしCPU
がCPUロツク・フリツプフロツプ801をセツ
トする時と、これがバス・ロツク・フリツプフロ
ツプ820の出力を索引する時との間の時間があ
まりにも短か過ぎると、バス・ロツク・フリツプ
フロツプ820は未だクロツキングACK信号に
よりセツトされない。従つて、バツフア1002
と関連するバス・ロツク・フリツプフロツプ82
0の状態を検査するCPUのマイクロ操作は、
CPUロツク・フリツプフロツプ801がバス・
ロツク・フリツプフロツプ820の出力に対して
要するよりもCPUロツク・フリツプフロツプ8
01のセツテイングの直後に生じ得ず、その結果
バス・ロツク・フリツプフロツプ820のセツテ
イングは第10図におけるバツフア1002のマ
イクロ操作に対して認識可能となる。望ましい実
施態様においては、この最短時間は約60ナノ秒で
あるが、これはフリツプフロツプ809および8
10のクロツク入力におけるクロツク信号
BSDCND+が同期フリツプフロツプ802のク
ロツク信号BSDCNN+より約60ナノ秒後に生じ
るためである。この60ナノ秒の時間は、NAND
ゲート811と関連する伝播遅れおよびバス・ロ
ツク・フリツプフロツプ820のセツテイング時
間を無視する。従つて、CPUのフアームウエア
がCPUロツク・フリツプフロツプ801のセツ
テイングの60ナノ秒後よりも早くバス・ロツク・
フリツプフロツプ820の出力を索引することが
ない限り、バスによるメモリーのロツク操作は
CPUから認めることができ、CPUとバス間のメ
モリーのロツクにおける競合の発生が未だ決定さ
れない時、CPUは一切の動作を行なわない。 CPUが第10図の各マイクロ命令の実行のた
め約240ナノ秒を要する望ましい実施態様におい
ては、CPUロツク・フリツプフロツプ801を
セツトするブロツク1001のマイクロ操作の実
行と、バス・ロツク・フリツプフロツプ820の
出力がブロツク1002のマイクロ操作により検
査される時との間に充分な時間が確保されるため
問題は生じない。しかし、マイクロ操作が同期フ
リツプフロツプ802のクロツキングとバス・ロ
ツク・フリツプフロツプ820のクロツキング間
の時間より短い時間しか要さない逆の場合には、
バスがメモリーのロツクに際してCPUに勝る時
これがセツトして安定化する前にブロツク100
2がフリツプフロツプ820の出力を検査しない
ことを保証するためブロツク1001とブロツク
1002間で充分なマイクロ操作が実行される限
り、第10図のフアームウエア操作を依然として
用いることができる。ブロツク1002が実行の
都度無条件にメモリー読出しを行なうが、バスが
メモリーをロツクする期間中は、メモリーのデー
タは再読出しが行なわれるため放置され、このた
めメモリーがロツクされた場合にメモリーが常に
再び読出されるため、バスによりメモリーがロツ
クされた時メモリーから読出されたデータが後で
CPUにより使用される場合は決してないことが
判るであろう。また、第10図のフアームウエア
は1つのマイクロ命令においてメモリーの読出し
とバス・ロツクの検査とを組合わせるが、バス・
ロツクのマイクロ操作における循環動作がメモリ
ーの読出しマイクロ操作に先行する限り、これら
の操作は個々のマイクロ命令においては生じ得な
いことも判るであろう。 以上の論述から、第8図のロツク操作ロジツク
110および第10図のフアームウエア操作の組
合せが、非同期的に動作する2つの装置がある共
用資源に対してロツクおよびアンロツク操作を行
なうことができる簡単な機構を提供することが理
解できよう。望ましい実施態様においては、この
ことは、一旦CPUがメモリーに対してロツク操
作を行ないメモリーが既にバスによりロツクされ
たかどうかとは無関係にCPUロツク・フリツプ
フロツプのセツテイングを無条件に行なうことを
多少共必要とすることをCPUが判断すると、
CPUフアームウエアによつて達成される。CPU
によるメモリーのロツク操作に打勝つたバス・ロ
ツク操作がバス・ロツク・フリツプフロツプをセ
ツトする機会を持つことをCPUに保証すること
を許容するに充分な時間が経過した後、CPUが
読出し指令を発すると同時にバス・ロツク・フリ
ツプフロツプを検査する。もしバス・ロツク・フ
リツプフロツプがセツトされなかつたならば、
CPUは、これがある競合状態に打勝つたこと、
およびバスがその後ロツク操作を行おうとする試
みが否定応答(NAK)を与えられることを保証
される。CPUはこの時バス・ロツク・フリツプ
フロツプを検査することができ、もしメモリーが
バスによりロツクされなかつたならば、CPUは
読出されたデータを使用し、データの修正を行な
い、修正されたデータを再びメモリーに書戻すと
同時にCPUはCPU・ロツク・フリツプフロツプ
をリセツトする。もしCPUのフアームウエアが
バス競合状態を勝抜いてメモリーをロツクしたこ
とを見出すならば、CPUフアームウエアは、
CPUがメモリーの読出しを行ない、データを修
正し、修正されたデータを再びメモリーに書戻し
バス・ロツク・フリツプフロツプをリセツトする
ことができる時バス・ロツク・フリツプ・フロツ
プがリセツトされたことを見出す如き時まで循環
動作を継続する。 CPUは、一旦メモリーがバスによりアンロツ
ク状態になると、バスからのメモリーのロツクを
行なうこれ以上の試みがバスによるメモリーのロ
ツク状態をもたらさず、またメモリーのロツクを
求めるバス上の装置がその以降のロツク操作を再
び試みる結果となる否定応答を与えられるため、
以降のバス要求がメモリーのロツクができないこ
とを保証される。第8図のロツク操作ロジツク1
10は、もしメモリーが既にCPUまたはバスの
一方によりロツクされていなかつたならば、バス
からのメモリーロツクの試みが単にメモリーをロ
ツクさせる結果となるに過ぎないように動作す
る。バスからのメモリーのロツクの試みは、もし
このメモリーが既にロツクされているならば、
I/O制御装置に対して否定応答が生成され、バ
スは後にメモリーのロツクを再び試みることにな
る。一旦バスによるロツクがなされると、メモリ
ーは、バス上のI/O制御装置がロツクされない
シーケンスによつてメモリーに対して信号を発す
る時までロツク状態を維持することになり、この
時メモリーはバスによるロツクから解除される。
メモリーがCPUまたはバスのいずれかによつて
ロツクされる期間中、バスにおけるどの装置もロ
ツクまたはアンロツク・メモリー操作を要求しな
いメモリーアクセス要求を行なうことができる。
望ましい実施態様においては唯1つのCPUが存
在し、CPUロツク・フリツプフロツプ801を
CPUがセツトする時とメモリーロツク操作の終
りのメモリー書込み操作が行なわれる時の間のシ
ーケンスは、CPUロツク・フリツプフロツプ8
01のリセツトが早過ぎるメモリー書込みを行な
うことになるどんなCPU操作によつても割込み
不能である。 望ましい実施態様においては、メモリーは1つ
のCPUまたは共通バスに接続された複数の装置
の1つのいずれか一方に対して割当てが可能な共
有資源であるが、このロジツクを多重CPUまた
は他の形式の装置の場合もこれを取扱うように拡
張することが可能である。更に、本発明について
はメモリーが共用資源であつて1つの共通バスと
1つのCPUに接続された複数の装置の間に共用
される望ましい実施態様に関して記述したが、本
発明は、他のユーザが資源に対するアクセスを許
与されないある操作について個々のユーザに対し
割当てられねばならない他の形式の資源の共用に
対して等しく適合可能である。 本発明はその望ましい実施態様に関して記し示
したが、当業者には上記および他の形態および細
目における変更が本発明の主旨および範囲から逸
脱することなく行なうことができることが理解さ
れよう。
【図面の簡単な説明】
第1図は本発明のロツク操作ロジツクを含むデ
ータ処理システムを示す全体的ブロツク図、第2
図乃至第6図は第1図のデータ処理システムの共
通バス上に転送される種々の情報のフオーマツト
を示す図、第7図は第1図のデータ処理システム
のバスの作用を示すタイミング図、第8図は本発
明のロツク操作ロジツクを示す論理図、第9図は
第8図のロツク操作ロジツクの例示的な作用を示
すタイミング図、および第10図は第8図のロツ
ク操作ロジツクを用いてロツク・メモリー操作を
行なう時第1図のデータ処理システムのCPUに
より行なわれるマイクロ操作を示すブロツク図で
ある。 100……CPU/メモリー・ボード、101
……メモリー・モジユール1、102……メモリ
ー・モジユール2、103……I/O制御装置、
104……I/O制御装置、105……付属I/
O装置、106……付属I/O装置、107……
共通バス、108……CPUロジツク、109…
…メモリー装置ロジツク、110……ロツク操作
ロジツク、111……優先順位管理装置、112
……リフレツシユ・ロジツク、801……フリツ
プフロツプ、802……同期フリツプフロツプ、
803……メモリー使用中フリツプフロツプ、8
04……NANDゲート、805……ANDゲー
ト、806……NORゲート、807……NAND
ゲート、808……NORゲート、809……フ
リツプフロツプ、810……フリツプフロツプ、
811……NANDゲート、812……NORゲー
ト、813……インバータ、814……インバー
タ、815……インバータ、816……インバー
タ、817……インバータ、818……ANDゲ
ート、819……ANDゲート、820……バ
ス・フリツプフロツプ、821……インバータ、
823……インバータ、824……遅延回線、8
25……ORゲート、826……インバータ。

Claims (1)

  1. 【特許請求の範囲】 1 複数の第1のタイプの装置103,104,
    108と第2のタイプの装置101,102とを
    有し、前記第2のタイプの装置は総ての前記第1
    のタイプの装置によつて利用されるようになつて
    おり、前記第1のタイプの装置の1つが前記第2
    のタイプの装置を利用する特定の種類の操作(ロ
    ツク操作)を行う時、前記第1のタイプの装置の
    他の物が前記特定の種類の操作を行うことを防止
    されねばならず、前記第1のタイプの装置の1つ
    が前記特定の種類の操作を要求する時、対応する
    要求信号(BSLOCK、SETLCK)を発生するデ
    ータ処理装置において、前記第2の装置が前記要
    求信号の1つだけに好適に応答するように制御す
    る装置であつて、 前記第1のタイプの装置の1つから要求信号
    (BSLOCK)を受け取り、前記第2のタイプの装
    置が前記要求を受け入れる状態であること、を表
    す第1の信号(MEACKR)によつて可能化され
    た時前記要求が許されたことの標識を記憶する第
    1の記憶要素820と、 前記第1のタイプの他の1つの装置から要求信
    号(SETLCK)を受け取り、前記第2のタイプ
    の装置の状態に拘わらず前記他の第1のタイプの
    装置がそのような要求をしたことの標識を記憶す
    る第2の記憶要素801と、 前記第2の記憶要素によつて記憶された標識に
    対応する信号を受け取り、要求信号が前記第1の
    記憶要素に供給され得る前記第1のタイプの装置
    の操作のサイクル内の時間(BSDCNN)の間に
    可能化された時、前記第2の記憶要素の信号によ
    つて表示された要求が許されたことの標識を記憶
    する第3の記憶要素802と、 前記第1と第3の記憶要素に接続され、それら
    の中に保持された標識に対応する信号
    (LOCKDD、LOCKED)に応答して、()前記
    第1の記憶要素も前記第3の記憶要素も要求が許
    されたことの標識を保持しない場合、前記第1の
    信号(MEACKR)の発生を可能化するか()
    前記第1又は第3の記憶要素が要求が許されたこ
    との標識を保持している場合、前記第1の信号の
    発生を防止する論理回路804,805,80
    6,809,811と、からなる共有資源のロツ
    クアウト装置。 2 特許請求の範囲第1項記載の装置であつて、
    前記装置を含むデータ処理装置において、前記複
    数の第1のタイプの装置が、共通のバスを介して
    前記第2のタイプの装置に接続された複数の制御
    装置103,104と、前記第2のタイプの装置
    に別に接続された処理装置108とを含み、前記
    第2のタイプの装置がメモリー装置であり、前記
    制御装置の各々がBSLOCK要求信号を発生し、
    前記処理装置がSETLCK要求信号を発生するこ
    とを特徴とする共有資源のロツクアウト装置。 3 特許請求の範囲第2項記載の装置であつて、
    前記第1のタイプの装置の各々が、その特定の種
    類の操作を完了した時、前記第1、第2及び第3
    の記憶要素の対応する1つをクリアする信号を発
    生することを特徴とする共有資源のロツクアウト
    装置。 4 複数の装置を有し、この複数の装置の1つの
    共有装置がその第1の装置および第2の装置によ
    りアクセスが可能であり、前記第1および前記第
    2の装置が相互に非同期的に作動するシステムに
    おいて使用されるロツク装置において、 (A) 前記の共有装置に含まれ、第1のロツク信号
    を受取るための第1のロツク要求受取り装置を
    設け、前記第1のロツク信号は、前記共有装置
    が前記複数の装置の他の装置によりロツクされ
    た期間中は前記複数の装置のどの装置も前記共
    有装置に対するロツク操作を行なうことができ
    ないような前記共有装置に対する割込みされな
    いアクセスをこの第1のロツク信号を送出した
    前記複数の装置の内の1つの装置が要求するこ
    とを表示し、 (B) 前記共有装置に含まれ、前記第1のロツク要
    求受取り装置に対して接続されて、アクセス許
    容信号が受取られた時前記第1のロツク信号が
    受取られた旨の第1の標識を記憶する第1のロ
    ツク記憶装置と、 (C) 前記共有装置に含まれ、前記共有装置が前記
    複数の装置の他の装置によりロツクされた期間
    中前記複数の装置の他のどの装置も前記共有装
    置に対する前記ロツク操作を行なうことができ
    ないような前記共有装置に対する割込みされな
    いアクセスを前記第2の装置が要求する旨の第
    2の標識を無条件に記憶する第2のロツク記憶
    装置と、 (D) 前記共有装置に含まれ、前記第1のロツク要
    求受取り装置および前記第2のロツク記憶装置
    に対して接続されて、前記第1のロツク信号が
    前記第1のロツク要求受取り装置により受取ら
    れる時、前記第2の標識を記憶する同期装置
    と、 (E) 前記共有装置に含まれ、前記同期装置および
    前記第1のロツク記憶装置に対して接続され
    て、前記第1のロツク信号が受取られるか、前
    記第1のロツク記憶装置が前記第1のロツク信
    号が受取られたことを表示するか、あるいは前
    記同期装置が前記第2のロツク記憶装置が前記
    第2の装置が前記共有装置に対する割込みされ
    ないアクセスを要求することを表示するなら
    ば、アクセス拒否信号を生じる応答装置とを設
    け、該応答装置は、もし前記第1のロツク信号
    が受取られるか、前記第1のロツク記憶装置が
    前記第1のロツク信号が受取られたことを表示
    せず、またもし前記同期装置が前記第2の装置
    が前記共有装置に対する割込みされないアクセ
    スを要求することを前記第2のロツク記憶装置
    が表示することを表示しなければ、前記アクセ
    ス許容信号を生じることを特徴とするロツク装
    置。 5 (A) 前記共有装置に含まれ、前記第1のロツ
    ク記憶装置および前記応答装置に対して接続さ
    れて、第1のアンロツク信号を受取る第1のア
    ンロツク信号受取り装置を更に設け、前記第1
    のアンロツク信号は、他の装置が前記共有資源
    に対する前記ロツク操作をこの時行なうことが
    できるように、前記第1のロツク信号を送出し
    た前記複数の装置の前記装置がもはや前記共有
    装置に対する割込みされないアクセスを要求し
    ないことを表示し、 (B) 前記第1のロツク記憶装置に含まれ、前記第
    1のアンロツク要求受取り装置と前記応答装置
    に対して接続されて、もし前記第1のアンロツ
    ク要求受取り装置が前記第1のアンロツク信号
    を受取つたならば、前記アクセス許容信号が受
    取られる時に前記第1のロツク信号が受取られ
    た旨の前記標識をリセツトする第1のアンロツ
    ク装置を更に設けることを特徴とする特許請求
    の範囲第4項記載のロツク装置。 6 前記第2の装置および前記第1のロツク記憶
    装置に対して接続されたループ装置を更に設け、
    該ループ装置は、前記第2の装置が前記第2のロ
    ツク記憶装置に対して前記第2の装置が前記共有
    装置に対する割込みされないアクセスを要求する
    ことを表示する時と、前記第1のロツク信号が受
    取られ、その後前記第1のロツク記憶装置が前記
    第1のロツク信号が受取られたことを表示しない
    場合にのみ、前記ループ装置が前記共有資源に対
    するアクセスを前記第2の装置に許容する旨の前
    記標識をセツトするため、前記第1のロツク記憶
    装置が前記アクセス許容信号に対して応答するこ
    とができた時との間に充分な時間が経過する後ま
    で、前記第2の装置が前記共有装置にアクセスす
    ることを禁止することを特徴とする特許請求の範
    囲第4項記載のロツク装置。 7 前記第2のロツク記憶装置に含まれ第2のア
    ンロツク信号に応答して、前記第2の装置が前記
    共有装置に対する割込みされないアクセスを要求
    する旨の前記標識をリセツトする第2のアンロツ
    ク装置を更に設けることを特徴とする特許請求の
    範囲第6項記載のロツク装置。 8 前記共有装置に含まれ、前記第2のアンロツ
    ク装置に対して接続されて、前記共有装置が前記
    第2の装置に特有な操作を実行する時前記第2の
    アンロツク信号を生じる第2のアンロツク信号生
    成装置を更に設け、前記の特有な操作は前記第2
    の装置により行なわれる前記の全てのロツク操作
    の最後の操作であることを特徴とする特許請求の
    範囲第7項記載のロツク装置。 9 前記応答装置が更に、前記第1のロツク信号
    が受取られる時もし前記共有装置が使用中である
    ならば、アクセス再試行信号を生成する待機装置
    を含むことを特徴とする特許請求の範囲第4項記
    載のロツク装置。 10 前記共有装置がメモリーであり、前記第1
    の装置がI/O制御装置であつて共通のバスによ
    り前記メモリーに対して接続され、前記第2の装
    置は中央処理装置であることを特徴とする特許請
    求の範囲第4項記載のロツク装置。 11 前記第1のロツク記憶装置がJ−K型フリ
    ツプフロツプから成り、前記第2のロツク記憶装
    置がJ−K型フリツプフロツプから成ることを特
    徴とする特許請求の範囲第4項記載のロツク装
    置。 12 前記同期装置がD型フリツプフロツプから
    成ることを特徴とする特許請求の範囲第11項記
    載のロツク装置。 13 前記ループ装置が、前記第1のロツク記憶
    装置の前記標識の一機能として分岐するマイクロ
    操作を含むことを特徴とする特許請求の範囲第6
    項記載のロツク装置。 14 任意の2つの装置の間で情報を転送するた
    め共通のバスにより接続された複数の装置を含
    み、該複数の装置の共有可能な装置が前記複数の
    装置の他の装置によりアクセスされることが可能
    であり、前記共有可能な装置はまた前記共通のバ
    ス以外により主装置によりアクセスされることが
    でき、前記複数の装置のどれか1つを含むことが
    でき、前記主装置は前記共有装置に対する非同期
    のアクセスを同時に行ない、前記共有可能な装置
    はロツク操作ロジツクを含むシステムにおいて、 (A) 前記共有可能な装置に対する割込みされない
    アクセスを要求する前記複数の装置の前記の1
    つから前記共通のバスにより第1のロツク信号
    を受取る第1の装置と、 (B) 前記第1の受取り装置に対して接続され、応
    答装置により生成される肯定応答信号に応答し
    て、前記共有可能な装置が前記第1のロツク信
    号が受取られた前記複数の装置の前記1つによ
    りアクセスされつつあることを表示する第1の
    双安定装置と、 (C) 前記主装置が前記共有可能な装置に対する割
    込みされないアクセスを要求することを表示す
    る第2の双安定装置と、 (D) 前記第2の双安定装置に対して接続され、前
    記第1のロツク信号が受取られる時前記第2の
    双安定装置の標識を記憶する第3の双安定装置
    と、 (E) 前記第1の双安定装置および前記第3の双安
    定装置に対して接続され、前記第1のロツク信
    号が受取られる時、前記第1の双安定装置と前
    記第3の双安定装置がいずれかの装置が前記共
    有可能な資源に対する割込みされないアクセス
    を要求することを表示しなければ、肯定応答信
    号を前記共通のバス上の前記複数の装置に対し
    て生成し、またもし前記第1の双安定装置また
    は前記第3の双安定装置のいずれかが前記複数
    の装置の1つまたは前記主装置が前記共有可能
    な資源に対する割込みされないアクセスを要求
    することを表示するならば、前記共通のバス上
    の前記複数の装置に対して否定応答信号を生成
    する応答装置とを設けることを特徴とするロツ
    ク操作ロジツク。 15 (A) 前記複数の装置の1つから第1のアン
    ロツク信号を前記共通のバスにより受取るため
    の第2の装置を更に設け、該第2の受取り装置
    は前記第1の双安定装置に対して接続され、 (B) 前記第2の受取り装置および前記第1の双安
    定装置に対して接続されて、前記第1のアンロ
    ツク信号および前記肯定応答信号に応答して、
    前記複数の装置の1つの装置が前記共有可能な
    装置に対する割込みされないアクセスを要求す
    ることをもはや表示しないように前記第1の双
    安定装置をリセツトする第1のリセツト装置を
    設けることを特徴とする特許請求の範囲第14
    項記載のロツク操作ロジツク。 16 (A) 前記主装置および前記第1の双安定装
    置に対して接続され、前記第2の双安定装置の
    セツテイングに応答して主装置により前記第1
    の双安定装置の前記表示を試験するループ装置
    を更に設け、該ループ装置による前記試験は、
    前記主装置が前記共有可能装置に対する割込み
    されないアクセスを要求する直前に、前記複数
    の装置の1つが前記共有可能装置に対する割込
    みされないアクセスを要求したならば、前記肯
    定応答による前記第1の双安定装置のセツテイ
    ングを許容するに充分な時間が経過した後にの
    み開始し、 (B) 前記第2の双安定装置に対して接続され、前
    記主装置がもはや前記共有可能装置に対する割
    込みされないアクセスを要求しないことを表示
    する第2のアンロツク信号に応答して前記第2
    の双安定装置をリセツトする第2のリセツト装
    置を更に設けることを特徴とする特許請求の範
    囲第15項記載のロツク操作ロジツク。 17 前記応答装置に接続されて、前記共有可能
    装置に対する割込みされないアクセスを要求する
    ことを表示しない前記複数の装置のどれかまたは
    前記主装置により前記共有可能装置に対するアク
    セスを可能にする装置を更に設けることを特徴と
    する特許請求の範囲第16項記載のロツク操作ロ
    ジツク。 18 前記共有可能な装置に対する割込みされな
    いアクセスが前記複数の装置のどれかにより要求
    される間、前記共有可能装置を除いて、前記複数
    の装置の任意の2つの間の情報の転送を可能にす
    る前記複数の装置の各々におけるロジツクを更に
    設けることを特徴とする特許請求の範囲第17項
    記載のロツク操作ロジツク。 19 前記共有可能装置がメモリーであり、前記
    主装置が中央処理装置であることを特徴とする特
    許請求の範囲第18項記載のロツク操作ロジツ
    ク。 20 主装置に対して非同期的に動作する複数の
    装置を有し、前記主装置および前記複数の装置の
    1つが共有資源に対する割込みされないアクセス
    を同時に要求することができるシステム内の前記
    共有資源に対するアクセスを禁止する方法におい
    て、 (A) 前記主装置が前記共有資源に対する禁止され
    ないアクセスを要求する旨の第1の標識を前記
    主装置が無条件にセツトすることを許容し、 (B) 前記の1つの装置が前記共有資源に対する割
    込みされないアクセスを要求することを表示す
    る第1のロツク信号を前記の1つの装置から受
    取り、 (C) 前記第1のロツク信号が受取られる時第2の
    標識における前記第1の標識の状態を記憶する
    ことにより、前記共有資源に対する割込みされ
    ないアクセスに対する前記主装置の要求および
    前記の1つの装置の要求を同期させ、 (D) 前記主装置が割込みされないアクセスを要求
    することを前記第2の標識が表示しないか、あ
    るいは前記第1のロツク信号が受取られたこと
    を第3の標識が表示しなければ、前記第1のロ
    ツク信号が受取られる時、前記の1つの装置に
    対する肯定応答を生成し、 (E) 前記主装置が前記共有資源に対する割込みさ
    れないアクセスを要求することを前記第2の標
    識が表示するか、あるいは前記第1のロツク信
    号が受取られたことを前記第3の標識が表示す
    るならば、前記第1のロツク信号が受取られる
    時、前記の1つの装置に対する否定応答を生成
    し、 (F) 前記の肯定応答が生成されるならば、前記の
    1つの装置が前記共有資源に対する割込みされ
    ないアクセスを要求する旨の前記第3の標識に
    おける前記表示を記憶することからなることを
    特徴とする方法。 21 (A) もし前記主装置が前記の1つの装置の
    直後に割込みされないアクセスを要求するなら
    ば、前記第3の標識が前記肯定応答によりセツ
    トされるように、前記第1の標識のセツテイン
    グ後に充分な時間が経過した後前記第3の標識
    を試験し、該試験工程は、前記1つの装置が前
    記共有資源に対する割込みされないアクセスを
    要求することを前記第3の標識が表示しない限
    り継続し、 (B) 前記主装置がもはや前記共有資源に対する割
    込みされないアクセスを要求しない時前記第1
    の標識をリセツトする工程を更に含むことを特
    徴とする特許請求の範囲第20項記載の方法。 22 前記複数の装置の1つからのアンロツク信
    号に応答して肯定応答が生成されるならば、前記
    第3の標識をリセツトする工程を更に含むことを
    特徴とする特許請求の範囲第21項記載の方法。
JP59137061A 1983-07-01 1984-07-02 共有資源のロツクアウト操作の方法および装置 Granted JPS6039266A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US510472 1983-07-01
US06/510,472 US4587609A (en) 1983-07-01 1983-07-01 Lockout operation among asynchronous accessers of a shared computer system resource

Publications (2)

Publication Number Publication Date
JPS6039266A JPS6039266A (ja) 1985-03-01
JPH0414370B2 true JPH0414370B2 (ja) 1992-03-12

Family

ID=24030868

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59137061A Granted JPS6039266A (ja) 1983-07-01 1984-07-02 共有資源のロツクアウト操作の方法および装置

Country Status (12)

Country Link
US (1) US4587609A (ja)
EP (1) EP0130593B1 (ja)
JP (1) JPS6039266A (ja)
KR (1) KR900005453B1 (ja)
AU (1) AU572161B2 (ja)
CA (1) CA1211854A (ja)
DE (1) DE3482630D1 (ja)
DK (1) DK165529C (ja)
ES (1) ES8606687A1 (ja)
FI (1) FI79621C (ja)
NO (1) NO166985C (ja)
YU (1) YU45630B (ja)

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4706190A (en) * 1983-09-22 1987-11-10 Digital Equipment Corporation Retry mechanism for releasing control of a communications path in digital computer system
IT1206331B (it) * 1983-10-25 1989-04-14 Honeywell Inf Systems Architettura di sistema di elaborazione dati.
EP0239827B1 (de) * 1986-04-02 1993-05-26 Siemens Aktiengesellschaft Verfahren zum Ansteuern eines gemeinsamen Speichers eines aus einzelnen Mikroprozessorsystemen bestehenden Mehrprozessorsystems
JPH0619760B2 (ja) * 1986-04-23 1994-03-16 日本電気株式会社 情報処理装置
US5115499A (en) * 1986-05-14 1992-05-19 Sequoia Systems, Inc. Shared computer resource allocation system having apparatus for informing a requesting computer of the identity and busy/idle status of shared resources by command code
US5276807A (en) * 1987-04-13 1994-01-04 Emulex Corporation Bus interface synchronization circuitry for reducing time between successive data transmission in a system using an asynchronous handshaking
US4949239A (en) * 1987-05-01 1990-08-14 Digital Equipment Corporation System for implementing multiple lock indicators on synchronous pended bus in multiprocessor computer system
US4858116A (en) * 1987-05-01 1989-08-15 Digital Equipment Corporation Method and apparatus for managing multiple lock indicators in a multiprocessor computer system
US4937733A (en) * 1987-05-01 1990-06-26 Digital Equipment Corporation Method and apparatus for assuring adequate access to system resources by processors in a multiprocessor computer system
US4941083A (en) * 1987-05-01 1990-07-10 Digital Equipment Corporation Method and apparatus for initiating interlock read transactions on a multiprocessor computer system
US5341510A (en) * 1987-05-01 1994-08-23 Digital Equipment Corporation Commander node method and apparatus for assuring adequate access to system resources in a multiprocessor
US4980850A (en) * 1987-05-14 1990-12-25 Digital Equipment Corporation Automatic sizing memory system with multiplexed configuration signals at memory modules
US5291581A (en) * 1987-07-01 1994-03-01 Digital Equipment Corporation Apparatus and method for synchronization of access to main memory signal groups in a multiprocessor data processing system
IN169634B (ja) * 1987-07-01 1991-11-23 Digital Equipment Corp
US5062044A (en) * 1987-09-29 1991-10-29 Western Digital Corporation Temporary bus master for use in a digital system having asynchronously communicating sub-systems
AU604063B2 (en) * 1987-10-13 1990-12-06 Honeywell Bull Inc. Circuit for preventing lock-out of high priority requests to a system controller
US4965719A (en) * 1988-02-16 1990-10-23 International Business Machines Corporation Method for lock management, page coherency, and asynchronous writing of changed pages to shared external store in a distributed computing system
US4975870A (en) * 1988-02-25 1990-12-04 Data General Corporation Apparatus for locking a portion of a computer memory
US5111423A (en) * 1988-07-21 1992-05-05 Altera Corporation Programmable interface for computer system peripheral circuit card
US5163141A (en) * 1988-08-01 1992-11-10 Stenograph Corporation RAM lock device and method for a text entry system
US5249285A (en) * 1988-08-01 1993-09-28 Stenograph Corporation RAM lock device and method for a text entry system
US6304987B1 (en) * 1995-06-07 2001-10-16 Texas Instruments Incorporated Integrated test circuit
JPH02103656A (ja) * 1988-10-12 1990-04-16 Fujitsu Ltd 主記憶参照の遂次化制御方式
US5175861A (en) * 1988-10-14 1992-12-29 Nec Corporation Lock processing system
US5167022A (en) * 1988-10-25 1992-11-24 Hewlett-Packard Company Multiprocessor bus locking system with a winning processor broadcasting an ownership signal causing all processors to halt their requests
US5175829A (en) * 1988-10-25 1992-12-29 Hewlett-Packard Company Method and apparatus for bus lock during atomic computer operations
US5222219A (en) * 1988-10-25 1993-06-22 Hewlett-Packard Company Pipeline computer system having write order preservation
JPH02306355A (ja) * 1988-10-25 1990-12-19 Apollo Computer Inc バスロックシステム
US5007054A (en) * 1988-12-28 1991-04-09 Pitney Bowes Inc. Network and protocol for real-time control of machine operations
US5142676A (en) * 1988-12-28 1992-08-25 Gte Laboratories Incorporated Separate content addressable memories for storing locked segment addresses and locking processor identifications for controlling access to shared memory
US5175837A (en) * 1989-02-03 1992-12-29 Digital Equipment Corporation Synchronizing and processing of memory access operations in multiprocessor systems using a directory of lock bits
US5483518A (en) * 1992-06-17 1996-01-09 Texas Instruments Incorporated Addressable shadow port and protocol for serial bus networks
US5131081A (en) * 1989-03-23 1992-07-14 North American Philips Corp., Signetics Div. System having a host independent input/output processor for controlling data transfer between a memory and a plurality of i/o controllers
US5182809A (en) * 1989-05-31 1993-01-26 International Business Machines Corporation Dual bus microcomputer system with programmable control of lock function
JP3005250B2 (ja) * 1989-06-30 2000-01-31 テキサス インスツルメンツ インコーポレイテツド バスモニター集積回路
US5191652A (en) * 1989-11-10 1993-03-02 International Business Machines Corporation Method and apparatus for exploiting communications bandwidth as for providing shared memory
US5161227A (en) * 1989-11-13 1992-11-03 International Business Machines Corporation Multilevel locking system and method
US5499356A (en) * 1989-12-29 1996-03-12 Cray Research, Inc. Method and apparatus for a multiprocessor resource lockout instruction
US5276847A (en) * 1990-02-14 1994-01-04 Intel Corporation Method for locking and unlocking a computer address
US6675333B1 (en) 1990-03-30 2004-01-06 Texas Instruments Incorporated Integrated circuit with serial I/O controller
US5214778A (en) * 1990-04-06 1993-05-25 Micro Technology, Inc. Resource management in a multiple resource system
US5168564A (en) * 1990-10-05 1992-12-01 Bull Hn Information Systems Inc. Cancel mechanism for resilient resource management and control
JPH04308961A (ja) * 1991-01-18 1992-10-30 Ncr Corp 占有されたプロセスの同期ロックの状態を通知するための手段及び装置
US5598552A (en) * 1991-04-17 1997-01-28 Sierra Semiconductor Corporation Error free data transfers
US5237694A (en) * 1991-05-30 1993-08-17 Advanced Micro Devices, Inc. Processing system and method including lock buffer for controlling exclusive critical problem accesses by each processor
JP2739786B2 (ja) * 1991-07-26 1998-04-15 日本電気株式会社 マルチ・プロセッサシステム
US5491799A (en) * 1992-01-02 1996-02-13 Amdahl Corporation Communication interface for uniform communication among hardware and software units of a computer system
CA2086691C (en) * 1992-03-30 1997-04-08 David A. Elko Communicating messages between processors and a coupling facility
US5274823A (en) * 1992-03-31 1993-12-28 International Business Machines Corporation Interrupt handling serialization for process level programming
US5768548A (en) * 1992-04-15 1998-06-16 Intel Corporation Bus bridge for responding to received first write command by storing data and for responding to received second write command by transferring the stored data
US5467295A (en) * 1992-04-30 1995-11-14 Intel Corporation Bus arbitration with master unit controlling bus and locking a slave unit that can relinquish bus for other masters while maintaining lock on slave unit
US5423044A (en) * 1992-06-16 1995-06-06 International Business Machines Corporation Shared, distributed lock manager for loosely coupled processing systems
US5392433A (en) * 1992-09-25 1995-02-21 International Business Machines Corporation Method and apparatus for intraprocess locking of a shared resource in a computer system
JP2874488B2 (ja) * 1992-10-30 1999-03-24 富士通株式会社 処理装置
GB9314860D0 (en) * 1993-07-16 1993-09-01 D2B Systems Co Ltd Communication bus system with mitigation of slave station locking problem and master station for use in such communication system
US5526524A (en) * 1993-12-23 1996-06-11 International Business Machines Corporation Method and system for management of locked objects in a computer supported cooperative work environment
US5673384A (en) * 1995-10-06 1997-09-30 Hewlett-Packard Company Dual disk lock arbitration between equal sized partition of a cluster
US5969538A (en) 1996-10-31 1999-10-19 Texas Instruments Incorporated Semiconductor wafer with interconnect between dies for testing and a process of testing
IE960753A1 (en) * 1996-10-29 1998-05-06 Sportables Limited A method and apparatus for controlling access by two¹computer processors to a shared resource
US6041376A (en) * 1997-04-24 2000-03-21 Sequent Computer Systems, Inc. Distributed shared memory system having a first node that prevents other nodes from accessing requested data until a processor on the first node controls the requested data
US5987550A (en) * 1997-06-30 1999-11-16 Emc Corporation Lock mechanism for shared resources in a data processing system
US6076126A (en) * 1997-06-30 2000-06-13 Emc Corporation Software locking mechanism for locking shared resources in a data processing system
US6078981A (en) * 1997-12-29 2000-06-20 Intel Corporation Transaction stall technique to prevent livelock in multiple-processor systems
US6408413B1 (en) 1998-02-18 2002-06-18 Texas Instruments Incorporated Hierarchical access of test access ports in embedded core integrated circuits
US6405335B1 (en) 1998-02-25 2002-06-11 Texas Instruments Incorporated Position independent testing of circuits
US7013305B2 (en) 2001-10-01 2006-03-14 International Business Machines Corporation Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange
US6381663B1 (en) 1999-03-26 2002-04-30 Hewlett-Packard Company Mechanism for implementing bus locking with a mixed architecture
US7058862B2 (en) 2000-05-26 2006-06-06 Texas Instruments Incorporated Selecting different 1149.1 TAP domains from update-IR state
US6651088B1 (en) * 1999-07-20 2003-11-18 Hewlett-Packard Development Company, L.P. Method for reducing coherent misses in shared-memory multiprocessors utilizing lock-binding prefetchs
US6493776B1 (en) 1999-08-12 2002-12-10 Mips Technologies, Inc. Scalable on-chip system bus
US6604159B1 (en) 1999-08-12 2003-08-05 Mips Technologies, Inc. Data release to reduce latency in on-chip system bus
US6681283B1 (en) 1999-08-12 2004-01-20 Mips Technologies, Inc. Coherent data apparatus for an on-chip split transaction system bus
US6490642B1 (en) * 1999-08-12 2002-12-03 Mips Technologies, Inc. Locked read/write on separate address/data bus using write barrier
US6728915B2 (en) 2000-01-10 2004-04-27 Texas Instruments Incorporated IC with shared scan cells selectively connected in scan path
US6769080B2 (en) 2000-03-09 2004-07-27 Texas Instruments Incorporated Scan circuit low power adapter with counter
EP1320841A1 (en) 2000-09-28 2003-06-25 Scientific Learning Corp. Method and apparatus for automated training of language learning skills
US7111228B1 (en) 2002-05-07 2006-09-19 Marvell International Ltd. System and method for performing parity checks in disk storage system
US7287102B1 (en) 2003-01-31 2007-10-23 Marvell International Ltd. System and method for concatenating data
US7007114B1 (en) * 2003-01-31 2006-02-28 Qlogic Corporation System and method for padding data blocks and/or removing padding from data blocks in storage controllers
US7039771B1 (en) 2003-03-10 2006-05-02 Marvell International Ltd. Method and system for supporting multiple external serial port devices using a serial port controller in embedded disk controllers
US7099963B2 (en) * 2003-03-10 2006-08-29 Qlogic Corporation Method and system for monitoring embedded disk controller components
US7492545B1 (en) 2003-03-10 2009-02-17 Marvell International Ltd. Method and system for automatic time base adjustment for disk drive servo controllers
US7064915B1 (en) 2003-03-10 2006-06-20 Marvell International Ltd. Method and system for collecting servo field data from programmable devices in embedded disk controllers
US7870346B2 (en) * 2003-03-10 2011-01-11 Marvell International Ltd. Servo controller interface module for embedded disk controllers
US7219182B2 (en) * 2003-03-10 2007-05-15 Marvell International Ltd. Method and system for using an external bus controller in embedded disk controllers
US7209919B2 (en) * 2003-06-11 2007-04-24 International Business Machines Corporation Library server locks DB2 resources in short time for CM implicit transaction
US7526691B1 (en) 2003-10-15 2009-04-28 Marvell International Ltd. System and method for using TAP controllers
US7139150B2 (en) * 2004-02-10 2006-11-21 Marvell International Ltd. Method and system for head position control in embedded disk drive controllers
US7120084B2 (en) 2004-06-14 2006-10-10 Marvell International Ltd. Integrated memory controller
US8166217B2 (en) * 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
US7757009B2 (en) * 2004-07-19 2010-07-13 Marvell International Ltd. Storage controllers with dynamic WWN storage modules and methods for managing data and connections between a host and a storage device
US9201599B2 (en) * 2004-07-19 2015-12-01 Marvell International Ltd. System and method for transmitting data in storage controllers
US8032674B2 (en) * 2004-07-19 2011-10-04 Marvell International Ltd. System and method for controlling buffer memory overflow and underflow conditions in storage controllers
US7386661B2 (en) 2004-10-13 2008-06-10 Marvell International Ltd. Power save module for storage controllers
US7240267B2 (en) 2004-11-08 2007-07-03 Marvell International Ltd. System and method for conducting BIST operations
US7802026B2 (en) * 2004-11-15 2010-09-21 Marvell International Ltd. Method and system for processing frames in storage controllers
US7609468B2 (en) * 2005-04-06 2009-10-27 Marvell International Ltd. Method and system for read gate timing control for storage controllers
WO2007091297A1 (ja) * 2006-02-06 2007-08-16 Fujitsu Limited 情報処理装置、cpu、診断プログラムおよび診断方法
US7797473B2 (en) * 2008-06-05 2010-09-14 Dell Products, Lp System for executing system management interrupts and methods thereof
US9292533B2 (en) 2010-06-08 2016-03-22 Dell Products L.P. Systems and methods for improving storage efficiency in an information handling system
US9575813B2 (en) * 2012-07-17 2017-02-21 Microsoft Technology Licensing, Llc Pattern matching process scheduler with upstream optimization

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3398405A (en) * 1965-06-07 1968-08-20 Burroughs Corp Digital computer with memory lock operation
US3623011A (en) * 1969-06-25 1971-11-23 Bell Telephone Labor Inc Time-shared access to computer registers
US3641505A (en) * 1969-06-25 1972-02-08 Bell Telephone Labor Inc Multiprocessor computer adapted for partitioning into a plurality of independently operating systems
US3631405A (en) * 1969-11-12 1971-12-28 Honeywell Inc Sharing of microprograms between processors
US3725872A (en) * 1971-03-03 1973-04-03 Burroughs Corp Data processing system having status indicating and storage means
US3820079A (en) * 1971-11-01 1974-06-25 Hewlett Packard Co Bus oriented,modular,multiprocessing computer
US3827029A (en) * 1972-09-25 1974-07-30 Westinghouse Electric Corp Memory and program protection system for a digital computer system
US3889237A (en) * 1973-11-16 1975-06-10 Sperry Rand Corp Common storage controller for dual processor system
US4318182A (en) * 1974-04-19 1982-03-02 Honeywell Information Systems Inc. Deadlock detection and prevention mechanism for a computer system
US4000485A (en) * 1975-06-30 1976-12-28 Honeywell Information Systems, Inc. Data processing system providing locked operation of shared resources
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
JPS5443644A (en) * 1977-09-13 1979-04-06 Fujitsu Ltd Processing system for deadlock automatic release at exclusive control time
US4136386A (en) * 1977-10-06 1979-01-23 International Business Machines Corporation Backing store access coordination in a multi-processor system
JPS6016664B2 (ja) * 1977-10-28 1985-04-26 豊田工機株式会社 デ−タ転送装置
US4320455A (en) * 1978-01-09 1982-03-16 Honeywell Information Systems Inc. Queue structure for a data processing system
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4521848A (en) * 1978-10-31 1985-06-04 Honeywell Information Systems Inc. Intersystem fault detection and bus cycle completion logic system
US4237534A (en) * 1978-11-13 1980-12-02 Motorola, Inc. Bus arbiter
US4488217A (en) * 1979-03-12 1984-12-11 Digital Equipment Corporation Data processing system with lock-unlock instruction facility
JPS5847468Y2 (ja) * 1979-09-13 1983-10-29 横河電機株式会社 マイクロプロセツサ相互排除回路
US4319324A (en) * 1980-01-08 1982-03-09 Honeywell Information Systems Inc. Double word fetch system
US4323967A (en) * 1980-04-15 1982-04-06 Honeywell Information Systems Inc. Local bus interface for controlling information transfers between units in a central subsystem
US4415972A (en) * 1980-12-29 1983-11-15 Sperry Corporation Dual port memory interlock
US4507730A (en) * 1981-10-01 1985-03-26 Honeywell Information Systems Inc. Memory system with automatic memory configuration
US4558429A (en) * 1981-12-17 1985-12-10 Honeywell Information Systems Inc. Pause apparatus for a memory controller with interleaved queuing apparatus
US4484270A (en) * 1982-07-07 1984-11-20 Sperry Corporation Centralized hardware control of multisystem access to shared and non-shared subsystems

Also Published As

Publication number Publication date
FI79621B (fi) 1989-09-29
DE3482630D1 (de) 1990-08-09
JPS6039266A (ja) 1985-03-01
YU45630B (sh) 1992-07-20
NO166985B (no) 1991-06-10
ES533831A0 (es) 1986-04-16
NO166985C (no) 1991-09-18
AU572161B2 (en) 1988-05-05
FI842558A0 (fi) 1984-06-26
CA1211854A (en) 1986-09-23
DK165529C (da) 1993-04-19
YU114284A (en) 1987-06-30
DK165529B (da) 1992-12-07
EP0130593A2 (en) 1985-01-09
EP0130593B1 (en) 1990-07-04
EP0130593A3 (en) 1986-05-21
NO842649L (no) 1985-01-02
DK323084A (da) 1985-01-02
KR850001571A (ko) 1985-03-30
AU2993884A (en) 1985-01-03
DK323084D0 (da) 1984-06-29
FI79621C (fi) 1990-01-10
KR900005453B1 (ko) 1990-07-30
US4587609A (en) 1986-05-06
FI842558A7 (fi) 1985-01-02
ES8606687A1 (es) 1986-04-16

Similar Documents

Publication Publication Date Title
JPH0414370B2 (ja)
US4763249A (en) Bus device for use in a computer system having a synchronous bus
US4787033A (en) Arbitration mechanism for assigning control of a communications path in a digital computer system
US4769768A (en) Method and apparatus for requesting service of interrupts by selected number of processors
US4706190A (en) Retry mechanism for releasing control of a communications path in digital computer system
US4661905A (en) Bus-control mechanism
US5983303A (en) Bus arrangements for interconnection of discrete and/or integrated modules in a digital system and associated method
CA1209271A (en) Cache invalidation mechanism for multiprocessor systems
JPS6112303B2 (ja)
EP0301610B1 (en) Data processing apparatus for connection to a common communication path in a data processing system
JP2539021B2 (ja) 保留バスに割り込み要求を送る割り込み要求発生ノ―ド
WO1988008577A2 (en) Node for servicing interrupt request messages on a pended bus
JPH10143467A (ja) データ処理システムにおいてバス所有権を調停するための方法および装置
EP0139568B1 (en) Message oriented interrupt mechanism for multiprocessor systems
CN114780479B (zh) 原子操作控制电路、系统和电子设备
EP0340347B1 (en) Bus arbitration system
JPH0648815B2 (ja) データ伝送装置及び方法
JPS58151662A (ja) 優先権レゾルバ
JPH05108460A (ja) メモリ制御方法