JP3187117B2 - One-chip microcomputer with built-in multiprocessor - Google Patents

One-chip microcomputer with built-in multiprocessor

Info

Publication number
JP3187117B2
JP3187117B2 JP05472392A JP5472392A JP3187117B2 JP 3187117 B2 JP3187117 B2 JP 3187117B2 JP 05472392 A JP05472392 A JP 05472392A JP 5472392 A JP5472392 A JP 5472392A JP 3187117 B2 JP3187117 B2 JP 3187117B2
Authority
JP
Japan
Prior art keywords
processor
program
built
main memory
execution
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
JP05472392A
Other languages
Japanese (ja)
Other versions
JPH05257909A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP05472392A priority Critical patent/JP3187117B2/en
Publication of JPH05257909A publication Critical patent/JPH05257909A/en
Application granted granted Critical
Publication of JP3187117B2 publication Critical patent/JP3187117B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、各種のプログラムの実
行処理に利用される1チップマイクロコンピュータに係
り、特に、1チップで複数のプログラムを並列実行処理
する技術を設けたマルチプロセッサ内蔵1チップマイク
ロコンピュータに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a one-chip microcomputer used for executing various programs, and more particularly, to a multi-processor built-in one-chip having a technology for executing a plurality of programs in parallel on one chip. Related to microcomputers.

【0002】[0002]

【従来の技術】従来、製造、測定および検査等の各種制
御分野で使われるプログラムによる実行処理には、1チ
ップマイクロコンピュータが広く用いられている。
2. Description of the Related Art Conventionally, one-chip microcomputers have been widely used for execution processing by programs used in various control fields such as manufacturing, measurement and inspection.

【0003】図2は、この1チップマイクロコンピュー
タを用いた制御システムの構成を示す図である。図示す
るように、メインメモリ1は、複数のプログラム1a
と、諸情報などのデータ1bと、各プログラムの実行優
先度順に開始アドレスおよびレジスタ類の初期値等のプ
ログラム実行情報を有する実行スレッド1cとを備え、
メモリバス2を介して1チップマイクロコンピュータ3
に接続されている。
FIG. 2 is a diagram showing a configuration of a control system using the one-chip microcomputer. As shown, the main memory 1 stores a plurality of programs 1a.
And an execution thread 1c having program execution information such as a start address and initial values of registers and the like in order of execution priority of each program,
One-chip microcomputer 3 via memory bus 2
It is connected to the.

【0004】この1チップマイクロコンピュータ3は、
メインメモリ1と1チップマイクロコンピュータ3本体
間でのアクセスを制御するメモリ制御部4と、メインメ
モリ1を参照してプログラムを処理するプロセッサ5
と、このプロセッサ5と1チップマイクロコンピュータ
3本体の外部にある入出力装置系との入出力を制御する
入出力制御部6とを備えている。
The one-chip microcomputer 3 has
A memory controller 4 for controlling access between the main memory 1 and the main body of the one-chip microcomputer 3, and a processor 5 for processing a program by referring to the main memory 1
And an input / output control unit 6 for controlling input / output between the processor 5 and an input / output device system outside the one-chip microcomputer 3.

【0005】この外部入出力装置系は、入出力制御部6
に接続された入出力バス7と、この入出力バスから複
数のインタフェイスをそれぞれ介して接続された複数
の入出力装置とで構成されている。
The external input / output device system includes an input / output control unit 6
And a plurality of input / output devices 9 connected to the input / output bus 7 via a plurality of interfaces 8 , respectively.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、以上の
ような1チップマイクロコンピュータ3は、プログラム
を処理するプロセッサ5が1つなので、複数のプログラ
ム1aを実行する場合には個々のプログラムが並列実行
可能か否かによらず、並列実行処理ができない問題があ
る。
However, in the one-chip microcomputer 3 as described above, since there is only one processor 5 for processing a program, when executing a plurality of programs 1a, each program can be executed in parallel. There is a problem that parallel execution processing cannot be performed regardless of whether or not the processing is performed.

【0007】また、個々の1チップマイクロコンピュー
タ3をそれぞれ並列実装することにより複数のプログラ
ム1aを並列実行処理することもできるが、この場合は
複数のマイクロコンピュータを制御する特別の制御回路
およびソフトウェアを必要とする問題がある。
A plurality of programs 1a can be executed in parallel by mounting the individual one-chip microcomputers 3 in parallel. In this case, a special control circuit and software for controlling the plurality of microcomputers are required. There is a problem you need.

【0008】これら制御回路とソフトウェアは、あるマ
イクロコンピュータがプログラムを処理するときに他の
マイクロコンピュータの処理を意識した、例えば並列実
行処理における割込み制御などの複雑な制御も行うの
で、作成に極めて高度な技術を要する。
Since these control circuits and software perform complicated control such as interrupt control in parallel execution processing, for example, when one microcomputer processes a program, it is conscious of the processing of another microcomputer. It requires skill.

【0009】さらに、制御系の作成時には、複数のマイ
クロコンピュータやその制御回路等を付加するので、実
装部品点数が増えて制御システムの信頼性を低下させる
問題がある。
Further, when a control system is created, a plurality of microcomputers and their control circuits are added, so that there is a problem that the number of mounted components is increased and the reliability of the control system is reduced.

【0010】また、これらの問題を解決する技術として
1チップ上に各種制御回路等を設けることも考えられる
が、このような複雑な集積回路は作成自体が困難である
一方、簡易な構成で並列実行処理ができる1チップマイ
クロコンピュータは未だ提案されていない。
As a technique for solving these problems, it is conceivable to provide various control circuits and the like on one chip. However, while it is difficult to create such a complicated integrated circuit, it is difficult to form a parallel circuit with a simple configuration. A one-chip microcomputer capable of executing processing has not yet been proposed.

【0011】本発明は上記実情を考慮してなされたもの
で、外部に特別な制御回路を設けることなく、簡易な構
成で複数のプログラムを完全に並列実行処理できるマル
チプロセッサ内蔵1チップマイクロコンピュータを提供
することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and has a multi-processor built-in one-chip microcomputer capable of completely executing a plurality of programs in parallel with a simple configuration without providing an external special control circuit. The purpose is to provide.

【0012】また、本発明の他の目的は、複数のプログ
ラムを並列実行処理するときに、任意のプログラムを割
込み処理できるマルチプロセッサ内蔵1チップマイクロ
コンピュータを提供することにある。
Another object of the present invention is to provide a one-chip microcomputer with a built-in multiprocessor that can execute an arbitrary program interrupt processing when a plurality of programs are processed in parallel.

【0013】[0013]

【課題を解決するための手段】請求項1に対応する発明
は、メインメモリ内に格納され1チップ内のいずれの内
蔵プロセッサでも処理可能な複数のプログラムを優先度
順に読み出してそれぞれ並列実行処理し、かつ、前記プ
ログラムが新たなプログラムの実行情報を登録する場合
には他の任意の内蔵プロセッサに中断命令を送出し、か
つ他の内蔵プロセッサから中断命令を受けた場合には
在実行中のプログラムに係る実行情報をメインメモリに
戻した後にメインメモリ内のプログラムで他の内蔵プロ
セッサに割り当てられていず最も優先度の高いプログラ
ムを処理すると共に中断命令を既に送出又は受信してい
ない他の内蔵プロセッサがある場合にはそれら他の内蔵
プロセッサのうちの任意の内蔵プロセッサに中断命令を
送出する複数の内蔵プロセッサと、これら複数の内蔵プ
ロセッサのうち、ある内蔵プロセッサがメインメモリに
アクセスしているときには、他の内蔵プロセッサをメイ
ンメモリに対してアクセスさせず、前記ある内蔵プロセ
ッサのメインメモリに対するアクセスが終了したときに
は、前記他の内蔵プロセッサをメインメモリに対してア
クセスさせるメモリアクセス制御手段と、前記複数の内
蔵プロセッサのうち、任意の内蔵プロセッサから送出さ
れてくる前記実行および中断命令を他の内蔵プロセッサ
に通知する同期バスと、各内蔵プロセッサの処理結果を
外部に送出するとき、各内蔵プロセッサを入出力装置に
対してアクセスさせる入出力制御手段とを備え、各内蔵
プロセッサがそれぞれメインメモリにアクセスし、か
つ、複数のプログラムを並列実行処理するマルチプロセ
ッサ内蔵1チップマイクロコンピュータである。
According to a first aspect of the present invention, a plurality of programs stored in a main memory and processable by any built-in processor in a single chip are read out in order of priority and are respectively processed in parallel. And, when the program registers execution information of a new program, a suspend instruction is sent to any other internal processor, and when an interrupt instruction is received from another internal processor, the current instruction is sent.
Execution information related to the currently executing program is stored in the main memory.
After returning , the program in the main memory is not allocated to another internal processor, processes the highest priority program, and has already sent or received the suspend instruction.
If there are no other built-in processors those other built-in
Interrupt instruction to any of the built-in processors
A plurality of built-in processors to be transmitted, and when one built-in processor of the plurality of built-in processors accesses the main memory, the other built-in processor does not access the main memory; A memory access control means for causing the other internal processor to access the main memory when the access to the internal processor has been completed, and the execution and interruption instructions sent from any of the plurality of internal processors to the other. a synchronous bus to notify the embedded processor, when sending the processing results of each internal processor to the outside, each embedded processor with respect to input and output devices and a output control means for access, the embedded processor it Re accesses the main memory, and a plurality of programs Which is a multi-processor-containing 1-chip microcomputer in parallel execution.

【0014】なお、前記入出力制御手段としては、各内
蔵プロセッサによるプログラムの並列実行処理中に外部
から他の処理プログラムを割り込ませるために、ある入
出力装置から割込み要求を受けたときには当該割込み処
理プログラムの優先度を含む実行情報をメインメモリに
登録し、かつ、前記同期バスを介して各内蔵プロセッサ
にプログラムの並列実行処理を中断させ、再度優先度順
にプログラムを並列実行処理させる割込み制御手段を備
えた構成となっている。
The input / output control means includes: when an interrupt request is received from a certain input / output device in order to interrupt another processing program from outside during parallel execution of a program by each built-in processor, Interrupt control means for registering execution information including the priority of the program in the main memory, and interrupting the parallel execution of the program by each built-in processor via the synchronous bus, and again executing the parallel execution of the program in priority order; It is provided with a configuration.

【0015】[0015]

【作用】従って、請求項1に対応する発明は以上のよう
な手段を講じたことにより、複数の内蔵プロセッサが各
プログラムを並列実行処理するときに、ある内蔵プロセ
ッサでは、プログラムが新たなプログラムの実行情報
登録する場合には他の任意の内蔵プロセッサに中断命令
を送出し、この任意の内蔵プロセッサでは、当該ある内
蔵プロセッサから中断命令を受けると、現在実行中のプ
ログラムに係る実行情報をメインメモリに戻した後に、
メインメモリ内のプログラムで他の内蔵プロセッサに割
り当てられていず最も優先度の高いプログラムを処理
ると共に中断命令を既に送出又は受信していない他の内
蔵プロセッサがある場合にはそれら他の内蔵プロセッサ
のうちの任意の内蔵プロセッサに中断命令を送出し、メ
モリアクセス制御手段が各内蔵プロセッサをメインメモ
リに対してアクセスさせるとともに、入出力制御手段が
各内蔵プロセッサを外部の入出力装置に対してアクセス
させ、かつ、同期バスが各内蔵プロセッサ間での実行お
よび中断命令を伝送することにより、完全に1チップ内
で複数のプログラムを並列実行処理することができる。
Therefore, the invention corresponding to claim 1 takes the above-described means, and when a plurality of built-in processors execute parallel execution processing of each program, a certain built-in processor executes a program of a new program . when registering the execution information is sent an interrupt instruction to any other internal processor, in this optional embedded processor, receives an interrupt instruction from the certain internal processor, up currently running
After returning the execution information related to the program to the main memory,
Processes the highest priority program in main memory that is not assigned to another internal processor .
Other than those that have not sent or received the suspend command
Other internal processors, if any
Any interruption instruction to the internal processor sends out the, with is accessed by the memory access control means to the main memory of each embedded processor, input and output control means to the external input and output device each embedded processor it is accessed, and the synchronization bus by transmitting the execution and interruption instruction between the respective embedded processor, can be completely parallel execution of multiple programs in one-chip.

【0016】また、外部からの割込み制御を行うときに
は、割込み制御手段が、ある入出力装置から割込み要求
を受けたときに当該割込み処理プログラムの実行情報を
メインメモリに登録し、かつ、同期バスを介して各プロ
セッサの並列実行処理を中断させる一方、処理を中断し
た各プロセッサが、メインメモリの参照により割込み処
理プログラムを含めて再度優先度順にプログラムを並列
実行処理するので、複数のプログラムの並列実行処理中
に任意のプログラムを割込み処理することができる。
When an external interrupt control is performed, the interrupt control means registers the execution information of the interrupt processing program in the main memory when an interrupt request is received from a certain input / output device, and sets up the synchronous bus. While the parallel execution processing of each processor is interrupted through the respective processors, the interrupted processors execute the parallel execution processing of the programs again in priority order including the interrupt processing program by referring to the main memory. Any program can be interrupted during processing.

【0017】[0017]

【実施例】以下、本発明の実施例について図面を参照し
て説明する。図1は、本発明に係るマルチプロセッサ内
蔵1チップマイクロコンピュータを用いた制御システム
の構成を示す図であり、図2と同一部分には同一符号を
付してその詳しい説明は省略し、ここでは異なる部分に
ついてのみ述べる。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a configuration of a control system using a one-chip microcomputer with a built-in multiprocessor according to the present invention. The same parts as those in FIG. 2 are denoted by the same reference numerals, and a detailed description thereof will be omitted. Only the different parts will be described.

【0018】すなわち、本発明装置は、1チップマイク
ロコンピュータ3に代えて、複数の内蔵プロセッサ1
1,メモリアクセス制御手段12,同期バス13,入出
力制御手段14および割込み制御手段14aを備えた1
チップマイクロコンピュータ15を設け、メインメモリ
1の複数のプログラムを1チップ内で完全に並列実行処
理する構成をもつ。
That is, the device of the present invention comprises a plurality of built-in processors 1 instead of the one-chip microcomputer 3.
1, comprising a memory access control means 12, a synchronous bus 13, an input / output control means 14, and an interrupt control means 14a.
A chip microcomputer 15 is provided to execute a plurality of programs in the main memory 1 completely in parallel in one chip.

【0019】前記複数の内蔵プロセッサ11は、複数の
プログラム1aを優先度順に読み出して開始アドレスか
ら並列実行処理するプロセッサ部11aと、前記プログ
ラムに基づいて、互いに実行および中断命令を送出する
一方、前記開始アドレスを指定できる実行制御部11b
とを備えている。
The plurality of built-in processors 11 read out the plurality of programs 1a in order of priority and perform parallel execution processing from a start address. The processor 11a sends execution and interruption instructions to each other based on the programs. Execution control unit 11b capable of specifying a start address
And

【0020】前記メモリアクセス制御手段12は、外部
のメモリバス2,内蔵プロセッサ11の各プロセッサ部
11aおよび入出力制御手段14に接続され、各プロセ
ッサ11をメインメモリ1に対してアクセスさせる一
方、入出力制御手段14のメインメモリに対するアクセ
スを制御している。
[0020] The memory access control means 12, an external memory bus 2, is connected to each processor unit 11a and the output control unit 14 of the embedded processor 11, while for access by each processor 11 to the main memory 1, It controls access of the input / output control means 14 to the main memory.

【0021】すなわち、前記複数の内蔵プロセッサ11
のうち、ある内蔵プロセッサ11iがメインメモリにア
クセスしているときには、他の内蔵プロセッサ11をメ
インメモリ1に対してアクセスさせず、前記ある内蔵プ
ロセッサ11iのメインメモリ1に対するアクセスが終
了したときには、前記他の内蔵プロセッサ11をメイン
メモリ1に対してアクセスさせる。また、後述する入出
力制御手段14による割り込み処理のときには、入出力
制御手段14のアクセスを他の内蔵プロセッサ11のア
クセスより優先させる。
That is, the plurality of built-in processors 11
When the internal processor 11 i is accessing the main memory, the other internal processor 11 is not allowed to access the main memory 1, and when the internal processor 11 i has finished accessing the main memory 1, , And causes the other built-in processor 11 to access the main memory 1. In the case of interrupt processing by the input / output control unit 14 described later, the access of the input / output control unit 14 is prioritized over the access of the other internal processors 11.

【0022】前記同期バス13は、これら複数の内蔵プ
ロセッサ11における実行制御部11bおよび入出力制
御手段14を互いに並列に接続して、各内蔵プロセッサ
に対する前記実行および中断命令を伝送するバスであ
る。
The synchronous bus 13 is a bus for connecting the execution control section 11b and the input / output control means 14 of the plurality of built-in processors 11 in parallel with each other to transmit the execution and interruption instructions to each built-in processor.

【0023】ここで、入出力制御手段14は、外部の入
出力バス7,内蔵プロセッサ11における各プロセッサ
部11aおよび同期バス13に接続され、各内蔵プロセ
ッサ11が処理結果を外部に送出するときに各内蔵プロ
セッサ11を入出力装置9に対してアクセスさせる機能
をもち、さらに、割込み処理用として割込み制御手段1
4aを備えている。
Here, the input / output control means 14 is connected to the external input / output bus 7, each processor section 11a of the built-in processor 11, and the synchronous bus 13, and when each built-in processor 11 sends out a processing result to the outside. each embedded processor 11 to output device 9 has the function to access further interrupt control unit 1 for the interrupt processing
4a.

【0024】この割込み制御手段14aは、ある入出力
装置9iから割込み要求を受けたときには当該割込み処
理プログラムの実行情報をメインメモリ1内の実行スレ
ッド1cにに登録し、かつ、前記同期バス13を介して
各内蔵プロセッサ11の並列実行処理を中断させる機能
をもっている。
[0024] The interrupt control unit 14a is, from a certain output device 9 i when receiving an interrupt request register interest information of the interrupt processing program in the execution thread 1c of the main memory 1, and the synchronization bus 13 Has the function of interrupting the parallel execution processing of each built-in processor 11 via the.

【0025】次に、このようなマルチプロセッサ内蔵1
チップマイクロコンピュータの動作について説明する。
まず、メインメモリ1内の実行スレッド1cに内蔵プロ
セッサ11が実行すべきプログラムの実行情報を優先度
順に登録する。ここで、プログラム実行情報は、各プロ
グラムの実行優先度,開始アドレスおよびレジスタ類の
初期値等の情報を意味し、前記登録は、プログラムから
の命令により,または外部の入出力装置9iから入出力
制御手段14およびメモリアクセス制御手段12を介し
て行う。
Next, such a multiprocessor built-in 1
The operation of the chip microcomputer will be described.
First, execution information of a program to be executed by the built-in processor 11 is registered in the execution thread 1c in the main memory 1 in order of priority. Here, the program execution information, execution priority of each program, and means information of an initial value such as the start address and register such, the registration, by a command from the program or the external input-output device input from 9 i, This is performed via the output control means 14 and the memory access control means 12.

【0026】この登録がプログラム実行前に行なわれた
場合には、各プロセッサ部11aは、メモリアクセス制
御手段12を介してメインメモリ1にアクセスし、実行
スレッド1cに登録された優先度順にそれぞれ開始アド
レスからプログラムの並列実行処理を行い、結果を入出
力制御手段14を介して外部の入出力装置9に送出す
る。
[0026] If the registration is performed before executing the program, each processor unit 11a, respectively to the main memory 1 through the memory access control unit 12 accesses, in order of priority that is registered in the execution thread 1c perform parallel execution processing program from the start address, and sends to the output device 9 of the outer portion through the output control means 14 results.

【0027】次に、登録がプログラム実行中に行われた
場合について述べる。第1に、あるプログラムからの命
令により別のプログラムを登録する場合には、該内蔵プ
ロセッサ11iが、メモリアクセス制御手段12を介し
て当該別プログラムの優先度を含む実行情報をメインメ
モリ1内の実行スレッド1cに登録するとともに実行制
御部11bおよび同期バス13を介して他の各内蔵プロ
セッサ11のうち、任意の1つ、例えば、内蔵プロセッ
サ11i+1の並列実行処理を中断させる。
Next, a case where registration is performed during execution of a program will be described. First, when another program is registered according to an instruction from a certain program, the built-in processor 11 i stores execution information including the priority of the another program in the main memory 1 via the memory access control means 12. And interrupts the parallel execution processing of an arbitrary one of the other internal processors 11, for example, the internal processor 11 i + 1 via the execution control unit 11b and the synchronous bus 13.

【0028】処理を中断した内蔵プロセッサ11
i+1は、現在実行中のプログラムに係る実行情報を実行
スレッド1cに戻すとともに現在実行中のプログラムを
再度実行するときの開始アドレスを実行スレッド1cに
指定し、しかる後、メインメモリ1を参照することによ
り当該別プログラムの優先度と現在実行中のプログラム
の優先度とを比較して、より優先度順の高いプログラム
を選択して並列実行処理するとともに、他の各内蔵プロ
セッサ11のうち、内蔵プロセッサ11i以外の任意の
1つ、例えば、内蔵プロセッサ11i+2の並列実行処理
を中断させる。
Built-in processor 11 whose processing has been interrupted
i + 1 returns the execution information relating to the currently executing program to the execution thread 1c, and designates the start address for re-executing the currently executing program to the execution thread 1c, and thereafter refers to the main memory 1. By doing so, the priority of the different program is compared with the priority of the currently executing program, a program with a higher priority order is selected and executed in parallel, and among the other built-in processors 11, The parallel execution process of any one other than the built-in processor 11 i , for example, the built-in processor 11 i + 2 is interrupted.

【0029】以下、同様に各内蔵プロセッサ11が順次
1つずつ、現在実行中のプログラムの優先度と、当該別
プログラムの優先度を含めた実行スレッド1c内のプロ
グラム優先度を比較して、より優先度の高いプログラム
を並列実行処理するので、プログラムの並列実行処理中
に、1チップマイクロコンピュータ15全体の並列実行
処理を中断することなく前記別プログラムを割り込ませ
ることができる。
Similarly, each of the built-in processors 11 sequentially compares the priorities of the currently executing program and the program priorities in the execution thread 1c including the priorities of the other programs. Since the high-priority program is processed in parallel, the separate program can be interrupted without interrupting the parallel execution of the entire one-chip microcomputer 15 during the parallel execution of the program.

【0030】第2に、ある入出力装置9iから割込みプ
ログラムを登録する場合について第1の場合と同様に説
明する。まず、割込み制御手段14aが、ある入出力装
置9iからインタフェイス8および入出力バス7を介し
て割込み要求を受けたときには、メモリアクセス制御手
段12を介して当該割込み処理プログラムの実行情報を
メインメモリ1内の実行スレッド1cに登録し、かつ、
同期バス13および各実行制御部11bを介して他の各
内蔵プロセッサ11のうち、任意の1つ、例えば、内蔵
プロセッサ11i+1の並列実行処理を中断させる。
Second, a case where an interrupt program is registered from a certain input / output device 9 i will be described in the same manner as in the first case. First, when the interrupt control means 14 a receives an interrupt request from a certain input / output device 9 i via the interface 8 and the input / output bus 7, execution information of the interrupt processing program is main- tained via the memory access control means 12. Register with the execution thread 1c in the memory 1, and
The parallel execution process of any one of the other built-in processors 11, for example, the built-in processor 11 i + 1 is interrupted via the synchronous bus 13 and each execution control unit 11b.

【0031】処理を中断した内蔵プロセッサ11
i+1は、現在実行中のプログラムに係る実行情報を実行
スレッド1cに戻すとともに現在実行中のプログラムを
再度実行するときの開始アドレスを実行スレッド1cに
指定し、しかる後、メインメモリ1を参照することによ
り当該割込み処理プログラムの優先度と現在実行中のプ
ログラムの優先度とを比較して、より優先度順の高いプ
ログラムを選択して並列実行処理するとともに、他の各
内蔵プロセッサ11のうち、内蔵プロセッサ11i以外
の任意の1つ、例えば、内蔵プロセッサ11i+2の並列
実行処理を中断させる。
Built-in processor 11 whose processing has been interrupted
i + 1 returns the execution information relating to the currently executing program to the execution thread 1c, and designates the start address for re-executing the currently executing program to the execution thread 1c, and thereafter refers to the main memory 1. By doing so, the priority of the interrupt processing program is compared with the priority of the program currently being executed, and a program with a higher priority order is selected for parallel execution processing. The parallel execution process of any one other than the built-in processor 11 i , for example, the built-in processor 11 i + 2 is interrupted.

【0032】以下、同様に各内蔵プロセッサ11が順次
1つずつ、現在実行中のプログラムの優先度と、当該割
込み処理プログラムの優先度を含めた実行スレッド1c
内のプログラム優先度を比較して、より優先度の高いプ
ログラムを並列実行処理するので、プログラムの並列実
行処理中に、1チップマイクロコンピュータ15全体の
並列実行処理を中断することなく前記割込み処理プログ
ラムを割り込ませることができる。
Similarly, each of the built-in processors 11 sequentially executes one execution thread 1c including the priority of the program currently being executed and the priority of the interrupt processing program.
, And the higher priority programs are executed in parallel, so that the interrupt processing program can be executed without interrupting the parallel execution of the entire one-chip microcomputer 15 during the parallel execution of the programs. Can be interrupted.

【0033】上述したように、本実施例によれば、複数
の内蔵プロセッサ11が各プログラムを並列実行処理す
るときに、メモリアクセス制御手段12が各内蔵プロセ
ッサをメインメモリ1に対してアクセスさせるととも
に、入出力制御手段14が各内蔵プロセッサ11を外部
の入出力装置9に対してアクセスさせ、かつ、同期バス
13が各プロセッサ間での実行および中断命令を伝送す
ることにより、完全に1チップ内で複数のプログラムを
並列実行処理することができる。
[0033] As described above, according to this embodiment, when a plurality of embedded processor 11 is executed in parallel processing of each program, is accessed by the memory access control means 12 to the main memory 1 to the embedded processor with input and output control unit 14 is each embedded processor 11 to the external input-output device 9 is accessed, and, by synchronization bus 13 transmits the execution and interruption instruction between the respective processors, one complete A plurality of programs can be processed in parallel in a chip.

【0034】また、プログラムからの命令により、別の
プログラムを割込み処理する場合には、該内蔵プロセッ
サ11iが当該別プログラムの実行情報をメインメモリ
1に登録し、かつ、同期バス13を介して順次各内蔵プ
ロセッサ11の並列実行処理を中断させ、処理を中断し
た各内蔵プロセッサ11が順次メインメモリ1を参照し
て当該別プログラムを含めた優先度順にプログラムを並
列実行処理するので、1チップマイクロコンピュータ1
5全体の並列実行処理を中断することなく任意のプログ
ラムを割込み処理することができる。
When another program is to be interrupted by an instruction from the program, the built-in processor 11 i registers the execution information of the other program in the main memory 1, and The parallel execution processes of the internal processors 11 are sequentially interrupted, and the interrupted internal processors 11 sequentially refer to the main memory 1 and execute the programs in parallel in the priority order including the other programs. Computer 1
5, any program can be interrupted without interrupting the parallel execution of the entire program.

【0035】同様に、入出力制御手段14が割込み制御
を行う場合には、割込み制御手段14aがある入出力装
置9iから割込み要求を受けたときに当該割込み処理プ
ログラムの実行情報をメインメモリ1に登録し、かつ、
同期バス13を介して順次各内蔵プロセッサ11の並列
実行処理を中断させ、処理を中断した各内蔵プロセッサ
11が順次メインメモリ1を参照して割込み処理プログ
ラムを含めた優先度順にプログラムを並列実行処理する
ので、1チップマイクロコンピュータ15全体の並列実
行処理を中断することなく任意のプログラムを割込み処
理することができる。
[0035] Similarly, when the output control unit 14 performs interrupt control, the interrupt processing main memory 1 execution information of the program when receiving an interrupt request from the output device 9 i which there is an interrupt control unit 14a Register with and
The parallel execution processes of the internal processors 11 are sequentially interrupted via the synchronous bus 13, and the interrupted internal processors 11 sequentially refer to the main memory 1 and execute the programs in parallel in priority order including the interrupt processing program. Therefore, any program can be interrupted without interrupting the parallel execution of the entire one-chip microcomputer 15.

【0036】次に、第2の実施例について説明する。こ
の第2の実施例は、外部メインメモリ1内の実行スレッ
ド1cを、プログラムの優先度別、または内蔵プロセッ
サ別に複数設け、これら複数の実行スレッドに対して各
内蔵プロセッサ11および入出力制御手段14をアクセ
スさせるメモリアクセス制御手段を設けた構成である。
Next, a second embodiment will be described. This second embodiment, the execution thread 1c of the external main memory 1, a plurality programs by priority, or by embedded processor, each <br/> embedded processor 11 and input to respect the plurality of execution threads This is a configuration in which a memory access control unit for accessing the output control unit 14 is provided.

【0037】このメモリアクセス制御手段は、複数の実
行スレッドに対応して設けられているので、システムの
拡張などにより並列実行処理の比率が増しても1チップ
内で複数のプログラムを並列実行処理することができ
る。
Since the memory access control means is provided corresponding to a plurality of execution threads, even if the ratio of parallel execution processing is increased due to system expansion or the like, a plurality of programs are executed in parallel in one chip. be able to.

【0038】上述したように、第2の実施例によれば、
複数の実行スレッドに対応するメモリアクセス制御手段
を設けたので、1チップ内での並列実行処理の比率を増
し、並列実行処理の速度を向上することができる。
As described above, according to the second embodiment,
Since the memory access control means corresponding to a plurality of execution threads is provided, the ratio of parallel execution processing in one chip can be increased, and the speed of parallel execution processing can be improved.

【0039】さらに、第3の実施例について説明する。
外部のメモリバス2および入出力バス7を複数設け、そ
れらメモリバスに対して各内蔵プロセッサ11および入
出力制御手段14をアクセスさせるメモリアクセス制御
手段および、それら入出力バスに対して各内蔵プロセッ
サ11をアクセスさせる入出力制御手段を設けた構成で
ある。
Next, a third embodiment will be described.
A plurality of external memory bus 2 and an input-output bus 7, the memory access control means and the embedded processor 11 and the input-output control unit 14 to access to their memory bus, each embedded processor for those input-output bus 11 is a configuration in which the input and output control means for access to.

【0040】これら、外部のバスの複数化に対応するメ
モリアクセス制御手段および入出力制御手段を設けたこ
とにより、各内蔵プロセッサ11による並列実行処理の
比率を増し、1チップマイクロコンピュータ15全体に
おけるプログラムの並列実行処理速度を向上することが
できる。
By providing these memory access control means and input / output control means corresponding to the plurality of external buses, the ratio of parallel execution processing by each built-in processor 11 is increased, and the program in the entire one-chip microcomputer 15 is controlled. Can be improved in parallel execution processing speed.

【0041】上述したように、第3の実施例によれば、
外部システムの拡張などに対応するメモリアクセス制御
手段および入出力制御手段を設けたので、並列実行処理
の比率が増しても、それに追従して各内蔵プロセッサ1
がメインメモリおよび入出力装置にアクセスできるの
で、前記比率の増加に伴い処理速度を向上することがで
きる。
As described above, according to the third embodiment,
Since the memory access control means and the input / output control means corresponding to the expansion of the external system are provided, even if the ratio of the parallel execution processing increases, each of the built-in processors 1
Since access to 1 turtle-memory and input-output device, it is possible to improve the processing speed with an increase in said ratio.

【0042】なお、本発明は、プログラムを割込み処理
する場合に、各内蔵プロセッサ11を順次中断して、よ
り優先度の高いプログラムを並列実行処理するように説
明したが、各プロセッサ11を全て一時中断して、より
優先度の高いプログラムを並列実行処理しても同様に実
施できる。その他、本発明はその要旨を逸脱しない範囲
で種々変形して実施できる。
Although the present invention has been described in the context of interrupting a program, each built-in processor 11 is sequentially interrupted to execute a program with a higher priority in parallel. The same can also be implemented by interrupting and executing a higher priority program in parallel. In addition, the present invention can be implemented with various modifications without departing from the scope of the invention.

【0043】[0043]

【発明の効果】以上説明したように本発明は次のような
効果を奏する。
As described above, the present invention has the following effects.

【0044】請求項1の発明は、複数の内蔵プロセッサ
が各プログラムを並列実行処理するときに、ある内蔵プ
ロセッサでは、プログラムが新たなプログラムの実行情
を登録する場合には他の任意の内蔵プロセッサに中断
命令を送出し、この任意の内蔵プロセッサでは、当該あ
る内蔵プロセッサから中断命令を受けると、現在実行中
のプログラムに係る実行情報をメインメモリに戻した後
に、メインメモリ内のプログラムで他の内蔵プロセッサ
に割り当てられていず最も優先度の高いプログラムを処
すると共に中断命令を既に送出又は受信していない他
の内蔵プロセッサがある場合にはそれら他の内蔵プロセ
ッサのうちの任意の内蔵プロセッサに中断命令を送出
し、メモリアクセス制御手段が各内蔵プロセッサをメイ
ンメモリに対してアクセスさせるとともに、入出力制御
手段が各内蔵プロセッサを外部の入出力装置に対してア
クセスさせ、かつ、同期バスが各内蔵プロセッサ間での
実行および中断命令を伝送するようにしたので、外部に
特別な制御回路を設けることなく、簡易な構成で複数の
プログラムを完全に並列実行処理できるマルチプロセッ
サ内蔵1チップマイクロコンピュータを提供できる。
According to the first aspect of the present invention, a plurality of built-in processors are provided.
When a program executes each program in parallel,
At the Rossesa, the program is a new programExecution information
InformationIf you register, interrupt any other built-in processor
Instruction, and this optional internal processor
When an interrupt instruction is received from the built-in processor,Currently running
After returning the execution information related to the program to the main memory
ToOther internal processors with programs in main memory
Process the highest priority program that is not assigned to
ReasonOther than sending or receiving the suspend command
Other internal processors, if any.
Send a suspend instruction to any of the embedded processors
And the memory access control means names each built-in processor.
MemoryAAccess and I / O control
Means to connect each built-in processor to an external input / output deviceA
Access and a synchronous bus between each embedded processor.
Execution and abort instructions are now transmitted, so external
Without providing a special control circuit, multiple
A multiprocessor that can execute programs completely in parallel
It is possible to provide a one-chip microcomputer with a built-in memory.

【0045】請求項2の発明は、外部からの割込み制御
を行うときには、割込み制御手段が、ある入出力装置か
ら割込み要求を受けたときに当該割込み処理プログラム
の実行情報をメインメモリに登録するとともに同期バス
を介して各内蔵プロセッサの並列実行処理を中断させる
一方、処理を中断した各内蔵プロセッサが、メインメモ
リの参照により割込み処理プログラムを含めて再度優先
度順にプログラムを並列実行処理するので、複数のプロ
グラムを並列実行処理するときに、任意のプログラムを
割込み処理できるマルチプロセッサ内蔵1チップマイク
ロコンピュータを提供できる。
According to a second aspect of the present invention, when performing an external interrupt control, the interrupt control means registers the execution information of the interrupt processing program in the main memory when receiving an interrupt request from a certain input / output device. While the parallel execution processing of each built-in processor is interrupted via the synchronous bus, each of the interrupted built-in processors executes the parallel execution processing of the programs again in priority order including the interrupt processing program by referring to the main memory. A multi-processor built-in one-chip microcomputer capable of interrupting an arbitrary program when the above-mentioned program is processed in parallel.

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

【図1】本発明に係るマルチプロセッサ内蔵1チップマ
イクロコンピュータを用いた制御システムの構成を示す
図。
FIG. 1 is a diagram showing a configuration of a control system using a one-chip microcomputer with a built-in multiprocessor according to the present invention.

【図2】従来の1チップマイクロコンピュータを用いた
制御システムの構成を示す図。
FIG. 2 is a diagram showing a configuration of a control system using a conventional one-chip microcomputer.

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

1…メインメモリ、1a…複数のプログラム、9…入出
力装置、10…、11…複数の内蔵プロセッサ、12…
メモリアクセス制御手段、13…同期バス、14…入出
力制御手段、15…マルチプロセッサ内蔵1チップマイ
クロコンピュータ。
DESCRIPTION OF SYMBOLS 1 ... Main memory, 1a ... Plurality of programs, 9 ... I / O device, 10 ..., 11 ... Plurality of built-in processors, 12 ...
Memory access control means, 13: synchronous bus, 14: input / output control means, 15: one-chip microcomputer with built-in multiprocessor.

フロントページの続き (56)参考文献 特開 昭62−210564(JP,A) 特開 昭60−254358(JP,A) 特開 昭62−152064(JP,A) 特開 平2−244252(JP,A) 特開 平3−257634(JP,A) 特開 平3−144847(JP,A) 特開 昭58−87645(JP,A) 特開 平1−121968(JP,A) 特開 平1−270147(JP,A) 特開 平3−172956(JP,A) 特開 昭52−67930(JP,A) 特開 昭64−1048(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 15/16 - 15/177 Continuation of front page (56) References JP-A-62-210564 (JP, A) JP-A-60-254358 (JP, A) JP-A-62-152064 (JP, A) JP-A-2-244252 (JP) JP-A-3-257634 (JP, A) JP-A-3-144847 (JP, A) JP-A-58-87645 (JP, A) JP-A-1-121968 (JP, A) 1-270147 (JP, A) JP-A-3-17756 (JP, A) JP-A-52-67930 (JP, A) JP-A-64-1048 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G06F 15/16-15/177

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 メインメモリ内に格納され1チップ内の
いずれの内蔵プロセッサでも処理可能な複数のプログラ
ムを優先度順に読み出してそれぞれ並列実行処理し、か
つ、前記プログラムが新たなプログラムの実行情報を登
録する場合には他の任意の内蔵プロセッサに中断命令を
送出し、かつ他の内蔵プロセッサから中断命令を受けた
場合には現在実行中のプログラムに係る実行情報をメイ
ンメモリに戻した後にメインメモリ内のプログラムで他
の内蔵プロセッサに割り当てられていず最も優先度の高
いプログラムを処理すると共に中断命令を既に送出又は
受信していない他の内蔵プロセッサがある場合にはそれ
ら他の内蔵プロセッサのうちの任意の内蔵プロセッサに
中断命令を送出する複数の内蔵プロセッサと、 これら複数の内蔵プロセッサのうち、ある内蔵プロセッ
サがメインメモリにアクセスしているときには、他の内
蔵プロセッサをメインメモリに対してアクセスさせず、
前記ある内蔵プロセッサのメインメモリに対するアクセ
スが終了したときには、前記他の内蔵プロセッサをメイ
ンメモリに対してアクセスさせるメモリアクセス制御手
段と、 前記複数の内蔵プロセッサのうち、任意の内蔵プロセッ
サから送出されてくる前記実行および中断命令を他の内
蔵プロセッサに通知する同期バスと、 各内蔵プロセッサの処理結果を外部に送出するとき、各
内蔵プロセッサを入出力装置に対してアクセスさせる入
出力制御手段とを備え、各内蔵プロセッサがそれぞれメ
インメモリにアクセスし、かつ、複数のプログラムを並
列実行処理することを特徴とするマルチプロセッサ内蔵
1チップマイクロコンピュータ。
1. A plurality of programs which are stored in a main memory and can be processed by any built-in processor in one chip are read out in order of priority and are respectively processed in parallel, and the program executes execution information of a new program. When registering, an interrupt instruction is sent to any other internal processor, and when an interrupt instruction is received from another internal processor , execution information related to the program currently being executed is stored.
After returning to the main memory, the program in the main memory processes the highest priority program that has not been allocated to another internal processor and has already sent or
If any other internal processor is not receiving it,
To any of the other embedded processors
A plurality of built-in processors for sending a suspend instruction, and when one built-in processor is accessing main memory, the other built-in processors are not allowed to access the main memory;
When the access to the main memory of the certain built-in processor is completed, the memory access control means causes the other built-in processor to access the main memory; a synchronous bus to notify the execution and interruption instruction to another embedded processor, when sending the processing results of each internal processor to the outside, and a output control means for access by contrast input and output device each embedded processor accesses to each of the integrated processor, respectively it main <br/>-memory, and multi-processor-containing one-chip microcomputer, which comprises parallel execution processing a plurality of programs.
【請求項2】 入出力制御手段は、各内蔵プロセッサに
よるプログラムの並列実行処理中に外部から他の処理プ
ログラムを割り込ませるために、ある入出力装置から割
込み要求を受けたときには当該割込み処理プログラムの
優先度を含む実行情報をメインメモリに登録し、かつ、
前記同期バスを介して各内蔵プロセッサにプログラムの
並列実行処理を中断させ、再度優先度順にプログラムを
並列実行処理させる割込み制御手段を備えたことを特徴
とする請求項1記載のマルチプロセッサ内蔵1チップマ
イクロコンピュータ。
2. An input / output control means for receiving an interrupt request from a certain input / output device in order to interrupt another processing program from outside during parallel execution of a program by each built-in processor. Register the execution information including the priority in the main memory, and
2. A multi-processor built-in 1-chip as claimed in claim 1, further comprising an interrupt control means for causing each of the built-in processors to interrupt the parallel execution of the program via the synchronous bus and to execute the parallel execution of the program again in the order of priority. Microcomputer.
JP05472392A 1992-03-13 1992-03-13 One-chip microcomputer with built-in multiprocessor Expired - Fee Related JP3187117B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05472392A JP3187117B2 (en) 1992-03-13 1992-03-13 One-chip microcomputer with built-in multiprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05472392A JP3187117B2 (en) 1992-03-13 1992-03-13 One-chip microcomputer with built-in multiprocessor

Publications (2)

Publication Number Publication Date
JPH05257909A JPH05257909A (en) 1993-10-08
JP3187117B2 true JP3187117B2 (en) 2001-07-11

Family

ID=12978725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05472392A Expired - Fee Related JP3187117B2 (en) 1992-03-13 1992-03-13 One-chip microcomputer with built-in multiprocessor

Country Status (1)

Country Link
JP (1) JP3187117B2 (en)

Also Published As

Publication number Publication date
JPH05257909A (en) 1993-10-08

Similar Documents

Publication Publication Date Title
JP5400443B2 (en) Integrated circuit, debug circuit, and debug command control method
JPH06250871A (en) Cpu core, asic having the cpu core and emulation system provided with the asic
JP4874165B2 (en) Multiprocessor system and access right setting method in multiprocessor system
JP2007219816A (en) Multiprocessor system
JPH10187642A (en) Microprocessor and multiprocessor system
JPS63310051A (en) Method and apparatus for executing input/output process containing program input/output instruction
JP3187117B2 (en) One-chip microcomputer with built-in multiprocessor
US7103528B2 (en) Emulated atomic instruction sequences in a multiprocessor system
JP2003196251A (en) Multi-cpu system
JPS6145348A (en) Bus priority control system
JPS6120903B2 (en)
JP2002207714A (en) Multi-processor system
JPS5942331B2 (en) Prosetsusasouchinoseigiohoshiki
JPH07302255A (en) Semiconductor integrated circuit device, processor for emulating the same and emulator
JPH02252044A (en) Coprocessor and data transfer control system
JPH06314231A (en) Shared memory access control method
JP3365419B2 (en) Bus arbitration method
JPH04127260A (en) Exclusive control circuit for multiprocessor system
JPS5856057A (en) Interruption signal generating device
JPS63298555A (en) Shared memory control system
JPS63214862A (en) Microprocessor
JPS63265353A (en) Multi-processor system
JPH0410159A (en) Multi-cpu system
JPH1165994A (en) Bus control circuit
JPS61208160A (en) Dual processor system using common bus

Legal Events

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