JPH06230985A - Task control circuit and microprocessor - Google Patents

Task control circuit and microprocessor

Info

Publication number
JPH06230985A
JPH06230985A JP5015241A JP1524193A JPH06230985A JP H06230985 A JPH06230985 A JP H06230985A JP 5015241 A JP5015241 A JP 5015241A JP 1524193 A JP1524193 A JP 1524193A JP H06230985 A JPH06230985 A JP H06230985A
Authority
JP
Japan
Prior art keywords
task
register
information
control circuit
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.)
Pending
Application number
JP5015241A
Other languages
Japanese (ja)
Inventor
Toyohito Iketani
豊人 池谷
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 JP5015241A priority Critical patent/JPH06230985A/en
Publication of JPH06230985A publication Critical patent/JPH06230985A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To speed up task processing and improve a system throughput by determining a task to be executed next on the basis of the holding contents of a register. CONSTITUTION:When a CPU 31 executes a specific instruction and a task switching request signal is asserted at this time, a bit 6 of an in-execution register 10 is reset and the holding contents of an execution wait register 11 are inputted to a selecting circuit 2. Assuming that the connection relation with the selecting circuit 2 is so set by the execution wait register 11 that the priority increases from the bottom to the top in the drawing, the priority of a bit 7 is higher between bits 7 and 8 in an execution wait state, so the selecting circuit 2 selects it. Then a task information register 3 as a stage following the selecting circuit 2 selects corresponding task information 12 and sends it to the CPU 31, which executes the task on the basis of the information.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、マルチタスクを処理す
るためのタスク処理回路に関し、例えばマイクロプロセ
ッサに適用して有効な技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a task processing circuit for processing multitasking, and more particularly to a technique effective when applied to a microprocessor, for example.

【0002】[0002]

【従来の技術】リアルタイム・オペレーティング・シス
テムは、リアルタイム制御を目的とし、通常マルチタス
キングをサポートするオペレーティングシステムとされ
る。このオペレーティングシステム(OSと略記する)
は、計測システムなどの実機に組込まれ、計測機器や非
制御プロセスなどの機械系とのデータのやり取りが主目
的とされる。リアルタイムOSの管理下で起動されるプ
ログラムはタスクとして取扱われ、プログラムの実行、
優先処理、平行処理などは全てタスクを単位として行わ
れる。処理手続のコード化の単位であるプログラムは、
タスクとしてOSに結び付けられたときに初めて実行処
理を行うことができ、優先順位などの資格が与えられ
る。各タスクには固有の番号が与えられ、それはタスク
番号と称されている。このタスク番号は、単にタスクを
識別するためにのみ使用され、それに優先権などの意味
は含まれない。優先順位はタスクのOSへの登録時に決
められるが、実行中に一時的に変更することも可能とさ
れる。
2. Description of the Related Art A real-time operating system is intended for real-time control and is usually an operating system that supports multitasking. This operating system (abbreviated as OS)
Is incorporated into an actual machine such as a measurement system, and its main purpose is to exchange data with mechanical systems such as measurement equipment and uncontrolled processes. A program started under the control of the real-time OS is treated as a task, and the program execution,
Priority processing, parallel processing, etc. are all performed in units of tasks. The program, which is the unit of processing procedure coding,
Execution processing can be performed only when linked to the OS as a task, and a qualification such as priority is given. Each task is given a unique number, which is called the task number. This task number is used only to identify the task and does not include any meaning such as priority. The priority order is determined when the task is registered in the OS, but it can be temporarily changed during execution.

【0003】既存のマイクロプロセッサシステムにおい
て、マルチタスク処理は、ソフトウェアにより実現され
るのが一般的である。また、実用化の進んでいる分散O
Sに見られる傾向としては一つのタスクに占めるプログ
ラムが短く、システムコールが多くなっている。従っ
て、将来OSがさらに複雑になると、システム全体の処
理の中で、OSの占める部分を軽減することでスループ
ットを大幅に向上させることが可能とされるが、現時点
では、レジスタの高速転送やスタックレジスタを分ける
といった方法でOSの負担軽減を図っているのが実情で
ある。
In existing microprocessor systems, multitask processing is generally realized by software. In addition, distributed O, which is in practical use
The tendency seen in S is that the program occupied in one task is short and the number of system calls is large. Therefore, if the OS becomes more complex in the future, it is possible to significantly improve the throughput by reducing the portion occupied by the OS in the processing of the entire system. At present, however, high-speed transfer of registers and stacking are possible. The reality is that the burden on the OS is reduced by dividing the registers.

【0004】尚、リアルタイムOSについて記載された
文献の例としては、昭和60年12月25日に株式会社
オーム社から発行された「マイクロコンピュータハンド
ブック(第546頁〜)」がある。
An example of a document describing a real-time OS is "Microcomputer Handbook (Page 546-)" issued by Ohm Co., Ltd. on December 25, 1985.

【0005】[0005]

【発明が解決しようとする課題】タスク処理の高速化
は、マイクロプロセッサシステム全体のスループットの
向上を図る上で重要とされ、それについて本発明者が検
討したところ、本来、リアルタイムOSの中で行うタス
ク切換え等のソフトウェアは、ほとんど決ったアルゴリ
ズムが用いられていることから、それをハードウェア化
することは可能であり、そうすることによって、処理の
高速化が期待できることを見いだした。
The speeding up of task processing is important for improving the throughput of the microprocessor system as a whole, and the inventors of the present invention have studied it. We have found that software for task switching, etc., can be made into hardware because almost fixed algorithms are used, and by doing so, speedup of processing can be expected.

【0006】本発明の目的は、タスク処理の高速化を図
ることによってシステムスループットの向上を図るため
の技術を提供することにある。
An object of the present invention is to provide a technique for improving the system throughput by accelerating task processing.

【0007】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

【0008】[0008]

【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
The outline of the representative one of the inventions disclosed in the present application will be briefly described as follows.

【0009】すなわち、使用される複数のタスクの実行
に関する情報を保持するための状態レジスタと、このレ
ジスタの保持内容に基づいて、次に実行されるべきタス
クを決定するための選択回路とを含んで、タスク制御回
路を構成するものである。このとき、上記選択回路は、
上記状態レジスタの保持情報から最も優先順位の高い情
報を選択することによって、次に実行されるべきタスク
を決定するためのプライオリティエンコーダを含んで構
成することができる。また、上記状態レジスタは、タス
クの実行情報を保持するためのレジスタと、タスク実行
待ち情報を保持するためのレジスタとを含んで構成する
ことができる。さらに、マルチプロセッサシステムに対
応可能とするため、上記状態レジスタは、複数の中央処
理装置を識別するための情報を保持可能なレジスタを設
けることができる。
That is, it includes a status register for holding information on execution of a plurality of tasks to be used, and a selection circuit for determining a task to be executed next based on the contents held in this register. Thus, it constitutes a task control circuit. At this time, the selection circuit
A priority encoder for determining the task to be executed next can be configured by selecting the information with the highest priority from the information held in the status register. The status register can be configured to include a register for holding task execution information and a register for holding task execution wait information. Further, in order to be compatible with a multiprocessor system, the status register can be provided with a register capable of holding information for identifying a plurality of central processing units.

【0010】[0010]

【作用】上記した手段によれば、使用される複数のタス
クの実行に関する情報を保持するための状態レジスタ
と、このレジスタの保持内容に基づいて、次に実行され
るべきタスクを決定するための選択回路とを含んで、タ
スク制御回路を構成することは、タスク切換え処理機能
のハードウェア化により、処理の高速化を達成する。
According to the above-mentioned means, a status register for holding information on the execution of a plurality of tasks to be used, and a task to be executed next for determining the task to be executed next based on the contents held in this register. The configuration of the task control circuit including the selection circuit achieves high-speed processing due to the hardware of the task switching processing function.

【0011】[0011]

【実施例】図1には本発明の一実施例であるマイクロプ
ロセッサが示される。
FIG. 1 shows a microprocessor according to an embodiment of the present invention.

【0012】図1に示されるマイクロプロセッサは特に
制限されないが、中央処理装置(CPU)31とタスク
制御回路9、及びその他の周辺回路モジュールを含み、
公知の半導体集積回路製造技術により、単結晶シリコン
基板のような一つの半導体基板に形成される。
The microprocessor shown in FIG. 1 includes, but is not limited to, a central processing unit (CPU) 31, a task control circuit 9, and other peripheral circuit modules,
It is formed on one semiconductor substrate such as a single crystal silicon substrate by a known semiconductor integrated circuit manufacturing technique.

【0013】本実施例にかかるマイクロプロセッサは、
特に制限されないが、計測システムなどの実機に組込ま
れ、計測機器や非制御プロセスなどの機械系とのデータ
のやり取りが主目的とされる。リアルタイムOSの管理
下で起動されるプログラムは、タスクとして取扱われ、
プログラムの実行、優先処理、平行処理などは全てタス
クを単位として行われる。
The microprocessor according to this embodiment is
Although not particularly limited, the main purpose is to be incorporated into an actual machine such as a measuring system and exchange data with a mechanical system such as a measuring instrument or a non-control process. Programs started under the control of the real-time OS are handled as tasks,
Program execution, priority processing, parallel processing, etc. are all performed in units of tasks.

【0014】CPU31は、レジスタ又はメモリに格納
されたデータに対して必要な数値演算、論理演算を行う
ためのハードウェアユニットである算術論理演算ユニッ
ト(ALU)や、このALUでの演算の一方の入力又は
その結果を蓄えるためのアキュムレータ、一般の種々の
データを格納するための汎用レジスタ、演算タイミング
の制御回路等を含む。
The CPU 31 is an arithmetic logic unit (ALU), which is a hardware unit for performing necessary numerical and logical operations on data stored in a register or a memory, and one of the operations in this ALU. It includes an accumulator for storing the input or its result, a general-purpose register for storing various general data, a control circuit for operation timing, and the like.

【0015】タスク制御回路9は、上記CPU31から
のタスク切換え要求に応じて、マルチタスキングをサポ
ートするリアルタイムOSにおけるタスク切換えを制御
するための回路であり、従来ソフトウェアによって実現
されていたタスク切換え制御をハードウェアにより実現
するための回路とされる。このタスク制御回路9は、特
に制限されないが、使用される複数のタスクの実行に関
する情報を保持するための状態レジスタ1と、この状態
レジスタ1の保持内容に基づいて、次に実行されるべき
タスクを決定するための選択回路2と、この選択回路2
の出力に基づいて、予め設定されている複数のタスク情
報の中から、該当するタスク情報5を出力するためのタ
スク情報レジスタ3とを含む。
The task control circuit 9 is a circuit for controlling task switching in a real-time OS that supports multitasking in response to a task switching request from the CPU 31, and task switching control that has been realized by conventional software. Is realized by hardware. The task control circuit 9 is not particularly limited, but a status register 1 for holding information on execution of a plurality of tasks to be used, and a task to be executed next based on the contents held in the status register 1. And a selection circuit 2 for determining
And a task information register 3 for outputting the corresponding task information 5 from among a plurality of preset task information based on the output of.

【0016】上記選択回路2は、特に制限されないが、
上記状態レジスタ1の保持情報から最も優先順位の高い
情報を選択することによって、次に実行されるべきタス
クを決定するためのプライオリティエンコーダを含んで
構成することができる。プライオリティエンコーダは、
複数のデータが同時に与えられた場合に、最も優先順位
の高い入力端子のコードを出力する機能を有し、上記選
択回路2には、オア回路やインバータを結合して成る、
それ自体周知のプライオリティエンコーダ回路を適用す
ることができる。このプライオリティエンコーダの入力
端子数は、上記状態レジスタ1の出力端子数に等しくさ
れる。
The selection circuit 2 is not particularly limited,
A priority encoder for determining the task to be executed next can be configured by selecting the information with the highest priority from the information held in the status register 1. The priority encoder is
When a plurality of data are given at the same time, it has a function of outputting the code of the input terminal having the highest priority.
A priority encoder circuit known per se can be applied. The number of input terminals of this priority encoder is made equal to the number of output terminals of the status register 1.

【0017】上記状態レジスタ1は、特に制限されない
が、タスク実行中の情報を保持するための実行中レジス
タ10と、タスク実行待ち情報を保持するための実行待
ちレジスタ11とを含んで成る。この実行中レジスタ1
0と、実行待ちレジスタ11とのビット数は互いに等し
くされる。
Although not particularly limited, the status register 1 includes a running register 10 for holding information on task execution and an execution waiting register 11 for holding task execution wait information. This running register 1
The number of bits of 0 and the execution wait register 11 are made equal to each other.

【0018】現在、実行中レジスタ10のビット6がセ
ットされており、それに対応するタスクの実行中である
ことが示されているものとする。CPU31によって所
定の命令が実行され、その際にタスク切換え要求信号が
アサートされると、実行中レジスタ10のビット6がリ
セットされ、実行待ちレジスタ11の保持内容が選択回
路2に取込まれる。この実行待ちレジスタ11におい
て、図面上、下部から上部にかけて優先順位が高くなる
ように、選択回路(プライオリティエンコーダ)2との
接続関係が設定されているものとすると、ビット7,8
の実行待ちのうち、ビット7の優先順位が高いので、選
択回路2ではそれが選択される。すると、この選択回路
2の後段のタスク情報レジスタ3においては、該当する
タスク情報12が選択されて、それが、CPU31へ伝
達され、CPU31では、その情報に基づいて当該タス
クが実行される。このとき、上記実行待ちレジスタ11
のビット7がリセットされ、実行中レジスタ10のビッ
ト13がセットされることにより、当該タスクが、実行
待ちの状態から実行中になったことが示される。同様
に、再びタスク切換え要求信号がCPU31によってア
サートされた場合には、選択回路2によって、優先順位
の高いビットが選択され、それに基づいて、タスク情報
レジスタ3から該当タスク情報がCPU31へ出力され
る。そのようにしてタスク切換えが行われる。
It is assumed that bit 6 of the running register 10 is currently set, indicating that the corresponding task is being executed. When a predetermined instruction is executed by the CPU 31 and the task switching request signal is asserted at that time, bit 6 of the executing register 10 is reset and the content held in the execution waiting register 11 is taken into the selection circuit 2. In the execution wait register 11, assuming that the connection relationship with the selection circuit (priority encoder) 2 is set so that the priority becomes higher from the bottom to the top in the drawing, bits 7 and 8 are set.
Since the priority of the bit 7 is high in the execution wait of, the selection circuit 2 selects it. Then, the corresponding task information 12 is selected in the task information register 3 in the subsequent stage of the selection circuit 2, and the selected task information 12 is transmitted to the CPU 31, and the CPU 31 executes the task based on the information. At this time, the execution wait register 11
7 is reset and bit 13 of the in-execution register 10 is set, thereby indicating that the task has changed from the execution wait state to the execution state. Similarly, when the task switching request signal is asserted again by the CPU 31, the selection circuit 2 selects a bit with a high priority, and based on this, the task information register 3 outputs the relevant task information to the CPU 31. . In this way, task switching is performed.

【0019】このように、上記タスク制御回路9を備
え、マルチタスキング処理を専用のハードウェアによっ
て行うことにより、タスク切換えを1〜2マシンサイク
ルで行うことが可能とされる。一般に、ソフトウェアに
よるマルチタスキング処理は30〜50マシンサイクル
必要とされるため、本実施例のように専用のハードウェ
アによって処理することにより、処理時間を大幅に短縮
することができ、マイクロプロセッサのスループットの
向上を図ることができる。
As described above, by providing the task control circuit 9 and performing the multitasking processing by the dedicated hardware, the task switching can be performed in 1 to 2 machine cycles. Generally, since the multitasking processing by software requires 30 to 50 machine cycles, the processing time can be greatly shortened by processing by the dedicated hardware as in this embodiment, and the microprocessor Throughput can be improved.

【0020】図2には本発明の他の実施例であるマルチ
プロセッサシステムが示される。
FIG. 2 shows a multiprocessor system which is another embodiment of the present invention.

【0021】このマルチプロセッサシステムは、複数の
マイクロプロセッサ31−1〜31−nを有し、この複
数のマイクロプロセッサ31−1〜31−nで実行され
るタスクがタスク制御回路14によって切換え制御され
るようになっている。本実施例では、各マイクロプロセ
ッサ31−1〜31−n、及びタスク制御回路14が、
それぞれ1チップにより構成される。また、本実施例シ
ステムは、特に制限されないが、計測システムなどの実
機に組込まれ、計測機器や非制御プロセスなどの機械系
とのデータのやり取りが主目的とされる。
This multiprocessor system has a plurality of microprocessors 31-1 to 31-n, and tasks executed by the plurality of microprocessors 31-1 to 31-n are switched and controlled by a task control circuit 14. It has become so. In this embodiment, the microprocessors 31-1 to 31-n and the task control circuit 14 are
Each is composed of one chip. Further, the system of the present embodiment is not particularly limited, but is incorporated in an actual machine such as a measurement system, and its main purpose is to exchange data with a mechanical system such as a measurement device or a non-control process.

【0022】上記複数のマイクロプロセッサ31−1〜
31−nはそれぞれ、レジスタ又はメモリに格納された
データに対して必要な数値演算、論理演算を行うための
ハードウェアユニットであるALUや、このALUでの
演算の一方の入力又はその結果を蓄えるためのアキュム
レータ、一般の種々のデータを格納するための汎用レジ
スタ、演算タイミングの制御回路等を含む。
The plurality of microprocessors 31-1 to 31-1
Reference numeral 31-n stores an ALU, which is a hardware unit for performing necessary numerical and logical operations on data stored in a register or a memory, and one input of the operation by this ALU or the result thereof. It includes an accumulator, a general-purpose register for storing various general data, a control circuit for operation timing, and the like.

【0023】また、タスク制御回路14の基本的な機能
は上記実施例と同様とされ、状態レジスタ15の保持情
報から最も優先順位の高い情報を選択することによっ
て、次に実行されるべきタスクを決定するためのプライ
オリティエンコーダを含む選択回路16が設けられ、そ
の出力に基づいて、タスク情報レジスタ17から対応す
るタスク情報が出力されるようになっている。そして本
実施例においては、マルチプロセッサ毎にタスク切換え
を制御する必要があるため、プロセッサ番号を比較する
ための比較回路18や、優先順位の高いマイクロプロセ
ッサを選択するためのプライオリティエンコーダ19、
このプライオリティエンコーダ19の出力をデコードす
るためのデコーダ20が設けられている。
The basic function of the task control circuit 14 is similar to that of the above-described embodiment, and by selecting the information with the highest priority from the information held in the status register 15, the task to be executed next is selected. A selection circuit 16 including a priority encoder for determining is provided, and the task information register 17 outputs corresponding task information based on the output thereof. In the present embodiment, since it is necessary to control the task switching for each multiprocessor, a comparison circuit 18 for comparing processor numbers, a priority encoder 19 for selecting a high priority microprocessor,
A decoder 20 for decoding the output of the priority encoder 19 is provided.

【0024】各マイクロプロセッサ31−1〜31−n
によってタスク切換え要求信号がアサートされた場合、
プライオリティエンコーダ19により、最も優先順位の
高いプロセッサ番号24が選択され、このプロセッサ番
号24が、後段の比較回路18に伝達される。この比較
回路18では、プロセッサ番号24と、プロセッサ番号
レジスタ21の保持情報とが比較され、それらが一致し
た場合に、実行中レジスタ22の該当ビット26とプロ
セッサ番号レジスタ21のプロセッサ番号25とがリセ
ットされる。そして、実行待ちレジスタ23の保持情報
が選択回路16に入力され、優先順位が最も高いビット
27の出力が選択され、それに対応するタスク情報28
が、タスク情報レジスタ17から、マイクロプロセッサ
31−1〜31−nに出力される。このとき、プライオ
リティエンコーダ19の出力24(プロセッサ番号)
が、後段のデコーダ20によってデコードされ、それに
よってマイクロプロセッサが特定されるようになってい
るため、上記タスク情報レジスタ17から出力されたタ
スク情報は、該当するマイクロプロセッサにのみ取込ま
れる。そして、実行中レジスタ22の該当ビットがセッ
トされ、実行待ちレジスタ23のビット27がリセット
され、プロセッサ番号レジスタ21のビット29には、
プライオリティエンコーダ19によって選択されたプロ
セッサ番号がセットされる。
Each microprocessor 31-1 to 31-n
When the task switch request signal is asserted by
The priority encoder 19 selects the processor number 24 having the highest priority, and the processor number 24 is transmitted to the comparison circuit 18 in the subsequent stage. In the comparison circuit 18, the processor number 24 and the information held in the processor number register 21 are compared, and if they match, the corresponding bit 26 of the executing register 22 and the processor number 25 of the processor number register 21 are reset. To be done. Then, the information held in the execution waiting register 23 is input to the selection circuit 16, the output of the bit 27 having the highest priority is selected, and the task information 28 corresponding thereto is selected.
Is output from the task information register 17 to the microprocessors 31-1 to 31-n. At this time, the output 24 (processor number) of the priority encoder 19
However, the microprocessor 20 is decoded by the decoder 20 in the subsequent stage, whereby the task information output from the task information register 17 is taken in only by the relevant microprocessor. Then, the corresponding bit of the executing register 22 is set, the bit 27 of the execution waiting register 23 is reset, and the bit 29 of the processor number register 21 is set to
The processor number selected by the priority encoder 19 is set.

【0025】このように、上記タスク制御回路14を備
え、マルチタスキング処理を専用のハードウェアによっ
て行うことにより、上記実施例と同様に、タスク切換え
に要する時間を大幅に短縮することができるので、マル
チプロセッサシステムのスループットの向上を図ること
ができる。
As described above, since the task control circuit 14 is provided and the multitasking process is performed by the dedicated hardware, the time required for task switching can be greatly shortened as in the above embodiment. The throughput of the multiprocessor system can be improved.

【0026】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
The invention made by the present inventor has been specifically described based on the embodiments, but the present invention is not limited thereto and needless to say, various modifications can be made without departing from the scope of the invention. Yes.

【0027】例えば、上記実施例ではマイクロプロセッ
サ31−1〜31−n、及びタスク制御回路14が、そ
れぞれ1チップにより構成されたものについて説明した
が、それら全体を一つの半導体基板に形成するようにし
ても良い。
For example, in the above-mentioned embodiment, the microprocessors 31-1 to 31-n and the task control circuit 14 are described as being composed of one chip, respectively, but they may be formed on one semiconductor substrate. You can

【0028】また、タスク情報レジスタ3、17に代え
てキャッシュメモリを設け、このキャッシュメモリを介
してタスク情報を読出すように構成しても良い。
A cache memory may be provided instead of the task information registers 3 and 17, and the task information may be read out through the cache memory.

【0029】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるマイク
ロプロセッサに適用した場合について説明したが、本発
明はそれに限定されるものではなく、各種データ処理装
置、制御用ボードシステム等に広く適用することができ
る。
In the above description, the case where the invention made by the present inventor is mainly applied to a microprocessor which is a field of application which is the background of the invention has been described. It can be widely applied to devices, control board systems, and the like.

【0030】本発明は、少なくともマルチタスキング処
理をサポートすることを条件に適用することができる。
The present invention can be applied on condition that it supports at least a multitasking process.

【0031】[0031]

【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.

【0032】すなわち、使用される複数のタスクの実行
に関する情報を保持するための状態レジスタと、このレ
ジスタの保持内容に基づいて、次に実行されるべきタス
クを決定するための選択回路とを含んでタスク制御回路
を構成し、タスク切換え処理の専用ハードウェア化によ
り、処理の高速化、さらにはシステムのスループットの
向上を図ることができる。
That is, it includes a status register for holding information on execution of a plurality of tasks to be used, and a selection circuit for determining a task to be executed next based on the contents held in this register. By configuring a task control circuit with a dedicated hardware for task switching processing, it is possible to speed up the processing and further improve the system throughput.

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

【図1】本発明の一実施例であるマイクロプロセッサの
構成ブロック図である。
FIG. 1 is a configuration block diagram of a microprocessor that is an embodiment of the present invention.

【図2】本発明の他の実施例であるマルチプロセッサシ
ステムの構成ブロック図である。
FIG. 2 is a configuration block diagram of a multiprocessor system which is another embodiment of the present invention.

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

1,15 状態レジスタ 2,16 選択回路 3,17 タスク情報レジスタ 4,14 タスク制御回路 6,26 実行中ビット 7,8,27 実行待ちビット 12,28 タスク情報 18 比較回路 19 プライオリティエンコーダ 20 デコーダ 21 プロセッサ番号レジスタ 10,22 実行中レジスタ 11,23 実行待ちレジスタ 1,15 Status register 2,16 Selection circuit 3,17 Task information register 4,14 Task control circuit 6,26 Execution bit 7,8,27 Execution wait bit 12,28 Task information 18 Comparison circuit 19 Priority encoder 20 Decoder 21 Processor number register 10,22 Running register 11,23 Execution wait register

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 中央処理装置からのタスク切換え要求に
応じて、タスク切換えを制御するためのタスク制御回路
であって、使用される複数のタスクの実行に関する情報
を保持するための状態レジスタと、このレジスタの保持
内容に基づいて、次に実行されるべきタスクを決定する
ための選択回路とを含んで成ることを特徴とするタスク
制御回路。
1. A task control circuit for controlling task switching in response to a task switching request from a central processing unit, and a status register for holding information on execution of a plurality of tasks used. A task control circuit, comprising: a selection circuit for determining a task to be executed next based on the contents held in this register.
【請求項2】 上記選択回路は、上記状態レジスタの保
持情報から最も優先順位の高い情報を選択することによ
って、次に実行されるべきタスクを決定するためのプラ
イオリティエンコーダを含んで構成される請求項1記載
のタスク制御回路。
2. The selection circuit includes a priority encoder for determining a task to be executed next by selecting the highest priority information from the information held in the status register. The task control circuit according to item 1.
【請求項3】 上記状態レジスタは、タスクの実行情報
を保持するためのレジスタと、タスク実行待ち情報を保
持するためのレジスタとを含んで成る請求項1又は2記
載のタスク制御回路。
3. The task control circuit according to claim 1, wherein the status register includes a register for holding task execution information and a register for holding task execution wait information.
【請求項4】 上記状態レジスタは、複数の中央処理装
置を識別するための情報を保持可能なレジスタを含む請
求項1乃至3のいずれか1項記載のタスク制御回路。
4. The task control circuit according to claim 1, wherein the status register includes a register capable of holding information for identifying a plurality of central processing units.
【請求項5】 請求項1乃至4のいずれか1項に記載の
タスク制御回路と、このタスク制御回路にタスク切換え
要求を出すと共に、当該タスク制御回路によって選択さ
れたタスクを実行するための中央処理装置とが一つの半
導体基板に形成されたマイクロプロセッサ。
5. A task control circuit according to claim 1, and a central part for issuing a task switching request to this task control circuit and executing a task selected by the task control circuit. A microprocessor in which a processing device is formed on one semiconductor substrate.
JP5015241A 1993-02-02 1993-02-02 Task control circuit and microprocessor Pending JPH06230985A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5015241A JPH06230985A (en) 1993-02-02 1993-02-02 Task control circuit and microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5015241A JPH06230985A (en) 1993-02-02 1993-02-02 Task control circuit and microprocessor

Publications (1)

Publication Number Publication Date
JPH06230985A true JPH06230985A (en) 1994-08-19

Family

ID=11883368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5015241A Pending JPH06230985A (en) 1993-02-02 1993-02-02 Task control circuit and microprocessor

Country Status (1)

Country Link
JP (1) JPH06230985A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100526213B1 (en) * 1997-09-01 2005-12-21 마츠시타 덴끼 산교 가부시키가이샤 Microcontroller, data processing system and task switching control method
KR100705956B1 (en) * 2004-12-30 2007-04-11 지멘스 오토모티브 주식회사 Method for controlling engin of car
KR100705955B1 (en) * 2004-12-30 2007-04-11 지멘스 오토모티브 주식회사 Method for controlling engin of car
KR100748715B1 (en) * 2005-12-27 2007-08-13 주식회사 텔레칩스 Hardware task management system
JP2010538373A (en) * 2007-09-06 2010-12-09 インテル・コーポレーション Creation of logical APICID with cluster ID and intracluster ID
US8661440B2 (en) 2007-06-26 2014-02-25 Samsung Electronics Co., Ltd. Method and apparatus for performing related tasks on multi-core processor

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100526213B1 (en) * 1997-09-01 2005-12-21 마츠시타 덴끼 산교 가부시키가이샤 Microcontroller, data processing system and task switching control method
KR100705956B1 (en) * 2004-12-30 2007-04-11 지멘스 오토모티브 주식회사 Method for controlling engin of car
KR100705955B1 (en) * 2004-12-30 2007-04-11 지멘스 오토모티브 주식회사 Method for controlling engin of car
KR100748715B1 (en) * 2005-12-27 2007-08-13 주식회사 텔레칩스 Hardware task management system
US8661440B2 (en) 2007-06-26 2014-02-25 Samsung Electronics Co., Ltd. Method and apparatus for performing related tasks on multi-core processor
JP2010538373A (en) * 2007-09-06 2010-12-09 インテル・コーポレーション Creation of logical APICID with cluster ID and intracluster ID

Similar Documents

Publication Publication Date Title
JP4883824B2 (en) Method and apparatus for influencing subsequent instruction processing in a data processor
US5812868A (en) Method and apparatus for selecting a register file in a data processing system
US7386646B2 (en) System and method for interrupt distribution in a multithread processor
US4177513A (en) Task handling apparatus for a computer system
US5155853A (en) Data processor operating in a vector interrupt mode and register bank switching mode with selected bank for interrupt processing
JPH0650493B2 (en) Data processing device
EP0114191B1 (en) Microword control system utilizing overlapped programmable logic arrays
EP0735462A2 (en) Method and apparatus for selectively controlling interrupt latency in a data processing system
US5125095A (en) System using microprocessor address lines for coprocessor selection within a multi-coprocessor apparatus
JPH06230985A (en) Task control circuit and microprocessor
JPS62115542A (en) Information processor
JPH0916409A (en) Microcomputer
EP0448127B1 (en) Microprogram sequence controller
JP2797760B2 (en) Parallel processing computer system
JP2000137619A (en) Microcomputer
JP3900660B2 (en) Sequence controller
JP2002278753A (en) Data processing system
JP2876629B2 (en) Data processing device
JPH02252044A (en) Coprocessor and data transfer control system
JPH07200490A (en) Mpu
JPH079643B2 (en) Coprocessor data transfer control method
JPS6354630A (en) Data processor
JPH07295836A (en) Semiconductor integrated circuit device
JPH01255037A (en) Electronic computer
JPH03273356A (en) Microprocessor and multiprocessor system