JP6771272B2 - 車載電子制御装置及びスタック使用方法 - Google Patents

車載電子制御装置及びスタック使用方法 Download PDF

Info

Publication number
JP6771272B2
JP6771272B2 JP2015132780A JP2015132780A JP6771272B2 JP 6771272 B2 JP6771272 B2 JP 6771272B2 JP 2015132780 A JP2015132780 A JP 2015132780A JP 2015132780 A JP2015132780 A JP 2015132780A JP 6771272 B2 JP6771272 B2 JP 6771272B2
Authority
JP
Japan
Prior art keywords
task
electronic control
control device
stack area
stack
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.)
Active
Application number
JP2015132780A
Other languages
English (en)
Other versions
JP2017016409A (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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems 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 Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2015132780A priority Critical patent/JP6771272B2/ja
Priority to PCT/JP2016/069511 priority patent/WO2017002939A1/ja
Priority to US15/738,319 priority patent/US20180173559A1/en
Priority to DE112016003029.0T priority patent/DE112016003029T5/de
Priority to CN201680036746.5A priority patent/CN107710162B/zh
Publication of JP2017016409A publication Critical patent/JP2017016409A/ja
Application granted granted Critical
Publication of JP6771272B2 publication Critical patent/JP6771272B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/009Electrical control of supply of combustible mixture or its constituents using means for generating position or synchronisation signals
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/266Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the computer being backed-up or assisted by another circuit, e.g. analogue
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D45/00Electrical control not provided for in groups F02D41/00 - F02D43/00
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Debugging And Monitoring (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Memory System (AREA)

Description

本発明は、スタック領域を使用する車載電子制御装置及びスタック使用方法に関する。
電子制御装置において、RAM(Random Access Memory)の一部がスタック領域として使用される。このスタック領域は、電子制御装置における処理中のデータなどを一時的に退避させる場合に使用される(例えば、特許文献1参照)。
特開2008−184912号公報
ISO26262において、車両の機能安全についての基準が定められている。この基準において、ASIL(Automotive Safety Integrity Level)という安全性のレベルが定められている。安全性のレベルは、5段階あり、安全性の基準が高い順にASIL−D,ASIL−C,ASIL−B,ASIL−A,QMとなっている。そして、前記機能安全を実現する上では、例えば、タスクごとにこの安全性のレベルが割り当てられ、割り当てられたレベルが低いものの障害がよりレベルが高いものに影響を与えないことが求められる。
このため、電子制御装置において、高い安全性のレベル(例えば、ASIL−D)が割り当てられたタスクによりスタック領域に一時的に退避されたスタックデータが、より低い安全性のレベル(例えば、QM)が割り当てられたタスクによってアクセスされないようにする必要がある。
そこで、スタックデータへのアクセス制限を強化可能な車載電子制御装置及びスタック使用方法を提供する。
前記課題を解決するために、車載電子制御装置は、メモリ及びプロセッサを備え、プロセッサがタスクを実行するときに、当該タスクについて、メモリに確保された複数のスタック領域のうち、所定規則によりタスクを分類したグループごとに予め割り当てられた少なくとも1つのスタック領域を使用させると共に、定時的な割り込みタイミングとは相関しないエンジン回転センサにおける立ち上がりエッジ及び立ち下がりエッジの検出タイミングで、実行するタスクが属するグループに予め割り当てられたアドレス範囲のスタック領域を使用しているか否かを監視させる。
前記車載電子制御装置によれば、スタックデータへのアクセス制限を強化することができ、これにより機能安全を実現することができる。
電子制御装置の実施形態を示すブロック図である。 前記電子制御装置のスタック領域の構成を示す図である。 前記電子制御装置がタスクを実行する際のフローを示す図である。 前記電子制御装置がスタック領域の使用を監視するタスクを実行する際のフローを示す図である。 前記電子制御装置がスタック領域の使用を監視するタイミングを示す図である。
以下、本発明の実施の形態を添付図面に基づいて説明する。
図1は、自動車に搭載された電子制御装置100の実施形態を示す図である。この電子制御装置100は、車両の様々な制御を行うもので、例えば、内燃機関の制御を行う。電子制御装置100は、複数のCPU(Central Processing Unit)110と、複数のローカルメモリ120と、グローバルメモリ130と、を備えている。
CPU110は、電子制御装置100に接続された各種センサの検出値等を読み出して車両制御用の目標値を算出することができる。具体的には、CPU110には、図示していないクランク角センサ、カム角センサ、水温センサ、スロットルセンサ、エアフローセンサ、空燃比センサを含む各種センサ等の信号が入力され、また、電子スロットル弁、燃料噴射弁、点火コイル等の各種制御に必要なデータを演算することができる。
前記CPU110には、CPU110にそれぞれ設けられたローカルメモリ120と、全てのCPU110がアクセス可能なグローバルメモリ130とが接続されている。このローカルメモリ120は、CPU110に1対1で対応し、対応するCPU110の実行にのみ用いられる。このローカルメモリ120には、LIFO(Last In First Out)方式でデータを保持するスタック領域122や他の各種メモリ領域が設けられている。
電子制御装置100は、タスクを実行する上で、スタック領域へのアクセス制限の異なる複数のモードを有している。このアクセス制限は、安全性の基準に基づいたレベルに応じて定められている。本実施形態では、複数のモードとして、スーパーバイザーモード(SVM:supervisor mode)と、ユーザーモード(UM:user mode)とがあり、それぞれにアクセス権限が割り当てられてアクセス制限を実現している。そして、SVMのときには、安全性レベルがASIL−D,C,B,Aのいずれかであるタスクが実行され、UMのときには、安全性レベルがQMであるタスクが実行される。換言すると、電子制御装置100において、タスクは、安全性レベルなどの所定規則に基づいてグループに分類され、グループに応じたモードで実行されるようになっている。
ローカルメモリ120に設けられたスタック領域122は、QM用スタック領域124と、ASIL用スタック領域126との、2つの領域に分けられている。すなわち、ローカルメモリ120には2つのスタック領域が確保されている。そして、UMが割り当てられたタスクは、QM用スタック領域124にのみアクセスが可能であり、ASIL用スタック領域126へのアクセスが禁止されている。SVMが割り当てられたタスクは、ASIL用スタック領域126及びQM用スタック領域124にアクセスが可能である。このようなタスクごとのアクセスの制限は、メモリ管理ユニット等のハードウェアで実現することができる。なお、本実施形態では、アクセスの種別として読み込み、書き込み、実行の3種類があり、これら全てのアクセスがまとめて禁止されるか又は許可されている。しかし、例えば、書き込み及び実行は禁止するが読み込みだけを許可するといったように、一部のアクセスを許可するような設定をすることができる。また、各モードにおいて、スタック領域ごとに、かつ、アクセス種別ごとに許可又は禁止の設定をすることができる。
なお、本実施形態においてはローカルメモリ120に2つのスタック領域が確保されているが、電子制御装置はローカルメモリに複数のスタック領域を確保することができる。
次に、図2を参照してスタック領域122について詳細に説明する。
スタック領域122において、例えば、アドレスが大きくなる方向にデータが蓄積される。図2においては上方向がアドレスの値が大きくなる方向である。そして、スタック領域122においては、図2(a)(b)に示すように、アドレスが小さい方からASIL用スタック領域126、QM用スタック領域124の順で、メモリ領域が割り付けられている。すなわち、スタック領域122は、データが蓄積される方向側に、より重要度が低いスタック領域が設けられている。換言すると、各スタック領域122は、分割されたスタック領域のうち重要度が高いスタック領域からスタックデータが蓄積される方向に割り付けられている。
また、図2に記載のように、このスタック領域122において、ASIL用スタック領域126の最も新しく格納されたデータASIL−2を示す第1のスタックポインタと、QM用スタック領域124の最も新しく格納されたデータQM−3を示す第2のスタックポインタと、をモードに応じて切り換えることができる。図2(a)は、SVMのタスクが実行されている場合を表している。この場合には、電子制御装置100は、第1のスタックポインタ及び第2のスタックポインタを切り換えて使用することができる。そして、SVMのタスクが実行されるときには、QM用スタック領域124及びASIL用スタック領域126にアクセスすることが可能である。また、図2(b)は、UMのタスクが実行されている場合を表している。この場合には、電子制御装置100は、第2のスタックポインタを使用する。そして、QMのタスクが実行されるときには、ASIL用スタック領域126へのアクセスが禁止されている。
このようにして、電子制御装置100において、CPU110がタスクを実行するときに当該タスクに使用させるスタック領域として、ローカルメモリ120に確保された複数のスタック領域のうち少なくとも1つのスタック領域が予め割り当てられる。そして、タスクが使用する少なくとも1つのスタック領域は、安全性レベルなどの所定規則によりタスクを分類したグループごとに設定されている。これにより、電子制御装置100における機能安全が実現される。
また、このように構成された電子制御装置100で実行されるタスクにおいては、割り当てられたモードよりも権限が高くなる方向にモード変更ができないようになっている。例えば、UMのタスクは、UMからSVMへのモード変更は行えない。
ここで、前記電子制御装置100がタスクを実行する際のフローについて図3を参照して説明する。
まず、このフローはモードがSVMで起動される。このとき、電子制御装置100は、フローがSVMで始まるので、ASIL用スタック領域126の最も新しく格納されたデータを示す第1のスタックポインタを使用している。そして、イニシャルプログラムを実行する(S101)。
次に、プログラムの実行上、UMのタスクを実行することがあり、それに伴いモードをSVMからUMに切り換えることがある。このとき、まず、電子制御装置100は、スタックポインタをQM用スタック領域124の最も新しく格納されたデータを示す第2のスタックポインタに切り換える(S102)。そして、電子制御装置100はモードをSVMからUMに切り換える(S103)。
そして、モードがUMに遷移した後に電子制御装置100はQMのタスクを実行して、その際にスタック領域としてQM用スタック領域124を使用する(S104)。
例えば、QMのタスクとしては、アクセル開度から目標トルクを演算し、その目標トルクに基づいて電子スロットルの目標スロットル開度を演算する目標トルク演算タスクがある。以下、目標トルク演算タスクが実施される例について説明する。
この目標トルク演算タスクにおいて、電子制御装置100は、まず、アクセルペダルセンサからアクセル開度の出力を読み込む。そして、電子制御装置100は、アクセル開度から目標トルクを演算する。そして、電子制御装置100は、演算した目標トルクとなるように目標スロットル開度を演算し、その目標スロットル開度に基づいて電子制御スロットルを制御する。
次に、このような電子制御スロットルの制御において、異常が発生しているかを検知する必要がある。そこで、目標トルクとは別に、現在のトルクを算出して、目標トルクと現在のトルクとを対比させて、異常が発生しているかの判定を行う。ここで、このような判定を行うタスクは、安全性のレベルがQMよりも高いものである(例えば、ASIL−C)。それゆえ、このタスクは、UMでは行われることができずSVMで行われる必要がある。そこで、電子制御装置100は、割り込み指令を出してSVMの異常検知タスク(割り込み処理1)を割り込みさせることによって処理を行う。
割り込み処理1では、まず、電子制御装置100は、この異常検知タスクはSVMで行われるものであるので、ASIL用スタック領域126のデータを示す第1のスタックポインタを使用する必要がある。本事例では割り込み前にはQMのタスクが実施されており第2のスタックポインタが使用されているので、電子制御装置100は、スタックポインタを切り換えて第1のスタックポインタを使用して、スタック領域としてASIL用スタック領域126を使用して処理を行うようにする(S201)。次に、電子制御装置100は、各種センサからの出力に基づいて現在のトルクを算出する。そして、電子制御装置100は、目標トルクと現在のトルクとを対比し、異常が発生しているか否かの判定を行う(S202)。
更に、前記異常の判定とは別に、タスクの実行順や実行タイミングに異常があるか否かを判定し、処置を行うタスクが実行される。このタスクは、安全性レベルがQMよりも高いものである(例えば、ASIL−C)。それゆえ、このタスクはSVMで行われる必要がある。そこで、割り込み処理1のステップ202での処理中にこのような機能動作の異常判定を行う必要がある場合には、更に機能動作の異常判定タスクである割り込み処理2を実行する。この機能動作の異常判定タスクは、SVMで行われるものであるので、まず、第1のスタックポインタが使用されているかを判定する。本事例では、割り込み処理1中に行われているので、既に第1のスタックポインタが使用されると共にスタック領域としてASIL用スタック領域126が使用されている。したがって、スタックポインタの切り換えは行われない(S301)。そして、前記機能動作の異常判定タスクが行われる(S302)。このタスクの終了後に戻る処理がSVMでの処理であるので、電子制御装置100は、スタックポインタを第1のスタックポインタから切り換えずに割り込み処理1に戻る(S303)。
電子制御装置100は、処理を割り込み処理1に戻らせ、処理を再開する。そして、電子制御装置100は、割り込み処理1が終了したら、戻るタスクがUMのタスクであるので、スタックポインタを第2のスタックポインタに切り換え、スタック領域としてQM用スタック領域124を使用して処理を行うようにする(S203)。その後、電子制御装置100は、目標トルク演算タスクを再開して実行する。
ここで、電子制御装置100における制御において、プログラムの書き換え等の特殊モードへのモード遷移が必要となる場合があり、UMからより高い重要度が割り当てられたSVMへ遷移することがある。しかし、電子制御装置100において、QMのタスクはQMからSVMにモード遷移することができない。ここで、本実施例においては、低い重要度のモードから高い重要度のモードへの遷移は、SVMのタスクを割り込ませて割り込み処理にて実施する。具体的には、電子制御装置100は、割り込み命令を出し(S105)、これによりSVMのタスクを割り込ませて、QMからSVMにモード遷移をする(S401)。そして、モード遷移後にSVMのタスクがスタックポインタを第1のスタックポインタに切り換えてスタック領域としてASIL用スタック領域126を使用して処理を行うようにし(S106)、電子制御装置100は特殊モードでの処理等を実行する。
以上のようにして、電子制御装置100は、複数のスタック領域が確保された上で、実行されるタスクに応じて割り込み処理を行い、適宜スタックポインタ及びスタック領域を切り換えてプログラムを実行する。
ここで、電子制御装置100は、複数のスタック領域が確保された場合において、スタック領域が、タスクが実行される際にそのタスクが属するグループに応じて適切に使用されているかを監視することができる。
このような監視をするタスクは、割り込み処理にて実行される。この割り込み処理について図4及び5を参照しつつ説明する。
図4は、割り込み処理1及び割り込み処理2が実行されるフローにおいて、更に割り込み処理として、スタック領域の使用が適切に行われているかを監視するタスク(割り込み処理4)が行われる場合を表す概念図である。なお、上記説明した割り込み処理1及び2は定時的な割り込みとして実行される処理である。
図4において示されたフローは、定時的な割り込みである前記割り込み処理1が割り込んだ状態から始まっている。そして、電子制御装置100は、割り込み処理1が実行されるので、スタックポインタを第1のスタックポインタに切り換えて、スタック領域としてASIL用スタック領域126を使用して処理を行うようにする(S501)。そして、電子制御装置100は、タスクを実行する前に実行するタスクを示す実行タスク情報を適切なメモリに記録する(S502)。その後、割り込み処理1が実行される(S503)。
ここで割り込み処理1の実行中に、定時的な割り込みが実行されるタイミングとは相関しないタイミングで、実行されているタスクが、当該タスクが属するグループに応じて予め割り当てられたスタック領域を使用しているかを監視する割り込み処理4が行われる。本実施例においては、電子制御装置100は、クランク角センサ等のエンジン回転センサにおける立ち上がりエッジ及び立ち下りエッジの検出がなされるタイミングで割り込み処理4を実行する。
この割り込み処理4では、電子制御装置100は、グループに属するタスクとそのグループのタスクに使用させる予め割り当てられたスタック領域とが示されたテーブルを参照して、割り込み処理3で実施されたタスクがそのタスクが属するグループに応じて予め割り当てられたスタック領域を使用しているか否かを監視する。
例えば、まず、実行タスク情報を読み出す(S601)。そして、電子制御装置100は、グループに属するタスクと当該グループに応じて予め割り当てられたスタック領域のアドレスの範囲とがグループごとに示されたテーブルを参照して、実行タスク情報が属するグループに基づいて、そのグループに応じて予め割り当てられたスタック領域のアドレスの範囲を読み出す。そして、電子制御装置100は、スタックポインタが、前記読み出した予め割り当てられたアドレスの範囲内を示していれば、実行タスクがその属するグループに応じて予め割り当てられたスタック領域を使用していると判定する。一方、電子制御装置100は、スタックポインタが、前記読み出した予め割り当てられたアドレスの範囲外を示していれば、実行タスクがその属するグループに応じて予め割り当てられたスタック領域を使用していないと判定する。そして、電子制御装置100は、実行タスクがその属するグループに応じて予め割り当てられたスタック領域を使用していると判定した場合には、割り込みを終了して元の処理に戻る。一方、電子制御装置100は、実行タスクがその属するグループに応じて予め割り当てられたスタック領域を使用していないと判定した場合には、例えば、外部装置にエラーを通知するか、又は、図示しない不揮発性のメモリ(フラッシュメモリ等)へエラーを記録する(S602)。
次に、スタック監視をする割り込み処理4が終了して割り込み処理1に処理が戻る。そして、割り込み処理1の実行中に前述したように機能動作の異常判定タスクである割り込み処理2が定時的な割り込みとして実行される。割り込み処理2は、SVMのタスクであり、スタック領域は、ASIL用スタック領域126を使用する。既に、割り込み処理1において、第1のスタックポインタが使用されているので、電子制御装置100は、スタックポインタの切り換えを実行しない(S504)。そして、電子制御装置100は、S502と同様に割り込み処理2の実行タスク情報を記録する(S505)。その後、電子制御装置100は、割り込み処理2を実行する。
ここで、割り込み処理2の実行中に、電子制御装置100は、例えば、エンジン回転センサにおけるエッジを検出して、スタック監視をする割り込み処理4を行う。電子制御装置100は、この割り込み処理で、実行タスク情報を読み出す(S603)。電子制御装置100は、読み出した実行タスク情報に基づいて、実行タスクがその属するグループに応じて予め割り当てられたスタック領域を使用しているかを判定し、S602と同様の処理を行う(S604)。その後、電子制御装置100は、割り込み処理4を終了させて、割り込み処理2の実行に戻る。
このようなタスク監視を行う一例における、時間、実行タスク、使用スタック領域、スタック監視タスクの実行タイミングの関係を、図5を参照して説明する。
まず、実行タスクと使用されるスタック領域との関係について説明する。時間t1で定時的な割り込みである割り込み処理1が実行される。この場合の使用されるスタック領域はASIL用スタック領域である。次に時間t2で割り込み処理2が実行される。この場合の使用されるスタック領域は割り込み処理1と同様にASIL用スタック領域である。そして、時間t3で割り込み処理2が終了し、割り込み処理1に戻る。更に、時間t4で割り込み処理1が終了し、通常タスクに戻る。このときに、スタックポインタが切り換わり、QM用スタック領域を示すようになる。そして次に、時間t5で通常タスク実行時に定時割り込みで割り込み処理1が実行される。これに対しスタック監視タスクは、エンジン回転センサにおけるエッジの検出時(t11〜t16)に割り込みを発生して、スタック監視タスクを実行する。ここで、エンジン回転センサにおけるエッジの検出タイミングは、定時的な割り込みである割り込み処理1及び定時的な割り込みである割り込み処理2の割り込みのタイミングとは相関していない。このように、定時的な割り込みタイミングとは相関しない、エンジン回転センサにおけるエッジの検出タイミングで、スタック監視タスクを実行することにより、定時的ではないランダムなタイミングでスタック領域の使用を監視することができる。
なお、本明細書においては2つのCPUで構成されたデュアルプロセッサについて説明したが、ローカルメモリをそれぞれ有する3以上のCPUで構成されたマルチプロセッサにおいても、本実施形態に記載したスタック領域を適用することができる。また、マルチコアプロセッサにおいてコアごとにローカルメモリが接続されている場合に、その各ローカルメモリに本実施形態に記載したスタック領域を設けることができる。
本実施形態においては、2つの重要度に分けて2つのモードで実行される場合について説明したが、電子制御装置は、3つ以上の重要度の分類が設けられて、その重要度の分類の数に応じてモードが分けられると共にスタック領域が複数確保されてもよい。
本明細書における、定時的とは、決められた時間間隔にという意味を指すだけではなく、決められた手順の中で決められたタイミングでという意味をも含む。
100…電子制御装置、120…ローカルメモリ、122…スタック領域

Claims (3)

  1. メモリ及びプロセッサを備えた車載電子制御装置において、
    前記プロセッサがタスクを実行するときに、当該タスクについて、前記メモリに確保された複数のスタック領域のうち、所定規則によりタスクを分類したグループごとに予め割り当てられた少なくとも1つの前記スタック領域を使用させると共に、定時的な割り込みタイミングとは相関しないエンジン回転センサにおける立ち上がりエッジ及び立ち下がりエッジの検出タイミングで、実行する前記タスクが属するグループに予め割り当てられたアドレス範囲のスタック領域を使用しているか否かを監視させる、
    ことを特徴とする車載電子制御装置。
  2. 前記プロセッサはマルチコアプロセッサであって、コアごとに前記メモリが接続されている、
    ことを特徴とする請求項1に記載の車載電子制御装置。
  3. 車載電子制御装置が、タスクを実行するときに、当該タスクについて、メモリに確保された複数のスタック領域のうち、所定規則によりタスクを分類したグループごとに予め割り当てられた少なくとも1つの前記スタック領域を使用させると共に、定時的な割り込みタイミングとは相関しないエンジン回転センサにおける立ち上がりエッジ及び立ち下がりエッジの検出タイミングで、実行する前記タスクが属するグループに予め割り当てられたアドレス範囲のスタック領域を使用しているか否かを監視させる、
    ことを特徴とするスタック使用方法。
JP2015132780A 2015-07-01 2015-07-01 車載電子制御装置及びスタック使用方法 Active JP6771272B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2015132780A JP6771272B2 (ja) 2015-07-01 2015-07-01 車載電子制御装置及びスタック使用方法
PCT/JP2016/069511 WO2017002939A1 (ja) 2015-07-01 2016-06-30 電子制御装置及びスタック使用方法
US15/738,319 US20180173559A1 (en) 2015-07-01 2016-06-30 Electronic Control Device and Stack Usage Method
DE112016003029.0T DE112016003029T5 (de) 2015-07-01 2016-06-30 Elektronische steuervorrichtung und stapelverwendungsverfahren
CN201680036746.5A CN107710162B (zh) 2015-07-01 2016-06-30 电子控制装置及栈使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015132780A JP6771272B2 (ja) 2015-07-01 2015-07-01 車載電子制御装置及びスタック使用方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019043334A Division JP6877475B2 (ja) 2019-03-11 2019-03-11 電子制御装置及びスタック使用方法

Publications (2)

Publication Number Publication Date
JP2017016409A JP2017016409A (ja) 2017-01-19
JP6771272B2 true JP6771272B2 (ja) 2020-10-21

Family

ID=57608334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015132780A Active JP6771272B2 (ja) 2015-07-01 2015-07-01 車載電子制御装置及びスタック使用方法

Country Status (5)

Country Link
US (1) US20180173559A1 (ja)
JP (1) JP6771272B2 (ja)
CN (1) CN107710162B (ja)
DE (1) DE112016003029T5 (ja)
WO (1) WO2017002939A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7449219B2 (ja) 2020-12-03 2024-03-13 日立Astemo株式会社 内燃機関の制御装置

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3828742A (en) * 1972-04-26 1974-08-13 Caterpillar Tractor Co Engine control system
US4600867A (en) * 1983-11-01 1986-07-15 Nippon Soken, Inc. Motor speed controlling device
JPH0697003B2 (ja) * 1984-12-19 1994-11-30 日本電装株式会社 内燃機関の運転状態制御装置
JP3442807B2 (ja) * 1993-01-21 2003-09-02 富士重工業株式会社 エンジン回転のシミュレーション方法
EP0729609A1 (en) * 1994-09-19 1996-09-04 Koninklijke Philips Electronics N.V. A microcontroller system for performing operations of multiple microcontrollers
US6490509B1 (en) * 1999-09-17 2002-12-03 Keihin Corporation Car controlling unit using a multitasking system
JP2003167737A (ja) * 2001-11-30 2003-06-13 Nec Corp スタック使用方法
GB2392515B (en) * 2002-08-28 2005-08-17 Livedevices Ltd Improvements relating to stack usage in computer-related operating systems
JP4487588B2 (ja) * 2004-02-18 2010-06-23 アイシン精機株式会社 開閉体制御装置
JP4241462B2 (ja) * 2004-03-26 2009-03-18 株式会社デンソー 制御ユニットおよびマイクロコンピュータ
JP2005351042A (ja) * 2004-06-14 2005-12-22 Aisin Seiki Co Ltd 開閉体制御装置
US9037152B1 (en) * 2005-11-12 2015-05-19 Alberto Herrera Small footprint real-time operating system for reactive systems
JP2007257257A (ja) * 2006-03-23 2007-10-04 Matsushita Electric Ind Co Ltd マルチタスクシステムにおけるタスク実行環境切替え方法
JP4770602B2 (ja) * 2006-06-23 2011-09-14 株式会社デンソー 電子機器
US8516462B2 (en) * 2006-10-09 2013-08-20 International Business Machines Corporation Method and apparatus for managing a stack
KR101334172B1 (ko) * 2007-01-05 2013-11-28 삼성전자주식회사 임베디드 시스템의 스택 오버플로우 방지 방법 및 장치
KR101352512B1 (ko) * 2007-01-15 2014-01-17 삼성전자주식회사 효율적인 메모리 사용을 위한 스택 관리 장치 및 방법
JP5044387B2 (ja) * 2007-12-26 2012-10-10 ルネサスエレクトロニクス株式会社 情報処理装置及びそのスタックポインタ更新方法
JP2011070290A (ja) * 2009-09-24 2011-04-07 Renesas Electronics Corp データプロセッサ
US8786240B2 (en) * 2009-11-03 2014-07-22 Sintokogio, Ltd. Method for controlling an electric cylinder and a control system for the electric cylinder
JP2011176918A (ja) * 2010-02-23 2011-09-08 On Semiconductor Trading Ltd モータ駆動回路
JP2012093832A (ja) * 2010-10-25 2012-05-17 Toyota Motor Corp 情報処理装置
FR2977694A1 (fr) * 2011-07-08 2013-01-11 St Microelectronics Rousset Microprocesseur protege contre un debordement de pile
US9389936B2 (en) * 2011-09-23 2016-07-12 Microsoft Technology Licensing, Llc. Monitoring the responsiveness of a user interface
WO2014172369A2 (en) * 2013-04-15 2014-10-23 Flextronics Ap, Llc Intelligent vehicle for assisting vehicle occupants and incorporating vehicle crate for blade processors
JP6129499B2 (ja) * 2012-09-03 2017-05-17 日立オートモティブシステムズ株式会社 自動車用電子制御システム
JP2014074995A (ja) * 2012-10-03 2014-04-24 Toyota Motor Corp 情報処理装置
KR101470162B1 (ko) * 2013-05-30 2014-12-05 현대자동차주식회사 메모리 스택 사이즈 모니터링 방법
US9529625B2 (en) * 2014-04-01 2016-12-27 Samsung Electronics Co., Ltd Method and system for providing stack memory management in real-time operating systems
JP6300371B2 (ja) * 2014-11-20 2018-03-28 ミネベアミツミ株式会社 モータ駆動制御装置およびモータ駆動制御方法

Also Published As

Publication number Publication date
WO2017002939A1 (ja) 2017-01-05
US20180173559A1 (en) 2018-06-21
JP2017016409A (ja) 2017-01-19
CN107710162A (zh) 2018-02-16
DE112016003029T5 (de) 2018-03-22
CN107710162B (zh) 2022-06-03

Similar Documents

Publication Publication Date Title
JP4770602B2 (ja) 電子機器
JP5316718B1 (ja) マルチコア・プロセッサ
US7086056B2 (en) Processor unit for executing event processes in real time without causing process interference
JP2015118662A (ja) 電子制御装置
US20180259577A1 (en) Electronic control apparatus and method
JP5533789B2 (ja) 車載電子制御装置
JP6306530B2 (ja) 自動車用電子制御装置
JP6771272B2 (ja) 車載電子制御装置及びスタック使用方法
JP6466269B2 (ja) 電子制御装置及びスタック領域の使用監視方法
JP6877475B2 (ja) 電子制御装置及びスタック使用方法
US20070239916A1 (en) Input-output control apparatus, input-output control method, process control apparatus and process control method
JP5699896B2 (ja) 情報処理装置、異常判定方法
JP6654230B2 (ja) 車両制御装置
JP6471510B2 (ja) マイクロコンピュータ
JP6365387B2 (ja) 電子制御装置
JP7226064B2 (ja) 電子制御装置
JP5381895B2 (ja) 制御装置、保護装置および保護方法
US6904543B2 (en) Electronic control having floating-point data check function
JP5942904B2 (ja) 処理装置
JP2021076021A (ja) 電子制御装置
JP6596455B2 (ja) 自動車用電子制御装置
JP2014035741A (ja) 電子制御装置
JP2023009818A (ja) 車両用電子制御装置及び車両用電子制御装置による制御方法
JP2022045239A (ja) 電子制御装置
JP2014035740A (ja) 電子制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180730

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20181211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190311

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20190311

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20190319

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20190326

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

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20190607

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20190611

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20190910

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200407

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200731

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20200818

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20200929

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20200929

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200929

R150 Certificate of patent or registration of utility model

Ref document number: 6771272

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250