(57)【要約】【課題】複数の気筒に対し１つ配置される共用デバイスと気筒毎に配置される気筒毎デバイスとを備えるエンジンを制御するためのマルチコアプロセッサを有するエンジン制御装置において、好適に消費電力や発熱量を低減する。【解決手段】前記マルチコアプロセッサは、気筒毎デバイスの制御演算を１気筒ごとに１コア割り当てた気筒毎コアからなる気筒毎コア群と、前記気筒毎コア群の１つの気筒毎コアであって、更に前記共用デバイスの制御演算を割り当てた代表コアとを備える。燃焼状態に関するパラメータを含むコア停止条件が成立する場合に、前記代表コア以外の少なくとも１つの気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用する。【選択図】図２
2014051911.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒に対し１つ配置される共用デバイスと気筒毎に配置される気筒毎デバイスとを備えるエンジンを制御するためのマルチコアプロセッサを有するエンジン制御装置において、
前記マルチコアプロセッサは、
気筒毎デバイスの制御演算を１気筒ごとに１コア割り当てた気筒毎コアからなる気筒毎コア群と、
前記気筒毎コア群の１つの気筒毎コアであって、更に前記共用デバイスの制御演算を割り当てた代表コアと、
燃焼状態に関するパラメータを含むコア停止条件が成立する場合に、前記代表コア以外の少なくとも１つの気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用する代表演算手段と、
を備えることを特徴とするエンジン制御装置。
【請求項２】
前記コア停止条件は、前記代表コアに対応する気筒とそれ以外の気筒との燃焼状態に関するパラメータの差が所定範囲内にある場合に成立し、
前記代表演算手段は、前記コア停止条件が成立する場合に、前記代表コア以外の気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用すること、
を特徴とする請求項１記載のエンジン制御装置。
【請求項３】
前記コア停止条件は、前記代表コアに対応する気筒以外の気筒ごとに判定され、判定される気筒における過去所定期間内の燃焼状態に関するパラメータの差が所定範囲内にある場合に成立し、
前記代表演算手段は、所定気筒において前記コア停止条件が成立する場合に、当該所定気筒に対応する気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用すること、
を特徴とする請求項１記載のエンジン制御装置。
【請求項４】
前記コア停止条件は、気筒内への燃料供給が禁止される場合に成立し、
前記代表演算手段は、前記コア停止条件が成立する場合に、前記代表コア以外の気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用すること、
を特徴とする請求項１記載のエンジン制御装置。
【請求項５】
前記マルチコアプロセッサは、気筒内に供給される燃料の性状が変化することが予測される場合に、前記コア停止条件による判定処理を禁止する禁止手段、を更に備えることを特徴とする請求項１乃至４のいずれか１項記載のエンジン制御装置。
【請求項６】
前記マルチコアプロセッサは、燃焼状態が変化することが予測される場合に、前記コア停止条件による判定処理を禁止する禁止手段、を更に備えることを特徴とする請求項１乃至５のいずれか１項記載のエンジン制御装置。
【請求項７】
前記マルチコアプロセッサは、燃焼状態が変化することが予測される場合に、停止させた気筒毎コアを稼動状態に復帰させる復帰手段、を更に備えることを特徴とする請求項１乃至６のいずれか１項記載のエンジン制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、エンジン制御装置に係り、特に、複数の気筒に対し１つ配置される共用デバイスと気筒毎に配置される気筒毎デバイスとを備えるエンジンを制御するためのマルチコアプロセッサを有するエンジン制御装置に関する。
【背景技術】
【０００２】
近年、エンジンの制御高性能化に対応するため、マルチコアプロセッサを活用する研究が進められている。例えば、特許文献１には、４気筒のエンジンを制御するマルチコアプロセッサが開示されている。本公報には、燃料噴射量を演算および制御する噴射制御部を各気筒に有し、各気筒の噴射制御部の機能にコアを１つずつ対応させ、さらに、全体制御の機能に１つのコアを対応させた、計５つのコアを備えるマルチコアプロセッサが開示されている。
【０００３】
また、特許文献２には、マルチプロセッサを有する車両用電子制御装置の電源管理システムが開示されている。本公報には、プロセッサに機能毎に分割された制御演算を割り当て、該機能の起動または停止状態に基づいて、該機能に対応する制御演算が割り当てられたプロセッサを起動または停止させることが開示されている。
尚、出願人は、本発明に関連するものとして、上記の文献を含めて、以下に記載する文献を認識している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１０１２３５号公報
【特許文献２】特開２００７−１２５９５０号公報
【特許文献３】特開２０１１−１４５９００号公報
【特許文献４】特開２０１０−２０１９６１号公報
【特許文献５】特開２０１０−２１８２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来、プロセッサの性能向上は、クロック周波数の向上で実現されてきたが、近年では消費電力（発熱）の問題のため限界を迎えつつある。消費電力Ｐとクロック周波数ｆの間には、Ｐ≒α×ｆ３（α：係数）で示される関係がある。この関係によれば、クロック周波数が２倍になれば消費電力が８倍になるため、クロック周波数の高いシングルコアよりもクロック周波数の低いマルチコアの方が消費電力や発熱量の点で有利である。マルチコアプロセッサを活用するに際して、性能を確保しつつ消費電力や発熱量を低減することが燃費向上の観点で重要である。
【０００６】
ところで、複数の気筒を有するエンジンには、気筒毎に燃料噴射量、点火時期、燃焼圧などに関する気筒毎デバイス（センサやアクチュエータ）が配置される。気筒毎デバイスを制御する機能は各気筒で同じであるため、特許文献２のように、機能毎にプロセッサ（コア）を割り当てることが考えられる。しかし、機能毎にコアを割り当てたのでは、機能単位でしかコアをＯＮ／ＯＦＦできない。そのため、いずれかの気筒で当該機能の制御演算が必要とされている限りコアをＯＦＦにできない。このような制限があるため、消費電力や発熱量の低減が十分に図られるとは言えない。
【０００７】
また、特許文献１では、各気筒の噴射制御部の機能（気筒毎デバイスの制御演算）にコアを１つずつ割り当て、さらに、全体制御の機能に１つのコアを割り当てている。この全体制御の機能としては、複数の気筒に対し１つ配置される水温センサやウェイストゲートバルブ等の共用デバイスの制御演算が考えられる。特許文献１では、性能向上の観点からマルチコアプロセッサを採用しているに過ぎず、消費電力や発熱量の低減の観点は考慮されていない。たとえ消費電力や発熱量の低減の観点から、燃焼を伴う機関運転中に一部のコアを停止させるとしても、共用デバイスの制御演算を割り当てたコアと気筒毎デバイスの制御演算を割り当てたコアの少なくとも２つのコアは残す必要がある。そのため、消費電力や発熱量の低減が十分に図られるとは言えない。
【０００８】
この発明は、上述のような課題を解決するためになされたもので、複数の気筒に対し１つ配置される共用デバイスと気筒毎に配置される気筒毎デバイスとを備えるエンジンを制御するためのマルチコアプロセッサを有するエンジン制御装置において、好適に消費電力や発熱量を低減することのできるエンジン制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の発明は、上記の目的を達成するため、複数の気筒に対し１つ配置される共用デバイスと気筒毎に配置される気筒毎デバイスとを備えるエンジンを制御するためのマルチコアプロセッサを有するエンジン制御装置であって、
前記マルチコアプロセッサは、
気筒毎デバイスの制御演算を１気筒ごとに１コア割り当てた気筒毎コアからなる気筒毎コア群と、
前記気筒毎コア群の１つの気筒毎コアであって、更に前記共用デバイスの制御演算を割り当てた代表コアと、
燃焼状態に関するパラメータを含むコア停止条件が成立する場合に、前記代表コア以外の少なくとも１つの気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用する代表演算手段と、を備えることを特徴とする。
【００１０】
燃焼状態に関するパラメータとしては、燃焼圧、空燃比、吸気量、噴射量、点火時期の少なくとも１つに関する値を用いることが好ましい。
【００１１】
また、第２の発明は、第１の発明において、
前記コア停止条件は、前記代表コアに対応する気筒とそれ以外の気筒との燃焼状態に関するパラメータの差が所定範囲内にある場合に成立し、
前記代表演算手段は、前記コア停止条件が成立する場合に、前記代表コア以外の気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用すること、を特徴とする。
【００１２】
また、第３の発明は、第１の発明において、
前記コア停止条件は、前記代表コアに対応する気筒以外の気筒ごとに判定され、判定される気筒における過去所定期間内の燃焼状態に関するパラメータの差が所定範囲内にある場合に成立し、
前記代表演算手段は、所定気筒において前記コア停止条件が成立する場合に、当該所定気筒に対応する気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用すること、を特徴とする。
【００１３】
また、第４の発明は、第１の発明において、
前記コア停止条件は、気筒内への燃料供給が禁止される場合に成立し、
前記代表演算手段は、前記コア停止条件が成立する場合に、前記代表コア以外の気筒毎コアを停止させ、前記代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用すること、を特徴とする。
【００１４】
また、第５の発明は、第１乃至第４の発明のいずれかにおいて、
前記マルチコアプロセッサは、気筒内に供給される燃料の性状が変化することが予測される場合に、前記コア停止条件による判定処理を禁止する禁止手段、を更に備えることを特徴とする。
【００１５】
また、第６の発明は、第１乃至第５の発明のいずれかにおいて、
前記マルチコアプロセッサは、燃焼状態が変化することが予測される場合に、前記コア停止条件による判定処理を禁止する禁止手段、を更に備えることを特徴とする。
【００１６】
また、第７の発明は、第１乃至第６の発明のいずれかにおいて、
前記マルチコアプロセッサは、燃焼状態が変化することが予測される場合に、停止させた気筒毎コアを稼動状態に復帰させる復帰手段、を更に備えることを特徴とする。
【発明の効果】
【００１７】
第１の発明によれば、マルチコアプロセッサは、気筒毎デバイスの制御演算が割り当てられた気筒毎コアを気筒数分備える。このうち１つの気筒毎コアは、その気筒（代表気筒）の気筒毎デバイスの制御演算と共用デバイスの制御演算とが割り当てられた代表コアでもある。このような構成において、燃焼状態に関するパラメータに応じて、代表コア以外の気筒毎コアを停止させ、代表コアによる気筒毎デバイスの制御演算の実行結果を停止させた気筒毎コアの制御演算の実行結果として利用することができる。すなわち、代表気筒での制御演算の実行結果を利用することで、他気筒についての重複した制御演算を省略・軽減することができる。このため、第１の発明によれば、代表コア以外の気筒毎コアを停止させて、好適に消費電力や発熱量の低減を図ることができる。
【００１８】
第２の発明によれば、代表コアに対応する気筒とそれ以外の気筒との燃焼状態に関するパラメータの差が所定範囲内にあることをコア停止条件とする。コア停止条件が成立する場合、気筒間でばらつきが少ない安定した燃焼状態であると判断できる。気筒間で燃焼状態のばらつきが少ないため、代表気筒での制御演算の実行結果を利用して、他気筒についての重複した制御演算を省略・軽減することができる。このため、第２の発明によれば、燃焼を伴う運転状態において、代表コア以外の全ての気筒毎コアを停止させて、好適に消費電力や発熱量の低減を図ることができる。
【００１９】
第３の発明によれば、所定気筒における過去所定期間内の燃焼状態に関するパラメータの差が所定範囲内にあることをコア停止条件とする。気筒毎にコア停止条件を判定し、コア停止条件が成立する気筒については、燃焼状態のばらつきが少ない安定した燃焼状態であると判断できる。そのため、第３の発明によれば、燃焼を伴う運転状態において、判定条件が成立する気筒ごとに気筒毎コアを停止させて、好適に消費電力や発熱量の低減を図ることができる。
【００２０】
第４の発明によれば、フューエルカット時やアイドルストップを含む気筒休止時など、気筒内への燃料供給が禁止されることをコア停止条件とする。コア停止条件が成立する場合、燃焼を伴わない運転状態であると判断できる。そのため、第４の発明によれば、燃焼を伴わない運転状態において、代表コア以外の気筒毎コアを停止させて、好適に消費電力や発熱量の低減を図ることができる。
【００２１】
第５の発明によれば、マルチコアプロセッサは、給油前と異なる組成の燃料が給油された場合など、気筒内に供給される燃料の性状が変化することが予測される場合にコア停止条件による判定処理を禁止する。コア停止条件の判定処理自体を禁止することで、処理負荷を軽減することができる。
【００２２】
第６の発明によれば、マルチコアプロセッサは、ナビ経路情報等から車両前方に登坂路が存在することが検知されるなど、燃焼状態が変化することが予測される場合にコア停止条件による判定処理を禁止する。コア停止条件の判定処理自体を禁止することで、処理負荷を軽減することができる。
【００２３】
第７の発明によれば、マルチコアプロセッサは、燃焼状態が変化することが予測される場合に、停止させた気筒毎コアを稼動状態に復帰させる。燃焼状態の変化が予測される場合に事前にコアを復帰させておくことで、ドライバビリティの向上を図ることができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施の形態１のシステム構成を説明するための概念構成図である。
【図２】マルチコアプロセッサであるＥＣＵ５０の構成と演算割り当てについて説明するための図である。
【図３】ＥＣＵ５０の各コアに制御演算を割り当てるために、コントローラが実行する制御ルーチンのフローチャートである。
【図４】実施の形態１のシステムにおいてＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図５】実施の形態１のシステムにおけるコア停止タイミングについて説明するための図である。
【図６】実施の形態２のシステムにおいてＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図７】実施の形態３のシステムにおいてＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図８】実施の形態４のシステムにおいてＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【発明を実施するための形態】
【００２５】
以下、図面を参照して本発明の実施の形態について詳細に説明する。尚、各図において共通する要素には、同一の符号を付して重複する説明を省略する。
【００２６】
実施の形態１．
［実施の形態１のシステム構成］
図１は、本発明の実施の形態１のシステム構成を説明するための概念構成図である。
図１に示すシステムは、内燃機関（以下、単にエンジンとも記す。）１０を備えている。内燃機関１０は、ガソリンやアルコールを燃料とする４サイクルエンジンであり、車両等に搭載されその動力源とされる。図１に示すエンジン１０は、直列４気筒型であるが、本発明においては、気筒数および気筒配置はこれに限定されるものではなく、複数の気筒を備えるエンジンであればよい。
【００２７】
エンジン１０には、空気を筒内に取り込むための吸気通路１２と、筒内から排気ガスを排出するための排気通路１４とが接続されている。吸気通路１２には、吸気通路１２に吸入される空気の流量に応じた信号を出力するエアフローメータ１６が設けられている。
【００２８】
エンジン１０は、排気ガスのエネルギによって過給を行うターボチャージャ１８を備えている。エアフローメータ１６の下流には、ターボチャージャ１８のコンプレッサ１８ａが配置されている。ターボチャージャ１８は、コンプレッサ１８ａと一体的に連結され排気ガスのエネルギによって回転するタービン１８ｂを備えている。コンプレッサ１８ａは、タービン１８ｂに入力される排気ガスの排気エネルギによって回転駆動される。
【００２９】
コンプレッサ１８ａの下流には、コンプレッサ１８ａにより圧縮された空気を冷却するインタークーラ２０が設けられている。インタークーラ２０の下流には、吸気通路１２を流れる空気量を調整するための電子制御式のスロットルバルブ２２が設けられている。スロットルバルブ２２の下流には、気筒毎に吸気ポート２４が設けられている。吸気ポート２４の近傍には、吸気ポート２４内に燃料を噴射（ポート噴射）するインジェクタ２８が取付けられている。吸気通路１２の下流端には、気筒内と吸気通路１２との間を開閉する吸気バルブ２６が設けられている。
【００３０】
内燃機関１０の各気筒には、気筒内（燃焼室内）の混合気に点火するための点火プラグ３０が設けられている。燃焼室内の燃焼圧（筒内圧）に応じた信号を出力する燃焼圧センサ（筒内圧センサ）３１が取り付けられている。
【００３１】
排気通路１４の上流端には、気筒内と排気通路１４との間を開閉する排気バルブ３２が設けられている。排気バルブ３２の下流には、排気ガスの空燃比に応じた信号を出力する空燃比センサ３３が設けられている。空燃比センサ３３の下流には、排気ガスのエネルギによって回転するタービン１８ｂが配置されている。タービン１８ｂの下流には、排気ガス中の成分を浄化する触媒３４が設けられている。触媒３４として、例えば三元触媒が用いられる。
【００３２】
タービン１８ｂの近傍には、タービン１８ｂよりも上流の排気通路１４と、タービン１８ｂから触媒３４までの間の排気通路１４とを接続してタービン１８ｂを迂回するバイパス通路３６が設けられている。バイパス通路３６には、電子制御式のウェイストゲートバルブ（Waste Gate Valve）３８が設けられている。ウェイストゲートバルブ３８は、モータや負圧ダイヤフラム等のアクチュエータにより任意に開閉制御可能であり、これによりバイパス通路３６を強制的に連通、遮断することができる。
【００３３】
本実施形態のシステムは、ＥＣＵ（Electronic Control Unit）５０を更に備えている。ＥＣＵ５０は、例えばＲＯＭ、ＲＡＭ等を含む記憶回路を備えた演算処理装置により構成されている。ＥＣＵ５０の入力側には、上述したエアフローメータ１６、燃焼圧センサ３１、空燃比センサ３３の他、クランク角及びクランク角速度を検出するためのクランク角センサ５２、車両のアクセルペダルの操作量に対応したアクセル開度を検出するためのアクセル開度センサ５４、エンジン冷却水の温度を検出するための水温センサ５６等の内燃機関１０の運転状態を検出するための各種センサが接続されている。
【００３４】
ＥＣＵ５０の出力側には、上述したスロットルバルブ２２、インジェクタ２８、点火プラグ３０、ウェイストゲートバルブ３８の他、フューエルカット時や気筒休止時に対象気筒の吸気バルブ２６および排気バルブ３２の少なくとも一方を閉弁状態で停止させる弁停止装置５８等の内燃機関１０の運転状態を制御するための各種アクチュエータが接続されている。ＥＣＵ５０は、各種センサからの入力情報に基づいて所定のプログラムを実行し、各種アクチュエータを作動させることにより、エンジン１０の運転状態を制御する。
【００３５】
上述したセンサやアクチュエータは、複数の気筒に対して１つ配置される「共用デバイス」と気筒毎に配置される「気筒毎デバイス」とに分類される。以下の説明において、共用デバイスは、水温センサ５６、ウェイストゲートバルブ３８等の気筒に依らないデバイスである。気筒毎デバイスは、上述したインジェクタ２８、点火プラグ３０、燃焼圧センサ３１、弁停止装置５８等である。なお、各種センサやアクチュエータをいずれのデバイスに分類するかは、これに限定されるものではない。システム構成に応じて変更可能な事項であり、例えば、上記システム構成では、複数の気筒に対して１つの空燃比センサ３３を配置することとしているが、気筒毎に空燃比センサ３３を配置して、気筒毎デバイスに分類しても良い。
【００３６】
（ＥＣＵの構成と演算割り当て）
図２は、マルチコアプロセッサであるＥＣＵ５０の構成と演算割り当てについて説明するための図である。
図２に示すＥＣＵ５０は、１つのプロセッサ・パッケージ内に４つのコアを封入したエンジン制御用のマルチコアプロセッサである。ＥＣＵ５０は、少なくとも気筒数以上のコアを封入したマルチコアプロセッサである。
【００３７】
図２に示すＥＣＵ５０は、４つのコア以外に、各コアの電源およびクロック周波数を制御する制御装置と、各コアに制御演算（ソフト）を割り当てる割り当て装置とを含むコントローラを備えている。コントローラは各コアに対して各種指示信号（起動／停止、クロック周波数設定、制御演算（ソフト）割り当て）を出力する。
【００３８】
図３は、ＥＣＵ５０の各コアに制御演算を割り当てるために、コントローラが実行する制御ルーチンのフローチャートである。
図３に示すルーチンでは、まずコントローラは、１つのセンサ、１つのアクチュエータごとの制御演算の処理負荷の合計が設定値以上であるか否かを判定する（ステップＳ６０）。設定値未満である場合、例えば、図２のコア１が規定のクロック周波数で全ての制御演算を滞りなく実行可能なＣＰＵ使用率である場合は、コントローラはコア１に全ての制御演算を割り当て、他コアを停止させる（ステップＳ７０）。一方、ステップＳ６０において、設定値以上である場合、コントローラは、気筒毎デバイスの制御演算を１気筒ごとに１コア割り当てる（ステップＳ８０）。図２の例では、気筒＃１〜＃４の気筒毎デバイスの制御演算が、それぞれコア１〜４に割り当てられている。以下の説明において、これらのコアを「気筒毎コア」と称する。さらに、コントローラは、ステップＳ８０において、いずれか１つの気筒毎コアに共用デバイスの制御演算（気筒に依らない演算）を割り当てる。図２の例では、気筒＃１に対応するコア１に割り当てられている。以下の説明において、このコアを「代表コア」と称する。ステップＳ９０において、コントローラは、各コアの処理負荷に応じて各コアのクロック周波数を設定する。
【００３９】
なお、図３のステップＳ６０においては、処理負荷の合計が設定値以上であることを判定条件としているが、これに限定されるものではない。例えば、所定値以上のクロック周波数での連続稼働時間が所定時間を超えることを条件としてもよい。また、消費電力やＣＰＵ温度を直接モニタリングし、その値が規定値を超えることを条件としてもよい。
【００４０】
［実施の形態１における特徴的制御］
本システムのマルチコアプロセッサは、図３に示す割り当てルーチンにより、１つの気筒における気筒毎デバイスの制御演算を１つのコアに割り当てた「気筒毎コア」からなる気筒毎コア群と、気筒毎コア群のうち１つの気筒毎コアに更に共用デバイスの制御演算を割り当てた「代表コア」とを有する。図２に示す例では、コア１〜４が気筒毎コアであり、コア１はさらに代表コアでもある。
【００４１】
ところで、センサやアクチュエータごとの制御演算の処理負荷の合計が高い場合であっても、同種のセンサやアクチュエータの制御演算の実行結果の差が小さい場合がある。例えば、アイドリング時や定常運転時など、各気筒の燃焼状態が一定であると判定できる場合には、代表コアの演算結果（燃焼圧、燃料噴射量、点火時期等）を他の気筒毎コアの演算結果として利用することで、処理負荷を軽減することができる。
【００４２】
そこで、本実施形態のシステムでは、代表コアに対応する気筒（＃１）とそれ以外の気筒（＃２〜＃４）の燃焼状態に関するパラメータの差が所定範囲内にあることをコア停止条件とする。燃焼状態に関するパラメータとしては、燃焼圧、空燃比、吸気量、噴射量、点火時期の少なくとも１つに関する値を用いることが好ましい。コア停止条件が成立する場合は、代表コア（コア１）以外の全ての気筒毎コア（コア２〜４）を停止させ、代表コア（コア１）による気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コア（コア２〜４）の制御演算の実行結果として利用する。一方、コア停止条件が成立しない場合は、気筒毎コアごとに気筒毎デバイスの制御演算を実行する。
【００４３】
このような制御によれば、アイドリング時や定常運転時など気筒間でばらつきが少ない安定した燃焼状態であると判断できる場合に、代表気筒での制御演算の実行結果を利用して、他気筒についての重複した制御演算を省略・軽減することができる。そのため、実施の形態１のシステムによれば、代表コア以外の気筒毎コアを停止させて、好適に消費電力や発熱量の低減を図ることができる。
【００４４】
図４は、上述の制御を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
図４に示すルーチンは代表コアによって機関運転中常時実行される。図４に示すルーチンでは、まず、代表コアは、対象の制御演算について、代表コアの演算結果と他のすべての気筒毎コアの演算結果との差が所定範囲内であるか否かを判定する（ステップＳ１００）。対象の制御演算とは、例えば燃焼圧センサ３１により検出される燃焼圧、点火プラグ３０（点火時期）の制御量、インジェクタ２８（噴射量）の制御量など、燃焼状態に関するパラメータの演算である。この燃焼状態に関するパラメータを代表コアと他の気筒毎コアとで比較する。その差が所定範囲内であれば、気筒間で燃焼状態のばらつきが少ないと判断できる。この場合には、代表コア以外のすべての気筒毎コアを停止させ、代表コアの制御演算の実行結果を他の気筒毎コアの制御演算の実行結果として利用する（ステップＳ１１０）。
【００４５】
その後、代表コアは、停止したコアを稼働状態に復帰させるコア復帰条件が成立するか否かを判定する（ステップＳ１２０）。コア復帰条件が成立する場合、代表コアは、停止したコアを稼動状態に復帰させる（ステップＳ１３０）。燃焼を開始する気筒順にコアを復帰させるのが好ましい。コア復帰条件は、燃焼状態が変化することが予測される場合に成立する条件である。具体的には、ステップＳ１００に示すコア停止条件に当てはまらなくなったことを条件とする。その他、コア復帰条件として、気筒毎に有するパラメータ以外で車両状態を表すパラメータ（車速、エンジン回転数、路面情報、ナビ経路情報、ＥＣＴシフト状態、クラッチ状態など）が所定の状態になったことを条件としてもよい、例えば、ナビ経路情報等から車両前方に登坂路があることを検出した場合、その後アクセルが踏まれて燃焼状態が変化することが予測できる。そのため、停止したコアを事前に復帰させる。
【００４６】
なお、ステップＳ１２０においてコア復帰条件が成立しない場合には、ステップＳ１１０の処理に戻り処理を継続する。また、ステップＳ１００においてコア停止条件が成立しない場合には、気筒毎コアごとに気筒毎デバイスの制御演算を実行する。
【００４７】
ところで、実施の形態１のシステムにおいては、代表コアが図４に示すルーチンを実行することとしているが、コントローラがその機能を代替するものであってもよい。
【００４８】
（コア停止時とコア復帰時の処理）
図５は、実施の形態１のシステムにおけるコア停止タイミングについて説明するための図である。
上述の図４に示すルーチンでは、コア停止条件（ステップＳ１００）が成立する場合に、ステップＳ１１０において気筒毎コアが停止される。しかしながら、コア停止条件が成立する場合に、コアを即刻停止してしまうと不都合が生じる場合がある。図５に示す燃料噴射制御の例では、噴射実行中にコアを停止してしまうとインジェクタ２８への通電も止まる。そのため、アクチュエータ動作中はコアを停止させず、動作が完了してから停止させることが好ましい。なお、この点は以下の実施の形態でも同様である。
【００４９】
また、図５の気筒＃２に示すように、噴射実行前に噴射量の演算を実行するが、この演算途中でコアを停止する場合にも不都合が生じる可能性がある。この場合、噴射量の演算は途中で停止され、コア復帰時に演算も途中から復帰することになるが、演算停止時とコア復帰時ではエンジンの運転状態が異なっている。そのため、停止された演算の結果を、復帰してから得て、その演算結果を用いて燃料を噴射すれば、意図しない燃焼を引き起こす可能性がある。これを防止するため、途中で停止すると問題になる演算については、演算が終了してからコアを停止することが好ましい。或いは、演算途中でコアを停止した場合は、その途中結果を破棄し、コア復帰時に最初から演算をやり直すことが好ましい。なお、これらの点は以下の実施の形態でも同様である。
【００５０】
また、本発明が適用されるエンジンは、上述のようなポート噴射式のエンジンには限定されない。筒内直噴エンジンにも本発明の適用は可能である。また、過給機付きのエンジンに限らず、自然吸気エンジンにも本発明の適用は可能である。なお、この点は以下の実施の形態でも同様である。
【００５１】
尚、上述した実施の形態１においては、ＥＣＵ５０が前記第１の発明における「マルチコアプロセッサ」に、図２に示すコア１〜４それぞれが前記第１の発明における「気筒毎コア」に、図２に示すコア１が前記第１の発明における「代表コア」に、それぞれ相当している。
また、ここでは、ＥＣＵ５０が、上記ステップＳ１００の処理を実行することにより前記第１の発明及び第２の発明における「コア停止条件」の判定処理が実行され、上記ステップＳ１１０の処理を実行することにより前記第１の発明及び第２の発明における「代表演算手段」が、それぞれ実現されている。
【００５２】
実施の形態２．
［実施の形態２のシステム構成］
次に、図６を参照して本発明の実施の形態２について説明する。本実施形態のシステムは図１〜図３に示す構成において、ＥＣＵ５０に後述する図６のルーチンを実施させることで実現することができる。
【００５３】
上述した実施の形態１においては、コア停止条件として、ステップＳ１００において、対象の制御演算について、代表コアの演算結果と他のすべての気筒毎コアの演算結果との差が所定範囲内であることをコア停止条件とし、コア停止条件が成立する場合には、代表コア以外のすべての気筒毎コアを停止することとしている。ところで、コア停止条件を気筒毎に個別に判定可能な条件とし、コア停止条件が成立する気筒について個別に気筒毎コアを停止することとしてもよい。
【００５４】
［実施の形態２における特徴的制御］
そこで、実施の形態２のシステムでは、気筒毎に判定するコア停止条件として、代表コア以外の気筒毎コアにおける過去所定期間の燃焼状態に関するパラメータの差が所定範囲内にあることをコア停止条件とする。燃焼状態に関するパラメータとしては、燃焼圧、空燃比、吸気量、噴射量、点火時期の少なくとも１つに関する値を用いることが好ましい。所定気筒においてコア停止条件が成立する場合は、当該所定気筒に対応する気筒毎コアを停止させ、代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用する。一方、コア停止条件が成立しない場合は、気筒毎コアごとに気筒毎デバイスの制御演算を実行する。
【００５５】
このような制御によれば、コア停止条件が成立する気筒ごとに気筒毎コアを停止させることができる。そのため、実施の形態２のシステムによれば、好適に消費電力や発熱量の低減を図ることができる。
【００５６】
図６は、上述の制御を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
図６に示すルーチンは代表コアによって機関運転中常時実行される。図６に示すルーチンは、ステップＳ１００の処理後にステップＳ２００の処理が追加されている点、および、ステップＳ１１０の処理がステップＳ１１１に置き換えられている点を除き、図４に示すルーチンと同様である。以下、図６において、図４に示すステップと同一のステップについては、同一の符号を付してその説明を省略または簡略する。
【００５７】
図６に示すルーチンでは、ステップＳ１００のコア停止条件が成立しない場合に、代表コアは、ステップＳ２００のコア停止条件が成立するか否かを、代表コア以外の気筒毎コアごとに判定する。具体的には、対象の制御演算（吸気量、噴射量、点火時期などの制御演算）について、気筒毎コアごとに過去所定期間における演算結果の差が所定範囲内にあるか否かを判定する。対象の制御演算とは、例えば燃焼圧センサ３１により検出される燃焼圧、点火プラグ３０（点火時期）の制御量、インジェクタ２８（噴射量）の制御量など、燃焼状態に関するパラメータの演算である。所定気筒においてコア停止条件（ステップＳ２００）が成立する場合、当該所定気筒は燃焼状態のばらつきが少ないと判断できる。この場合には、当該所定気筒に対応する気筒毎コアを停止させ、代表コアの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用する（ステップＳ１１１）。なお、ステップＳ１１１は、上述の処理に加え、上述した実施の形態１におけるステップＳ１００の処理を含むこととする。
【００５８】
ところで、実施の形態２のシステムにおいては、代表コアが図６に示すルーチンを実行することとしているが、コントローラがその機能を代替するものであってもよい。
【００５９】
また、図６に示すルーチンでは、ステップＳ１１１において、代表コアの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用することとしているが、これに限定されるものではない。当該気筒毎コアの停止前までの演算結果を使用することとしてもよい。
【００６０】
また、図６に示すルーチンでは、代表コア以外の気筒毎コアについてステップＳ２００のコア停止条件を判定することとしているが、これに限定されるものではない。代表コアについてもステップＳ２００のコア停止条件を判定することとしてもよい。代表コアについてコア停止条件が成立する場合には、ステップＳ１１１に次の処理を加える。すなわち、代表コアを停止するのではなく、対象の制御演算を中止し、中止前の演算結果を使用してその演算が担う処理負荷に相当する分のクロック周波数を下げる。これにより、代表コアの消費電力および発熱量を低減することができる。
【００６１】
また、図６に示すルーチンでは、ステップＳ１００とステップＳ２００の両方のコア停止条件を判定することとしているが、ステップＳ１００の判定処理を削除することとしてもよい。
【００６２】
尚、上述した実施の形態２においては、ＥＣＵ５０が、上記ステップＳ２００の処理を実行することにより前記第３の発明における「コア停止条件」の判定処理が実行され、上記ステップＳ１１１の処理を実行することにより前記第３の発明における「代表演算手段」が、それぞれ実現されている。
【００６３】
実施の形態３．
［実施の形態３のシステム構成］
次に、図７を参照して本発明の実施の形態３について説明する。本実施形態のシステムは図１〜図３に示す構成において、ＥＣＵ５０に後述する図７のルーチンを実施させることで実現することができる。
【００６４】
上述した実施の形態１または２におけるコア停止条件（ステップＳ１００、Ｓ２００）は、燃焼を伴う運転状態において、燃焼状態に関するパラメータのばらつきが少ないことを条件としている。ところで、燃焼を伴わない運転状態においても、気筒毎コアの制御演算を代表コアに任せることが可能である。
【００６５】
［実施の形態３における特徴的制御］
そこで、実施の形態３のシステムでは、フューエルカット時やアイドルストップを含む気筒休止時など、気筒内への燃料供給が禁止されることをコア停止条件とする。コア停止条件が成立する場合は、代表コア以外の気筒毎コアを停止させ、代表コアによる気筒毎デバイスの制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用する。一方、コア停止条件が成立しない場合は、気筒毎コアごとに気筒毎デバイスの制御演算を実行する。
【００６６】
このような制御によれば、燃焼を伴わない運転状態において、代表コア以外の気筒毎コアを停止させて、好適に消費電力や発熱量の低減を図ることができる。
【００６７】
フューエルカット時や気筒休止時に代表コアの演算結果を利用する制御の具体例について説明する。フューエルカット時は新気が触媒３４に流入すると触媒３４が劣化する。これを防ぐため、実施の形態３のシステムでは、弁停止装置５８により吸気バルブ２６、排気バルブ３２を閉弁状態で停止させる制御が実行される。吸排気バルブ停止後、復帰のタイミングで弁停止装置の弁停止ソレノイドへ通電する必要がある。この時、代表コアで各気筒の復帰タイミングの演算および通電指示信号を生成する。あるいは、代表コアで演算した代表気筒の復帰タイミングを用いて全弁同時に復帰させてもよい。
【００６８】
また、経年劣化などにより物理的に吸排気バルブとエンジンユニットの隙間が生じるため、フューエルカット中の弁停止状態においても、完全に新気を遮断することは難しい。そのため、弁停止中の新気流入量を、計測した筒内圧などを用いて推測する場合がある。新気流入量によって空燃比や触媒温度も影響を受けるため、これらを推定するためにも筒内圧の計測が必要となる。そのため、実施の形態２のシステムでは、代表コアで算出した代表気筒の筒内圧を他気筒の筒内圧としても利用する。
【００６９】
図７は、上述の制御を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
図７に示すルーチンは代表コアによって機関運転中常時実行される。図７に示すルーチンは、ステップＳ２００の処理後にステップＳ３００の処理が追加されている点、および、ステップＳ１１１の処理がステップＳ１１２に置き換えられている点を除き、図６に示すルーチンと同様である。以下、図７において、図６に示すステップと同一のステップについては、同一の符号を付してその説明を省略または簡略する。
【００７０】
図７に示すルーチンでは、ステップＳ２００のコア停止条件が成立しない場合には、ステップＳ３００のコア停止条件が成立するか否かを判定する。具体的には、フューエルカット時、又はアイドルストップを含む気筒休止時であるか否かを判定する。判定条件が成立する場合には、代表コア以外の全ての気筒毎コアを停止させ、代表コアの制御演算の実行結果を他の気筒毎コアの制御演算の実行結果として利用する（ステップＳ１１２）。この制御演算の例として上述した筒内圧に関する制御演算が挙げられる。なお、ステップＳ１１２は、上述の処理に加え、上述した実施の形態２におけるステップＳ１１１の処理を含むこととする。
【００７１】
また、フューエルカット又はアイドルストップ状態からのエンジン再始動時には、ステップＳ１３０において、燃焼を最初に開始する気筒（燃料噴射を最初に行う気筒）の気筒毎コアを最初に復帰させ、その後は燃焼を開始する気筒順に対応する気筒毎コアを復帰させる。これにより、全てのコアを同時に復帰させるよりも消費電力を抑えつつ、燃焼制御に必要な演算を行うことができる。
【００７２】
ところで、実施の形態３のシステムにおいては、代表コアが図７に示すルーチンを実行することとしているが、コントローラがその機能を代替するものであってもよい。
【００７３】
また、図７に示すルーチンでは、ステップＳ１００、ステップＳ２００およびステップＳ３００の各コア停止条件を判定することとしているが、ステップＳ１００およびステップＳ２００の一方又は両方の判定処理を削除することとしてもよい。
【００７４】
尚、上述した実施の形態３においては、ＥＣＵ５０が、上記ステップＳ３００の処理を実行することにより前記第４の発明における「コア停止条件」の判定処理が実行され、上記ステップＳ１１２の処理を実行することにより前記第４の発明における「代表演算手段」が、それぞれ実現されている。
【００７５】
実施の形態４．
［実施の形態４のシステム構成］
次に、図８を参照して本発明の実施の形態４について説明する。本実施形態のシステムは図１〜図３に示す構成において、ＥＣＵ５０に後述する図８のルーチンを実施させることで実現することができる。
【００７６】
［実施の形態４における特徴的制御］
上述した実施の形態１乃至３においては、コア停止条件（ステップＳ１００、Ｓ２００、Ｓ３００）が成立する場合に、気筒毎コアを停止させ、代表コアによる制御演算の実行結果を、停止させた気筒毎コアの制御演算の実行結果として利用している。ところで、これらのコア停止条件の判定には所定の処理負荷を要するため、そもそもコア停止が見込めない運転条件下では、コア停止条件の判定を実行しないことが好ましい。具体的には、筒内に供給される燃料の性状変化や燃焼状態が変化することが予測される場合である。
【００７７】
筒内に供給される燃料の性状変化が予測される場合について説明する。例えばアルコール混合燃料など、給油前と異なる組成の燃料が給油された場合には、始動時に燃焼が不安定になることは明らかである。そのため、燃料給油後の初回エンジン始動である場合にはコア停止条件の判定処理自体を中止することが好ましい。
【００７８】
燃焼状態が変化することが予測される場合について説明する。例えばナビ経路情報等から車両前方に登坂路があることを検出した場合、その後アクセルが踏まれて燃焼状態が変化することが予測できる。このように燃焼状態の変化が事前に予測される場合は、コア停止条件の判定処理自体を中止することが好ましい。
【００７９】
そこで、実施の形態４のシステムでは、気筒内に供給される燃料の性状変化や、燃焼状態が変化することが予測される場合に、コア停止条件による判定処理の実行を禁止することとした。このような禁止処理を加えることで、無用なコア停止条件の判定処理を排除でき、処理負荷を低減することが可能である。
【００８０】
図８は、上述の制御を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
図８に示すルーチンは代表コアによって機関運転中常時実行される。図８に示すルーチンは、ステップＳ１００の処理前にステップＳ４００の処理が追加されている点を除き、図４に示すルーチンと同様である。以下、図８において、図４に示すステップと同一のステップについては、同一の符号を付してその説明を省略または簡略する。
【００８１】
図８のルーチンでは、まず、代表コアは、所定の禁止条件が成立するか否かを判定する（ステップＳ４００）。所定の禁止条件とは、上述した通り、筒内に供給される燃料の性状変化や、燃焼状態が変化することが予測される場合に成立する条件である。この禁止条件が成立する場合には、以降のコア停止条件の判定処理を実行することなく、本ルーチンの処理を終了する。
【００８２】
ところで、実施の形態４のシステムにおいては、代表コアが図８に示すルーチンを実行することとしているが、コントローラがその機能を代替するものであってもよい。
【００８３】
また、図８に示すルーチンでは、図４に示すルーチンのステップＳ１００の処理前にステップＳ４００の処理が追加されているが、実施の形態２または実施の形態３において説明した図６または図７に示すルーチンの前処理としてステップＳ４００の処理を追加することとしてもよい。
【００８４】
尚、上述した実施の形態４においては、ＥＣＵ５０が、上記ステップＳ４００の処理を実行することにより前記第５の発明及び第６の発明における「禁止手段」が実現されている。
【符号の説明】
【００８５】
１０  内燃機関（エンジン）
１２  吸気通路
１４  排気通路
１６  エアフローメータ
１８、１８ａ、１８ｂ  ターボチャージャ、コンプレッサ、タービン
２２  スロットルバルブ
２４  吸気ポート
２６  吸気バルブ
２８  インジェクタ
３０  点火プラグ
３１  燃焼圧センサ（筒内圧センサ）
３２  排気バルブ
３３  空燃比センサ
３４  触媒
３８  ウェイストゲートバルブ
５０  ＥＣＵ（Electronic Control Unit）
５２  クランク角センサ
５４  アクセル開度センサ
５６  水温センサ
５８  弁停止装置
【図１】
2014051911.tif 000003
【図２】
2014051911.tif 000004
【図３】
2014051911.tif 000005
【図４】
2014051911.tif 000006
【図５】
2014051911.tif 000007
【図６】
2014051911.tif 000008
【図７】
2014051911.tif 000009
【図８】
2014051911.tif 000010