JPH0367357A - マルチcpuシステム - Google Patents

マルチcpuシステム

Info

Publication number
JPH0367357A
JPH0367357A JP20317089A JP20317089A JPH0367357A JP H0367357 A JPH0367357 A JP H0367357A JP 20317089 A JP20317089 A JP 20317089A JP 20317089 A JP20317089 A JP 20317089A JP H0367357 A JPH0367357 A JP H0367357A
Authority
JP
Japan
Prior art keywords
processing
data
cpu
memory
common memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP20317089A
Other languages
English (en)
Inventor
Nobuharu Takahashi
信晴 高橋
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP20317089A priority Critical patent/JPH0367357A/ja
Publication of JPH0367357A publication Critical patent/JPH0367357A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〈産業上の利用分野〉 本発明は、複数のCPUによって処理を実行するマルチ
CPUシステムに関する。
〈従来技術〉 一般に、CPUを用いたシステムにおいては、1つのC
PUを用いた、いわゆるシングルCPU方式によってシ
ステムを構築することが多い。
第7図はこのようなシングルCPU方式のシステム構成
例を示すブロック図である。
この図に示すシステムは工つのCPUl01と、このC
PUl0Iのプログラムを格納するROM等のメモリ1
02と、前記CPUl01の作業エリアとして使用され
るRAM等のメモリ103と、外部に対して信号の入出
力を行なう周辺装置l○4とを備えており、メモリ10
2に格納されたプログラムに基づいて種々の処理を実行
する。
この場合、プログラムによって記述された内容がサブル
ーチン処理であれば、第8図に示すような手順で処理を
実行する。
この処理では、CPUl01はまずサブルーチンから戻
るのに必要な番地(戻り番地)として現在の実行番地を
記憶した後(ステップ5TIOI)、サブルーチンの先
頭番地にジャンプする(ステップ5T102)。
そして、このサブルーチンにおいて、CPUl01はま
ずCPU内部にある各レジスタの値をメモリ103のス
タックエリアに退避させる(ステップ5T103)。
この後、CPUl0Iはサブルーチンによって規定され
ている処理、例えば周辺装置104からデータを取り込
みこれをレジスタに格納する処理や(ステップ5T10
4)、このレジスタからメモリ103にデータを転送す
る処理などを行なった後(ステップ5T105.)、ス
タックエリアに退避させていた多値をレジスタに復帰さ
せる(ステップ5T106)。
次いで、CPUl01は記憶している戻り番地の値を読
出しくステップ5T107)、この値によって示される
番地にジャンプしメインルーチンに戻る(ステップ5T
108)。
そして、このメインルーチンに記述されている処理、例
えば前記サブルーチンで取り込んだ値をレジスタに転送
する処理等を行なう(ステップ5T109)。
また〜プログラムに記述された内容が割り込み処理であ
れば、第9図に示す手順で処理を実行する。
この処理では、CPUl01はまず周辺装置104から
出力される割り込み要求を受け、この割り込み要求に応
じて割り込みマスクを更新し、この割り込み要求より優
先度が低い割り込みがかからないようにする(ステップ
5TIIO)。
この後、CPUl0Iは周辺装置104にベクタ番号を
要求し、これが出力されたとき、このベクタ番号に対応
する割り込みベクタを発生するとともに(ステップ5T
12)、CPU内部にあるプログラムカウンタ、各レジ
スタの値をメモリ103のスタックエリアに退避させる
(ステップ5T113)。
この後、CPULOIは前記割り込みベクタに基づいて
この割り込みベクタに対応する割り込み処理ルーチンの
先頭番地を算出しくステップ5T114)、これを前記
プログラムカウンタにセットするとともに(ステップS
Tエエ5)、このプログラムカウンタにセントされてい
る値の番地にジャンプしてこの番地に記述されている処
理を実行する(ステップ5T116.5T117)。
そして、この処理が終了すれば、CPULOIは周辺装
置104の割り込み要求を解除させるとともに、スタッ
クエリアに退避させていた多値をプログラムカウンタや
各レジスタに復帰させ(ステップ5T118)、割り込
み処理を終了する。
このようにこのシステムにおいては、1つのCPUl0
Iによってサブルーチン処理や割り込み処理等を順次シ
ーケンシャルに選択してこれを実行する。
しかしながらこのようなシステムにおいては、メインル
ーチンからサブルーチンや割り込み処理ルーチンに移る
ときゃ、サブルーチンや割り込み処理ルーチンからメイ
ンルーチンに移るとき、CPULOI内部にある各レジ
スタの内容をスタックエリアに退避させたり、復帰させ
たりしなければならないので、これらの処理を行なう分
だけ余分な時間を必要とし、実行速度が遅くなってしま
うという問題があった。
また、メモリ103上などにスタックエリアを確保しな
ければならず、メモリの管理が複雑になってしまうとい
う問題があった。
また、割り込み処理を行なうために、割り込み処理のプ
ログラムが格納されているエリアの先頭番地を管理しな
ければならず、その分だけプログラム作成作業が煩雑に
なってしまうという問題があった。
く目的〉 本発明は上記の事情に鑑み、メインルーチンからサブル
ーチン等に移るときや、このサブルーチン等からメイン
ルーチンに移るとき、レジスタ等の退避処理、復帰処理
を省略してその分だけ処理の実行速度を早くすることが
できるとともに、スタックエリアの管理や、割り込み処
理先番地の管理を省略することができ、これによってプ
ログラムの作成を容易にすることができるマルチCPU
システムを提供することを目的としている。
〈構成〉 上記の問題点を解決するため本発明によるマルチCPU
システムにおいては、CPUを有する複数の処理部と、
これら各処理部のコモンメモリとして使用される共通メ
モリとを備え、各処理部の間のデータ授受を前記共通メ
モリを介して行なうことを特徴としている。
以下、一実施例に基づいて本発明を具体的に説明する。
第工図は本発明によるマルチCPUシステムの一実施例
を示すブロック図である。
この図に示すマルチCPUシステムは2つの処理部上、
2と、1つの共通メモリ3とを備えており、処理部上に
よってデータの入出力処理を行ない、処理部2によって
その他の処理を行なう。
処理部上は1つのCPU4と、このCPU4のプログラ
ムが格納されているROM等のメモリ5と、前記CPU
4の作業エリアとして使用されるRAM等のメモリ6と
、前記CPU4の入出力装置として使用される周辺装置
7と、これらCPU4〜周辺装置7および前記共通メモ
リ3を接続するデータバス8、アドレスバス9とを備え
ており、メモリ5に格納されているプログラムにしたが
って外部装置とデータの授受を行なったり、メモリ6を
作業エリアとして使用して各種の処理を行なったりする
また、処理部2は1つのCPUl0と、このCPUl0
のプログラムが格納されているROM等のメモリ11と
、前記CPUl0の作業エリアとして使用されるR A
 M等のメモリ12と、これらCPUl0〜メモリ12
および前記共通メモリ3とを接続するデータバス13.
アドレスバス14とを備えており、メモリ土工に格納さ
れているプログラムにしたがって共通メモリ3とデータ
の授受を行なったり、メモリ12を作業エリアとして使
用して各種の処理を行なったりする。
また、共通メモリ3は独立した2つの入出力部を持って
おり、前記各処理部上、2から出力されたデータを記憶
したり、記憶しているデータを読み出してこれを前記各
処理部1.2に供給したりする。
次に、第2図および第3図に示すフローチャートを参照
しながらこの実施例のデータ入力動作、データ処理動作
を説明する。
まず、データ入力動作においては、第2図に示す如く処
理部1側のCPU4は周辺袋R7を介してデータを取り
込むとともに(ステップ5TI)、現在、処理部2が共
通メモリ3を使用しているかどうかをチエツクする(ス
テップ5T2)。
そして、処理部2によって共通メモリ3が使用されてい
れば、CPU4はメモリ6が書込み可能かどうかをチエ
ツクしくステップ5T3) 、これが書込み可能であれ
ば1周辺装置7によって取り込まれたデータをメモリ6
に1e次転送して格納する(ステップ5T2.5T5)
また、前記メモリ6が書込み不可能であれば、CPU4
は周辺装置7に対して入力禁止指令を出してデータの取
り込みを中止させる(ステップ5T6)。
この後、処理部2が共通メモリ3の使用を終了すれば、
CPU4はメモリ6に格納しているデータ、即ち前記周
辺装置7を介して取り込んだデータを共通メモリ3に転
送してこの共通メモリ3に前記データを格納する(ステ
ップ5T7)。
またこのデータ入力動作と並行して、処理部2側のCP
Ul0は第3図に示す如く前の処理を処理した後(ステ
ップ5TIO)、前記共通メモリ3から前記処理部1に
よって書き込まれたデータを読み出して(ステップ5T
12)、これを後の処理によって処理する(ステップ5
T12)。
このようにこの実施例においては、処理部lによってデ
ータの入力処理を行ない、処理部2によって入力された
データを処理するようにしたので、シジスタ等の退避処
理、復帰処理を行なうことなくデータの入出力処理、各
種のデータ処理を行なうことができ、これによって処理
の実行速度を早くすることができるとともに、スタック
エリアの管理を省略することができ、プログラムの作成
を容易にすることができる。
第4図は本発明によるマルチCPUシステムの他の実施
例を示すブロック図である。
この図に示すマルチCPUシステムは3つの処理部上O
a、10b、1工と、1つの共通メモリ13と、選択部
工4とを備えており、処理部10.11によってデータ
の入出力処理を行ない、処理部上1によってその他の処
理を行なう。
処理部10a、10bは各々1つのCPU15と、この
CPU15のプログラムが格納されているROM等のメ
モリ16と、前記CPU15の作業エリアとして使用さ
れるRAM等のメモリ17と、前記CPU工5の入出力
装置として使用される周辺装置上8と、これらCPUl
5〜周辺装置18および前記選択部14を接続するデー
タバス19、アドレスバス20とを備えており、各々。
各メモリ16に格納されているプログラムにしたがって
前記選択部14や各外部装置とデータの授受を行なった
り、メモリ17を作業エリアとして使用して各種の処理
を行なったりする。
また、処理部11は工つのCPU25と、このCPU2
5のプログラムが格納されているROM等のメモリ26
と、これらCPU25、メモリ26および前記共通メモ
リ13とを接続するデータバス27、アドレスバス28
とを備えており、メモリ26に格納されているプログラ
ムにしたがって共通メモリ上3とデータの授受を行なっ
たり、この共通メモリ13に格納されている各種データ
に基づいて各種の処理を行なったりする。
また、共通メモリ13は独立した2つの入出力部を持っ
ており、前記処理部1工や選択部14から出力されたデ
ータを記憶したり、記憶しているデータを読み出してこ
れを前記処理部11や選択部14に供給したりする。
選択部14は前記各処理部10a、10bと前記共通メ
モリ13との接続許可、不許可を制御するメ、そり制御
回路30と、このメモリ制御回路30の応答信号IRQ
−Bを反転して応答信号IRQ−Aを生成するインバー
タ31と、これらの各応答信号IRQ−A、IRQ−B
に基づいて前記各処理部10a、10bを構成する各デ
ータバス19のいずれか一方を選択するデータセレクト
回路32と、前記各応答信号IRQ−A、IRQ・Bに
基づいて前記各処理部10a、10bを構成する各アド
レスバス20のいずれか一方を選択するデータセレクト
回路33とを備えており、前記各処理部10a−10b
から割り込み要求があったとき、前記共通メモリ13が
書込み可能かどうかをチエツクし、書込み可能であれば
、割り込み要求を出している処理部のデータバス上9と
、アドレスバス20とを前記共通メモリ13に接続する
次に、M5図および第6図に示すフローチャートを参照
しながらこの実施例の動作を説明する。
まず、各周辺装置18のいずれか、例えば処理部10a
の周辺装置18に対して入力があると、処理部上Oaの
CPUl5はこれを検知して割り込み要求信号INT−
Aを生成しこれを選択部上4のメモリ制御回路30に供
給する(ステップS子王5)。
これによって、メモリ制御回路3oは処理部1工や処理
部10bによって共通メモリ13が現在使用されている
かどうかをチエツクし、これが使用されていれば、デー
タ送信不可を示す応答信号I RQ −Aを生威しこれ
を処理部10aのCPU15に供給する。
処理部10aのCPUl5はこの応答信号IRQ−Aを
受けてたとき、現在、共通メモリ13に対して書込み不
可であると判断する(ステップ5T16)。
この後、処理部10aのCPU15は自処理部10aの
メモリ17が書込み可能かどうかをチエツクしくステッ
プ5T17)、これが書込み可能であれば、周辺装置1
8によって取り込まれたデータをメモリ17に順次転送
して格納する(ステップ5T18.5T19)。
また、前記メモリ17が書込み不可能であれば、処理部
10aのCPU15は周辺装置18に対して入力禁止指
令を出してデータの取り込みを中止させる(ステップ5
T20)。
この後、処理部11や処理部10bが共通メモリ13の
使用を終了すれば、メモリ制御回路3゜はこれを検知し
て共通メモリ13の使用許可を示す応答信号IRQ−B
を生成しこれを処理部l○aのCPUl5と、各データ
セレクト回路32.33に供給する。
これによって、各データセレクト回路32.33は処理
部10aのデータバス19.アドレスバス20を選択す
るとともに、処理部10aのcPU15はメモリエフに
格納しているデータ、即ち前記周辺装置18を介して取
り込んだデータを選択部14の各データセレクタ回l&
32.33、メモリ制御回路30を介して共通メモリ1
3に転送してこの共通メモリ13にこれを格納する(ス
テップ5T21)。
またこのデータ入力動作と並行して、処理部11側のC
PU25は第6図に示す如く前の処理を処理した後(ス
テップ5T25) 、前記共通メモリ13から前記処理
部10aによって書き込まれたデータを読み出して(ス
テップ5T21)、これを後の処理によって処理する(
ステップ5T27)。
このようにこの実施例においては、処理部工Oa、10
bによってデータの入力処理を行ない、処理部11によ
って入力されたデータを処理するようにしたので、上述
した実施例と同様にレジスタ等の退避処理、復帰処理を
省略してその分だけ処理の実行速度を早くすることがで
きるとともに、スタックエリアの管理や、割り込み処理
先番地の管理を省略することができ、これによってプロ
グラムの作成を容易にすることができる。
〈効果〉 以上説明したように本発明によれば、メインルーチンか
らサブルーチン等に移るときや、このサブルーチン等か
らメインルーチンに移るとき、レジスタ等の退避処理、
復帰処理を省略してその分だけ処理の実行速度を早くす
ることができるとともに、スタックエリアの管理や、割
り込み処理先番地の管理を省略することができ、これに
よってプログラムの作成を容易にすることができる。
【図面の簡単な説明】
第1図は本発明によるマルチCPUシステムの一実施例
を示すブロック図、第2図は第1図に示すマルチCPU
システムのデータ入力動作例を示すフローチャート、第
3図は第1図に示すマルチCPUシステムのデータ処理
例を示すフローチャート、第4図は本発明によるマルチ
CPUシステムの一実施例を示すブロック図、第5図は
第4図に示すマルチCPUシステムのデータ入力動作例
を示すフローチャート、第6図は第4図に示すマルチC
PUシステムのデータ処理例を示すフローチャート、第
7図は従来から知られているシングルCPUシステムの
一例を示すブロック図、第8図は第7図に示すシステム
のサブルーチン処理例を示すフローチャート、第9図は
第7図に示すシステムの割り込み処理例を示すフローチ
ャートである。 1.2・・・処理部、3・・・共通メモリ、4.1o・
・・CPU、5・・・メモリ、7・・−周辺装置。

Claims (1)

    【特許請求の範囲】
  1. (1)CPUを有する複数の処理部と、これら各処理部
    のコモンメモリとして使用される共通メモリとを備え、
    各処理部の間のデータ授受を前記共通メモリを介して行
    なうことを特徴とするマルチCPUシステム。
JP20317089A 1989-08-04 1989-08-04 マルチcpuシステム Pending JPH0367357A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20317089A JPH0367357A (ja) 1989-08-04 1989-08-04 マルチcpuシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20317089A JPH0367357A (ja) 1989-08-04 1989-08-04 マルチcpuシステム

Publications (1)

Publication Number Publication Date
JPH0367357A true JPH0367357A (ja) 1991-03-22

Family

ID=16469614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20317089A Pending JPH0367357A (ja) 1989-08-04 1989-08-04 マルチcpuシステム

Country Status (1)

Country Link
JP (1) JPH0367357A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5723908A (en) * 1993-03-11 1998-03-03 Kabushiki Kaisha Toshiba Multilayer wiring structure

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5723908A (en) * 1993-03-11 1998-03-03 Kabushiki Kaisha Toshiba Multilayer wiring structure

Similar Documents

Publication Publication Date Title
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
JP3676882B2 (ja) マイクロプロセッサ及びその周辺装置
EP0298418B1 (en) Virtual computer system
JPH023876A (ja) シングルチップマイクロコンピュータ
JPH0367357A (ja) マルチcpuシステム
EP0560393B1 (en) Microprocessor and data processing system with register file
JP2970082B2 (ja) 仮想クラスタ間通信処理装置
JPH0414376B2 (ja)
JPH04355836A (ja) 仮想計算機間データ転送処理装置
JPH0683618A (ja) フラグ制御回路
JP3200183B2 (ja) データ処理装置
JPS62152064A (ja) シングルチツプマイクロコンピユ−タ
JPH01263858A (ja) マルチプロセッサシステム
JP2531080B2 (ja) バスアダプタ切り換え方式
JPH0218622A (ja) 数値演算プロセッサ
JP2526480B2 (ja) マルチプロセッサシステムにおける割込制御方法
JPS63155330A (ja) マイクロプログラム制御装置
JPS6252900B2 (ja)
JPH023877A (ja) シングルチップマイクロコンピュータ
JPH0683640A (ja) 割込応答処理方式
JPS58158746A (ja) 情報処理装置
JPH05250161A (ja) マイクロコンピュータ装置
JPS63286956A (ja) 共有クロツクコンパレ−タ
JPH03122723A (ja) 割込処理装置
JPH03263128A (ja) マイクロプロセッサ