(57)【要約】【課題】 不揮発性メモリを使用したデータの書き込み、読み出し及び読み出したデータの処理において、従来は３個以上のデータを読み込んでいたのでデータの処理に時間がかかるという問題があった。本発明は高信頼性を確保しつつ高速でデータの読み出し及び処理を行い、コストを低減した不揮発性メモリの制御方法を提供することを課題とする。【解決手段】 不揮発性メモリに記憶されているデータのうち、２個のデータをデータ組１としてまず読み込む（Ｓ２１）。読み込んだ２個のデータを比較し、正常か異常か判定する（Ｓ２２）。データが正常であればデータを確定して出力して終了する（Ｓ２３）。データ異常であれば次の組の２個のデータを読み込み、比較判定する（Ｓ２４，Ｓ２５）。このように、正常データ確定まで順次２個のデータを読み込み、比較判定することでデータ処理の時間を短縮している。【選択図】        図２
2006163811.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された車載機器を制御するための学習値を表すデータを書き込み、および読み出しをすることが可能な複数のメモリ領域を有する不揮発性メモリと、
該データを該メモリ領域に書き込み記憶させるとともに、記憶されている該データを該メモリ領域から読み出し、読み出した前記データが正常であるか否かを比較判定する演算部を有するマイコンと、を備える該車載機器の制御装置において、
同一の前記データを複数の前記メモリ領域に書き込み、前記データを前記演算部が読み出すときは、最初に２個の前記データを１組目として読み出し、読み出した２個の前記データを比較し、データエラーがないと判定したときは前記データを正常であると確定して外部に出力し、前記データにデータエラーがあると判定したときは、２組目の２個の前記データを読み出し、読み出した２組目の２個の前記データを比較判定し、前記データが正常であると確定するまで前記メモリ領域から順次各組のデータを読み出し、比較判定を実施することを特徴とする不揮発性メモリのデータ制御方法。
【請求項２】
前記演算部が前記メモリ領域から読み出す２個の前記データの各組の組み合わせは、前記メモリ領域に記憶されている前記データを前記メモリ領域のアドレス番号順に２個ずつ組み合わせて各組を構成することを特徴とする請求項１に記載の不揮発性メモリのデータ制御方法。
【請求項３】
前記演算部が前記メモリ領域から読み出す２個の前記データの各組の組み合わせは、前記メモリ領域に記憶されている１個の前記データをその他の全ての前記各メモリ領域に記憶されている前記データ１個と順に組み合わせて２個とし、各組を構成することを特徴とする請求項１に記載の不揮発性メモリのデータ制御方法。
【請求項４】
前記演算部が前記メモリ領域から組を構成している２個の前記データを読み出し、比較し、該データにデータエラーがあると判定したときは、前記データが正常であると確定した後に、データエラーがあると判定された組の該データを正常な該データに更新する書き込みを行うことを特徴とする請求項１〜３に記載の不揮発性メモリのデータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習値等のデータを不揮発性メモリに記憶させ、マイコンが読み出して使用する車載機器の制御装置における不揮発性メモリのデータ制御方法に関する。
【背景技術】
【０００２】
従来、車両に搭載されたバッテリやエンジンの制御において、出荷時の校正値や過去の制御に基づいて演算された学習値等のデータを不揮発性メモリに記憶させ、次回の制御時に記憶している学習値を使用して、より的確な制御を行う制御方法がある。このとき、不揮発性メモリから読み出したデータにデータエラーがあると読み出した学習値データが不良となり、正確な制御ができなくなる。このような記憶されたデータのあるビットに対する電荷抜け等によるデータエラーに対し様々なデータエラーの識別とデータ復元方法が考案されている。
例えば、従来から行われている簡易な方法（従来例１）としては、図７（ａ）に示すように一個の不揮発性メモリの異なる２つの記憶領域に同一のデータ、もしくは片方の記憶領域には本来のデータを反転させたミラーデータを一対のデータとして書き込む方法がある。この場合の製品の制御時のデータの読み込みと処理のフローチャートは、図７（ｃ）に示すように、マイコンは不揮発性メモリの異なる２つの記憶領域に書き込まれている一対のデータ、すなわち、データＮｏ１とデータＮｏ１（またはデータＮｏ１のミラーデータ）を読み込み、２つのデータを比較して（Ｓ７２）正常であればデータを確定して出力し、正常動作を開始する（Ｓ７３）。ただし、読み込んだ２つのデータを比較して（Ｓ７２）ビットエラー等の不良が発見されて不揮発性メモリの異常判定（Ｓ７４）がなされても正しいデータを復元することは不可能である。
また、同様に簡易なデータエラーの識別の方法（従来例２）として、不揮発性メモリの記憶領域に書き込まれるデータにＳＵＭ値（加算値）を付与して、読み込み時にＳＵＭ値を使用してデータエラーを識別する方法（図７（ｂ））もあるが、エラーが発見されても正しいデータを復元することは不可能である。
【０００３】
データエラーがある場合でもデータを復元して正しいデータを出力することができるようにした方法（従来例３）として、図８（ａ）に示すように、一個の不揮発性メモリの異なる３つ以上の記憶領域に同じデータを順次記憶させ、製品の制御時には記憶されているデータを順次読み出し、マイコンにおいて読み出した各データを多数決処理することで記憶領域単位のデータ不良が発生しても、マイコンは正しいデータを出力することができるようにした方法がある。
データの読み込みと処理のフローチャートは、図８（ｂ）に示すように不揮発性メモリの異なる３つの記憶領域に書き込まれているデータ３個を読み込み（Ｓ８１）、２つのデータを比較して（Ｓ８２）正常であればデータを確定して出力し、正常動作を開始する（Ｓ８３）。ただし、読み込んだデータに異常があると判定した場合には読み込まれたデータ３個について多数決処理をして（Ｓ８４）正しいデータが確定されるときは正常動作を開始する（Ｓ８３）ことができる。ただし、同一データがないときは不揮発性メモリの異常判定（Ｓ８５）がなされることとなる。
【０００４】
さらに、特許文献１に開示されている方法（従来例４）は、図９に示すように記憶対象の同じデータを異なる３つ以上の不揮発性メモリチップ（不揮発性メモリＮｏ１、不揮発性メモリＮｏ２、不揮発性メモリＮｏ３、…）に分散して記憶させ、製品の制御時には記憶されているデータを順次読み出し、マイコンにおいて読み出した各データを多数決処理することにより、メモリセル単位のデータ不良のみならず不揮発性メモリチップ単位のデータ不良が発生してもマイコンは正しいデータを出力することができる構成としている。
また、図１０に示す方法（従来例５）は、マイコン内のＲＡＭにデータが保持される構成の場合で、不揮発性メモリの２つの記憶領域に書き込まれている２個のデータを読み込み、ＲＡＭに保持されている１個のデータと多数決処理を行うことで、データエラーを識別するとともに、データを復元して出力することが可能な構成となっているがＲＡＭのデータを保持するためにマイコンには常時電源（スタンバイ電源）を印加しておく必要がある。
【特許文献１】特開平１１−１６４４８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来例１及び２の場合は、不揮発性メモリから読み込んだデータの良、不良の識別をすることは可能であるが、データエラーが発見されても、正しいデータを復元して製品の正常動作に必要なデータを出力することができない。
また、従来例３、４及び５の場合は、データエラーが一部のデータにとどまる限り、正しいデータを復元して出力することができる。しかし、従来例３のように１つの不揮発性メモリから３個以上のデータを毎回読み込み比較する構成では、データ確定まで時間がかかるという問題がある。
従来例４の場合は、３個以上のデータを毎回読み込み多数決処理する構成なので、３個以上の不揮発性メモリから平行して読み込むことが出来ればデータ確定までの時間は短くすることが出来るが、３個以上の不揮発性メモリを持つことになるのでコストが上昇する。
従来例５の場合は、ＲＡＭに常時電源を加えておく必要があるのでスタンバイ電源を持つシステムでしか使用できないという問題がある。
本発明は、上記の問題点に鑑みなされたもので、不揮発性メモリを使用したデータの書き込み、読み出し及び読み出したデータの処理において、高信頼性を確保しつつ高速でデータの読み出し及び処理を行い、かつ、コストを低減した不揮発性メモリのデータ制御方法を提供することをその目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するために請求項１の発明は、車両に搭載された車載機器の学習値を表すデータを複数の異なるメモリ領域に書き込み、および読み出しをすることが可能な記憶部を有する不揮発性メモリと、前記のデータを記憶部に記憶させるとともに、記憶されているデータを記憶部から読み出し、読み出したデータが正常であるか否かを判定する演算部を有するマイコンと、から構成される車載機器の制御装置において、同一のデータを複数のメモリ領域に書き込み、データを演算部が読み出すときは、最初に２個のデータを１組目として読み出し、読み出した２個のデータを比較し、データエラーがないと判定したときはデータを正常であると確定して外部に出力し、データにデータエラーがあると判定したときは、２組目の２個のデータを読み出し、読み出した２組目の２個のデータを比較し判定を行い、データが正常であると確定するまで順次記憶部から各組のデータを読み出し、判定を実施することを特徴とする。
【０００７】
請求項１の発明は、同一データを複数のメモリ領域に書き込み、記憶しておき、読み出し時には、まず最初に２個のデータを１組目として読み出し、２個のデータを比較してデータエラーがないか判定する。データエラーがなければ読み出した１組目のデータは正常であると確定して外部に出力されてデータの読み出しと確定作業は終了する。
もし、１組目として読み出した２個のデータを比較してデータエラーが発見されたときは、さらに２組目の２個のデータを読み出し、比較し判定を行う。データエラーがなければ読み出した２組目のデータは正常であると確定して外部に出力されてデータの読み込みと確定作業は終了する。
このように、データエラーが発見されたときは、順次次の組の２個のデータを読み出し、比較する作業を繰り返し、不揮発性メモリに記憶されている全てのデータに異常があると判定されたときは、不揮発性メモリデータ異常の判定がなされる。
【０００８】
従って、本構成によれば、一部の読み出したデータに不良があっても、メモリ領域に記憶された全ての組のデータがすべて不良にならない限り、正しいデータを確定して出力することができる。
さらに、従来例３及び４のように３個のデータを常時読み出し多数決処理を行うものではなく、通常は２個のデータを読み出し比較、判定する構成なので、データ確定に要する時間を大幅に短縮できる。その結果、例えばエンジンの制御部に使用するものであれば車両起動に要する時間を短縮できるという効果が期待できる。
また、本構成は次の効果もある。すなわち、不揮発性メモリは書き込み、読み出しのアクセスの回数により劣化が促進され、データエラーが発生し易くなる。本発明の特徴は、通常は１組目のデータにアクセスすることでデータの読み出し、確定が終了することがほとんどで２組目以降のデータにアクセスすることは少ない。従って、２組目以降のデータはアクセスによる劣化がほとんど無いため、従来方式（例えば、３つのデータに毎回アクセスする従来例３及び４など）に比較して不揮発性メモリチップの寿命が長くなるメリットがある。
なお、本発明でいうメモリ領域とは、不揮発性メモリにおいてデータの書き込み、読み出しが行われる最小の記憶単位を意味している。
【０００９】
請求項２の発明は、請求項１の発明において、マイコンの演算部が不揮発メモリのメモリ領域から読み出す２個のデータの各組の組み合わせについて規定しているもので、図３に示すように各メモリ領域には同一のデータがそれぞれ記憶されているが、データの読み出しに際してはメモリ領域のアドレス番号順に２個のデータを一対として順に組み合わせて各組を構成することを特徴としている。
本構成によれば、各メモリ領域に格納されているデータを読み出す際に、２個のデータが１組として読み出され、マイコンの演算部において比較してデータの良、不良が判定され、データにデータエラーがなければデータを確定し、データエラーがあるときのみ次の組のデータを読み出すのでデータの不良は確実に発見され、かつ、データを確定するまでの処理時間を短くすることができる。
【００１０】
請求項３の発明は、請求項１の発明において、マイコンの演算部が不揮発メモリのメモリ領域から読み出す２個のデータの各組の組み合わせは、図４に示すようにメモリ領域に記憶されている１個のデータをその他の全てのメモリ領域に記憶されているデータと順に２個ずつ組み合わせて、各組を構成することを特徴としている。
このような構成とした場合は、図４の模式図に示すようにｎ個のメモリ領域にデータを格納した場合、データの読み出し時の組数はｎ（ｎ−１）／２と非常に多くなる。従って、
所定数のデータ組を確保するために必要とされるメモリ容量は相対的に少ないものですむこととなる。
【００１１】
請求項４の発明は、請求項１〜３に記載の不揮発性メモリのデータ制御方法において、
２個のデータを不揮発性メモリから読み出し、演算部において比較し、データにデータエラーがあると判定したときは、さらにデータの判定作業を続け、データが正常であると確定した後に、データエラーがあると判定された組のデータを正常なデータに更新する書き込みを行うことを特徴としている。
本構成によれば、メモリ領域に格納されているデータが不良となった場合、正常なデータが確定され次第、直ちにデータ不良の組のデータが書き換えられ正しいデータに更新されるので、次回のデータ読み出し時にはデータ確定までの処理時間を短縮することができる。
【発明の効果】
【００１２】
以上説明したように本発明の不揮発性メモリのデータ制御方法によれば、不揮発性メモリを使用したデータの書き込み、読み出し及び読み出したデータの処理において、高速でデータの読み出し及び判定処理を行い、かつ、データエラーに対してもデータ復元が可能な機能を持ちながら高信頼性を確保し、簡易な方法でコストを低減した不揮発性メモリのデータ制御方法を提供することができる。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明による不揮発性メモリのデータ制御方法の実施形態について実施の形態１及び実施の形態２に基づいて説明する。
（実施の形態１）図１は、本発明の不揮発性メモリのデータ制御方法が適用される装置の概略の構成を示す一例であって、１は車載機器を電子制御する制御装置（ＥＣＵ）で、２は制御装置の制御対象である車載機器（例えば、エンジンやバッテリ）である。３は学習値等のデータを不揮発性メモリに書き込み、読み出し及び読み出したデータの比較判定を行う演算部を有するマイコン４を備え、かつ、車載の各種センサ（図示せず）の検出信号を入力し、車載機器２を制御する制御信号を発するマイコン装置である。５は学習値等のデータが記憶され、電源がＯＦＦ（イグニッションキーがＯＦＦ）のときでもデータの記憶が保持される不揮発性メモリである。
【００１４】
この構成において、不揮発性メモリ５とマイコン４とで実施されるデータの読み出しとデータの良、不良の比較判定と正常動作開始までの動作について図２及び図３に基づいて説明する。図２は、データの読み出しとデータの良、不良の比較判定処理のフローチャートであり、図３は、不揮発性メモリ５に格納されるデータとデータの読み出し時の組み合わせを模式的に表したものである。
図３の構成は、請求項２の発明に対応するもので不揮発性メモリ５の記憶部である各メモリ領域に車載機器２の制御用学習データである同一のデータＮｏ１（又はデータＮｏ１のミラーデータ）がマイコン４によって書き込まれたものである。
【００１５】
なお、本発明の不揮発性メモリの複数のメモリ領域に書き込み、製品の起動時に読み出されるデータは、本来の学習値を表すデータと本来のデータを反転して作成したミラーデータのどちらでもよい。通常、ミラーデータは、ハード的な信頼性を考慮して用いられるものであり、本発明を実施するに際して本来のデータを用いても、また、ミラーデータを用いても何らその作用効果上差異はない。従って、本発明では、両者を同一のデータとして取り扱っている。
また、メモリ領域とは、前述したように不揮発性メモリにデータの書き込み、読み出しを行うときの最小の記憶単位をさしている。
そして、読み出し時における２個のデータを一対とした組の構成は図３に示すようにアドレス番号順に組を構成したものである。従って、メモリ領域がｎ個あれば、データ組数はｎ／２組できることとなる。
【００１６】
図２のフローチャートで、まず、ステップ２１（Ｓ２１）において、図３の不揮発性メモリ５に格納されている１組目のデータ（すなわち、アドレス１及び２が指定するメモリ領域のデータ）をマイコン４は読み出す。次に、ステップ２２（Ｓ２２）でマイコン４はマイコン内の演算部で読み出した１組目の２個のデータ（データＮｏ１とデータＮｏ１、又はデータＮｏ１とデータＮｏ１のミラーデータ）を比較し、２個のデータにデータエラーがないかどうか判定する。２個のデータにデータエラーがなければデータは正常であると確定してステップ２３（Ｓ２３）に進み、データの読み出しと比較判定の処理作業は終了する。すなわち、１組のデータ（２個のデータ）を不揮発性メモリ５から読み出し、比較判定することで正常なデータを確定し、出力することができる。
ただし、読み出した１組目のデータを比較し、データエラーがあり異常であると判定されたときは、ステップ２４に進み、２組目のデータ（データ組２のデータ）を読み出し、ステップ２５で２組目のデータの比較判定がなされる。２組目のデータにデータエラーがなく正常であればデータは正常であると確定してステップ２３に進み、データの読み出しと比較判定の処理作業は終了する。しかし、２組目のデータでも異常判定がなされたときは、ステップ２６においてデータ組の順番を判定し、ステップ２４に進むかステップ２７に進むかを決定する。このようにして、順次各組のデータの読み込みと判定を繰り返し格納されている最終のデータ組まで異常判定がなされた場合には、ステップ２７において不揮発性メモリデータ不良が確定し、データの読み出しと比較判定の処理作業は終了する。
従って、実施の形態１の構成によれば、正常データ確定に必要な不揮発性メモリへのアクセス回数を最低限におさえ、データの読み出し及びデータ処理時間を短縮することが出来る。
【００１７】
なお、不揮発性メモリ５に格納されるデータとデータの読み出し時のデータ組の組み合わせについては、上記の図３に示された方法（データ組の構成方法１）以外に図４あるいは図５の方法を用いてもよい。
図４に示す方法（データ組の構成方法２）は、請求項３の発明に対応するもので不揮発性メモリ５の各メモリ領域に同一のデータＮｏ１（又はデータＮｏ１のミラーデータ）を書き込むことは請求項２の発明と同じであるが、読み出し時における２個一対の組の構成は図４に示すように、一つのメモリ領域に格納されているデータが他の全てのメモリ領域に格納されているデータと対となるように全ての組み合わせで２個一対の組を構成するもので、ｎ個のメモリ領域（記憶されたデータの数）からは、ｎ（ｎ−１）／２組のデータ組数を作ることができ、少ないメモリ容量で多くのデータ組を構成することができる。
また、図５に示す方法（データ組の構成方法３）は、互いに隣接する２個のデータを一対としてデータ読み出し時のデータ組を構成したものでｎ個のメモリ領域から（ｎ−１）組のデータ組数を作ることができる。
なお、データ組の構成方法は、上記のデータ組の構成方法１〜３の方法に限定されるものではなく、不揮発メモリのメモリ容量を考慮して決定されるべきもので、データ読み出し時に２個のデータが順次読み出せるものであれば、その他の構成方法を実施することができる。
【００１８】
（実施の形態２）次に、実施の形態２の動作について、図６のフローチャートに基づいて説明する。実施の形態２が実施される機器や回路の構成は、実施の形態１と同一で図１に示す構成である。
この構成において、マイコン４が不揮発性メモリ５に格納されているデータを２個１組として読み出し、比較判定を行い、正常データ確定まで順次データ読み出しと比較判定を繰り返すことは、実施の形態１の場合と同じであるが、正常データ確定後、データ異常であった組のデータを新しく正しいデータを書き込むことにより更新する機能（Ｓ６６）を備えたものである。実施の形態２の構成では実施の形態１の場合に比較して、次回の製品起動時のデータ読み込み、正常データ確定までのデータ処理時間を短縮出来る効果がある。
実施の形態１から実施の形態２への変更は、回路変更等のハードウエアの変更は必要なく、ソフトウエアの変更のみで対応可能である。
なお、このときの不揮発性メモリ５に格納されたデータの読み出し時のデータ組の構成は、図３〜５に示す方法のいずれを用いてもよいし、また、データ読み出し時に２個のデータが順次読み出せるものであれば、その他の構成方法を用いることができるのは、実施の形態１の場合と同様である。
【００１９】
なお、実施の形態１及び２の説明では、不揮発メモリの各メモリ領域に記憶するデータとして、本来のデータと本来のデータのミラーデータの両者を同一のデータと定義しているが、その他にＬＳＢ−ＭＳＢ変換を行ったデータを同一データとして適用してもよい。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施の形態における概略の全体構成を示す説明図である。
【図２】本発明の実施の形態１を示すフローチャートである。
【図３】本発明の不揮発メモリにおけるデータ格納とデータ読み出し時のデータ組の構成方法１の説明図である。
【図４】本発明の不揮発メモリにおけるデータ格納とデータ読み出し時のデータ組の構成方法２の説明図である。
【図５】本発明の不揮発メモリにおけるデータ格納とデータ読み出し時のデータ組の構成方法３の説明図である。
【図６】本発明の実施の形態２を示すフローチャートである。
【図７】従来例１及び２の不揮発メモリにおけるデータ格納とフローチャートの説明図である。
【図８】従来例３の不揮発メモリにおけるデータ格納とフローチャートの説明図である。
【図９】従来例４の不揮発メモリにおけるデータ格納と動作の説明図である。
【図１０】従来例５の不揮発メモリにおけるデータ格納と動作の説明図である。
【符号の説明】
【００２１】
１：電子制御装置（ＥＣＵ）
２：車載機器
３：マイコン装置
４：マイコン（演算部）
５：不揮発メモリ
【図１】
2006163811.tif 000003
【図２】
2006163811.tif 000004
【図３】
2006163811.tif 000005
【図４】
2006163811.tif 000006
【図５】
2006163811.tif 000007
【図６】
2006163811.tif 000008
【図７】
2006163811.tif 000009
【図８】
2006163811.tif 000010
【図９】
2006163811.tif 000011
【図１０】
2006163811.tif 000012