JP4645741B2 - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP4645741B2
JP4645741B2 JP2009003584A JP2009003584A JP4645741B2 JP 4645741 B2 JP4645741 B2 JP 4645741B2 JP 2009003584 A JP2009003584 A JP 2009003584A JP 2009003584 A JP2009003584 A JP 2009003584A JP 4645741 B2 JP4645741 B2 JP 4645741B2
Authority
JP
Japan
Prior art keywords
check
calculation
data
abnormal
result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009003584A
Other languages
English (en)
Other versions
JP2010160737A (ja
Inventor
正茂 高須
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2009003584A priority Critical patent/JP4645741B2/ja
Priority to US12/652,220 priority patent/US8352814B2/en
Publication of JP2010160737A publication Critical patent/JP2010160737A/ja
Application granted granted Critical
Publication of JP4645741B2 publication Critical patent/JP4645741B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、不揮発性メモリに対してデータチェックを実施する電子制御装置に関する。
従来、システムの立ち上げ時およびシステム稼働中の空き時間等において、ROM(Read Only Memory)等の不揮発性メモリに記憶されているデータに対してサムチェック等のデータチェックを実施することにより、ROMに記憶されているデータが正常であるか異常であるかを判定することが知られている(例えば、特許文献1〜3参照。)。
特許文献1においては、ROM領域を複数のセルに分割し、診断期間毎に一部のセルのデータを加算し、全てのセルのデータを加算すると、加算値の合計と規定値とを比較することによりデータチェックを実施している。
これに対し、特許文献2では、ROM領域を複数のデータ群に分割し、データ群毎にデータチェックの結果が正常か異常かを判定している。
また、特許文献3では、電源電圧の値に応じて、ROM領域の全領域に対してデータチェックを実施するか、ROM領域を分割した分割領域毎にデータチェックを実施するかを決定している。
特開2004−133635号公報 特開平10−299565号公報 特開平4−1450号公報
ところで、ROMに対するデータチェックの結果が異常の場合、チェック演算の信頼性を確保するために1回の異常ではROMのデータ異常と判定せず、データチェックを何度か再試行し、それでも異常となる場合にROMのデータ異常と判定することが考えられる。しかしながら、ROMの記憶領域の全領域のデータの加算値を求めてデータチェックを実施する場合、データチェック結果の異常時にROMの記憶領域の全領域に対してデータチェックを再試行するので、データチェック時間が長くなるという問題がある。
また、ROMの記憶領域を分割して分割領域毎にデータチェックを実施する場合も、ROMに対するデータチェックを再試行するときにデータチェックの再試行を最初からやり直すと、データチェック時間が長くなるという問題がある。
このように、データチェック結果の異常時に再試行によるデータチェック時間が長くなると、例えばシステム立ち上げ時にデータチェックの再試行が実施される場合に、システム立ち上げに要する時間が長くなるという問題がある。特に、制御システムが複雑になっている近年の車両においては、車両システムの立ち上げ時に実施する初期設定項目および初期チェック項目が多いので、ROMのデータチェックに要する時間が長くなると、車両システムの立ち上げ時間が長くなり、車両システムの稼働が遅れるという問題が生じる。
本発明は、上記問題を解決するためになされたものであり、不揮発性メモリに対するデータチェックの異常時にデータチェックの再試行に要する時間を極力短くする電子制御装置を提供することを目的とする。
請求項1から6に記載の発明によると、演算手段は、不揮発性メモリに記憶されているデータが正常であるか異常であるかをチェックするチェック演算を分割領域毎に実施する。そして、演算手段によるチェック演算の結果が異常である分割領域に対してだけ、再試行手段は演算手段にチェック演算の再試行を所定回数実施させる。
このように、複数の分割領域のうち、チェック演算の結果が異常である分割領域に対してだけチェック演算の再試行を実施するので、正常である分割領域に対してチェック演算を再試行する必要がない。これにより、不揮発性メモリに対するデータチェックで異常が発生しても、再試行によるデータチェック時間を極力短くすることができる。その結果、システムの立ち上げ時およびシステム稼働中に実施するデータチェックにおいて異常が発生しチェック演算を再試行しても、データチェックに与えられた時間内でデータチェックの再試行を極力終了することができる。したがって、特に時間制約が厳しいシステムにおいて、他の制御を遅らせることなく不揮発性メモリに対するデータチェックを実施できる。
請求項2に記載の発明によると、演算手段は使用されるデータを記憶している分割領域だけにチェック演算を実施する。
これにより、不揮発性メモリの未使用領域に対するデータチェックを省略してデータチェックを実施するので、データチェック時間を短縮できる。特に、未使用領域の比率が高い場合に効果的である。
請求項3に記載の発明によると、演算手段は、データチェック終了後の次処理で使用されるデータを記憶している分割領域を選択してチェック演算を実施する。
これにより、時間制約があるために全ての分割領域に対するデータチェックを一度に実施できない場合に、データチェック終了後の次処理で使用されるデータに対してデータチェックを実施できる。例えばシステム立ち上げ時に時間制約がある場合、システム立ち上げ処理で使用されるデータを記憶している分割領域に対してだけチェック演算を実施することにより、制約時間を守ってシステムを立ち上げることができる。
ところで、分割領域に対してチェック演算を所定回数再試行したデータチェック結果が異常の場合、異常原因としては、データチェックを実施される不揮発性メモリを有する電子制御装置のチェック演算自体の異常、該当する分割領域のデータ異常等が考えられる。すなわち、電子制御装置が異常であるとことは判定できるが、異常原因を特定することはできない。
そこで、請求項4に記載の発明によると、再試行手段は、チェック演算として演算手段が第1のチェック演算を実施した結果、判定手段による判定結果が異常である分割領域に対し、チェック演算として第1のチェック演算とは異なる第2のチェック演算を前記演算手段に再試行させる。
このように、第1のチェック演算の結果が異常の場合に第1のチェック演算とは演算種類の異なる第2のチェック演算によりチェック演算を再試行することにより、第1のチェック演算結果が異常であることと、第2のチェック演算の結果とに基づいて、第1のチェック演算の結果の異常原因を特定できる可能性がある。データチェック結果の異常原因が特定できると、異常原因を解析する効率が向上する。
請求項5に記載の発明によると、判定手段は、演算手段による第2のチェック演算の結果が異常である場合、該当する分割領域のデータが異常であると判定し、再試行手段は、演算手段による第2のチェック演算の結果が正常であると判定手段が判定すると、分割領域に対する第1のチェック演算を演算手段に再試行させる。
第1のチェック演算および第2のチェック演算の結果の両方が異常である場合、第1のチェック演算および第2のチェック演算の両方が異常である確率は低いと考えられる。したがって、第1のチェック演算および第2のチェック演算の結果の両方が異常である場合は、不揮発性メモリの該当する分割領域のデータが異常であると特定できる。
また、第2のチェック演算の結果が正常の場合には、該当する分割領域のデータは正常であると考えられる。この場合、1回目に実施した第1のチェック演算自体が異常である可能性が考えられる。そこで、第1のチェック演算によりチェック演算を再試行することにより、1回目の第1のチェック演算の結果の異常原因が、第1のチェック演算自体にあるか否かを判定できる。
請求項6に記載の発明によると、判定手段は、演算手段による第2のチェック演算の結果が正常であり、演算手段により再試行された第1のチェック演算の結果が異常である場合、演算手段による第1のチェック演算が異常であると判定し、演算手段により再試行された第1のチェック演算の結果が正常である場合、該当する分割領域と演算手段による演算とは正常であると判定する。
第2のチェック演算の結果が正常であり、再施行された第1のチェック演算の結果が異常である場合、該当する分割領域のデータは正常であり、第1のチェック演算自体が異常であると特定できる。
また、第2のチェック演算の結果が正常であり、再試行された第1のチェック演算の結果が正常である場合、1回目の第1のチェック演算の結果が異常になったのは、例えばノイズ等の外乱により一時的に異常になったのであり、該当する分割領域のデータと演算手段による演算とは正常であると考えられる。
尚、本発明に備わる複数の手段の各機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、またはそれらの組み合わせにより実現される。また、これら複数の手段の各機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。
第1実施形態によるマイコンを示すブロック図。 ROMの記憶領域の分割状態を示す構成図。 マイコン監視のメインルーチンを示すフローチャート。 マイコン監視処理ルーチンを示すフローチャート。 ROMのデータチェックルーチン1を示すフローチャート。 第2実施形態によるROMのデータチェックルーチン2を示すフローチャート。 第2実施形態による異なるチェック演算の実施結果を示す組み合わせ図。
以下、本発明の実施形態を図に基づいて説明する。
[第1実施形態]
図1に、第1実施形態によるマイクロコンピュータ(以下、「マイコン」ともいう。)10を示す。
(マイコン10)
電子制御装置としてのマイコン10は、CPU20、ROM30、RAM40、レジスタ50、図示しないフラッシュメモリ等を中心として構成されている。マイコン10は、例えば車両に搭載され、車両の燃料噴射弁、ブレーキ、ドア等の制御対象に対する制御を実施する。
CPU20は、ROM30に記憶されている制御プログラムを実行することにより、車両の制御対象に対する制御を実施する。CPU20は、CPU20内のALU(Arithmetic Logic Unit)により加減乗除、論理演算等の各種演算を実施する。
ROM30の記憶領域は、制御プログラムおよび制御プログラムが参照する制御データを記憶している制御部32と、ROM30およびRAM40のデータチェックを実施する監視部34と、未使用の予備36とに大きく分類されている。
RAM40は、制御部32の制御プログラムおよび監視部34の監視プログラムが作業用として使用する記憶領域である。
レジスタ50は、CPU20が特定の目的で使用するか、または演算の作業用に使用する記憶領域である。
(データチェック)
次に、ROM30に記憶されているデータが正常であるか異常であるかをチェックするデータチェックについて説明する。ROM30の記憶領域は、前述した制御部32と監視部34と予備36とによる機能分割とは別に、図2に示すように複数の所定容量の分割領域に分割されている。図2では、ROM30の記憶領域は分割領域A〜分割領域Zに分割されているが、分割数はこれに限るものではない。図2において、予備36は省略されている。
各分割領域の最後に記憶されている調整ワードの値は、調整ワードを含む各分割領域のデータ(以下、「分割領域のデータ」を単に領域データとも言う。)にデータチェック用のチェック演算を実施した場合に予め設定した所定値となるように設定されている。
各領域データが正常であれば、調整ワードを含む領域データに対するチェック演算の演算結果は所定値になるはずである。チェック演算としては加算を使用してもよいし、加算以の減算、乗算、除算および論理演算のいずれを使用してもよい。
(マイコン監視ルーチン)
図3から図5にマイコン監視ルーチンを示す。マイコン10は、ROM30の監視部34に記憶されている監視プログラムをCPU20が実行することにより、演算手段、判定手段、再試行手段として機能する。図3から図5において「S」はステップを表している。図3から図5に示すマイコン監視ルーチンは、システムの立ち上げ時、あるいは、通常制御実行中の所定タイミングで実行される。
(メインルーチン)
図3に示すマイコン監視のメインルーチンでは、S300においてCPU20は、マイコン監視処理を実施する。マイコン監視処理の詳細については図4および図5で説明する。マイコン監視処理の結果、マイコン10が正常であれば(S302:Yes)、S304においてCPU20は、制御部32に記憶されている制御プログラムによる通常制御の実施を許可して本ルーチンを終了する。マイコン10が異常であれば(S302:No)、S306においてCPU20は、マイコン10による車両制御を中止して本ルーチンを終了する。
(マイコン監視処理ルーチン)
図3に示すS300のマイコン監視処理としてCPU20は、図4のS310に示すROM30のデータチェック、S312に示すRAM40のデータチェックを実施する。S310に示すROM30のデータチェックについては後述する。
S312においてCPU20は、RAM40に対して1ワード毎に所定値のデータを書き込み、書き込んだ所定値が正しく読み出せるかを判定することによりRAM40のデータチェックを実施する。
(ROMデータチェックルーチン1)
図4に示すS310で実施されるROM30のデータチェックルーチン1の詳細を図5に示す。図5のデータチェックにおいては、チェック演算として加算を実行する。
尚、本実施形態においては、使用されるデータを記憶しているROM30の分割領域に対してだけデータチェックを実施する。したがって、未使用領域であるROM30の予備36、ならびに制御部32および監視部34においても未使用の分割領域があればデータチェックの対象から除外される。各分割領域の使用または未使用は、各分割領域に対応するフラグ等で示される。
また、ROM30のデータチェックは、設定された時間内で全ての使用分割領域に対して実施できるのであれば、図5に示すルーチンで一度に実施してもよいし、設定時間内で一部の使用分割領域だけしかデータチェックを実施できないのであれば、複数回に分けて実施すればよい。分割領域に対してデータチェックを実施済みか未実施であるかは、各分割領域に対応するフラグ等で示される。
ここで、時間制約があるために全ての分割領域のデータチェックを一度に実施できない場合には、データチェック終了後の次処理で使用されるデータを記憶している分割領域を選択してデータチェックを実施することが望ましい。例えばシステム立ち上げ時に時間制約がある場合、システム立ち上げ処理で使用されるデータを記憶している分割領域に対してだけチェック演算を実施することにより、制約時間を守ってシステムを立ち上げることができる。
システムが立ち上がると、立ち上げ時にデータチェックを実施しなかった分割領域に対して順次データチェックを実施すればよい。システム立ち上げ以降のデータチェックに対しても、時間制約がある場合には、データチェック終了後の次処理で使用されるデータを記憶している分割領域を選択してデータチェックを実施することが望ましい。
まず、図5のS320においてCPU20は、ROM30の全領域に対するデータチェックが完了したかを判定する。この場合、ROM30の予備36に対しては、予めデータチェックの対象から除外するように設定されていてもよい。
データチェックにより異常が発生せず、全領域に対するチェックが完了すると(S320:Yes)、今回のROM30に対するデータチェックは正常に終了したと判断し(S322)、CPU20は本ルーチンを終了する。S320で判定対象とする全領域は、今回のデータチェック時間内で実施する分割領域を対象とする。したがって、ROM30の全ての使用分割領域がチェック対象になる場合もあるし、設定時間内でデータチェックを実施できる一部の使用分割領域がチェック対象になる場合もある。
全領域に対するチェックが完了していない場合(S320:No)、S324においてCPU20は、次の分割領域が今回のデータチェックの対象領域であるかをフラグ等に基づいて判定する。次の分割領域が今回のデータチェックの対象領域でなければ(S324:No)、CPU20は、次の分割領域に進み(S326)、S320の判定を実施する。
次の分割領域が今回のデータチェックの対象領域であれば(S324:Yes)、S328においてCPU20は、データチェック中の分割領域の調整ワードを含む加算が全て終了したかを判定する。分割領域の加算がまだ終了していない場合(S328:No)、CPU20は分割領域内の次のROMデータを加算し(S330)、S328の判定を実施する。
分割領域内の加算が全て終了した場合(S328:Yes)、S332においてCPU20は、分割領域の調整ワードを含む加算値が予め設定しておいた所定値に一致するかを判定する。加算値が所定値に一致する場合(S332:Yes)、CPU20はS326に処理を移行し、次の分割領域に対してデータチェックを実施する。加算値が所定値に一致しない場合(S332:No)、S334においてCPU20は、2回連続して不一致であるかを判定する。不一致が1回目の場合(S334:No)、CPU20は加算結果をクリアし(S338)、同じ分割領域に対してデータチェックを再試行するためにS328に処理を移行する。この場合、加算値が所定値に一致しない分割領域に対してだけデータチェックを再試行する。
2回連続して不一致の場合(S334:Yes)、CPU20は、ROM30のデータが異常であると判断し(S336)、本ルーチンを終了する。尚、データチェックを再試行した結果、ROM30のデータが異常であると判断するときの連続した不一致回数は、2回に限らず3回以上でもよい。
図5のフローチャートにおいて、S320〜S330は演算手段としてのマイコン10の機能に相当し、S332〜S336は判定手段としてのマイコン10の機能に相当し、S334およびS338は再試行手段としてのマイコン10の機能に相当する。
第1実施形態では、各分割領域の加算結果が所定値になるように値を設定した調整ワードを分割領域毎に設けた。これに対し、調整ワードを分割領域に設けず、分割領域毎にデータを加算した結果が、予め分割領域毎に加算しておいた値と一致するか否かを判定してもよい。
[第2実施形態]
図4に示すS310で実施される第2実施形態によるROM30のデータチェックルーチン2の詳細を図6に示す。第1実施形態では、分割領域に対し、チェック演算として1種類の加算を実施した。これに対し、第2実施形態では、分割領域に対する1回目のチェック演算の結果が異常である場合、該当する分割領域に対して第1のチェック演算とは異なる第2のチェック演算によりチェック演算を再試行する。第2実施形態では、第1のチェック演算として加算を実施し、第2のチェック演算として減算を実施する。また、第2実施形態では、調整ワードを分割領域に設けず、分割領域毎にチェック演算を実施した結果が、予め分割領域毎にチェック演算を実施しておいた値と一致するか否かを判定する。
(ROMデータチェックルーチン2)
図6のS340〜SS350は、図5のS320〜SS330と実質的に同一処理であるから説明を省略する。
S352においてCPU20は、分割領域の加算値が予め設定しておいた所定値に一致するかを判定する。加算値が所定値に一致する場合(S352:Yes)、CPU20はS346に処理を移行し、次の分割領域に対してデータチェックを実施する。加算値が所定値に一致しない場合(S352:No)、S354においてCPU20は、加算結果をクリアする。
S356においてCPU20は、第1のチェック演算として1回目の加算の結果が異常である分割領域に対して、第2のチェック演算である減算が全て終了したかを判定する。分割領域の減算がまだ終了していない場合(S356:No)、CPU20は分割領域内の次のROMデータを減算し(S358)、S356の判定を実施する。
分割領域内の減算が全て終了した場合(S356:Yes)、S360においてCPU20は、分割領域の減算値が予め設定しておいた所定値に一致するかを判定する。
減算値が所定値に一致しない場合(S360:No)、つまり分割領域に対して実施した加算および減算の結果がともに異常である場合、S362においてCPU20は、図7に示すように、ROM30の該当する分割領域のデータが異常であると判定する。
減算値が所定値に一致する場合(S360:Yes)、CPU20は、S364において減算結果をクリアし、S366において、減算結果が異常であった分割領域に対して、2回目の加算が全て終了したかを判定する。分割領域に対して2回目の加算がまだ終了していない場合(S366:No)、CPU20は分割領域内の次のROMデータを加算し(S368)、S366の判定を実施する。
分割領域に対して2回目の加算が全て終了した場合(S366:Yes)、S370においてCPU20は、分割領域の加算値が予め設定しておいた所定値に一致するかを判定する。
2回目の加算値が所定値に一致しない場合(S370:No)、つまり、1回目の加算結果が異常であり、次に実施した減算結果が正常であり、2回目の加算結果が異常の場合、S372においてCPU20は、図7に示すように第1のチェック演算である加算が異常であると判定する。この場合、CPU20内のALUの加算機能が異常であると考えられる。
2回目の加算値が所定値に一致する場合(S370:Yes)、つまり、1回目の加算結果が異常であり、次に実施した減算結果が正常であり、2回目の加算結果が正常の場合、CPU20は、図7に示すように、1回目の加算結果が異常であったのはノイズ等の一時的な外乱が原因であると判断し、該当する分割領域に対するデータチェックは正常であると判定する。すなわち、CPU20は、該当する分割領域のデータ、ならびにCPU20によるチェック演算である加算および減算は正常であると判定する。すなわち、そして、CPU20は、S340に処理を移行する。
第2実施形態では、第1のチェック演算として1回目の加算による結果が異常の場合、同じ加算によりチェック演算を再試行するのではなく、加算と異なる減算を第2のチェック演算としてチェック演算の再試行を実施する。さらに、減算結果が正常の場合には、さらに2回目の加算をチェック演算として再試行する。
このように第2実施形態では、演算種類の異なる第1のチェック演算と第2のチェック演算とを組み合わせて実施することにより、該当する分割領域に対して実施したデータチェックの最終結果が異常の場合、第1のチェック演算の結果と第2のチェック演算の結果とに基づいて、データチェックの異常原因を特定できる。これにより、データチェックの異常原因を解析する効率が向上する。
図6のフローチャートにおいて、S340〜S350、S356、S358、S366、S368は演算手段としてのマイコン10の機能に相当し、S352、SS360、S362、S370、S372は判定手段としてのマイコン10の機能に相当し、S352〜S358、S360、S364〜S368は再試行手段としてのマイコン10の機能に相当する。
以上説明した上記実施形態では、分割領域に対するデータチェック結果が異常の場合には、異常であった分割領域に対してだけデータチェックを再試行する。これにより、時間制約が厳しいシステムにおいて、再試行によるデータチェック時間を極力短くすることができる。その結果、システムの立ち上げ時およびシステム稼働中に実施するデータチェックにおいて異常が発生しデータチェックを再試行しても、データチェックに与えられた時間内でデータチェックの再試行を極力終了することができる。したがって、特に時間制約が厳しいシステムにおいて、他の制御を遅らせることなく不揮発性メモリに対するデータチェックを実施できる。
また、1回のチェック演算の結果が異常であってもROMデータの異常であると判定せずチェック演算を何回か再試行するので、データチェックの異常判定の精度が向上する。
[他の実施形態]
上記実施形態では、不揮発性メモリとしてROMに対するデータチェックを実施した。これに対し、フラッシュメモリ等の書換え可能な不揮発性メモリに対してデータチェックを実施してもよい。書換え可能な不揮発性メモリに対してデータチェックを実施する場合、プログラムの更新等、書換えの頻度が低い書換え可能な不揮発性メモリに対してデータチェックを実施することが望ましい。
また、上記実施形態では、使用されるデータが記憶されているROM30の分割領域だけをデータチェックの対象とした。これに対し、未使用の分割領域を含め、ROM30の全ての記憶領域に対してデータチェックを実施してもよい。この場合、未使用の分割領域には所定値のデータが記憶されている。
第2実施形態では、1回目の加算結果が異常であり、次に実施する減算結果が正常の場合、2回目の加算を実施した。これに対し、1回目の加算結果が異常であり、次に実施する減算結果が正常の場合、2回目の加算を実施せず、加算が異常であると判定してもよい。
上記実施形態では、演算手段、判定手段、再試行手段の機能を、監視プログラムにより機能が特定されるマイコン10により実現している。これに対し、上記複数の手段の機能の少なくとも一部を、回路構成自体で機能が特定されるハードウェアで実現してもよい。
このように、本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。
10:マイクロコンピュータ(電子制御装置、演算手段、判定手段、再試行手段)、20:CPU、30:ROM(不揮発性メモリ)

Claims (6)

  1. 所定のデータを記憶しており、記憶領域が複数の分割領域に分割されている不揮発性メモリと、
    前記不揮発性メモリに記憶されているデータが正常であるか異常であるかをチェックするためのチェック演算を前記分割領域毎に実施する演算手段と、
    前記演算手段による前記チェック演算の結果が正常であるか異常であるかを判定する判定手段と、
    前記判定手段による判定結果が異常である前記分割領域に対してだけ前記演算手段に前記チェック演算の再試行を所定回数実施させる再試行手段と、
    を備えることを特徴とする電子制御装置。
  2. 前記演算手段は、使用されるデータを記憶している前記分割領域だけに前記チェック演算を実施することを特徴とする請求項1に記載の電子制御装置。
  3. 前記演算手段は、データチェック終了後の次処理で使用されるデータを記憶している前記分割領域を選択して前記チェック演算を実施することを特徴とする請求項1または2に記載の電子制御装置。
  4. 前記再試行手段は、前記演算手段が前記チェック演算として第1のチェック演算を実施した結果、前記判定手段による判定結果が異常である前記分割領域に対し、前記チェック演算として前記第1のチェック演算とは異なる第2のチェック演算を前記演算手段に再試行させることを特徴とする請求項1から3のいずれか一項に記載の電子制御装置。
  5. 前記判定手段は、前記分割領域に対する前記演算手段による前記第2のチェック演算の結果が異常である場合、該当する前記分割領域のデータが異常であると判定し、
    前記再試行手段は、前記演算手段による前記第2のチェック演算の結果が正常であると前記判定手段が判定すると、前記分割領域に対する前記第1のチェック演算を前記演算手段に再試行させる
    ことを特徴とする請求項4に記載の電子制御装置。
  6. 前記判定手段は、前記分割領域に対する前記演算手段による前記第2のチェック演算の結果が正常であり、前記演算手段により再試行された前記第1のチェック演算の結果が異常である場合、前記演算手段による前記第1のチェック演算が異常であると判定し、前記演算手段により再試行された前記第1のチェック演算の結果が正常である場合、該当する前記分割領域と前記演算手段による演算とは正常であると判定することを特徴とする請求項5に記載の電子制御装置。
JP2009003584A 2009-01-09 2009-01-09 電子制御装置 Active JP4645741B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009003584A JP4645741B2 (ja) 2009-01-09 2009-01-09 電子制御装置
US12/652,220 US8352814B2 (en) 2009-01-09 2010-01-05 Electronic control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009003584A JP4645741B2 (ja) 2009-01-09 2009-01-09 電子制御装置

Publications (2)

Publication Number Publication Date
JP2010160737A JP2010160737A (ja) 2010-07-22
JP4645741B2 true JP4645741B2 (ja) 2011-03-09

Family

ID=42319883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009003584A Active JP4645741B2 (ja) 2009-01-09 2009-01-09 電子制御装置

Country Status (2)

Country Link
US (1) US8352814B2 (ja)
JP (1) JP4645741B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5285720B2 (ja) * 2011-01-31 2013-09-11 京楽産業.株式会社 遊技機
JP5635941B2 (ja) * 2011-04-22 2014-12-03 日立オートモティブシステムズ株式会社 自動車用電子制御装置
JP5821445B2 (ja) * 2011-09-09 2015-11-24 富士通株式会社 ディスクアレイ装置及びディスクアレイ装置制御方法
JP5923034B2 (ja) * 2012-12-27 2016-05-24 大陽日酸株式会社 メモリの動作確認装置および動作確認方法
US9990278B2 (en) 2014-10-20 2018-06-05 Cypress Semiconductor Corporation Overlaid erase block mapping
CN108153611B (zh) * 2018-01-10 2021-02-23 芜湖美的厨卫电器制造有限公司 故障自检方法、故障自检装置、微控制器和可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0742609A (ja) * 1993-07-28 1995-02-10 Nippondenso Co Ltd 車両用制御装置のメモリチェック装置
JPH1139231A (ja) * 1997-07-17 1999-02-12 Unisia Jecs Corp 車両用電子制御装置
JP2006195739A (ja) * 2005-01-13 2006-07-27 Denso Corp 電子制御装置
JP2006268266A (ja) * 2005-03-23 2006-10-05 Mitsubishi Electric Corp コントロールユニット

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55128641A (en) * 1979-03-23 1980-10-04 Nissan Motor Co Ltd Controlling system for vehicle
JP2553732B2 (ja) 1990-04-16 1996-11-13 松下電器産業株式会社 電子燃料噴射装置
US5867505A (en) * 1996-08-07 1999-02-02 Micron Technology, Inc. Method and apparatus for testing an integrated circuit including the step/means for storing an associated test identifier in association with integrated circuit identifier for each test to be performed on the integrated circuit
JP3867862B2 (ja) * 1997-04-16 2007-01-17 株式会社ルネサステクノロジ 半導体集積回路およびメモリの検査方法
JPH10299565A (ja) 1997-04-21 1998-11-10 Unisia Jecs Corp 車両用電子制御ユニットの自己診断装置
JPH11316259A (ja) 1998-04-30 1999-11-16 Toshiba Corp 半導体試験装置およびこれを用いた半導体試験方法
US6216226B1 (en) * 1998-10-02 2001-04-10 International Business Machines Corporation Method and system for dynamically selecting a boot process within a data processing system
JP2000207897A (ja) 1999-01-12 2000-07-28 Nec Corp 電気的書換可能な不揮発性メモリのテスト方法および電気的書換可能な不揮発性メモリのテストプログラムを記録した情報記録媒体
US6370661B1 (en) * 1999-04-26 2002-04-09 Ip-First, Llc Apparatus for testing memory in a microprocessor
US6715116B2 (en) * 2000-01-26 2004-03-30 Hewlett-Packard Company, L.P. Memory data verify operation
US7143321B1 (en) * 2000-04-29 2006-11-28 Hewlett-Packard Development Company, L.P. System and method for multi processor memory testing
JP2004133635A (ja) 2002-10-09 2004-04-30 Honda Motor Co Ltd 制御用コンピュータ
US7162625B2 (en) * 2003-03-10 2007-01-09 Dell Products L.P. System and method for testing memory during boot operation idle periods
US7383492B2 (en) * 2003-03-20 2008-06-03 Emc Corporation First-in/first-out (FIFO) information protection and error detection method and apparatus
US7356744B2 (en) * 2005-05-12 2008-04-08 Pc-Doctor, Inc. Method and system for optimizing testing of memory stores

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0742609A (ja) * 1993-07-28 1995-02-10 Nippondenso Co Ltd 車両用制御装置のメモリチェック装置
JPH1139231A (ja) * 1997-07-17 1999-02-12 Unisia Jecs Corp 車両用電子制御装置
JP2006195739A (ja) * 2005-01-13 2006-07-27 Denso Corp 電子制御装置
JP2006268266A (ja) * 2005-03-23 2006-10-05 Mitsubishi Electric Corp コントロールユニット

Also Published As

Publication number Publication date
US8352814B2 (en) 2013-01-08
JP2010160737A (ja) 2010-07-22
US20100180167A1 (en) 2010-07-15

Similar Documents

Publication Publication Date Title
JP4645741B2 (ja) 電子制御装置
CN101782871B (zh) 信息处理装置、处理器及存储器管理方法
CN102750191B (zh) 用于启动固态非易失性存储设备内的刷新操作的方法
CN110352407A (zh) 纠错码存储器
CN107077407B (zh) 车辆控制装置
JP4227149B2 (ja) 電子制御装置の情報記憶方法
US8484520B2 (en) Processor capable of determining ECC errors
JP6658417B2 (ja) 電子制御装置
US9721665B2 (en) Data writing method and system
JP2011008702A (ja) 故障処理装置
JP6183251B2 (ja) 電子制御装置
JP2015184796A (ja) 電子制御装置及びメモリ診断方法
JP5978873B2 (ja) 電子制御装置
US10866867B2 (en) Method of error correction in a flash memory
JP2012226674A (ja) 自動車用電子制御装置
JP2009083777A (ja) 車両制御装置およびプログラム
CN111352754A (zh) 一种数据存储检错纠错方法及数据存储装置
JP2000181806A (ja) 半導体装置およびその故障救済方法
JP2006291720A (ja) 制御装置
CN110838314A (zh) 一种存储数据的加固方法及装置
JP2011100416A (ja) 車載電子制御装置およびメモリ制御方法
JP4639920B2 (ja) 電子制御装置
JP2006155735A (ja) 記憶装置
JP2000276366A (ja) データ処理装置、そのデータ処理方法
JP6358122B2 (ja) マイクロコンピュータ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100531

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101109

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101122

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4645741

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250