JPH0427584B2 - - Google Patents
Info
- Publication number
- JPH0427584B2 JPH0427584B2 JP11966484A JP11966484A JPH0427584B2 JP H0427584 B2 JPH0427584 B2 JP H0427584B2 JP 11966484 A JP11966484 A JP 11966484A JP 11966484 A JP11966484 A JP 11966484A JP H0427584 B2 JPH0427584 B2 JP H0427584B2
- Authority
- JP
- Japan
- Prior art keywords
- access
- cpu
- cpus
- resource
- access request
- 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
- 230000005540 biological transmission Effects 0.000 description 25
- 230000002457 bidirectional effect Effects 0.000 description 3
- FPIPGXGPPPQFEQ-OVSJKPMPSA-N all-trans-retinol Chemical compound OC\C=C(/C)\C=C\C=C(/C)\C=C\C1=C(C)CCCC1(C)C FPIPGXGPPPQFEQ-OVSJKPMPSA-N 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000011717 all-trans-retinol Substances 0.000 description 1
- 235000019169 all-trans-retinol Nutrition 0.000 description 1
- 229940058140 avita Drugs 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Classifications
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は複数の互いに独立したCPU(中央処理
装置)がメモリ、入出力装置、CPU、バスなど
の特定の資源を共有するマルチCPUの調停装置
に関する。
装置)がメモリ、入出力装置、CPU、バスなど
の特定の資源を共有するマルチCPUの調停装置
に関する。
複数の互いに独立したCPUがメモリ、入出力
装置、CPU、バスなどの特定の資源を共有する
マルチCPUシステムにおいては、同時に2以上
のCPUが同一資源に対してアクセス要求を出し
競合を生ずる。この場合、従来のマルチCPUシ
ステムにあつては、競合するアクセス要求のうち
から適宜の優先順位の下でただ1つのCPUのア
クセス要求を選択して、このCPUに特定の資源
に対するアクセス権を付与し、他のCPUを待機
させるようにCPUを制御する回路いわゆるアビ
ータを使用していた。
装置、CPU、バスなどの特定の資源を共有する
マルチCPUシステムにおいては、同時に2以上
のCPUが同一資源に対してアクセス要求を出し
競合を生ずる。この場合、従来のマルチCPUシ
ステムにあつては、競合するアクセス要求のうち
から適宜の優先順位の下でただ1つのCPUのア
クセス要求を選択して、このCPUに特定の資源
に対するアクセス権を付与し、他のCPUを待機
させるようにCPUを制御する回路いわゆるアビ
ータを使用していた。
しかし、優先順位に基づいて選択したCPUが
資源をアクセスしているときは他のCPUの動作
を停止させてしまうアビータはマルチCPUシス
テム全体の効率を低下させるという問題があつ
た。また、アビータとして供給されるLSI(集積
回路)は高価であるという問題があつた。
資源をアクセスしているときは他のCPUの動作
を停止させてしまうアビータはマルチCPUシス
テム全体の効率を低下させるという問題があつ
た。また、アビータとして供給されるLSI(集積
回路)は高価であるという問題があつた。
本発明は上記実情に鑑みてなされたもので、簡
単な回路構成によつて、複数のCPUが効率良く
資源を共有し得るマルチCPUの調停装置を提供
することを目的とする。
単な回路構成によつて、複数のCPUが効率良く
資源を共有し得るマルチCPUの調停装置を提供
することを目的とする。
そこで本発明では、各CPU間で少なくとも2
回は資源に対するアクセス情報の受渡しを実行
し、各CPU間で資源のアクセスについて調停を
行う。また、本発明では各CPU間で受渡しされ
るアクセス情報に基づいて複数のCPUのうちた
だ一つCPUが資源をアクセスしようとするとき
のみ該アクセスを可能とする。
回は資源に対するアクセス情報の受渡しを実行
し、各CPU間で資源のアクセスについて調停を
行う。また、本発明では各CPU間で受渡しされ
るアクセス情報に基づいて複数のCPUのうちた
だ一つCPUが資源をアクセスしようとするとき
のみ該アクセスを可能とする。
以下、本発明の一実施例を添付図面を参照して
詳細に説明する。
詳細に説明する。
第1図は本発明に係るマルチCPUの調停装置
の一実施例を示すブロツク図である。
の一実施例を示すブロツク図である。
この実施例の装置は互いに独立した2つの
CPU1および2によつてメモリ、入出力装置、
あるいはCPUなど特定の資源3を共有しており、
CPU1と2との間で資源3に対してこれからア
クセスしようとしているかあるいはすでにアクセ
スしているかを示すアクセス情報を受渡しして各
CPU間で資源3のアクセスに対する調停を行な
うとともに、2つのCPUが同時に資源3をアク
セスしようとしたときはこれを禁止するようにな
つている。
CPU1および2によつてメモリ、入出力装置、
あるいはCPUなど特定の資源3を共有しており、
CPU1と2との間で資源3に対してこれからア
クセスしようとしているかあるいはすでにアクセ
スしているかを示すアクセス情報を受渡しして各
CPU間で資源3のアクセスに対する調停を行な
うとともに、2つのCPUが同時に資源3をアク
セスしようとしたときはこれを禁止するようにな
つている。
CPU1はアドレスバス4がアドレスデコーダ
5を介して入出力ポート6と一方向バスドライバ
7および共通アドレスバス8を介して資源3に、
データバス9が入出力ポート6と双方向バスドラ
イバ10および共通データバス11を介して資源
3にそれぞれ接続されている。同様にして、
CPU2はアドレスバス12がアドレスデコーダ
13を介して入出力ポート14と一方向バスドラ
イバ15および共通アドレスバス8を介して資源
3に、データバス16が入出力ポート14と双方
向バスドライバ17および共通データバス11を
介して資源3にそれぞれ接続されている。
5を介して入出力ポート6と一方向バスドライバ
7および共通アドレスバス8を介して資源3に、
データバス9が入出力ポート6と双方向バスドラ
イバ10および共通データバス11を介して資源
3にそれぞれ接続されている。同様にして、
CPU2はアドレスバス12がアドレスデコーダ
13を介して入出力ポート14と一方向バスドラ
イバ15および共通アドレスバス8を介して資源
3に、データバス16が入出力ポート14と双方
向バスドライバ17および共通データバス11を
介して資源3にそれぞれ接続されている。
また、CPU1と2は、入出力ポート6と14
とがCPU1からCPU2にCPU1の資源3に対す
るアクセス情報を伝送する伝送路RMO,RM1
およびCPU2からCPU1にCPU2の資源3に対
するアクセス情報を伝送する伝送路RSO,RS1
を介して接続されており、資源3をアクセスしよ
うとするときには、相手のCPUが出力している
アクセス情報を2回モニタし、アクセス可能であ
るか否かを判断するとともに、アクセスの段階に
応じて自己のアクセス情報を変化させる。例え
ば、CPU1は当該システムが初期化されたとき
には、伝送路RMOに“0”、RM1に“1”なる
アクセス情報を出力し、CPU2の出力するアク
セス情報の1回目のモニタで資源3に対するアク
セスが可能であると判断したときには、伝送路
RM1に出力しているアクセス情報を“1”から
“0”に変化させ、さらに2回目のモニタでアク
セスが可能であると判断したときには、伝送路
RMOに出力しているアクセス情報を“0”から
“1”に変化させる。同様にしてCPU2はCPU1
の出力するアクセス情報を2回モニタし、アクセ
スの段階に応じて自己のアクセス情報を変化させ
る。
とがCPU1からCPU2にCPU1の資源3に対す
るアクセス情報を伝送する伝送路RMO,RM1
およびCPU2からCPU1にCPU2の資源3に対
するアクセス情報を伝送する伝送路RSO,RS1
を介して接続されており、資源3をアクセスしよ
うとするときには、相手のCPUが出力している
アクセス情報を2回モニタし、アクセス可能であ
るか否かを判断するとともに、アクセスの段階に
応じて自己のアクセス情報を変化させる。例え
ば、CPU1は当該システムが初期化されたとき
には、伝送路RMOに“0”、RM1に“1”なる
アクセス情報を出力し、CPU2の出力するアク
セス情報の1回目のモニタで資源3に対するアク
セスが可能であると判断したときには、伝送路
RM1に出力しているアクセス情報を“1”から
“0”に変化させ、さらに2回目のモニタでアク
セスが可能であると判断したときには、伝送路
RMOに出力しているアクセス情報を“0”から
“1”に変化させる。同様にしてCPU2はCPU1
の出力するアクセス情報を2回モニタし、アクセ
スの段階に応じて自己のアクセス情報を変化させ
る。
次に、同時アクセス禁止回路18はCPU1か
ら伝送路RMOおよびCPU2から伝送路RSOにそ
れぞれ出力されているアクセス情報に基づいて、
バスドライバ7,10あるいは15,17のいず
れか一方をイネーブルにしてCPU1あるいは
CPU2の資源3に対するアクセスを可能とする
ものである。すなわち、同時アクセス禁止回路1
8は伝送路RMOに“1”、RSO“0”が出力され
ているときにはバスドライバ7,10をイネーブ
ルとし、伝送路RMOに“0”、RSOに“1”が
出力されているときにはバスドライバ15,17
をイネーブルとし、さらに伝送路RMO,RSOに
ともに“1”が出力されているときには、バスド
ライバ7,10,15,17を全てインヒビツト
とする。
ら伝送路RMOおよびCPU2から伝送路RSOにそ
れぞれ出力されているアクセス情報に基づいて、
バスドライバ7,10あるいは15,17のいず
れか一方をイネーブルにしてCPU1あるいは
CPU2の資源3に対するアクセスを可能とする
ものである。すなわち、同時アクセス禁止回路1
8は伝送路RMOに“1”、RSO“0”が出力され
ているときにはバスドライバ7,10をイネーブ
ルとし、伝送路RMOに“0”、RSOに“1”が
出力されているときにはバスドライバ15,17
をイネーブルとし、さらに伝送路RMO,RSOに
ともに“1”が出力されているときには、バスド
ライバ7,10,15,17を全てインヒビツト
とする。
次に第1図に示したマルチCPUの調停装置の
動作、CPU1が資源3をアクセスする場合の動
作について、第2図に示したフローチヤートを参
照して説明する。なお、第2図は当該調停装置が
初期化され、伝送路RMOおよびRSOに“0”、
RM1およびRS1に“1”が出力されているも
のとする。
動作、CPU1が資源3をアクセスする場合の動
作について、第2図に示したフローチヤートを参
照して説明する。なお、第2図は当該調停装置が
初期化され、伝送路RMOおよびRSOに“0”、
RM1およびRS1に“1”が出力されているも
のとする。
(1) ステツプ100乃至103
CPU1は伝送路RSO,RS1の1回目のモニ
タを行ない、伝送路RS1が“1”(ステツプ
100)かつRSOが“0”(ステツプ101)である
ときは、CPU2が資源3をアクセスしないと
判断し、伝送路RM1に出力しているアクセス
情報を“1”から“0”に変化させる(ステツ
プ102)、また、伝送路RS1が“0”であると
きはCPU2が資源3をアクセスしようとして
いるあるいはアクセスしていると判断し、資源
3のアクセスを中止する。さらに、伝送路RS
1が“1”(ステツプ100)、かつRSOが“1”
(ステツプ101)であるときはエラー処理をし
(ステツプ103)、資源3のアクセスを中止する。
タを行ない、伝送路RS1が“1”(ステツプ
100)かつRSOが“0”(ステツプ101)である
ときは、CPU2が資源3をアクセスしないと
判断し、伝送路RM1に出力しているアクセス
情報を“1”から“0”に変化させる(ステツ
プ102)、また、伝送路RS1が“0”であると
きはCPU2が資源3をアクセスしようとして
いるあるいはアクセスしていると判断し、資源
3のアクセスを中止する。さらに、伝送路RS
1が“1”(ステツプ100)、かつRSOが“1”
(ステツプ101)であるときはエラー処理をし
(ステツプ103)、資源3のアクセスを中止する。
(2) ステツプ104乃至110
CPU1は伝送路RSO,RS1の2回目のモニ
タを行ない、伝送路RS1が“1”(ステツプ
104)、かつ伝送路RSOが“0”(ステツプ105)
であるときは、伝送路RMOに出力しているア
クセス情報を“0”から“1”に変化させ(ス
テツプ106)、資源3に対するアクセスを行なう
(ステツプ107)、または伝送路RS1が“0”で
あるときはCPU2が資源3をアクセスしよう
としているあるいはアクセスしていると判断
し、上記ステツプ102で“1”から“0”に変
化させた伝送路RM1のアクセス情報を“0”
に戻し、資源3のアクセスを中止する。さら
に、伝送路RS1が“1”(ステツプ104)、かつ
RSOが“1”のときは伝送路RM1を“0”か
ら“1”に戻し(ステツプ109)、エラー処理を
し(ステツプ110)、資源3のアクセスを中止す
る。
タを行ない、伝送路RS1が“1”(ステツプ
104)、かつ伝送路RSOが“0”(ステツプ105)
であるときは、伝送路RMOに出力しているア
クセス情報を“0”から“1”に変化させ(ス
テツプ106)、資源3に対するアクセスを行なう
(ステツプ107)、または伝送路RS1が“0”で
あるときはCPU2が資源3をアクセスしよう
としているあるいはアクセスしていると判断
し、上記ステツプ102で“1”から“0”に変
化させた伝送路RM1のアクセス情報を“0”
に戻し、資源3のアクセスを中止する。さら
に、伝送路RS1が“1”(ステツプ104)、かつ
RSOが“1”のときは伝送路RM1を“0”か
ら“1”に戻し(ステツプ109)、エラー処理を
し(ステツプ110)、資源3のアクセスを中止す
る。
以上説明したように本発明によれば複数の
CPUの共有に係る資源をアクセスしようとする
とき各CPU間で少なくとも2回は資源に対する
アクセス情報の受渡しを実行して各CPU間で資
源のアクセスに対する調停を行なうとともに、各
CPU間で受渡しされるアクセス情報に基づいて、
1つのCPUが資源をアクセスしようとしている
ときのみこれを可能とすることにより、複数の
CPUが同時に資源をアクセスすることを回避で
きる。
CPUの共有に係る資源をアクセスしようとする
とき各CPU間で少なくとも2回は資源に対する
アクセス情報の受渡しを実行して各CPU間で資
源のアクセスに対する調停を行なうとともに、各
CPU間で受渡しされるアクセス情報に基づいて、
1つのCPUが資源をアクセスしようとしている
ときのみこれを可能とすることにより、複数の
CPUが同時に資源をアクセスすることを回避で
きる。
また、各CPUは資源のアクセスができなかつ
たときは、アクセスが可能となるまで他の処理が
でき、マルチCPUシステム全体の効率を低下さ
せることがない。
たときは、アクセスが可能となるまで他の処理が
でき、マルチCPUシステム全体の効率を低下さ
せることがない。
第1図は本発明に係るマルチCPUの調停装置
の一実施例を示すブロツク図、第2図は第1図に
示したマルチCPUの調停装置の動作を示すフロ
ーチヤートである。 1,2……CPU(中央処理装置)、3……CPU
1と2が共有する特定の資源、4,12……アド
レスバス、6,14……入出力ポート、7,15
……一方向バスドライバ、8……共通アドレスバ
ス、9,16……データバス、10,17……双
方向バスドライバ、18……同時アクセス禁止回
路、RMO,RM1,RSO,RS1……アクセス情
報が出力される伝送路。
の一実施例を示すブロツク図、第2図は第1図に
示したマルチCPUの調停装置の動作を示すフロ
ーチヤートである。 1,2……CPU(中央処理装置)、3……CPU
1と2が共有する特定の資源、4,12……アド
レスバス、6,14……入出力ポート、7,15
……一方向バスドライバ、8……共通アドレスバ
ス、9,16……データバス、10,17……双
方向バスドライバ、18……同時アクセス禁止回
路、RMO,RM1,RSO,RS1……アクセス情
報が出力される伝送路。
Claims (1)
- 【特許請求の範囲】 1 第1のCPUおよび第2のCPUと、 前記第1および第2のCPUからアクセスされ
る共有資源と、 前記第1および第2のCPU間で第1のアクセ
ス要求および第2のアクセス要求を相互に送受す
るアクセス情報送受手段と、 前記第2のアクセス要求を送出した前記第1お
よび第2のCPUのうちのいずれかを前記共有資
源に接続する接続手段とを備え、 前記第1および第2のCPUは相手側のCPUか
ら前記第1および第2のアクセス要求のうちの少
なくとも一方を受取つたか否かを判定し、いずれ
のアクセス要求も受取つていなければ前記第1の
アクセス要求を送出し、引続き前記判定を再び行
つていずれのアクセス要求も受取つていなければ
前記第2のアクセス要求を送出し、この後に前記
接続手段を介して前記共有資源にアクセスするこ
とを特徴とするマルチCPUの調停装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11966484A JPS60263254A (ja) | 1984-06-11 | 1984-06-11 | マルチcpuの調停装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11966484A JPS60263254A (ja) | 1984-06-11 | 1984-06-11 | マルチcpuの調停装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60263254A JPS60263254A (ja) | 1985-12-26 |
JPH0427584B2 true JPH0427584B2 (ja) | 1992-05-12 |
Family
ID=14767007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11966484A Granted JPS60263254A (ja) | 1984-06-11 | 1984-06-11 | マルチcpuの調停装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60263254A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2652976B2 (ja) * | 1990-07-31 | 1997-09-10 | 日本電気株式会社 | 共有メモリの排他制御方式 |
-
1984
- 1984-06-11 JP JP11966484A patent/JPS60263254A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS60263254A (ja) | 1985-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0369265B1 (en) | Multiprocessor system having global data replication | |
DE69108434T2 (de) | Mehrgruppen-Signalprozessor. | |
US4494193A (en) | Deadlock detection and resolution scheme | |
US4481572A (en) | Multiconfigural computers utilizing a time-shared bus | |
US7421529B2 (en) | Method and apparatus to clear semaphore reservation for exclusive access to shared memory | |
EP0581335B1 (en) | Data processing system having units competing for access to shared resources and arbitration unit responsive to the status of the shared resources | |
US4933838A (en) | Segmentable parallel bus for multiprocessor computer systems | |
JPS62500549A (ja) | マルチプロセッサ・システムにおけるマルチプロセッサの動作を順序付ける方法および装置 | |
US5548780A (en) | Method for semaphore communication between incompatible bus locking architectures | |
CA1221173A (en) | Microcomputer system with bus control means for peripheral processing devices | |
EP0929866B1 (en) | Bus interface control circuit | |
JPH056223B2 (ja) | ||
US7581049B2 (en) | Bus controller | |
US6347352B1 (en) | Computer system having a plurality of bus agents coupled to bus requesters wherein each bus agent includes an internal arbiter that selects one of the bus requests | |
US20230195669A1 (en) | Access arbitration system and method for plurality of i2c communication-based master devices | |
US5708784A (en) | Dual bus computer architecture utilizing distributed arbitrators and method of using same | |
JPS63175962A (ja) | 直接メモリアクセス制御装置とマルチマイクロコンピュータシステム内におけるデータ転送方法 | |
JPH0427584B2 (ja) | ||
WO1996003697A1 (en) | Method for semaphore communication between incompatible bus locking architectures | |
KR20040032732A (ko) | 데이터 버스 시스템 및 버스간 크로스 액세스 방법 | |
JPH02100746A (ja) | マルチプロセッサ・バス | |
JPH0562384B2 (ja) | ||
JPH06224975A (ja) | 結合したモジュールをリセットする方法及びこの方法を用いるシステム | |
JPS5975354A (ja) | プロセッサ装置 | |
KR0170497B1 (ko) | 어레이 프로세서간의 자원 공유를 위한 구조 |