JPH0650500B2 - スレ−ブ・プロセツサ制御方式 - Google Patents

スレ−ブ・プロセツサ制御方式

Info

Publication number
JPH0650500B2
JPH0650500B2 JP1494587A JP1494587A JPH0650500B2 JP H0650500 B2 JPH0650500 B2 JP H0650500B2 JP 1494587 A JP1494587 A JP 1494587A JP 1494587 A JP1494587 A JP 1494587A JP H0650500 B2 JPH0650500 B2 JP H0650500B2
Authority
JP
Japan
Prior art keywords
processor
slave processor
slave
status
master processor
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 - Fee Related
Application number
JP1494587A
Other languages
English (en)
Other versions
JPS63182766A (ja
Inventor
貴司 中山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP1494587A priority Critical patent/JPH0650500B2/ja
Priority to US07/119,601 priority patent/US4926318A/en
Priority to EP87116726A priority patent/EP0267613B1/en
Priority to DE3751108T priority patent/DE3751108T2/de
Publication of JPS63182766A publication Critical patent/JPS63182766A/ja
Publication of JPH0650500B2 publication Critical patent/JPH0650500B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、スレーブ・プロセッサの制御方式に関する。
より詳細には、ひとつ以上のスレーブ・プロセッサを具
備するマスタ・プロセッサを含むシステムにおいて、マ
スタ・プロセッサとスレーブ・プロセッサとの間で処理
の同期をとる新規な方式に関する。
従来の技術 1チップの大規模集積回路(以下、LSIと記す)に集
積されたマイクロプロセッサでは、1つのチップ内に集
積できる素子数の制限のために、浮動小数点演算などの
高度な命令を実行する機能を実装することができない。
そこで、マイクロプロセッサの実行する命令セットを、
単純な演算で処理できる基本命令と大規模な演算回路を
必要とする高機能命令とに分類し、基本命令の実行をマ
スタ・プロセッサに、高機能命令の実行をスレーブ・プ
ロセッサに、それぞれ委ねる方式が広く用いられてい
る。尚、ここでマスタ・プロセッサとは、単純で中央処
理装置(CPU)として動作するように構成されたプロ
セッサを意味している。また、スレーブ・プロセッサと
は、マスタ・プロセッサでは実行できない高機能な命令
を、マスタ・プロセッサの演算回路に代って実行するプ
ロセッサである。
上述のようにマスタ・プロセッサ並びにスレーブ・プロ
セッサを1チップで実現した例としては、例えば、ナシ
ョナルセミコンダクタ社(National Semiconductor Cor
poration)のN S32332(マスタ・プロセッサ)とN S3
2081(スレーブ・プロセッサ)がある。このようなチッ
プを使用して構成したシステムでは、各チップの端子数
を最小限に止め且つチップ相互の接続を減らすために、
各プロセッサが1本のデータバスを共用する構成が採ら
れる。尚、N S32332とN S32081との間のインターフェ
イス並びに通信手順は「NS32332 32-Bit Advanced Micr
oprocessor with Virtual Memory,1985 National Semic
onductorCorporation」に記述されているので参照され
たい。
第6図は、上述のようなマスタ・プロセッサとスレーブ
・プロセッサとを用いて構成したシステムの構成を示す
ブロック図である。
マスタ・プロセッサ110は、システムの中央処理装置で
あり、主記憶130はマスタ・プロセッサ110によってアク
セスされる。スレーブ・プロセッサ120は、例えば数値
計算のようなマスタ・プロセッサ110の拡張命令を実行
するプロセッサであり、後述のようにマスタ・プロセッ
サ110の制御下にある。即ち、マスタ・プロセッサ110に
よって駆動されるバス・ステータス143によって、アド
レス・データバス144上のアドレスまたはデータの送信
装置および受信装置が、マスタ・プロセッサ110である
か主記憶130であるかあるいはスレーブ・プロセッサ120
であるかを指定され、かくして、アドレス・データバス
144は、マスタ・プロセッサ110、スレーブ・プロセッサ
120並びに主記憶130の間でデータの間でデータ並びにア
ドレスの転送を行う。
プロセッサ状態フラグ115は、マスタ・プロセッサ110の
状態を示し、条件分岐命令などで分岐条件とすることが
できるフラグの集合を意味する。また、終了信号165
は、スレーブ・プロセッサ120における演算の実行終了
を“0”レベルのパルスで示す負論理の信号である。こ
の信号は、スレーブ・プロセッサ120からオープン・ド
レインで駆動され、駆動されないときはプルアップ抵抗
152によって“1”レベルを保たれる。従って、マスタ
・プロセッサ110は、終了信号165を入力し、その値によ
って制御の流れを分岐させることができる。
第7図は、スレーブ・プロセッサ120に処理を実行させ
るべき拡張命令をマスタ・プロセッサ110がデコードし
た場合の、マスタ・プロセッサ110の制御動作を示すフ
ローチャートである。
尚、第7図に示す処理で実行される命令は、A+B→B
のような二項演算であり、ここではAを第1オペラン
ド、Bを第2オペランドと呼ぶ。また、スレーブ・プロ
セッサ120での演算結果に基づいてマスタ・プロセッサ1
10のプロセッサ状態フラグ115が更新される場合もある
ものとする。
第7図に(702)として示すように、マスタ・プロセッサ1
10は、バス・ステータス143とアドレス・データ・バス1
44を操作して、スレーブ・プロセッサ120用命令の命令
コードをスレーブ・プロセッサ120に転送する。
続いて、第1オペランドおよび/または第2オペランド
のデータの転送が必要な場合は、マスタ・プロセッサ11
0は必要に応じてバス・ステータス143とアドレス・デー
タ・バス144を操作し、第7図に(703)として示すように
第1オペランドのデータを、あるいは第7図に(704)と
して示すように第2オペランドのデータを、主記憶130
からスレーブ・プロセッサ120に転送する。
命令の実行に必要な命令コードとデータが全てスレーブ
・プロセッサ120に転送されると、スレーブ・プロセッ
サ120は演算を開始し、演算が終了すると終了信号165を
一定期間“0”レベルに駆動する。マスタ・プロセッサ
110は、第7図に(705)として示すように、終了信号165
を検査してスレーブ・プロセッサ120の演算終了を検出
するまで待機する。
スレーブ・プロセッサ120の演算終了が検出されると、
第7図に(706)として示すように、マスタ・プロセッサ1
10は、スレーブ・プロセッサ120から状態を示す値(ス
テータス)をアドレス・データ・バス144を介して読み
出す。
続いて、第7図に(707)として示すように、このステー
タス値を検査し、ステータス値から正常終了を認識した
場合は、スレーブ・プロセッサ120の演度結果を主記憶1
30に転送する。即ち、第7図に(708)として示すよう
に、バス・ステータス143とアドレス・データ・バス144
とを操作してスレーブ・プロセッサ120から読み出した
演算結果を、主記憶130上の第2オペランドに書き込
み、命令実行を終了する。
一方、ステータス値のチェック(707)において、スレー
ブ・プロセッサ120の演算結果に基づいてマスタ・プロ
セッサ110の状態フラグ115を更新する必要がある場合
は、第7図に(709)として示すように、マスタ・プロセ
ッサ110はステータス値に含まれる情報をもとにプロセ
ッサ状態フラグ115を更新する。
更に、ステータス値のチェック(707)において、ステー
タス値が演算における例外事象、即ち、桁あふれ例外や
零除算例外などの発生を表示した場合は、第7図に(71
0)として示すように、マスタ・プロセッサ110はスレー
ブ・プロセッサ演算例外を発生する。
第8図は、命令コードの書き込み(702)から演算結果の
転送(708)までの操作のタイム・チャートである。尚、
論旨を明確にするために、オペランドの転送(703,704)
は必要ない場合として省略した。また、各バスサイクル
の動作において、対応する操作を、第7図に用いた参照
番号によって付記している。
まず、801から802のバス・サイクルは、マスタ・プロセ
ッサ110が、バス・ステータス143を介してアドレス・デ
ータ・バス144を駆動し、命令コードをスレーブ・プロ
セッサ120へ書き込む(702)。
続く802から803のバス・サイクルでは、スレーブ・プロ
セッサ120が、命令の指定する演算を実行し、演算を終
了すると終了信号165を所定の期間“0”レベルに駆動
する(705)。
803から804のバス・サイクルでは、終了信号165を検出
したマスタ・プロセッサ110が、バス・ステータス143を
駆動してアドレス・データ・バス144を介してスレーブ
・プロセッサ120からステータス値を読み込む(706)。
804から805のバス・サイクルでは、読み込んだステーク
ス値が演算が正常終了したことを示しているので(70
7)、マスタ・プロセッサ110は演算結果の転送を指示す
る(708)。
発明が解決しようとする問題点 ところで、上述のようなシステムの動作において、スレ
ーブ・プロセッサの演算結果に演算例外(オーバーフロ
ー例外や零除算例外)が生じる割合は、実際には比較的
少ない。また、例外が発生した場合の処理は、最早高速
であることを要求されない。
更に、比較演算命令では、演算結果によってプロセッサ
状態フラグを更新するが、スレーブ・プロセッサ用命令
でありながらプロセッサ状態フラグを更新する命令は少
なく、大半の命令ではプロセッサ状態フラグの更新はし
ない。
即ち、通常のプログラムによるスレーブ・プロセッサの
動作では、ステータス読み出しが不要な場合が殆どであ
る。
従って、前述した従来例のスレーブ・プロセッサの制御
方式では、無駄なステータスを読み出しのために多くの
時間を費やしていることになる。換言すると、ステータ
スの読み出しバス・サイクルに要する時間は、殆どが無
駄な時間であり、スレーブ・プロセッサ用命令の実行時
間を無用に長くしていた。
そこで、本発明は、上記従来技術の問題点を解決し、無
駄なステータス読み出し動作を排除することによって、
スレーブ・プロセッサの実行時間を短縮することにあ
る。
問題点を解決するための手段 即ち、本発明に従い、システムの中央処理装置であるマ
スタ・プロセッサと、該マスタ・プロセッサとデータ・
バスを共有する少なくとも1基のスレーブ・プロセッサ
とを備える情報処理装置において、前記スレーブ・プロ
セッサが処理実行中であることを前記マスタ・プロセッ
サに対して表示する第1信号ラインと、前記スレーブ・
プロセッサの処理結果の値を含むステータス情報を、前
記マスタ・プロセッサに転送する必要があることを、前
記マスタ・プロセッサに対して表示する第2信号ライン
とを具備し、前記スレーブ・プロセッサが処理を実行し
ていることを表示しなくなるまで、前記マスタ・プロセ
ッサが前記第1信号ラインを繰り返し参照する第1動作
と、該第1動作の後に、前記マスタ・プロセッサが前記
第2信号ラインを参照し、前記ステータス情報の転送の
必要が表示されている場合にのみ、前記スレーブ・プロ
セッサから該マスタ・プロセッサへのステータス情報の
転送を実行する第2動作とを含むことを特徴とするスレ
ーブ・プロセッサ制御方式が提供される。
作用 本発明に従うスレーブ・プロセッサ制御方式では、マス
タ・プロセッサがステータス情報を読み出す必要がある
か否かを表示する信号ラインを設け、ステータス情報を
読む必要のない場合はステータス読み出しのバス・サイ
クルを省略するスレーブ・プロセッサ制御手順を用意す
ることをその主要な特徴としている。
即ち、従来のスレーブ・プロセッサ制御方式が、スレー
ブ・プロセッサで実行する命令の種類を問わず、また実
行による例外の発生に関わらずステータス情報を読み出
す操作を必ず実行する方式であるのに対し、本発明に従
う方式では、マスタ・プロセッサがスレーブ・プロセッ
サの演算終了を検出した際に、マスタ・プロセッサに転
送する必要のあるステータス情報があるか否かを検出
し、ステータス情報の転送が必要であることを示してい
ない場合は、ステータス情報の読み出しを省略する。ま
た、転送が必要であることを検出した場合は、ステータ
ス情報の読み出し操作を実行する。
こうして、本発明に従うスレーブ・プロセッサ制御方式
の下では、無駄なステータス読み出し動作が実行されな
いので、システム全体の実行時間を大きく削減すること
ができる。
実施例 以下に図面を参照して本発明をより具体的に詳述する
が、以下に開示するものは本発明の一実施例に過ぎず、
本発明の技術的範囲を何ら限定するものではない。
第1図は、本発明に従うスレーブ・プロセッサ制御方式
を実施するハードウェアの構成の一例を示すブロック図
である。
このシステムにおいても、マスタ・プロセッサ110は、
システムの中央処理装置であり、主記憶130はマスタ・
プロセッサ110によってアクセスされる。スレーブ・プ
ロセッサ120は、例えば数値計算のようなマスタ・プロ
セッサ110の拡張命令を実行するプロセッサであり、後
述のようにマスタ・プロセッサ110の制御下にある。即
ち、マスタ・プロセッサ110に駆動されるアドレス・ス
テータス・バス141によってデータバス142上のデータの
送信装置および受信装置が、マスタ・プロセッサ110で
あるか主記憶130であるかあるいはスレーブ・プロセッ
サ120であるか等を指定され、かくして、データ・バス1
42は、マスタ・プロセッサ110、スレーブ・プロセッサ1
20並びに主記憶130の間でデータの転送を行う。
マスタ・プロセッサ110は、マスタ・プロセッサ110とス
レーブ・プロセッサ120が実行する命令をデコードする
命令デコード・ユニット113と、この命令のオペランド
・アドレスを計算する実行アドレス計算ユニット114、
マスタ・プロセッサ110全体を制御して命令を実行する
マイクロ・プログラム制御による実行ユニット111並び
に、アドレス・ステータス・バス141とデータ・バス142
を制御して主記憶130とスレーブ・プロセッサ120をアク
セスするバス制御ユニット112とを備えている。更に、
実行ユニット111は、マスタ・プロセッサ110の状態を示
し、条件分岐命令などで分岐条件とすることができるフ
ラグの集合であるプロセッサ状態フラグ115を含んでい
る。
一方、スレーブ・プロセッサ120は、スレーブ・プロセ
ッサ120用の命令の演算を実行する演算ユニット121、演
算ユニット121が実行する命令の命令コードをデータ・
バス142から入力するためのコマンド・ポート122、演算
ユニット121の状態をデータ・バス142に出力するための
ステータス・ポート123、演算ユニット121の演算に必要
なデータを入力し演算結果を出力するためのオペランド
・ポート124、アドレス・ステータス・バス141の値をデ
コードして上記3種のポートを選択するアドレス・デコ
ーダ125を備えている。
/BUSY信号161は、前記スレーブ・プロセッサの演
算ユニット121から前記マスタ・プロセッサの実行ユニ
ット111に入力される信号であり、スレーブ・プロセッ
サ120の演算ユニット121が処理を実行中であることを
“0”レベルで示す負論理の信号である。具体的には、
この信号はスレーブ・プロセッサ120からオープン・ド
レインで駆動され、駆動されないときはプルアップ抵抗
171によって“1”レベルが維持されるように構成され
ている。
STRD(Status Read/状態読み取り)信号162は、前
記スレーブ・プロセッサの演算ユニット121から前記マ
スタ・プロセッサの実行ユニット111に入力される信号
であり、演算ユニット121での演算の結果、マスタ・プ
ロセッサ110がステータス・ポート123を読み出す必要が
あることを“1”レベルで示す負論理の信号である。具
体的には、やはりスレーブ・プロセッサ120からオープ
ン・ドレインで駆動され、駆動されないときはプルアッ
プ抵抗172によって“0”レベルが維持されるように構
成されている。
従って、マスタ・プロセッサ110の実行ユニット111は、
/BUSY信号161並びにSTRD信号162と、バス制御
ユニット112がバス・サイクルを実行中か否かを示すバ
ス状態信号151に基づいて制御の流れを分岐させること
ができる。
第2図は、上述のようなシステムにおいて、命令デコー
ド・ユニット113がデコードした命令が、スレーブ・プ
ロセッサ120の実行すべき命令であった場合の実行ユニ
ット111の動作を示すフローチャートである。
尚、ここでも実行される命令は、A+B→Bのような二
項演算であり、A項を第1オペランド、B項を第2オペ
ランドと呼ぶ。また、スレーブ・プロセッサ120の演算
結果に基づいて、マスタ・プロセッサ110のプロセッサ
状態フラグ115が更新されるような命令も含まれる。
先ず、第2図に201として示すように、実行ユニット111
は、バス・制御ユニット112によってデータ・バス142を
駆動することにより、第1オペランドのデータを主記憶
130からスレーブ・プロセッサ120のオペランド・ポート
124に書き込む。続いて、第2図に202として示すよう
に、同様に第2オペランドをオペランド・ポート124に
書き込む。
次に、第2図に203として示すように、実行ユニット111
は、入力した命令コードを命令デコード・ユニット113
からデータ・バス142を介してスレーブ・プロセッサ120
のコマンド・ポート122に書き込む。
こうして、命令コード並びに第1及び第2のオペランド
を入力されたスレーブ・プロセッサ120は、演算ユニッ
ト121によって演算を開始すると共に、演算実行中は/
BUSY信号161をLOWレベルに駆動する。
このとき、マスタ・プロセッサ110は、第2図に204とし
て示すように、バス状態信号151をチェックすることに
よって書き込みバス・サイクル(201〜203)期間中は待機
し、更に、第2図に205として示すように、/BUSY
信号161を検知することによって演算ユニット121の演算
が終了するまで待機する。演算ユニット121の演算が終
了すると、/BUSY信号161はHIGHレベルになり:マ
スタ・プロセッサ110は、スレーブ・プロセッサ120の演
算実行が終了したことを検知して、第2図に206として
示すように、STRD信号162を検査する。
一方、スレーブ・プロセッサ120の演算ユニット121は、
演算が正常に終了し、プロセッサ状態フラグ115を更新
する必要がない場合は、STRD信号162をLOWレベルと
する。従って、STRD信号162を検査したマスタ・プ
ロセッサ110の実行ユニット111は、第2図に207として
示すように、オペランド・ポート124から演算結果を読
み出して主記憶130上の第2オペランドに書き込み命令
を終了する。
一方、演算で例外が発生した場合や、演算結果によって
プロセッサ状態フラグ115を更新する必要がある場合
は、実行ユニット121はSTRD信号162をHIGHレベルと
する。従って、第2図に208として示すように、実行ユ
ニット111はステータス・ポート123を読み出す。
読み出したステータス値は、第2図に209として示すよ
うに検査され、ステータスの値がフラグの更新を示す場
合は、第2図に210として示すようにプロセッサ状態フ
ラグ115を読み込んだステータス値の一部で更新する。
一方、ステータスの値が演算における例外事象の発生を
検出した場合は、第2図に211として示すように、実行
ユニット111はスレーブ・プロセッサ演算例外を発生す
る。
第3図は、ステータス値の読み出しが不要な場合の、コ
マンド・ポート122への命令コード書き込み(203)から演
算結果転送(207)までの動作を示すタイム・チャートで
ある。尚、論旨を明確にするために、オペランドの転送
(703,704)は必要ない場合として省略した。また、以下
の説明では、第2図において用いた参照番号を付して理
解を助けている。
バス・サイクル301〜302において、実行ユニット111
は、命令コードをコマンド・ポート122へ書き込むよう
にバス・制御ユニット112に指示すると共に、バス・制
御ユニット112はアドレス・ステータス・バス141、デー
タ・バス142を駆動して、コマンド・ポート122への書き
込みを実行する。また、実行ユニット111は、バス状態
信号151によって書き込みバス・サイクルの終了をチェ
ックし、バス・サイクルの終了まで待機している(20
4)。
バス・サイクル302〜303では、スレーブ・プロセッサ12
0は演算ユニット121による演算を実行すると同時に、/
BUSY信号161をLOWレベルに駆動する。従って、実行
ユニット111は待ち状態となる(205)。
演算ユニット121での演算が正常に終了したので、バス
・サイクル303〜304では、スレーブ・プロセッサ120は
/BUSY信号161の駆動を停止してLOWレベルとする。
また、演算結果が通常のものであったので、演算ユニッ
ト121はSTRD信号を所定の時間だけLOWレベルに駆動
する。
一方、実行ユニット111は、/BUSY信号161がHIGHレ
ベルレベルになると、STRD信号162をサンプルし(20
6)、更に、サンプルしたSTRD信号162がLOWレベルな
ので、バス制御ユニット112を介して、オペランド・ポ
ート124から演算結果を読み出すバス・サイクル(207)を
実行させる。
また、第4図は、ステータス値の読み出しが必要な場合
の、コマンド・ポート122への命令コード書き込み(203)
からステータスの検査(209)までの動作を示すタイム・
チャートである。
演算ユニット121の演算終了まで(303)は第3図に示した
動作と同じである。
演算ユニット121での演算で例外が発生した場合や、プ
ロセッサ状態フラグ115を更新する命令の場合は、バス
サイクル303〜304において、スレーブ・プロセッサ120
は、/BUSY信号161をHIGHレベルに変化する一方
で、STRD信号はHIGHレベルに保つ。従って、実行ユ
ニット111は、HIGHレベルのSTRD信号を検知し、ス
テータス・ポート124からステータス(状態フラグを含
む)を読み出すバス・サイクルをバス制御ユニット112
に実行させる。実行ユニット111は、バス・サイクル404
〜405において、読み込んだステータスの値を検査して
(209)、プロセッサ状態フラグ115を更新するか(210)あ
るいはスレーブ・プロセッサ演算例外を発生するか(21
1)を決定する。
このように、上述の装置では、スレーブ・プロセッサ12
0の演算終了後にSTRD信号162をチェックすることに
よって、演算結果が正常であり、演算結果が状態フラグ
の更新を必要としない場合、即ち、通常の演算処理で大
半の場合は、ステータス・ポート124の読み出しバス・
サイクルを省略する。従って、システム全体として、命
令の実行時間が著しく短縮される。
尚、上述のような実施例の機能は、1基のマスタ・プロ
セッサに対して、複数のスレーブ・プロセッサを接続し
た場合にも維持される。即ち、第5図は、第1図に示し
たシステムと同じマスタ・プロセッサ110を用いて、ス
レーブ・プロセッサ120と同じ構成の3基のスレーブ・
プロセッサ521、522、523を接続したシステムの構成を示
すブロック図である。
このシステムでは、スレーブ・プロセッサ521、522、523
のコマンド・ポート、ステータス・ポート、オペランド
・ポートを、それぞれ独自のアドレス空間に配置するこ
とにより、同時に複数のポートがアクセスされることが
ないように構成されている。また、/BUSY信号16
1、STRD信号162は、スレーブ・プロセッサ側からオ
ープン・ドレイン出力でドライブされるので、演算実行
中の何れかのスレーブ・プロセッサによって駆動される
ことになる。
従って、例えばスレーブ・プロセッサ521が処理すべき
命令がこのシステムに入力された場合、マスタ・プロセ
ッサ110はスレーブ・プロセッサ521のポートだけをアク
セスし、一方、/BUSY信号161、STRD信号162は
スレーブ・プロセッサ521によって駆動されるので、第
2図に示したスレーブ・プロセッサ制御手順が完全に実
行される。
また、第3図に示したように、STRD信号162は、/
BUSY信号161がLOWレベルからHIGHレベルになる時点
から所定の時間だけLOレベルに駆動されるので、/BU
SY信号161がLOWレベルの期間はマスタ・プロセッサ11
0は次の命令をスレーブ・プロセッサに転送しない。即
ち、このシステムにおいては、マスタ・プロセッサが制
御するスレーブ・プロセッサの個数に関わらず、スレー
ブ・プロセッサ用命令の実行がマスタ・プロセッサ110
と実行するスレーブ・プロセッサとの間で1対1で行な
われることを示す。
このように、本実施例に示す方式では、マスタ・プロセ
ッサに接続するスレーブ・プロセッサの個数が増加して
も、スレーブ・プロセッサ制御のためのハードウェアの
増加はなく、応用範囲の広いスレーブ・プロセッサ制御
方式であるといえる。
発明の効果 以上詳述のように、本発明に従うスレーブ・プロセッサ
制御方式においては、マスタ・プロセッサは通常はスレ
ーブ・プロセッサからのステータス情報の読み出しを行
わない。従って、システムとしての命令実行は著しく高
速化される。
一方、スレーブ・プロセッサが演算結果に例外を発生し
た場合、あるいは、スレーブ・プロセッサの演算結果に
よって、マスタ・プロセッサのプロセッサ状態フラグを
更新する必要がある場合は、ステータスの読み出し動作
を実行する機能が含まれている。従って、従来のスレー
ブ・プロセッサ制御方式に具備されていた機能は何ら削
減されていない。
こうして、本発明に従い、高速動作と高機能命令処理能
力とを兼ね備えた新規なスレーブ・プロセッサ制御方式
が提供される。
【図面の簡単な説明】
第1図は、本発明に従うスレーブ・プロセッサ制御方式
を実行するハードウェアの構成例を示すブロック図であ
り、 第2図は、第1図に示したシステムの動作の実行手順を
示すフローチャートであり、 第3図は、第2図に示す実行手順において、ステータス
読み出しを伴わない動作を実行する場合のタイム・チャ
ートであり、 第4図は、第2図に示す実行手順において、ステータス
読み出しを伴う動作を実行する場合のタイム・チャート
であり、 第5図は、第1図に示すシステムを拡張したシステムの
構成を示すブロック図であり、 第6図は、従来例のスレーブ・プロセッサ制御方式を説
明するためのハードウェアの構成を示すブロック図であ
り、 第7図は、第6図に示すシステムにおける動作の実行手
順を示すフローチャートであり、 第8図は、第6図に示す実行手順の動作を示すタイム・
チャートである。 (主な参照番号) 110……マスタ・プロセッサ、 111……実行ユニット、 112……バス制御ユニット、 113……命令デコード・ユニット、 114……実効アドレス計算ユニット、 115……プロセッサ状態フラグ、 120……スレーブ・プロセッサ、 121……演算ユニット、 122……コマンドポート、 123……ステータス・ポート、 124……オペランド・ポート、 125……アドレス・デコード、 130……主記憶、 141……アドレス・ステータス・バス、 142……データ・バス、 143……バス・ステータス 144……アドレス・データ・バス 151……バス状態信号、 152,171,172……プルアップ抵抗、 161……/BUSY信号、 162……STRD信号、 165……終了信号

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】システムの中央処理装置であるマスタ・プ
    ロセッサと、該マスタ・プロセッサとデータ・バスを共
    有する少なくとも1基のスレーブ・プロセッサとを備え
    る情報処理装置において、 前記スレーブ・プロセッサが処理実行中であることを前
    記マスタ・プロセッサに対して表示する第1信号ライン
    と、 前記スレーブ・プロセッサの処理結果の値を含むステー
    タス情報を、前記マスタ・プロセッサに転送する必要が
    あることを、前記マスタ・プロセッサに対して表示する
    第2信号ラインとを具備し、 前記スレーブ・プロセッサが処理を実行していることを
    表示しなくなるまで、前記マスタ・プロセッサが前記第
    1信号ラインを繰り返し参照する第1動作と、 該第1動作の後に、前記マスタ・プロセッサが前記第2
    信号ラインを参照し、前記ステータス情報の転送の必要
    が表示されている場合にのみ、前記スレーブ・プロセッ
    サから該マスタ・プロセッサへのステータス情報の転送
    を実行する第2動作と を含むことを特徴とするスレーブ・プロセッサ制御方
    式。
JP1494587A 1986-11-12 1987-01-25 スレ−ブ・プロセツサ制御方式 Expired - Fee Related JPH0650500B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP1494587A JPH0650500B2 (ja) 1987-01-25 1987-01-25 スレ−ブ・プロセツサ制御方式
US07/119,601 US4926318A (en) 1986-11-12 1987-11-12 Micro processor capable of being connected with a coprocessor
EP87116726A EP0267613B1 (en) 1986-11-12 1987-11-12 Micro processor capable of being connected with coprocessor
DE3751108T DE3751108T2 (de) 1986-11-12 1987-11-12 Mikroprozessor mit der Fähigkeit, an einen Koprozessor geschaltet zu werden.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1494587A JPH0650500B2 (ja) 1987-01-25 1987-01-25 スレ−ブ・プロセツサ制御方式

Publications (2)

Publication Number Publication Date
JPS63182766A JPS63182766A (ja) 1988-07-28
JPH0650500B2 true JPH0650500B2 (ja) 1994-06-29

Family

ID=11875105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1494587A Expired - Fee Related JPH0650500B2 (ja) 1986-11-12 1987-01-25 スレ−ブ・プロセツサ制御方式

Country Status (1)

Country Link
JP (1) JPH0650500B2 (ja)

Also Published As

Publication number Publication date
JPS63182766A (ja) 1988-07-28

Similar Documents

Publication Publication Date Title
JP2573566B2 (ja) バスコンバータ
US4949241A (en) Microcomputer system including a master processor and a slave processor synchronized by three control lines
US4942519A (en) Coprocessor having a slave processor capable of checking address mapping
JPH0258649B2 (ja)
US4926318A (en) Micro processor capable of being connected with a coprocessor
JP2822782B2 (ja) シングルチップマイクロコンピュータ
US5696957A (en) Integrated circuit comprising a central processing unit for executing a plurality of programs
US5742842A (en) Data processing apparatus for executing a vector operation under control of a master processor
GB2231986A (en) Programmable logic controller including function block processor and bit processor
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
KR910001708B1 (ko) 중앙처리장치
JPH0650500B2 (ja) スレ−ブ・プロセツサ制御方式
JPH03271829A (ja) 情報処理装置
JPS61269751A (ja) 独立のプログラム・メモリ・ユニツト及びデ−タ・メモリ・ユニツトを有するデ−タ処理システムにおける補助デ−タ・メモリ・ユニツトを使用する装置及び方法
JPH01116702A (ja) シーケンスコントローラ
KR930004903B1 (ko) 데이타 버스를 이용한 프로세서간 병렬 데이타 통신시스팀 및 통신방법
JPH01205339A (ja) マイクロコンピュータシステム
JP3197045B2 (ja) 拡張中央演算処理装置
JPS61118840A (ja) 電子計算機の制御方式
JPH03268135A (ja) マイクロコンピュータ
JPS60193046A (ja) 命令例外検出方式
JPH04162135A (ja) データ処理装置
JPS5936838A (ja) インタフエ−ス制御方式
JPH01142844A (ja) 半導体集積回路
JPS61161560A (ja) メモリ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees