(57)【要約】【課題】一連の処理において逐次性を確保するとともに、処理負荷の増加に起因して処理の実行に支障が発生するのを抑制する【解決手段】ＥＣＵ１は、コア２１〜２４を備え、複数の制御処理（以下、単に処理という）を実行するように構成され、複数の処理のそれぞれについて、車両の状態に応じて、処理が実行されるコアおよび実行頻度が固定されるコア頻度固定と、処理が実行されるコアおよび実行頻度の少なくとも一方が変更可能なコア頻度可変との何れかに設定する。そして、複数の処理のうち、処理が実行されるコアが変更可能なコア可変に設定された処理について、実行されるコアの処理負荷が高い場合に、処理負荷が低い別のコアにコア可変処理を実行させる。また、処理が実行される実行頻度が変更可能な頻度可変に設定された処理について、実行されるコアの処理負荷に応じて、実行頻度を変更する。【選択図】図１
2014078078.tif 000002
【特許請求の範囲】
【請求項１】
複数のコア（２１，２２，２３，２４）を備え、車両に搭載された所定の制御対象を制御するために互いに異なる複数の制御処理を実行するように構成された電子制御装置（１）であって、
複数の前記制御処理のそれぞれについて、前記車両の状態に応じて、前記制御処理が実行される前記コアおよび前記制御処理が実行される実行頻度が固定されるコア頻度固定と、前記制御処理が実行される前記コアおよび前記制御処理が実行される実行頻度の少なくとも一方が変更可能なコア頻度可変との何れかに設定する設定手段（Ｓ２０，Ｓ１５０）と、
複数の前記制御処理のうち、前記制御処理が実行される前記コアが変更可能なコア可変に設定された前記制御処理であるコア可変処理について、前記コア可変処理が実行される前記コアの処理負荷が高い場合に、前記処理負荷が低い別の前記コアに前記コア可変処理を実行させるコア変更手段（Ｓ１０〜Ｓ５０）と、
複数の前記制御処理のうち、前記制御処理が実行される実行頻度が変更可能な頻度可変に設定された前記制御処理である頻度可変処理について、前記頻度可変処理が実行される前記コアの前記処理負荷に応じて、前記頻度可変処理の実行頻度を変更する頻度変更手段（Ｓ１７０）とを備える
ことを特徴とする電子制御装置。
【請求項２】
複数の前記制御処理のそれぞれについて、前記車両の状態と、前記コア頻度固定、前記コア可変および前記頻度可変との対応関係を定義する対応表（３１）を備え、
前記設定手段は、複数の前記制御処理を、前記対応表に基づいて、前記コア頻度固定、前記コア可変および前記頻度可変に設定する
ことを特徴とする請求項１に記載の電子制御装置。
【請求項３】
当該電子制御装置は、３個以上の前記コアを備え、
３個以上の前記コアのうち、１個の前記コアをマスタコア（２１）とし、前記マスタコア以外の前記コアをスレーブコア（２２，２３，２４）として、
複数の前記制御処理はそれぞれ、複数の前記スレーブコアのうちの何れか１つで実行され、
前記コア変更手段は、前記マスタコアで実行される
ことを特徴とする請求項１または請求項２に記載の電子制御装置。
【請求項４】
当該電子制御装置は、３個以上の前記コアを備え、
３個以上の前記コアのうち、１個の前記コアをマスタコアとし、前記マスタコア以外の前記コアをスレーブコアとして、
複数の前記制御処理はそれぞれ、複数の前記スレーブコアのうちの何れか１つで実行され、
前記頻度変更手段は、複数の前記スレーブコアのそれぞれで実行される
ことを特徴とする請求項１〜請求項３の何れか１項に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のコアを搭載する電子制御装置に関する。
【背景技術】
【０００２】
従来、車両に複数の電子制御装置を搭載した車両制御システムにおいて、システムの高機能化に伴う処理負荷の増加に対応するために、１つの電子制御装置で処理負荷が高くなったときに、この電子制御装置で実行される処理の一部を他の電子制御装置で実行させる技術が知られている（例えば、特許文献１を参照）。
【０００３】
また、上記の処理負荷の増加に対応するために、車両に搭載される電子制御装置において、コアを複数搭載するマルチコアシステムを採用する技術が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２５９０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
マルチコアシステムにおいてソフトウェアを各コアに対して適切に配置するためには、処理を逐次実行することを前提としてシングルコア向けに開発されたソフトウェアを複数のコアで並列に処理することができるように変更する必要がある。
【０００６】
しかし現状では、マルチコアシステムで各コアの処理負荷を最適にすることができる有効な手法は確立されていない。このため、複数のコアでソフトウェアを並列に処理することにより、重要度の高い処理で処理遅れが発生したり、実行順序に制約がある処理で処理抜けが発生したりすることが懸念される。
【０００７】
例えば、エンジン出力の要となる空気量を制御する電子スロットル制御では、「電子スロットルセンサ入力処理」→「電子スロットル開度制御処理」→「電子スロットルアクチュエータ出力処理」の順序で処理を実行する必要がある。このため、これら一連の処理の中の何れか１つの処理が別のコアに配置されると、処理の逐次性が崩れ、電子スロットルが所望の動作をしなくなる可能性がある。
【０００８】
このように、車両制御では処理の逐次性を確保する必要があり、ソフトウェアのコアへの配置を自由に変更することができないため、処理負荷が最適になるようにソフトウェアの配置を決定することが困難となっている。
【０００９】
本発明は、こうした問題に鑑みてなされたものであり、一連の処理において逐次性を確保するとともに、処理負荷の増加に起因して処理の実行に支障が発生するのを抑制することができる技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するためになされた本発明は、複数のコアを備え、車両に搭載された所定の制御対象を制御するために互いに異なる複数の制御処理を実行するように構成された電子制御装置であって、設定手段が、複数の制御処理のそれぞれについて、車両の状態に応じて、制御処理が実行されるコアおよび制御処理が実行される実行頻度が固定されるコア頻度固定と、制御処理が実行されるコアおよび制御処理が実行される実行頻度の少なくとも一方が変更可能なコア頻度可変との何れかに設定する。そしてコア変更手段が、複数の制御処理のうち、制御処理が実行されるコアが変更可能なコア可変に設定された制御処理であるコア可変処理について、コア可変処理が実行されるコアの処理負荷が高い場合に、処理負荷が低い別のコアにコア可変処理を実行させる。また頻度変更手段が、複数の制御処理のうち、制御処理が実行される実行頻度が変更可能な頻度可変に設定された制御処理である頻度可変処理について、頻度可変処理が実行されるコアの処理負荷に応じて、頻度可変処理の実行頻度を変更する。
【００１１】
このように構成された電子制御装置では、複数の制御処理のうち、互いに処理の逐次性を確保する必要がある一連の処理をコア頻度固定に設定することができる。これにより、互いに処理の逐次性を確保する必要がある一連の制御処理については、同一のコアで実行させることができるとともに、実行頻度を固定することができる。このため、逐次性を確保する必要がある一連の制御処理の一部が別のコアで実行されたり、上記一連の制御処理の一部で実行頻度が少なくなったりすることがなく、上記一連の制御処理において逐次性が崩れてしまうという事態の発生を抑制することができる。
【００１２】
また、コア可変処理が実行されるコアを、処理負荷が高いコアから、処理負荷が低い別のコアへ変更したり、頻度可変処理が実行されるコアの処理負荷に応じて、頻度可変処理の実行頻度を変更したりすることができる。これにより、コアの処理負荷の増加を抑制し、制御処理の実行に支障が発生するのを抑制することができる。
【００１３】
また、各制御処理について、車両の状態に関わらずコア頻度固定、コア可変および頻度可変の何れか１つに固定されるということがなく、車両の状態に応じて、最適なコア頻度設定に変更することができる。
【図面の簡単な説明】
【００１４】
【図１】ＥＣＵ１の構成を示すブロック図である。
【図２】スレーブコア２２，２３，２４によるタスクの実行を示すタイミングチャートである。
【図３】対応表３１の構成を示す図である。
【図４】移動指示処理を示すフローチャートである。
【図５】変更処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下に本発明の実施形態について図面とともに説明する。
ＥＣＵ１は、車両に搭載され、図１に示すように、マイコン（マイクロコンピュータ）３、入力回路４および出力回路５を備えている。
【００１６】
そしてマイコン３には、図示しない水温センサ、クランク角センサ、エアフロメータ、スロットル開度センサ、吸気圧センサおよび空燃比センサ等からの信号が、入力回路４を介して入力される。
【００１７】
なお水温センサは、図示しないエンジンの冷却水温を検出する。クランク角センサは、エンジンのクランク軸の回転角を検出する。エアフロメータは、吸気管を通ってエンジンに供給される空気量を検出する。スロットル開度センサは、スロットルバルブの開度を検出する。吸気圧センサは、吸気管内の圧力を検出する。空燃比センサは、排ガス中の酸素濃度からエンジンに供給された燃料混合気の空燃比を検出する。
【００１８】
そしてマイコン３は、入力回路４を介して入力される上記各信号に基づいてエンジンの状態を検出するとともに、その検出結果に基づいて、スロットルバルブの開度を変えるスロットルモータ、各気筒内の点火プラグ、および各気筒内のインジェクタなどの各種アクチュエータを駆動するための駆動信号を出力回路５を介して出力してエンジンを作動させる。
【００１９】
またマイコン３は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、Ｉ／Ｏ１４及びこれらの構成を接続するバスラインなどから構成され、ＲＯＭ１２に記憶されたプログラムに基づいて、エンジンを制御するための各種制御処理を実行する。
【００２０】
さらにＣＰＵ１１は、ＣＰＵコア（以下、単にコアという）２１，２２，２３，２４で構成されている。コア２１，２２，２３，２４のうち、コア２１はマスタとして機能し、コア２２，２３，２４はスレーブとして機能する。すなわち、コア２２，２３，２４が、エンジンを制御するための各種制御処理を分散して実行するとともに、コア２１が、コア２２，２３，２４により実行される制御処理を管理する。そして、コア２１とコア２２との間、コア２１とコア２３との間、およびコア２１とコア２４との間はデータ通信可能に接続されている。以下、コア２１をマスタコア２１ともいい、コア２２，２３，２４をそれぞれスレーブコア２２，２３，２４ともいう。
【００２１】
スレーブコア２２，２３，２４は、図２に示すように、それぞれ異なる所定時間毎に起床する複数のタスクを並列に実行することにより、エンジンを制御する。本実施形態では、スレーブコア２２，２３，２４は、４ｍｓ毎に起床する４ｍｓタスク、８ｍｓ毎に起床する８ｍｓタスク、および１２ｍｓ毎に起床する１２ｍｓタスクを実行するように構成されている。
【００２２】
またスレーブコア２２，２３，２４では、タスク毎に予め優先度が設定されている。本実施形態では、４ｍｓタスク、８ｍｓタスク、１２ｍｓタスクの順に優先度が低くなるように設定されている。
【００２３】
このため、４ｍｓ毎に発生するタスク実行タイミングＴｅが到来すると、まず、４ｍｓタスクが実行される。その後、４ｍｓタスクが終了すると、８ｍｓタスクが１２ｍｓタスクに優先して実行される。すなわち、次のタスク実行タイミングＴｅが到来するまでに、８ｍｓタスクと１２ｍｓタスクを実行する必要がある場合には、４ｍｓタスクが終了した後に８ｍｓタスクが実行され、さらに８ｍｓタスクが終了した後に１２ｍｓタスクが実行される。また、次のタスク実行タイミングＴｅが到来するまでに、８ｍｓタスクの実行が不要であり１２ｍｓタスクの実行が必要である場合には、４ｍｓタスクが終了した後に１２ｍｓタスクが実行される。
【００２４】
また、４ｍｓタスク、８ｍｓタスクおよび１２ｍｓタスクはそれぞれ、１回のタスクで複数の制御処理を実行することが可能に構成されている。
また各制御処理は、コア頻度固定およびコア頻度可変の何れかに設定される。コア頻度固定は、当該制御処理を実行するコアと、当該制御処理を実行する頻度が固定される設定である。コア頻度可変は、車両状態に応じて、当該制御処理を実行するコアが変更可能なコア可変と、当該制御処理を実行する頻度を変更することが可能な頻度可変の少なくとも一方を有する設定である。以下、コア頻度固定およびコア頻度可変をまとめてコア頻度設定という。
【００２５】
そして各制御処理において、車両状態とコア頻度設定との対応関係は、図３に示すような対応表３１で予め定義されている。なお、対応表３１はＲＯＭ１２に記憶されている（図１を参照）。
【００２６】
この対応表３１は、制御処理毎に、車両状態とコア頻度設定とを対応付けて記述している。図３では、対応表３１で記述される対応関係のうち、電子スロットル制御、エンジン水温算出制御および空気量算出制御で行われる制御処理における対応関係を示している。
【００２７】
電子スロットル制御は、電子スロットルセンサ入力処理と電子スロットル開度制御処理と電子スロットルアクチュエータ出力処理とから構成されている。電子スロットル制御では、エンジン出力の要となる空気流量の制御のためにスロットル開度を精度良く算出する必要がある。このため、電子スロットルセンサ入力処理の次に電子スロットル開度制御処理が実行され、さらに電子スロットル開度制御処理の後に電子スロットルアクチュエータ出力処理が実行されるという逐次性を確保する必要がある。電子スロットル制御は、このような制約があるため、車両状態に関わらずコア頻度固定に設定される。
【００２８】
エンジン水温算出制御は、水温センサ入力処理と水温算出処理とから構成されている。エンジン水温は急激に変化しないため、エンジン水温算出制御の各制御処理が異なるコアに配置されることにより上記処理間の逐次性が確保されていなくても車両に影響を及ぼすことはない。このため、車両状態に関わらずコア可変に設定される。但し、エンジン暖機後は水温変化も少なく、水温算出の頻度を下げても車両に影響を及ぼすことはない。このため、エンジン水温が高い場合（本実施形態ではエンジン水温が７５℃以上の場合）には頻度可変に設定される。
【００２９】
空気量算出制御は、空気量センサ入力処理と空気量算出処理とから構成されている。エンジン低回転領域ではトルク変動が敏感であり、上記処理間の逐次性を確保する必要がある。このため、エンジン回転数が低い場合（本実施形態ではエンジン回転数が３０００ｒｐｍ未満の場合）には、コア頻度固定に設定される。一方、エンジン高回転領域ではトルク変動が鈍く、上記処理間の逐次性を確保する必要はない。このため、エンジン回転数が高い場合（本実施形態ではエンジン回転数が３０００ｒｐｍ以上の場合）には、頻度可変およびコア可変に設定される。
【００３０】
そしてスレーブコア２２，２３，２４は、４ｍｓ，８ｍｓ，１２ｍｓタスクのそれぞれについて、今回のタスク開始時刻（図２の時刻ｔ１を参照）と、前回のタスク終了時刻（図２の時刻ｔ２を参照）との差を、タスク実行余裕時間Ｔａとして算出するように構成されている。またスレーブコア２２，２３，２４は、コア可変に設定されている制御処理（以下、コア可変処理ともいう）の終了時刻（図２の時刻ｔ３，ｔ４，ｔ５を参照）と開始時刻（図２の時刻ｔ６，ｔ７，ｔ８を参照）との差を、コア可変処理の実行時間Ｔｃとして算出するように構成されている。
【００３１】
さらにスレーブコア２２，２３，２４は、算出したタスク実行余裕時間Ｔａとタスク名とが対応付けられた余裕時間情報と、算出した実行時間Ｔｃとタスク名およびコア可変処理名とが対応付けられた実行時間情報とをマスタコア２１へ送信するように構成されている。
【００３２】
このように構成されたＥＣＵ１において、マスタコア２１は後述の移動指示処理を実行するとともに、スレーブコア２２，２３，２４は後述の変更処理を実行する。
まず、マスタコア２１が実行する移動指示処理の手順を図４を用いて説明する。この移動指示処理は、ＥＣＵ１の動作中において所定時間毎（本実施形態では５００ｍｓ毎）に繰り返し実行される処理である。
【００３３】
この移動指示処理が実行されると、マスタコア２１は、まずＳ１０にて、スレーブコア２２，２３，２４から受信した余裕時間情報に基づき、スレーブコア２２，２３，２４のそれぞれについて、タスク実行余裕時間Ｔａが予め設定された負荷判定値以下となっているタスクがあるか否かを判断する。ここで、タスク実行余裕時間Ｔａが負荷判定値以下となっているタスクがない場合には（Ｓ１０：ＮＯ）、移動指示処理を一旦終了する。以下、タスク実行余裕時間Ｔａが負荷判定値以下となっているとＳ１０で判断されたタスクを、余裕小判断タスクともいう。
【００３４】
一方、タスク実行余裕時間Ｔａが負荷判定値以下となっているタスクがある場合には（Ｓ１０：ＹＥＳ）、Ｓ２０にて、現時点の車両状態（エンジン水温、エンジン回転数など）に基づき、対応表３１を参照して、各制御処理を、コア頻度固定およびコア頻度可変の何れかに設定する。なおコア頻度可変に設定された場合には、コア可変および頻度可変の少なくとも一方を有するように設定される。
【００３５】
そしてＳ３０にて、Ｓ２０での設定に基づいて、この余裕小判断タスクの中にコア可変処理があるか否かを判断する。
ここで、コア可変処理がない場合には（Ｓ３０：ＮＯ）、移動指示処理を一旦終了する。一方、コア可変処理がある場合には（Ｓ３０：ＹＥＳ）、Ｓ４０にて、まず、スレーブコア２２，２３，２４から受信した余裕時間情報に基づき、このコア可変処理の実行時間Ｔｃと、予め設定された余裕付与値αとの加算値を算出する。そして、スレーブコア２２，２３，２４のうち、余裕小判断タスクを含むもの以外を選択し、選択したスレーブコアおいて、Ｓ１０で判断された余裕小判断タスクと同じ所定時間毎に実行されるタスクを選択する。例えば、余裕小判断タスクがスレーブコア２２の１２ｍｓタスクである場合には、スレーブコア２３，２４の１２ｍｓタスクを選択する。
【００３６】
そして、スレーブコア２２，２３，２４から受信した余裕時間情報に基づき、選択したタスクのうち、タスク実行余裕時間Ｔａが上記加算値よりも長いタスクがあるか否かを判断する。ここで、タスク実行余裕時間Ｔａが上記加算値よりも長いタスクがない場合には（Ｓ４０：ＮＯ）、移動指示処理を一旦終了する。
【００３７】
一方、タスク実行余裕時間Ｔａが上記加算値よりも長いタスクがある場合には（Ｓ４０：ＹＥＳ）、Ｓ５０にて、まず、タスク実行余裕時間Ｔａが上記加算値よりも長いと判断されたタスクの中で最もタスク実行余裕時間Ｔａが長いタスクを選択し、この選択したタスクが実行されるスレーブコアを移動先コアとして決定する。そして、決定した移動先コアを示す移動先コア情報と、余裕小判断タスクのコア可変処理を示す移動対象処理情報とを含む処理移動指示を、スレーブコア２２，２３，２４へ送信する。
【００３８】
そして、Ｓ５０にて処理移動指示の送信が完了すると、移動指示処理を一旦終了する。
次に、スレーブコア２２，２３，２４が実行する変更処理の手順を図５を用いて説明する。この変更処理は、ＥＣＵ１の動作中において所定時間毎（本実施形態では５００ｍｓ毎）に繰り返し実行される処理である。
【００３９】
この変更処理が実行されると、スレーブコア２２，２３，２４は、まずＳ１１０にて、マスタコア２１から処理移動指示を受信したか否かを判断する。ここで、処理移動指示を受信していない場合には（Ｓ１１０：ＮＯ）、Ｓ１５０に移行する。一方、処理移動指示を受信した場合には（Ｓ１１０：ＹＥＳ）、Ｓ１２０にて、処理移動指示に含まれる移動先コア情報が示す移動先コアが自身のコアであるか否を判断する。
【００４０】
ここで、移動先コアが自身のコアである場合には（Ｓ１２０：ＹＥＳ）、Ｓ１３０にて、処理移動指示に含まれる移動対象処理情報が示すコア可変処理を自身のコアの実行対象とし、Ｓ１５０に移行する。一方、移動先コアが自身のコアでない場合には（Ｓ１２０：ＮＯ）、Ｓ１４０にて、処理移動指示に含まれる移動対象処理情報が示すコア可変処理を自身のコアの実行対象外とし、Ｓ１５０に移行する。
【００４１】
そしてＳ１５０に移行すると、Ｓ２０と同様にして、現時点の車両状態（エンジン水温、エンジン回転数など）に基づき、対応表３１を参照して、各制御処理を、コア頻度固定およびコア頻度可変の何れかに設定する。その後Ｓ１６０にて、Ｓ１５０での設定に基づいて、頻度可変に設定されている制御処理（以下、頻度可変処理ともいう）があるか否かを判断する。ここで、頻度可変処理がない場合には（Ｓ１６０：ＮＯ）、移動指示処理を一旦終了する。
【００４２】
一方、頻度可変処理がある場合には（Ｓ１６０：ＹＥＳ）、Ｓ１７０にて、自身のコアのタスク実行余裕時間Ｔａに応じて、頻度可変処理の実行頻度を変更し、移動指示処理を一旦終了する。具体的には、頻度可変処理を実行するタスクのタスク実行余裕時間Ｔａが短くなると頻度可変処理の実行頻度を少なくし、タスク実行余裕時間Ｔａが長くなると頻度可変処理の実行頻度を多くする。
【００４３】
このように構成されたＥＣＵ１は、複数のコア２１，２２，２３，２４を備え、車両に搭載されたエンジンを制御するために互いに異なる複数の制御処理を実行するように構成され、複数の制御処理のそれぞれについて、車両の状態に応じて、制御処理が実行されるコアおよび制御処理が実行される実行頻度が固定されるコア頻度固定と、制御処理が実行されるコアおよび制御処理が実行される実行頻度の少なくとも一方が変更可能なコア頻度可変との何れかに設定する（Ｓ２０，Ｓ１５０）。そして、複数の制御処理のうち、制御処理が実行されるコアが変更可能なコア可変に設定された制御処理（コア可変処理）について、コア可変処理が実行されるコアの処理負荷が高い場合に、処理負荷が低い別のコアにコア可変処理を実行させる（Ｓ１０〜Ｓ５０）。また、複数の制御処理のうち、制御処理が実行される実行頻度が変更可能な頻度可変に設定された制御処理（頻度可変処理）について、頻度可変処理が実行されるコアの処理負荷に応じて、頻度可変処理の実行頻度を変更する（Ｓ１７０）。
【００４４】
このように構成されたＥＣＵ１では、複数の制御処理のうち、互いに処理の逐次性を確保する必要がある一連の処理をコア頻度固定に設定することができる。これにより、互いに処理の逐次性を確保する必要がある一連の制御処理については、同一のコアで実行させることができるとともに、実行頻度を固定することができる。このため、逐次性を確保する必要がある一連の制御処理の一部が別のコアで実行されたり、上記一連の制御処理の一部で実行頻度が少なくなったりすることがなく、上記一連の制御処理において逐次性が崩れてしまうという事態の発生を抑制することができる。
【００４５】
また、コア可変処理が実行されるコアを、処理負荷が高いコアから、処理負荷が低い別のコアへ変更したり、頻度可変処理が実行されるコアの処理負荷に応じて、頻度可変処理の実行頻度を変更したりすることができる。これにより、コアの処理負荷の増加を抑制し、制御処理の実行に支障が発生するのを抑制することができる。
【００４６】
また、各制御処理について、車両の状態に関わらずコア頻度固定、コア可変および頻度可変の何れか１つに固定されるということがなく、車両の状態に応じて、最適なコア頻度設定に変更することができる。
【００４７】
また、複数の制御処理のそれぞれについて、車両の状態と、コア頻度固定、コア可変および頻度可変との対応関係を定義する対応表３１を備え、複数の制御処理を、対応表３１に基づいて、コア頻度固定、コア可変および頻度可変に設定する（Ｓ２０，Ｓ１５０）。
【００４８】
これにより、車両の状態に応じたコア頻度設定を、対応表３１を参照することにより、簡便に行うことができる。
また、ＥＣＵ１は４個のコア２１，２２，２３，２４を備え、４個のコア２１，２２，２３，２４のうち、コア２１をマスタコアとし、コア２２，２３，２４をスレーブコアとして、複数の制御処理はそれぞれ、スレーブコア２２，２３，２４の何れか１つで実行される。そして、コア可変処理が実行されるコアの処理負荷が高い場合に、処理負荷が低い別のコアにコア可変処理を実行させる処理（Ｓ１０〜Ｓ４０）は、マスタコア２１で実行される。これにより、コア可変処理が実行されるコアの変更をマスタコア２１で一元管理することができ、管理を容易にすることができる。
【００４９】
また、頻度可変処理が実行されるコアの処理負荷に応じて頻度可変処理の実行頻度を変更する処理は、スレーブコア２２，２３，２４のそれぞれで実行される。これにより、スレーブコア２２，２３，２４のそれぞれは、自身のコアで実行される頻度可変処理の管理を自身のコアで行うことができ、頻度可変処理の管理を容易にすることができる。
【００５０】
以上説明した実施形態において、ＥＣＵ１は本発明における電子制御装置、Ｓ２０，Ｓ１５０の処理は本発明における設定手段、Ｓ１０〜Ｓ５０の処理は本発明におけるコア変更手段、Ｓ１７０の処理は本発明における頻度変更手段である。
【００５１】
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。
例えば上記実施形態では、マスタコア２１が、コア可変処理が実行されるコアを変更するための処理移動指示をスレーブコア２２，２３，２４へ送信することにより、コアの変更をマスタコア２１で一元管理するものを示した。しかし、コア２１，２２，２３，２４が、互いに異なる複数の制御処理を実行するように構成され、コア２１，２２，２３，２４のそれぞれが互いに通信することにより、自身のコアと他のコアの処理負荷を把握し、自身のコアで実行するコア可変処理と、他のコアで実行するコア可変処理を決定するようにしてもよい。
【００５２】
また上記実施形態では、車両状態としてエンジン水温およびエンジン回転数を用いて、車両状態とコア頻度設定との対応関係を定義したものを示したが、車両状態としてエンジン水温およびエンジン回転数以外のものを用いてもよい。
【符号の説明】
【００５３】
１…ＥＣＵ、１１…ＣＰＵ、２１，２２，２３，２４…コア、３１…対応表
【図１】
2014078078.tif 000003
【図３】
2014078078.tif 000004
【図４】
2014078078.tif 000005
【図５】
2014078078.tif 000006
【図２】
2014078078.tif 000007