JPS6345668A - Task starting device - Google Patents

Task starting device

Info

Publication number
JPS6345668A
JPS6345668A JP18846486A JP18846486A JPS6345668A JP S6345668 A JPS6345668 A JP S6345668A JP 18846486 A JP18846486 A JP 18846486A JP 18846486 A JP18846486 A JP 18846486A JP S6345668 A JPS6345668 A JP S6345668A
Authority
JP
Japan
Prior art keywords
task
processor
interrupt
shared memory
starting
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
JP18846486A
Other languages
Japanese (ja)
Inventor
Masatsugu Kametani
亀谷 雅嗣
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP18846486A priority Critical patent/JPS6345668A/en
Publication of JPS6345668A publication Critical patent/JPS6345668A/en
Pending 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

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

Abstract

PURPOSE:To start a task at the highest speed by transforming all sequences needed up to the start of a desired task set between optional processors into hardware excluding 1- or 2-machine instruction needed for a task starting processor to give an instruction to a task start receiving processor for task start. CONSTITUTION:A part or the whole of an interruption vector table of each processor is allocated to a table array 3 itself of a shared memory 2 and not onto a local memory 18. Thus a task starting processor can write the task starting head address itself directly to the interruption vector table of a task start receiving processor. Therefore this processor refers to the table array 3 in an interruption response cycle to shift the processing directly to a desired task after the task start is instructed by an interruption. Thus the overhead of software is minimized. In other words, the 1- or 2-machine instruction instructing the task start is supported by software. While other instructions are all supported by hardware.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマルチ・プロセッサ・システムに係り、特にマ
ルチ・プロセッサ・システムを構成する各プロセッサ間
で高速にタスク起動を行うのに好適なプロセッサ間のタ
スク起動装置に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a multi-processor system, and in particular to an inter-processor system suitable for high-speed task activation between each processor constituting a multi-processor system. The present invention relates to a task activation device.

〔従来の技術〕[Conventional technology]

従来のマルチ・プロセッサ・システムにおけるダイナミ
ックなタスク起動は、特開昭60−95678号公報に
みられる様に、基本的には周辺入出力装置やセンサ・シ
ステムからプロセッサへのハードウェア割込みによるも
のが大半である。これは、単一プロセッサのときのハー
ドウェア割込みの基本概念と同一である。結合性の高い
高度なシステムになるとプロセッサ間で割込みをかけ合
う機能が必要となり、特開昭60−95676号公報に
みられる様に専用のインタラブド線でプロセッサを互い
に接続する方式がとられているにの場合、プロセッサ台
数が多い大規模システムでは配線が複雑になるため任意
プロセッサ間に割込み線を引くことはせず、特定の機能
を満足する様に専用的な結合とするのが普通である。ま
た1通常割込を起動したプロセッサや割込みタスクの先
頭番地の判断及び割込みを受付けたことを示す割込み受
付は処理等をソフトウェアで行っている。その他、特開
昭60−95670号公報の様にプロセッサ間の命令伝
達・データ通信をダイナミックに行う方式としてハード
ウェア割込みを用いるのではなく1時分割で送信元プロ
セッサ及び送信先プロセッサの属性を示す信号を送出し
、各プロセッサがそれをモニタすることによって必要な
動作を行う方式もある。
Dynamic task activation in conventional multi-processor systems is basically based on hardware interrupts from peripheral input/output devices or sensor systems to the processor, as seen in Japanese Patent Laid-Open No. 60-95678. The majority. This is the same basic concept of hardware interrupts when using a single processor. Advanced systems with high connectivity require a function to issue interrupts between processors, and as seen in Japanese Unexamined Patent Application Publication No. 60-95676, a method has been adopted in which processors are connected to each other using dedicated interconnected lines. In the case of a large-scale system with a large number of processors, the wiring becomes complicated, so it is common to not draw interrupt lines between arbitrary processors, but to use dedicated connections to satisfy specific functions. In addition, processing for determining the processor that activated the normal interrupt, the starting address of the interrupt task, and accepting the interrupt indicating that the interrupt has been accepted is performed by software. In addition, as in JP-A-60-95670, the attributes of the source processor and destination processor are indicated in one time division instead of using hardware interrupts as a method for dynamically transmitting instructions and data communication between processors. There is also a method in which a signal is sent out and each processor performs the necessary operations by monitoring the signal.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

知的処理(AI、知能処理)を実現する場合、センサ等
の情報処理や推論動作に伴う連鎖的なタスク起動を効率
良く実行するために高速なダイナミック・タスク・スイ
ッチ機構が必要となる。特にマルチ°プロセッサ・シス
テムにおいては、システムを構成する任意プロセッサ間
では任意時刻に任意タスクを高速に起動することができ
るリアルタイム性の高いダイナミックなプロセッサ間命
令伝達及びデータ通信機構を備える必要がある。
When realizing intelligent processing (AI, intelligent processing), a high-speed dynamic task switching mechanism is required in order to efficiently execute chained task activation associated with information processing and inference operations of sensors, etc. In particular, in a multi-processor system, it is necessary to provide a dynamic inter-processor instruction transmission and data communication mechanism with high real-time performance that can quickly start any task at any time between any processors making up the system.

従来のマルチ・プロセッサ・システムにおけるタスク起
動方式及びプロセッサ間通信方式は、時分割通信方式に
よったため、ダイナミック性やリアルタイム性が欠除し
ている古典的な割込方式を用いたため多大なタスク・ス
イッチ・オーバーヘッドを生じる任意プロセッサ間での
タスク起動を実現する場合にタスク起動元やタスク起動
元のプロセッサ及びタスク起動先頭番地の判断さらに割
込み受付処理等をソフトウェアで行い、そのため多大な
ソフトウェア・オーバーヘッドを生じる等の問題があり
、いずれの方式も高速性に欠けていた。
The task activation method and interprocessor communication method in conventional multiprocessor systems used a time-division communication method, and therefore used a classic interrupt method that lacked dynamicity and real-time performance, resulting in a large number of tasks. When starting a task between arbitrary processors that causes switching overhead, it is necessary to use software to determine the task starting source, the task starting processor, the task starting address, and interrupt reception processing, etc., which results in a large amount of software overhead. Both methods lacked high speed.

本発明の目的は、マルチ・プロセッサ・システムにおけ
る任意プロセッサ間でのダイナミック・タスク起動を高
速で実現できるタスク起動装置を提案することにある。
An object of the present invention is to propose a task activation device that can quickly implement dynamic task activation between arbitrary processors in a multiprocessor system.

〔問題点を解決するための手段〕[Means for solving problems]

上記目的は、マルチ・プロセッサ・システムにシステム
を構成する任意のプロセッサからアクセス可能な高速共
有メモリを設け、その共有メモリーヒにタスク起動元プ
ロセッサのプロセッサ番号とタスク起動元プロセッサの
プロセッサ番号とによるテーブル・アレイを配置し、そ
のテーブル・アレイの所望の番地へタスク起動元プロセ
ッサがタスク起動元プロセッサのタスク起動先頭番地に
関する情報を書き込み、その時のアクセス状況を共有メ
モリの内部バスをデコードするデコーダ回路を設けるこ
とにより解析して、タスク起動元プロセッサ番号とタス
ク起動元プロセッサ番号とに分離した信号情報をプロセ
ッサに放送し、各プロセッサの管理下にはプロセッサ台
数分の割込みを並列に処理できる。割込み発生回路と割
込み制御回路とを設け、自身がタスク起動元プロセッサ
である場合、割込み発生回路内のタスク起動元プロセッ
サに対応する割込み発生用フィリップ・フロップをアク
ティブ(割込み発生状態)にした割込み制御回路にアク
ティブな割込み信号を送出し1割込み制御回路では、複
数のアテクテイブな割込み信号の優先順位処理を行って
プロセッサに割込みを発生するとともに、選択した割込
みに対応する割込みベクトルをプロセッサに対して送出
し、タスク起動元プロセッサはその割込みベクトルの指
示する割込みベクトルテーブルを参照して割込みサービ
ス・タスクに処理を移し、そこで共有メモリ上のテーブ
ル・アレイに指示された対応するタスク起動先頭番地に
関する情報を受は取り、目的とするとタスクへ処理を移
すことにより達成される。〔作用〕 タスク起動元プロセッサは直接各プロセッサの割込ベク
トル・テーブルを読み書きできる様になるため1割込み
サービス・タスクを起動すべきタスクそのものに設定可
能となりプロセッサは、割込み応答サイクルの中で自動
的にタスク起動先頭番地を受は取って直接目的とするタ
スクに処理を移すことができる。この場合、ソフトウェ
アオーバーヘッドは、タスク起動元プロセッサが共有メ
モリ上のテーブル・アレイの適切な番地にタスク起動先
頭番地を書き込む処理だけであり、プロセッサの命令に
して1ないし2マシン命令程度である。また1割込み受
付処理を行い割込み信号をクリアする操作はタスク起動
元プロセッサが共有メモリ上テーブル・アレイをアクセ
スして、タスク起動先頭番地に関する情報を入手すると
きに割込み発生時と同様のシーケンスで生成される信号
により、割込み発生回路中のアクティブになっている対
応するフィリップ・フロップをクリアし、非アクティブ
に戻す様回路を構成すれば、ソフトウェア・オーバーヘ
ッド無しで行うことができる。
The above purpose is to provide a multi-processor system with a high-speed shared memory that can be accessed from any processor that makes up the system, and to create a table in the shared memory that contains the processor number of the task-initiating processor and the processor number of the task-initiating processor. A decoder circuit is provided for arranging an array, causing the task initiating processor to write information regarding the task initiating start address of the task initiating processor to a desired address in the table array, and decoding the access status at that time from the internal bus of the shared memory. By analyzing this, signal information separated into the task activation source processor number and the task activation source processor number is broadcast to the processors, and under the control of each processor, interrupts as many as the number of processors can be processed in parallel. An interrupt generation circuit and an interrupt control circuit are provided, and when the processor itself is the task activation source processor, interrupt control is performed by activating (interrupt generation state) the interrupt generation flip-flop corresponding to the task activation source processor in the interrupt generation circuit. Sends active interrupt signals to the circuit 1 The interrupt control circuit performs priority processing on multiple active interrupt signals, generates an interrupt to the processor, and sends the interrupt vector corresponding to the selected interrupt to the processor. Then, the task activation source processor refers to the interrupt vector table specified by the interrupt vector, transfers processing to the interrupt service task, and then transfers the information regarding the corresponding task activation start address specified to the table array on the shared memory. Receiving is achieved by taking and setting goals and moving processing to tasks. [Effect] Since the task activation source processor can directly read and write the interrupt vector table of each processor, one interrupt service task can be set as the task itself to be activated, and the processor automatically performs the interrupt service task in the interrupt response cycle. It is possible to take the starting task start address and move processing directly to the target task. In this case, the software overhead is only the process by which the task activation source processor writes the task activation start address to an appropriate address in the table array on the shared memory, which is about 1 to 2 machine instructions in terms of processor instructions. In addition, the operation to perform one interrupt acceptance process and clear the interrupt signal is generated in the same sequence as when an interrupt occurs when the task activation source processor accesses the table array in the shared memory and obtains information regarding the task activation start address. This can be done without any software overhead by configuring the circuit to clear the corresponding active flip-flop in the interrupt generation circuit and return it to inactive using the signal generated.

以上の方式により、割込みに関するほとんどの処理がハ
ードウェア化され、しかも任意の時刻に任意のプロセッ
サから任意のプロセッサへハードウェア割込みをかけタ
スクを起動することができるため、高速なダイナミック
・タスク起動を実現することができる。
With the above method, most of the processing related to interrupts is implemented in hardware, and tasks can be started by issuing hardware interrupts from any processor to any processor at any time, allowing for high-speed dynamic task activation. It can be realized.

〔実施例〕〔Example〕

以下、本発明の一実施例を第1図〜第4図により説明す
る。
An embodiment of the present invention will be described below with reference to FIGS. 1 to 4.

第1図は、本発明のタスク起動装置をマルチ・プロセッ
サ・システムにおいて実現した場合のシステム全体のブ
ロック図を示している。各プロセッサエレメント14o
〜1411が共有メモリ・システム1の接続される共通
バス10に接続されている。バッファ・スイッチ19が
、共通バス10ヘプロセツサエレメントL4o〜14゜
の内部バス21 (アドレスバス22.データバス23
.制御バス24)のいずれかを接続する役割を持ってい
る。一般にバッファ・スイッチ19は、バスへのアクセ
ス調停機構によって制御され、プロセッサエレメント1
4o〜14.はローカルメモリと同様に矛盾なく共有メ
モリシステム1ヘランダム・アクセスすることができる
。共有メモリ・システム1は、共有メモリ2と共有メモ
リ内部パス30及び共有メモリ内部バス30をデコード
し共有メモリ2へのアクセス情況を監視するデコーダ回
路4とから成る。このうちデコーダ回路4は、共通バス
10と共有メモリ内部パス30とが機能上同一の場合、
各プロセッサ・エレメント内に置いて共通バス10を監
視する様にしても良い、共有メモリ2には、プロセッサ
間のタスク起動を最もフレキシブルに実現するため、タ
スク起動元のプロセッサ番号に対応してSo”Sn、タ
スク起動元プロセッサ番号に対応してD o−D nの
2次元テーブル・アレイ3を設定している。例えば、プ
ロセッサ・エレメント141からプロセッサ・エレメン
ト14、ヘタスフ起動を指示する場合、タスク起動情報
(タスク起動先頭番地に関する情報)をストアする番地
として共有メモリ上のSs、クロスD1の位置が割り当
てられている。テーブル・アレイ3へのアクセス情況は
、デコーダ回路4が共有メモリ・アドレスバス5及び制
御バス7をデコードし、ソース・プロセッサ(タスク起
動元)を示すシグナルとして茗11をデスティネーショ
ン・プロセッサ(タスク起動元)を示すシグナルとして
石1τをアクティブにする。
FIG. 1 shows a block diagram of the entire system when the task activation device of the present invention is implemented in a multi-processor system. Each processor element 14o
1411 are connected to the common bus 10 to which the shared memory system 1 is connected. The buffer switch 19 connects the common bus 10 to the internal bus 21 (address bus 22, data bus 23) of the processor elements L4o to 14°.
.. It has the role of connecting one of the control buses 24). Generally, the buffer switch 19 is controlled by an access arbitration mechanism to the bus, and is controlled by a bus access arbitration mechanism.
4o~14. can randomly access the shared memory system 1 without any inconsistency in the same way as local memory. The shared memory system 1 includes a shared memory 2 and a decoder circuit 4 that decodes the shared memory internal path 30 and the shared memory internal bus 30 and monitors the access status to the shared memory 2. Of these, the decoder circuit 4 is configured such that when the common bus 10 and the shared memory internal path 30 are functionally the same,
The shared memory 2 may be placed in each processor element to monitor the common bus 10. In order to realize task activation between processors in the most flexible manner, a So "Sn, a two-dimensional table array 3 of D o-D n is set corresponding to the task activation source processor number. For example, when instructing the processor element 141 to start up the processor element 14, the task The position of Ss and cross D1 on the shared memory is assigned as an address for storing activation information (information regarding the starting address of a task).The access situation to the table array 3 is determined by the decoder circuit 4 using the shared memory address bus. 5 and control bus 7, and activates the stone 11 as a signal indicating the source processor (task activation source) and the stone 1τ as a signal indicating the destination processor (task activation source).

第2図は、デコーダ回路4まわりの信号入出力情況を示
している。デコーダ回路4では共有メモリ・データバス
6は監視しない、また、テーブル・アレイ3のアクセス
情況だけを監視しているため、実際にどのプロセッサが
アクセスしたかにはソース信号ライン8とデスティネー
ション信号うイン9は、各プロセッサエレメント14o
〜14゜の割込み発生回路15に取り込まれる。
FIG. 2 shows the signal input/output situation around the decoder circuit 4. Since the decoder circuit 4 does not monitor the shared memory data bus 6 and only monitors the access status of the table array 3, the source signal line 8 and destination signal are used to determine which processor actually accessed the table array 3. The input 9 is connected to each processor element 14o.
~14° is taken into the interrupt generation circuit 15.

第3図は1割込み発生回路15の詳細を示している。テ
ーブル・アレイ3のS、クロスD、がアクセスされた場
合、oQ−と茗11にアクティブ(1,oアクティブ)
パルスが発生する。これにより、ゲート28がアクティ
ブ(■、0アクテイブ)なパルス出力をフィリップ・フ
ロップ27のクロック入力に与えlNTm をアクティ
ブ(L oアクティブ)にする、なお、27に代表され
るフィリップ(フロップの通常の状態は、6垢π信号2
9(L oアクティブ)によって初期化された時の状態
、すなわちINTo〜INT、が非アクテイブ設定され
た状態である。インターラブド・ライン25は、複数の
割込み要求を横列に制御可能な割込み制御回路16に入
力される。
FIG. 3 shows details of the 1-interrupt generation circuit 15. When S, cross D, of table array 3 is accessed, oQ- and Mei 11 are active (1, o active)
A pulse is generated. As a result, the gate 28 gives an active (■, 0 active) pulse output to the clock input of the Philips flop 27, making lNTm active (Lo active). The state is 6 π signal 2
The state when initialized by 9 (Lo active), that is, INTo to INT, is the state set to be inactive. The interlaced line 25 is input to an interrupt control circuit 16 that can control a plurality of interrupt requests horizontally.

第4図は、割込み制御回路16の信号入出力情況を示し
ている。インターラブド・ライン25のI N To”
 I N ”I”nのうち1つ以−ヒがアクティブにな
ると、割込み制御回路16はCPUI 7に割込み20
をかけるとともに、INTo〜INTnのうちアクティ
ブなものからある優先順位に従って1つを選択し、それ
に対応する割込みベクトル26をCPUのローカル・デ
ータバス23にCPUの割込み応答サイクルに同期して
出力し、割込み応答サイクル中でCPUにフェッチさせ
る。なお、優先順位の低いものは後まわしにする。I 
N T tが選択された場合、それに対応する割込みベ
クトルによって指示された割込みベクトルテーブルは。
FIG. 4 shows the signal input/output situation of the interrupt control circuit 16. “I N To” by Interloved Lines 25
When one or more of the IN "I"n become active, the interrupt control circuit 16 sends an interrupt 20 to the CPUI 7.
At the same time, one of the active ones INTo to INTn is selected according to a certain priority, and the corresponding interrupt vector 26 is outputted to the CPU's local data bus 23 in synchronization with the CPU's interrupt response cycle. Force the CPU to fetch during the interrupt response cycle. Note that lower priority items will be postponed. I
If N T t is selected, the interrupt vector table pointed to by its corresponding interrupt vector is:

テーブル・アレイ3のSm クロスDllと一対一に対
応している。すなわち、プロセッサエレメント14、の
CPU17は、テーブル・アレイ3上のSs クロスD
1がアクセスされたことを知り、それに対応するサービ
ス・タスクの先頭を示している割込みベクトル・テーブ
ルの内容に従って処理をそのサービス・タスクに移す8
割込みサービス・タスクではプロセッサ・ニレメンl−
14,が目的とするタスクを起動するためテーブル・ア
レイ3上のStクロスD、の番地をアクセス(リード)
し、そこに書かれているタスク起動先頭番地に関する情
報を入手して、その情報に従い目的とするタスクに処理
を移す。このとき、再びSSmとDS、にアクティブパ
ルスが発生するため、それによってPE、の割込発生回
路15内の百1τに対応するフリップ・フロップ27の
割込み出力信号I N T 象 を非アクティブな状態
に戻す。この動作により割込みが受付けられ次の割込み
の受付けが可能なことを示す、したがって、インターラ
ブドライン25を割込み受付はステータスとしてCPU
が監視すれば、重複して割込みを発生する等のエラーを
防ぐことができる。
There is a one-to-one correspondence with Sm cross Dll of table array 3. That is, the CPU 17 of the processor element 14 executes the Ss cross D on the table array 3.
1 is accessed, and transfers processing to the corresponding service task according to the contents of the interrupt vector table indicating the beginning of the service task8.
For interrupt service tasks, the processor
14, accesses (reads) the address of St cross D on table array 3 to start the target task.
Then, it obtains the information about the start address of the task written there, and moves the processing to the target task according to that information. At this time, an active pulse is generated again in SSm and DS, so that the interrupt output signal INT of the flip-flop 27 corresponding to 101τ in the interrupt generation circuit 15 of PE becomes inactive. Return to This operation indicates that the interrupt has been accepted and that the next interrupt can be accepted.
If the system is monitored, errors such as duplicate interrupts can be prevented.

上記の動作シーケンスは、各プロセッサの割込みベクト
ルテーブルと、タスク起動用テーブルである共有メモリ
2上のテーブル・アレイ3とを分離して持ったごく一般
的な場合のものである。本発明では特に、各プロセッサ
の割込みベクトル・テーブルの一部又は全部をローカル
メモリ18上ではなく共有メモリ2のテーブルアレイ3
そのものに割り付ける方式を提案している。これによっ
て、タスク起動元プロセッサが直接タスク起動元プロセ
ッサの割込みベクトルテーブルにタスク起動先頭番地そ
のものを書き込みむことができる。
The above operation sequence is for a very general case where the interrupt vector table of each processor and the table array 3 on the shared memory 2, which is a task activation table, are separated. Particularly, in the present invention, a part or all of the interrupt vector table of each processor is stored in the table array 3 of the shared memory 2 instead of in the local memory 18.
We are proposing a method to assign it to that item. This allows the task activation source processor to directly write the task activation start address itself into the interrupt vector table of the task activation source processor.

したがって、タスク起動元プロセッサは、タスクの起動
が割込みによって指示されると、割込み応答サイクル中
でテーブル・アレイを参照し、目的とするタスクへ直接
処理を移すためソフトウェアオーバーヘッドが極小化さ
れる。すなわち、すべての動作シーケンスのうちタスク
起動元プロセッサがタスクの起動を指示する1ないし2
マシン命令程度がソフトウェアでサポートされ、他はす
べてハードウェアでサポートされる。
Therefore, when the task activation source processor is instructed to activate a task by an interrupt, it refers to the table array during the interrupt response cycle and directly transfers processing to the target task, thereby minimizing software overhead. That is, among all the operation sequences, 1 or 2 in which the task activation source processor instructs the task activation
Only machine instructions are supported by software; everything else is supported by hardware.

以上より、本発明の利点を列挙しておく。From the above, the advantages of the present invention will be enumerated.

1)大半のタスク起動シーケンスがハードウェア化され
、ソフトウェアオーバーヘッドがほとんど無いため最も
高速なタスク起動を実現できる。
1) Since most of the task activation sequences are implemented in hardware, and there is almost no software overhead, the fastest task activation can be achieved.

2)任意時刻に、任意のプロセッサから任意のプロセッ
サへのタスク起動が可能である。
2) A task can be activated from any processor to any processor at any time.

3)複数のプロセッサからタスク起動要求があっても同
時に受付は可能である。
3) It is possible to accept task activation requests from multiple processors at the same time.

4)割込み受付は処理を自動的に行うことができる。4) Interrupt acceptance can be processed automatically.

5)タスク起動指示が、テーブル・アレイの所望の番地
に目的とするタスクの起動先頭番地を書き込むだけの操
作で行える。
5) A task activation instruction can be issued by simply writing the start address of the target task to a desired address in the table array.

6)共通バスを使えるため、機能に比して配線が簡略化
できる。
6) Since a common bus can be used, wiring can be simplified compared to the functionality.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、任意プロセッサ間で目的とするタスク
を起動するまでのシーケンスを、タスク起動元プロセッ
サがタスク起動元プロセッサにタスク起動を指示するの
に必要な1ないし2マシン命令を除いて、すべてハード
ウェア化することにより、ソフトウェアオーバーヘッド
を極小化できる。これにより、最も高速なタスク起動を
サポートすることができる。
According to the present invention, the sequence up to the activation of a target task between arbitrary processors is performed by excluding one or two machine instructions necessary for the task activation source processor to instruct the task activation source processor to activate the task. By converting everything to hardware, software overhead can be minimized. This allows the fastest task startup to be supported.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明の装置の一実施例を備えたマルチ・プ
ロセッサ・システム構成図、第2図は本発明を構成する
デコーダ回路の信号入出力状態を示す図、第3図は本発
明を構成する割込み発生回路のブロック図、第4図は本
発明を構成する割込み制御回路の信号入出力状態を示す
図である。
FIG. 1 is a configuration diagram of a multi-processor system equipped with an embodiment of the device of the present invention, FIG. 2 is a diagram showing the signal input/output state of a decoder circuit constituting the present invention, and FIG. FIG. 4 is a block diagram of the interrupt generation circuit that constitutes the present invention. FIG. 4 is a diagram showing the signal input/output state of the interrupt control circuit that constitutes the present invention.

Claims (1)

【特許請求の範囲】 1、マルチ・プロセッサ・システムにおいて、システム
を構成するすべてのプロセッサから自由にアクセスでき
る共有メモリと、共有メモリの内部アドレス・バス及び
コントロールバスをデコードし、共有メモリのどの番地
がアクセスされたかを解析してプロセッサのその情報を
放送するデコーダ回路と、各プロセッサ単位で、放送さ
れた情報から自身に関係する情報を抽出し、割込み信号
を生成する割込み発生回路と、割込み生成回路で生成さ
れた割込み情報のうち1つを選択し、プロセッサに対し
て割込みを発生するとともに、選択された割込みに対応
する割込みベクトルをプロセッサに送出する割込み制御
機構とを備え、任意のプロセッサが共有メモリの適切な
番地にタスク起動情報を書き込む操作で任意のプロセッ
サに対して自動的に割込みを生成し共有メモリ上のタス
ク起動情報をフェッチさせ必要なタスク処理を起動する
ことを特徴とするタスク起動装置。 2、特許請求の範囲第1項記載のタスク起動装置におい
て、タスク起動先のプロセッサが共有メモリ上のタスク
起動情報をフェッチするときの信号をタスク処理の受付
け情報として利用することを特徴とするタスク起動装置
。 3、特許請求の範囲第1項記載のタスク起動装置におい
て、各プロセッサが持つている割込みベクトルテーブル
の一部あるいは全部を共有メモリ上に直接配置し、任意
プロセッサが直接的に起動先プロセッサの割込みベクト
ルテーブルにタスク起動先頭番地を書き込むことによつ
て、起動先プロセッサが、割込み応答処理の中で割込み
ベクトルテーブルを参照する際に、直接対応するタスク
起動先頭番地をフェッチすることを特徴とするタスク起
動装置。
[Claims] 1. In a multi-processor system, a shared memory that can be freely accessed by all the processors that make up the system, and an internal address bus and control bus of the shared memory are decoded to determine which address in the shared memory. a decoder circuit that analyzes whether the processor has been accessed and broadcasts that information; an interrupt generation circuit that extracts information related to itself from the broadcast information for each processor and generates an interrupt signal; An interrupt control mechanism that selects one of the interrupt information generated by the circuit, generates an interrupt to the processor, and sends an interrupt vector corresponding to the selected interrupt to the processor, A task characterized by automatically generating an interrupt to any processor by writing task activation information to an appropriate address in the shared memory, fetching the task activation information on the shared memory, and starting necessary task processing. Starting device. 2. In the task activation device according to claim 1, the task is characterized in that a signal used when the task activation destination processor fetches task activation information on a shared memory is used as task processing acceptance information. Starting device. 3. In the task activation device according to claim 1, a part or all of the interrupt vector table possessed by each processor is directly allocated on the shared memory, and any processor can directly execute the interrupt of the activated processor. A task characterized in that by writing a task starting address in a vector table, the starting processor directly fetches the corresponding task starting address when referring to the interrupt vector table in interrupt response processing. Starting device.
JP18846486A 1986-08-13 1986-08-13 Task starting device Pending JPS6345668A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18846486A JPS6345668A (en) 1986-08-13 1986-08-13 Task starting device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18846486A JPS6345668A (en) 1986-08-13 1986-08-13 Task starting device

Publications (1)

Publication Number Publication Date
JPS6345668A true JPS6345668A (en) 1988-02-26

Family

ID=16224170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18846486A Pending JPS6345668A (en) 1986-08-13 1986-08-13 Task starting device

Country Status (1)

Country Link
JP (1) JPS6345668A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61136157A (en) * 1984-12-07 1986-06-24 Hitachi Ltd Multi-microprocessor module

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61136157A (en) * 1984-12-07 1986-06-24 Hitachi Ltd Multi-microprocessor module

Similar Documents

Publication Publication Date Title
US6411984B1 (en) Processor integrated circuit
US5568617A (en) Processor element having a plurality of processors which communicate with each other and selectively use a common bus
JP2564805B2 (en) Information processing device
JP3776449B2 (en) Multitasking low power controller
EP1840742A2 (en) Method and apparatus for operating a computer processor array
JPH06139189A (en) Common bus arbitrating mechanism
JPH0235559A (en) Double buffering subsystem
JPH07104842B2 (en) External storage interrupt control method
JPH0689269A (en) Processor control device, processor pausing device and method thereof
JPH0640314B2 (en) Multi-channel shared resource processor
JP2618223B2 (en) Single chip microcomputer
JPS6345668A (en) Task starting device
EP0562022A4 (en) Method and apparatus for multiprocessor digital communication
JPS6315628B2 (en)
JPH1097465A (en) Multiprocessor system
JP2705955B2 (en) Parallel information processing device
JPS58114250A (en) Common microprocessor
JPH0340169A (en) Multiple processor system and method of controlling plurality of processor
JPH01243123A (en) Information processing unit
JPH02252044A (en) Coprocessor and data transfer control system
JPH056333A (en) Multi-processor system
JPS6217777B2 (en)
JPH0535507A (en) Central processing unit
JPS63307529A (en) Inter-arithmetic processing unit communication control system
JPH0612313A (en) Memory device