JP6729430B2 - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- JP6729430B2 JP6729430B2 JP2017017448A JP2017017448A JP6729430B2 JP 6729430 B2 JP6729430 B2 JP 6729430B2 JP 2017017448 A JP2017017448 A JP 2017017448A JP 2017017448 A JP2017017448 A JP 2017017448A JP 6729430 B2 JP6729430 B2 JP 6729430B2
- Authority
- JP
- Japan
- Prior art keywords
- core
- cores
- value
- task
- bus load
- 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
Links
- 230000015654 memory Effects 0.000 claims description 55
- 238000012217 deletion Methods 0.000 claims description 2
- 230000037430 deletion Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 description 85
- 238000012937 correction Methods 0.000 description 73
- 230000008569 process Effects 0.000 description 73
- 230000006870 function Effects 0.000 description 47
- 238000012545 processing Methods 0.000 description 45
- 238000005457 optimization Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 239000000470 constituent Substances 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Landscapes
- Combined Controls Of Internal Combustion Engines (AREA)
Description
タスク削除部は、複数のコアのそれぞれについて、バス負荷予測値がバス負荷閾値を超えないように、コアに対応したスタック領域に登録されているタスクをスタック領域から削除するように構成される。
例えば、複数のコアのうちの1つのコアを第1コアとし、第1コアとは異なる1つのコアを第2コアとする。そして、車両の状態に応じて、第1コアおよび第2コアが共有メモリへアクセスする頻度は変化する。
本実施形態の電子制御装置1(以下、ECU1)は、車両に搭載され、図1に示すように、マイクロコンピュータ2(以下、マイコン2)を備える。ECUは、Electronic Control Unitの略である。
このように構成されたECU1において、マイコン2のコア11,12,13,14は、指令コア処理と、トリガー記録処理と、予測値計算処理と、他コアタスク制御処理を実行する。
指令コア処理が実行されると、コア11〜14は、図2に示すように、まずS10にて、予め設定されているバス負荷予測値演算イベント(以下、演算イベント)が発生したか否かを判断する。演算イベントとは、バス負荷が高くなることが予測される現象である。なお、「バス負荷が高い」とは、或るコアがバス17を使用しているために他のコアがバス17を長期間使用できずに待機している状態をいう。或るコアがバス17を占有すると他のコアがバス17にアクセスすることができずに、他のコアにおいて処理遅延またはタスク抜けが発生する。
トリガー記録処理が実行されると、コア11〜14は、図3に示すように、まずS210にて、自コアの補正値最適化トリガーが発生したか否かを判断する。本実施形態では、補正値最適化トリガーは、「タスク抜け」と「処理遅延」である。
S210で、自コアの補正値最適化トリガーが発生していないと判断した場合には、トリガー記録処理を一旦終了する。一方、自コアの補正値最適化トリガーが発生したと判断した場合には、S220にて、補正値最適化トリガーの種類と、現時点における自コアの運転状態とを、補正トリガー情報として、自コアのローカルメモリに記録し、トリガー記録処理を一旦終了する。
予測値計算処理が実行されると、コア11〜14は、図4に示すように、まずS310にて、自コアの計算開始フラグがセットされているか否かを判断する。ここで、自コアの計算開始フラグがセットされている場合には、S330に移行する。一方、自コアの計算開始フラグがセットされていない場合には、S320にて、他コアから計算依頼を受信したか否かを判断する。ここで、他コアから計算依頼を受信していない場合には、S310に移行する。一方、他コアから計算依頼を受信した場合には、S330に移行する。
次に、S100で実行される閾値最適化処理の手順を説明する。
自コアタスク制御処理が実行されると、コア11〜14は、図8に示すように、まずS610にて、自コアのスタック領域に登録されているタスクの中から、最も優先度が低いタスクを選択する。なお、タスクには、「高優先度」、「中優先度」および「低優先度」のように優先度が設定されている。スタック領域に登録されているタスクは、優先度が高いタスクを優先して順次実行される。
他コアタスク制御処理が実行されると、コア11〜14は、図9に示すように、まずS710にて、他コアからタスク制御依頼を受信したか否かを判断する。ここで、タスク制御依頼を受信していない場合には、他コアタスク制御処理を一旦終了する。一方、タスク制御依頼を受信した場合には、S720にて、S610と同様にして、自コアのスタック領域に登録されているタスクの中から、最も優先度が低いタスクを選択する。
そしてS750にて、S640と同様にして、バス負荷予測値PVに格納されている値が、タスク制御依頼とともに受信された自コアの閾値を超えているか否かを判断する。ここで、バス負荷予測値PVに格納されている値が自コアの閾値を超えている場合には、S720に移行する。一方、バス負荷予測値PVに格納されている値が自コアの閾値以下である場合には、他コアタスク制御処理を一旦終了する。
図10に示すように、まず、コア11で演算イベントが発生することにより、コア11は、計算依頼をコア12,13,14へ送信する処理P11を実行する。矢印L1,L2,L3はそれぞれ、コア11がコア12,13,14へ計算依頼を送信することを示す。
また、タスク制御依頼等を受信したコア12,13,14はそれぞれ、コア12,13,14におけるバス負荷期待値が閾値を超えないようにタスクを制御する処理P22,P32,P42を実行する。
このように構成されたECU1は、コア11,12,13,14と、RAM16と、バス17と、スタック領域31,32,33,34とを備える。
ECU1は、コア11,12,13,14のそれぞれについて、バス負荷予測値が閾値を超えないように、スタック領域31,32,33,34に登録されているタスクをスタック領域31,32,33,34から削除する。
例えば、車両のエンジンおよび電池の状態に応じて、それぞれコア11およびコア14がRAM16へアクセスする頻度は変化する。
以上、本開示の一実施形態について説明したが、本開示は上記実施形態に限定されるものではなく、種々変形して実施することができる。
例えば上記実施形態では、演算イベントとして、「各コアで実行予定のタスクを登録するスタック領域の使用率が予め設定された一定値を超えること」であるものを示した。しかし、スタック領域の使用率の代わりに、スタック領域に登録されているタスクの数を用いてもよい。例えば、スタック領域に登録可能な全タスク数が8である場合において、スタック領域に登録されているタスクの数が6以上であることを演算イベントとするようにしてもよい。これにより、演算イベントが発生したか否かを簡便な方法で判断することができる。
上記実施形態では、「スタック領域の使用率が予め設定された一定値を超えること」などのように、ソフトウェアによって実行される処理により判断されるものを、演算イベントとした。しかし、ドアの開閉、ライトのオン/オフ、カーナビ等のアクセサリ起動などのように、車両に搭載されたハードウェアの状態を、演算イベントとしてもよい。これにより、演算イベントが発生したか否かを、オンであるかオフであるかという簡便な方法で判断することができる。
上記実施形態では、バス負荷予測値が閾値を超えている場合に、スタック領域に登録されているタスクの中から、最も優先度が低いタスクを削除するものを示した。しかし、最も優先度が低いタスクが2つ以上存在する場合には、タスクで呼ばれる関数の優先度が最も低いタスクを選択するようにするとよい。これにより、ECU1は、削除した場合に車両への影響が小さい方のタスクを選択することができる。
上記実施形態では、演算イベントが発生したコアで閾値を算出する処理を実行するものを示した。しかし、計算資源に余裕があるコアで、閾値を算出する処理を実行させるようにしてもよい。これにより、演算イベントが発生したコアで、負荷が高くなってしまう事態の発生を抑制することができる。また、複数のコアが同性能でなく、高性能のコアと低性能のコアとを組み合わせた場合に、閾値を算出する処理を高性能のコアで実行させるようにしてもよい。
Claims (1)
- 車両を制御する電子制御装置(1)であって、
複数のコア(11,12,13,14)と、
複数の前記コアのそれぞれがアクセス可能な共有メモリ(16)と、
複数の前記コアと前記共有メモリとの間をデータの入出力が可能となるように接続するバス(17)と、
複数の前記コアのそれぞれに対応して設けられ、対応する前記コアが実行する1つ又は複数のタスクが登録されるスタック領域(31,32,33,34)と、
複数の前記コアのそれぞれについて、前記スタック領域に登録されていている前記タスクにより前記バスを介して前記共有メモリへアクセスするときに前記バスに掛かるバス負荷の度合いを予測したバス負荷予測値を算出するように構成された負荷予測部(S330〜S410)と、
複数の前記コアのそれぞれについて、前記車両の状態に基づいて、前記バス負荷の許容値を示すバス負荷閾値を算出するように構成された閾値算出部(S510〜S570)と、
複数の前記コアのそれぞれについて、前記バス負荷予測値が前記バス負荷閾値を超えないように、前記コアに対応した前記スタック領域に登録されている前記タスクを前記スタック領域から削除するように構成されたタスク削除部(S610〜S640,S720〜S750)と
を備え、
前記車両には、複数の制御対象が搭載され、
複数の前記コアのそれぞれは、互いに異なる前記制御対象を制御するための前記タスクを実行するように構成され、
前記閾値算出部は、複数の前記コアのそれぞれについて、前記コアに対応する前記制御対象の状態を、前記車両の状態として、前記バス負荷閾値を算出する電子制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017017448A JP6729430B2 (ja) | 2017-02-02 | 2017-02-02 | 電子制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017017448A JP6729430B2 (ja) | 2017-02-02 | 2017-02-02 | 電子制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018124856A JP2018124856A (ja) | 2018-08-09 |
JP6729430B2 true JP6729430B2 (ja) | 2020-07-22 |
Family
ID=63109815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017017448A Active JP6729430B2 (ja) | 2017-02-02 | 2017-02-02 | 電子制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6729430B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3950236A4 (en) | 2019-03-29 | 2022-07-06 | Sony Group Corporation | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND PROGRAM |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010027062A (ja) * | 2009-08-21 | 2010-02-04 | Hitachi Ltd | 分散制御システム |
JP6372315B2 (ja) * | 2014-11-11 | 2018-08-15 | コニカミノルタ株式会社 | 画像処理装置及び並列処理制御プログラム並びに並列処理制御方法 |
-
2017
- 2017-02-02 JP JP2017017448A patent/JP6729430B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018124856A (ja) | 2018-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4028674B2 (ja) | 多重システム・クラスタ内のサーバの数を制御する方法及び装置 | |
US8959515B2 (en) | Task scheduling policy for limited memory systems | |
JP3922070B2 (ja) | 分散制御方法及び装置 | |
JP2009541848A (ja) | コンピュータマイクロジョブを中断せずに実行するようスケジュールするための方法、システムおよび装置 | |
JP2012079124A (ja) | ジョブ分散処理システム、情報処理装置及びプログラム | |
CN108351840B (zh) | 车辆控制装置 | |
CN111104208A (zh) | 进程调度管理方法、装置、计算机设备及存储介质 | |
WO2024120205A1 (zh) | 一种应用性能优化方法、装置、电子设备及存储介质 | |
US11115232B2 (en) | Method and device for operating a control unit | |
JP4241462B2 (ja) | 制御ユニットおよびマイクロコンピュータ | |
CN115617497A (zh) | 线程处理方法、调度组件、监测组件、服务器和存储介质 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
KR20200128589A (ko) | 정보 처리 장치, 튜닝 방법 및 기록 매체에 저장된 튜닝 프로그램 | |
JP6729430B2 (ja) | 電子制御装置 | |
US8555285B2 (en) | Executing a general-purpose operating system as a task under the control of a real-time operating system | |
US20150331466A1 (en) | Method and apparatus for managing a thermal budget of at least a part of a processing system | |
CN110928827B (zh) | 一种访问PCIe设备的优化的方法和设备 | |
JP7204443B2 (ja) | 車両制御装置およびプログラム実行方法 | |
JP2006215621A (ja) | Dma制御装置 | |
CN112882940A (zh) | 用例任务调度方法、系统、装置、设备及存储介质 | |
JP2020091540A (ja) | 情報処理装置 | |
JP3998686B2 (ja) | Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置 | |
US11520638B1 (en) | Combined active and preinitialized resource management for rapid autoscaling | |
CN113590289B (zh) | 作业调度方法、系统、装置、计算机设备和存储介质 | |
CN113791866B (zh) | 控制Pod资源占用量的方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190409 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200310 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200424 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200602 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200615 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6729430 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 |