(57)【要約】【課題】廉価で信頼性が高いバックアップデータの記憶を行うことができる車載電子制御装置並びにそのデータ記憶方法及びデータ読出し方法を提供する。【解決手段】バックアップメモリ（７）は、順番を付した３個以上の記号からなる記号列の一つの記号及びバックアップデータが書き込まれる第１の領域と、記号列の他の一つの記号及び第１の領域に書き込まれたバックアップデータと同一のバックアップデータが書き込まれる第２の領域と、を有する。電源スイッチ（８）がオンである間、ＣＰＵ（４）は、記号列の一つの記号を、バックアップデータとともに第１の領域に書き込み、第１の領域に書き込まれた記号の次の順番の記号又は記号列の最初の順番の記号を、第１の領域に書き込まれたバックアップデータと同一のバックアップデータとともに第２の領域に書き込む。【選択図】図１
2009289200.tif 000002
【特許請求の範囲】
【請求項１】
電源スイッチ（８）がオフであるときにもバックアップデータを記憶するバックアップメモリ（７）と、
前記バックアップデータを前記バックアップメモリ（７）に書き込むとともに前記バックアップメモリ（７）に書き込まれた前記バックアップデータを読み出して各種制御を実行するＣＰＵ（４）とを備え、
前記バックアップメモリ（７）が、
順番を付した３個以上の記号からなる記号列の一つの記号及び前記バックアップデータが書き込まれる第１の領域と、
前記記号列の他の一つの記号及び前記第１の領域に書き込まれたバックアップデータと同一のバックアップデータが書き込まれる第２の領域と、を有し、
前記電源スイッチ（８）がオンである間、前記ＣＰＵ（４）が、前記記号列の一つの記号を、前記バックアップデータとともに前記第１の領域に書き込み、前記第１の領域に書き込まれた記号の次の順番の記号又は前記記号列の最初の順番の記号を、前記第１の領域に書き込まれたバックアップデータと同一のバックアップデータとともに前記第２の領域に書き込む車載電子制御装置。
【請求項２】
前記ＣＰＵ（４）が、
前記電源スイッチ（８）がオフからオンに切り替わる際に、前記第１及び第２の領域に書き込まれた記号を読み出し、
前記第１及び第２の領域に書き込まれた記号の判別を行い、
前記第２の領域に書き込まれた記号が前記第１の領域に書き込まれた記号の次の順番の記号であり、又は、前記第１の領域に書き込まれた記号が前記記号列の最後の順番の記号であるとともに前記第２の領域に書き込まれた記号が前記記号列の最初の順番の記号である場合、前記第１の領域のバックアップデータを読み出し、
前記第２の領域に書き込まれた記号が前記第１の領域に書き込まれた記号の前の順番の記号であり、又は、前記第１の領域に書き込まれた記号が前記記号列の最初の順番の記号であるとともに前記第２の領域に書き込まれた記号が前記記号列の最後の順番の記号である場合、前記第２の領域のバックアップデータを読み出す請求項１記載の車載電子制御装置。
【請求項３】
前記記号列の記号の個数を奇数とした請求項１又は２記載の車載電子制御装置。
【請求項４】
電源スイッチ（８）がオフであるときにもバックアップデータを記憶するバックアップメモリ（７）と、前記バックアップデータを前記バックアップメモリ（７）に書き込むとともに前記バックアップメモリ（７）に書き込まれた前記バックアップデータを読み出して各種制御を実行するＣＰＵ（４）と、を備えた車載電子制御装置のデータ書込み方法であって、
前記電源スイッチ（８）がオンである間、順番を付した３個以上の記号からなる記号列の一つの記号を、前記バックアップデータとともに前記バックアップメモリ（７）の第１の領域に書き込む第１書込みステップ（Ｓ１〜Ｓ５）と、
前記電源スイッチ（８）がオンである間、前記第１の領域に書き込まれた記号の次の順番の記号又は記号列の最初の順番の記号を、前記第１の領域に書き込まれたバックアップデータと同一のバックアップデータとともに前記バックアップメモリ（７）の第２の領域に書き込む第２書込みステップ（Ｓ６〜Ｓ１０）と、を備えた車載電子制御装置のデータ書込み方法。
【請求項５】
前記記号列の記号の個数を奇数とした請求項４記載の車載電子制御装置のデータ書込み方法。
【請求項６】
請求項４又は５記載の車載電子制御装置のデータ書込み方法によって書き込まれたバックアップデータを読み出す車載電子制御装置のデータ書込み方法であって、
前記電源スイッチ（８）がオフからオンに切り替わる際に、前記第１及び第２の領域に書き込まれた記号を読み出す記号読出しステップ（Ｓ１１）と、
前記第１及び第２の領域に書き込まれた記号の判別を行う記号判別ステップ（Ｓ１２）と、
前記第２の領域に書き込まれた記号が前記第１の領域に書き込まれた記号の次の順番の記号であり、又は、前記第１の領域に書き込まれた記号が前記記号列の最後の順番の記号であるとともに前記第２の領域に書き込まれた記号が前記記号列の最初の順番の記号である場合、前記第１の領域のバックアップデータを読み出す第１バックアップデータ読出しステップ（Ｓ１３）と、
前記第２の領域に書き込まれた記号が前記第１の領域に書き込まれた記号の前の順番の記号であり、又は、前記第１の領域に書き込まれた記号が前記記号列の最初の順番の記号であるとともに前記第２の領域に書き込まれた記号が前記記号列の最後の順番の記号である場合、前記第２の領域のバックアップデータを読み出す第２バックアップデータ読出しステップ（Ｓ１４）と、を備えた車載電子制御装置のデータ読出し方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電源スイッチのオフ時又は電源ノイズ等による電源の遮断に伴う電源電圧の低下の際にもダイアグ情報をバックアップデータとして記憶するバックアップメモリを備えた車載電子制御装置並びにそのデータ書込み方法及びデータ読出し方法に関する。
【背景技術】
【０００２】
車載電子制御装置（ＥＣＵ）においては、イグニション（ＩＧ）スイッチがオフになり又は電気ノイズ等による電源の遮断に伴って電源電圧が低下したときでも、車両制御、車載エンジン制御等を行うための各種制御データのうちの時間的に変化する制御データ、すなわち、故障情報を含む最新のダイアグ情報を、バックアップデータとしてバックアップメモリに記憶する必要がある。
【０００３】
ＥＣＵにおけるバックアップメモリのデータ記憶のために、バックアップメモリに対する内部バックアップ電源を設けたＥＣＵ（例えば、特許文献１）や、同一のバックアップデータを２面の領域に書き込むバックアップデータのミラーリング（二重化）を行うＥＣＵ（例えば、特許文献２）が、これまで提案されている。
【０００４】
【特許文献１】特開２００２−３０９８８号公報
【特許文献２】特開２００６−７７２２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、内部バックアップ電源を設ける場合、ＥＣＵのコストが高くなり、ＥＣＵを小型化することができない。また、ミラーリング（二重化）を行う場合、バックアップデータが書き込まれた２面の領域のうちいずれでバックアップデータの破壊・異常の状態が生じたか特定できないので、バックアップデータの破壊・異常の状態は検出できるがデータの修正が難しく、バックアップデータの信頼性が低くなる。
【０００６】
ＥＣＵにおけるバックアップメモリのデータ記憶のために、同一のバックアップデータを３面以上の領域に書き込むバックアップデータの多重化（３面化）を行うことも考えられる。この場合、バックアップデータが書き込まれた３面の領域を互いに比較することによって、バックアップデータの破壊・異常の状態が３面の領域のうちのいずれで生じたか特定できる。したがって、バックアップデータの破壊・異常発生してもデータの復元が可能であり、信頼性が高くなる。しかしながら、多重化（３面化）を行うためには、同一のバックアップデータを３面以上の領域に書き込む必要があるので、バッファメモリの容量を大きくする必要があり、その結果、ＥＣＵのコストが高くなる。
【０００７】
本発明の目的は、廉価で信頼性が高いバックアップデータの記憶を行うことができる車載電子制御装置並びにそのデータ記憶方法及びデータ読出し方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明のうち請求項１に係る発明によれば、電源スイッチ（８）がオンである間、順番を付した３個以上の記号からなる記号列の一つの記号を、バックアップデータとともに前記バックアップメモリ（７）の第１の領域に書き込む。その後、第１の領域に書き込まれた記号の次の順番の記号又は記号列の最初の順番の記号を、第１の領域に書き込まれたバックアップデータと同一のバックアップデータとともにバックアップメモリ（７）の第２の領域に書き込む。
【０００９】
電源スイッチ（８）がオフになり又は電気ノイズ等による電源の遮断に伴って電源電圧が低下したときのように、第１の領域へのバックアップデータの書込みが失敗した場合、第１の領域に書き込まれた記号は変更されるが、第２の領域に書き込まれた記号は変更されない。したがって、第２の領域に書き込まれた記号が第１の領域に書き込まれた記号の前の順番の記号となり、又は、第１の領域に書き込まれた記号が記号列の最初の順番の記号であるとともに第２の領域に書き込まれた記号が前記記号列の最後の順番の記号となる。この場合には、第２の領域のバックアップデータが正常であると判別することができる。
【００１０】
それに対し、第２の領域へのバックアップデータの書込みが失敗した場合、第１及び第２の領域に書き込まれた記号は変更される。したがって、第２の領域に書き込まれた記号が第１の領域に書き込まれた記号の次の順番の記号であり、又は、第１の領域に書き込まれた記号が記号列の最後の順番の記号であるとともに第２の領域に書き込まれた記号が記号列の最初の順番の記号となる。この場合には、第１の領域のバックアップデータが正常であると判別することができる。
【００１１】
このように、内部バックアップ電源を設け又はバックアップデータを多重化（３面化）して記憶容量を大きくすることなく、バックアップデータが書き込まれた第１及び第２の領域のうちいずれでバックアップデータの破壊・異常の状態が生じたか特定できる。その結果、廉価で信頼性が高いバックアップデータの記憶を行うことができる。
【００１２】
本発明のうち請求項２に係る発明によれば、第２の領域に書き込まれた記号が第１の領域に書き込まれた記号の次の順番の記号であり、又は、第１の領域に書き込まれた記号が記号列の最後の順番の記号であるとともに第２の領域に書き込まれた記号が記号列の最初の順番の記号である場合、第１の領域のバックアップデータを読み出す。それに対し、第２の領域に書き込まれた記号が第１の領域に書き込まれた記号の前の順番の記号であり、又は、第１の領域に書き込まれた記号が記号列の最初の順番の記号であるとともに第２の領域に書き込まれた記号が記号列の最後の順番の記号である場合、第２の領域のバックアップデータを読み出す。したがって、正常なバックアップデータを正確に読み出すことができるようになる。
【００１３】
本発明のうち請求項３に係る発明のように、記号列の記号の個数を奇数とする場合、偶数の場合に比べて少ない記号の数で同じ数の組合せができ、参照用に必要な記憶容量を少なくすることができる。
【００１４】
本発明のうち請求項４に係る発明によれば、請求項１に係る発明と同様に、廉価で信頼性が高いバックアップデータの記憶を行うことができる。
【００１５】
本発明のうち請求項５に係る発明によれば、請求項３に係る発明と同様に、参照用に必要な記憶容量を少なくすることができる。
【００１６】
本発明のうち請求項６に係る発明によれば、請求項２に係る発明と同様に、正常なバックアップデータを正確に読み出すことができるようになる。
【００１７】
なお、上記各構成要素に付した括弧内の符号は、後述する実施形態に記載の具体的な構成要素との対応関係を示す一例である。
【発明を実施するための最良の形態】
【００１８】
本発明による車載電子制御装置並びにそのデータ記憶方法及びデータ読出し方法を、図面を参照しながら説明する。
図１は、車載電子制御装置の実施の形態のブロック図である。この車載電子制御装置（ＥＣＵ）は、外付けのＥＥＰＲＯＭにバックアップデータを記憶し、車両制御（例えば、トランスミッション制御）、車載エンジン制御（例えば、エンジンの噴射・点火制御及び電子スロットル制御）等を行う。
【００１９】
ＥＣＵ１は、各種制御を行うマイクロコンピュータ２と、バッテリ電圧ＢＡＴＴを取り込む定電圧回路３と、を備える。マイクロコンピュータ２は、ＣＰＵ４と、ＲＯＭ５と、ＲＡＭ６と、ＥＥＰＲＯＭ７と、を有する。ＣＰＵ４は、ＲＯＭ５に格納されている制御プログラムを実行し、制御データ等をＲＡＭ６に一時的に記憶する。
【００２０】
定電圧回路３は、電源スイッチとしてのイグニションスイッチ（ＩＧＳＷ）８を介してバッテリ電圧ＢＡＴＴを取り込み、定電圧（例えば、５Ｖ）の電源電圧Ｖｃｃを生成する。定電圧回路３とマイクロコンピュータ２との間には、容量負荷としてのコンデンサ（パスコン）９が接続されており、コンデンサ９は、ノイズ除去等の機能を有する。
【００２１】
ＥＣＵ１には、図示しない各種センサや各種アクチュエータが接続されている。ＣＰＵ１は、各種センサの検出信号を取り込んでエンジン運転状態を判定するとともに、その運転状態に基づいて各種アクチュエータ（例えば、インジェクタ及びイグナイタ）を制御する。なお、センサ検出信号としては、エンジン回転数信号、アクセル開度信号、スロットル開度信号、エンジン冷却水温信号、吸気温信号、油温信号等を挙げることができる。
【００２２】
これらセンサ検出信号に基づく制御データは、ＲＡＭ６に記憶され、ＣＰＵ４により各種制御に使用される。ＲＡＭ６に記憶される制御データのうちの時間的に変化する制御データ、すなわち、故障情報を含む最新のダイアグ情報が、バックアップデータとしてＲＡＭ６からＥＥＰＲＯＭ７に書き込まれる。
【００２３】
図２は、図１のＥＥＰＲＯＭにバックアップデータを書き込む領域を示す図である。ＥＥＰＲＯＭ７には、同一のバックアップデータを書き込む第１及び第２の領域としての２面の領域Ａ，Ｂが用意され、領域Ａ，Ｂの先頭には、後に説明するSequence_Codeが書き込まれる。
【００２４】
図３は、バックアップメモリのデータ記憶方法の実施の形態のフローチャートである。ここでは、Sequence_Codeとして、１，２，３の順番の３個の整数からなる記号列としての整数列を使用する。本ルーチンは、イグニションスイッチ８がオンである間にＥＥＰＲＯＭ７に書き込むべきバックアップデータが生じる度に実行される。
【００２５】
先ず、ステップＳ１において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域Ｂの先頭にあるSequence_Codeを読み込み、Sequence_Codeを１増分する。次に、ステップＳ２において、ＣＰＵ４は、Sequence_Codeが３を超えるか否か判別する。Sequence_Codeが３を超える場合、ステップＳ３において、ＣＰＵ４は、Sequence_Codeを１にし、その後、ステップＳ４において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域Ａの先頭にSequence_Codeを書き込む。それに対し、Sequence_Codeが３を超えない場合、そのままステップＳ４に進む。その後、ステップＳ５において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域ＡのSequence_Codeの次にバックアップデータを書き込む。これらステップＳ１〜Ｓ５の組合せは、第１書込みステップに対応する。
【００２６】
次に、ステップＳ６において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域Ａの先頭にあるSequence_Codeを読み込み、Sequence_Codeを１増分する。次に、ステップＳ７において、ＣＰＵ４は、Sequence_Codeが３を超えるか否か判別する。Sequence_Codeが３を超える場合、ステップＳ８において、ＣＰＵ４は、Sequence_Codeを１にし、その後、ステップＳ９において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域Ｂの先頭にSequence_Codeを書き込む。それに対し、Sequence_Codeが３を超えない場合、そのままステップＳ９に進む。その後、ステップＳ１０において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域ＢのSequence_Codeの次に、ＥＥＰＲＯＭ７の領域Ａに書き込まれたバックアップデータと同一のバックアップデータを書き込み、本ルーチンを終了する。これらステップＳ６〜Ｓ１０の組合せは、第２書込みステップに対応する。
【００２７】
したがって、本ルーチンによれば、イグニションスイッチ８がオンであり、領域Ａ及び領域Ｂへのバックアップデータの書込みが成功した場合には、領域ＡのSequence_Codeが１のときには、領域ＢのSequence_Codeが２となる。同様に、領域ＡのSequence_Codeが２のときには、領域ＢのSequence_Codeが３となり、領域ＡのSequence_Codeが３のときには、領域ＢのSequence_Codeが１となる。
【００２８】
本ルーチンのステップＳ５の実行中にイグニションスイッチ８がオフになり又は電源電圧が低下したときには、領域Ａへのバックアップデータの書込みを中断する。したがって、領域Ａへのバックアップデータの書込みに失敗し、領域Ａのバックアップデータに異常が生じ、ステップＳ６〜Ｓ１０が実行されない。したがって、領域ＡのSequence_Codeが１のときには、領域ＢのSequence_Codeは、２ではなく、以前のルーチンで設定された３となる。同様に、領域ＡのSequence_Codeが２のときには、領域ＢのSequence_Codeは、３ではなく、以前のルーチンで設定された１となり、領域ＡのSequence_Codeが３のときには、領域ＢのSequence_Codeは、１ではなく、以前のルーチンで設定された２となる。
【００２９】
本ルーチンのステップＳ１０の実行中にイグニションスイッチ８がオフになり又は電源電圧が低下したときには、領域Ｂへのバックアップデータの書込みを中断する。したがって、領域Ｂへのバックアップデータの書込みに失敗し、領域Ｂのバックアップデータに異常が生じる。この場合は、領域Ａ及び領域Ｂへのバックアップデータの書込みが成功した場合と同様である。すなわち、領域ＡのSequence_Codeが１のときには、領域ＢのSequence_Codeが２となり、領域ＡのSequence_Codeが２のときには、領域ＢのSequence_Codeが３となり、領域ＡのSequence_Codeが３のときには、領域ＢのSequence_Codeが１となる。
【００３０】
したがって、バックアップデータの書込みが成功し又は領域Ｂへの書込みが失敗した場合、Sequence_Codeの整数は、次の順番に又は最後の順番から最初の順番に遷移する。それに対して、バックアップデータの領域Ａへの書込みが失敗した場合、Sequence_Codeの整数は、前の順番に又は最初の順番から最後の順番に遷移する。
【００３１】
図４は、バックアップメモリのデータ読出し方法の実施の形態のフローチャートである。本ルーチンは、イグニションスイッチ８がオフからオンに切り替わる度に実行される。
【００３２】
先ず、記号読出しステップとしてのステップＳ１１において、ＣＰＵ４は、ＥＥＰＲＯＭ７の領域Ａ，ＢのSequence_Codeを読み出す。記号判別ステップとしてのステップＳ１２において、ＣＰＵ４は、Sequence_Codeが正常であるか否か、すなわち、Sequence_Codeの整数は順番どおり又は最後の順番から最初の順番に遷移するか否かを、図５に示す読出し領域判定表を用いて判定する。
【００３３】
Sequence_Codeが正常である場合、第１バックアップデータ読出しステップとしてのステップＳ１３において、ＣＰＵ４は、正常に書き込まれたＥＥＰＲＯＭ７の領域Ａのバックアップデータを読み出し、本ルーチンを終了する。それに対し、Sequence_Codeが正常でない場合、第２バックアップデータ読出しステップとしてのステップＳ１４において、ＣＰＵ４は、正常に書き込まれたＥＥＰＲＯＭ７の領域Ｂのバックアップデータを読み出し、本ルーチンを終了する。
【００３４】
本実施の形態によれば、内部バックアップ電源を設け又はバックアップデータを多重化（３面化）して記憶容量を大きくすることなく、バックアップデータが書き込まれた領域Ａ，Ｂのうちいずれでバックアップデータの破壊・異常の状態が生じたか特定できる。その結果、廉価で信頼性が高いバックアップデータの記憶を行うことができる。また、記号列の記号の個数を奇数とする場合、偶数の場合に比べて少ない記号の数で同じ数の組合せができ、参照用に必要なＲＯＭの記憶容量を少なくすることができる。
【００３５】
本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が可能である。例えば、上記実施の形態において、記号列として、３個の整数１，２，３を使用したが、４個以上の整数、文字又はその組合せを用いることもできる。例えば、ａｂ，ｃｄ，ｅｆのような３個の文字からなる文字列、ａ，Ｂ，ｃ，Ｄのような４個の文字からなる文字列、ａ，ｄ，ｇ，１，５のような２個の整数及び３個の文字からなる整数列と文字列の組合せ、１，ａ，２，ｂ，３，ｃのような３個の整数及び３個の文字からなる整数列と文字列の組合せ、Ａ，Ｂ，１，３，５，Ｃ，Ｄのような３個の整数及び４個の文字からなる整数列と文字列の組合せ等を、記号列として用いることもできる。
【００３６】
また、バックアップデータの書込みが成功した場合には領域Ａを読み出す場合について説明したが、バックアップデータの書込みが成功した場合に領域Ｂを読み出すようにしてもよい。
【００３７】
さらに、バックアップメモリは、外付けメモリと内蔵メモリのいずれでもよく、ＥＥＰＲＯＭの代わりに、電源スイッチのオフ時にも記憶内容を保持するＳＲＡＭやフラッシュメモリのような電気的に記憶内容を消去及び書込み可能な不揮発性メモリを用いることもできる。
【図面の簡単な説明】
【００３８】
【図１】車載電子制御装置の実施の形態のブロック図である。
【図２】１のＥＥＰＲＯＭにバックアップデータを書き込む領域を示す図である。
【図３】バックアップメモリのデータ記憶方法の実施の形態のフローチャートである。
【図４】バックアップメモリのデータ読出し方法の実施の形態のフローチャートである。
【図５】図４のフローチャートで用いられる読出し領域判定表である。
【符号の説明】
【００３９】
１    車載電子制御装置（ＥＣＵ）
２    マイクロコンピュータ
３    定電圧回路
４    ＣＰＵ
５    ＲＯＭ
６    ＲＡＭ
７    ＥＥＰＲＯＭ
８    イグニションスイッチ（ＩＧＳＷ）
９    コンデンサ
【図１】
2009289200.tif 000003
【図２】
2009289200.tif 000004
【図３】
2009289200.tif 000005
【図４】
2009289200.tif 000006
【図５】
2009289200.tif 000007