JP2011150532A - Information processing apparatus - Google Patents
Information processing apparatus Download PDFInfo
- Publication number
- JP2011150532A JP2011150532A JP2010011227A JP2010011227A JP2011150532A JP 2011150532 A JP2011150532 A JP 2011150532A JP 2010011227 A JP2010011227 A JP 2010011227A JP 2010011227 A JP2010011227 A JP 2010011227A JP 2011150532 A JP2011150532 A JP 2011150532A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- tasks
- processing apparatus
- processing
- time limit
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、複数のタスクを並行して処理可能な情報処理装置に関し、特に、マルチスレッディングを行う情報処理装置、及びマルチコア・プロセッサとして構成される情報処理装置に関する。 The present invention relates to an information processing apparatus that can process a plurality of tasks in parallel, and more particularly, to an information processing apparatus that performs multithreading and an information processing apparatus configured as a multicore processor.
従来、ハードウエア・マルチスレッディングやソフトウエア・マルチスレッディングを行うことにより並行処理を実行可能とした情報処理装置が知られている。また、マルチコア・プロセッサと称される、一単位のCPU(プロセッサ)の中に複数のCPUコアを備える情報処理装置が同様に知られている。これらの情報処理装置では、複数のタスクを並行して処理可能となっている。 2. Description of the Related Art Conventionally, an information processing apparatus that can execute parallel processing by performing hardware multithreading or software multithreading is known. An information processing apparatus including a plurality of CPU cores in one unit CPU (processor) called a multi-core processor is also known. These information processing apparatuses can process a plurality of tasks in parallel.
ところで、情報処理装置が処理するタスクには、処理期限が設定されているものが存在する。特許文献1には、タスクに一定時間を与え、その時間が経過すると別のタスクに切り替わるTSS(Time Sharing System)機能を有する半導体集積回路について記載されている。
By the way, some tasks that are processed by the information processing apparatus have a processing time limit.
そして、この半導体集積回路は、プロセッサに対して一個のタイマを備え、特権モードによるプログラムの実行と非特権モードによるプログラムの実行のいずれかに同期したタイマを作動させている。これによって、割り込み等によってタスクの処理が中断した際にはタイマを一時停止させ、本来タスクに与えられている処理時間を確保できるように制御している。 This semiconductor integrated circuit includes a single timer for the processor, and operates a timer synchronized with either the execution of the program in the privileged mode or the execution of the program in the non-privileged mode. As a result, when task processing is interrupted by interruption or the like, the timer is temporarily stopped to control the processing time originally given to the task.
しかしながら、上記特許文献1に記載の半導体集積回路では、プロセッサに対して一個の汎用タイマのみを備えるため、複数のタスクを並行して処理する場合、一のタスクについてしか処理期限管理を行うことができず、他のタスクについての処理期限管理ができないことになる。
However, since the semiconductor integrated circuit described in
また、特定のタスク内で処理が固着するような異常の発生時には、割り込み等によって対応処理を行うのが通常であるが、この場合、一のタスクが処理期限違反を犯した場合に、全てのタスクをリセットすることになりかねない。 Also, when an abnormality occurs in which a process is stuck within a specific task, it is normal to perform a corresponding process by an interrupt, etc.In this case, if one task violates the process deadline, It can be a task reset.
また、ソフトウエアによってタイマのオン/オフ制御を行っているため、タイマによる計時精度が低下するおそれがある。 In addition, since the on / off control of the timer is performed by software, there is a possibility that the timing accuracy by the timer may be reduced.
本発明はこのような課題を解決するためのものであり、並行処理される複数のタスク毎の処理期限管理を、より高精度に行うことが可能な情報処理装置を提供することを、主たる目的とする。 The present invention is for solving such problems, and a main object of the present invention is to provide an information processing apparatus capable of performing processing deadline management for each of a plurality of tasks processed in parallel with higher accuracy. And
上記目的を達成するための本発明の一態様は、
一単位のプロセッサによって複数のタスクを並行して処理可能な情報処理装置であって、
前記複数のタスクの少なくとも一部には処理期限が設定され、
前記複数のタスクのうち処理期限が設定された複数のタスクに対応した、複数の処理期限管理用ハードウエア手段を備えることを特徴とする、
情報処理装置である。
In order to achieve the above object, one embodiment of the present invention provides:
An information processing apparatus capable of processing a plurality of tasks in parallel by a single processor,
A processing deadline is set for at least some of the plurality of tasks,
A plurality of processing time limit management hardware means corresponding to a plurality of tasks for which a processing time limit is set among the plurality of tasks,
Information processing apparatus.
ここで、複数のタスクを並行して処理可能な一単位のプロセッサとは、マルチスレッディングを行うシングルコアプロセッサやマルチコア・プロセッサ等、1パッケージに封入されたプロセッサをいう。 Here, one unit of processor capable of processing a plurality of tasks in parallel refers to a processor enclosed in one package, such as a single core processor or a multicore processor that performs multithreading.
この本発明の一態様によれば、複数のタスクのうち処理期限が設定された複数のタスクに対応した、複数の処理期限管理用ハードウエア手段を備えるため、並行処理される複数のタスク毎の処理期限管理を、より高精度に行うことができる。 According to this aspect of the present invention, since a plurality of processing time limit management hardware units corresponding to a plurality of tasks for which a processing time limit is set among a plurality of tasks are provided, for each of a plurality of tasks processed in parallel Processing time limit management can be performed with higher accuracy.
本発明の一態様において、
前記複数の処理期限管理用ハードウエア手段は、それぞれ専用の計時手段を備えることを特徴とするものとしてもよい。
In one embodiment of the present invention,
The plurality of processing time management hardware means may include dedicated time measuring means.
こうすれば、並行処理される可能性がある複数のタスク毎の処理期限管理を、更に高精度に行うことができる。 In this way, the processing time limit management for each of a plurality of tasks that may be processed in parallel can be performed with higher accuracy.
また、本発明の一態様において、
前記複数の処理期限管理用ハードウエア手段は、
前記一単位のプロセッサが実行するプログラムのプログラムカウンタの値を監視するプログラムカウンタ監視手段と、
前記複数のタスクのうち処理期限が設定された複数のタスクに対応した、プログラムカウンタの開始位置、終了位置、及び処理期限に関する情報を記憶した記憶手段と、
を備え、
前記プログラムカウンタ監視手段により前記プログラムカウンタの値が前記開始位置に至ったと判断された際に前記計時手段が計時開始し、該計時開始後、前記処理期限までに前記プログラムカウンタ監視手段により前記プログラムカウンタの値が前記終了位置に至ったと判断されなかった場合に、所定の異常検出時動作を行うことを特徴とするものとしてもよい。
In one embodiment of the present invention,
The plurality of processing time limit management hardware means,
Program counter monitoring means for monitoring a value of a program counter of a program executed by the one unit of processor;
Storage means for storing information on the start position, end position, and processing deadline of the program counter corresponding to a plurality of tasks for which a processing deadline is set among the plurality of tasks;
With
When the program counter monitoring means determines that the value of the program counter has reached the start position, the time counting means starts measuring time, and after the time measurement starts, by the program counter monitoring means, the program counter monitoring means When it is not determined that the value reaches the end position, a predetermined abnormality detection operation may be performed.
ここで、プログラムカウンタの開始位置、終了位置、及び処理期限に関する情報を記憶した記憶手段は、開始位置を記憶した記憶手段、終了位置を記憶した記憶手段、処理期限に関する情報を記憶した別体の記憶手段の集合であってもよいし、一の記憶手段の異なる記憶領域に開始位置、終了位置、及び処理期限に関する情報が記憶されたものであってもよい。 Here, the storage means that stores information on the start position, end position, and processing deadline of the program counter is a storage means that stores the start position, a storage means that stores the end position, and a separate storage that stores information on the processing deadline. It may be a set of storage means, or information regarding the start position, end position, and processing time limit may be stored in different storage areas of one storage means.
また、本発明の一態様において、
前記所定の異常検出時動作は、例えば、SFR(Special Function Resister)に異常検出を示す値を書き込む動作である。
In one embodiment of the present invention,
The predetermined abnormality detection operation is, for example, an operation of writing a value indicating abnormality detection in an SFR (Special Function Register).
これによって、OS(Operating System)等のソフトウエアから異常検出がなされたか否かを参照することができる。 This makes it possible to refer to whether or not an abnormality has been detected from software such as an OS (Operating System).
また、本発明の一態様は、
車両に搭載され、前記複数のタスクは、車載機器の制御を行うための演算処理を含んでもよい。
One embodiment of the present invention includes
The plurality of tasks mounted on the vehicle may include a calculation process for controlling the in-vehicle device.
車両に搭載される制御装置では、繰り返し同じ処理が実行され、且つタスクの数が固定である場合が多いため、本発明の奏する効果を十分に発揮することができる。 In a control device mounted on a vehicle, the same processing is repeatedly executed and the number of tasks is often fixed, so that the effect of the present invention can be sufficiently exerted.
本発明によれば、並行処理される複数のタスク毎の処理期限管理を、より高精度に行うことが可能な情報処理装置を提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the information processing apparatus which can perform the process time limit management for every several task processed in parallel with higher precision can be provided.
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。 DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments for carrying out the present invention will be described with reference to the accompanying drawings.
以下、図面を参照し、本発明の一実施例に係る情報処理装置1について説明する。
Hereinafter, an
[全体構成]
図1は、本発明の一実施例に係る情報処理装置1のシステム構成例である。情報処理装置1は、主要な構成として、CPU(Central Processing Unit)10と、複数の処理期限管理用ハードウエア20#1〜20#nと、を備える。
[overall structure]
FIG. 1 is a system configuration example of an
CPU10は、例えば、命令デコーダ、各種レジスタ、演算回路、キャッシュメモリ、プログラムカウンタ12等を有するシングルコアCPUである。CPU10は、図示しないプログラムメモリに格納されたプログラム(命令)を専用レジスタにフェッチし、これをデコードして実行することにより、種々の処理を行なうことができる。プログラムメモリとしては、例えばROM(Read Only Memory)やEEPROM(Electrically Erasable and Programmable Read Only Memory)等が用いられる。
The
また、CPU10は、例えばソフトウエア・マルチスレッディングを実行することにより、複数のタスクを並行して処理可能となっている。具体的には、例えば、まずタスクAの処理の一定時間を付与し、一定時間が経過するとタスクAの処理を一時停止してタスクBの処理を開始する。次いで、タスクBに付与された一定時間が経過するとタスクBの処理を一時停止してタスクCの処理を開始する。このように複数のタスクの処理を順次行うことにより、複数のタスクを並行して処理することができる。
The
CPU10は、ソフトウエア・マルチスレッディングに代えて、ハードウエア・マルチスレッディングを実行するものであってもよい。この場合、タスク毎に命令デコーダ等が設けられ、演算回路等の一部のハードウエアがスレッド間で共有される。
The
また、CPU10は、マルチコア・プロセッサとして構成され、これによって複数のタスクを並行して処理可能なものであってもよい。
Further, the
プログラムカウンタ12は、CPU10が現在実行している命令の、プログラムメモリ上のアドレスについての情報を保持するプログラムレジスタである。
The
複数の処理期限管理用ハードウエア20#1〜20#nは、情報処理装置1が実行する複数のタスク(並行して実行しないものを含んでもよい)のうち、処理期限が設定される複数のタスクに対応して備えられている。例えば処理期限が設定されるタスクの数が5である場合、情報処理装置1は、少なくとも5個の処理期限管理用ハードウエア20#1〜20#nを備えることが望ましい。
The plurality of processing time
複数の処理期限管理用ハードウエア20#1〜20#nのそれぞれは、同様な構成を有している。従って、以下の説明では、これらのうち一の処理期限管理用ハードウエアの内容についてのみ言及し(単に処理期限管理用ハードウエア20と表記する)、いずれの処理期限管理用ハードウエアであるかを識別するための符号「#k」(k=1〜n)は省略する。
Each of the plurality of processing time
[処理期限管理用ハードウエア]
処理期限管理用ハードウエア20は、タイマ設定レジスタ22と、カウント開始PC(プログラムカウンタ)レジスタ24と、カウント停止PC(プログラムカウンタ)レジスタ26と、初期値レジスタ28と、タイマ処理部30と、カウントレジスタ32と、アンダーフロー検知部34と、異常検出ステータスレジスタ36と、を備える。
[Processing time management hardware]
The processing time
タイマ設定レジスタ22は、タイマ処理部30及びカウントレジスタ32によって実現されるタイマの分解能、その他のコンフィグ情報を保持している。
The timer setting register 22 holds resolution of the timer realized by the
カウント開始PCレジスタ24は、当該処理期限管理用ハードウエアに対応したタスク(以下、単に「該当タスク」と称する)が開始される時点のプログラムカウンタ12の値を保持している。
The count
カウント停止PCレジスタ26は、該当タスクが終了する時点のプログラムカウンタ12の値を保持している。
The count stop PC register 26 holds the value of the
初期値レジスタ28は、該当タスクに付与される処理期限までの時間(開始時点を基準として処理終了するまでの目標時間をいう)に相当するカウントレジスタ32のカウンタ値を保持している。
The
カウント開始PCレジスタ24、カウント停止PCレジスタ26、及び初期値レジスタ28は、図1に示したように別体であってもよいが、同じレジスタ上の異なる記憶領域を指すものであっても構わない。
The count
タイマ処理部30は、プログラムカウンタ12を監視しており、プログラムカウンタ12の値がカウント開始PCレジスタ24に保持された値と一致したときに、初期値レジスタ28に保持された値をカウントレジスタ32に書き込むと共に、カウントレジスタ32のレジスタ値を所定のペースでデクリメントさせる。
The
ここで、タイマ処理部30には、例えば情報処理装置1全体に基準クロックを供給するクロックジェネレータから、基準クロックが供給されている。そして、この基準クロックの立ち上がり等のタイミングで、所定の値ずつカウントレジスタ32のレジスタ値をデクリメントさせる。
Here, for example, a reference clock is supplied to the
これによって、該当タスクに付与される処理期限が到来すると、カウントレジスタ32のレジスタ値がゼロとなる(アンダーフローする)ことになる。なお、前述のタイマ設定レジスタ22により保持されたコンフィグ情報は、情報処理装置1におけるいずれのクロックを選択するか、等の情報を含んでいる。
As a result, when the processing time limit assigned to the task arrives, the register value of the
更に、タイマ処理部30は、プログラムカウンタ12の値がカウント停止PCレジスタ26に保持された値と一致したときに、上記デクリメント処理を停止する。係る動作は、該当タスクが正常に終了した場合に行われる。なお、このデクリメント処理の終了時に、初期値レジスタ28に保持された値をカウントレジスタ32に書き込む処理を行っておいてもよい。
Furthermore, the
一方、アンダーフロー検知部34は、カウントレジスタ32のレジスタ値がゼロとなる(アンダーフローする)と、異常検出ステータスレジスタ36に所定の値を書き込む(特許請求の範囲における「所定の異常検出時動作」の一例である)。係る動作は、該当タスクが処理期限までに終了しなかった場合に行われる。
On the other hand, when the register value of the
異常検出ステータスレジスタ36は、いわゆるSFR(Special Function Resister)であり、CPU10その他のプロセッサにより実行されているソフトウエアからレジスタ値を参照可能となっている。
The abnormality
また、異常検出ステータスレジスタ36は、割り込み制御部50等によって参照されてよい。この場合、割り込み制御部50は、異常検出ステータスレジスタ36に所定の値が書き込まれているか否かを定期的に監視し、所定の値が書き込まれている場合には、該当するタスクを停止させる等の制御を実行する。
The abnormality detection status register 36 may be referred to by the interrupt
このような構成によって、本実施例の情報処理装置1では、タイマ処理部30によりプログラムカウンタ12の値が開始位置に至ったと判断された際にタイマ処理部30及びカウントレジスタ32によって実現されるタイマが計時開始し、その後、処理期限までにタイマ処理部30によりプログラムカウンタ12の値が終了位置に至ったと判断された場合には、正常に該当タスクが終了する。一方、タイマの計時開始後、タイマ処理部30によりプログラムカウンタ12の値が終了位置に至ったと判断されなかった場合に、所定の異常検出時動作を行うことになる。
With such a configuration, in the
これによって、処理期限の設定される複数のタスクについての処理期限管理を行うことができる。また、あるタスクにおいて処理期限違反が発生した場合に、当該タスクのみを停止すればよいため、他のタスクについて継続的に処理を実行することができる。 This makes it possible to perform processing time limit management for a plurality of tasks for which processing time limits are set. In addition, when a processing time limit violation occurs in a certain task, it is only necessary to stop the task, so that it is possible to continuously execute processing for other tasks.
更に、上記のように、タイマ処理部30、カウントレジスタ32、及び供給される基準信号等からなるハードウエア手段によって計時を行うため、計時精度を高くすることができ、より高精度に処理期限管理を行うことができる。
Further, as described above, since the time is measured by the hardware means including the
[処理フロー]
以下、情報処理装置1の各処理段階において実行される処理の流れについて説明する。図2は、情報処理装置1の電源投入時に開始される処理の流れを示すフローチャートである。
[Processing flow]
Hereinafter, the flow of processing executed in each processing stage of the
情報処理装置1に電源が投入されると、各種の初期化処理が実行される(S100)。具体的には、CPUの初期化、RAMの初期化、周辺ハードウエアの初期化、及び処理期限管理用ハードウエアの初期化等が実行される。
When the
ここで、処理期限管理用ハードウエアの初期化とは、図示しないROM等の不揮発性メモリから、タイマ設定レジスタ22、カウント開始PCレジスタ24、カウント停止PCレジスタ26、及び初期値レジスタ28に保持すべき値を読み出して、これらに書き込む処理をいう。
Here, initialization of the processing time limit management hardware is held in a timer setting register 22, a count
各種の初期化処理が終了すると、情報処理装置1は、通常動作を開始する(S102)。
When various initialization processes are completed, the
また、図3は、情報処理装置1における図示しないOS(Operating System)によって実行される処理期限違反監視処理の流れを示すフローチャートである。このOSは、CPUディスパッチャやキャッシュコントローラ等の機能を有している。
FIG. 3 is a flowchart showing a flow of processing time limit violation monitoring processing executed by an OS (Operating System) (not shown) in the
本フローは、例えば割り込み制御部50から割り込み信号が出力されたときに開始される。
This flow is started when an interrupt signal is output from the interrupt
まず、情報処理装置1におけるOSは、各処理期限管理用ハードウエアが有する異常検出ステータスレジスタ36の値を参照することにより、処理期限違反が発生したタスクが存在するか否かを判定する(S200)。処理期限違反が発生したタスクが存在しない場合は、本フローの1ルーチンを終了する。
First, the OS in the
処理期限違反が発生したタスクが存在する場合は、当該処理期限違反が発生したタスクの重要度に基づき、システムリセットが必要であるか否かを判定する(S202)。システムリセットが必要である場合とは、当該処理期限違反が発生したタスクが、装置全体の処理の影響を及ぼすような場合である。 If there is a task for which a processing time limit violation has occurred, it is determined whether or not a system reset is necessary based on the importance of the task for which the processing time limit violation has occurred (S202). The case where the system reset is necessary is a case where the task in which the processing time limit violation has occurred affects the processing of the entire apparatus.
システムリセットが必要であると判定した場合は、システムリセットを実行し(S204)、本フローの1ルーチンを終了する。この場合、例えば図2で説明したような初期化処理が実行される。 If it is determined that a system reset is necessary, the system reset is executed (S204), and one routine of this flow is terminated. In this case, for example, the initialization process described with reference to FIG. 2 is executed.
一方、システムリセットが不要であると判定した場合は、処理期限違反が発生したタスクに対する処置を実行する(S206)。具体的には、当該処理期限違反が発生したタスクの再初期化、停止等の処置を実行する。 On the other hand, when it is determined that the system reset is not necessary, a process for the task in which the processing time limit violation occurs is executed (S206). Specifically, a reinitialization or stop of the task in which the processing time limit violation has occurred is executed.
そして、当該処理期限違反が発生したタスクに対応した処理期限管理用ハードウエアの初期化処理を実行し(S208)、次タスクに処理を移行して(S210)、本フローの1ルーチンを終了する。処理期限違反が発生したタスクは、次回の処理時間が割り当てられた際に、初期状態から処理が開始されることになる。 Then, initialization processing of the processing time limit management hardware corresponding to the task in which the processing time limit violation has occurred is executed (S208), the processing is shifted to the next task (S210), and one routine of this flow is ended. . The task for which the processing time limit violation has occurred is started from the initial state when the next processing time is allocated.
[従来の装置との比較]
ここで、単独のタイマを備える従来の情報処理装置との比較について述べる。図4は、単独のタイマを備える従来の情報処理装置において、あるタスクに異常が発生し、よって処理期限違反が発生した様子を模式的に示す図である。本図では、従来の情報処理装置は、ソフトウエア・マルチスレッディングによって複数のタスクA〜Cを実行している。そして、タスクCのみについて処理期限管理を行っている。
[Comparison with conventional equipment]
Here, a comparison with a conventional information processing apparatus having a single timer will be described. FIG. 4 is a diagram schematically illustrating a state in which an abnormality has occurred in a task and a processing time limit violation has occurred in a conventional information processing apparatus having a single timer. In this figure, the conventional information processing apparatus executes a plurality of tasks A to C by software multithreading. Then, the processing time limit management is performed only for task C.
図4に示すように、従来の情報処理装置では、タスクCに異常が発生し、これによって処理期限違反が発生すると、全体の処理をリセットしなければならなかった。従って、それまで処理されていた他のタスクの内容が引き継がれない場合があった。 As shown in FIG. 4, in the conventional information processing apparatus, when an abnormality occurs in task C, and a processing time limit violation occurs, the entire process must be reset. Therefore, the contents of other tasks that have been processed until then may not be taken over.
一方、図5は、本実施例に係る情報処理装置1において、あるタスクに異常が発生し、これによって処理期限違反が発生した様子を模式的に示す図である。本図では、本実施例に係る情報処理装置1は、ソフトウエア・マルチスレッディングによって複数のタスクA〜Cを実行している。そして、タスクA〜Cについて処理期限管理を行っている。
On the other hand, FIG. 5 is a diagram schematically illustrating a state in which an abnormality has occurred in a certain task in the
図5に示すように、本実施例の情報処理装置1では、タスクCに異常が発生し、よって処理期限違反が発生しても、全体の処理をリセットしなくてもよい場合がある(前述のように、タスクCが装置全体の処理に影響を及ぼすような場合を除く)。従って、それまで処理されていた他のタスクの内容を以降に引き継ぐことができる。
As shown in FIG. 5, in the
[まとめ]
以上説明した本実施例の情報処理装置1によれば、処理期限の設定される複数のタスクについての処理期限管理を行うことができる。また、あるタスクにおいて処理期限違反が発生した場合に、他のタスクについて継続的に処理を実行することができる。
[Summary]
According to the
更に、計時精度を高くすることができ、より高精度に処理期限管理を行うことができる。 Furthermore, the timekeeping accuracy can be increased, and the processing time limit can be managed with higher accuracy.
従って、並行処理される複数のタスク毎の処理期限管理を、より高精度に行うことができる。 Therefore, the processing time limit management for each of a plurality of tasks processed in parallel can be performed with higher accuracy.
[適用例]
なお、本発明の情報処理装置は、車両に搭載され、車載機器制御を行う制御装置に、好適に適用される。この場合、複数のタスクは、例えばエンジンの各気筒に取り付けられたインジェクタの点火時期演算のように、車載機器制御を行うための演算処理等を含む。制御装置には、エンジンの状態を示すクランク角センサや筒内圧センサの出力値が入力され、制御装置では、これをAD(Analog Digital)変換してデジタルデータとして保持し、各種の演算を行う。このような制御装置では、繰り返し同じ処理が実行され、且つタスクの数nが固定である場合が多いため、本発明の奏する効果を十分に発揮することができる。
[Application example]
Note that the information processing apparatus of the present invention is suitably applied to a control apparatus that is mounted on a vehicle and performs in-vehicle device control. In this case, the plurality of tasks include, for example, calculation processing for performing on-vehicle equipment control, such as calculation of ignition timing of an injector attached to each cylinder of the engine. Output values of a crank angle sensor and an in-cylinder pressure sensor indicating the state of the engine are input to the control device, and the control device performs AD (Analog Digital) conversion and holds these as digital data to perform various calculations. In such a control device, the same processing is repeatedly executed, and the number n of tasks is often fixed, so that the effect of the present invention can be sufficiently exerted.
また、本発明の情報処理装置が複数個存在する場合(例えば車載機器制御を行う制御装置としての本発明の情報処理装置が、車両に複数個搭載されているような場合)、情報処理装置間のソフトウエアの移植が容易になるという効果が生じる。 In addition, when there are a plurality of information processing apparatuses according to the present invention (for example, when a plurality of information processing apparatuses according to the present invention as a control apparatus that performs in-vehicle device control is mounted in a vehicle) This makes it easier to port software.
図6は、タスクA〜Cの処理を実行している情報処理装置1Aと、タスクDの処理のみを実行している情報処理装置1Bが存在し、タスクCの処理を情報処理装置1Aから情報処理装置1Bに移管する様子を示す図である。このようなタスク処理の移管は、例えば情報処理装置1AのROM容量の問題で、処理タスクを減少させる必要が生じた際等に行われる。 In FIG. 6, there is an information processing apparatus 1A that performs processing of tasks A to C, and an information processing apparatus 1B that executes only processing of task D, and information on the processing of task C is received from the information processing apparatus 1A. It is a figure which shows a mode that it transfers to the processing apparatus 1B. Such transfer of task processing is performed, for example, when it is necessary to reduce processing tasks due to a ROM capacity problem of the information processing apparatus 1A.
このような場合において、双方の情報処理装置が、処理期限管理用ハードウエアを予め複数個備えておけば、タスク処理の移管の際に、タイマ設定レジスタ22、カウント開始PCレジスタ24、カウント停止PCレジスタ26、初期値レジスタ28に書き込む値をコピーするだけで、情報処理装置1Aにおいて行われていた処理期限管理を情報処理装置1Bに引き継ぐことができる。従って、処理期限管理に関するソフトウエアの書き換え等が不要となり、情報処理装置間のソフトウエアの移植を容易に行うことができる。
In such a case, if both information processing apparatuses are provided with a plurality of processing time limit management hardwares in advance, the timer setting register 22, the count
[変形例]
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
[Modification]
The best mode for carrying out the present invention has been described above with reference to the embodiments. However, the present invention is not limited to these embodiments, and various modifications can be made without departing from the scope of the present invention. And substitutions can be added.
例えば、タイマ設定レジスタ22、カウント開始PCレジスタ24、カウント停止PCレジスタ26、初期値レジスタ28等に書き込まれる値は、ROM等に記憶されている一定値であるかのように記述したが、OSによって変更可能な値としてもよい。この場合、単なるROMではなくEEPROM等の不揮発性メモリにこれらの値を記憶させるようにし、タスク処理の負荷等に応じて処理期限を動的に変更すると好適である。
For example, the values written in the timer setting register 22, the count
また、計時手段として、カウントレジスタ32を用いたデクリメントカウンタを例示したが、これに限らず、他の態様の計時手段を用いてもよい。
In addition, although the decrement counter using the
1 情報処理装置
10 CPU10
12 プログラムカウンタ
20(20#1〜20#n) 処理期限管理用ハードウエア
22 タイマ設定レジスタ
24 カウント開始PCレジスタ
26 カウント停止PCレジスタ
28 初期値レジスタ
30 タイマ処理部
32 カウントレジスタ
34 アンダーフロー検知部
36 異常検出ステータスレジスタ
50 割り込み制御部
1
12 Program counter 20 (20 # 1 to 20 # n) Processing time limit management hardware 22 Timer setting register 24 Count start PC register 26 Count
Claims (5)
前記複数のタスクの少なくとも一部には処理期限が設定され、
前記複数のタスクのうち処理期限が設定された複数のタスクに対応した、複数の処理期限管理用ハードウエア手段を備えることを特徴とする、
情報処理装置。 An information processing apparatus capable of processing a plurality of tasks in parallel by a single processor,
A processing deadline is set for at least some of the plurality of tasks,
A plurality of processing time limit management hardware means corresponding to a plurality of tasks for which a processing time limit is set among the plurality of tasks,
Information processing device.
前記複数の処理期限管理用ハードウエア手段は、それぞれ専用の計時手段を備えることを特徴とする、
情報処理装置。 The information processing apparatus according to claim 1,
The plurality of processing time limit management hardware means each include a dedicated time measuring means,
Information processing device.
前記複数の処理期限管理用ハードウエア手段は、
前記一単位のプロセッサが実行するプログラムのプログラムカウンタの値を監視するプログラムカウンタ監視手段と、
前記複数のタスクのうち処理期限が設定された複数のタスクに対応した、プログラムカウンタの開始位置、終了位置、及び処理期限に関する情報を記憶した記憶手段と、
を備え、
前記プログラムカウンタ監視手段により前記プログラムカウンタの値が前記開始位置に至ったと判断された際に前記計時手段が計時開始し、該計時開始後、前記処理期限までに前記プログラムカウンタ監視手段により前記プログラムカウンタの値が前記終了位置に至ったと判断されなかった場合に、所定の異常検出時動作を行うことを特徴とする、
情報処理装置。 An information processing apparatus according to claim 2,
The plurality of processing time limit management hardware means,
Program counter monitoring means for monitoring a value of a program counter of a program executed by the one unit of processor;
Storage means for storing information on the start position, end position, and processing deadline of the program counter corresponding to a plurality of tasks for which a processing deadline is set among the plurality of tasks;
With
When the program counter monitoring means determines that the value of the program counter has reached the start position, the time counting means starts measuring time, and after the time measurement starts, by the program counter monitoring means, the program counter monitoring means When it is not determined that the value of the value has reached the end position, a predetermined abnormality detection operation is performed,
Information processing device.
前記所定の異常検出時動作は、SFR(Special Function Resister)に異常検出を示す値を書き込む動作である、
情報処理装置。 The information processing apparatus according to claim 3,
The predetermined abnormality detection operation is an operation of writing a value indicating abnormality detection in an SFR (Special Function Register).
Information processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010011227A JP2011150532A (en) | 2010-01-21 | 2010-01-21 | Information processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010011227A JP2011150532A (en) | 2010-01-21 | 2010-01-21 | Information processing apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011150532A true JP2011150532A (en) | 2011-08-04 |
Family
ID=44537447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010011227A Pending JP2011150532A (en) | 2010-01-21 | 2010-01-21 | Information processing apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011150532A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016071903A (en) * | 2015-11-25 | 2016-05-09 | 日本精工株式会社 | Control device for on-vehicle electronic apparatus and control method |
JP2017174463A (en) * | 2014-09-25 | 2017-09-28 | 日本精工株式会社 | Controller and control method for on-vehicle electronic device |
JP2017208108A (en) * | 2014-09-25 | 2017-11-24 | 日本精工株式会社 | Device and method for controlling vehicle-mounted electronic devices |
JP2018139112A (en) * | 2018-03-09 | 2018-09-06 | 日本精工株式会社 | Control apparatus and control method for on-vehicle electronic device |
-
2010
- 2010-01-21 JP JP2010011227A patent/JP2011150532A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017174463A (en) * | 2014-09-25 | 2017-09-28 | 日本精工株式会社 | Controller and control method for on-vehicle electronic device |
JP2017199403A (en) * | 2014-09-25 | 2017-11-02 | 日本精工株式会社 | Control device and control method of on-vehicle electronic equipment |
JP2017208108A (en) * | 2014-09-25 | 2017-11-24 | 日本精工株式会社 | Device and method for controlling vehicle-mounted electronic devices |
JP2017215973A (en) * | 2014-09-25 | 2017-12-07 | 日本精工株式会社 | Control device and control method for on-vehicle electronic apparatus |
JP2017224304A (en) * | 2014-09-25 | 2017-12-21 | 日本精工株式会社 | Control device, and control method, for electronic device for on-vehicle use |
US10017205B2 (en) | 2014-09-25 | 2018-07-10 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
JP2016071903A (en) * | 2015-11-25 | 2016-05-09 | 日本精工株式会社 | Control device for on-vehicle electronic apparatus and control method |
JP2018139112A (en) * | 2018-03-09 | 2018-09-06 | 日本精工株式会社 | Control apparatus and control method for on-vehicle electronic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105765541B (en) | Controller for motor vehicle | |
US9436464B2 (en) | Instruction-issuance controlling device and instruction-issuance controlling method | |
CN101344842B (en) | Multithreading processor and multithreading processing method | |
US8578136B2 (en) | Apparatus and method for mapping architectural registers to physical registers | |
JP2006260571A (en) | Dual thread processor | |
JP2011150532A (en) | Information processing apparatus | |
JP2013225208A (en) | Information processing apparatus, information processing method and program | |
JP2005050208A (en) | Memory managing system in multi-task system and task controller | |
JP6250447B2 (en) | Semiconductor device and instruction read control method | |
US11086658B2 (en) | System performance enhancement with SMI on multi-core systems | |
JP5699896B2 (en) | Information processing apparatus and abnormality determination method | |
US20140089646A1 (en) | Processor with interruptable instruction execution | |
US7516311B2 (en) | Deterministic microcontroller context arrangement | |
JP2011216004A (en) | Microprocessor, electronic control unit, execution ratio switching method | |
JP5644380B2 (en) | Information processing device | |
JP2009175960A (en) | Virtual multiprocessor system | |
US7562207B2 (en) | Deterministic microcontroller with context manager | |
JP2005242806A (en) | Data processor | |
JP2010140239A (en) | Apparatus and method for shortening interrupt latency | |
JP2005100017A (en) | Processor simulator, interruption delay count program and simulation method of processor | |
JP2013164791A (en) | Data processor | |
JP7314838B2 (en) | electronic controller | |
JP2013167945A (en) | Information processing device, task wake-up control method, and task start-up control program | |
US9342359B2 (en) | Information processing system and information processing method | |
JP2006195705A (en) | Processor |