JP2000305917A - Multi-processor system - Google Patents

Multi-processor system

Info

Publication number
JP2000305917A
JP2000305917A JP11110640A JP11064099A JP2000305917A JP 2000305917 A JP2000305917 A JP 2000305917A JP 11110640 A JP11110640 A JP 11110640A JP 11064099 A JP11064099 A JP 11064099A JP 2000305917 A JP2000305917 A JP 2000305917A
Authority
JP
Japan
Prior art keywords
processor
processors
master
peripheral circuit
interrupt 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.)
Withdrawn
Application number
JP11110640A
Other languages
Japanese (ja)
Inventor
Hidekazu Sato
秀和 佐藤
Hideto Yabuta
秀人 薮田
Kazuhiko Safuku
和彦 佐復
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP11110640A priority Critical patent/JP2000305917A/en
Publication of JP2000305917A publication Critical patent/JP2000305917A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To properly process a time series processing and a non-time series processing with high efficiency with simple structure regarding a multi-processor system. SOLUTION: This multi-processor system is constituted so as to connect plural processors with plural peripheral circuit parts via a bus SB and to perform distributed processing of interruption requests from plural peripheral circuit parts by plural processors. In this case, the system is provided with plural processors (a) to (c) to be specified by a master (a) and one or two or more non-masters (b), (c) plural peripheral circuit parts 1 to n to output processor instruction information RID to represent that the master (=1) or infinite (=zero) simultaneously with generation of the interruption requests IRQ and an allocation control part 40 to allocate the interruption requests from each of the peripheral circuit parts 1 to n to processors of the master (a) or one or two or more infinite (a) to (c) according to the processor instruction information.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はマルチプロセッサシ
ステムに関し、更に詳しくは複数のプロセッサと複数の
周辺回路部とが共通のバスを介して接続すると共に、複
数の周辺回路部からの割込要求(処理要求)を複数のプ
ロセッサが分担処理するマルチプロセッサシステムに関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a multiprocessor system, and more particularly to a multiprocessor system in which a plurality of processors and a plurality of peripheral circuits are connected via a common bus, and an interrupt request from the plurality of peripheral circuits is provided. The present invention relates to a multiprocessor system in which a plurality of processors share a processing request.

【0002】この種のシステムでは、複数の周辺回路部
からの各割込要求を複数のプロセッサが負荷分散制御の
下で効率良く分担処理すると共に、割込要求(処理の種
類)によっては、これを時系列に順序正しく処理するこ
とが必要な場合がある。
In this type of system, a plurality of processors efficiently process each interrupt request from a plurality of peripheral circuit units under load distribution control, and depending on the interrupt request (the type of processing), May need to be processed in chronological order.

【0003】[0003]

【従来の技術】例えばデータ伝送システム等における集
中監視部では、多数の主信号回路部で不定期に発生する
イベント(監視データの変化等)を収集すると共に、こ
れらをマルチプロセッサ部で高速・並列に解析処理し、
保守監視卓等へ通知することが行われる。
2. Description of the Related Art For example, a centralized monitoring unit in a data transmission system or the like collects events (changes in monitoring data, etc.) that occur irregularly in a large number of main signal circuit units, and collects these events in a multiprocessor unit at high speed and in parallel. Analysis processing,
Notification is performed to a maintenance monitoring console or the like.

【0004】従来は、マルチプロセッサ部に設けたラウ
ンドロビン方式等による優先調停制御により、空いてい
るプロセッサが割込要求(イベント処理)を巡回優先的
に受け付け、こうして各プロセッサ負荷の均等化と処理
の高速化が図られていた。
Conventionally, a vacant processor accepts an interrupt request (event processing) in a cyclical manner by priority arbitration control by a round robin method or the like provided in a multiprocessor unit, thereby equalizing and processing each processor load. Was being accelerated.

【0005】[0005]

【発明が解決しようとする課題】しかし、イベントの解
析内容の複雑さ又はイベントを受け取るプロセッサの負
荷状態によっては、マルチプロセッサ部に入力されるイ
ベント順と、その処理結果の出力順とが逆転する場合
(所謂「先入れ後出し現象」)が生じ得る。
However, the order of events input to the multiprocessor unit and the order of output of the processing results are reversed depending on the complexity of the analysis contents of the event or the load state of the processor receiving the event. A case (a so-called “first-in first-out phenomenon”) may occur.

【0006】例えば、ある被監視装置から「障害発
生」が通知され、そのすぐ後に「障害復旧」が通知さ
れた場合に、もし上記「障害発生」を高負荷状態のプ
ロセッサaが処理し、かつ上記「障害復旧」を低負荷
状態のプロセッサbが処理したとすると、プロセッサb
がプロセッサaよりも先に処理完了し、結果をこの順で
保守監視卓へ通知する。これを保守監視卓側から見る
と、「障害復旧」→「障害発生」の順で状態が報告され
ることになり、保守者はシステム状態を誤認識してしま
う。
For example, when a "failure occurrence" is notified from a certain monitored device, and "failure recovery" is notified shortly thereafter, if the "failure occurrence" is processed by the processor a in a high load state, and Assuming that the processor b in the low load state processes the “failure recovery”, the processor b
Completes the processing before the processor a, and notifies the result to the maintenance monitoring console in this order. When viewed from the maintenance monitoring console side, the status is reported in the order of “failure recovery” → “failure occurrence”, and the maintenance person erroneously recognizes the system status.

【0007】なお、この点については、処理要求データ
に重みづけ(優先順位)やタイムスタンプを付加する等
の方法も考えられるが、割込時やその処理結果に重みづ
けやタイムスタンプの内容を反映させる制御が複雑なも
のとなってしまう。
[0007] In this regard, a method of adding a weight (priority) or a time stamp to the processing request data can be considered. However, the weight and the time stamp are added to the interrupt or the processing result. The control to be reflected becomes complicated.

【0008】本発明は上記従来技術の問題点に鑑みなさ
れたもので、その目的とする所は、簡単な構成で、時系
列な処理と非時系列な処理とを能率良く適正に処理可能
なマルチプロセッサシステムを提供することにある。
The present invention has been made in view of the above-mentioned problems of the prior art, and has as its object to efficiently and appropriately process time-series processing and non-time-series processing with a simple configuration. It is to provide a multiprocessor system.

【0009】[0009]

【課題を解決するための手段】上記の課題は例えば図1
の構成により解決される。即ち、本発明(1)のマルチ
プロセッサシステムは、複数のプロセッサと複数の周辺
回路部とがバスSBを介して接続すると共に、複数の周
辺回路部からの割込要求を複数のプロセッサが分担処理
するマルチプロセッサシステムにおいて、マスタと1又
は2以上の非マスタとで特定される複数のプロセッサa
〜cと、割込要求の発生と共にマスタ(=1)又は不特
定(=0)を表すプロセッサ指示情報RIDを出力する
複数の周辺回路部1〜nと、各周辺回路部からの割込要
求をそのプロセッサ指示情報に従ってマスタa又は1又
は2以上の不特定のプロセッサa〜cに割り振る割振制
御部40とを備えるものである。
The above-mentioned problem is solved, for example, by referring to FIG.
Is solved. That is, in the multiprocessor system of the present invention (1), the plurality of processors and the plurality of peripheral circuit units are connected via the bus SB, and the plurality of processors share an interrupt request from the plurality of peripheral circuit units. Processor a specified by a master and one or more non-masters
To c, a plurality of peripheral circuit units 1 to n for outputting processor instruction information RID indicating master (= 1) or unspecified (= 0) together with generation of an interrupt request, and interrupt requests from each peripheral circuit unit And an allocation control unit 40 for allocating to the master a or one or more unspecified processors a to c in accordance with the processor instruction information.

【0010】本発明(1)においては、各周辺回路部1
〜nは割込要求IRQ1〜nの発生と共にマスタ又は不
特定を表すプロセッサ指示情報RID1〜n(例えばR
ID1〜n=1/0)を出力する構成により、時系列な
処理を要求される処理はマスタプロセッサaで時系列に
処理させ、また時系列な処理を要求されない処理は空い
ている何れか不特定のプロセッサa〜cで迅速に処理さ
せることが容易に指定可能となる。又は、特殊処理が必
要な処理Aはマスタプロセッサaに処理させ、他の一般
的な処理は空いている何れか不特定のプロセッサa〜c
に処理させることが容易に指定可能となる。
In the present invention (1), each peripheral circuit unit 1
To n are processor instruction information RID1 to n (for example, R
(ID1 to n = 1/0) are output, the processing requiring time-series processing is processed in the time series by the master processor a, and the processing not requiring the time-series processing is free of any one. It is possible to easily specify that specific processors a to c perform processing quickly. Alternatively, the processing A requiring special processing is performed by the master processor a, and other general processing is performed by any of the unspecified unspecified processors a to c.
Can be easily specified.

【0011】また、割振制御部40は各周辺回路部1〜
nからの割込要求IRQ1〜nをそのプロセッサ指示情
報RID1〜nに従ってマスタa又は空いている1又は
2以上の不特定のプロセッサa〜cに割り振る構成によ
り、プロセッサa〜cの負荷分散が能率良く行われる。
The allocation control unit 40 includes the peripheral circuit units 1 to
The load distribution of the processors a to c can be efficiently performed by allocating the interrupt requests IRQ1 to n from n to the master a or one or more unspecified processors a to c according to the processor instruction information RID1 to n. Well done.

【0012】また本発明(2)のマルチプロセッサシス
テムは、複数のプロセッサと複数の周辺回路部とがバス
を介して接続すると共に、複数の周辺回路部からの割込
要求を複数のプロセッサが分担処理するマルチプロセッ
サシステムにおいて、固有の識別ID(例えばID=a
〜c)により特定される複数のプロセッサa〜cと、割
込要求の発生と共に固有の識別ID(=a〜c)又は不
特定(=0)を表すプロセッサ指示情報RIDを出力す
る複数の周辺回路部1〜nと、各周辺回路部からの割込
要求をそのプロセッサ指示情報に従って固有の識別ID
a〜c又は1又は2以上の不特定のプロセッサa〜cに
割り振る割振制御部40とを備えるものである。
In the multiprocessor system according to the present invention (2), the plurality of processors and the plurality of peripheral circuit units are connected via a bus, and the plurality of processors share an interrupt request from the plurality of peripheral circuit units. In a multiprocessor system that performs processing, a unique identification ID (for example, ID = a
To c) and a plurality of peripherals that output processor identification information RID indicating a unique identification ID (= a to c) or unspecified (= 0) when an interrupt request is generated. Circuit units 1 to n, and an interrupt request from each peripheral circuit unit in accordance with its processor instruction information.
and an allocation control unit 40 for allocating to one or more unspecified processors a to c.

【0013】本発明(2)においては、各周辺回路部は
割込要求の発生と共に固有の識別ID=a(又はb,
c)又は不特定(=0)を表すプロセッサ指示情報RI
Dを出力する構成により、時系列な処理を要求される処
理は所望のプロセッサa(又はb,c)で夫々時系列に
処理させ、また時系列な処理を要求されない処理は空い
ている何れか不特定のプロセッサa〜cで迅速に処理さ
せることが容易に指定可能となる。又は、特定の種類の
処理Aはプロセッサaに処理させ、他の特定の種類の処
理Bはプロセッサbに処理させ、更に他の種類の処理C
はプロセッサcに処理させることが容易に指定可能とな
る。
In the present invention (2), each of the peripheral circuit units generates a unique identification ID = a (or b,
c) or processor instruction information RI representing unspecified (= 0)
Depending on the configuration for outputting D, the processing requiring time-series processing is processed in the desired processor a (or b, c) in the respective time series, and the processing not requiring time-series processing is free. It is possible to easily specify that the processing is promptly performed by the unspecified processors a to c. Alternatively, a specific type of process A is processed by the processor a, another specific type of process B is processed by the processor b, and another type of process C is performed.
Can be easily specified to be processed by the processor c.

【0014】また、割振制御部40は各周辺回路部から
の割込要求をそのプロセッサ指示情報RIDに従って固
有の識別IDa(又はb,c)又は空いている1又は2
以上の不特定のプロセッサa〜cに割り振る構成によ
り、プロセッサa〜cの負荷分散が能率良く行われる。
Further, the allocation control unit 40 responds to the interrupt request from each peripheral circuit unit with a unique identification IDa (or b, c) or a free 1 or 2 according to the processor instruction information RID.
With the above configuration of allocating to the unspecified processors a to c, the loads of the processors a to c are efficiently distributed.

【0015】好ましくは、本発明(3)においては、上
記本発明(1)又は(2)において、複数の周辺回路部
1〜nと割振制御部40との間に介在し、複数の周辺回
路部からの競合する2以上の割込要求IRQを調停して
割振制御部への入力を時系列に受け付ける受付アービタ
21を備える。
Preferably, in the present invention (3), in the present invention (1) or (2), a plurality of peripheral circuit units 1 to n are interposed between the allocation control unit 40 and a plurality of peripheral circuit units. The arbiter 21 arbitrates two or more competing interrupt requests IRQ from the unit and receives the input to the allocation control unit in time series.

【0016】従って、各周辺回路部1〜nで任意タイミ
ングに発生する各割込要求を能率良く処理できる。な
お、この調停には、特定の優先順位又はラウンドロビン
方式等による優先調停や、スキャニング又はポーリング
等による調停が含まれる。
Accordingly, each of the peripheral circuits 1 to n can efficiently process each interrupt request generated at an arbitrary timing. The arbitration includes priority arbitration based on a specific priority or a round robin method, and arbitration based on scanning or polling.

【0017】また好ましくは、本発明(4)において
は、上記本発明(1)〜(3)において、複数のプロセ
ッサa〜cからの競合する2以上の割込受付要求ARQ
を調停して何れか一つのプロセッサに受付許可AAKを
発行する許可アービタ11を備える。
Preferably, in the present invention (4), in the above-mentioned inventions (1) to (3), two or more competing interrupt acceptance requests ARQ from a plurality of processors a to c are provided.
And a permission arbiter 11 for issuing an acceptance permission AAK to any one of the processors.

【0018】従って、割振制御部40により2以上の不
特定のプロセッサa〜cに同時に割り振られた各割込要
求を調停により(好ましくは負荷分散制御の下で)何れ
か一つのプロセッサに能率良く割り付けられる。なお、
この調停には、特定の優先順位又はラウンドロビン方式
等による優先調停や、スキャニング又はポーリング等に
よる調停が含まれる。
Therefore, each of the interrupt requests simultaneously allocated to two or more unspecified processors a to c by the allocation control unit 40 can be arbitrated (preferably under load distribution control) to any one of the processors efficiently. Assigned. In addition,
This arbitration includes priority arbitration based on a specific priority or a round robin method, and arbitration based on scanning or polling.

【0019】また好ましくは、本発明(5)において
は、上記本発明(1)において、外部設定又は複数のプ
ロセッサの自律的な調停動作によりマスタプロセッサを
決定する。従って、外部より所望のプロセッサをマスタ
プロセッサに設定できる。又は、マルチプロセッサシス
テムへの電源投入時又はリセット(再開)時等には、自
律的な調停動作に関与できる様な常に正常な(障害の無
い)プロセッサが自動的にマスタプロセッサに決定され
る。
Preferably, in the present invention (5), in the present invention (1), the master processor is determined by an external setting or an autonomous arbitration operation of a plurality of processors. Therefore, a desired processor can be externally set as the master processor. Alternatively, at the time of turning on the power to the multiprocessor system or at the time of resetting (restarting), a normally normal (no fault) processor that can participate in the autonomous arbitration operation is automatically determined as the master processor.

【0020】また好ましくは、本発明(6)において
は、上記本発明(1)において、割振制御部40は、マ
スタプロセッサが異常であることにより、該マスタプロ
セッサヘの割込要求を所定の非マスタプロセッサに振り
替える。従って、マスタプロセッサの障害時にも当該割
込要求を有効に処理できる。
Preferably, in the present invention (6), in the above-mentioned present invention (1), the allocation control unit 40, when the master processor is abnormal, issues an interrupt request to the master processor for a predetermined time. Transfer to master processor. Therefore, the interrupt request can be effectively processed even when the master processor fails.

【0021】また好ましくは、本発明(7)において
は、上記本発明(2)において、割振制御部は、特定の
プロセッサが異常であることにより、該特定のプロセッ
サヘの割込要求を他の所定のプロセッサに振り替える。
従って、指定したプロセッサの障害時にも当該割込要求
を有効に処理できる。
Preferably, in the present invention (7), in the above-mentioned present invention (2), the allocation control unit, when the specific processor is abnormal, sends an interrupt request to the specific processor to another processor. Transfer to the specified processor.
Therefore, the interrupt request can be effectively processed even when the designated processor fails.

【0022】[0022]

【発明の実施の形態】以下、添付図面に従って本発明に
好適なる複数の実施の形態を詳細に説明する。なお、全
図を通して同一符号は同一又は相当部分を示すものとす
る。
Preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings. Note that the same reference numerals indicate the same or corresponding parts throughout the drawings.

【0023】図2は第1の実施の形態によるマルチプロ
セッサシステムの構成を示す図で、各周辺回路部からの
割込要求をそのプロセッサ指示情報RIDに従ってマス
タ又は不特定のプロセッサに割り振る場合を示してい
る。
FIG. 2 is a diagram showing the configuration of the multiprocessor system according to the first embodiment, showing a case where an interrupt request from each peripheral circuit is allocated to a master or an unspecified processor according to the processor instruction information RID. ing.

【0024】図において、10はマルチプロセッサ部、
PRa〜PRcはマルチプロセッサ部を構成するプロセ
ッサ、SBはシステムバス(Sバス)、11はプロセッ
サPRa〜PRcからの割込受付要求ARQを優先調停
して何れか一つのプロセッサに受付許可AAKを発行す
る許可アービタ(IABT)、12はプロセッサPRa
〜PRcからのバス使用権要求BRQを優先調停して何
れか一つのプロセッサにバス権許可BAKを発行するバ
スアービタ(BABT)、13は許可アービタ11とバ
スアービタ12を統合したシステムバスアービタ(SA
BT)、20はマルチプロセッサ部10に処理を依頼す
る周辺回路部、SPR1〜SPRnは周辺回路部を構成
する処理部であって、例えばデータ伝送信号SS1〜S
Snの主信号処理を夫々に行う主信号処理部、21はS
PR1〜SPRnからの各処理(割込)要求を例えばラ
ウンドロビン方式により優先調停して後述の割振制御部
40への入力を時系列に受け付ける受付アービタ(PR
U)、30はシステムの共通メモリ(MEMo)、40
はSPR1〜SPRnからの割込要求をそのプロセッサ
指示情報RIDに従ってマスタ又は非マスタのプロセッ
サPRa〜PRcへの割込要求に変換する割込デコーダ
(IDEC)である。なお、この割込デコーダ40は図
1の割振制御部40に相当する。
In the figure, reference numeral 10 denotes a multiprocessor unit,
PRa to PRc are processors constituting a multiprocessor unit, SB is a system bus (S bus), 11 is a priority arbitrator for an interrupt acceptance request ARQ from the processors PRa to PRc, and issues an acceptance permission AAK to any one of the processors. Permission arbiter (IABT), 12 is a processor PRa
, A bus arbiter (BABT) 13 for arbitrating the bus use request BRQ from PRc and issuing a bus right grant BAK to one of the processors, and a system bus arbiter (SA) 13 integrating the permission arbiter 11 and the bus arbiter 12.
BT) and 20 are peripheral circuit units that request the multiprocessor unit 10 to perform processing, and SPR1 to SPRn are processing units that constitute the peripheral circuit unit.
A main signal processing unit for performing the main signal processing of Sn;
A reception arbiter (PR) that prioritizes each processing (interruption) request from PR1 to SPRn by, for example, a round robin method and receives an input to the allocation control unit 40 described later in a time series
U), 30 are the system common memory (MEMo), 40
Is an interrupt decoder (IDEC) that converts interrupt requests from SPR1 to SPRn into interrupt requests to master or non-master processors PRa to PRc according to the processor instruction information RID. Note that the interrupt decoder 40 corresponds to the allocation control unit 40 in FIG.

【0025】プロセッサPRaにおいて、CPUaはホ
ストバスHBaを介してRAM,ROM,EEPROM
等からなる主メモリMEMaと接続しており、該CPU
aはホストバスHBaを介して主メモリMEMaを直接
にアクセスできる。またホストバスHBaはホスト−シ
ステムバスブリッジHSBaを介してSバスに接続して
おり、CPUaはHSBaを介してSバス(即ち、主信
号処理部SPR1〜SPRn,MEMo等)を直接的に
アクセスできる。
In the processor PRa, the CPUa is connected to a RAM, a ROM, an EEPROM via a host bus HBa.
Connected to a main memory MEMa comprising
a can directly access the main memory MEMa via the host bus HBa. The host bus HBa is connected to the S bus via a host-system bus bridge HSBa, and the CPUa can directly access the S bus (that is, the main signal processing units SPR1 to SPRn, MEMo, etc.) via HSBa. .

【0026】例えば、CPUaがMEMoのアドレス空
間にアクセスすると、ホスト−システムバスブリッジH
SBaは、外部アドレスであることを検知し、バス権要
求BRQa=1を出力する。これを受けたバスアービタ
12は、必要なら他のバス権要求との間で例えばラウン
ドロビン方式による調停を行うと共に、BRQa=1を
受け付ける時は、バス許可BAKa=1を返送する。こ
れにより、CPUaはSバスに接続し、MEMoを直接
的にアクセスできる。同様にして、CPUaはI/Oコ
ンマンド等を使用して主信号処理部SPR1〜SPRn
を直接的にアクセスできる。プロセッサPRb,PRc
についても同様である。また、CPUa〜CPUcはM
EMoに対するメッセージのリード/ライトを介して相
互にコミュニケーション可能である。
For example, when the CPUa accesses the MEMo address space, the host-system bus bridge H
The SBa detects that it is an external address, and outputs a bus right request BRQa = 1. The bus arbiter 12 receiving this performs arbitration with another bus right request if necessary, for example, in a round-robin manner, and when accepting BRQa = 1, returns the bus permission BAKa = 1. Thereby, the CPUa is connected to the S bus and can directly access MEMo. Similarly, the CPUa uses the I / O command or the like to execute the main signal processing units SPR1 to SPRn.
Can be accessed directly. Processor PRb, PRc
The same applies to. CPUa to CPUc are M
They can communicate with each other via reading / writing messages to / from EMo.

【0027】主信号処理部SPR1は、通常のハードウ
ェア構成により実現されていても良いが、この例では内
部に主信号SS1を処理するためのCPU(不図示)等
を備える。いずれにしてもこの様な主信号処理部SPR
1の内部でイベント(監視データの変化等)が発生する
と、該主信号処理部SPR1は、割込要求IRQ1=1
を出力すると共に、この割込要求が時系列(シーケンシ
ャル)に処理されるべきものであるか否かに応じて、プ
ロセッサ指示情報RID1=1(マスタ)又はRID1
=0(不特定)を決定する。主信号処理部SPR2〜S
PRnについても同様である。
The main signal processing unit SPR1 may be realized by a normal hardware configuration. In this example, however, a CPU (not shown) for processing the main signal SS1 is provided inside. In any case, such a main signal processing unit SPR
When an event (a change in monitoring data or the like) occurs inside the main signal processing unit 1, the main signal processing unit SPR1 sets the interrupt request IRQ1 = 1
And processor instruction information RID1 = 1 (master) or RID1 depending on whether this interrupt request is to be processed in a time series (sequential).
= 0 (unspecified) is determined. Main signal processing units SPR2 to SPR
The same applies to PRn.

【0028】一方、マルチプロセッサ部10において、
いずれがマスタプロセッサとなるかは、予め外部より設
定しても良いが、この例ではPRa〜PRcの自律的な
調停動作により自動的に決定される。即ち、本システム
に電源投入され、又は本システムがリセット(再開)さ
れると、CPUa〜CPUcは略一斉にバス権要求BR
Qa〜BRQc=1とする。そして、最初にバス権を獲
得した例えばCPUaはMEMo(RAM)の特定番地
のデータを読み出すと共に、そこに他のCPUの識別I
Dが書き込まれていない時は、自己の識別ID=aを書
き込み、こうして自己がマスタCPUであることを宣言
する。一方、2番目以降にバス権を獲得した他のCPU
b,CPUcはMEMoの特定番地に他のCPUの識別
ID=aが書き込まれていることにより、自己がマスタ
CPUでないことを認識する。この場合に、CPUaは
プロセッサの状態識別子としてPIDa=1(マスタ)
を出力し、他のCPUb,CPUcは共にPIDb=P
IDc=0(非マスタ)を出力する。
On the other hand, in the multiprocessor unit 10,
Which one becomes the master processor may be set in advance from outside, but in this example, it is automatically determined by the autonomous arbitration operation of PRa to PRc. That is, when the power of the present system is turned on or the present system is reset (restarted), the CPUa to CPUc substantially simultaneously execute the bus right request BR.
It is assumed that Qa to BRQc = 1. Then, for example, the CPUa that first acquires the bus right reads out the data at the specific address of the MEMo (RAM) and stores the data at the specific address of the other CPU.
When D has not been written, its own identification ID = a is written, thus declaring that it is the master CPU. On the other hand, other CPUs that have acquired the bus right after the second
The CPU b and the CPU c recognize that they are not the master CPU by writing the identification ID = a of the other CPU at the specific address of MEMo. In this case, the CPUa has PIDa = 1 (master) as the processor state identifier.
Are output, and the other CPUs b and c both output PIDb = P
It outputs IDc = 0 (non-master).

【0029】係る構成により、まず主信号処理部SPR
1がプロセッサ指示RID1=1(マスタ)の指定で割
込要求IRQ1を発生した場合の動作を具体的に説明す
る。即ち、主信号処理部SPR1は内部でイベントが発
生すると割込要求IRQ1=1を出力する。これを受け
た受付アービタ21は、必要なら他の割込要求との間で
優先調停を行うと共に、IRQ1=1を受け付ける時
は、割込要求イネーブルRQE1=1を返送する。主信
号処理部SPR1はRQE1=1を受けたことによりプ
ロセッサ指示RID1=1(マスタ)を出力し、該信号
は1ビットからなる指示バスIBに加えられる。一方、
受付アービタ21はRQE1=1と同じタイミングにゲ
ート信号RQE/=1を出力する。
With this configuration, first, the main signal processing unit SPR
The operation when 1 generates an interrupt request IRQ1 by designating the processor instruction RID1 = 1 (master) will be specifically described. That is, when an event occurs internally, the main signal processing unit SPR1 outputs an interrupt request IRQ1 = 1. The reception arbiter 21 receiving the request performs priority arbitration with another interrupt request if necessary, and returns an interrupt request enable RQE1 = 1 when accepting IRQ1 = 1. Upon receiving RQE1 = 1, the main signal processing unit SPR1 outputs a processor instruction RID1 = 1 (master), and this signal is applied to an instruction bus IB consisting of 1 bit. on the other hand,
Reception arbiter 21 outputs gate signal RQE / = 1 at the same timing as RQE1 = 1.

【0030】割込デコーダ40では、上記SPR1から
のプロセッサ指定IB=1(マスタ)、かつCPUaの
プロセッサ状態PIDa=1(マスタ)であることによ
り、RQE/=1のタイミングでは、アンドゲート回路
A2のみが付勢され、割込要求信号IRQa=1とな
る。即ち、この割込要求はマスタCPUaのみに割り付
けられる。
In the interrupt decoder 40, since the processor designation IB from the SPR1 is IB = 1 (master) and the processor state PIDa of the CPUa is 1 (master), at the timing of RQE / = 1, the AND gate circuit A2 Only is energized, and the interrupt request signal IRQa = 1. That is, this interrupt request is assigned only to the master CPUa.

【0031】マスタCPUaはIRQa=1を受けたこ
とにより許可アービタ11に受付許可要求ARQa=1
を出力する。これを受けた許可アービタ11は、必要な
ら他の受付許可要求との間で調停を行うと共に、ARQ
a=1を受け付ける時は、受付許可AAKa=1を返送
する。また許可アービタ11はAAKa=1と同じタイ
ミングにSバス要求の指示信号AAK/(=BRQaに
相当)を出力し、これはバスアービタ12により優先的
に受け付けられる。これによりバスアービタ12は一時
的にバス許可BAKa=1を出力し、これによりマスタ
CPUaとSバスとが接続される。CPUaは受付許可
AAKa=1でかつバス許可BAKa=1を受けたこと
により、割込許可IAKa=1を出力する。割込許可I
AKa=1は1ビットからなる許可バスABを介して主
信号処理部SPR1〜SPRnに送られる。
When the master CPUa receives IRQa = 1, it issues an acceptance permission request ARQa = 1 to the permission arbiter 11.
Is output. Upon receiving this, the permission arbiter 11 arbitrates with another reception permission request if necessary, and
When a = 1 is accepted, the acceptance permission AAKa = 1 is returned. Also, the permission arbiter 11 outputs an S bus request instruction signal AAK / (= corresponding to BRQa) at the same timing as AAKa = 1, which is preferentially received by the bus arbiter 12. As a result, the bus arbiter 12 temporarily outputs the bus permission BAKa = 1, whereby the master CPUa and the S bus are connected. The CPUa outputs the interruption permission IAKa = 1 when the reception permission AAKa = 1 and the bus permission BAKa = 1 are received. Interrupt permission I
AKa = 1 is sent to the main signal processing units SPR1 to SPRn via a 1-bit permission bus AB.

【0032】一方、主信号処理部SPR1では割込要求
イネーブルRQE1=1でかつ割込許可IAK1=1を
受けたことにより、アドレス/データ端子A/D1に割
込ベクタ情報を出力し、この割込ベクタ情報には主信号
処理部SPR1(即ち、処理要求元)の識別ID,割込
処理の種別情報等が含まれる。
On the other hand, the main signal processing unit SPR1 outputs interrupt vector information to the address / data terminal A / D1 by receiving the interrupt request enable RQE1 = 1 and the interrupt enable IAK1 = 1. The interrupt vector information includes an identification ID of the main signal processing unit SPR1 (that is, a processing request source), type information of an interrupt process, and the like.

【0033】一方、マスタCPUaではSバスを介して
SPR1からの割込ベクタ情報を取得し、次のクロック
タイミングで割込許可IAKa=0(消勢)とする。一
方、主信号処理部SPR1では上記割込許可IAKa=
1を受けたことにより、前記クロックタイミングで割込
要求IRQ1=0とする。これにより受付アービタ21
は割込要求イネーブルRQE1=0とし、これによりア
ドレス/データ端子A/D1の出力が消勢される。
On the other hand, the master CPUa acquires the interrupt vector information from the SPR1 via the S bus, and sets IAKa = 0 (deactivated) at the next clock timing. On the other hand, in the main signal processing unit SPR1, the interrupt permission IAKa =
As a result, the interrupt request IRQ1 = 0 is set at the clock timing. With this, the reception arbiter 21
Sets the interrupt request enable RQE1 = 0, whereby the output of the address / data terminal A / D1 is deactivated.

【0034】以後は、マスタCPUaは主信号処理部S
PR1の指定割込ベクタにジャンプし、対応する割込処
理を実行する。その際には、必要なら処理要求元の主信
号処理部SPR1にSバスを介して接続し、処理データ
や処理結果データのやり取りを行う。また最終的な処理
結果データは、共通メモリ30にも書き込まれ、このデ
ータは不図示のシステム監視モニタにより収集処理され
る。
After that, the master CPUa sets the main signal processing unit S
Jump to the designated interrupt vector of PR1 and execute the corresponding interrupt processing. At this time, if necessary, the main signal processing unit SPR1 of the processing request source is connected via the S bus to exchange processing data and processing result data. The final processing result data is also written in the common memory 30, and this data is collected and processed by a system monitoring monitor (not shown).

【0035】なお、このマスタCPUaが前回の割込処
理を実行中の場合は、例えばCPUaが内部で発行した
割込ディセーブルコマンドの実行により、CPUaは新
たな割込要求を受け付けない。この場合のCPUaに対
して新たに割り振られた、例えば主信号処理部SPR1
からの新たな割込要求IRQa=1は、CPUaの入口
で無視され、よって受付許可要求ARQa=0のままで
ある。
When the master CPUa is executing the previous interrupt process, the CPUa does not accept a new interrupt request, for example, by executing an interrupt disable command issued internally by the CPUa. In this case, for example, the main signal processing unit SPR1 newly allocated to the CPUa
, The new interrupt request IRQa = 1 is ignored at the entrance of the CPUa, so that the acceptance permission request ARQa = 0 remains.

【0036】一方、この場合の受付アービタ21では、
割込要求イネーブルRQE1=1にしたにも係わらず、
所定数のクロックサイクルを経過しても主信号処理部S
PR1の割込要求IRQ1=0とならないことにより、
割込要求イネーブルRQE1を強制的に「0」とする。
その結果、この場合の主信号処理部SPR1は割込要求
IRQ1=1としたままで処理待機となり、次回に割込
要求イネーブルRQE1=1となるのを待つことにな
る。こうして、主信号処理部SPR1で発生する時系列
な割込要求はマスタCPUaにより時系列に処理される
ことになる。一方、受付アービタ21のサービスは速や
かに他のSPRの調停に移る。
On the other hand, in the reception arbiter 21 in this case,
Despite setting interrupt request enable RQE1 = 1,
After a predetermined number of clock cycles, the main signal processing unit S
Since the interrupt request IRQ1 of PR1 does not become 0,
The interrupt request enable RQE1 is forcibly set to "0".
As a result, the main signal processing unit SPR1 in this case stands by for processing while keeping the interrupt request IRQ1 = 1, and waits for the next time the interrupt request enable RQE1 = 1. Thus, the time-series interrupt requests generated in the main signal processing unit SPR1 are processed in time series by the master CPUa. On the other hand, the service of the reception arbiter 21 immediately shifts to arbitration of another SPR.

【0037】次に、主信号処理部SPR2がプロセッサ
指示RID2=0(不特定)の指定で割込要求IRQ2
を発生した場合の動作を具体的に説明する。即ち、主信
号処理部SPR2において、イベントが発生すると割込
要求IRQ2=1を出力する。これを受けた受付アービ
タ21は、必要なら他の割込要求との間で調停を行うと
共に、IRQ2=1を受け付ける時は、割込要求イネー
ブルRQE2=1を返送する。主信号処理部SPR2は
RQE2=1を受けたことによりプロセッサ指示RID
2=0(不特定)を出力し、該信号は指定バスIBに加
えられる。一方、受付アービタ21はRQE2=1と同
じタイミングにゲート信号RQE/=1を出力する。
Next, the main signal processing unit SPR2 designates the processor instruction RID2 = 0 (unspecified) and specifies the interrupt request IRQ2.
The operation in the case of occurrence of will be described specifically. That is, when an event occurs, the main signal processing unit SPR2 outputs an interrupt request IRQ2 = 1. The reception arbiter 21 receiving the request performs arbitration with another interrupt request if necessary, and returns an interrupt request enable RQE2 = 1 when accepting IRQ2 = 1. The main signal processing unit SPR2 receives the RQE2 = 1,
2 = 0 (unspecified) is output, and the signal is applied to the designated bus IB. On the other hand, reception arbiter 21 outputs gate signal RQE / = 1 at the same timing as RQE2 = 1.

【0038】割込デコーダ40では、IB=0によりイ
ンバータ回路I1の出力=1となり、信号RQE/=1
のタイミングではANDゲート回路A1,A3,A5が
一斉に付勢され、これにより割込要求IRQa〜IRQ
c=1となる。即ち、不特定のプロセッサ指示による割
込要求は割込デコーダ40によりマスタCPUaをも含
めた全CPUa〜CPUcに割り振られる。
In the interrupt decoder 40, since IB = 0, the output of the inverter circuit I1 becomes 1, and the signal RQE / = 1
, The AND gate circuits A1, A3, and A5 are energized all at once, whereby the interrupt requests IRQa to IRQ
c = 1. That is, an interrupt request by an unspecified processor instruction is allocated by the interrupt decoder 40 to all CPUs including the master CPUa.

【0039】CPUa〜CPUcでは、夫々IRQa〜
IRQc=1を受けたことにより許可アービタ11に受
付許可要求ARQa〜ARQc=1を出力する。なお、
上記の如くマスタCPUaが主信号処理部SPR1の割
込処理を実行中の場合はARQa=1を出力しない。こ
うしてマスタCPUaへの処理集中が回避される。一
方、許可アービタ11は、受付許可要求ARQa〜AR
Qc=1の間でラウンドロビン方式等による優先調停を
行うと共に、例えば受付許可要求ARQb=1を受け付
ける時は、受付許可AAKb=1を返送する。因みに、
ラウンドロビン方式の下では、前回受付許可AAKa=
1を与えられたCPUaの優先順位が最下位となり、今
回はCPUbに優先的に受付許可AAKb=1が与えら
れる。こうして不特定のCPUa〜CPUc間における
負荷分散の均等化が図られる。
In the CPUa-CPUc, IRQa-
Upon receiving IRQc = 1, it outputs acceptance permission requests ARQa to ARQc = 1 to permission arbiter 11. In addition,
ARQa = 1 is not output when the master CPUa is executing the interrupt processing of the main signal processing unit SPR1 as described above. In this way, processing concentration on the master CPUa is avoided. On the other hand, the permission arbiter 11 transmits the reception permission requests ARQa to ARQ.
While performing priority arbitration by the round robin method or the like during Qc = 1, for example, when accepting the acceptance permission request ARQb = 1, the reception permission AAKb = 1 is returned. By the way,
Under the round robin method, the last acceptance permission AAKa =
The priority order of the CPUa given 1 is the lowest, and the acceptance permission AAKb = 1 is given to the CPUb this time with priority. In this way, the load distribution among the unspecified CPUs a to c is equalized.

【0040】また許可アービタ11は、受付許可AAK
b=1と同じタイミングにSバス要求の指示信号AAK
/(=BRQbに相当)を出力し、これはバスアービタ
12により優先的に受け付けられる。これによりバス許
可BAKb=1となり、CPUbはSバスに接続され
る。そして、CPUbは割込許可IAKb=1を出力す
ると共に、上記同様にしてSバスを介して主信号処理部
SPR2からの割込ベクタ情報(即ち、割込要求元SP
R2の識別ID,処理種別の情報等)を取得する。こう
して、主信号処理部SPR2によるプロセッサ指示RI
D2=0(不特定)を伴う割込要求IRQ2=1は、上
記した様な所定の負荷分散制御の下で、空いている何れ
かのCPUa,CPUb又はCPUcにより迅速に処理
される。
The permission arbiter 11 receives the permission permission AAK.
At the same timing as b = 1, an S bus request instruction signal AAK
/ (= Corresponding to BRQb), which is preferentially accepted by the bus arbiter 12. As a result, the bus permission BAKb = 1, and the CPUb is connected to the S bus. Then, the CPUb outputs the interrupt permission IAKb = 1 and, in the same manner as above, the interrupt vector information from the main signal processing unit SPR2 via the S bus (that is, the interrupt request source SP).
R2 identification ID, processing type information, etc.). Thus, the processor instruction RI by the main signal processing unit SPR2
The interrupt request IRQ2 = 1 accompanied by D2 = 0 (unspecified) is promptly processed by any of the vacant CPUa, CPUb, or CPUc under the above-described predetermined load distribution control.

【0041】図3は実施の形態による割込処理のタイミ
ングチャートで、上記マスタCPUaが割込処理を受け
付ける場合のタイミングの例を示している。図におい
て、主信号処理部SPR1の割込要求IRQ1=1に対
する割込要求イネーブルRQE1=1は、この例ではた
またま最小時間MIN(1クロック周期)で発生してい
る。割込要求IRQa=1に対する割込許可AAKa=
1も同様である。なお、一般に、不特定指示の割込要求
では通常空き状態のCPUに優先順位があるので、IR
Qa=1に対するAAKa=1も最小時間MINで発生
する場合が多い。また信号AAK/(AAKa=1に相
当)=1に対するバス許可BAKa=1はバスアービタ
12における優先的処理により常に最小時間MINで発
生する。こうして、主信号処理部SPR1からの割込要
求IRQ1=1は、割込要求イネーブルRQE1=1の
発行後、通常は4クロック程度で受け付けられる。そこ
で、この時間を超える様な時は、受付アービタ21は、
他の主信号処理部SPRからの処理要求を優先割振させ
るために、例え割込要求IRQ1=1であっても、当該
SPR1への割振サービスを一旦停止する。即ち、割込
要求イネーブルRQE1=0とする。
FIG. 3 is a timing chart of the interrupt processing according to the embodiment, and shows an example of the timing when the master CPUa accepts the interrupt processing. In the figure, the interrupt request enable RQE1 = 1 for the interrupt request IRQ1 = 1 of the main signal processing unit SPR1 happens to occur in the minimum time MIN (one clock cycle) in this example. Interrupt permission AAKa = for interrupt request IRQa = 1
1 is the same. In general, in the case of an interrupt request of an unspecified instruction, the CPU in a normally idle state has a priority.
AAKa = 1 for Qa = 1 often occurs in the minimum time MIN. Further, the bus permission BAKa = 1 for the signal AAK / (corresponding to AAKa = 1) = 1 always occurs in the minimum time MIN due to priority processing in the bus arbiter 12. Thus, the interrupt request IRQ1 = 1 from the main signal processing unit SPR1 is normally accepted in about four clocks after issuing the interrupt request enable RQE1 = 1. Therefore, when the time exceeds this time, the reception arbiter 21
In order to give priority to a processing request from another main signal processing unit SPR, even if the interrupt request IRQ1 = 1, the allocation service to the SPR1 is temporarily stopped. That is, the interrupt request enable RQE1 = 0.

【0042】図4は第2の実施の形態によるマルチプロ
セッサシステムの構成を示す図で、例えばマスタCPU
aが故障した場合に他のCPUにマスタを自動的に振り
替える場合を示している。図において、50は例えばマ
スタCPUaが障害時等に他のCPUb又はCPUcを
仮のマスタとしてシステムに提供するプロセッサ選択部
(PSEL)である。その他の構成については上記図2
で述べたものと同様で良い。
FIG. 4 is a diagram showing the configuration of a multiprocessor system according to the second embodiment.
This shows a case where the master is automatically transferred to another CPU when a fails. In the figure, reference numeral 50 denotes a processor selection unit (PSEL) that provides another CPUb or CPUc as a temporary master to the system when, for example, the master CPUa fails. For other configurations, see FIG.
It may be the same as that described above.

【0043】但し、この場合のCPUaは内部に異常検
出部(ウォッチドグタイマ等)を備えており、CPUa
の動作が異常(無限ループに入る等)であると、マルフ
ァンクションMFCa=1を出力する。他のCPUb,
CPUcについても同様である。今、マスタCPUaに
ついてMFCa=1になると、ANDゲート回路A11
の入力が消勢され、このためにANDゲート回路A2の
入力も消勢される。従って、上記主信号処理部SPR1
からのプロセッサ指示RID1=1(マスタ)の割込要
求はマスタCPUaには届かない。
However, in this case, the CPUa has an abnormality detecting unit (watch dog timer, etc.) inside, and the CPUa
Is abnormal (enters an infinite loop, etc.), the multifunction MFCa = 1 is output. Other CPUb,
The same applies to CPUc. Now, when MFCa = 1 for the master CPUa, the AND gate circuit A11
Is deactivated, and the input of the AND gate circuit A2 is also deactivated. Therefore, the main signal processing unit SPR1
The interrupt request of processor instruction RID1 = 1 (master) does not reach master CPUa.

【0044】一方、プロセッサ選択部50内では、CP
Uaの状態PIDa=1(マスタ)によりORゲート回
路O1の出力=1となっており、これとプロセッサ異常
MFCa=1とによりANDゲート回路A12の出力=
1となる。これがORゲート回路O2に入力され、これ
によりORゲート回路O2の出力=1となる。今、CP
Ubが正常であるとすると、プロセッサ異常MFCb=
0であるから、これによりANDゲート回路A13の入
力が付勢される。また上記ORゲート回路O2の出力=
1によりANDゲート回路A13の出力=1となり、こ
うして上記主信号処理部SPR1からのプロセッサ指示
RID1=1(マスタ)を伴う割込要求はANDゲート
回路A4を介して代替マスタCPUbに届くことにな
る。
On the other hand, in the processor selecting section 50, the CP
The output of the OR gate circuit O1 is 1 due to the state PIDa = 1 (master) of Ua, and the output of the AND gate circuit A12 =
It becomes 1. This is input to the OR gate circuit O2, whereby the output of the OR gate circuit O2 = 1. Now, CP
Assuming that Ub is normal, the processor error MFCb =
Since this is 0, the input of the AND gate circuit A13 is energized. Also, the output of the OR gate circuit O2 =
As a result of 1, the output of the AND gate circuit A13 = 1, and thus the interrupt request accompanied by the processor instruction RID1 = 1 (master) from the main signal processing unit SPR1 reaches the substitute master CPUb via the AND gate circuit A4. .

【0045】即ち、この場合のSPR1からのマスタ指
定の割込要求は代替マスタCPUbにより時系列に処理
されることになる。SPR1では時系列な処理要求が時
系列に処理されれば、実際上はどのCPUがマスタであ
っても構わない。一方、代替マスタCPUbはSバスを
介して処理要求元がSPR1であることを知れるから、
SPR1からの割込要求を適正に処理できる。こうし
て、マスタCPUaが障害となると、CPUbが代替マ
スタとなり、また更に代替マスタCPUbが障害になる
と、上記同様のアルゴリズムによりCPUcが代替マス
タとなる。なお、この例ではANDゲート回路A16の
出力がORゲート回路O1の入力に帰還されており、こ
れにより、どのCPUがマスタとなった場合でも他のC
PUが代替マストとなれる。
That is, in this case, the master-designated interrupt request from SPR1 is processed in time series by the substitute master CPUb. In SPR1, as long as time-series processing requests are processed in time series, actually, any CPU may be the master. On the other hand, since the alternative master CPUb knows that the processing request source is SPR1 via the S bus,
The interrupt request from SPR1 can be properly processed. Thus, when the master CPUa fails, the CPUb becomes the substitute master, and when the substitute master CPUb fails, the CPUc becomes the substitute master by the same algorithm as described above. In this example, the output of the AND gate circuit A16 is fed back to the input of the OR gate circuit O1.
PU can be an alternative mast.

【0046】なお、上記第2の実施の形態では、マスタ
CPUaが障害であることによりプロセッサ選択部50
の制御に従って他のCPUbを自動的に代替マスタとし
たがこれに限らない。例えば、マスタCPUaが障害で
あることを契機として、CPUb,CPUc間(但し、
この場合のCPUaは障害のために調停に加われない)
で再度上記した自律的なマスタ抽出調停を行い、CPU
b又はCPUcが本来のマスタとなっても良い。
In the second embodiment, since the master CPUa has a fault, the processor selection unit 50
The other CPUb is automatically set as the substitute master according to the above control, but is not limited to this. For example, when a failure occurs in the master CPUa, an interval between the CPUb and the CPUc (however,
In this case, the CPUa does not participate in the arbitration due to a failure.)
The above-mentioned autonomous master extraction arbitration is performed again, and the CPU
b or CPUc may be the original master.

【0047】図5は第3の実施の形態によるマルチプロ
セッサシステムの構成を示す図で、周辺回路部SPR1
〜nからの割込要求をそのプロセッサ指示情報RID
(=0〜3)に従って固有の識別ID=1(又は2,
3)に各対応するプロセッサa〜c又は不特定(=0)
のプロセッサa〜cに割り振る場合を示している。図に
おいて、40は第3の実施の形態による割込デコーダ
(IDEC)であり、その他の構成については上記図2
で述べたものと同様で良い。
FIG. 5 is a diagram showing a configuration of a multiprocessor system according to the third embodiment.
... N to the processor instruction information RID
(= 0 to 3), the unique identification ID = 1 (or 2,
3) corresponding processors a to c or unspecified (= 0)
Are assigned to the processors a to c. In the figure, reference numeral 40 denotes an interrupt decoder (IDEC) according to the third embodiment.
It may be the same as that described above.

【0048】主信号処理部SPR1は割込要求IRQ1
=1を出力すると共に、当該処理を不特定のプロセッサ
a〜cに依頼したい場合はRID1=「0」、特定のプ
ロセッサa,b又はcに依頼したい場合はRID1=
「1」,「2」又は「3」を出力する。
The main signal processing unit SPR1 receives the interrupt request IRQ1
= 1, and RID1 = "0" when requesting the processing to unspecified processors a to c, and RID1 = when requesting the processing to specific processors a, b or c.
"1", "2" or "3" is output.

【0049】割込デコーダ40において、デコーダDE
CはバスIB上のデータ「0」〜「3」をデコードして
各対応する出力端子0〜3を付勢する。従って、プロセ
ッサ指示RID1=「0」(不特定)の時は、ANDゲ
ート回路A1,A3,A5が一斉に付勢され、許可アー
ビタ11で何れか一つの割込要求が受け付けられる。ま
たプロセッサ指示RID1=「1」(プロセッサa指
定)の時は、ANDゲート回路A2のみが付勢され、最
終的にプロセッサaにより受け付けられる。プロセッサ
指示RID1=「2」/「3」(プロセッサb/c指
定)の場合も同様である。
In the interrupt decoder 40, the decoder DE
C decodes data "0"-"3" on bus IB and energizes corresponding output terminals 0-3. Therefore, when the processor instruction RID1 = “0” (unspecified), the AND gate circuits A1, A3, and A5 are energized all at once, and any one of the interrupt requests is accepted by the permission arbiter 11. When processor instruction RID1 = "1" (designation of processor a), only AND gate circuit A2 is energized and finally accepted by processor a. The same applies to the case where the processor instruction RID1 = "2" / "3" (processor b / c designation).

【0050】図6は第4の実施の形態によるマルチプロ
セッサシステムの構成を示す図で、例えば指定したCP
Uaが故障した場合に他の例えばCPUbに指定先を自
動的に振り替える場合を示している。図において、50
は第4の実施の形態によるプロセッサ選択部(PSE
L)である。その他の構成については上記図5で述べた
ものと同様で良い。
FIG. 6 is a diagram showing the configuration of a multiprocessor system according to the fourth embodiment.
The case where the designated destination is automatically transferred to another CPUb, for example, when Ua breaks down is shown. In the figure, 50
Is a processor selection unit (PSE) according to the fourth embodiment.
L). Other configurations may be the same as those described with reference to FIG.

【0051】図において、今、主信号処理部SPR1が
割込要求IRQ1=1と共に、プロセッサ指示RID1
=「0」(不特定)を出力したとすると、該要求はAN
Dゲート回路A1,A3,A5に振り分けられ、RQE
/=1のタイミングにIRQa〜IRQc=1となる。
この場合は、もしCPUaが異常であっても、該割込要
求は最終的にCPUb又はCPUcにより受け付けられ
る。
In the figure, the main signal processing unit SPR1 now issues an interrupt request IRQ1 = 1 and a processor instruction RID1.
= "0" (unspecified), the request is AN
D gate circuits A1, A3, A5
At the timing of / = 1, IRQa to IRQc = 1.
In this case, even if the CPUa is abnormal, the interrupt request is finally accepted by the CPUb or the CPUc.

【0052】次に主信号処理部SPR1が割込要求IR
Q1=1と共に、プロセッサ指示RID1=「1」(プ
ロセッサa指定)を出力したとすると、デコーダDEC
の出力端子1=1によりORゲート回路O1が付勢さ
れ、その出力=1となる。この状態で、もしCPUaが
正常であると、プロセッサ異常MFCa=0によりAN
Dゲート回路A11が満足され、該割込要求はANDゲ
ート回路A2を介して指定のCPUaに割り付けられ
る。
Next, the main signal processing unit SPR1 sends the interrupt request IR
Assuming that processor instruction RID1 = "1" (processor a designation) is output together with Q1 = 1, decoder DEC
The OR gate circuit O1 is energized by the output terminal 1 = 1, and its output = 1. In this state, if the CPUa is normal, the processor failure MFCa = 0 causes AN
The D gate circuit A11 is satisfied, and the interrupt request is allocated to the designated CPUa via the AND gate circuit A2.

【0053】しかし、この場合に、もし指定されたCP
Uaが障害であると、MFCa=1によりANDゲート
回路A11の入力が消勢され、このためにANDゲート
回路A2の入力も消勢される。従って、主信号処理部S
PR1からのプロセッサa指定の割込要求はCPUaに
は届かない。
However, in this case, if the designated CP
If Ua is faulty, the input to AND gate circuit A11 is deactivated by MFCa = 1, which also deactivates the input to AND gate circuit A2. Therefore, the main signal processing unit S
The interrupt request for processor a from PR1 does not reach CPUa.

【0054】一方、プロセッサ選択部50の内部では、
上記デコーダDECの出力端子1=1によりORゲート
回路O1の出力=1であり、かつこれとプロセッサ異常
MFCa=1とによりANDゲート回路A12の出力=
1となり、これがORゲート回路O2に入力されて、O
Rゲート回路O2の出力=1となる。
On the other hand, inside the processor selecting section 50,
The output of the OR gate circuit O1 = 1 due to the output terminal 1 = 1 of the decoder DEC, and the output of the AND gate circuit A12 due to this and the processor abnormality MFCa = 1 =
1, which is input to the OR gate circuit O2,
The output of the R gate circuit O2 = 1.

【0055】そして、今、CPUbが正常であるとする
と、プロセッサ異常MFCb=0であるから、これによ
りANDゲート回路A13の入力が付勢される。また上
記ORゲート回路O2の出力=1によりANDゲート回
路A13の出力=1となり、こうして、主信号処理部S
PR1からのプロセッサa指定を伴う割込要求は、AN
Dゲート回路A4を介して代替プロセッサCPUbに割
り付けられる。他の指定CPUが障害の場合も同様に考
えられる。
Now, assuming that the CPUb is normal, since the processor abnormality MFCb = 0, the input of the AND gate circuit A13 is thereby activated. Further, the output of the OR gate circuit O2 = 1, the output of the AND gate circuit A13 = 1, and thus the main signal processing unit S
The interrupt request with the processor a designation from PR1 is AN
It is allocated to the alternative processor CPUb via the D gate circuit A4. The same applies to a case where another specified CPU has a failure.

【0056】なお、上記第2/第4の実施の形態では、
マスタ/指定のCPUaが障害であることにより、該マ
スタ/指定の割込処理を他の所定のCPUbに振り分け
たがこれに限らない。例えばこの割込要求を不特定のC
PUa〜CPUcに振り分ける様に構成しても良い。
In the second / fourth embodiments,
Since the master / designated CPUa is faulty, the master / designated interrupt processing is assigned to another predetermined CPUb, but the present invention is not limited to this. For example, if this interrupt request is
You may comprise so that it may distribute to PUa-CPUc.

【0057】また、上記各実施の形態では具体的数値例
を伴って説明をしたが、本発明がこれらの数値例に限定
されないことは言うまでも無い。
Although the above embodiments have been described with reference to specific numerical examples, it goes without saying that the present invention is not limited to these numerical examples.

【0058】また、上記各実施の形態では受付アービタ
21がラウンドロビン方式による優先調停を行う場合を
述べたが、これに限らない。例えば、主信号処理部SP
R1〜nからの割込要求IRQ1〜nを巡回的にスキャ
ン(又はポーリング)して割込要求イネーブルREQE
1〜nを返送する様な方式を採用しても良い。なお、こ
の事は許可アービタ11についても同様である。
In each of the above embodiments, the case where the reception arbiter 21 performs the priority arbitration by the round robin method has been described, but the present invention is not limited to this. For example, the main signal processing unit SP
It scans (or polls) the interrupt requests IRQ1 to IRQn from R1 to n cyclically to enable interrupt request REQE.
A method of returning 1 to n may be adopted. This is the same for the permission arbiter 11.

【0059】また、上記各実施の形態では割込デコーダ
40及びプロセッサ選択部50の部分をハードウェア構
成により実現したが、この部分をCPU等を使用したプ
ログラム制御によるソフトウェア構成により実現しても
良いことは明らかである。
In each of the above embodiments, the interrupt decoder 40 and the processor selecting section 50 are realized by a hardware configuration. However, this section may be realized by a software configuration based on program control using a CPU or the like. It is clear.

【0060】また、上記本発明に好適なる複数の実施の
形態を述べたが、本発明思想を逸脱しない範囲内で各部
の構成、制御、及びこれらの組合せの様々な変更が行え
ることは言うまでも無い。
Although a plurality of preferred embodiments of the present invention have been described, it is needless to say that various changes can be made in the configuration, control, and combination of these components without departing from the spirit of the present invention. Not even.

【0061】[0061]

【発明の効果】以上述べた如く本発明によれば、簡単な
構成で、好ましくはプロセッサの障害有/無によらず、
時系列な処理と非時系列な処理とを夫々能率良く適正に
処理できるので、マルチプロセッサシステムの処理能力
向上及び信頼性向上に寄与する所が極めて大きい。
As described above, according to the present invention, with a simple configuration, preferably with or without a processor failure,
Since time-series processing and non-time-series processing can be performed appropriately and efficiently, it greatly contributes to the improvement of the processing performance and reliability of the multiprocessor system.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の原理を説明する図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】第1の実施の形態によるマルチプロセッサシス
テムの構成を示す図である。
FIG. 2 is a diagram illustrating a configuration of a multiprocessor system according to a first embodiment.

【図3】実施の形態による割込処理のタイミングチャー
トである。
FIG. 3 is a timing chart of an interrupt process according to the embodiment;

【図4】第2の実施の形態によるマルチプロセッサシス
テムの構成を示す図である。
FIG. 4 is a diagram illustrating a configuration of a multiprocessor system according to a second embodiment.

【図5】第3の実施の形態によるマルチプロセッサシス
テムの構成を示す図である。
FIG. 5 is a diagram illustrating a configuration of a multiprocessor system according to a third embodiment.

【図6】第4の実施の形態によるマルチプロセッサシス
テムの構成を示す図である。
FIG. 6 is a diagram illustrating a configuration of a multiprocessor system according to a fourth embodiment.

【符号の説明】[Explanation of symbols]

10 マルチプロセッサ部 11 許可アービタ(IABT) 12 バスアービタ(BABT) 13 システムバスアービタ(SABT) 20 周辺回路部 21 受付アービタ(PRU) 30 共通メモリ(MEMo) 40 割込デコーダ(IDEC) 50 プロセッサ選択部(PSEL) PRa〜PRc プロセッサ SB システムバス(Sバス) SPR1〜SPRn 主信号処理部 DESCRIPTION OF SYMBOLS 10 Multiprocessor part 11 Permission arbiter (IABT) 12 Bus arbiter (BABT) 13 System bus arbiter (SABT) 20 Peripheral circuit part 21 Reception arbiter (PRU) 30 Common memory (MEMo) 40 Interrupt decoder (IDEC) 50 Processor selection part ( PSEL) PRa to PRc Processor SB System bus (S bus) SPR1 to SPRn Main signal processing unit

───────────────────────────────────────────────────── フロントページの続き (72)発明者 佐復 和彦 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 Fターム(参考) 5B045 AA00 FF03 FF06 FF11 GG02 JJ13 5B061 BA01 BA02 BB04 BC03 BC08 GG11 5B083 AA08 BB03 CC04 CD01 CE01 DD09 EE02  ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Kazuhiko Sakato 4-1-1, Kamiodanaka, Nakahara-ku, Kawasaki-shi, Kanagawa F-term in Fujitsu Limited (Reference) 5B045 AA00 FF03 FF06 FF11 GG02 JJ13 5B061 BA01 BA02 BB04 BC03 BC08 GG11 5B083 AA08 BB03 CC04 CD01 CE01 DD09 EE02

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 複数のプロセッサと複数の周辺回路部と
がバスを介して接続すると共に、複数の周辺回路部から
の割込要求を複数のプロセッサが分担処理するマルチプ
ロセッサシステムにおいて、 マスタと1又は2以上の非マスタとで特定される複数の
プロセッサと、 割込要求の発生と共にマスタ又は不特定を表すプロセッ
サ指示情報を出力する複数の周辺回路部と、 各周辺回路部からの割込要求をそのプロセッサ指示情報
に従ってマスタ又は1又は2以上の不特定のプロセッサ
に割り振る割振制御部とを備えることを特徴とするマル
チプロセッサシステム。
1. A multiprocessor system in which a plurality of processors and a plurality of peripheral circuit units are connected via a bus, and wherein a plurality of processors share an interrupt request from the plurality of peripheral circuit units. Or, a plurality of processors specified by two or more non-masters, a plurality of peripheral circuit units for outputting processor instruction information indicating master or unspecified together with generation of an interrupt request, and an interrupt request from each peripheral circuit unit And an allocation control unit for allocating to a master or one or more unspecified processors according to the processor instruction information.
【請求項2】 複数のプロセッサと複数の周辺回路部と
がバスを介して接続すると共に、複数の周辺回路部から
の割込要求を複数のプロセッサが分担処理するマルチプ
ロセッサシステムにおいて、 固有の識別IDにより特定される複数のプロセッサと、 割込要求の発生と共に固有の識別ID又は不特定を表す
プロセッサ指示情報を出力する複数の周辺回路部と、 各周辺回路部からの割込要求をそのプロセッサ指示情報
に従って固有の識別ID又は1又は2以上の不特定のプ
ロセッサに割り振る割振制御部とを備えることを特徴と
するマルチプロセッサシステム。
2. A multiprocessor system in which a plurality of processors and a plurality of peripheral circuit units are connected via a bus, and wherein a plurality of processors share and process interrupt requests from the plurality of peripheral circuit units. A plurality of processors specified by the ID; a plurality of peripheral circuits for outputting a processor identification information indicating a unique identification ID or unspecified together with the generation of the interrupt request; and a processor for receiving the interrupt request from each peripheral circuit. A multi-processor system comprising: an allocation control unit that allocates a unique identification ID or one or more unspecified processors according to the instruction information.
【請求項3】 複数の周辺回路部と割振制御部との間に
介在し、複数の周辺回路部からの競合する2以上の割込
要求を調停して割振制御部への入力を時系列に受け付け
る受付アービタを備えることを特徴とする請求項1又は
2に記載のマルチプロセッサシステム。
3. An intermediary between a plurality of peripheral circuit units and an allocation control unit, arbitrating at least two competing interrupt requests from the plurality of peripheral circuit units, and inputting the input to the allocation control unit in a time-series manner. 3. The multiprocessor system according to claim 1, further comprising a reception arbiter for receiving.
【請求項4】 複数のプロセッサからの競合する2以上
の割込受付要求を調停して何れか一つのプロセッサに受
付許可を発行する許可アービタを備えることを特徴とす
る請求項1乃至3の何れか一つに記載のマルチプロセッ
サシステム。
4. The apparatus according to claim 1, further comprising a permission arbiter for arbitrating at least two competing interrupt reception requests from a plurality of processors and issuing a reception permission to any one of the processors. The multiprocessor system according to any one of the above.
【請求項5】 外部設定又は複数のプロセッサの自律的
な調停動作によりマスタプロセッサを決定することを特
徴とする請求項1に記載のマルチプロセッサシステム。
5. The multiprocessor system according to claim 1, wherein the master processor is determined by an external setting or an autonomous arbitration operation of a plurality of processors.
【請求項6】 割振制御部は、マスタプロセッサが異常
であることにより、該マスタプロセッサヘの割込要求を
所定の非マスタプロセッサに振り替えることを特徴とす
る請求項1に記載のマルチプロセッサシステム。
6. The multiprocessor system according to claim 1, wherein the allocation control unit transfers an interrupt request to the master processor to a predetermined non-master processor when the master processor is abnormal.
【請求項7】 割振制御部は、特定のプロセッサが異常
であることにより、該特定のプロセッサヘの割込要求を
他の所定のプロセッサに振り替えることを特徴とする請
求項2に記載のマルチプロセッサシステム。
7. The multiprocessor according to claim 2, wherein the allocation control unit transfers an interrupt request to the specific processor to another predetermined processor when the specific processor is abnormal. system.
JP11110640A 1999-04-19 1999-04-19 Multi-processor system Withdrawn JP2000305917A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11110640A JP2000305917A (en) 1999-04-19 1999-04-19 Multi-processor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11110640A JP2000305917A (en) 1999-04-19 1999-04-19 Multi-processor system

Publications (1)

Publication Number Publication Date
JP2000305917A true JP2000305917A (en) 2000-11-02

Family

ID=14540851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11110640A Withdrawn JP2000305917A (en) 1999-04-19 1999-04-19 Multi-processor system

Country Status (1)

Country Link
JP (1) JP2000305917A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398378B2 (en) 2005-06-22 2008-07-08 Renesas Technology Corp. Allocating lower priority interrupt for processing to slave processor via master processor currently processing higher priority interrupt through special interrupt among processors

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398378B2 (en) 2005-06-22 2008-07-08 Renesas Technology Corp. Allocating lower priority interrupt for processing to slave processor via master processor currently processing higher priority interrupt through special interrupt among processors
CN100445972C (en) * 2005-06-22 2008-12-24 株式会社瑞萨科技 Multi-processor system

Similar Documents

Publication Publication Date Title
CA2123447C (en) Scalable system interrupt structure for a multiprocessing system
JP2625589B2 (en) Multiprocessor system
JPH0666821B2 (en) Data communication controller
JP2539021B2 (en) Interrupt request generation node that sends an interrupt request to the pending bus
EP0644489A2 (en) Method and apparatus for signalling interrupt information in a data processing system
US7805555B2 (en) Multiprocessor system
JPH06266676A (en) Interruption steering system of multiprocessor-computer
EP0827085A2 (en) Method and apparatus for distributing interrupts in a scalable symmetric multiprocessor system without changing the bus width or bus protocol
JPH04232558A (en) Multiprocessor system
JP6129976B2 (en) Method and apparatus using high efficiency atomic operations
JPH0679305B2 (en) Device and method for responding to an interrupt using a hold bus
US6606677B1 (en) High speed interrupt controller
EP1811393A1 (en) Method and system for data transfer
US8346975B2 (en) Serialized access to an I/O adapter through atomic operation
CN111831408A (en) Asynchronous task processing method and device, electronic equipment and medium
JP2000305917A (en) Multi-processor system
US20210243257A1 (en) Service request interrupt router for virtual interrupt service providers
CN109101443B (en) Weight time-sharing arbitration device and method
JP4151362B2 (en) Bus arbitration method, data transfer device, and bus arbitration method
JPH01305461A (en) Right of using bus control system
JPH05314063A (en) Multiple bus control system
JP2000010934A (en) Bus arbitration system in multi-cpu system
JP2013073297A (en) Interruption control circuit and interruption control method by time division system
JPH0573507A (en) Reliefing device in message communication between electronic computers
JP2002366451A (en) Multi-processor system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060704