(57)【要約】【課題】複数の記憶領域に格納された同一のデータの中からの使用データの選択をより簡易に行うことのできる電子制御装置を提供する。【解決手段】クリティカルエリア１２１及びバックアップエリア１２２には、同一のデータが格納されている。クリティカルエリア１２１のデータの異常が検出されたとき、バックアップエリア１２２のデータがエミュレーションＲＡＭエリア１３１にコピーされる。そして、中央処理装置１１０によるクリティカルエリア１２１へのアクセス動作に応じてエミュレーションＲＡＭエリア１３１の対応する箇所にアクセスするようＲＡＭエミュレーション装置１４１の設定がなされる。【選択図】        図１
2004287750.tif 000002
【特許請求の範囲】
【請求項１】
中央処理装置による各種演算及び制御に用いる同一のデータを複数の記憶領域に格納する記憶装置を備える電子制御装置において、
前記記憶装置へのアクセス動作をエミュレーションするためのエミュレーションＲＡＭと、前記中央処理装置による前記記憶装置へのアクセス動作に応じて該記憶装置にアクセスするか前記エミュレーションＲＡＭの対応する箇所にアクセスするかを切り替える機能を有するエミュレーション装置とを備え、
前記記憶装置の所定の記憶領域のデータの異常が検出されたとき、該所定の記憶領域に格納されたデータと同一のデータを格納する記憶領域のデータを前記エミュレーションＲＡＭにコピーするとともに、前記中央処理装置による前記記憶装置へのアクセス動作に応じて前記エミュレーションＲＡＭの対応する箇所にアクセスされるように前記エミュレーション装置のアクセス態様を切り替える
ことを特徴とする電子制御装置。
【請求項２】
前記複数の記憶領域に格納される同一のデータは、当該データの記憶される記憶領域のデータの異常が検出されていないときに前記記憶装置から前記中央処理装置へ直接取り込まれる正常時用データと、前記異常が検出されるときに前記エミュレーションＲＡＭにコピーされる異常時用データとの２つからなる
請求項１記載の電子制御装置。
【請求項３】
中央処理装置による各種演算及び制御に用いる同一のデータを複数の記憶領域に格納する記憶装置を備える電子制御装置において、
前記複数の記憶領域に格納されるデータのうちの所定の記憶領域に格納されるデータがコピーされるエミュレーションＲＡＭと、前記中央処理装置による前記記憶装置へのアクセス動作に応じて該記憶装置にアクセスするか前記エミュレーションＲＡＭの対応する箇所にアクセスするかを切り替える機能を有するエミュレーション装置とを備え、
前記複数の記憶領域に格納されるデータのうち、前記所定の記憶領域以外の記憶領域に格納されたデータの異常が検出されたとき、前記中央処理装置による前記記憶装置へのアクセス動作に応じて前記エミュレーションＲＡＭの対応する箇所にアクセスされるように前記エミュレーション装置のアクセス態様を切り替える
ことを特徴とする電子制御装置。
【請求項４】
前記複数の記憶領域に格納されるデータは、前記記憶装置に格納されるデータのうち、当該電子制御装置の制御対象の制御にとって必要とされる所定の条件を満たすデータである
請求項１〜３のいずれかに記載の電子制御装置。
【請求項５】
前記複数の記憶領域に格納されるデータは、所定のスケジューリングに基づき実行される複数種のプログラムを含むとともに、前記スケジューリングに基づき分割されたプログラムに基づくグループ分けがなされており、且つ前記エミュレーションＲＡＭへのデータのコピーは、このグループ分けのなされたデータの単位で行われる
請求項１〜４のいずれかに記載の電子制御装置。
【請求項６】
前記グループ分けは、前記プログラムのそれぞれの処理周期に基づき行われる
請求項５記載の電子制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、中央処理装置による各種演算及び制御に用いる同一のデータを複数の記憶領域に格納する記憶装置を備える電子制御装置に関する。
【０００２】
【従来の技術】
例えば車両の運転等を制御する電子制御装置にあっては、通常、制御対象を制御するための各種プログラムや値などからなるデータを格納する読み出し専用メモリ（ＲＯＭ）と、該データを用いて各種演算及び制御を実行する中央処理装置とを備えている。また、こうした電子制御装置にあっては、上記ＲＯＭに格納されているデータに異常が検出されたときのために、同一のデータを上記ＲＯＭの複数の記憶領域に格納するものも提案されている。
【０００３】
すなわち、図７に例示する関数Ａ１と関数Ａ２のように、同一の内容のデータを名前を変えてＲＯＭ２００内の各領域（領域１、領域２）に格納しておく。そして、中央処理装置２１０内で実行されるプログラム処理（図中、関数Ａ用インターフェース部として例示）により、上記異常が検出されるときには、ＲＯＭ２００内のデータにアクセスするに際し、正常なデータが格納された領域にアクセスするようにそのアクセス領域を切り替える。すなわち、通常時には、領域１に格納されている関数Ａ１にアクセスする。一方、同領域１のデータに異常が検出されると、領域２の関数Ａ２にアクセスする。
【０００４】
図８に、上記関数Ａ用インターフェースでの処理について例示する。図８に示すように、この一連の処理においては、まずステップＳ４０で上記関数Ａに関するデータの異常の有無が検出される。そして、このステップＳ４０において異常が検出されないと、ステップＳ４１において関数Ａ１を呼び出し、この一連の処理を一旦終了する。これに対し、上記ステップＳ４０において異常が検出されるときには、ステップＳ４２において関数Ａ２を呼び出し、この一連の処理を一旦終了する。
【０００５】
【発明が解決しようとする課題】
ところで、上記のように中央処理装置２１０で実行されるプログラム処理（インターフェース部）によりＲＯＭ２００に格納されるデータの異常に対処する場合、ＲＯＭ２００内に格納される各データのそれぞれに対して各別のインターフェース部が必要となる。したがって、このインターフェース部を記述するプログラムの数が膨大となり、これらプログラムを記憶するＲＯＭ内の領域も膨大なものとなる。また、同一データが複数の記憶領域に格納されているものについては、これら各データが呼び出される度に、先の図８に例示したようなアクセス領域の切り替えのための判別処理を経るために、処理時間が増大する。更に、これら各データ毎にインターフェース部を作成するために、その開発工数も増加する。
【０００６】
本発明は、こうした実情に鑑みてなされたものであり、その目的は、複数の記憶領域に格納された同一のデータの中からの使用データの選択をより簡易に行うことのできる電子制御装置を提供することにある。
【０００７】
【課題を解決するための手段】
こうした目的を達成すべく、請求項１記載の電子制御装置では、前記記憶装置へのアクセス動作をエミュレーションするためのエミュレーションＲＡＭと、前記中央処理装置による前記記憶装置へのアクセス動作に応じて該記憶装置にアクセスするか前記エミュレーションＲＡＭの対応する箇所にアクセスするかを切り替える機能を有するエミュレーション装置とを備え、前記記憶装置の所定の記憶領域のデータの異常が検出されたとき、該所定の記憶領域に格納されたデータと同一のデータを格納する記憶領域のデータを前記エミュレーションＲＡＭにコピーするとともに、前記中央処理装置による前記記憶装置へのアクセス動作に応じて前記エミュレーションＲＡＭの対応する箇所にアクセスされるように前記エミュレーション装置のアクセス態様を切り替える。
【０００８】
上記構成によれば、記憶装置の所定の記憶領域のデータの異常が検出されたとき、中央処理装置による記憶装置へのアクセス動作に応じてエミュレーションＲＡＭの対応する箇所がアクセスされる。このように、中央処理装置では記憶装置へのアクセス動作を行えばよいため、複数の記憶領域に格納された同一のデータのそれぞれの異常の有無に応じて、それぞれの呼び出しをソフトウェア処理にて行うことを回避することができる。
【０００９】
したがって、複数の記憶領域に格納された同一のデータの中からの使用データの選択をより簡易に行うことができるようになる。
特に、このエミュレーション装置は、電子制御装置の試作時に用いられるものであるとはいえ、量産時においても搭載されることが多いため、上記処理に伴って新たにハードウェア手段を開発、追加することもない。
【００１０】
なお、上記構成において、中央処理装置内で実行されるプログラム数を低減させるためには、上記所定の記憶領域に格納されるデータの数が多いほどよく、特に複数であることが望ましい。
【００１１】
また、請求項２記載の電子制御装置では、前記複数の記憶領域に格納される同一のデータを、当該データの記憶される記憶領域のデータの異常が検出されていないときに前記記憶装置から前記中央処理装置へ直接取り込まれる正常時用データと、前記異常が検出されるときに前記エミュレーションＲＡＭにコピーされる異常時用データとの２つから構成した。
【００１２】
上記構成では、基本的には、正常時用データが記憶装置から中央処理装置に直接取り込まれる。そして、異常が検出されたときのみエミュレーションＲＡＭに異常時用データがコピーされてこれが用いられる。このため、中央処理装置で行われる処理をいっそう簡易化することができる。
【００１３】
また、複数の記憶領域に格納される同一のデータは、正常時用データ及び異常時用データの２つのみのため、記憶装置に格納されるデータ量の増大を抑制することもできる。
【００１４】
また、請求項３記載の電子制御装置では、前記複数の記憶領域に格納されるデータのうちの所定の記憶領域に格納されるデータがコピーされるエミュレーションＲＡＭと、前記中央処理装置による前記記憶装置へのアクセス動作に応じて該記憶装置にアクセスするか前記エミュレーションＲＡＭの対応する箇所にアクセスするかを切り替える機能を有するエミュレーション装置とを備え、前記複数の記憶領域に格納されるデータのうち、前記所定の記憶領域以外の記憶領域に格納されたデータの異常が検出されたとき、前記中央処理装置による前記記憶装置へのアクセス動作に応じて前記エミュレーションＲＡＭの対応する箇所にアクセスされるように前記エミュレーション装置のアクセス態様を切り替える。
【００１５】
上記構成によれば、記憶装置の所定の記憶領域のデータの異常が検出されたとき、中央処理装置による記憶装置へのアクセス動作に応じてエミュレーションＲＡＭの対応する箇所がアクセスされる。このように、中央処理装置では記憶装置へのアクセス動作を行えばよいため、複数の記憶領域に格納された同一のデータのそれぞれの異常の有無に応じて、それぞれの呼び出しをソフトウェア処理にて行うことを回避することができる。
【００１６】
したがって、複数の記憶領域に格納された同一のデータの中からの使用データの選択をより簡易に行うことができるようになる。
特に、このエミュレーション装置は、電子制御装置の試作時に用いられるものであるとはいえ、量産時においても搭載されることが多いため、上記処理に伴って新たにハードウェア手段を開発、追加することもない。
【００１７】
なお、上記構成において、中央処理装置内で実行されるプログラム数を低減させるためには、上記所定の記憶領域に格納されるデータの数が多いほどよく、特に複数であることが望ましい。
【００１８】
また、請求項４記載の電子制御装置では、前記複数の記憶領域に格納されるデータを、前記記憶装置に格納されるデータのうち、当該電子制御装置の制御対象の制御にとって必要とされる所定の条件を満たすデータとした。
【００１９】
上記構成では、複数の記憶領域に格納されるデータを、当該電子制御装置の制御対象の制御にとって必要とされる所定の条件を満たすデータに限ることで、記憶装置に格納されるデータ量の増大を抑制することができる。
【００２０】
また、請求項５記載の電子制御装置では、前記複数の記憶領域に格納されるデータに、所定のスケジューリングに基づき実行される複数種のプログラムを含めるとともに、前記スケジューリングに基づき分割されたプログラムに基づくグループ分けをし、且つ前記エミュレーションＲＡＭへのデータのコピーを、このグループ分けのなされたデータの単位で行った。
【００２１】
上記構成では、スケジューリングに基づきグループ分けされたデータを単位としてエミュレーションＲＡＭへのコピーを行うために、このグループ分けの異なるデータ同士の中央処理装置による処理順序を明確に規定することができる。換言すれば、グループ分けの異なるデータ同士間で中央処理装置による処理順序が交錯することを回避することができる。したがって、これら各グループ分けのなされたデータ間でエミュレーションＲＡＭ領域を共有することができるため、エミュレーションＲＡＭ領域を低減することができる。
【００２２】
なお、請求項５記載の電子制御装置は、請求項６記載の電子制御装置によるように、前記グループ分けは、前記プログラムのそれぞれの処理周期に基づき行われるようにしてもよい。
【００２３】
これにより、適切なグループ分けを行うことができるようになる。
【００２４】
【発明の実施の形態】
（第１の実施形態）
以下、本発明にかかる電子制御装置を車載エンジンの運転を制御する電子制御装置に適用した第１の実施形態について図面を参照しつつ説明する。
【００２５】
図１に、本実施形態にかかる電子制御装置の全体構成を示す。
同図１に示されるように、電子制御装置は、外部からの信号を取り込み所定の演算及び制御を行うマイクロコンピュータ１００と、該マイクロコンピュータ１００の出力信号を所定に変換する出力ドライブ装置２００とを備えている。
【００２６】
そして、マイクロコンピュータ１００には、上記車載エンジンの制御にかかる各種演算及び制御を行う中央処理装置１１０と、読み出し専用メモリ（ＲＯＭ）１２０と、ランダムアクセスメモリ（ＲＡＭ）１３０とを備えている。そして、これら中央処理装置１１０とＲＯＭ１２０及びＲＡＭ１３０との間の信号の授受は、バスコントローラ１４０によって制御される。
【００２７】
ここで、上記ＲＯＭ１２０は、車載エンジンの制御に際し、中央処理装置１１０において用いられる制御プログラムやマップデータ等、各種データを格納する。そして、同ＲＯＭ１２０は、クリティカルエリア１２１、バックアップエリア１２２、非クリティカルエリア１２３等、いくつかの記憶領域に分割されている。
【００２８】
上記クリティカルエリア１２１は、例えば電子スロットルバルブ開度のフィードバック制御等、車載エンジンの制御にとって必要とされる所定の条件を満たすデータを格納する領域である。換言すれば、同データ無しでは車載エンジンの運転の制御の継続が困難となるクリティカルなデータを格納する領域である。
【００２９】
また、バックアップエリア１２２は、上記クリティカルエリア１２１のデータと同一の内容を有するデータを格納する領域である。更に、非クリティカルエリア１２３は、車載エンジンの制御に用いる各種データのうち、上記クリティカルエリア１２１に格納されないデータを格納する領域である。
【００３０】
一方、上記ＲＡＭ１３０は、記憶領域として、上記バックアップエリア１２２に格納されているデータを記憶するエミュレーションＲＡＭエリア１３１と、中央処理装置１１０にて演算される各種データを一旦記憶する非エミュレーションエリア１３２とを備えている。
【００３１】
また、バスコントローラ１４０は、上記ＲＯＭ１２０のエミュレーションを行うＲＡＭエミュレーション装置１４１を備えている。このＲＡＭエミュレーション装置１４１は、アクセス対象をＲＯＭ１２０とするかＲＡＭ１３０とするかを切り替える切替部１４１ａと、上記中央処理装置１１０からの切替部１４１ａの切り替えの指示値を格納するＲＡＭエミュレーションレジスタ１４１ｂとを備えている。
【００３２】
このＲＡＭエミュレーション装置１４１は、例えば当該電子制御装置の設計段階において、ＲＯＭ１２０に格納されるデータの微調整を行うために用いられるハードウェア手段である。すなわち、ＲＯＭ１２０に格納されているデータは読み出し専用であるが、設計段階には、同データの微調整が望まれる。そこで、こうした微調整のなされるデータをＲＡＭ１３０内のエミュレーションＲＡＭエリア１３１に格納する。そして、ＲＡＭエミュレーション装置１４１では、中央処理装置１１０からＲＯＭ１２０内の所定のデータへのアクセス動作に応じてエミュレーションＲＡＭエリア１３１の対応するデータにアクセスする。これにより、中央処理装置１１０がＲＯＭ１２０に格納されている読み出し専用のデータにアクセスしているにもかかわらず、実際には、エミュレーションＲＡＭエリア１３１内の微調整のなされたデータにアクセスされることとなる。このため、エミュレーションＲＡＭエリア１３１に格納されたデータをリアルタイムで書き換えつつ微調整を行うことができる。なお、このＲＡＭエミュレーション装置１４１は、微調整の終了したデータを格納するＲＯＭ１２０を備える量産時の電子制御装置にも搭載される。
【００３３】
このＲＡＭエミュレーション装置１４１は、こうした用途に加えて、本実施形態では、ＲＯＭ１２０に格納されているデータに異常が検出されたときに、同ＲＯＭ１２０のエミュレーションを行う機能も有する。すなわち、同ＲＯＭ１２０のうちクリティカルエリア１２１のデータに異常が検出されたとき、中央処理装置１１０により、上記バックアップエリア１２２のデータがＲＡＭ１３０内のエミュレーションＲＡＭエリア１３１にコピーされる。そして、中央処理装置１１０によるクリティカルエリア１２１の所定の関数や値へのアクセス動作に応じて、エミュレーションＲＡＭエリア１３１の対応する関数や値にアクセスするようにＲＡＭエミュレーション装置１４１の設定がなされる。
【００３４】
ここで、上記ＲＯＭ１２０の異常検出、及び異常が検出されたときの処理について説明する。
図２は、上記処理の手順を示すフローチャートである。この処理は、上記ＲＯＭ１２０に格納されているプログラムによって記述され、上記中央処理装置１１０により実行される。また、この処理は、例えば所定周期で繰り返し実行される。
【００３５】
この一連の処理においては、まずステップＳ１において、上記クリティカルエリア１２１に格納されているデータの異常の有無を検出する。この異常の検出は、基本的には、クリティカルエリア１２１にはじめに書き込まれたデータと現在のデータとの不一致を検出するものである。これは、例えばクリティカルエリア１２１に格納されるデータを単位として誤り検出符号（パリティ）を付与しておくことで行うことができる。
【００３６】
そして、ステップＳ１において異常が検出されないと、ステップＳ２に移行する。ステップＳ２においては、非クリティカルエリア１２３に格納されているデータの異常の有無が検出される。この非クリティカルエリア１２３に格納されているデータの異常の有無の検出も、例えば上記クリティカルエリア１２１に格納されているデータの異常の有無の検出と同様に行うことができる。そして、ステップＳ２において異常が検出されないと、この一連の処理を一旦終了する。
【００３７】
これに対し、ステップＳ２において、異常が検出されるときには、ステップＳ３において適宜フェールセーフを実行する。例えば非クリティカルエリア１２３に補正係数演算プログラムが格納されている場合、フェールセーフ処理として、この補正係数演算プログラムの実行を停止するとともに、補正値が要求されたとき、フェールセーフ用の固定値を同補正値として代入する処理を行う。こうしたフェールセーフ処理がなされると、この一連の処理を一旦終了する。
【００３８】
一方、ステップＳ１において上記クリティカルエリア１２１に格納されているデータに異常が検出されると、ステップＳ４に移行する。このステップＳ４においては、上記バックアップエリア１２２に格納されているデータの異常の有無を検出する。そしてステップＳ４においてバックアップエリア１２２に格納されているデータに異常が検出されないと、ステップＳ５に移行する。このバックアップエリア１２２に格納されているデータの異常の有無の検出も、例えば上記クリティカルエリア１２１に格納されているデータの異常の有無の検出と同様に行うことができる。
【００３９】
このステップＳ５においては、上記バックアップエリア１２２のデータを上記エミュレーションＲＡＭエリア１３１にコピーする。更にステップＳ６においては、上記ＲＡＭエミュレーションレジスタ１４１ｂに、エミュレーション実行指示値を設定する。これにより、上記切替部１４１ａでは、中央処理装置１１０によるクリティカルエリア１２１へのアクセス動作に応じたアクセス対象を、クリティカルエリア１２１からエミュレーションＲＡＭエリア１３１に切り替える。ちなみに、先の図１には、ＲＡＭエミュレーションレジスタ１４１ｂにクリティカルエリアのエミュレーション実行指示値が設定され、上記アクセス対象がエミュレーションＲＡＭエリア１３１に切り替えられている状態が示されている。そして、ステップＳ６の処理がなされると、この一連の処理を一旦終了する。
【００４０】
これに対し、ステップＳ４においてバックアップエリア１２２に異常が検出されると、ステップＳ７に移行する。このステップＳ７においては、フェールセーフ処理を行う。ここでのフェールセーフ処理としては、例えば中央処理装置１１０で行われる全ての処理を一旦リセットする処理や、退避走行モードとする処理、警告ランプを点灯する処理等がある。
【００４１】
以上詳述した本実施形態によれば、以下の効果が得られるようになる。
（１）クリティカルエリア１２１のデータの異常が検出されたとき、中央処理装置１１０による同クリティカルエリア１２１へのアクセス動作に応じてエミュレーションＲＡＭエリア１３１の対応する箇所にアクセスするようにした。これにより、クリティカルエリア１２１及びバックアップエリア１２２のデータの選択を簡易な処理によって行うことができるようになる。
【００４２】
（２）クリティカルエリア１２１及びバックアップエリア１２２の双方に格納されるデータを、車載エンジンの運転の制御にとって必要とされる所定の条件を満たすデータに限ることで、ＲＯＭ１２０に格納されるデータ量の増大を抑制することができる。
【００４３】
（第２の実施形態）
次に、本発明にかかる電子制御装置の第２の実施形態について、上記第１の実施形態との相違点を中心に図面を参照しつつ説明する。
【００４４】
上記第１の実施形態では、クリティカルエリア１２１に格納されているデータに異常が検出されると、同クリティカルエリア１２１内のデータをエミュレーションＲＡＭエリア１３１に一括してコピーした。
【００４５】
これに対し、本実施形態では、複数の記憶領域に格納されるデータを、スケジューリングに基づき分割されたプログラムに基づくデータの単位としてグループ分けする。すなわち、スケジューリングに基づき分割されたプログラムと該プログラムによって用いられる関数や値等とを含むデータを単位としてグループ分けする。そして、エミュレーションＲＡＭにコピーする処理は、このグループ分けのなされたデータの単位で行うようにする。
【００４６】
図３に、本実施形態にかかる電子制御装置の全体構成を示す。同図３において、先の図１と同一の機能を有する部材については、便宜上同一の符号を付した。
図３に示す電子制御装置にあっては、ＲＯＭ１２０の記憶領域として、第１のクリティカルエリア１２４及び第２のクリティカルエリア１２５と、これらに記憶されるデータと同一のデータをそれぞれ格納する第１のバックアップエリア１２６及び第２のバックアップエリア１２７とを有している。
【００４７】
ここで、第１のクリティカルエリア１２４及び第２のクリティカルエリア１２５は、先の図１に示したクリティカルエリア１２１同様、いずれも車載エンジンの制御にとって必要とされる所定の条件を満たすデータを格納する領域である。しかし、これらは、例えば、第１のクリティカルエリア１２４は処理周期「α」のプログラム、第２のクリティカルエリア１２５は処理周期「β（＞α）」のプログラムというように互いに異なる処理周期のプログラムを記憶する記憶領域となっている。そして、第１のクリティカルエリア１２４と第２のクリティカルエリア１２５とは、いずれも同一の処理周期を有するプログラムと同プログラムによって用いられるマップデータ等のデータとを記憶する記憶領域となっている。
【００４８】
ここで、第１のクリティカルエリア１２４のデータの異常検出、及び異常が検出されたときの処理について説明する。
図４は、上記処理手順を示すフローチャートである。この処理は、上記ＲＯＭ１２０に格納されているプログラムによって記述され上記中央処理装置１１０により実行される。また、この処理は、上記第１のクリティカルエリア１２４内のプログラムの周期と同様、所定周期「α」で繰り返し実行される。
【００４９】
この一連の処理においては、ステップＳ１０において、上記第１のクリティカルエリア１２４のデータの異常の有無を検出する。この異常の有無の検出は、例えば、先の図２のステップＳ１と同様の処理により行うことができる。
【００５０】
そして、このステップＳ１０において第１のクリティカルエリア１２４のデータの異常が検出されると、ステップＳ１１に移行する。このステップＳ１１においては、上記第１のバックアップエリア１２６のデータの異常の有無を検出する。この異常の有無の検出は、例えば、先の図２のステップＳ１と同様の処理により行うことができる。
【００５１】
そして、ステップＳ１１において、第１のバックアップエリア１２６のデータに異常が検出されないときには、ステップＳ１２、Ｓ１３において、先の図２に示したステップＳ５、Ｓ６と同様の処理を行う。また、ステップＳ１１において、データに異常が検出されたときには、ステップＳ１４において、先の図２に示したステップＳ７と同様の処理を行い、この一連の処理を一旦終了する。
【００５２】
なお、ステップＳ１０において、第１のクリティカルエリア１２４のデータに異常が検出されないときや、ステップＳ１３の処理が終了したときには、この一連の処理を一旦終了する。そして、これに引き続いて、第１のクリティカルエリア１２４又はエミュレーションＲＡＭエリア１３３に格納されるプログラムが実行されることとなる。
【００５３】
すなわち、図４に示す処理は、処理周期「α」毎に起動されるプログラムとしての第１のクリティカルエリア１２４や第１のバックアップエリア１２６に格納されているプログラムの実行に際してはじめに行われるように設定されている。
【００５４】
次に、第２のクリティカルエリア１２５のデータの異常検出、及び異常が検出されたときの処理について説明する。
図５は、上記処理手順を示すフローチャートである。この処理は、上記ＲＯＭ１２０に格納されているプログラムによって記述され上記中央処理装置１１０により実行される。また、この処理は、上記第２のクリティカルエリア１２５内のプログラムの周期と同様、所定周期「β」で繰り返し実行される。
【００５５】
同図５のステップＳ２０〜Ｓ２４の処理は、先の図４に示した一連の処理において、第１のクリティカルエリア１２４の代わりに第２のクリティカルエリア１２５とし、第１のバックアップエリア１２６の代わりに第２のバックアップエリア１２７とすること以外は、同図４の処理と同様である。
【００５６】
そして、この図５に示す一連の処理が終了すると、これに引き続いて、第２のクリティカルエリア１２５又はエミュレーションＲＡＭエリア１３３に格納されるプログラムが実行されることとなる。
【００５７】
すなわち、図５に示す処理は、処理周期「β」毎に起動されるプログラムとしての第２のクリティカルエリア１２５や第２のバックアップエリア１２７に格納されているプログラムの実行に際してはじめに行われるように設定されている。
【００５８】
なお、この図５に示す処理をはじめとする処理周期「β」の処理と図４に示す処理をはじめとする処理周期「α」の処理とは、互いに処理順序が交錯しないように優先順位が設定されている。すなわち、例えば処理周期「β」の処理は、処理周期「α」の処理が全て終了した後に行われるようにスケジューリングされている。
【００５９】
ちなみに、ＲＯＭ１２０内に単一のデータしか記憶されていない非クリティカルエリア１２８のデータについては、図６に示すように、その異常検出、及び該異常が検出されたときの処理が行われる。
【００６０】
図６は、上記処理手順を示すフローチャートである。この処理は、上記ＲＯＭ１２０に格納されているプログラムによって記述され上記中央処理装置１１０により実行される。また、この処理は、例えば所定周期で繰り返し実行される。
【００６１】
この一連の処理においては、まずステップＳ３０において、先の図２のステップＳ２同様の処理により、非クリティカルエリア１２８のデータの異常の有無が検出される。そして、ステップＳ３０において異常が検出されたときには、ステップＳ３１において、先の図２のステップＳ３同様、フェールセーフ処理を実行する。なお、ステップＳ３０において異常が検出されないときや、ステップＳ３１においてフェールセーフ処理が行われた後にはこの一連の処理を一旦終了する。
【００６２】
以上説明した本実施形態によれば、先の第１の実施形態の上記（１）及び（２）の効果に加えて更に以下の効果が得られるようになる。
（３）スケジューリングに基づきグループ分けされたデータを単位としてエミュレーションＲＡＭエリア１３３にコピーする処理を行うことで、エミュレーションＲＡＭエリア１３３を低減することができる。
【００６３】
なお、上記各実施形態は、以下のように変更して実施してもよい。
・ＲＯＭ１２０の構成は、上記各実施形態で例示したものに限らない。例えば、クリティカルエリアと、バックアップエリアと、非クリティカルエリアとを単一のＲＯＭ内の別の記憶領域として分離する代わりに、それぞれ別のＲＯＭに格納してもよい。また、ＲＯＭ１２０の配置としても、例えばマイクロコンピュータ１００に対して外付けされていてもよい。また、こうした構成において、例えばクリティカルエリア１２１をマイクロコンピュータ１００内のＲＯＭの記憶領域として構成するとともに、バックアップエリア１２２をマイクロコンピュータ１００に対して外付けのＲＯＭの記憶領域として構成するようにしてもよい。
【００６４】
・エミュレーションＲＡＭエリアと非エミュレーションエリアとを単一のＲＡＭ１３０内の分離された記憶領域として構成するものに限らない。また、これらエミュレーションＲＡＭエリアや非エミュレーションエリアは、必ずしも中央処理装置１１０に対して外付けされたマイクロコンピュータ１００内のＲＡＭの記憶領域として構成するものに限らない。
【００６５】
・複数の記憶領域に格納されるデータについて、スケジューリングに基づき分割されたプログラムと該プログラムによって用いられるデータとを単位とするグループ分けの仕方は、上記第２の実施形態に例示したものに限らない。例えば、上記第２の実施形態において、処理周期「β」のプログラムの中に１つだけ処理周期「α」のプログラムよりも優先度の高いものが混じっている場合には、第１のクリティカルエリア１２４及び第１のバックアップエリア１２６にこの優先度の高いプログラムを格納するようにしてもよい。
【００６６】
また、グループ分けの数も任意である。
・複数の記憶領域に格納されるデータとしては、必ずしも２つの記憶領域に記憶されるデータに限らず、３つ以上の記憶領域に格納されるものであってもよい。
【００６７】
・上記各実施形態及びその変形例では、クリティカルエリアに格納されているデータについては、エミュレーションＲＡＭエリアを介すことなく、中央処理装置に直接取り込まれるようにしたが、これに限らない。例えば、複数の記憶領域に格納されるデータについては、全てエミュレーションＲＡＭエリアを介して中央処理装置へデータが取り込まれるようにしてもよい。
【００６８】
・中央処理装置による各種演算及び制御に用いる同一のデータを複数の記憶領域に格納する記憶装置としては、上記ＲＯＭに限らない。例えばＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等であってもよい。
【００６９】
・複数の記憶領域に格納されるデータは、車載エンジンの制御にとって必須の所定の条件を満たすデータに限らない。
・電子制御装置の制御対象としては、車載エンジンに限らず例えば車両の任意箇所でもよい。
【図面の簡単な説明】
【図１】本発明にかかる電子制御装置の第１の実施形態の全体構成を示すブロック図。
【図２】同実施形態にかかるＲＯＭのデータの異常の有無の検出にかかる処理の手順を示すフローチャート。
【図３】本発明にかかる電子制御装置の第２の実施形態の全体構成を示すブロック図。
【図４】同実施形態にかかるＲＯＭのデータの異常の有無の検出にかかる処理の手順を示すフローチャート。
【図５】同実施形態にかかるＲＯＭのデータの異常の有無の検出にかかる処理の手順を示すフローチャート。
【図６】同実施形態にかかるＲＯＭのデータの異常の有無の検出にかかる処理の手順を示すフローチャート。
【図７】従来の電子制御装置の構成を示すブロック図。
【図８】同従来の電子制御装置にかかるＲＯＭのデータの異常の有無の検出にかかる処理の手順を示すフローチャート。
【符号の説明】
１００…マイクロコンピュータ、１１０…中央処理装置、１２０…ＲＯＭ、１２１…クリティカルエリア、１２２…バックアップエリア、１２３…非クリティカルエリア、１２４…第１のクリティカルエリア、１２５…第２のクリティカルエリア、１２６…第１のバックアップエリア、１２７…第２のバックアップエリア、１２８…非クリティカルエリア、１３０…ＲＡＭ、１３１…エミュレーションＲＡＭエリア、１３２…非エミュレーションエリア、１４１…ＲＡＭエミュレーション装置。
【図１】
2004287750.tif 000003
【図２】
2004287750.tif 000004
【図３】
2004287750.tif 000005
【図４】
2004287750.tif 000006
【図５】
2004287750.tif 000007
【図６】
2004287750.tif 000008
【図７】
2004287750.tif 000009
【図８】
2004287750.tif 000010