JP2017182627A - マイクロコンピュータ - Google Patents

マイクロコンピュータ Download PDF

Info

Publication number
JP2017182627A
JP2017182627A JP2016071833A JP2016071833A JP2017182627A JP 2017182627 A JP2017182627 A JP 2017182627A JP 2016071833 A JP2016071833 A JP 2016071833A JP 2016071833 A JP2016071833 A JP 2016071833A JP 2017182627 A JP2017182627 A JP 2017182627A
Authority
JP
Japan
Prior art keywords
core
processing
slave
master
unit
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.)
Granted
Application number
JP2016071833A
Other languages
English (en)
Other versions
JP6519515B2 (ja
Inventor
山内 直樹
Naoki Yamauchi
直樹 山内
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 JP2016071833A priority Critical patent/JP6519515B2/ja
Publication of JP2017182627A publication Critical patent/JP2017182627A/ja
Application granted granted Critical
Publication of JP6519515B2 publication Critical patent/JP6519515B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

【課題】マイコンにおいて処理効率を向上させる【解決手段】コア21はイベント生成部31と同期部42とタスク要求部41とスケジューラ33を備える。コア22はイベント管理部52とスケジューラ53を備える。イベント生成部31は、角度イベント生成条件が成立したか否かを判断する。同期部42は、角度イベント生成条件が成立した場合に角度同期イベント情報をコア22へ出力する。タスク要求部41とイベント管理部52は、予め設定された複数の処理を含む角度同期タスクの実行を要求する。スケジューラ33,53は、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに基づいて、複数の処理の中から、コア21,22に実行させる処理を決定する。【選択図】図1

Description

本開示は、コアを複数備えるマイクロコンピュータに関する。
特許文献1のように、複数のコアを備え、複数の処理を各コアに割り当てることにより、複数の処理を並列に実行するように構成されたマイクロコンピュータが知られている。
特開2012−108576号公報
複数の処理を複数のコアに割り当てて実行する場合には、各コアで個別に処理が進行する。しかし、複数の処理の中で、第1の処理の実行が完了するまでは第2の処理の開始を保留させておくというような処理順序が設定されている場合がある。この場合に、上記の第1の処理を第1のコアに割り当て、上記の第2の処理を第2のコアに割り当てると、第1のコアが第1の処理の実行を完了するまで、第2のコアは処理を行うことなく待機していなくてはならないという状況が発生し、処理効率が低下してしまう恐れがある。
本開示は、コアを複数備えるマイクロコンピュータにおいて処理効率を向上させることを目的とする。
本開示の一態様は、演算処理を実行するコア(21,22)を複数備えるマイクロコンピュータ(3)であって、複数のコアのうち、1個のコアをマスタコア(21)とし、マスタコア以外のコアをスレーブコア(22)とする。
マスタコアは、イベント判断部(31)と、情報出力部(42)と、マスタ要求部(41)と、マスタ決定部(33)とを備える。スレーブコアは、スレーブ要求部(52)と、スレーブ決定部(53)とを備える。
イベント判断部は、予め設定されたイベント発生条件が成立したか否かを判断するように構成される。
情報出力部は、イベント発生条件が成立したとイベント判断部が判断した場合に、イベントが発生した旨を示すイベント情報をスレーブコアへ出力するように構成される。
マスタ要求部は、イベント発生条件が成立したとイベント判断部が判断した場合に、イベントに対応して予め設定された複数の演算処理を含むタスクの実行を要求するように構成される。
マスタ決定部は、マスタ要求部がタスクの実行を要求した場合に、処理制約情報と、処理状態情報とに基づいて、複数の演算処理の中から、マスタコアに実行させる演算処理を決定するように構成される。処理制約情報は、タスクに含まれる複数の演算処理のそれぞれについて事前に実行する必要がある他の演算処理が予め設定される。処理状態情報は、タスクに含まれる複数の演算処理のそれぞれについて演算処理を実行可能な状態であるか否かを示す。
スレーブ要求部は、情報出力部からイベント情報が入力されると、タスクの実行を要求するように構成される。スレーブ決定部は、スレーブ要求部がタスクの実行を要求した場合に、処理制約情報と処理状態情報とに基づいて、複数の演算処理の中から、スレーブコアに実行させる演算処理を決定するように構成される。
このように構成されたマイクロコンピュータでは、イベント発生条件が成立したとマスタコアのイベント判断部が判断すると、マスタコアの情報出力部がイベント情報をスレーブコアへ出力する。このため、イベントの発生をマスタコアとスレーブコアの両方で認識することができる。
そして、イベントが発生すると、マスタコアおよびスレーブコアはそれぞれ独立に、処理制約情報と処理状態情報とに基づいて、複数の演算処理の中から、マスタコアおよびスレーブコアに実行させる演算処理を決定する。
ここで、例えば、第1の処理の実行が完了するまでは第2の処理の開始を保留させておくという処理順序が処理制約情報に設定されているとする。この場合に、第1の処理をマスタコアに割り当て、第2の処理をスレーブコアに割り当てると、マスタコアが第1の処理の実行を完了するまで、スレーブコアは処理を行うことなく待機していなくてはならない状況が発生する。しかし、スレーブコアは、マスタコアが第1の処理を実行している間に、処理制約情報および処理状態情報に基づいて、第1の処理の実行が完了するまで開始を保留させておく必要がなく且つ演算処理を実行可能な状態である第3の処理を実行することができる。
このように、本開示のマイクロコンピュータは、マスタコアおよびスレーブコアの少なくとも一方が演算処理を行っていないという状況の発生を抑制し、処理効率を向上させることができる。
なお、この欄および特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
ECU1の構成を示すブロック図である。 処理順制約テーブル40の構成を示す図である。 第1処理順判断処理の第1部分を示すフローチャートである。 第1処理順判断処理の第2部分を示すフローチャートである。 第2処理順判断処理の第1部分を示すフローチャートである。 第2処理順判断処理の第2部分を示すフローチャートである。 RAM13に記憶される共有データを示す図である。 エンジン位置23とエンジン位置0においてコア21,22で実行される処理を示す図である。
以下に本開示の実施形態を図面とともに説明する。
本実施形態の電子制御装置1(以下、ECU1)は、車両に搭載され、図1に示すように、マイクロコンピュータ(以下、マイコン)、入力回路4および出力回路5を備えている。ECUは、Electronic Control Unitの略である。
そしてマイコン3には、図示しないクランク角センサ、エアフロメータ、スロットル開度センサ、吸気圧センサおよび空燃比センサ等からの信号が、入力回路4を介して入力される。
クランク角センサは、エンジンのクランク軸の回転角を検出する。エアフロメータは、吸気管を通ってエンジンに供給される空気量を検出する。スロットル開度センサは、スロットルバルブの開度を検出する。吸気圧センサは、吸気管内の圧力を検出する。空燃比センサは、排ガス中の酸素濃度からエンジンに供給された燃料混合気の空燃比を検出する。
そしてマイコン3は、入力回路4を介して入力される上記各信号に基づいてエンジンの状態を検出するとともに、その検出結果に基づいて、スロットルバルブの開度を変えるスロットルモータ、各気筒内の点火プラグ、および各気筒内のインジェクタなどの各種アクチュエータを駆動するための駆動信号を出力回路5を介して出力してエンジンを作動させる。
またマイコン3は、CPU11、ROM12、RAM13、I/O14及びこれらの構成を接続するバスラインなどから構成され、ROM12に記憶されたプログラムに基づいて、エンジンを制御するための各種制御処理を実行する。マイクロコンピュータの各種機能は、CPU11が非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、ROM12が、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムの実行により、プログラムに対応する方法が実行される。
さらにCPU11は、プログラムを実行するための演算ユニットおよびレジスタなどを含むCPUコア(以下、コア)21,22を備える。コア21,22は、エンジンを制御するための各種制御処理を分散して実行する。コア21,22のうち、コア21はマスタとして機能し、コア22はスレーブとして機能する。そして、コア21とコア22との間はデータ通信可能に接続されている。以下、コア21をマスタコア21ともいい、コア22をスレーブコア22ともいう。
マスタコア21は、イベント生成部31、イベント管理部32、スケジューラ33、処理実行部34およびデータ管理部35を備える。
イベント生成部31は、予め設定された角度イベント生成条件が成立したか否かを判断し、角度イベント生成条件が成立したと判断した場合に、角度同期イベントを生成する。本実施形態の角度イベント生成条件は、クランク軸が予め設定されたイベント生成角度(例えば、30°CA)回転することである。このため、イベント生成部31は、クランク角センサからの信号に基づいて、クランク軸がイベント生成角度回転する毎に角度同期イベントを生成する。またイベント生成部31は、予め設定された時間イベント生成条件が成立したか否かを判断し、時間イベント生成条件が成立したと判断した場合に、時間同期イベントを生成する。本実施形態の時間イベント生成条件は、予め設定されたイベント生成時間(例えば、1ms)が経過することである。このため、イベント生成部31は、イベント生成時間が経過する毎に、時間同期イベントを生成する。
イベント生成部31は、角度同期イベントを生成すると、角度同期イベントを生成した旨を示す角度同期イベント情報をイベント管理部32へ出力する。イベント生成部31は、時間同期イベントを生成すると、時間同期イベントを生成した旨を示す時間同期イベント情報をイベント管理部32へ出力する。
イベント管理部32は、タスク要求部41と同期部42を備える。タスク要求部41は、イベント生成部31から角度同期イベント情報が入力されると、角度同期イベントに対応して予め設定された角度同期タスクの実行を要求する実行要求をスケジューラ33へ出力する。タスク要求部41は、イベント生成部31から時間同期イベント情報が入力されると、時間同期イベントに対応して予め設定された時間同期タスクの実行を要求する実行要求をスケジューラ33へ出力する。
角度同期タスクは、複数の処理を含んでいる。本実施形態では、角度同期タスクは、処理A1、処理B1、処理C1、処理D1、処理E1および処理F1を含んでいる。処理A1〜F1には、実行コア制約と処理順制約が設定されている。実行コア制約とは、処理を実行可能なコアの制限である。処理順制約とは、事前に実行する必要がある処理が完了するまで処理の実行が制限されることである。
同様に、時間同期タスクは、複数の処理を含んでいる。本実施形態では、時間同期タスクは、処理A2、処理B2、処理C2、処理D2および処理E2を含んでいる。処理A2〜E2には、実行コア制約と処理順制約が設定されている。
同期部42は、イベント生成部31から角度同期イベント情報が入力されると、角度同期イベント情報をスレーブコア22へ出力する。同期部42は、イベント生成部31から時間同期イベント情報が入力されると、時間同期イベント情報をスレーブコア22へ出力する。
スケジューラ33は、処理順制約テーブル40を備える。処理順制約テーブル40には、角度同期タスクの実行コア制約および処理順制約と、時間同期タスクの実行コア制約および処理順制約とが設定されている。
スケジューラ33は、イベント管理部32から角度同期タスクの実行要求が入力されると、処理順制約テーブル40に設定されている角度同期タスクの実行コア制約および処理順制約に基づいて、実行する処理を決定し、決定した処理を示す実行要求を処理実行部34へ出力する。スケジューラ33は、イベント管理部32から時間同期タスクの実行要求が入力されると、処理順制約テーブル40に設定されている時間同期タスクの実行コア制約および処理順制約に基づいて、実行する処理を決定し、決定した処理を示す実行要求を処理実行部34へ出力する。
処理実行部34は、スケジューラ33から入力された実行要求に基づいて、角度同期タスクの処理と、時間同期タスクの処理を実行する。
データ管理部35は、処理実行部34が処理を実行することにより算出されたデータのうち、コア21とコア22との間で共有する必要がある共有データをRAM13に記憶する。
スレーブコア22は、イベント管理部52、スケジューラ53、処理実行部54およびデータ管理部55を備える。
イベント管理部52は、同期部61とタスク要求部62を備える。同期部61は、マスタコア21から角度同期イベント情報が入力されると、角度同期イベント情報をタスク要求部62へ出力する。同期部61は、マスタコア21から時間同期イベント情報が入力されると、時間同期イベント情報をタスク要求部62へ出力する。
タスク要求部62は、同期部61から角度同期イベント情報が入力されると、角度同期タスクの実行を要求する実行要求をスケジューラ53へ出力する。タスク要求部62は、同期部61から時間同期イベント情報が入力されると、時間同期タスクの実行を要求する実行要求をスケジューラ53へ出力する。
スケジューラ53は、処理順制約テーブル40を備える。スケジューラ53は、イベント管理部52から角度同期タスクの実行要求が入力されると、処理順制約テーブル40に設定されている角度同期タスクの実行コア制約および処理順制約に基づいて、実行する処理を決定し、決定した処理を示す実行要求を処理実行部54へ出力する。スケジューラ53は、イベント管理部52から時間同期タスクの実行要求が入力されると、処理順制約テーブル40に設定されている時間同期タスクの実行コア制約および処理順制約に基づいて、実行する処理を決定し、決定した処理を示す実行要求を処理実行部54へ出力する。
処理実行部54は、スケジューラ53から入力された実行要求に基づいて、角度同期タスクの処理と、時間同期タスクの処理を実行する。
データ管理部55は、処理実行部54が処理を実行することにより算出されたデータのうち、コア21とコア22との間で共有する必要がある共有データをRAM13に記憶する。
図2に示すように、処理順制約テーブル40には、処理A1〜F1の実行コア制約および処理順制約と、処理A2〜E2の実行コア制約および処理順制約とが設定されている。
具体的には、処理A1,C1,F1の実行コア制約は、コア21,22で実行可能となるように設定されている。処理B1の実行コア制約は、コア21で実行可能でありコア22で実行不可となるように設定されている。処理D1,E1の実行コア制約は、コア22で実行可能でありコア21で実行不可となるように設定されている。
処理A1,D1の処理順制約は、事前に実行する必要がある処理がないように設定されている。処理B1,C1の処理順制約は、事前に実行する必要がある処理が処理A1であるように設定されている。処理E1の処理順制約は、事前に実行する必要がある処理が処理D1であるように設定されている。処理F1の処理順制約は、事前に実行する必要がある処理が処理A1,B1,C1であるように設定されている。
処理A2,C2,D2の実行コア制約は、コア21,22で実行可能となるように設定されている。処理E2の実行コア制約は、コア21で実行可能でありコア22で実行不可となるように設定されている。処理B2の実行コア制約は、コア22で実行可能でありコア21で実行不可となるように設定されている。
処理A2,E2の処理順制約は、事前に実行する必要がある処理がないように設定されている。処理B2の処理順制約は、事前に実行する必要がある処理が処理A2であるように設定されている。処理C2の処理順制約は、事前に実行する必要がある処理が処理B2であるように設定されている。処理D2の処理順制約は、事前に実行する必要がある処理が処理A2,B2,C2であるように設定されている。
このように構成されたECU1において、スケジューラ33,53は、第1処理順判断処理と第2処理順判断処理を実行する。なお、スケジューラ33,53が実行する機能の一部または全部を、一つあるいは複数のIC等によりハードウェア的に構成してもよい。
ここで、スケジューラ33,53が実行する第1処理順判断処理の手順を説明する。第1処理順判断処理は、ECU1の動作中において繰り返し実行される処理である。
第1処理順判断処理が実行されると、スケジューラ33,53は、図3に示すように、まずS10にて、角度同期タスクの実行要求が入力されたか否かを判断する。ここで、角度同期タスクの実行要求が入力されていない場合には、第1処理順判断処理を一旦終了する。一方、角度同期タスクの実行要求が入力された場合には、S15にて、角度同期タスクに含まれる複数の処理A1,B1,C1,D1,E1,F1の処理状態情報を「未処理」に設定する。処理状態情報は、処理A1〜F1のそれぞれに対して設けられており、RAM13に記憶されている。処理状態情報には、「未処理」、「実行中」および「終了」の何れか1つの状態が設定される。処理状態情報は、初期値として、「未処理」の状態が設定されている。そしてS20にて、角度同期タスクに含まれる複数の処理A1,B1,C1,D1,E1,F1の中から1つの処理を選択する。以下、S20で選択された処理を第1対象処理という。
次にS30にて、処理順制約テーブル40における第1対象処理の実行コア制約を参照することにより、第1対象処理を自身のコア(以下、自コア)で実行可能であるか否かを判断する。例えば、コア21のスケジューラ33が第1処理順判断処理を実行している場合において、第1対象処理として処理B1を選択したときには、自コアで実行可能であると判断される。また、コア22のスケジューラ53が第1処理順判断処理を実行している場合において、第1対象処理として処理B1を選択したときには、自コアで実行可能でないと判断される。処理順制約テーブル40の実行コア制約では、処理B1はコア21で実行可能でありコア22で実行不可となるように設定されているためである。
ここで、自コアで実行可能でないと判断した場合には、S20に移行する。一方、自コアで実行可能であると判断した場合には、S40にて、第1対象処理に対して設けられている処理状態情報を参照することにより、第1対象処理が「実行中」または「終了」であるか否かを判断する。
ここで、第1対象処理が「実行中」または「終了」である場合には、S20に移行する。一方、第1対象処理が「実行中」または「終了」でない場合には、第1対象処理が「未処理」であると判断し、S50にて、処理順制約テーブル40における第1対象処理の処理順制約を参照することにより、第1対象処理の処理順制約で設定されている処理(以下、第1制約処理)を処理順制約テーブル40から抽出する。例えば、第1対象処理として処理B1を選択したときには、処理A1が第1制約処理として抽出される。また、第1対象処理として処理F1を選択したときには、処理A1,B1,C1が第1制約処理として抽出される。
次にS60にて、S50にて第1制約処理が抽出されたか否かを判断する。ここで、第1制約処理が抽出されなかった場合には、S150に移行する。一方、第1制約処理が抽出された場合には、S70にて、S50にて抽出された1つまたは複数の第1制約処理の中から1つの第1制約処理を選択する。以下、S70で選択された第1制約処理を第1対象制約処理という。
そしてS80にて、第1対象制約処理に対して設けられている処理状態情報を参照することにより、第1対象制約処理が「終了」であるか否かを判断する。ここで、第1対象制約処理が「終了」である場合には、S140に移行する。一方、第1対象制約処理が「終了」ではない場合には、S90にて、第1対象制約処理が「実行中」であるか否かを判断する。ここで、対象制約処理が「実行中」である場合には、S70に移行する。
一方、第1対象制約処理が「実行中」でない場合には、第1対象制約処理が「未処理」であると判断し、S100にて、処理順制約テーブル40における第1対象制約処理の実行コア制約を参照することにより、第1対象制約処理を自コアで実行可能であるか否かを判断する。ここで、第1対象制約処理を自コアで実行可能でないと判断した場合には、S70に移行する。一方、第1対象制約処理を自コアで実行可能であると判断した場合には、S110にて、第1対象制約処理の処理状態情報を「実行中」に設定する。さらにS120にて、自コアの処理実行部に第1対象制約処理を実行させ、第1対象制約処理が終了するまで待機する。自コアの処理実行部とは、コア21のスケジューラ33が第1処理順判断処理を実行している場合には処理実行部34であり、コア22のスケジューラ53が第1処理順判断処理を実行している場合には処理実行部54である。
そして、自コアの処理実行部が第1対象制約処理の実行を終了するとS120の処理を終了し、S130にて、第1対象制約処理の処理状態情報を「終了」に設定し、S140に移行する。
そしてS140に移行すると、S50にて抽出された全ての第1制約処理の処理状態情報が「終了」に設定されているか否かを判断する。ここで、全ての第1制約処理の処理状態情報が「終了」に設定されていない場合には、S70に移行する。一方、全ての第1制約処理の処理状態情報が「終了」に設定されている場合には、S150に移行する。
そしてS150に移行すると、図4に示すように、第1対象処理の処理状態情報を「実行中」に設定する。さらにS160にて、自コアの処理実行部に第1対象処理を実行させ、第1対象処理が終了するまで待機する。そして、自コアの処理実行部が第1対象処理の実行を終了するとS160の処理を終了し、S170にて、第1対象処理の処理状態情報を「終了」に設定する。
その後S180にて、角度同期タスクに含まれる全ての処理の処理状態情報が「終了」に設定されているか否かを判断する。ここで、全ての処理の処理状態情報が「終了」に設定されていない場合には、S20に移行する。一方、全ての処理の処理状態情報が「終了」に設定されている場合には、第1処理順判断処理を一旦終了する。
次に、スケジューラ33,53が実行する第2処理順判断処理の手順を説明する。第2処理順判断処理は、ECU1の動作中において繰り返し実行される処理である。
第2処理順判断処理が実行されると、スケジューラ33,53は、図5に示すように、まずS310にて、時間同期タスクの実行要求が入力されたか否かを判断する。ここで、時間同期タスクの実行要求が入力されていない場合には、第2処理順判断処理を一旦終了する。一方、時間同期タスクの実行要求が入力された場合には、S315にて、時間同期タスクに含まれる複数の処理A2,B2,C2,D2,E2の処理状態情報を「未処理」に設定する。処理状態情報は、処理A2〜E2のそれぞれに対して設けられており、RAM13に記憶されている。そしてS320にて、時間同期タスクに含まれる複数の処理A2,B2,C2,D2,E2の中から1つの処理を選択する。以下、S320で選択された処理を第2対象処理という。
次にS330にて、処理順制約テーブル40における第2対象処理の実行コア制約を参照することにより、第2対象処理を自コアで実行可能であるか否かを判断する。ここで、自コアで実行可能でないと判断した場合には、S320に移行する。一方、自コアで実行可能であると判断した場合には、S340にて、第2対象処理に対して設けられている処理状態情報を参照することにより、第2対象処理が「実行中」または「終了」であるか否かを判断する。
ここで、第2対象処理が「実行中」または「終了」である場合には、S320に移行する。一方、第2対象処理が「実行中」または「終了」でない場合には、第2対象処理が「未処理」であると判断し、S350にて、処理順制約テーブル40における第2対象処理の処理順制約を参照することにより、第2対象処理の処理順制約で設定されている処理(以下、第2制約処理)を処理順制約テーブル40から抽出する。
次にS360にて、S350にて第2制約処理が抽出されたか否かを判断する。ここで、第2制約処理が抽出されなかった場合には、S450に移行する。一方、第2制約処理が抽出された場合には、S370にて、S350にて抽出された1つまたは複数の第2制約処理の中から1つの第2制約処理を選択する。以下、S370で選択された第2制約処理を第2対象制約処理という。
そしてS380にて、第2対象制約処理に対して設けられている処理状態情報を参照することにより、第2対象制約処理が「終了」であるか否かを判断する。ここで、第2対象制約処理が「終了」である場合には、S440に移行する。一方、第2対象制約処理が「終了」ではない場合には、S390にて、第2対象制約処理が「実行中」であるか否かを判断する。ここで、第2対象制約処理が「実行中」である場合には、S370に移行する。
一方、第2対象制約処理が「実行中」でない場合には、第2対象制約処理が「未処理」であると判断し、S400にて、処理順制約テーブル40における第2対象制約処理の実行コア制約を参照することにより、第2対象制約処理を自コアで実行可能であるか否かを判断する。ここで、第2対象制約処理を自コアで実行可能でないと判断した場合には、S370に移行する。一方、第2対象制約処理を自コアで実行可能であると判断した場合には、S410にて、第2対象制約処理の処理状態情報を「実行中」に設定する。さらにS420にて、自コアの処理実行部に第2対象制約処理を実行させ、第2対象制約処理が終了するまで待機する。
そして、自コアの処理実行部が第2対象制約処理の実行を終了するとS420の処理を終了し、S430にて、第2対象制約処理の処理状態情報を「終了」に設定し、S440に移行する。
そしてS440に移行すると、S350にて抽出された全ての第2制約処理の処理状態情報が「終了」に設定されているか否かを判断する。ここで、全ての第2制約処理の処理状態情報が「終了」に設定されていない場合には、S370に移行する。一方、全ての第2制約処理の処理状態情報が「終了」に設定されている場合には、S450に移行する。
そしてS450に移行すると、図6に示すように、第2対象処理の処理状態情報を「実行中」に設定する。さらにS460にて、自コアの処理実行部に第2対象処理を実行させ、第2対象処理が終了するまで待機する。そして、自コアの処理実行部が第2対象処理の実行を終了するとS460の処理を終了し、S470にて、第2対象処理の処理状態情報を「終了」に設定する。
その後S480にて、時間同期タスクに含まれる全ての処理の処理状態情報が「終了」に設定されているか否かを判断する。ここで、全ての処理の処理状態情報が「終了」に設定されていない場合には、S320に移行する。一方、全ての処理の処理状態情報が「終了」に設定されている場合には、第2処理順判断処理を一旦終了する。
データ管理部35は、処理実行部34が処理A1〜F1を実行することにより算出されたデータのうち、上記の共有データをRAM13に記憶する。例えば、図7に示すように、処理実行部34が処理A1を実行することにより、データDTA1,・・・,DTA4,DTA5,・・・が算出される。これらのデータのうち、共有データは、データDTA1,DTA4,DTA5,・・・である。また、処理実行部34が処理E1を実行することにより、データDTE1,・・・,DTE3,・・・,DTA6,・・・が算出される。これらのデータのうち、共有データは、データDTE1,DTE3,DTE6,・・・である。処理実行部34は、これらの共有データDTA1,DTA4,DTA5,・・・,DTE1,DTE3,DTE6,・・・について、エンジン位置0,1,・・・・・,22,23における算出値をRAM13に記憶する。
エンジン位置は、クランク軸の2回転を1周期としたクランク角であり、エンジン位置0は、0°CAのクランク角に相当する。また、エンジン位置1,・・・,22,23はそれぞれ、30°CA,・・・,660°CA,690°CAのクランク角に相当する。
データ管理部55は、処理実行部54が処理A2〜E2を実行することにより算出されたデータのうち、上記の共有データをRAM13に記憶する。
このように構成されたマイコン3は、コア21,22を備える。コア21,22のうち、コア21をマスタコア21とし、コア22をスレーブコア22とする。
マスタコア21は、イベント生成部31と、同期部42と、タスク要求部41と、スケジューラ33とを備える。スレーブコア22は、イベント管理部52と、スケジューラ53とを備える。
イベント生成部31は、予め設定された角度イベント生成条件が成立したか否かを判断するとともに、予め設定された時間イベント生成条件が成立したか否かを判断するように構成される。
同期部42は、角度イベント生成条件が成立したとイベント生成部31が判断した場合に、角度同期イベントが発生した旨を示す角度同期イベント情報をスレーブコア22へ出力するように構成される。また同期部42は、時間イベント生成条件が成立したとイベント生成部31が判断した場合に、時間同期イベントが発生した旨を示す時間同期イベント情報をスレーブコア22へ出力するように構成される。
タスク要求部41は、角度イベント生成条件が成立したとイベント生成部31が判断した場合に、角度同期イベントに対応して予め設定された処理A1、処理B1、処理C1、処理D1、処理E1および処理F1を含む角度同期タスクの実行を要求するように構成される。またタスク要求部41は、時間イベント生成条件が成立したとイベント生成部31が判断した場合に、時間同期イベントに対応して予め設定された処理A2、処理B2、処理C2、処理D2および処理E1を含む時間同期タスクの実行を要求するように構成される。
スケジューラ33は、タスク要求部41が角度同期タスクの実行を要求した場合に、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに基づいて、処理A1〜F1の中から、マスタコア21に実行させる処理を決定するように構成される。またスケジューラ33は、タスク要求部41が時間同期タスクの実行を要求した場合に、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに基づいて、処理A2〜E2の中から、マスタコア21に実行させる処理を決定するように構成される。
イベント管理部52は、同期部42から角度同期イベント情報が入力されると、角度同期タスクの実行を要求するように構成される。またイベント管理部52は、同期部42から時間同期イベント情報が入力されると、時間同期タスクの実行を要求するように構成される。スケジューラ53は、イベント管理部52が角度同期タスクの実行を要求した場合に、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに基づいて、処理A1〜F1の中から、スレーブコア22に実行させる処理を決定するように構成される。またスケジューラ53は、イベント管理部52が時間同期タスクの実行を要求した場合に、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに基づいて、処理A2〜E2の中から、スレーブコア22に実行させる処理を決定するように構成される。
このように構成されたマイコン3では、角度イベント生成条件が成立したとマスタコア21のイベント生成部31が判断すると、マスタコア21の同期部42が角度同期イベント情報をスレーブコア22へ出力する。また、時間イベント生成条件が成立したとマスタコア21のイベント生成部31が判断すると、マスタコア21の同期部42が時間同期イベント情報をスレーブコア22へ出力する。このため、角度同期イベントおよび時間同期イベントの発生をマスタコア21とスレーブコア22の両方で認識することができる。
そして、角度同期イベントまたは時間同期イベントが発生すると、マスタコア21およびスレーブコア22はそれぞれ独立に、処理順制約テーブル40に設定されている処理順制約と処理状態情報とに基づいて、複数の処理の中から、マスタコア21およびスレーブコア22に実行させる処理を決定する。
ここで、例えば、処理A1の実行が完了するまでは処理B1の開始を保留させておくという処理順序が処理順制約テーブル40に設定されているとする。この場合に、処理A1をマスタコア21に割り当て、処理B1をスレーブコア22に割り当てると、マスタコア21が処理A1の実行を完了するまで、スレーブコア22は処理を行うことなく待機していなくてはならない状況が発生する。しかし、スレーブコア22は、マスタコア21が処理A1を実行している間に、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに基づいて、処理A1の実行が完了するまで開始を保留させておく必要がなく且つ処理を実行可能な状態である処理D1を実行することができる。
このようにマイコン3は、マスタコア21およびスレーブコア22の少なくとも一方が処理を行っていないという状況の発生を抑制し、処理効率を向上させることができる。
またマイコン3では、スケジューラ33およびスケジューラ53は、処理順制約テーブル40に設定されている処理順制約と、処理状態情報とに加えて、更に、処理順制約テーブル40に設定されている実行コア制約に基づいて、実行させる処理を決定するように構成される。これにより、マイコン3は、処理順制約と実行コア制約とを同時に満たして、角度同期タスクおよび時間同期タスクを実行することができる。
またマイコン3では、スケジューラ33は、処理A1〜F1の中から1つの処理を選択するように構成されている。またスケジューラ33は、処理A2〜E2の中から1つの処理を選択するように構成されている。そしてスケジューラ33は、処理順制約テーブル40に設定されている処理順制約および実行コア制約と処理状態情報とに基づいて、第1対象処理および第2対象処理がマスタコア21において実行可能であるか否かを判断する。
そしてスケジューラ33は、マスタコア21において第1対象処理および第2対象処理を実行可能ではないと判断した場合に、更に他の処理を第1対象処理および第2対象処理として選択する。
同様に、スケジューラ33は、処理順制約テーブル40に設定されている処理順制約および実行コア制約と処理状態情報とに基づいて、第1対象制約処理および第2対象制約処理がマスタコア21において実行可能であるか否かを判断する。そしてスケジューラ33は、マスタコア21において第1対象制約処理および第2対象制約処理を実行可能ではないと判断した場合に、更に他の処理を第1対象制約処理および第2対象制約処理として選択する。
またスケジューラ53は、処理A1〜F1の中から1つの処理を選択するように構成されている。またスケジューラ53は、処理A2〜E2の中から1つの処理を選択するように構成されている。そしてスケジューラ53は、処理順制約テーブル40に設定されている処理順制約および実行コア制約と処理状態情報とに基づいて、第1対象処理および第2対象処理がスレーブコア22において実行可能であるか否かを判断する。
そしてスケジューラ53は、スレーブコア22において第1対象処理および第2対象処理を実行可能ではないと判断した場合に、更に他の処理を第1対象処理および第2対象処理として選択する。
同様に、スケジューラ53は、処理順制約テーブル40に設定されている処理順制約および実行コア制約と処理状態情報とに基づいて、第1対象制約処理および第2対象制約処理がスレーブコア22において実行可能であるか否かを判断する。そしてスケジューラ53は、スレーブコア22において第1対象制約処理および第2対象制約処理を実行可能ではないと判断した場合に、更に他の処理を第1対象制約処理および第2対象制約処理として選択する。
このようにマイコン3は、実行可能な処理を見つけるまで、実行可能な処理の選択を継続する。このため、マイコン3は、実行可能な処理が存在しているのにも関わらずコア21,22で処理が実行されていないという状況の発生を抑制し、処理効率を更に向上させることができる。
またマイコン3では、マスタコア21は、共有データをRAM13に記憶するデータ管理部35を備える。スレーブコア22は、共有データをRAM13に記憶するデータ管理部55を備える。そして、データ管理部35,55はそれぞれ、処理実行部34,54が角度同期タスクの処理を実行することにより算出された共有データについて、エンジン位置0,1,・・・・・,22,23における算出値をRAM13に記憶する。これにより、マイコン3は、最新の共有データと、最新の共有データが算出された時点より過去における23の時点で算出された共有データとをRAM13に記憶することができる。
このため、マイコン3は、現時点で実行中の角度同期タスクが終了する前に、次の角度同期イベントに対応した角度同期タスクが開始された場合であっても、それぞれの角度同期イベントに対応したエンジン位置の共有データを使用して、角度同期タスクの処理を実行することができる。
例えば図8に示すように、エンジン位置23での角度同期イベントが発生すると、エンジン位置23に対応する角度同期タスクとして、マスタコア21が、処理A1、処理B1および処理D1を順次実行し、スレーブコア22が、処理D1、処理C1および処理F1を順次実行するとする。また、処理F1は、処理A1で算出された共有データを使用するとする。すなわち、矢印RF1で示すように、エンジン位置23に対応する角度同期タスクの処理F1は、エンジン位置23に対応する角度同期タスクの処理A1で算出された共有データを使用する必要がある。
そして、ECU1を搭載した車両が例えば急加速することにより、エンジン位置23に対応した角度同期タスクの処理F1が終了する前に、エンジン位置0での角度同期イベントが発生したとする。すなわち、エンジン位置23に対応した角度同期タスクの処理F1が終了する前に、マスタコア21が、エンジン位置0に対応した角度同期タスクの処理A1を開始する。この場合に、矢印RF2で示すように、エンジン位置23に対応する角度同期タスクの処理F1は、エンジン位置0に対応する角度同期タスクの処理A1で算出された共有データを使用してしまうおそれがある。
これに対し、マイコン3は、最新のエンジン位置0に対応する共有データだけではなく、過去のエンジン位置23に対応する共有データもRAM13に記憶している。このため、エンジン位置23に対応する角度同期タスクの処理F1は、エンジン位置0に対応する角度同期タスクではなく、エンジン位置23に対応する角度同期タスクの処理A1で算出された共有データを使用することができる。
なお、イベント生成部31はイベント判断部に相当し、同期部42は情報出力部に相当し、タスク要求部41はマスタ要求部に相当し、スケジューラ33はマスタ決定部に相当する。また、イベント管理部52はスレーブ要求部に相当し、スケジューラ53はスレーブ決定部に相当する。
また、角度イベント生成条件および時間イベント生成条件はイベント発生条件に相当し、角度同期イベント情報および時間同期イベント情報はイベント情報に相当する。また、処理A1〜F1および処理A2〜E1は複数の演算処理に相当し、角度同期タスクおよび時間同期タスクはタスクに相当し、処理順制約テーブル40に設定されている処理順制約は処理制約情報に相当する。
また、処理順制約テーブル40に設定されている実行コア制約はコア制約情報に相当する。
また、マスタコア21が実行するS20,S70,S320,S370がマスタ選択部としての処理に相当し、マスタコア21が実行するS30〜S60,S80〜S100,S140がマスタ判断部としての処理に相当する。また、スレーブコア22が実行するS20,S70,S320,S370がスレーブ選択部としての処理に相当し、スレーブコア22が実行するS30〜S60,S80〜S100,S140がスレーブ判断部としての処理に相当する。また、マスタコア21で選択された第1対象処理、第1対象制約処理、第2対象処理および第2対象制約処理はマスタ対象処理に相当し、スレーブコア22で選択された第1対象処理、第1対象制約処理、第2対象処理および第2対象制約処理はスレーブ対象処理に相当する。
また、データ管理部35はマスタ記憶部に相当し、データ管理部55はスレーブ記憶部に相当し、RAM13はデータ記憶領域に相当する。
以上、本開示の一実施形態について説明したが、本開示は上記実施形態に限定されるものではなく、種々変形して実施することができる。
[変形例1]
例えば上記実施形態では、CPUが2個のコアを備えるものを示したが、3個以上のコアを備えるようにしてもよい。
[変形例2]
上記実施形態では、角度同期タスクまたは時間同期タスクの実行要求が入力された場合に、角度同期タスクまたは時間同期タスクに含まれる複数の処理の中から1つの処理を第1対象処理または第2対象処理として選択するものを示した。しかし、処理順制約が設定されている処理を優先的に選択するようにしてもよい。これにより、事前に実行する必要がある処理が完了するまで待機する必要がある状況が発生している場合において、処理順制約が設定されていない処理が存在している可能性が高くなる。このため、処理順制約が設定されている処理が待機している空き時間において、処理順制約が設定されていない処理を実行させることができる可能性が高まり、上記の空き時間を有効に利用することが可能となる。
[変形例3]
また、実行コア制約が設定されている処理を優先的に第1対象処理または第2対象処理として選択するようにしてもよい。これにより、実行コア制約が設定されていることにより実行可能コアが制限されている処理について、実行可能コアにおいて他の処理が完了するまで待機する状況が発生する可能性を低減することができる。
[変形例4]
また、角度同期イベントまたは時間同期イベントが発生してから処理が完了するまでに許容される時間の制約(以下、ジッター制約)が設定されている処理を優先的に第1対象処理または第2対象処理として選択するようにしてもよい。これにより、ジッター制約を満たすことができなくなる事態の発生を抑制することができる。
[変形例5]
角度同期タスクまたは時間同期タスクに含まれる複数の処理のうち、処理時間が変動する可能性がないものは、順序を固定して実行し、処理順序が変わる処理のみに第1処理順判断処理と第2処理順判断処理を適用するようにしてもよい。
[変形例6]
上記実施形態では、処理順制約において、自処理の実行前に実行する必要がある処理を、直接的な処理だけではなく間接的な処理も含めて設定した。例えば、処理順制約テーブル40において、処理F1の処理順制約では、処理A1,B1,C1が設定されている。処理F1の実行前に実行する必要がある直接的な処理は処理B1,C1であり、間接的な処理は処理A1である。処理順制約テーブル40において、処理B1,C1の処理順制約では、処理A1が設定されているためである。しかし、処理順制約において、自処理の実行前に実行する必要がある処理を、直接的な処理だけを含めて設定するようにしてもよい。例えば、処理F1の処理順制約において、処理B1,C1を設定するようにしてもよい。これにより、処理順制約テーブル40のデータ量を低減することができる。
[変形例7]
また、処理順制約テーブル40において、自処理の実行前に実行する必要がある直接的な処理を記憶し、間接的な処理を記憶しないようしている場合には、ECU1が起動した直後に、間接的な処理を決定する演算を行うようにしてもよい。例えば、処理順制約テーブル40において、処理B1,C1の処理順制約では、処理A1が設定され、処理F1の処理順制約において、処理B1,C1が設定されているとする。そして、処理F1の処理順制約において処理B1,C1が設定され、処理B1,C1の処理順制約では処理A1が設定されていることから、処理F1の実行前に実行する必要がある間接的な処理は処理A1であると決定することができる。そして、間接的な処理を決定した後に、決定した処理を新たに処理順制約テーブル40に記憶させる。例えば、処理順制約テーブル40において、処理F1の処理順制約において、処理A1,B1,C1が設定される。これにより、間接的な処理を決定するための演算を、ECU1が起動した直後に1回だけ実行すればよく、ECU1の演算処理負荷を低減することができる。
[変形例8]
上記実施形態では、第1対象制約処理または第2対象制約処理が「実行中」である場合には、他の第1制約処理または第2制約処理を選択するものを示した。しかし、処理時間が短い第1制約処理または第2制約処理が多い場合には、第1対象制約処理または第2対象制約処理が終了するまで待機させるようにしてもよい。
[変形例9]
上記実施形態では、エンジン位置0,1,・・・,22,23における共有データを記憶するものを示した。しかし、共有データの前回値のみを記憶するようにしてもよい。例えば、現時点でエンジン位置2である場合には、前回値として、エンジン位置1のときの共有データのみを記憶するようにしてもよい。また上記実施形態では、角度同期タスクの処理を実行することにより算出された共有データについて、エンジン位置0,1,・・・・・,22,23における算出値をRAM13に記憶するものを示した。しかし、時間同期タスクの処理を実行することにより算出された共有データについても、最新の共有データと、最新の共有データが算出された時点より過去における少なくとも1つの時点で算出された共有データとをRAM13に記憶するようにしてもよい。
[変形例10]
角度同期イベントが発生したときに、前回の角度同期イベントに対応した角度同期タスクが終了していない状況が発生することを考慮して、角度同期タスクに含まれる複数の処理のそれぞれに対して設けられている処理状態情報は、エンジン位置毎に設けられるようにしてもよい。例えば、処理A1の処理状態情報は、エンジン位置0,1,・・・,22,23のそれぞれに対応して24個設けられるようにしてもよい。時間同期タスクに含まれる複数の処理のそれぞれに対して設けられている処理状態情報についても同様に、時間同期イベントが発生した時刻毎に設けられるようにしてもよい。これにより、角度同期イベントが発生したときに、前回の角度同期イベントに対応した角度同期タスクが終了していない状況が発生したとしても、前回の角度同期イベントに対応した角度同期タスクの処理状態情報が消去されないようにすることができる。
また、処理状態情報は、最新の角度同期タスクまたは時間同期タスクに含まれる処理と、前回の角度同期タスクまたは時間同期タスクに含まれる処理とについて設けられるようにしてもよい。
[変形例11]
上記実施形態では、処理順制約テーブル40に設定されている実行コア制約および処理順制約が、角度同期イベントが発生したエンジン位置と、時間同期イベントが発生した時刻とに関わらず同一であるものを示した。しかし、処理順制約テーブル40に設定されている実行コア制約および処理順制約が、角度同期イベントが発生したエンジン位置、または時間同期イベントが発生した時刻によって異なるようにしてもよい。このように、イベント毎に個別の処理順制約テーブルを備えることによって、不必要な実行コア制約および処理順制約を減らし、処理の実行待ちが発生する確率を低減することができる。
[変形例12]
上記実施形態では、処理状態情報には、「未処理」、「実行中」および「終了」の何れか1つの状態が設定されるものを示した。すなわち、「実行中」および「終了」は、処理を実行可能な状態でないことを示し、「未処理」は、処理を実行可能な状態であることを示す。しかし、処理状態情報は、処理を実行可能な状態であるか否かを示すことができれば、2つの状態が設定されるものであってもよいし、4つ以上の状態が設定されるものであってもよい。
上記各実施形態における1つの構成要素が有する機能を複数の構成要素に分担させたり、複数の構成要素が有する機能を1つの構成要素に発揮させたりしてもよい。また、上記各実施形態の構成の一部を、課題を解決できる限りにおいて省略してもよい。また、上記各実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加、置換等してもよい。なお、特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
なお、本開示は、上述したマイコン3の他、当該マイコン3を構成要素とするシステム、当該マイコン3としてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、実行処理決定方法など、種々の形態で実現することもできる。
3…マイコン、21…マスタコア、22…スレーブコア、31…イベント生成部、33…スケジューラ、40…処理順制約テーブル、41…タスク要求部、42…同期部、52…イベント管理部、53…スケジューラ

Claims (4)

  1. 演算処理を実行するコア(21,22)を複数備えるマイクロコンピュータ(3)であって、
    複数の前記コアのうち、1個の前記コアをマスタコア(21)とし、前記マスタコア以外の前記コアをスレーブコア(22)として、
    前記マスタコアは、
    予め設定されたイベント発生条件が成立したか否かを判断するように構成されたイベント判断部(31)と、
    前記イベント発生条件が成立したと前記イベント判断部が判断した場合に、イベントが発生した旨を示すイベント情報を前記スレーブコアへ出力するように構成された情報出力部(42)と、
    前記イベント発生条件が成立したと前記イベント判断部が判断した場合に、前記イベントに対応して予め設定された複数の前記演算処理を含むタスクの実行を要求するように構成されたマスタ要求部(41)と、
    前記マスタ要求部が前記タスクの実行を要求した場合に、前記タスクに含まれる複数の前記演算処理のそれぞれについて事前に実行する必要がある他の前記演算処理が予め設定された処理制約情報と、前記タスクに含まれる複数の前記演算処理のそれぞれについて前記演算処理を実行可能な状態であるか否かを示す処理状態情報とに基づいて、前記複数の演算処理の中から、前記マスタコアに実行させる前記演算処理を決定するように構成されたマスタ決定部(33)とを備え、
    前記スレーブコアは、
    前記情報出力部から前記イベント情報が入力されると、前記タスクの実行を要求するように構成されたスレーブ要求部(52)と、
    前記スレーブ要求部が前記タスクの実行を要求した場合に、前記処理制約情報と前記処理状態情報とに基づいて、複数の前記演算処理の中から、前記スレーブコアに実行させる前記演算処理を決定するように構成されたスレーブ決定部(53)とを備えるマイクロコンピュータ。
  2. 請求項1に記載のマイクロコンピュータであって、
    前記マスタ要求部および前記スレーブ要求部は、
    前記処理制約情報および前記処理状態情報に加えて、更に、前記タスクに含まれる複数の前記演算処理のそれぞれについて実行可能な前記コアが予め設定されたコア制約情報に基づいて、実行させる前記演算処理を決定するように構成されるマイクロコンピュータ。
  3. 請求項1または請求項2に記載のマイクロコンピュータであって、
    前記マスタ決定部は、
    複数の前記演算処理の中から1つの前記演算処理を選択するように構成されたマスタ選択部(S20,S70,S320,S370)と、
    少なくとも前記処理制約情報および前記処理状態情報に基づいて、前記マスタ選択部で選択された前記演算処理であるマスタ対象処理が前記マスタコアにおいて実行可能であるか否かを判断するマスタ判断部(S30〜S60,S80〜S100,S140)とを備え、
    前記マスタ選択部は、前記マスタコアにおいて前記マスタ対象処理を実行可能ではないと前記マスタ判断部が判断した場合に、更に他の前記演算処理を前記マスタ対象処理として選択し、
    前記スレーブ決定部は、
    複数の前記演算処理の中から1つの前記演算処理を選択するように構成されたスレーブ選択部(S20,S70,S320,S370)と、
    少なくとも前記処理制約情報および前記処理状態情報に基づいて、前記スレーブ選択部で選択された前記演算処理であるスレーブ対象処理が前記スレーブコアにおいて実行可能であるか否かを判断するスレーブ判断部(S30〜S60,S80〜S100,S140)とを備え、
    前記スレーブ選択部は、前記スレーブコアにおいて前記スレーブ対象処理を実行可能ではないと前記スレーブ判断部が判断した場合に、更に他の前記演算処理を前記スレーブ対象処理として選択するマイクロコンピュータ。
  4. 請求項1〜請求項3の何れか1項に記載のマイクロコンピュータであって、
    前記マスタコアは、
    前記マスタコアが前記演算処理を実行することにより算出されたデータのうち、前記マスタコアと前記スレーブコアとの間で共有する必要があるデータとして予め設定された共有データを、予め設定されたデータ記憶領域(13)に記憶するマスタ記憶部(35)を備え、
    前記スレーブコアは、
    前記スレーブコアが前記演算処理を実行することにより算出されたデータのうち、前記共有データを前記データ記憶領域に記憶するスレーブ記憶部(55)を備え、
    前記マスタ記憶部および前記スレーブ記憶部は、
    前記演算処理を実行することにより算出された最新の前記共有データと、最新の前記共有データが算出された時点より過去における少なくとも1つの時点で算出された前記共有データとを前記データ記憶領域に記憶するマイクロコンピュータ。
JP2016071833A 2016-03-31 2016-03-31 マイクロコンピュータ Expired - Fee Related JP6519515B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016071833A JP6519515B2 (ja) 2016-03-31 2016-03-31 マイクロコンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016071833A JP6519515B2 (ja) 2016-03-31 2016-03-31 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
JP2017182627A true JP2017182627A (ja) 2017-10-05
JP6519515B2 JP6519515B2 (ja) 2019-05-29

Family

ID=60007524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016071833A Expired - Fee Related JP6519515B2 (ja) 2016-03-31 2016-03-31 マイクロコンピュータ

Country Status (1)

Country Link
JP (1) JP6519515B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020064489A (ja) * 2018-10-18 2020-04-23 トヨタ自動車株式会社 車両用調停システム
JP2021012601A (ja) * 2019-07-08 2021-02-04 株式会社デンソー 並列化方法、半導体制御装置、車載制御装置
WO2021101012A1 (ko) * 2019-11-19 2021-05-27 주식회사 엘지에너지솔루션 배터리 관리 시스템 및 그 제어방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008191745A (ja) * 2007-02-01 2008-08-21 Denso Corp 演算システム,演算装置およびプログラム
JP2010113419A (ja) * 2008-11-04 2010-05-20 Toyota Motor Corp マルチコア制御装置
JP2012108576A (ja) * 2010-11-15 2012-06-07 Toyota Motor Corp マルチコアプロセッサ、処理実行方法、プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008191745A (ja) * 2007-02-01 2008-08-21 Denso Corp 演算システム,演算装置およびプログラム
JP2010113419A (ja) * 2008-11-04 2010-05-20 Toyota Motor Corp マルチコア制御装置
JP2012108576A (ja) * 2010-11-15 2012-06-07 Toyota Motor Corp マルチコアプロセッサ、処理実行方法、プログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020064489A (ja) * 2018-10-18 2020-04-23 トヨタ自動車株式会社 車両用調停システム
JP7139866B2 (ja) 2018-10-18 2022-09-21 トヨタ自動車株式会社 車両用調停システム
JP7468584B2 (ja) 2018-10-18 2024-04-16 トヨタ自動車株式会社 車両用調停システム
JP2021012601A (ja) * 2019-07-08 2021-02-04 株式会社デンソー 並列化方法、半導体制御装置、車載制御装置
WO2021101012A1 (ko) * 2019-11-19 2021-05-27 주식회사 엘지에너지솔루션 배터리 관리 시스템 및 그 제어방법
JP2022532516A (ja) * 2019-11-19 2022-07-15 エルジー エナジー ソリューション リミテッド バッテリ管理システムおよびその制御方法
JP7206553B2 (ja) 2019-11-19 2023-01-18 エルジー エナジー ソリューション リミテッド バッテリ管理システムおよびその制御方法

Also Published As

Publication number Publication date
JP6519515B2 (ja) 2019-05-29

Similar Documents

Publication Publication Date Title
JP5316128B2 (ja) 故障診断システム、電子制御ユニット、故障診断方法
JP4728020B2 (ja) 車両制御用ソフトウェア及び車両制御装置
WO2013125294A1 (ja) 車両用制御装置
JP6519515B2 (ja) マイクロコンピュータ
JP2010113388A (ja) 処理結果を照合する比較器を有するマルチコアマイコン
JP5564187B2 (ja) マイクロコントローラおよび自動車電子制御装置
JP4241462B2 (ja) 制御ユニットおよびマイクロコンピュータ
JP2009245009A (ja) 車両制御装置及びマルチコアプロセッサ
JP5533789B2 (ja) 車載電子制御装置
JP4419943B2 (ja) Cpu間データ転送装置
JP7147615B2 (ja) タスク管理装置
JP5776661B2 (ja) 電子制御装置
JP2004252574A (ja) タスク間通信方法、プログラム、記録媒体、電子機器
JP2010113419A (ja) マルチコア制御装置
JP2016218627A (ja) ソフトウェア分割方法、ソフトウェア分割装置および車載装置
JP6365387B2 (ja) 電子制御装置
JP7476638B2 (ja) マルチプロセッサシステム
JP7070108B2 (ja) マルチコアマイコンを備える電子制御装置
JP2017123119A (ja) 電子制御装置
US20160134296A1 (en) Semiconductor integrated circuit device and data processing system
JP2018112977A (ja) マイクロコンピュータ
JP6447442B2 (ja) 電子制御装置
JP5561241B2 (ja) マイクロコンピュータ
WO2017002939A1 (ja) 電子制御装置及びスタック使用方法
JP2013062734A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180615

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190214

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: 20190326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190408

R151 Written notification of patent or utility model registration

Ref document number: 6519515

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees