JP5798314B2 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP5798314B2
JP5798314B2 JP2010254749A JP2010254749A JP5798314B2 JP 5798314 B2 JP5798314 B2 JP 5798314B2 JP 2010254749 A JP2010254749 A JP 2010254749A JP 2010254749 A JP2010254749 A JP 2010254749A JP 5798314 B2 JP5798314 B2 JP 5798314B2
Authority
JP
Japan
Prior art keywords
task
global variable
update
data
public
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
JP2010254749A
Other languages
English (en)
Other versions
JP2012108582A (ja
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2010254749A priority Critical patent/JP5798314B2/ja
Priority to DE201110055205 priority patent/DE102011055205A1/de
Publication of JP2012108582A publication Critical patent/JP2012108582A/ja
Application granted granted Critical
Publication of JP5798314B2 publication Critical patent/JP5798314B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、処理プログラムにおいて、優先度が相対的に高い上位タスクと優先度が相対的に低い下位タスクとの間で共通のデータを使用する情報処理装置に関する。
例えば車両に搭載される電子制御装置(以下「ECU」という)に用いられる処理プログラムでは、制御応答性や安全性の確保等から所定の処理をリアルタイムに実行する必要性がある。このようなリアルタイム性が要求される処理では、一般に、「割り込み」を実行する。すなわち、メインルーチンの実行中にイベントの発生等があると、メインルーチンの実行を一時的に中断して割り込みルーチンを実行し、割り込みルーチンの終了後にメインルーチンを再開する。これにより、リアルタイム性を要求する優先度の高い処理を優先的に実行する。
このような処理では、処理プログラムは、実行単位としてのタスク毎に優先度が設定される。上記の例では、メインルーチンは、優先度が相対的に低い「下位タスク」に相当し、割り込みルーチンは、優先度が相対的に高い「上位タスク」に相当する。ここで、上位タスクと下位タスクとの間で共通に使用されるデータを「グローバル変数」という。割り込みがされるとき、グローバル変数の更新および参照に伴う「同時性」が問題となることがある。例えば、更新および参照処理において、割り込みの発生によって、一つのタスクが同時に参照すべき複数のデータが別々に参照される場合や、複数のタスク間で共通に参照されるべきデータが同一とならない場合には、「データの同時性」が問題となる。
この問題に対処するため、従来、下位タスクの実行中に割り込み禁止処理を実行する情報処理装置が知られている。すなわち、下位タスクで複数のグローバル変数が更新または参照される間に上位タスクの割り込みを禁止する。
また、特許文献1には、グローバル変数を「公開領域」と「作業領域」の2つの領域に重複させて記憶させ、グローバル変数の参照と更新とを別々の領域で行い、参照が終了した時点で作業領域と公開領域とを切り替える「領域切換処理」を実行する情報処理装置が開示されている。
特許第3783553号公報
しかしながら、割り込み禁止処理をすると、本来優先度の高い上位タスクの実行開始が下位タスクの処理完了まで待たされることとなり、リアルタイム性を損なう。
また、特許文献1の方法は、現在どちらの領域が作業領域でありどちらの領域が公開領域であるかの情報を管理する「領域情報記憶手段」が必要となる上、グローバル変数の参照時にその管理情報をも確認せねばならず、処理負荷が増大するという問題がある。
加えて、何らかの理由で上位タスクがグローバル変数の更新を停止した場合、下位タスクは更新前の古いデータを使用し、さらに更新停止が続くと、更新後の最新データと更新前の過去データとを交互に参照して使用するという、いわゆるデータハンチングの問題が生じる。
かかる問題は、公開領域と作業領域とを動的に切り替えることによって発生する問題である。
本発明は、このような点に鑑みて創作されたものであり、その目的は、処理プログラムのタスクが当該タスクとは優先度が異なるタスクにて更新されるデータを参照する情報処理装置において、処理負荷の増大やデータハンチングを生じることなく、データの同時性を確保することにある。
請求項1からに記載の情報処理装置は、処理プログラムの実行単位となる複数のタスクを当該複数のタスク毎に設定される優先度に基づき、前記優先度が相対的に高い上位タスクの実行により前記優先度が相対的に低い下位タスクの実行が一時的に中断され、前記上位タスクの終了時に前記下位タスクが中断位置から再開されるよう実行することによって一連の機能を実現する情報処理装置である。この情報処理装置は、優先度が相対的に高い上位タスクと優先度が相対的に低い下位タスクとの間で共通に使用されるグローバル変数を記憶する2つの記憶領域を設定する。
ここで、「下位タスクによるグローバル変数の参照途中で上位タスクによってグローバル変数が更新される可能性のあるケース」を「第1のケース」という。請求項1からに記載の情報処理装置は、「第1のケース」を対象とする。
上位タスクは、2つの記憶領域の一方である作業領域を使用してグローバル変数を更新する上位更新処理を実行する。下位タスクは、2つの記憶領域の他方である公開領域を使用してグローバル変数を参照する下位参照処理を実行する。そして、下位タスク中の下位参照処理の実行時を除く所定の時期であって、下位参照処理を開始する前に、作業領域から公開領域へグローバル変数を複製する複製処理を実行する。
例えば、下位タスクに含まれる第1サブタスクと第2サブタスクとが、あるグローバル変数を共通に使用する場合を考える。仮に、第1サブタスクがグローバル変数を参照した後、第2サブタスクがグローバル変数を参照する前に上位更新処理が実行されると、第1サブタスクは更新前の古いデータを参照し、第2サブタスクは更新後の新しいデータを参照することとなり、データの同時性が破綻する。その結果、第1サブタスクと第2サブタスクとが同一のデータを必要とする場合、演算が破綻する。
そこで、作業領域と公開領域とを静的に決定し、下位タスク中の所定の時期に作業領域から公開領域への複製処理を実行する。そして、第1サブタスクおよび第2サブタスクが、公開領域に複製されたグローバル変数を共に参照するようにする。ここで、各タスクは、例えばタイマに設定した周期で発生し、基本的に開始タイミングが変動することはないため、タイマの設定により、所定の時期に複製処理を実行することができる。
これにより、下位タスク中に実行される上位更新処理の影響を受けることなく、第1サブタスクと第2サブタスクとの間でデータの同時性を確保することができる。
拡張して言えば、下位参照処理における複数のサブタスク間でのデータの同時性を確保することができる。
また、従来技術の領域切換処理のように領域情報記憶手段を必要としないので、処理負荷を低減することができる。
さらに、領域切換処理においては、何らかの理由で上位更新処理が停止した場合、その後の領域切換処理で、更新後の最新データと更新前の過去データとが交互に繰り返し公開領域に記憶される。すると、下位タスクは、最新データと過去データとを交互に参照して使用するというデータハンチングが生じ、制御上重大な問題を招くおそれがある。それに対し、本発明による複製処理では、上位更新処理が停止した場合でも、下位タスクは、常に最新データを参照することができ、データハンチングは発生しない。
加えて、この情報処理装置は、下位タスク中の下位参照処理を開始する前に複製処理を実行する。
従来技術の領域切換処理によると、下位参照処理では直前の領域切換処理で公開領域に記憶されたデータを参照する。そのため、領域切換処理を実行する下位タスクの実行周期よりも上位更新処理の実行周期が速い場合、領域切換処理後に上位更新処理で更新された最新のデータを参照することができない。よって、参照データの遅延が発生する。
それに対し、下位タスク中の下位参照処理を開始する前に複製処理を実行することで、下位参照処理において最新のデータを使用することができる。
加えて、この情報処理装置は、上位更新処理が複製処理の実行中に実行されることを禁止する割り込み禁止処理を実行する。
仮に、複数のグローバル変数についての複製処理の実行途中に上位更新処理が実行された場合、下位タスクは、一部のグローバル変数については更新前のデータを参照し、残りのグローバル変数については更新後のデータを参照するためデータの同時性が破綻する。そこで、割り込み禁止処理により、複数のグローバル変数についての複製処理が上位更新処理の前後に跨らないようにすることで、データの同時性破綻を回避することができる。
加えて、この情報処理装置は、下位タスクに含まれる複数の下位参照処理で参照される複数のグローバル変数について共通の割り込み禁止処理を実行する。
複数のグローバル変数について、共通の割り込み禁止処理を実行することで、各グローバル変数について個々に割り込み禁止処理を実行する場合に比べ、情報処理装置の処理負荷を低減することができる。
さらに、割り込み禁止処理は、優先度の高い上位タスクの実行を遅らせるためリアルタイム性を損なうというデメリットを伴う。そのため、割り込み禁止処理を共通にして回数を減らすことで、リアルタイム性への影響を最小限に抑えることができる。
請求項に記載の情報処理装置は、複数の下位タスク毎に複数の公開領域を割り当て、複製処理において、それぞれの下位タスクで使用されるグローバル変数を作業領域から複数の公開領域へ複製する。
複数の下位タスクが存在する場合、仮に、複製処理を実行する下位タスクよりも優先度が高い下位タスクの実行周期が速い場合、優先度が高い下位タスクは、最新のデータを参照することができない。そこで、本請求項に係る構成を採用し、それぞれの下位タスクが複製処理を実行すれば、各下位タスクの実行周期に応じて、最新データを参照することができる。
また、複数の下位タスクが存在する場合、仮に、優先度が相対的に低い下位タスクの実行途中に優先度が相対的に高い別の下位タスクによって複製処理が実行されると、優先度が相対的に低い下位タスクは、一部のグローバル変数については更新前のデータを参照し、残りのグローバル変数については更新後のデータを参照するためデータの同時性が破綻する。そこで、本請求項に係る構成を採用することにより、データの同時性破綻を回避することができる。
次に、上述の「第1のケース」に対し、「下位タスクによるグローバル変数の更新途中で上位タスクによってグローバル変数が参照される可能性のあるケース」を「第2のケース」という。請求項に記載の情報処理装置は、「第2のケース」を対象とする。
下位タスクは、2つの記憶領域の一方である作業領域を使用してグローバル変数を更新する下位更新処理を実行する。上位タスクは、2つの記憶領域の他方である公開領域を使用してグローバル変数を参照する上位参照処理を実行する。そして、下位タスク中の下位更新処理の実行時を除く所定の時期であって、下位更新処理を開始する前に、作業領域から公開領域へグローバル変数を複製する複製処理を実行する。
例えば、下位タスクが、第1グローバル変数を更新する第1サブタスクと第2グローバル変数を更新する第2サブタスクとを含み、上位タスクが第1グローバル変数および第2グローバル変数を共に使用する場合を考える。仮に、第1サブタスクが第1グローバル変数を更新した後、第2サブタスクが第2グローバル変数を更新する前に上位参照処理が実行されると、上位タスクは、第1グローバル変数については更新後の新しいデータを参照し、第2グローバル変数については更新前の古いデータを参照することとなり、データの同時性が破綻する。その結果、第1グローバル変数と第2グローバル変数とに関連性があり、同じタイミングで更新されたデータを必要とする場合、演算が破綻する。
そこで、作業領域と公開領域とを静的に決定し、下位タスク中の所定の時期に作業領域から公開領域への複製処理を実行する。そして、上位タスクが、公開領域に複製された第1グローバル変数および第2グローバル変数を共に参照するようにする。ここで、各タスクは、例えばタイマに設定した周期で発生し、基本的に開始タイミングが変動することはないため、タイマの設定により、所定の時期に複製処理を実行することができる。
これにより、上位参照処理において、第1グローバル変数と第2グローバル変数との同時性を確保することができる。
拡張して言えば、上位参照処理における複数のグローバル変数の同時性を確保することができる。
また、この情報処理装置は、下位タスク中の下位更新処理を開始する前に複製処理を実行する。
これにより、複製処理後の下位タスクの処理時間のばらつきなどに関係なく、下位更新処理で更新されたデータを常に一定のタイミングで公開領域に複製し、上位タスクが参照可能な状態にすることができる。すなわち、外的要因に対し安定した特性を維持するロバスト性に優れる。
また、この情報処理装置は、上位参照処理が複製処理の実行中に実行されることを禁止する割り込み禁止処理を実行する。
仮に、複数のグローバル変数についての複製処理の実行途中に上位参照処理が実行された場合、上位タスクは、一部のグローバル変数については更新前のデータを参照し、残りのグローバル変数については更新後のデータを参照するためデータの同時性が破綻する。そこで、割り込み禁止処理により、複数のグローバル変数についての複製処理が上位参照処理の前後に跨らないようにすることで、データの同時性破綻を回避することができる。
また、この情報処理装置は、下位タスクに含まれる複数の下位更新処理で更新される複数のグローバル変数について共通の割り込み禁止処理を実行する。
複数のグローバル変数について、共通の割り込み禁止処理を実行することで、各グローバル変数について個々に割り込み禁止処理を実行する場合に比べ、情報処理装置の処理負荷を低減することができる。
さらに、割り込み禁止処理は、優先度の高い上位タスクの実行を遅らせるためリアルタイム性を損なうというデメリットを伴う。そのため、割り込み禁止処理を共通にして回数を減らすことで、リアルタイム性への影響を最小限に抑えることができる。
請求項に記載の情報処理装置は、複数の上位タスク毎に複数の公開領域を割り当て、複製処理において、それぞれの上位タスクで使用されるグローバル変数を作業領域から複数の公開領域へ複製する。
これにより、例えば、上位タスク毎に、割り当てられた公開領域への複製処理のタイミングをずらすことができる。仮に、第1上位タスクが「常に一定のタイミングで更新されるデータを要求するタスク」であり、第2上位タスクが「常に最新のデータを要求するタスク」であるとする。そこで、第1上位タスク用の公開領域への複製は、下位タスク中の下位更新処理を開始する前に実行することでロバスト性を向上させる。一方、第2上位タスク用の公開領域への複製は、下位タスク中の下位更新処理を完了した後に実行することで最新のデータを参照可能とする。このように、上位タスクの特性に応じて複製処理を実行することができる。
本発明の第1〜第8実施形態による情報処理装置を適用した電動パワーステアリング装置の概略構成図。 本発明の第1〜第8実施形態による情報処理装置のシステム図。 (a):本発明の第1実施形態に対する比較例を説明する説明図、(b):本発明の第1実施形態(第1のケース)による上位更新/下位参照処理を説明する説明図。 本発明の第1実施形態に対する別の比較例(従来技術)を説明する説明図。 (a):本発明の第1実施形態に対する別の比較例(従来技術)を説明する説明図、(b):本発明の第1実施形態による上位更新/下位参照処理を説明する説明図。 (a):本発明の第2実施形態に対する比較例を説明する説明図、(b):本発明の第2実施形態(第1のケース)による上位更新/下位参照処理を説明する説明図。 本発明の第3実施形態(第1のケース)による上位更新/下位参照処理を説明する説明図。 (a):本発明の第4実施形態に対する比較例を説明する説明図、(b):本発明の第4実施形態(第1のケース)による上位更新/下位参照処理を説明する説明図。 (a):本発明の第5実施形態に対する比較例を説明する説明図、(b):本発明の第5実施形態(第2のケース)による下位更新/上位参照処理を説明する説明図。 (a):本発明の第6実施形態に対する比較例を説明する説明図、(b):本発明の第6実施形態(第2のケース)による下位更新/上位参照処理を説明する説明図。 本発明の第7実施形態(第2のケース)による下位更新/上位参照処理を説明する説明図。 (a):本発明の第8実施形態に対する比較例を説明する説明図、(b):本発明の第8実施形態(第2のケース)による下位更新/上位参照処理を説明する説明図。
自動車等のハンドル操作をアシストするための電動パワーステアリング装置に本発明の情報処理装置を適用した実施形態を図面に基づいて説明する。
(第1実施形態)
図1は、電動パワーステアリング装置を備えたステアリングシステムの全体構成を示す。ステアリングシステム90に備えられる電動パワーステアリング装置1は、ハンドル91に接続されたステアリングシャフト92に操舵トルクを検出するためのトルクセンサ94を設置している。
ステアリングシャフト92の先端にはピニオンギア96が設けられており、ピニオンギア96はラック軸97に噛み合っている。ラック軸97の両端には、タイロッド等を介して一対の車輪98が回転可能に連結されている。
これにより、運転者がハンドル91を回転させると、ハンドル91に接続されたステアリングシャフト92が回転し、ステアリングシャフト92の回転運動は、ピニオンギア96によってラック軸97の直線運動に変換され、ラック軸97の直線運動変位に応じた角度について一対の車輪98が操舵される。
電動パワーステアリング装置1は、操舵アシストトルクを発生するモータ80、モータ80の回転を減速してステアリングシャフト92に伝える減速ギア89、及び、モータ駆動装置2を備える。モータ80は3相ブラシレスモータであり、減速ギア89を正逆回転させる。モータ駆動装置2は、「情報処理装置」としてのECU(電子制御装置)10を備える。モータ駆動装置2は、また、モータ80の回転角を検出する回転角センサ85、上述のトルクセンサ94、車速を検出する車速センサ95を含む。
この構成により、電動パワーステアリング装置1は、ハンドル91の操舵を補助するための操舵アシストトルクを発生し、ステアリングシャフト92に伝達する。
図2にECUのシステム概略図を示す。ECU10は、マイクロコンピュータ(以下「マイコン」という)11、入力回路16および出力回路17を備えている。
マイコン11は、処理プログラムを実行するCPU(中央演算処理装置)12、CPU12によって実行される処理プログラムを記憶するROM13、CPU12による演算結果等を記憶するためのRAM14、及び、入力回路16および出力回路17との間で信号をやり取りするためのI/O15を備えている。
RAM14には、後述するグローバル変数を記憶する2つの記憶領域として、作業領域および公開領域が設けられている。本実施形態では、グローバル変数をcと表し、作業領域をC1と表し、公開領域をC2と表す。なお、複数のグローバル変数を使用する他の実施形態では、各グローバル変数について作業領域および公開領域が設けられる。
入力回路16は、マイコン11の制御の条件とするための各種センサからの信号を入力する。出力回路17は、マイコン11の制御に応じてアクチュエータを駆動する。
本実施形態では、入力回路16は、上述の回転角センサ85、トルクセンサ94および車速センサ95からの信号を入力し、出力回路17は、マイコン11の制御に応じてモータ80を駆動する。
以上の構成によるECU10において、マイコン11が実行する処理プログラムは、実行単位である複数のタスクに細分化されて記述されている。複数のタスクには優先度が設定されており、ECU10は、複数のタスクを優先度に基づき実行することによって、一連の機能を実現する。優先度が相対的に高いタスクを「上位タスク」といい、優先度が相対的に低いタスクを「下位タスク」という。
上位タスクは、例えば、制御応答性や安全性の確保等からリアルタイムに処理を実行する必要性の高いタスクである。そのため、上位タスクは一般的に「割り込みルーチン」として設定され、イベントの発生等をトリガとして、下位タスクである「メインルーチン」の実行中に優先して実行される。すなわち、上位タスクの実行により下位タスクの実行が一時的に中断され、上位タスク終了後に下位タスクが中断位置から再開される。
ここで、上位タスクと下位タスクとの間で共通に使用されるデータを「グローバル変数」という。グローバル変数は、上位タスクで更新され下位タスクで参照される場合、あるいは、下位タスクで更新され上位タスクで参照される場合がある。このような更新および参照処理において、割り込みの発生によって、一つのタスクが同時に参照すべき複数のデータが別々に参照される場合や、複数のタスク間で共通に参照されるべきデータが同一とならない場合には、「データの同時性」が問題となる。
この問題に対処するため、本発明では、作業領域と公開領域とを静的に決定し、下位タスク中の所定の時期に、作業領域から公開領域にグローバル変数を複製する「複製処理」を実行することを特徴とする。ここで、各タスクは、例えばタイマに設定した周期で発生し、基本的に開始タイミングが変動することはないため、タイマの設定により、所定の時期に複製処理を実行することができる。
以下、実施形態ごとに、上位タスクと下位タスクとの間でのグローバル変数の更新および参照処理について説明する。
最初に説明する第1〜第4実施形態は、「下位タスクによるグローバル変数の参照途中で上位タスクによってグローバル変数が更新される可能性がある」場合の処理に係る実施形態である。このケースを「第1のケース」という。
本発明の第1実施形態による処理を図3〜5に基づいて説明する。第1実施形態は、第1のケースで、下位タスクの開始時に複製処理を実行する。
図3(a)は、第1実施形態に対する比較例として、複製処理がされない場合を示す。上位タスクSによる上位更新処理では、公開領域Cのグローバル変数cを更新する。下位タスクVのサブタスクXおよびサブタスクYによる下位参照処理では、公開領域Cのグローバル変数cを参照する。
以下、サブタスクXおよびサブタスクYは、下位タスクVを構成し、グローバル変数を更新または参照するタスクである。また、図中、下位タスクVのうちサブタスクXおよびサブタスクYを除く部分は、グローバル変数を使用しないタスクを意味する。下位タスクVのうち破線で指示する部分は、上位タスクSの割り込みによって下位タスクVの実行が中断されることを意味する。
下位タスクV1においては、サブタスクXおよびサブタスクYによる下位参照処理後に、上位タスクS1による上位更新処理が行われるため、下位タスクVに参照されるグローバル変数cの同時性に関する問題はない。
一方、下位タスクV2においては、サブタスクXによる下位参照処理後、サブタスクYによる下位参照処理の実行前に上位タスクS2による上位更新処理が行われる。この事例は、例えば、サブタスクXの処理時間が長くかかる場合に起こり得る。この場合、サブタスクXは更新前の古いデータを参照し、サブタスクYは更新後の新しいデータを参照することとなり、サブタスクXとサブタスクYとの間でのグローバル変数cの同時性が破綻する(N101)。
図3(b)は、第1実施形態により、下位タスクの開始時に複製処理を実行する場合を示す。上位タスクSは、作業領域C1のグローバル変数cを更新する。下位タスクVは、開始時tiに作業領域C1のグローバル変数cを公開領域C2に複製する。下位タスクVのサブタスクXおよびサブタスクYは、それぞれ公開領域C2のグローバル変数cを参照する。なお、図中「c」は複製されるグローバル変数を表し、「(c)」は参照されるグローバル変数を表す。以下、各図にて、適宜、グローバル変数を同様に表示する。
下位タスクV2において、サブタスクXおよびサブタスクYは、下位タスクV2の開始時tiに複製されたグローバル変数cを共に参照する。したがって、下位タスクV2中に発生する上位タスクS2に影響されることなく、サブタスクXおよびサブタスクYの下位参照処理におけるグローバル変数cの同時性が確保される(N111)。
次に、図4および図5(a)は、第1実施形態に対する別の比較例として、特許文献1の従来技術による「領域切換処理」を示す。図4に示すように、上位タスクSは、作業領域Z1のグローバル変数zを更新する。また、下位タスクV1のサブタスクYの完了時に作業領域Z1と公開領域Z2とを切り換える。その次の周期の下位タスクV2では、サブタスクXおよびサブタスクYは、公開領域Z2のグローバル変数zを参照する。
この領域切換処理では、サブタスクXおよびサブタスクYは、1周期前のサブタスクYの完了時以前に作業領域Z1に記憶されていたデータを参照することとなる。その結果、上位タスクSの実行周期が下位タスクVの実行周期よりも速い場合には、下位タスクVの下位参照処理において下位タスクVの1周期分のデータ遅延が発生する。
これに対し、第1実施形態では、図3(b)に示すように、下位タスクVの開始時tiにおける最新データを参照することができ、1周期分のデータ遅延は発生しない。
また、従来技術による領域切換処理で、図5(a)に示すように、何らかの理由で上位タスクSが作業領域Z1でのデータ更新を停止した場合を想定する。上位タスクS1で更新された最新データは下位タスクV1のサブタスクYの完了時に公開領域Z2に記憶され、下位タスクV1の次周期の下位タスクV2ではこの最新データを参照する。しかし、次周期の下位タスクV3では、2周期前に公開領域Z2にあったデータ、すなわち、下位タスクV1が参照した過去データを参照することとなる。そして、下位タスクV3の次周期の下位タスクV4では、再び最新データを参照し、その後、過去データと最新データとを交互に繰り返し参照し使用するため、データハンチングが生じ、制御上重大な問題を招くおそれがある。
これに対し、第1実施形態では、図5(b)に示すように、上位タスクSが作業領域C1でのデータ更新を停止した場合でも、下位タスクVは、常に最新データを参照することができ、データハンチングは発生しない。
以上のように、第1実施形態は、複製処理を行うことにより、複数のデータ間の同時性を確保することができる。
また、従来技術による領域切換処理と比較すると、下位タスクの1周期分のデータ遅延が発生しない。また、データハンチングの問題がないため、特にデータハンチングが問題となるようなシステムでは有効である。
(第2実施形態)
本発明の第2実施形態による処理を図6に基づいて説明する。第2実施形態は、第1のケースで、複数のグローバル変数についての複製処理の実行中に、上位更新処理の割り込みを禁止する「割り込み禁止処理」を実行する。
図6(a)は、第2実施形態に対する比較例として、割り込み禁止処理がされない場合を示す。上位タスクSは作業領域C1、D1のグローバル変数c、dを更新する。下位タスクVのサブタスクXおよびサブタスクYは、下位タスクVの開始時tiの後、公開領域C2、D2からグローバル変数c、dを参照する。
下位タスクV1においては、上位タスクSの影響を受けることなく、サブタスクXおよびサブタスクYが参照するグローバル変数c、dの同時性が確保される。また、下位タスクV2においても、実行途中で発生する上位タスクS2は、作業領域C1、D1から公開領域C2、D2への複製処理に影響しないため、グローバル変数c、dの同時性が確保される(N202)。
一方、下位タスクV3では、グローバル変数cの複製後、グローバル変数dの複製前に上位タスクS3が発生してデータが更新される。したがって、サブタスクXおよびサブタスクYは、グローバル変数cについては更新前の古いデータを参照し、グローバル変数dについては更新後の新しいデータを参照することとなる。その結果、下位参照処理におけるグローバル変数c、dの同時性が破綻する(N203)。
図6(b)は、第2実施形態により、複製処理の実行時に割り込み禁止処理を行う場合を示す。下位タスクVの開始時tiの後、2点鎖線で示すように、上位タスクSによる上位更新処理の割り込みが禁止される割り込み禁止期間Pintが、サブタスクXおよびサブタスクYについて共通に設定される。そして、割り込み禁止期間Pint中に複製処理が実行される。
下位タスクV3では、下位タスクVの開始時tiの後、割り込み禁止期間Pintが終了するまで上位タスクS3の実行開始が待たされる。その結果、上位タスクS3の影響を受けずに作業領域C1、D1から公開領域C2、D2への複製処理がされるため、グローバル変数c、dの同時性が確保される(N213)。
これにより、第2実施形態では、複数のグローバル変数についての複製処理が上位更新処理の前後に跨らないようにすることで、データの同時性破綻を回避することができる。
また、グローバル変数c、dについて、共通の割り込み禁止処理を実行するため、各グローバル変数について個々に割り込み禁止処理を実行する場合に比べ、ECU10の処理負荷を低減することができる。
さらに、割り込み禁止処理は、優先度の高い上位タスクの実行を遅らせるためリアルタイム性を損なうというデメリットを伴う。そのため、割り込み禁止処理を共通にして回数を減らすことで、リアルタイム性への影響を最小限に抑えることができる。
(第3実施形態)
本発明の第3実施形態による処理を図7に基づいて説明する。第3実施形態は、第1のケースで、下位タスクの完了時に複製処理を実行する。
下位タスクV1では、サブタスクXおよびサブタスクYによる下位参照処理の実行後に上位タスクS1による上位更新処理がされるため、データの同時性に関する問題はない。一方、下位タスクV2では、サブタスクXによる下位参照処理の実行後、サブタスクYによる下位参照処理の実行前に上位タスクS2が発生する。しかし、作業領域C1から公開領域C2への複製処理は下位タスクV2の完了時tfにされるため、サブタスクYは更新前のデータを参照し、サブタスクXとの間でデータの同時性が確保される(N312)。
第3実施形態では、第1実施形態と同様に、複数のデータ間の同時性を確保することができる。
(第4実施形態)
本発明の第4実施形態による処理を図8に基づいて説明する。第4実施形態は、第1のケースで、複数の下位タスク毎に複数の公開領域を割り当て、複製処理において、それぞれの下位タスクで使用されるグローバル変数を作業領域から公開領域へ複製する。
図8(a)は、第4実施形態に対する比較例として、複数の下位タスクが1つの公開領域を共用する場合を示す。上位タスクSは作業領域C1のグローバル変数cを更新する。下位タスクは、優先度が高い順に3つの下位タスクU、V、Wを含み、優先度が相対的に高い下位タスクは、優先度が相対的に低い下位タスクの実行中に割り込んで実行される。下位タスクUは、下位タスクVよりも実行周期が速い。下位タスクWのうち破線で指示する部分は、上位タスクSまたは下位タスクU、Vの割り込みによって下位タスクWの実行が中断されることを意味する。
また、下位タスクVの開始時tiにグローバル変数cの複製処理が実行される。下位タスクU、V、Wは、いずれもグローバル変数cを参照する。
この場合、問題点が2つある。問題点の1つめは、下位タスクUが参照するデータの遅延に関する。上位タスクS2の後に発生する下位タスクU2は、本来最新のグローバル変数cを参照するのが望ましい。しかし、下位タスクV2による複製処理が下位タスクU2の後に実行されるため、下位タスクU2は、1周期前の下位タスクV1で複製された古いデータを参照することとなる(N401)。
問題点の2つめは、下位タスクWが参照するデータの同時性に関する。下位タスクW1の実行中には下位タスクV1による複製処理がされないため、データの同時性に関する問題はない。一方、下位タスクW2の実行中には下位タスクV2による複製処理がされる。すると、下位タスクW2では、グローバル変数cについて、下位タスクV2の実行前には更新前の古いデータを参照し、下位タスクV2の実行後には更新後の新しいデータを参照することとなり、データの同時性が破綻する(N402)。
図8(b)は、第4実施形態により、下位タスクU、V、Wにそれぞれ公開領域C2、C3、C4を割り当てる場合を示す。下位タスクU、V、Wのそれぞれの開始時tiu、tiv、tiwに、作業領域C1から各公開領域C2、C3、C4へのグローバル変数cの複製処理を行う。すなわち、各下位タスクは、各実行周期に応じて複製処理を行う。
これにより、下位タスクU2は、下位タスクU2の開始時tiuに複製された最新のデータを参照することができる(N411)。
また、下位タスクW2では、下位タスクV2の割り込みに影響されることなく、下位タスクW2の開始時tiwに参照した同一のデータを参照するため、データの同時性が確保される(N412)。
これにより、第4実施形態では、優先度が相対的に低い下位タスクの実行途中に、優先度が相対的に高い別の下位タスクによって複製処理が実行されることによるデータの同時性破綻を回避することができる。
(第5実施形態)
次に説明する第5〜第8実施形態は、「下位タスクによるグローバル変数の更新途中で上位タスクによってグローバル変数が参照される可能性がある」場合の処理に係る実施形態である。このケースを「第2のケース」という。
本発明の第5実施形態による処理を図9に基づいて説明する。第5実施形態は、第2のケースで、下位タスクの開始時に複製処理を実行する。
図9(a)は、第5実施形態に対する比較例として、複製処理がされない場合を示す。下位タスクVのサブタスクXは、X公開領域Eのグローバル変数eを更新し、下位タスクVのサブタスクYは、Y公開領域Fのグローバル変数fを更新する。
上位タスクS1による上位参照処理は、サブタスクXおよびサブタスクYの実行後に行われるため、データの同時性に関する問題はない。一方、上位タスクS2による上位参照処理は、サブタスクXによるグローバル変数eの下位更新処理後、サブタスクYによるグローバル変数fの下位更新処理の実行前に行われる。この事例は、例えば、サブタスクXの処理時間が長くかかる場合に起こり得る。この場合、上位タスクS2は、グローバル変数eについては更新後の新しいデータを参照し、グローバル変数fについては更新前の古いデータを参照することとなり、グローバル変数eとグローバル変数fとの同時性が破綻する(N502)。
図9(b)は、第5実施形態により、下位タスクの開始時に複製処理を実行する場合を示す。下位タスクVのサブタスクXは、X作業領域E1のグローバル変数eを更新し、下位タスクVのサブタスクYは、Y作業領域F1のグローバル変数fを更新する。下位タスクVは、開始時tiに、X作業領域E1からX公開領域E2へグローバル変数eを複製し、かつ、Y作業領域F1からY公開領域F2へグローバル変数fを複製する。そして、上位タスクSは、X公開領域E2のグローバル変数eを参照し、Y公開領域F2のグローバル変数fを参照する。
上位タスクS2は、下位タスクV2の開始時tiに複製されたグローバル変数e、fを共に参照する。したがって、上位タスクS2で参照されるグローバル変数e、fの同時性が確保される(N512)。
これにより、第5実施形態は、上位参照処理における複数のデータの同時性を確保することができる。
また、下位タスクVの開始時tiに複製処理を実行するため、その後の下位タスクVの処理時間のばらつきなどに関係なく、下位更新処理で更新されたデータを常に一定のタイミングで公開領域に複製し、上位タスクが参照可能な状態にすることができる。すなわち、外的要因に対し安定した特性を維持するロバスト性に優れる。
(第6実施形態)
本発明の第6実施形態による処理を図10に基づいて説明する。第6実施形態は、第2のケースで、複製処理の実行中に上位参照処理の割り込みを禁止する「割り込み禁止処理」を実行する。
図10(a)は、第6実施形態に対する比較例として、割り込み禁止処理がされない場合を示す。下位タスクVのサブタスクXは、X作業領域E1のグローバル変数eを更新し、下位タスクVのサブタスクYは、Y作業領域F1のグローバル変数fを更新する。下位タスクVは、開始時tiに、X作業領域E1からX公開領域E2へグローバル変数eを複製し、かつ、Y作業領域F1からY公開領域F2へグローバル変数fを複製する。そして、上位タスクSは、X公開領域E2のグローバル変数eを参照し、Y公開領域F2のグローバル変数fを参照する。
上位タスクS1による上位参照処理においては、下位タスクV1の開始時tiの後、公開領域E2、F2に複製されたグローバル変数e、fを共に参照するため、グローバル変数e、fの同時性が確保される。また、下位タスクV2の実行途中に発生する上位タスクS2による上位参照処理においても、同様に、下位タスクV2の開始時tiの後、公開領域E2、F2に複製されたグローバル変数e、fを共に参照するため、グローバル変数e、fの同時性が確保される(N602)。
一方、上位タスクS3による上位更新処理は、X作業領域E1からX公開領域E2へのグローバル変数eの複製処理の後、Y作業領域F1からY公開領域F2へのグローバル変数fの複製処理の前に行われる。そのため、上位タスクS3は、グローバル変数eについては更新前の古いデータを参照し、グローバル変数fについては更新後の新しいデータを参照することとなる。その結果、グローバル変数e、fの同時性が破綻する(N603)。
図10(b)は、第6実施形態により、複製処理の実行時に割り込み禁止処理を行う場合を示す。下位タスクVの開始時tiの後、2点鎖線で示すように、上位タスクSによる上位参照処理の割り込みが禁止される割り込み禁止期間Pintが、サブタスクXおよびサブタスクYについて共通に設定される。そして、割り込み禁止期間Pint中に複製処理が実行される。
上位タスクS3は、下位タスクV3の開始時tiの後、割り込み禁止期間Pintが終了するまで上位参照処理の実行開始が待たされる。したがって、公開領域E2、F2への複製処理の完了後にグローバル変数e、fが参照されるため、グローバル変数e、fの同時性が確保される(N613)。
これにより、第6実施形態では、複数のグローバル変数についての複製処理が上位参照処理の前後に跨らないようにすることで、データの同時性破綻を回避することができる。
また、グローバル変数e、fについて、共通の割り込み禁止処理を実行するため、各グローバル変数について個々に割り込み禁止処理を実行する場合に比べ、ECU10の処理負荷を低減することができる。
さらに、割り込み禁止処理は、優先度の高い上位タスクの実行を遅らせるためリアルタイム性を損なうというデメリットを伴う。そのため、割り込み禁止処理を共通にして回数を減らすことで、リアルタイム性への影響を最小限に抑えることができる。
(第7実施形態)
本発明の第7実施形態による処理を図11に基づいて説明する。第7実施形態は、第2のケースで、下位タスクの完了時に複製処理を実行する。
下位タスクV1では、サブタスクXおよびサブタスクYによる下位更新処理の実行後に、上位タスクS1による上位参照処理がされるため、データの同時性に関する問題はない。一方、下位タスクV2では、サブタスクXによる下位更新処理の実行後、サブタスクYによる下位更新処理の実行前に上位タスクS2が発生する。しかし、上位タスクS2は、1周期前の下位タスクV1の完了時tfにX公開領域E2およびY公開領域F2に複製されたグローバル変数e、fを共に参照するため、上位参照処理におけるグローバル変数e、fの同時性が確保される(N712)。
第7実施形態では、第5実施形態等と同様に、上位参照処理における複数のデータの同時性を確保することができる。
また、下位タスクV1の実行後に最初に発生する上位タスクS1’による上位参照処理において、第5実施形態では、下位タスク1周期分遅れたデータを参照する(図9(b)参照)のに対し、第7実施形態では、下位タスクVの完了時tfに複製処理を実行するため、常に最新のデータを参照することができる。
(第8実施形態)
本発明の第8実施形態による処理を図12に基づいて説明する。第8実施形態は、第2のケースで、複数の上位タスク毎に複数の公開領域を割り当て、複製処理において、それぞれの上位タスクで使用されるグローバル変数を作業領域から公開領域へ複製する。さらに、それぞれの公開領域への複製処理のタイミングを、下位タスクの開始時と下位タスクの完了時とに分ける。
図12(a)は、第8実施形態に対する比較例として、複数の上位タスクが1つの公開領域を共用する場合を示す。下位タスクVは作業領域E1のグローバル変数eを更新する。2つの上位タスクS、Tは、上位タスクSが上位タスクTに先行して同周期で実行され、いずれも公開領域E2のグローバル変数eを参照する。また、下位タスクVの開始時tiに、作業領域E1から公開領域E2へグローバル変数eが複製される。
この場合、上位タスクS1および上位タスクT1は、いずれも、下位タスクV1の開始時tiに複製されたグローバル変数eを参照するため、同時性に関する問題はない。ただし、下位タスクV1の実行中にグローバル変数eが更新され、上位タスクT1が下位タスクV1の終了後に発生する場合には、上位タスクT1は、常に1周期遅れたデータを参照することとなる(N801)。
図12(b)は、第8実施形態により、上位タスクS、TにそれぞれS用公開領域E2、T用公開領域E3を割り当てる場合を示す。下位タスクVの開始時tiに作業領域E1からS用公開領域E2への複製処理を行い、下位タスクVの完了時tfに作業領域E1からT用公開領域A3への複製処理を行う。
したがって、下位タスクV1の終了後に発生する上位タスクT1は、下位タスクV1の実行中に更新された最新のグローバル変数eを参照することができる(N811)。
第5実施形態の効果で説明したように、下位タスクVの開始時tiに複製処理を実行する場合にはロバスト性が向上し、また、第7実施形態の効果で説明したように、下位タスクVの完了時tfに複製処理を実行する場合には最新のデータを参照することができる。したがって、上位タスクの特性に応じて、「常に一定のタイミングで更新されるデータを要求するタスク」を上位タスクSとし、「常に最新のデータを要求するタスク」を上位タスクTとすることで、両方のタスクの要求を共に満たすことができる。
(その他の実施形態)
(ア)上記の第1、2、3、5、6、7実施形態では、下位タスクが2つのサブタスクX、Yを含む場合を例示するが、下位タスクのサブタスクは3つ以上であってもよい。
(イ)上記の第4実施形態では、3つの下位タスクU、V、Wを例示する。また、上記の第8実施形態では、2つの上位タスクS、Tを例示する。これら複数の下位タスク、上位タスクの数はこれに限らない。
(ウ)上記の第1、第5実施形態等では、下位タスクVの開始時tiに複製処理を実行する。この複製タイミングは、開始時tiに限らず、下位タスクVの実行中最初にグローバル変数を参照または更新するサブタスクXの開始前であればよい。
また、上記の第3、第7実施形態等では、下位タスクVの完了時tfに複製処理を実行する。この複製タイミングは、完了時tfに限らず、下位タスクVの実行中最後にグローバル変数を参照または更新するサブタスクYの完了後であればよい。
(エ)本発明の情報処理装置は、電動パワーステアリング装置の他、例えば、VGRS(ギア比可変ステアリング)、ARS(アクティブリアステアリング)等、様々な用途に適用することができる。
以上、本発明はこのような実施形態に限定されるものではなく、発明の趣旨を逸脱しない範囲において、種々の形態で実施することができる。
1 ・・・電動パワーステアリング装置、
10 ・・・ECU(情報処理装置)、
11 ・・・マイコン、
12 ・・・CPU、
S、T ・・・上位タスク、
U、V、W ・・・下位タスク、
X、Y ・・・サブタスク、
C1、D1 ・・・(第1のケースの)作業領域、
C2、C3、C4、D2・・・(第1のケースの)公開領域、
c、d ・・・(第1のケースの)グローバル変数、
E1、F1 ・・・(第2のケースの)作業領域、
E2、E3、F2・・・(第2のケースの)公開領域、
e、f ・・・(第2のケースの)グローバル変数、
Pint ・・・割り込み禁止期間。

Claims (4)

  1. 処理プログラムの実行単位となる複数のタスクを当該複数のタスク毎に設定される優先度に基づき、前記優先度が相対的に高い上位タスクの実行により前記優先度が相対的に低い下位タスクの実行が一時的に中断され、前記上位タスクの終了時に前記下位タスクが中断位置から再開されるよう実行することによって一連の機能を実現する情報処理装置であって、
    前記上位タスクと前記下位タスクとの間で共通に使用されるグローバル変数を記憶する2つの記憶領域を設定し、
    前記下位タスクによる前記グローバル変数の参照途中で前記上位タスクによって前記グローバル変数が更新される可能性のある第1のケースにおいて、
    前記上位タスクは、前記2つの記憶領域の一方である作業領域を使用して前記グローバル変数を更新する上位更新処理を実行し、
    前記下位タスクは、前記2つの記憶領域の他方である公開領域を使用して前記グローバル変数を参照する下位参照処理を実行し、
    前記下位タスクは、前記下位タスク中の前記下位参照処理を開始する前に、前記作業領域から前記公開領域へ前記グローバル変数を複製する複製処理を実行し、
    前記下位タスクは、前記上位更新処理が前記複製処理の実行中に実行されることを禁止する割り込み禁止処理であって、前記下位タスクに含まれる複数の前記下位参照処理で参照される複数の前記グローバル変数について共通の割り込み禁止処理を実行することを特徴とする情報処理装置。
  2. 請求項1に記載の情報処理装置において、
    複数の前記下位タスク毎に複数の前記公開領域を割り当て、
    前記複製処理において、それぞれの前記下位タスクで使用される前記グローバル変数を前記作業領域から複数の前記公開領域へ複製することを特徴とする情報処理装置。
  3. 処理プログラムの実行単位となる複数のタスクを当該複数のタスク毎に設定される優先度に基づき、前記優先度が相対的に高い上位タスクの実行により前記優先度が相対的に低い下位タスクの実行が一時的に中断され、前記上位タスクの終了時に前記下位タスクが中断位置から再開されるよう実行することによって一連の機能を実現する情報処理装置であって、
    前記上位タスクと前記下位タスクとの間で共通に使用されるグローバル変数を記憶する2つの記憶領域を設定し、
    前記下位タスクによる前記グローバル変数の更新途中で前記上位タスクによって前記グローバル変数が参照される可能性のある第2のケースにおいて、
    前記下位タスクは、前記2つの記憶領域の一方である作業領域を使用して前記グローバル変数を更新する下位更新処理を実行し、
    前記上位タスクは、前記2つの記憶領域の他方である公開領域を使用して前記グローバル変数を参照する上位参照処理を実行し、
    前記下位タスクは、前記下位タスク中の前記下位更新処理を開始する前に、前記作業領域から前記公開領域へ前記グローバル変数を複製する複製処理を実行し、
    前記下位タスクは、前記上位参照処理が前記複製処理の実行中に実行されることを禁止する割り込み禁止処理であって、前記下位タスクに含まれる複数の前記下位更新処理で更新される複数の前記グローバル変数について共通の割り込み禁止処理を実行することを特徴とする情報処理装置。
  4. 請求項3に記載の情報処理装置において、
    複数の前記上位タスク毎に複数の前記公開領域を割り当て、
    前記複製処理において、それぞれの前記上位タスクで使用される前記グローバル変数を前記作業領域から複数の前記公開領域へ複製することを特徴とする情報処理装置。
JP2010254749A 2010-11-15 2010-11-15 情報処理装置 Expired - Fee Related JP5798314B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010254749A JP5798314B2 (ja) 2010-11-15 2010-11-15 情報処理装置
DE201110055205 DE102011055205A1 (de) 2010-11-15 2011-11-10 Informationsverarbeitungsvorrichtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010254749A JP5798314B2 (ja) 2010-11-15 2010-11-15 情報処理装置

Publications (2)

Publication Number Publication Date
JP2012108582A JP2012108582A (ja) 2012-06-07
JP5798314B2 true JP5798314B2 (ja) 2015-10-21

Family

ID=45999055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010254749A Expired - Fee Related JP5798314B2 (ja) 2010-11-15 2010-11-15 情報処理装置

Country Status (2)

Country Link
JP (1) JP5798314B2 (ja)
DE (1) DE102011055205A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102492399B1 (ko) * 2016-07-27 2023-01-26 엘에스일렉트릭(주) 감시제어장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59206972A (ja) * 1983-05-10 1984-11-22 Toshiba Corp 共有メモリ
JP3261766B2 (ja) * 1992-11-10 2002-03-04 セイコーエプソン株式会社 マルチプロセッサシステム、共有変数更新装置、プロセッサユニット及び共有変数更新方法
JP3783553B2 (ja) * 2000-11-15 2006-06-07 株式会社デンソー 情報処理装置
JP3617445B2 (ja) * 2000-11-20 2005-02-02 株式会社デンソー 情報処理装置
JP2002189704A (ja) * 2000-12-22 2002-07-05 Yaskawa Electric Corp ブロック転送機能を持つ共有メモリ

Also Published As

Publication number Publication date
DE102011055205A1 (de) 2012-05-16
JP2012108582A (ja) 2012-06-07

Similar Documents

Publication Publication Date Title
DE69627807T2 (de) Datenprozessor zum gleichzeitigen Dataladen und Durchführung einer multiplizier-addier Operation
JP5141367B2 (ja) 車両制御装置
CN101713970B (zh) 重启飞行控制系统的方法和系统
JP5798314B2 (ja) 情報処理装置
CN113428139A (zh) 控制装置、管理器、方法、非暂时性存储介质、车辆、车辆控制装置和车辆控制方法
JP2005050208A (ja) マルチタスクシステムにおけるメモリ管理方式およびタスク制御装置
JP2017146897A (ja) マイクロコントローラ及び電子制御装置
JP4960344B2 (ja) 制御装置の記憶装置における切り替え方法および装置
CN103003763B (zh) 内部存储器的访问协调的计算机装置和运行方法
JP7271973B2 (ja) 車両制御装置、動作クロック切換方法
WO2020230586A1 (ja) ハイパーバイザおよび制御装置
JP6183251B2 (ja) 電子制御装置
JP2004046857A (ja) マルチタスキング可能なコンピュータプログラムの進行の制御方法および制御装置
JP7070108B2 (ja) マルチコアマイコンを備える電子制御装置
DE102011006283A1 (de) Systeme und Verfahren, um viele periphere Einrichtungen mit einem einzelnen peripheren Anwendungscode zu steuern
JP7141977B2 (ja) 制御装置および制御方法
JP2003216449A (ja) パッチ処理システム
JPWO2020108709A5 (ja)
JP5703860B2 (ja) フォールトトレラントシステム、メモリ制御方法、及びプログラム
WO2022180893A1 (ja) 制御装置及び制御方法
JP3761286B2 (ja) ロボット制御方法、制御装置、記憶媒体及びロボット
JPH03265027A (ja) 計算機システムの初期化装置
JP7080067B2 (ja) 車両制御システム、車両、および車両制御方法
JP2601359B2 (ja) 並行処理マイクロプロセッサ
JP2010254272A (ja) 車両の後輪操舵制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130716

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130902

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140401

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140626

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140703

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20140828

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20140905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150623

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150821

R151 Written notification of patent or utility model registration

Ref document number: 5798314

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees