(57)【要約】【課題】マップ検索と補間計算とにより出力値を求める構成において、入力となるパラメータの定常時での処理時間の短縮と急変時での処理時間の短縮とを両立する。【解決手段】電子制御装置１は、それぞれマップ検索において入力値が存在する間隔を探索して補間領域を求める探索処理を実行する複数の演算部５，６を備える。複数の演算部は、それぞれ共通の探索開始点から互いに異なる探索アルゴリズムにしたがって探索処理を実行する。【選択図】図１
2018124633.tif 000002
【特許請求の範囲】
【請求項１】
それぞれマップ検索において入力値が存在する間隔を探索して補間領域を求める探索処理を実行する複数の演算部（５，６）を備え、
前記複数の演算部は、それぞれ共通の探索開始点から互いに異なる探索アルゴリズムにしたがって前記探索処理を実行する電子制御装置（１）。
【請求項２】
前記複数の演算部は、それぞれ前回制御サイクルで求めた補間領域を前回補間領域とし、その前回補間領域を探索開始点として前記探索処理を実行する請求項１に記載した電子制御装置。
【請求項３】
前記複数の演算部がそれぞれアクセス可能な記憶部（１０）を備え、
前記複数の演算部は、それぞれ前記探索処理の終了状態を前記記憶部に設定し、前記探索処理の終了を同期する請求項１又は２に記載した電子制御装置。
【請求項４】
前記複数の演算部は、それぞれ固有の識別情報を有し、共通のプログラムのうち自己の前記識別情報と一致する領域を特定して実行し、前記探索処理を実行する請求項１から３の何れか一項に記載した電子制御装置。
【請求項５】
前記複数の演算部のうち一の演算部は、前記探索処理を開始すると、割り込みをセットし、
前記複数の演算部のうち他の演算部は、割り込みのセットを検知すると、前記探索処理を開始する請求項１から４の何れか一項に記載した電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子制御装置に関する。
【背景技術】
【０００２】
従来より、マップを用いて出力値を求めるマップ検索の技術が供されている。マップ検索では、マップの隣接する入力値間で今回探索値が存在する間隔を探索して補間領域を特定し、その入力値間で補間計算して出力値を求めるが、補間領域を特定するまでにある程度の時間を要する。そのため、例えば特許文献１には、自動車制御のパラメータを出力値として求める構成において、その入力となるパラメータの殆どが準定常的な値であることに着目し、補間領域を特定するまでの探索時間を短縮する技術が開示されている。具体的には、前回制御サイクルの補間領域が現行制御サイクルの補間領域に近接すると見做し、前回制御サイクルで求めた補間領域を前回補間領域とし、その前回補間領域を探索開始点とする。この構成によれば、探索時間を短縮することができ、現行制御サイクルでの出力値を迅速に求めることができ、処理時間を短縮することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１５２９５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記した構成は入力となるパラメータが準定常的な値であることを前提としている。しかしながら、入力となるパラメータの中には現行制御サイクルの値が前回制御サイクルの値から大きく離れてしまうパラメータも存在する。例えばアクセルの開度やブレーキの油圧等は急変する可能性のあるパラメータである。即ち、急激なアクセル操作やブレーキ操作等が行われると、アクセルの開度やブレーキの油圧等が急変し、現行制御サイクルの値が前回制御サイクルの値から大きく離れてしまう。そうなると、急変時ほど高い応答性が求められるにも拘らず、探索時間が大幅に増加し、処理時間が増大してしまう。このように入力となるパラメータの定常時での処理時間の短縮と急変時での処理時間の短縮とを両立することができないという問題があった。
【０００５】
本発明は、上記した事情に鑑みてなされたものであり、その目的は、マップ検索と補間計算により出力値を求める構成において、入力となるパラメータの定常時での処理時間の短縮と急変時での処理時間の短縮とを両立することができる電子制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１に記載した発明によれば、それぞれマップ検索において入力値が存在する間隔を探索して補間領域を求める探索処理を実行する複数の演算部（５，６）を備え、複数の演算部は、それぞれ探索処理を共通の探索開始点から互いに異なる探索アルゴリズムにしたがって実行する。複数の演算部のうち一の演算部が実行する探索処理の探索アルゴリズムとして、入力となるパラメータの定常時に探索時間を短縮するのに優位な探索アルゴリズムを適用し、複数の演算部のうち他の演算部が実行する探索処理の探索アルゴリズムとして、入力となるパラメータの急変時に探索時間を短縮するのに優位な探索アルゴリズムを適用することで、入力となるパラメータの定常時での処理時間の短縮と急変時での処理時間の短縮とを両立することができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の一実施形態を示す機能ブロック図
【図２】フローチャート（その１）
【図３】フローチャート（その２）
【図４】フローチャート（その３）
【図５】フローチャート（その４）
【図６】フローチャート（その５）
【図７】処理順序の一例を示す図
【図８】シーケンスの一例を示す図（その１）
【図９】シーケンスの一例を示す図（その２）
【発明を実施するための形態】
【０００８】
以下、本発明の一実施形態について図面を参照して説明する。電子制御装置１は、例えば車両に搭載されているエンジンの駆動を制御する電子制御装置であり、マイクロコンピュータ（以下、マイコンと称する）２と、データ転送部３とを有する。データ転送部３は、車両に搭載されているバス４との間のデータ転送を制御する。バス４は、例えばＣＡＮ（登録商標）、ＬＩＮ（登録商標）、ＣＸＰＩ（登録商標）、ＦｌｅｘＲａｙ（登録商標）、ＭＯＳＴ（登録商標）等である。
【０００９】
マイコン２は、第１のＣＰＵ５（演算部に相当する）と、第２のＣＰＵ６（演算部に相当する）と、割り込み要求レジスタ７と、バス８と、ＲＯＭ９と、ＲＡＭ１０（記憶部に相当する）とを有する。第１のＣＰＵ５及び第２のＣＰＵ６は、それぞれ割り込み要求レジスタ７に対してアクセス可能であると共に、それぞれバス８を介してＲＯＭ９及びＲＡＭ１０に対してアクセス可能である。第１のＣＰＵ５及び第２のＣＰＵ６は、それぞれバス８を介してＲＯＭ９に対してアクセスすることで、ＲＯＭ９からプログラムを読み出す。割り込み要求レジスタ７は、第１のＣＰＵ５と第２のＣＰＵ６との間で割り込み要求の発生時に使用するレジスタである。ＲＡＭ１０は、出力値、探索結果及び探索終了フラグを記憶する。
【００１０】
第１のＣＰＵ５は、固有のＩＤ（即ち固有の識別情報）を有し、マップ検索処理を開始すると、割り込み要求レジスタ７に割り込みをセットする。第１のＣＰＵ５は、割り込み要求レジスタ７に割り込みをセットすると、ＲＯＭ９に記憶されているプログラムのうち自己のＩＤと一致する領域を特定して実行し、探索処理を開始し、所定の探索アルゴリズムにしたがって入力値が存在する間隔を探索して補間領域を特定する。この場合、第１のＣＰＵ５は、所定の探索アルゴリズムとして例えば昇順降順探索の探索アルゴリズムを採用し、昇順降順探索の探索アルゴリズムにしたがって探索処理を実行する。第１のＣＰＵ５は、探索処理を終了すると、補間処理を開始し、探索処理により特定した補間領域で線形補間計算して出力値を求める。第１のＣＰＵ５は補間処理を終了すると、マップ検索処理を終了する。
【００１１】
第２のＣＰＵ６は、固有のＩＤ（即ち固有の識別情報）を有し、割り込み要求レジスタ７において割り込みのセットを検知すると、マップ検索処理を開始する。第２のＣＰＵ６は、マップ検索処理を開始すると、ＲＯＭ９に記憶されているプログラムのうち自己のＩＤと一致する領域を特定して実行し、探索処理を開始し、所定の探索アルゴリズムにしたがって入力値が存在する間隔を探索して補間領域を特定する。この場合、第２のＣＰＵ６は、所定の探索アルゴリズムとして例えば２分探索の探索アルゴリズムを採用し、２分探索の探索アルゴリズムにしたがって探索処理を実行する。第２のＣＰＵ６は、探索処理を終了すると、補間処理を開始し、探索処理により特定した補間領域で線形補間計算して出力値を求める。第２のＣＰＵ６は、補間処理を終了すると、割り込み要求レジスタ７をクリアして割り込みから復帰し、マップ検索処理を終了する。
【００１２】
電子制御装置１は、バス４を介してセンサ１１を接続しており、センサ１１が検知したセンサ値を特定可能なセンサ信号をバス４を介して入力する。更に、電子制御装置１は、センサ１２を直接接続しており、センサ１２が検知したセンサ値を特定可能なセンサ信号を直接入力する。センサ１１，１２は、例えばアクセルの開度を検知するセンサであり、電子制御装置１は、センサ１１，１２からセンサ信号を入力してアクセルの開度を特定し、エンジンの駆動を制御する。
【００１３】
次に、上記した構成の作用について図２から図９を参照して説明する。ここでは、第１のＣＰＵ５及び第２のＣＰＵ６がそれぞれ実行するマップ検索処理について順次説明する。尚、第１のＣＰＵ５には「０」以外のＩＤが割り当てられており、第２のＣＰＵ６には「０」のＩＤが割り当てられていることを前提として説明する。
【００１４】
（１）第１のＣＰＵ５が実行するマップ検索処理
第１のＣＰＵ５は、マップ検索処理を開始すると、マップ検索を実行中であるか否かを判定する（Ｓ１）。第１のＣＰＵ５は、マップ検索を実行中でないと判定すると（Ｓ１：ＹＥＳ）、割り込み要求レジスタ７に割り込みをセットし（Ｓ２）、自己のＩＤを判定する（Ｓ３）。第１のＣＰＵ５は、自己のＩＤが「０」でないと判定し（Ｓ３：ＮＯ）、昇順降順探索の探索アルゴリズムにしたがう探索処理に移行する（Ｓ４）。
【００１５】
第１のＣＰＵ５は、昇順降順探索の探索処理を開始すると、前回探索値のインデックスｉを読み込み（Ｓ１１）、その読み込んだ前回探索値のインデックスｉを現在探索値のインデックスｉとし、現在探索値のインデックスｉにより現在探索値Ｘｉを特定する（Ｓ１２）。第１のＣＰＵ５は、センサ１１からバス４を介して入力したセンサ信号により特定されるセンサ値、又はセンサ１２から直接入力したセンサ信号により特定されるセンサ値により決定する入力値Ａと、現在探索値Ｘｉとを比較する（Ｓ１３）。
【００１６】
第１のＣＰＵ５は、入力値Ａが現在探索値Ｘｉよりも小さい値であると判定すると（Ｓ１３：ＹＥＳ）、現在探索値のインデックスｉをデクリメントし（Ｓ１４）、入力値Ａとデクリメント後の現在探索値Ｘｉとを比較する（Ｓ１５）。第１のＣＰＵ５は、入力値Ａがデクリメント後の現在探索値Ｘｉよりも小さい値であると判定すると（Ｓ１５：ＹＥＳ）、その時点で探索終了フラグがオンであるか否かを判定する（Ｓ１６）。第１のＣＰＵ５は、探索終了フラグがオンでないと判定すると（Ｓ１６：ＮＯ）、ステップＳ１４に戻り、ステップＳ１４以降を再度実行する。
【００１７】
一方、第１のＣＰＵ５は、入力値Ａがデクリメント後の現在探索値Ｘｉよりも小さい値でない、即ち入力値Ａがデクリメント後の現在探索値Ｘｉと同じ値である、又は入力値Ａがデクリメント後の現在探索値Ｘｉよりも大きい値であると判定すると（Ｓ１５：ＮＯ）、補間領域を特定する。第１のＣＰＵ５は、補間領域を特定すると、その時点で探索終了フラグがオンであるか否かを判定し、探索終了フラグがオンでないと判定すると（Ｓ１７：ＮＯ）、探索終了フラグをオンに設定し（Ｓ１８）、現在探索値のインデックスｉをＲＡＭ１０に格納し（Ｓ１９）、昇順降順探索の探索処理を終了する。尚、第１のＣＰＵ５は、入力値Ａがデクリメント後の現在探索値Ｘｉよりも小さい値であるか否かに拘らず、その時点で探索終了フラグがオンであると判定すると（Ｓ１６：ＹＥＳ、又はＳ１７：ＹＥＳ）、探索終了フラグをオフに設定し（Ｓ２０）、昇順降順探索の探索処理を終了する。
【００１８】
一方、第１のＣＰＵ５は、入力値Ａが現在探索値Ｘｉよりも小さい値でない、即ち入力値Ａが現在探索値Ｘｉと同じ値である、又は入力値Ａが現在探索値Ｘｉよりも大きい値であると判定すると（Ｓ１３：ＮＯ）、現在探索値のインデックスｉをインクリメントし（Ｓ２１）、入力値Ａとインクリメント後の現在探索値Ｘｉとを比較する（Ｓ２２）。第１のＣＰＵ５は、入力値Ａがインクリメント後の現在探索値Ｘｉよりも小さい値でないと判定すると（Ｓ２２：ＮＯ）、その時点で探索終了フラグがオンであるか否かを判定する（Ｓ２３）。第１のＣＰＵ５は、探索終了フラグがオンでないと判定すると（Ｓ２３：ＮＯ）、ステップＳ２１に戻り、ステップＳ２１以降を再度実行する。
【００１９】
一方、第１のＣＰＵ５は、入力値Ａがインクリメント後の現在探索値Ｘｉよりも小さい値であると判定すると（Ｓ２２：ＹＥＳ）、補間領域を特定する。第１のＣＰＵ５は、補間領域を特定すると、その時点で探索終了フラグがオンであるか否かを判定し（Ｓ２４）、探索終了フラグがオンでないと判定すると（Ｓ２４：ＮＯ）、探索終了フラグをオンに設定し（Ｓ２５）、現在探索値のインデックスｉをＲＡＭ１０に格納し（Ｓ２６）、昇順降順探索の探索処理を終了する。尚、第１のＣＰＵ５は、入力値Ａがインクリメント後の現在探索値Ｘｉよりも小さい値であるか否かに拘らず、その時点で探索終了フラグがオンであると判定すると（Ｓ２３：ＹＥＳ、又はＳ２４：ＹＥＳ）、昇順降順探索の探索処理を終了する。
【００２０】
第１のＣＰＵ５は、昇順降順探索の探索処理を終了すると、マップ検索処理に戻り、補間処理に移行する（Ｓ６）。第１のＣＰＵ５は、補間処理を開始すると、以下の計算式により線形補間計算して出力値Ｂを求める（Ｓ５１）。
Ｂ＝（ｆ（Ｘｉ）−ｆ（Ｘｉ−１））＊（（Ａ−Ｘｉ−１）／（Ｘｉ−Ｘｉ−１））
【００２１】
第１のＣＰＵ５は、このようにして出力値Ｂを求めると、その求めた出力値ＢをＲＡＭ１０に格納し（Ｓ５２）、補間処理を終了する。第１のＣＰＵ５は、補間処理を終了すると、マップ検索処理に戻り、マップ検索処理を終了する。
【００２２】
（２）第２のＣＰＵ６が実行するマップ検索処理
第２のＣＰＵ６は、割り込み要求レジスタ７において割り込みのセットを検知すると、マップ検索処理を開始する。第２のＣＰＵ６は、マップ検索処理を開始すると、マップ検索を実行中であるか否かを判定する（Ｓ１）。第２のＣＰＵ６は、マップ検索を実行中であると判定し（Ｓ１：ＹＥＳ）、自己のＩＤを判定する（Ｓ３）。第２のＣＰＵ６は、自己のＩＤが「０」であると判定し（Ｓ３：ＹＥＳ）、２分探索の探索アルゴリズムにしたがう探索処理に移行する（Ｓ５）。
【００２３】
第２のＣＰＵ６は、２分探索の探索処理を開始すると、探索中領域のインデックスの最大値及び最小値を設定する（Ｓ３１）。
ｉｍａｘ＝インデックスの最大値
ｉｍｉｎ＝インデックスの最小値
【００２４】
第２のＣＰＵ６は、前回探索値のインデックスｉを読み込み（Ｓ３２）、その読み込んだ前回探索値のインデックスｉを現在探索値のインデックスｉとし、現在探索値のインデックスｉにより現在探索値Ｘｉを特定する（Ｓ３３）。第２のＣＰＵ６は、センサ１４からバス４を介して入力したセンサ信号により特定されるセンサ値、又はセンサ１５から直接入力したセンサ信号により特定されるセンサ値により決定する入力値Ａと、現在探索値Ｘｉとを比較する（Ｓ３４）。
【００２５】
第２のＣＰＵ６は、入力値Ａが現在探索値Ｘｉよりも小さい値であると判定すると（Ｓ３４：ＹＥＳ）、探索領域を以下の計算式により設定する（Ｓ３５）。
ｉｍａｘ＝ｉ
ｉ＝（ｉｍａｘ＋ｉｍｉｎ）／２（切り上げ）
【００２６】
即ち、第２のＣＰＵ６は、探索中領域の最大値のインデックスｉｍａｘを、現在探索値のインデックスｉに設定し、現在探索値のインデックスｉを、探索中領域の最大値のインデックスｉｍａｘと探索中領域の最小値のインデックスとｉｍｉｎとの中間値へ移動する。
【００２７】
一方、第２のＣＰＵ６は、入力値Ａが現在探索値Ｘｉよりも小さい値でない、即ち入力値Ａが現在探索値Ｘｉと同じ値である、又は入力値Ａが現在探索値Ｘｉよりも大きい値であると判定すると（Ｓ３４：ＮＯ）、探索領域を以下の計算式により設定する（Ｓ３６）。
ｉｍｉｎ＝ｉ
ｉ＝（ｉｍａｘ＋ｉｍｉｎ）／２（切り上げ）
【００２８】
即ち、第２のＣＰＵ６は、探索中領域の最小値のインデックスとｉｍｉｎを、現在探索値のインデックスｉに設定し、現在探索値のインデックスｉを、探索中領域の最大値のインデックスｉｍａｘと探索中領域の最小値のインデックスとｉｍｉｎとの中間値へ移動する。
【００２９】
第２のＣＰＵ６は、探索領域を設定すると、ｉｍｉｎ＋１とｉｍａｘとを比較し、探索中領域の最大値のインデックスと最小値のインデックスとが隣り合ったか否かを判定する（Ｓ３７）。第２のＣＰＵ６は、ｉｍｉｎ＋１とｉｍａｘとが合致していないと判定し、探索中領域の最大値のインデックスと最小値のインデックスとが隣り合っていないと判定すると（Ｓ３７：ＮＯ）、その時点で探索終了フラグがオンであるか否かを判定する（Ｓ３８）。第２のＣＰＵ６は、探索終了フラグがオンでないと判定すると（Ｓ３８：ＮＯ）、ステップＳ３４に戻り、ステップＳ３４以降を再度実行する。
【００３０】
一方、第２のＣＰＵ６は、ｉｍｉｎ＋１とｉｍａｘとが合致したと判定し、探索中領域の最大値のインデックスと最小値のインデックスとが隣り合ったと判定すると（Ｓ３７：ＹＥＳ）、補間領域を特定する。第２のＣＰＵ６は、補間領域を特定すると、その時点で探索終了フラグがオンであるか否かを判定し（Ｓ３９）、探索終了フラグがオンでないと判定すると（Ｓ３９：ＮＯ）、探索終了フラグをオンに設定し（Ｓ４０）、現在探索値のインデックスｉをＲＡＭ１０に格納し（Ｓ４１）、２分探索の探索処理を終了する。尚、第２のＣＰＵ６は、ｉｍｉｎ＋１とｉｍａｘとが合致したか否かに拘らず、その時点で探索終了フラグがオンであると判定すると（Ｓ３８：ＹＥＳ、又はＳ３９：ＹＥＳ）、探索終了フラグをオフに設定し（Ｓ４２）、２分探索の探索処理を終了する。
【００３１】
第２のＣＰＵ６は、２分探索の探索処理を終了すると、マップ検索処理に戻り、補間処理に移行する（Ｓ６）。第２のＣＰＵ６は、補間処理を開始すると、以下の計算式により線形補間計算して出力値Ｂを求める（Ｓ５１）。
Ｂ＝（ｆ（Ｘｉ）−ｆ（Ｘｉ−１））＊（（Ａ−Ｘｉ−１）／（Ｘｉ−Ｘｉ−１））
【００３２】
第２のＣＰＵ６は、このようにして出力値Ｂを求めると、出力値ＢをＲＡＭ１０に格納し（Ｓ５２）、補間処理を終了する。第２のＣＰＵ６は、補間処理を終了すると、マップ検索処理に戻り、マップ検索処理を終了する。
【００３３】
以下、具体例を説明する。図７から図９に示すように、第１のＣＰＵ５が昇順降順探索の探索アルゴリズムにしたがって探索処理を実行し、第２のＣＰＵ６が２分探索の探索アルゴリズムにしたがって探索処理を実行する場合、入力値Ａが「４５」であり、前回探索値のインデックスｉが「１３」であると、第１のＣＰＵ５及び第２のＣＰＵ６はそれぞれ以下に示す探索処理を実行する。
【００３４】
第１のＣＰＵ５は、昇順降順探索の探索処理を開始すると、割り込み要求レジスタ７に割り込みをセットし、前回探索値のインデックスｉである「１３」を読み込み、現在探索値Ｘｉを「１３０」と特定する。第１のＣＰＵ５は、１回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「１３０」とを比較し、これ以降、２回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「１２０」とを比較し、３回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「１１０」とを比較し、４回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「１００」とを比較し、５回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「９０」とを比較し、６回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「８０」とを比較する。第１のＣＰＵ５は、２回目以降の比較では、入力値Ａと現在探索値Ｘｉとを比較する毎に探索終了フラグを判定する。
【００３５】
第２のＣＰＵ６は、割り込み要求レジスタ７において割り込みのセットを検知すると、２分探索の探索処理を開始し、前回探索値のインデックスｉである「１３」を読み込み、現在探索値Ｘｉを「１３０」と特定する。第２のＣＰＵ６は、１回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「１３０」とを比較し、これ以降、２回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「７０」とを比較し、３回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「４０」とを比較し、４回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「６０」とを比較し、５回目の比較で入力値Ａである「４５」と現在探索値Ｘｉである「５０」とを比較する。第２のＣＰＵ６も、２回目以降の比較では、入力値Ａと現在探索値Ｘｉとを比較する毎に探索終了フラグを判定する。
【００３６】
このように前回探索値のインデックスｉである「１３」を読み込んだ例示では、第２のＣＰＵ６は、５回目の比較で第１のＣＰＵ５よりも先に補間領域を特定し、探索終了フラグをオンに設定し、現在探索値のインデックスｉをＲＡＭ１０に格納し、２分探索の探索処理を終了する。そして、第２のＣＰＵ６は、補間処理を開始し、線形補間計算して出力値Ｂを求め、その求めた出力値ＢをＲＡＭ１０に格納し、補間処理を終了する。第１のＣＰＵ５は、探索終了フラグがオンであると判定すると、第２のＣＰＵ６が先に補間領域を特定したと判定し、探索終了フラグをオフに設定し、昇順降順探索の探索処理を終了する。
【００３７】
以上は、第２のＣＰＵ６が第１のＣＰＵ５よりも先に補間領域を特定した場合を説明したが、第１のＣＰＵ５が第２のＣＰＵ６よりも先に補間領域を特定した場合は逆になる。即ち、第１のＣＰＵ５は、第２のＣＰＵ６よりも先に補間領域を特定すると、探索終了フラグをオンに設定し、現在探索値のインデックスｉをＲＡＭ１０に格納し、昇順降順探索の探索処理を終了する。そして、第１のＣＰＵ５は、補間処理を開始し、線形補間計算して出力値Ｂを求め、その求めた出力値ＢをＲＡＭ１０に格納し、補間処理を終了する。第２のＣＰＵ６は、探索終了フラグがオンであると判定すると、第１のＣＰＵ５が先に補間領域を特定したと判定し、探索終了フラグをオフに設定し、２分探索の探索処理を終了する。このように第１のＣＰＵ５及び第２のＣＰＵ６は、先に補間領域を特定した方が探索終了フラグをオンに設定することで、両者が補間領域をほぼ同時に特定した場合でも必ずどちらか探索終了フラグをオフに設定する。即ち、第１のＣＰＵ５及び第２のＣＰＵ６は、それぞれ探索終了フラグを排他制御で判定し、補間領域を完全に同時に特定した場合でも、必ずどちらか一方を優先し、他方が探索終了フラグをオフに設定する。
【００３８】
以上に説明したように本実施形態によれば、次に示す効果を得ることができる。
電子制御装置１のマイコン２において、第１のＣＰＵ５及び第２のＣＰＵ６が共通の探索開始点から互いに異なる探索アルゴリズムにしたがって探索処理を実行し、第１のＣＰＵ５が昇順降順探索の探索アルゴリズムにしたがって探索処理を実行し、第２のＣＰＵ６が２分探索の探索アルゴリズムにしたがって探索処理を実行するようにした。これにより、入力となるパラメータの定常時で探索時間を短縮するのに優位な昇順降順探索の探索アルゴリズムと、入力となるパラメータの急変時で探索時間を短縮するのに優位な２分探索の探索アルゴリズムとを併用することで、入力となるパラメータの定常時での処理時間の短縮と急変時での処理時間の短縮とを両立することができる。
【００３９】
即ち、マイコン２に複数のＣＰＵ５，６を搭載する構成では、ＣＰＵ単体での処理時間を短縮させるのにある程度の限界があるが、複数のＣＰＵ５，６が探索処理を共通の探索開始点から別々の探索アルゴリズムにしたがって並列して実行することで、マイコン全体としての処理時間を短縮することができる。
【００４０】
又、マイコン２において、前回制御サイクルで求めた補間領域を前回補間領域とし、その前回補間領域を探索開始点として探索処理を実行するようにした。これにより、入力となる自動車制御のパラメータが準定常的な値である場合が多く、前回制御サイクルの補間領域が現行制御サイクルの補間領域に近接すると見做すことで、探索時間をより短縮することができ、入力となるパラメータの定常時での処理時間を短縮することができる。
【００４１】
又、マイコン２において、第１のＣＰＵ５及び第２のＣＰＵ６がそれぞれ探索処理の終了状態を示す探索終了フラグをＲＡＭ１０に設定することで、探索処理の終了を同期するようにした。これにより、第１のＣＰＵ５及び第２のＣＰＵ６がそれぞれ相手の探索処理の終了状態を示すフラグを保持する必要がなく、ＲＡＭ１０を参照することで、探索処理の終了を同期することができる。
【００４２】
又、マイコン２において、第１のＣＰＵ５及び第２のＣＰＵ６がそれぞれ固有のＩＤを有し、共通のプログラムのうち自己のＩＤと一致する領域を特定して実行し、探索処理を実行するようにした。これにより、第１のＣＰＵ５がＲＯＭ９から読み込むプログラムと第２のＣＰＵ６がＲＯＭ９から読み込むプログラムとを共通化することができる。
【００４３】
又、マイコン２において、第１のＣＰＵ５が探索処理を開始すると割り込みをセットし、第２のＣＰＵ６が割り込みのセットを検知すると探索処理を開始するようにした。これにより、第１のＣＰＵ５と第２のＣＰＵ６との間で周知の割り込みの技術を適用することで、探索処理の開始を制御することができる。
【００４４】
本開示は、実施例に準拠して記述されたが、当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、更には、それらに一要素のみ、それ以上、或いはそれ以下を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
【００４５】
エンジンの駆動を制御する電子制御装置に限らず、他の車両制御を行う電子制御装置に適用しても良い。
第１のＣＰＵ５が昇順降順探索の探索アルゴリズムにしたがって探索処理を実行し、第２のＣＰＵ６が２分探索の探索アルゴリズムにしたがって探索処理を実行する場合を例示したが、これとは反対に、第１のＣＰＵ５が２分探索の探索アルゴリズムにしたがって探索処理を実行し、第２のＣＰＵ６が昇順降順探索の探索アルゴリズムにしたがって探索処理を実行しても良い。又、昇順降順探索の探索アルゴリズム及び２分探索の探索アルゴリズとは別の探索アルゴリズムを採用しても良い。
マイコン２に３つ以上のＣＰＵを設け、それぞれのＣＰＵが３つ以上の別々の探索アルゴリズムにしたがって探索処理を実行する構成としても良い。
【符号の説明】
【００４６】
図面中、１は電子制御装置、５は第１のＣＰＵ（演算部）、６は第２のＣＰＵ（演算部）、１０はＲＡＭ（記憶部）である。
【図１】
2018124633.tif 000003
【図２】
2018124633.tif 000004
【図３】
2018124633.tif 000005
【図４】
2018124633.tif 000006
【図５】
2018124633.tif 000007
【図６】
2018124633.tif 000008
【図７】
2018124633.tif 000009
【図８】
2018124633.tif 000010
【図９】
2018124633.tif 000011