(57)【特許請求の範囲】
【請求項１】
車両が搭載している機器を制御する車載制御装置であって、
前記機器を制御するための制御演算を実施可能な演算回路、
前記演算回路が使用するデータを一時的に記憶可能な記憶装置、
前記記憶装置に対して供給される駆動電流の値を測定可能な電流測定回路、
を備え、
前記演算回路は、前記電流測定回路から取得した前記駆動電流の値に基づき前記記憶装置が正常であるか否かを診断する、
ことを特徴とする車載制御装置。
【請求項２】
前記演算回路は、前記記憶装置の隣接するメモリセルに対して互いに異なるビット値を書き込むことにより、前記隣接するメモリセルが互いに異なる電位となるようにした状態で、前記診断を実施する、
ことを特徴とする請求項１記載の車載制御装置。 
【請求項３】
前記演算回路は、前記電流測定回路から取得した前記駆動電流の値が判定閾値を超えているか否かに基づき前記記憶装置が正常であるか否かを診断する
ことを特徴とする請求項１記載の車載制御装置。
【請求項４】
前記演算回路は、前記記憶装置の診断領域を故障と判断した場合、前記記憶装置の診断領域に格納されたデータを、あらかじめ用意した前記記憶装置の空き領域に格納し、前記記憶装置の診断領域のアドレスを、前記記憶装置の空き領域のアドレスへ置換する、
ことを特徴とする請求項１記載の車載制御装置。
【請求項５】
警告メッセージを表示する表示装置を備え、
前記演算回路は、前記診断により前記記憶装置を故障と判断し、あらかじめ用意した前記記憶装置の空き領域が故障セルのデータで置換済みの場合、前記記憶装置が故障である旨の警告メッセージを前記表示装置に表示させるとともに、所定のフェールセーフ処理を実施する、
ことを特徴とする請求項１記載の車載制御装置。
【請求項６】
前記車載制御装置は、前記記憶装置に対してのみ電力を供給する電源回路を備え、
前記電流測定回路は、前記電源回路が前記記憶装置に対して供給する前記駆動電流を測定する、
ことを特徴とする請求項１記載の車載制御装置。
【請求項７】
ＣＰＵ、ＲＡＭを含む第１マイクロコンピュータと、
前記ＣＰＵへ第１電源を供給するための第１電源配線と、
前記ＲＡＭへ第２電源を供給するための第２電源配線と、
前記第１電源配線に結合された第１電源回路と、
前記第２電源配線に結合された第２電源回路と、
前記第２電源配線に結合され、前記ＲＡＭの駆動電流の値を測定可能な電流測定回路と、
前記電流測定回路に結合された第２マイクロコンピュータと、
を含み、
前記第２マイクロコンピュータは、前記電流測定回路から取得した前記駆動電流の値に基づき前記ＲＡＭが正常であるか異常であるかを診断し、診断結果を前記ＣＰＵへ送付する車載制御装置。
【請求項８】
不揮発性メモリを、さらに、含み、
前記ＲＡＭは、アドレスによって判別され、それぞれが診断対象とされる複数の記憶領域を含み、
前記ＣＰＵは、前記不揮発性メモリへ前記診断結果と次回に診断対象とされるべき記憶領域のアドレスとを格納する、
ことを特徴とする請求項７記載の車載制御装置。
【請求項９】
前記ＣＰＵは、前記診断に際し、前記診断対象とされるべき記憶領域内に格納されたデータを前記ＲＡＭに設けられた退避領域へ格納した後、前記診断対象とされるべき記憶領域へ診断用データの書き込みを行い、前記診断用データが前記診断対象とされるべき記憶領域に書き込まれた状態で、前記第２マイクロコンピュータへ前記電流測定回路による前記ＲＡＭの前記駆動電流の値の測定を指示する、
ことを特徴とする請求項８記載の車載制御装置。
【請求項１０】
前記診断用データは、前記ＲＡＭの隣接するメモリセルに互いに異なるビット値を設定する、
ことを特徴とする請求項９記載の車載制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両が搭載する機器を制御する車載制御装置に関する。
【背景技術】
【０００２】
車両が搭載している機器を制御する車載制御装置（Ｖｉｃｈｏｌｅ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）としての車載用電子制御装置（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）は、制御演算を実施するマイクロコンピュータ(以下、マイコンと称す)を備える。マイコンは、一般的に、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを備える。ＲＡＭは、ＣＰＵが制御演算に使用するデータを一時的に記憶する記憶装置である。ＲＡＭが故障すると、ＲＡＭへの書き込みデータ及びＲＡＭからの読み出しデータが不適なデータとなるため、ＣＰＵの制御演算に不具合が生じ、所望の制御演算を実施することが困難となってしまう。そのため、車載制御装置はＲＡＭを診断する機能を備える。【０００３】
下記特許文献１は、ＲＡＭの故障を診断する手法を記載している。同文献においては、所定診断タイミング毎に、診断対象のＲＡＭ領域に対して所定の値を書き込み、その値を読み出すことを繰り返し実施する。書き込んだ値と読み出した値が一致しない場合、ＲＡＭが故障していると判断し、自動車が危険な状態に陥らないようにフェールセーフ処理を実施する。【０００４】
なお、フェールセーフ処理の一例には、ＲＡＭの故障による誤った制御を防止するため、ドライバーの操縦指示による変速制御は無効とし、変速比を固定とすることにより、リンプホーム運転が可能となるような安全制御を実施するものがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−１３７５０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献１が記載しているＲＡＭ診断方法は、ＲＡＭを構成するメモリセル（１ビットのデータを記憶する記憶素子）が完全に故障し、所望の値をライトもしくはリードすることが完全に不可能となるに至った場合は、ＲＡＭの故障を検知することができる。しかしながら、完全に故障していないものの、将来、故障となるポテンシャルを持つメモリセルの検出は不可能と考えられる。【０００７】
車載制御装置に利用されるマイコンは、一般的に、半導体製造メーカにより加速試験や最終テストを実施され、故障の無い状態と判断されて、車載制御装置の製造メーカへ出荷される。しかしながら、車載制御装置のマイコンが備えるＲＡＭは、半導体製造工程において混入した異物により隣接するトランジスタ間や配線間の短絡（ショート）や長期使用による経年劣化による不良などが原因となり、車両の走行中に故障する可能性が少なからず存在する。【０００８】
一般的に知られているＲＡＭの故障モードとしては、例えば、以下のものがある。これらの故障モードが１つでも発生した場合、故障したメモリセルには、期待する値をライトもしくはリードすることが不可能となる。
（故障その１）メモリセルの値が「０」または「１」に固定される縮退故障。
（故障その２）あるメモリセルが格納している値が変化するのと連動して他のメモリセルの値も変化するカプリング故障。
（故障その３）メモリアドレスを正しく選択できないアドレスデコーダ故障。
（故障その４）あるメモリセルに隣接する上下左右に配置されたメモリセルが記憶している値の影響を受けて、当該メモリセルが記憶している値も変化する、パターンセンシティブ故障。【０００９】
たとえば、半導体製造工程において、異物がメモリセル上に付着し、その異物が経年使用により何らかの原因で移動して隣接するメモリセル間に付着した場合、その隣接するメモリセルが異物により短絡し、ＲＡＭの故障を引き起こす場合がある。ただし、メモリセル間の短絡状態によっては、短絡によって生じる電位変動が故障と判断される判定閾値に至らない程度にとどまる場合がある。この場合、メモリセル間に短絡故障が生じていたとしても、書き込んだ値と同じ値を読み出すことができる。上記特許文献１に記載の診断手法は、このような故障を検出することは開示されていない。【００１０】
他方、このようなメモリセル間の短絡故障を放置すると、短絡状態が経年使用により進行し、メモリセル間が完全に短絡し、ＲＡＭの故障として診断されることになると想定される。このように将来ＲＡＭの故障として顕出する潜在的な故障は、できる限り早い時点で検出することが望ましい。【００１１】
本発明は、上記のような課題に鑑みてなされたものであり、記憶装置の故障の予兆を検出し、記憶装置の正常な状態を可能なかぎり継続可能な車載制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る車載制御装置は、演算回路（１１１）と、前記演算回路による制御演算に使用されるデータを一時的に記憶する記憶装置（１１３）と、前記記憶装置の駆動電流を測定可能な電流測定回路（１５０）とを備える。前記演算回路は、前記電流測定回路から取得した前記駆動電流の値に基づき前記記憶装置の診断を実施する。
【発明の効果】
【００１３】
本発明に係る車載制御装置によれば、現時点では記憶装置（ＲＡＭ）に対して正常にデータを読み書きできるものの、将来的に故障する可能性があるような記憶装置の故障の予兆を、早期の段階で検出することができる。
【図面の簡単な説明】
【００１４】
【図１】車載制御装置１００の構成図である。
【図２Ａ】ＲＡＭ１１３に対してチェッカーデータを書き込んだとき各メモリセルが格納しているビット値を模式的に示す一例の図である。
【図２Ｂ】ＲＡＭ１１３に対してチェッカーデータを書き込んだとき各メモリセルが格納しているビット値を模式的に示す他の一例の図である。
【図２Ｃ】ＲＡＭ１１３に対してチェッカーデータを書き込んだとき各メモリセルが格納しているビット値を模式的に示す他の一例の図である。
【図３Ａ】車載制御装置１００がスタートアップするときメインマイコン１１０がＲＡＭ１１３を診断する手順の一例を説明するフローチャートである。
【図３Ｂ】図３Ａのフローチャートに続くフローチャートである。
【図４】車載制御装置１００がスタートアップするときサブマイコン１２０がＲＡＭ１１３の駆動電流を診断する手順の一例を説明するフローチャートである。
【図５Ａ】車載制御装置１００がシャットダウンするときメインマイコン１１０がＲＡＭ１１３を診断する手順の一例を説明するフローチャートである。
【図５Ｂ】図５Ａのフローチャートに続くフローチャートである。
【図６】車載制御装置１００がシャットダウンするときサブマイコン１２０がＲＡＭ１１３を診断する手順の一例を説明するフローチャートである。
【図７Ａ】車載制御装置１００が、車両走行中に、メインマイコン１１０がＲＡＭ１１３を診断する手順の一例を説明するフローチャートである。
【図７Ｂ】図７Ａのフローチャートに続くフローチャートである。
【図８】車載制御装置１００が、車両走行中に、サブマイコン１２０がＲＡＭ１１３を診断する手順の一例を説明するフローチャートである。
【図９】ＲＡＭ１１３が有する記憶領域を示すアドレス図である。
【図１０】ＲＡＭ１１３がスタティックランダムアクセスメモリ（ＳＲＡＭ）の場合のメモリセルの回路図である。
【図１１】図１０のメモリセルの一例のレイアウト図である。
【図１２】図１１のメモリセルのレイアウト配置を、行列状に配置した場合の模式図である。
【図１３】スタティックランダムアクセスメモリ（ＳＲＡＭ）の模式的なブロック図である。
【発明を実施するための形態】
【００１５】
本発明に係る車載制御装置は、図１に示されるように、機器を制御するための制御演算を実施する演算回路（ＣＰＵ）１１１と、前記演算回路が使用するデータを一時的に記憶するメモリ（記憶装置、ＲＡＭ）１１３と、前記メモリ１１３に対して供給される駆動電流を測定可能な電流測定回路１５０と、を備える。前記演算回路１１１は、前記電流測定回路１５０から取得した前記駆動電流の値に基づき、前記メモリ１１３が正常であるか否かを診断する。
【００１６】
本発明に係る車載制御装置は、前記電流測定回路１５０を設けることにより、メモリ１１３が完全に故障する前に、故障の予兆を捉えることが可能である。故障の予兆を捉えるため、メモリ１１３の隣接するメモリセルに対し、例えば、互いに異なるビット値がチェック用の書込みデータ（以下、チェッカーデータと称す）として書き込まれる。そして、チェッカーデータの書き込まれた状態において、メモリ１１３の駆動電流が電流測定回路１５０により計測される。計測されたＲＡＭの駆動電流の値とあらかじめ設定された判定閾値とが比較され、メモリ１１３の状態が診断される。前記判定閾値を超える様な駆動電流が流れるメモリセルは、完全に故障していないものの、将来的に故障となるポテンシャルを持つメモリセルと見做される。すなわち、故障の予兆があるメモリセルと見做される。そして、将来的に故障となるポテンシャルを持つメモリセルを含む記憶領域のアドレスは、そのメモリセルが完全に故障する前に、メモリ１１３の空き領域（未使用の記憶領域または未使用領域）内に、あらかじめ確保されている正常なメモリセルを含む記憶領域のアドレスへと置換される。
【００１７】
本発明に係る車載制御装置によれば、現時点ではメモリ１１３に対して正常にデータを読み書きできるが将来的に故障する可能性があるようなメモリ１１３の故障を、早期の段階で検出することができる。将来的に故障となるポテンシャルを持つメモリセルが完全に故障する前に、そのメモリセルを含む記憶領域のアドレスが、メモリ１１３の空き領域にあらかじめ確保された正常なメモリセルを含む記憶領域のアドレスへと置換される。そのため、車両走行中におけるメモリ１１３の故障を未然に防ぐことができる。したがって、車両走行中に、メモリ１１３の故障が原因により発生するドライバーの意図に反したエンジンやトランスミッション等のアクチュエータの誤動作、および、その誤動作に起因する車両の意図しない挙動を防ぐことが可能である。車両走行中に、ＲＡＭが故障し、フェールセーフ処理に移行する制御が行われ、運転性能が低下することを可能な限り防ぐことができる。
【００１８】
また、現時点では壊れておらず、将来壊れそうなメモリセルを事前に検知して、そのメモリセルを含む記憶領域を使わない様にし、別途確保していた正常なメモリセルを含む未使用の記憶領域を使用して、本発明に係る車載制御装置により車載制御処理を継続させる。そのため、市場でのメモリ（ＲＡＭ）１１３の故障による車載制御装置のユニット交換の減少、顧客からの車載制御装置のクレーム品としての返却品の数の減少、および、車載制御装置の不良解析の削減が見込まれ、車載制御装置の信頼性が向上する。
【００１９】
以下、図面を用いてより詳細に説明する。ただし、以下の説明において、同一構成要素には同一符号を付し繰り返しの説明を省略することがある。なお、図面は説明をより明確化するため、実際の態様に比べ、各部の幅、形状などについて模式的に表される場合があるが、あくまでも一例であって、本発明の解釈を限定するものではない。
【００２０】
図１は、本発明に係る車載制御装置１００の構成図である。車載制御装置１００は、車両が搭載する車載機器（例えば、自動変速機、エンジンなど）を電子的に制御する車載用電子制御装置（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）である。車載制御装置１００は、メインマイクロマイクロコンピュータ(以下、メインマイコンと称す)１１０、サブマイクロマイクロコンピュータ(以下、サブマイコンと称す)１２０、メイン電源ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）１３０、サブ電源ＩＣ１４０、電流測定回路１５０、外部メモリ１６０を備える。
【００２１】
メインマイコン１１０は、車両が搭載する車載機器を制御するマイクロコンピュータ（第１マイクロコンピュータ）である。メインマイコン１１０は、例えば、アクチュエータ２３０を制御することによって車載機器を制御する。また、表示装置２４０を介してメッセージを表示することができる。メッセージは、例えば文字や画像などのメッセージ、ランプ点灯による通知など、任意の形態のものを用いることができる。
【００２２】
メインマイコン１１０は、中央処理装置（ＣＰＵ）１１１、リートオンリメモリ（ＲＯＭ）１１２、ランダムアクセスメモリ（ＲＡＭ）１１３を備える。ＣＰＵ１１１は、車載機器を制御するために必要な制御演算を実施する演算装置（演算回路）である。ＲＯＭ１１２は、ＣＰＵ１１１が実行するプログラム（例えば、後述の図３Ａ〜図８で説明される診断処理のプログラム）などを格納する。ＲＡＭ１１３は、ＣＰＵ１１１が使用するデータを一時的に格納する。
【００２３】
サブマイコン１２０は、メインマイコン１１０と同様の構成を備えるマイクロコンピュータ（第２マイクロコンピュータ）であり、その説明は省略される。サブマイコン１２０は、メインマイコン１１０からのリクエストないし指示に従って、ＲＡＭ１１３が正常であるか否かを診断し、その診断の結果をメインマイコン１１０に対して通知する処理を実行可能である。
【００２４】
車載制御装置１００は、車両が搭載するバッテリ２２０から電力の供給を受ける。メイン電源ＩＣ（メイン電源回路）１３０は、バッテリ２２０から受け取った電力ＶＢを降圧ないし昇降圧し、メインマイコン１１０に対して供給する。サブ電源ＩＣ（サブ電源回路）１４０も同様に、バッテリ２２０から受け取った電力を降圧ないし昇降圧し、サブマイコン１２０に対して供給する。
【００２５】
メイン電源ＩＣ１３０は、ＣＰＵ１１１、ＲＯＭ１１２、ＲＡＭ１１３のそれぞれに対して個別に電力（電源）ＶＢ１，ＶＢ２，ＶＢ３を供給可能なように、内部的に電源回路が３つに切り分けられている。すなわち、メイン電源ＩＣ１３０は、ＣＰＵ１１１の第１電源ＶＢ１を生成する第1電源回路ＶＧ１、ＲＯＭ１１２の第２電源ＶＢ２を生成する第２電源回路ＶＧ２、および、ＲＡＭ１１３の第３電源ＶＢ３を生成する第３電源回路ＶＧ３を含む。これは後述するように、ＲＡＭ１１３に対して供給する駆動電流がＣＰＵ１１１やＲＯＭ１１２の駆動電流の変動によって受ける影響を抑制するためである。第1電源回路ＶＧ１から発生された第１電源ＶＢ１は、電源配線（電源パス）Ｌ１を介してＣＰＵ１１１へ供給される。第２電源回路ＶＧ２から発生された第２電源ＶＢ２は、電源配線（電源パス）Ｌ２を介してＲＯＭ１１２へ供給される。第３電源回路ＶＧ３から発生された第３電源ＶＢ３は、電源配線（電源パス）Ｌ３を介してＲＡＭ１１３へ供給される。
【００２６】
電流測定回路１５０は、メイン電源ＩＣ１３０からＲＡＭ１１３に対して供給される駆動電流の値を測定し、その測定結果をサブマイコン１２０に対して出力する。サブマイコン１２０はその測定結果を用いて後述する手順によりＲＡＭ１１３を診断する。サブマイコン１２０が診断を実施する理由については後述する。電流測定回路１５０の回路構成は、具体的に記載されないが、種々の回路構成が適用可能であることは、当業者には容易に理解されるであろう。測定結果は、アナログ信号としてサブマイコン１２０へ出力してもよいし、デジタル信号としてサブマイコン１２０へ出力してもよい。測定結果をデジタル信号として出力する場合、電流測定回路１５０はアナログ・デジタル変換回路ＡＤＣを含むように構成される。一方、測定結果をアナログ信号として出力する場合、サブマイコン１２０はアナログ・デジタル変換回路ＡＤＣを含むように構成される。測定結果をデジタル信号として出力する場合の方が、アナログ信号として出力する場合と比較して、車載制御装置１００内で発生する電源などのノイズに対する影響に強い。
【００２７】
車両の運転者がイグニッションキーをＯＮ／ＯＦＦすると、これにともなって電源信号２１０が生成される。車載制御装置１００は、電源信号２１０にしたがってスタートアップ／シャットダウンする。メイン電源ＩＣ１３０とサブ電源ＩＣ１４０は、これにともなって各マイコン１１０，１２０に対して電力を供給し、または遮断する。
【００２８】
外部メモリ１６０は、ＲＡＭ１１３に対する診断結果や診断対象としたアドレス範囲などを記憶するための電気的に書き込みおよび消去可能な不揮発性メモリとされる記憶装置である。後述されるように、メインマイコン１１０／サブマイコン１２０は、車載制御装置１００がスタートアップやシャットダウンするときに、またスタートアップ後の定常処理中において、ＲＡＭ１１３のそれぞれ異なる記憶領域を診断する。そのため、次回診断すべきアドレス範囲は、外部メモリ１６０内へ格納される。外部メモリ１６０は、メイン電源ＩＣ１３０またはサブ電源ＩＣ１４０から電力を受ける。外部メモリ１６０は、特に制限されないが、フラッシュメモリやＥＥＰＲＯＭなどの不揮発性記憶装置を利用することができる。なお、定常処理の一例には、車載制御装置１００により行われる、エンジンやトランスミッション等のアクチュエータの制御や診断、フェールセーフ処理がある。
【００２９】
図２Ａ、図２Ｂおよび図２Ｃは、診断用データとしてのチェッカーデータを、ＲＡＭ１１３のメモリセルへ書き込んだ状態を示している。各図において、ＲＡＭ１１３のメモリセルとして、３行３列のアレイ状に配置された９個のメモリセル１１３１が例示的に示される。
【００３０】
図２Ａは、ＲＡＭ１１３に対してチェッカーデータを書き込んだときの各メモリセルが格納しているビット値を模式的に示す一例の図である。ＲＡＭ１１３が備える各メモリセル１１３１は、共通の電源ライン１１３２と接続されている。図２Ａに示すように、チェッカーデータは隣接する上下左右のメモリセル１１３１間で互いに異なるビット値のデータを格納するように構成されている。すなわち、例示的に示される３行３列に配置された９個のメモリセル１１３１において、１行目の３個のメモリセルには、１、０、１のビット値のデータがそれぞれ格納される。２行目の３個のメモリセルには、０、１、０のビット値のデータがそれぞれ格納される。３行目の３個のメモリセルには、１、０、１のビット値のデータがそれぞれ格納される。２行目２列目に対応するメモリセルを基準とすると、隣接する上下左右のメモリセル１１３１間で互いに異なるビット値のデータを格納するように構成されている。メモリセル１１３１は、一般的に、その記憶ノードの電位の大小(または、ハイレベル“１”、ローレベル“０”)によってビット値を表すので、メモリセル１１３１間で互いに異なるビット値を格納することにより、隣接するメモリセル１１３１は互いに異なる電位となる。
【００３１】
ＲＡＭ１１３を製造する半導体製造工程において混入した異物が、隣接するメモリセル１１３１間に残存していることを想定する。この場合、当該異物によって隣接メモリセルの記憶ノード間が架橋される。架橋された隣接するメモリセルの記憶ノードが互いに異電位である場合、その電位差に応じて隣接するメモリセルの記憶ノード間でリーク電流が流れることとなる。そうすると、異物が存在していない場合と比較して、ＲＡＭ１１３の駆動電流が大きくなる。
【００３２】
サブマイコン１２０は、後述されるように、ステップＳ２０３、Ｓ４０３、Ｓ６０３において、このことを利用してＲＡＭ１１３の異常を診断する。仮にメモリセル１１３１に対するデータ読み書きが正常に実施できるとしても、かかる異物の存在は将来において短絡故障を生じさせる可能性がある。そのため、本発明においては、異常と診断されたメモリセルを含む記憶領域のアドレスは、あらかじめＲＡＭ１１３の空き領域(未使用の記憶領域または未使用領域)に確保された正常なメモリセルを含む記憶領域のアドレスへ置換される。それにより、車両走行中に、メモリ１１３の故障が原因により発生するドライバーの意図に反したエンジンやトランスミッション等のアクチュエータの誤動作、および、その誤動作に起因する車両の意図しない挙動を防ぐことが可能である。
【００３３】
但し、隣接するメモリセル１１３１が互いに同じビット値を格納している場合、隣接するメモリセルの記憶ノード間の電位差はほぼない。この場合、仮に隣接メモリセルの記憶ノード間に異物が存在して架橋されたとしても、リーク電流は流れないか、または、僅かであると考えられる。駆動電流に基づき異物の存在を顕著に検出するためには、図２Ａに示すように隣接するメモリセルの記憶ノードが互いに異なるビット値を格納することが望ましい。すなわち、チェッカーデータは、隣接するメモリセルの記憶ノード間に異物が存在して架橋されていた場合に、リーク電流を顕在化させる様なデータパターンが選択される。
【００３４】
図２Ｂは、ＲＡＭ１１３に対してチェッカーデータを書き込んだときの各メモリセルが格納しているビット値を模式的に示す他の一例の図である。例示的に示された９個のメモリセル１１３１において、１行目の３個のメモリセルには、１、１、１のビット値のデータが格納される。２行目の３個のメモリセルには、０、０、０のビット値のデータが格納される。３行目の３個のメモリセルには、１、１、１のビット値のデータが格納される。
このチェッカーデータは、上下のメモリセル間で異なるビット値のデータを格納するように構成されている。すなわち、２行目の３個のメモリセル１１３１と、１行目および３行目のそれぞれ３個のメモリセル１１３１とで、異なるビット値のデータを格納するように構成されている。このチェッカーデータは、例えば、上下に配置されたメモリセルの記憶ノード間の短絡によるリーク電流の検出に有効である。
【００３５】
図２Ｃは、ＲＡＭ１１３に対してチェッカーデータを書き込んだときの各メモリセルが格納しているビット値を模式的に示す他の一例の図である。９個のメモリセル１１３１において、１行目の３個のメモリセルには、１、０、１のビット値のデータが格納される。
２行目の３個のメモリセルには、１、０、１のビット値のデータが格納される。３行目の３個のメモリセルには、１、０、１のビット値のデータが格納される。このチェッカーデータは、左右のメモリセル間で異なるビット値のデータを格納するように構成されている。すなわち、２列目の３個のメモリセル１１３１と、１列目および３列目のそれぞれ３個のメモリセル１１３１とで、異なるビット値のデータを格納するように構成されている。
このチェッカーデータは、例えば、左右に配置されたメモリセルの記憶ノード間の短絡によるリーク電流の検出に有効である。
【００３６】
チェッカーデータのデータパターンの構成は、メモリセルのレイアウト構成およびアレイ状に配置される複数のメモリセルのレイアウト構成に依存する。より具体的には、メモリセルの記憶ノードのレイアウト構成およびメモリセル間の記憶ノードの配置や距離に依存するため、診断対象のＲＡＭ１１３に採用されるメモリセルのレイアウト構成および複数のメモリセルのレイアウト構成を考慮して選択するのが良い。
【００３７】
図３Ａおよび図３Ｂは、車載制御装置１００がスタートアップするとき、メインマイコン１１０がＲＡＭ１１３を診断する手順を説明するフローチャートの一例である。以下、図３の各ステップについて説明する。図３Ａに示される１，２，３の部分は、図３Ｂに示される１，２，３の部分にそれぞれ接続される。
【００３８】
（図３Ａ：ステップＳ１００）
メインマイコン１１０は、電源が投入されたことを示す電源信号２１０を受信すると、本フローチャートを開始する。本フローチャートを開始する時点において、メイン電源ＩＣ１３０とサブ電源ＩＣ１４０はそれぞれ電源信号２１０にしたがって電力供給を開始済であるものとする。
【００３９】
（図３Ａ：ステップＳ１０１）
メインマイコン１１０は、外部メモリ１６０から前回実施したＲＡＭ１１３に対する診断結果と、今回診断するＲＡＭ１１３上の記憶領域のアドレスを読み出す。
【００４０】
（図３Ａ：ステップＳ１０２）
前回実施したＲＡＭ１１３に対する診断により故障と判定された場合は、ステップＳ１１２へスキップする。正常または診断未実施である場合は、ステップＳ１０３へ進む。ここでいう前回診断結果とは、例えば、後述するようにスタートアップ時とシャットダウン時と走行中各々においてＲＡＭ１１３の診断を実施する場合は、前回シャットダウン時における診断結果である。前回シャットダウン時においてＲＡＭ１１３が故障であったのであれば、今回スタートアップ時も故障であると考えられるので、かかる場合はステップＳ１１２へスキップすることとした。
【００４１】
（図３Ａ：ステップＳ１０３）
メインマイコン１１０は、ステップＳ１０１で読み出した診断対象アドレスの記憶領域に格納されたデータを、あらかじめ退避用に用意した退避領域に退避する。
【００４２】
（図３Ａ：ステップＳ１０４）
メインマイコン１１０は、ステップＳ１０１で読み出した診断対象アドレスに対して、診断用データとされるチェッカーデータを書き込む。図２Ａ、図２Ｂ、図２Ｃで説明したように、チェッカーデータは隣接するメモリセルが互いに異なるビット値を格納することにより互いに異電位となるように構成されたデータである。
【００４３】
（図３Ａ：ステップＳ１０５）
メインマイコン１１０は、チェッカーデータを書き込んだアドレスからデータを読み出す。読み出したデータと書き込んだチェッカーデータが一致する場合はステップＳ１０５へ進み、一致しない場合はステップＳ１０８へ進む。
【００４４】
（図３Ｂ：ステップＳ１０６）
メインマイコン１１０は、サブマイコン１２０に対して、ＲＡＭ１１３の駆動電流を測定するよう指示する。サブマイコン１２０は、後述の図４で説明するフローチャートにしたがって駆動電流を測定し、その測定結果をメインマイコン１１０に対して通知する。
【００４５】
（図３Ｂ：ステップＳ１０７）
メインマイコン１１０は、サブマイコン１２０から駆動電流の測定結果を受け取る。測定結果が正常である場合はステップＳ１０８へ進み、異常である場合はステップＳ１０９へ進む。
【００４６】
（図３Ｂ：ステップＳ１０８）
測定結果が正常である場合、ステップＳ１０３で退避したデータが、現在の診断領域へ書き戻される。
【００４７】
（図３Ｂ：ステップＳ１０９）
メインマイコン１１０は、故障と判断したメモリセルの置換後の記憶領域として、あらかじめ用意している、ＲＡＭ１１３の空き領域(未使用領域)の有無を確認する。ＲＡＭ１１３の空き領域が有る場合、ステップＳ１１０に進み、ＲＡＭ１１３の空き領域が無い場合は、ステップＳ１１２に進む。空き領域(未使用領域)とは、ＣＰＵ１１１により利用さるデータが格納されていない部分の記憶領域を意味する。
【００４８】
（図３Ｂ：ステップＳ１１０）
メインマイコン１１０は、Ｓ１０３で退避したデータを空き領域にコピーする。
【００４９】
（図３Ｂ：ステップＳ１１１）
メインマイコン１１０は、故障と診断したメモリのアドレスをあらかじめＲＡＭ１１３の空き領域に確保している正常なメモリのアドレスに置換する。
【００５０】
（図３Ｂ：ステップＳ１１２）
メインマイコン１１０は、外部メモリ１６０にＲＡＭ１１３の診断結果と次回の診断対象アドレスを格納する。
【００５１】
（図３Ｂ：ステップＳ１１３）
メインマイコン１１０は、ＲＡＭ１１３の診断結果が故障であった旨のメッセージを表示装置２４０上に表示する。
【００５２】
（図３Ｂ：ステップＳ１１４）
メインマイコン１１０は、フェールセーフモードを開始する。フェールセーフモードとは、機能を縮退して安全側に倒した動作を実施するモードである。メインマイコン１１０は、フェールセーフモードにおいては、ＲＡＭ１１３の故障により車両を誤制御することを防止するため、運転者の操縦指示に基づいた自動車制御を無効とし、安全な走行モードとなるようにアクチュエータ２３０を制御する。
【００５３】
（図３Ｂ：ステップＳ１１５）
メインマイコン１１０は、外部メモリ１６０にＲＡＭ１１３の診断結果と次回の診断対象アドレスを格納する。
【００５４】
（図３Ｂ：ステップＳ１１６）
メインマイコン１１０は、車載制御装置１００の定常処理を開始する。
【００５５】
図４は、車載制御装置１００がスタートアップするとき、サブマイコン１２０がＲＡＭ１１３の駆動電流を診断する手順を説明するフローチャートの一例である。以下、図４の各ステップについて説明する。
【００５６】
（図４：ステップＳ２００）
サブマイコン１２０は、電源が投入されたことを示す電源信号２１０を受信すると、本フローチャートを開始する。本フローチャートを開始する時点において、メイン電源ＩＣ１３０とサブ電源ＩＣ１４０はそれぞれ電源信号２１０にしたがって電力供給を開始済であるものとする。
【００５７】
（図４：ステップＳ２０１）
サブマイコン１２０は、メインマイコン１１０からＲＡＭ１１３の駆動電流を測定するよう指示する命令を受け取っているか否かを判定する。指示が有る場合はステップＳ２０２へ進み、無い場合は本フローチャートを終了（ＥＮＤ）する。
【００５８】
（図４：ステップＳ２０２）
サブマイコン１２０は、電流測定回路１５０から、ＲＡＭ１１３の駆動電流値を取得する。
【００５９】
（図４：ステップＳ２０３）
サブマイコン１２０は、取得した駆動電流値が判定閾値以下であるか否かを判定する。
取得した駆動電流値が判定閾値を下回る場合はＲＡＭ１１３が正常であると判断してステップＳ２０４へ進み、取得した駆動電流値が判定閾値を上回る場合は故障であると判断してステップＳ２０５へ進む。判定閾値は、サブマイコン１２０（または、メインマイコン１１０）が備えるＲＯＭなど不揮発性メモリにあらかじめ格納しておくことができる。
【００６０】
（図４：ステップＳ２０３：補足）
本ステップにおいては駆動電流値と判定閾値を比較しているので、駆動電流を正確に取得することが必要である。ＣＰＵ１１１、ＲＯＭ１１２などのＲＡＭ１１３以外の他回路部品に対して電力を供給する電源パスと、ＲＡＭ１１３に対して電力を供給する電源パスとが共通になっていると、他回路部品の電圧や電流の影響を受けてＲＡＭ１１３の駆動電流が変動し、正確な値を取得できない可能性がある。そのため、図１で説明されたように、メイン電源ＩＣ１３０は、これら回路部品に対してそれぞれ個別に電力を提供するように、構成されている。
【００６１】
（図４：ステップＳ２０４〜Ｓ２０５）
サブマイコン１２０は、メインマイコン１１０に対して、ＲＡＭ１１３の駆動電流が正常である旨の診断結果を送信する（Ｓ２０４）。サブマイコン１２０は、メインマイコン１１０に対して、ＲＡＭ１１３の駆動電流が異常である旨の診断結果を送信する（Ｓ２０５）。
【００６２】
図５Ａおよび図５Ｂは、車載制御装置１００がシャットダウンするときメインマイコン１１０がＲＡＭ１１３を診断する手順を説明するフローチャートの一例である。以下図５Ａおよび図５Ｂの各ステップについて説明する。なお、図５Ａに示される４，５，６の部分は、図５Ｂに示される４，５，６の部分にそれぞれ接続される。
【００６３】
（図５Ａ：ステップＳ３００〜Ｓ３０１）
メインマイコン１１０は、電源が遮断されたことを示す電源信号２１０を受信すると、本フローチャートを開始する（Ｓ３００）。メインマイコン１１０は、車載制御装置１００の定常処理を終了する（Ｓ３０１）。
【００６４】
（図５Ａおよび図５Ｂ：ステップＳ３０２〜Ｓ３０９）
ステップＳ３０２〜Ｓ３０８は、図３Ａおよび図３ＢのステップＳ１０１〜Ｓ１０８と同様である。ただし、ステップＳ３０３において、先回診断結果が異常である場合には、図５ＢのステップＳ３１４に移行する。
【００６５】
（図５Ｂ：ステップＳ３１０）
メインマイコン１１０は、故障と判断したメモリセルの置換後の領域とてあらかじめ用意している、ＲＡＭ１１３の空き領域の有無を確認する。ＲＡＭ１１３の空き領域が有る場合は、Ｓ３１１に進み、ＲＡＭ１１３の空き領域が無い場合は、Ｓ３１３に進む。
【００６６】
（図５Ｂ：ステップＳ３１１〜Ｓ３１２）
ステップＳ３１１〜Ｓ３１２は、図３ＢのステップＳ１１０〜Ｓ１１１と同様である。
【００６７】
（図５Ｂ：ステップＳ３１３）
ステップＳ３１３は、図３ＢのステップＳ１１５と同様である。
【００６８】
（図５Ｂ：ステップＳ３１４〜３１５）
メインマイコン１１０は、メイン電源ＩＣ１３０とサブ電源ＩＣ１４０に対してシャットダウン信号を送信する（Ｓ３１４）。これにより各電源ＩＣは電力供給を停止するので、メインマイコン１１０、サブマイコン１２０はＯＦＦになる（Ｓ３１５）。
【００６９】
なお、ステップＳ３１４に移行する前に、再び、メインマイコン１１０が電源の投入されたことを示す電源信号２１０を受信する場合もあり得る。そのため、ステップＳ３０９において、退避されたデータが現在の診断領域へ書き戻すステップＳ３０９が実行される。それにより、再度、図３Ａおよび図３Ｂのフローチャートが実行されることとなる。
【００７０】
図６は、車載制御装置１００がシャットダウンするとき、サブマイコン１２０がＲＡＭ１１３を診断する手順を説明するフローチャートである。本フローチャートを開始する時点において、メイン電源ＩＣ１３０とサブ電源ＩＣ１４０はそれぞれ電力の供給を継続しているものとする。以下、図６の各ステップについて説明する。車載制御装置１００がシャットダウンするとき、本フローチャートのステップＳ４００に移行する。
【００７１】
（図６：ステップＳ４０１〜Ｓ４０５）
ステップＳ４０１〜Ｓ４０５は、図４のステップＳ２０１〜Ｓ２０５と同様である。
【００７２】
（図６：ステップＳ４０６）
サブマイコン１２０は、メインマイコン１１０により、ステップＳ３１５でサブ電源ＩＣへシャットダウン信号が送られるため、電源ＯＦＦとなる。
【００７３】
図７Ａおよび図７Ｂは、車載制御装置１００が定時処理中に、メインマイコン１１０がＲＡＭ１１３を診断する手順を説明するフローチャートである。定常処理とは、車載制御装置１００により、エンジンやトランスミッション等のアクチュエータの制御や診断、通信等の処理が複数にタスクに分割され、一定周期毎に実行される。図７Ａおよび図７Ｂに示す、本発明のＲＡＭ１１３を診断するタスクは、定常処理の一部のタスクとして実行される。以下、図７Ａおよび図７Ｂの各ステップについて説明する。なお、図７Ａに示される７，８，９の部分は、図７Ｂに示される７，８，９の部分にそれぞれ接続される。
【００７４】
（図７Ａ：ステップＳ５００）
メインマイコン１１０は、電源が投入されたことを示す電源信号２１０を受信し、図３Ａおよび図３Ｂのスタートアップ処理を完了し、定常処理に移行した後、本フローチャートを開始する。
【００７５】
（図７Ａおよび図７Ｂ：ステップＳ５０１〜Ｓ５１５）
ステップＳ５０１〜Ｓ５１５は、図３Ａおよび図３ＢのステップＳ１０１〜Ｓ１１５と同様である。
【００７６】
図８は、車載制御装置１００が定時処理中に、サブマイコン１２０がＲＡＭ１１３を診断する手順を説明するフローチャートの一例である。以下図８の各ステップについて説明する。
【００７７】
（図８：ステップＳ６００）
サブマイコン１２０は、電源が投入されたことを示す電源信号２１０を受信し、図３Ａおよび図３Ｂのスタートアップ処理を完了し、定常処理に移行した後、本フローチャートを開始する。
【００７８】
（図８：ステップＳ６０１〜Ｓ６０５）
ステップＳ６０１〜Ｓ６０５は、図４のステップＳ２０１〜Ｓ２０５と同様である。
【００７９】
図９は、ＲＡＭ１１３が有する記憶領域を示すアドレス図の一例である。ＲＡＭ１１３が有する全記憶領域を一度に診断しようとすると、診断時間が長くかかる。また、メモリセル上における故障領域を判別する必要がある。そのため、図９に示すように、診断対象アドレスが複数に分割されることで、ＲＡＭ１１３が有する全記憶領域は複数の診断領域に分割される。そして、図３Ａ〜図８で説明された様に、スタートアップ時／シャットダウン時/定常処理のいずれかまたは双方において、それぞれ異なるアドレスの記憶領域が診断領域として診断することとした。メインマイコン１１０／サブマイコン１２０は、診断を実施する毎に、次の診断対象アドレスを外部メモリ１６０に書き込み、次回の診断時はこれにしたがって診断対象アドレスを決定する。
【００８０】
メモリアドレス００００ｈ−ＦＦＥＥｈ（末尾のｈは、１６進アドレス示す）の診断領域７００〜７０２は、先頭の診断領域は７００、次回診断領域７０１、最後の診断領域７０２で構成される。最後の診断領域７０２まで診断が進んだ場合、先頭の診断領域７００に戻る。診断領域に元々格納されていたデータを退避する記憶領域として、メモリアドレスＦＦＥＦｈに、診断領域のデータの退避領域７０３が確保される。メモリアドレスＦＦＦ０ｈ−ＦＦＦＦｈは、空き領域(未使用領域)７０４として確保される。故障とした診断した記憶領域の置換後の記憶領域７０５は、空き領域(未使用領域)７０４内に確保される。異常セルのアドレス置換後の記憶領域が空き領域の記憶容量を超える場合は、正常な領域のメモリセルへの置換は不可となる。この場合、メインマイコン１１０は、ＲＡＭ１１３の診断結果が故障であった旨のメッセージを表示装置２４０上に表示し、フェールセーフモードを開始する。なお、上記で説明されたメモリアドレスの領域の割付けは、一例であり、それに限定されるものではなく、適宜変更されてよい。
【００８１】
図１０は、ＲＡＭ１１３がスタティック  ランダム  アクセス  メモリ（ＳＲＡＭ：Ｓｔａｔｉｃ  Ｒａｍｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の場合のメモリセルＭＣの回路図を示す。メモリセルＭＣは、ＣＭＯＳ型の６トランジスタであり、以下を含む。
【００８２】
メモリセルＭＣは、ＰチャネルＭＯＳトランジスタＰＭ１，ＰＭ２およびＮチャネルＭＯＳトランジスタＮＴ１、ＮＴ２，ＮＤ１，ＮＤ２を含む。負荷トランジスタとされるＰチャネルＭＯＳトランジスタＰＭ１，ＰＭ２のソース・ドレイン経路は、それぞれ電源電位（ＶＤＤ）１１３２のラインと第１および第２記憶ノードＭＢ，ＭＴとの間に接続され、それらのゲートはそれぞれ第２および第１記憶ノードＭＴ，ＭＢに接続される。駆動トランジスタとされるＮチャネルＭＯＳトランジスタＮＤ１，ＮＤ２のソース・ドレイン経路は、それぞれ第１および第２記憶ノードＭＢ，ＭＴと接地電位（ＶＳＳ）１１３３のラインとの間に接続され、それらのゲートはそれぞれ第２および第１記憶ノードＭＴ，ＭＢに接続される。転送トランジスタとされるＮチャネルＭＯＳトランジスタＮＴ１，ＮＴ２のソース・ドレイン経路は、それぞれ記憶ノードＭＢ，ＭＴとビット線／ＢＬ，ＢＬとの間に接続され、それらのゲートはともにワード線ＷＬに接続される。ＭＯＳトランジスタＰＭ１，ＮＤ１は、第２記憶ノードＭＴの信号の反転信号を第１記憶ノードＭＢに与えるインバータを構成する。ＭＯＳトランジスタＰＭ２，ＮＤ２は、第２記憶ノードＭＢの信号の反転信号を第１記憶ノードＭＴに与えるインバータを構成する。２つのインバータは、第１および第２記憶ノードＭＢ，ＭＴの間に逆並列に接続されており、ラッチ回路を構成している。
【００８３】
ワード線ＷＬが選択レベルの「Ｈ」レベルにされると、ＮチャネルＭＯＳトランジスタＮＴ１，ＮＴ２が導通する。書込データ信号に応じてビット線対ＢＬ，／ＢＬのうちの一方のビット線（たとえばＢＬ）を「Ｈ」レベルにするとともに他方のビット線（この場合は／ＢＬ）を「Ｌ」レベルにすると、ＭＯＳトランジスタＰＭ２，ＮＤ１が導通するとともにＭＯＳトランジスタＰＭ１，ＮＤ２が非導通になり、記憶ノードＭＢ，ＭＴのレベルがラッチされる。ワード線ＷＬを非選択レベルの「Ｌ」レベルにすると、ＮチャネルＭＯＳトランジスタＮＴ１、ＮＴ２が非導通になり、メモリセルＭＣにデータ信号が記憶される。
【００８４】
読出動作時は、ビット線対ＢＬ，／ＢＬを「Ｈ」レベルにプリチャージした後、ワード線ＷＬを選択レベルの「Ｈ」レベルにする。これにより、ビット線（この場合は／ＢＬ）からＮチャネルＭＯＳトランジスタＮＴ１，ＮＴ２を介して接地電位ＧＮＤのラインに電流が流出し、ビット線／ＢＬの電位が低下する。ビット線ＢＬと／ＢＬの電位を比較することにより、メモリセルＭＣの記憶データを読出すことができる。
【００８５】
メモリセルＭＣが、ハイレベルのデータ“１”を記憶している場合、第１および第２記憶ノードＭＢ，ＭＴのレベルは、それぞれ“０”、“１”とされる。メモリセルＭＣが、ローレベルのデータ“０”を記憶している場合、第１および第２記憶ノードＭＢ，ＭＴのレベルは、それぞれ“１”、“０”とされる。
【００８６】
実際のＲＡＭ１１３においては、後述される図１３に示されるように、メモリセルＭＣが行列状に複数設けられる。図１３には示されていないが、複数のメモリセルＭＣの電源電位（ＶＤＤ）１１３２のラインは共通に結合される。結合された電源電位（ＶＤＤ）１１３２のラインは、図１に示される電流測定回路１５０に結合される。
【００８７】
同様に、図１３には示されていないが、複数のメモリセルＭＣの接地電位（ＶＳＳ）１１３３のラインは結合される。なお、図１では、ＲＡＭ１１３の駆動電流を電流測定回路１５０により計測する例が示されたが、それに代えて、ＲＡＭ１１３の消費電流の値が計測されてもよい。この場合、例えば、接地電位（ＶＳＳ）１１３３のラインに電流測定回路１５０が設けられる。ＲＡＭ１１３の駆動電流および消費電流は、ＲＡＭ１１３の動作電流と言い換えても良いことは言うまでもない。
【００８８】
図１１は、図１０に示すメモリセルＭＣの模式的なレイアウト図の一例である。ポリシリコンなどのゲート電極Ｇ１，Ｇ２，Ｇ３，Ｇ４を含む。ゲート電極Ｇ１は、ＮチャネルＭＯＳトランジスタＮＴ１のゲートとされ、ワード線ＷＬに結合される。ゲート電極Ｇ２は、ＮチャネルＭＯＳトランジスタＮＤ１およびＰチャネルＭＯＳトランジスタＰＭ１のゲートとされる。ゲート電極Ｇ３は、ＮチャネルＭＯＳトランジスタＮＤ２およびＰチャネルＭＯＳトランジスタＰＭ２のゲートとされる。ゲート電極Ｇ４は、ＮチャネルＭＯＳトランジスタＮＴ２のゲートとされ、ワード線ＷＬに結合される。
【００８９】
ゲート電極Ｇ１およびＧ２を不純物導入マスクとしてＮ型領域ＮＲ１が形成れて、ＮチャネルＭＯＳトランジスタＮＴ１およびＮＤ１が形成される。ゲート電極Ｇ４およびＧ３を不純物導入マスクとしてＮ型領域ＮＲ２が形成れて、ＮチャネルＭＯＳトランジスタＮＴ２およびＮＤ２が形成される。ゲート電極Ｇ２を不純物導入マスクとしてＰ型領域ＰＲ１が形成れて、ＰチャネルＭＯＳトランジスタＰＭ１が形成される。ゲート電極Ｇ３を不純物導入マスクとしてＰ型領域ＰＲ２が形成れて、ＰチャネルＭＯＳトランジスタＰＭ２が形成される。ビット線／ＢＬは、図１１において、ゲート電極Ｇ１より上側に形成されたＮ型領域ＮＲ１（ＮチャネルＭＯＳトランジスタＮＤ１のソース）に結合される。ビット線／ＢＬは、図１１において、ゲート電極Ｇ１より上側に形成されたＮ型領域ＮＲ１（ＮチャネルＭＯＳトランジスタＮＴ１のソースまたはドレイン）に結合される。ビット線ＢＬは、図１１において、ゲート電極Ｇ４より下側に形成されたＮ型領域ＮＲ２（ＮチャネルＭＯＳトランジスタＮＴ２のソースまたはドレイン）に結合される。電源電位（ＶＤＤ）１１３２のラインは、図１１において、ゲートＧ２の下側に形成されるＰ型領域ＰＲ１（ＰＭ１のソース）およびゲートＧ３の上側に形成されるＰ型領域ＰＲ２（ＰＭ２のソース）に結合される。接地電位（ＶＳＳ）１１３３のラインは、図１１において、ゲートＧ２の下側に形成されるＮ型領域ＮＲ１（ＮチャネルＭＯＳトランジスタＮＤ１のソース）およびゲートＧ３の上側に形成されるＮ型領域ＮＲ２（ＮチャネルＭＯＳトランジスタＮＤ２のソース）に結合される。
【００９０】
第１記憶ノードＭＢは、ゲート電極Ｇ１とＧ２との間のＮ型領域ＮＲ１（ＮチャネルＭＯＳトランジスタＮＤ１のドレイン）と、ＰチャネルＭＯＳトランジスタＰＭ１のドレイン側のＰ型領域ＰＲ１と、ゲート電極Ｇ３と、を配線ＬＷ１で結合することにより構成される。第２記憶ノードＭＴは、ゲート電極Ｇ３とＧ４との間のＮ型領域ＮＲ２（ＮチャネルＭＯＳトランジスタＮＤ２のドレイン）と、ＰチャネルＭＯＳトランジスタＰＭ２のドレイン側のＰ型領域ＰＲ２と、ゲート電極Ｇ２と、を配線ＬＷ２で結合することにより構成される。
【００９１】
図１２は、図１１のメモリセルのレイアウト配置を、行列状に配置した場合の模式図である。例示的に示されたメモリセルＭＣ１−ＭＣ９が、行列状に配置されている。メモリセルＭＣ５には、図１１の第１および第２記憶ノードＭＢ，ＭＴが模式的に示される。他のメモリセルの記憶ノードについては、図面が複雑となるので、省略される。メモリセルＭＣ１−ＭＣ９のレイアウト配置は、当業者にとって容易に理解されるように、例えば、メモリセルＭＣ５を基準とした場合、鏡面対称配置、線対称配置、あるいは、繰り替えし配置などが採用できる。図１２において、距離Ｄ１は、横方向（Ｘ方向）において、左右の隣り合うメモリセル間の記憶ノードの間隔を示している。距離Ｄ２は、縦方向（Ｙ方向）において、上下の隣り合うメモリセル間の記憶ノードの間隔を示している。
【００９２】
一般的に、ＲＡＭ１１３がスタティックランダムアクセスメモリ（ＳＲＡＭ）とされる場合、半導体製造プロセスの最小加工寸法によって、メモリセルＭＣ１−ＭＣ９が形成される。したがって、距離Ｄ１ないし距離Ｄ２は、極めて狭くされている。上述されるように、半導体製造工程において混入した異物が、隣接するメモリセルの記憶ノード間（Ｄ１またはＤ２）に残存していることを想定する場合、当該異物によって隣接メモリセルの記憶ノード間が架橋される可能性がある。架橋された隣接するメモリセルの記憶ノードが互いに異電位である場合、その電位差に応じて隣接するメモリセルの記憶ノード間でリーク電流が流れることとなる。したがって、チェッカーデータは、メモリセルの記憶ノードのレイアウト構成およびメモリセル間の各記憶ノードの配置やその距離などを考慮して、図２Ａ、図２Ｂ、および図２Ｃで説明されたチェッカーデータから適宜選択ないしその組み合わせを利用するなど選択可能である。
【００９３】
図１３は、ＲＡＭ１１３がスタティックランダムアクセスメモリ（ＳＲＡＭ）の場合の模式的なブロック図である。複数のメモリセルＭＣが、行列状に配置されてメモリセルアレイＭＡが構成される。行列状に配置された複数のメモリセルアレイにおいて、１行目に配置されたメモリセルに第１ワード線（ＷＬ０）が結合され、２行目に配置されたメモリセルに第２ワード線（ＷＬ１）が結合され、３行目に配置されたメモリセルに第３ワード線（ＷＬ２）が結合される。同様にして、第４ワード線（ＷＬ３）、第５ワード線（ＷＬ４）、第６ワード線（ＷＬ５）、第７ワード線（ＷＬ６）から第ｎ−１ワード線（ＷＬｎ）が設けられる。また、１列目に配置されたメモリセルに第１ビット線対（／ＢＬ０、ＢＬ０）が結合される。２列目に配置されたメモリセルに第２ビット線対（／ＢＬ１、ＢＬ１）が結合される。同様にして、第３ビット線対（／ＢＬ２、ＢＬ２）から第ｎ−１ビット線対（／ＢＬｎ、ＢＬｎ）が設けられる。なお、上述のワード線の数及びビット線対の数は、一例である。
【００９４】
行選択回路ＲＤＥＣは、ＣＰＵ１１１から供給された行アドレス信号に従って、複数のワード線（ＷＬ０−ＷＬｎ）のうち、行アドレス信号に対応する１本のワード線を選択レベルする。列選択回路ＣＤＥＣはＣＰＵ１１１から供給された列アドレス信号に従って、複数のビット線対（／ＢＬ０、ＢＬ０―／ＢＬｎ、ＢＬｎ）のうち、行アドレス信号に対応する１または複数のビット線対を選択レベルする。入出力制御回路ＩＯＣＫＴは、データ読み出しの場合、選択されたワード線および選択された１または複数のビット線対に結合された１または複数のメモリセルからデータを読み出し、その読み出されたデータをＣＰＵ１１１へ供給する。一方、データ書き込みの場合、入出力制御回路ＩＯＣＫＴは、ＣＰＵ１１１から供給されたデータを、選択されたワード線および選択された１または複数のビット線対に結合された１または複数のメモリセルへ書き込む。
【００９５】
図９では、ＲＡＭ１１３のアドレスに基づいて診断領域が設定されたが、特に制限されないが、ＲＡＭ１１３のワード線の本数によって診断領域が設定されても良い。すなわち、１本のワード線に接続された複数のメモリセルを単位として、それを選択するための連続する複数のアドレスを１つの診断領域として設定しても良い。特に制限されないが、複数本のワード線、例えば、連続する３本のワード線に接続される複数のメモリセルが１つの診断領域として設定することができる。この場合、図２Ａ（または、図２Ｂ、図２Ｃ）に示されるチェッカーデータが書き込まれ、診断が実行される。連続する３本のワード線とは、図１３において、第１ワード線ＷＬ０、第２ワード線ＷＬ１および第３ワード線ＷＬ２が連続する３本のワード線を意味し、第４ワード線ＷＬ３、第５ワード線ＷＬ４および第６ワード線ＷＬ５が連続する３本のワード線を意味する。
【００９６】
図１３に示されるように、第１ワード線ＷＬ０、第２ワード線ＷＬ１および第３ワード線ＷＬ２に接続される複数のメモリセルが１つの診断領域Ｒ１に含まれる。第４ワード線ＷＬ３、第５ワード線ＷＬ４および第６ワード線ＷＬ５が３本のワード線に接続される複数のメモリセルが１つの診断領域Ｒ２に含まれる。診断領域Ｒ１および診断領域Ｒ２は、連続する複数のアドレスにて割り当てられているものとする。
【００９７】
また、図１３に示されるように、特に制限されないが、先頭の診断領域ｒ１が、第１ワード線ＷＬ０、第２ワード線ＷＬ１および第３ワード線ＷＬ２として設定された場合、次回の診断領域ｒ２を、第３ワード線ＷＬ２、第４ワード線ＷＬ３および第５ワード線ＷＬ４として設定しても良い。すなわち、連続する２つの診断領域ｒ１、ｒ２において、重複部分（第３ワード線ＷＬ２に接続されるメモリセル）が設けられる。この場合、第３ワード線に結合されるメモリセルの記憶ノードと第４ワード線に結合されるメモリセルの記憶ノードとの間も、診断することができる。
【００９８】
図１３において、行選択回路ＲＤＥＣ、列選択回路ＣＤＥＣおよび入出力制御回路ＩＯＣＫＴを含むメモリ周辺回路の電源ラインと、メモリセルアレイＭＡの電源ライン１１３２と、が分離されて構成されている場合、メモリセルの故障の診断のためには、メモリセルアレイＭＡの電源ライン１１３２に流れる駆動電流が、図１の電流測定回路１５０により計測できれば良い。これにより、メモリセルアレイＭＡの電源ライン１１３２とメモリ周辺回路の電源ラインとが分離されているため、メモリ周辺回路の駆動電流の影響を低減して、メモリセルアレイＭＡの駆動電流の変化をより確実に計測することができる。この場合、図１の電源配線Ｌ３は、メモリセルアレイＭＡの電源ライン１１３２に結合される電源配線（Ｌ３１）と、メモリ周辺回路の電源ラインに結合される電源配線（Ｌ３２）との２本の電源配線を含む構成へと変更される。そして、図１の電流測定回路１５０は、電源配線（Ｌ３１）に結合され、電源配線（Ｌ３１）に流れる駆動電流（動作電流）を計測する。
【００９９】
＜本発明のまとめ＞
本発明に係る車載制御装置１００は、前記電流測定回路１５０を設けることにより、メモリ（ＲＡＭ）１１３が完全に故障する前に、故障の予兆を捉えることが可能である。故障の予兆を捉えるため、メモリ（ＲＡＭ）１１３の隣接するメモリセル１１３１に対し、例えば、互いに異なるビット値がチェック用の書込みデータ（チェッカーデータ）として書き込まれる。チェッカーデータがメモリ（ＲＡＭ）１１３に対して書き込まれた状態で、メモリ（ＲＡＭ）１１３の駆動電流が前記電流測定回路１５０により測定される。測定された駆動電流の値が閾値を超えているか否かに基づき、メモリ（ＲＡＭ）１１３の状態が診断される。これにより、現時点では正常にデータを読み書きできるが将来的に故障を生じさせる可能性のあるメモリセル１１３１間の異物を早期の段階で検出することができる。将来的に故障を生じさせる可能性のあるメモリセルが完全に故障する前に、そのメモリセルを含む記憶領域のアドレスが、メモリ（ＲＡＭ）１１３の空き領域にあらかじめ確保された正常なメモリセルを含む記憶領域のアドレスへと置換される。そのため、車両走行中におけるメモリ（ＲＡＭ）１１３の故障を未然に防ぐことができる。したがって、車両走行中に、メモリ（ＲＡＭ）１１３の故障が原因により発生するドライバーの意図に反したエンジンやトランスミッション等のアクチュエータの誤動作、および、その誤動作に起因する車両の意図しない挙動を防ぐことが可能である。車両走行中に、ＲＡＭが故障し、フェールセーフ処理に移行する制御が行われ、運転性能が低下することを可能な限り防ぐことができる。
【符号の説明】
【０１００】
１００：車載制御装置、１１０：メインマイコン、１１１：ＣＰＵ、１１２：ＲＯＭ１１３：ＲＡＭ、１２０：サブマイコン、１３０：メイン電源ＩＣ、１４０：サブ電源ＩＣ、１５０：電流測定回路、１６０：外部メモリ、２１０：電源信号、２２０：バッテリ、２３０：アクチュエータ、２４０：表示装置、７００：今回の診断領域、７０１：次回の診断領域、７０２：最後の診断領域、７０３：診断領域のデータの退避領域、７０４：空き領域、７０５：異常セルのアドレス置換後の領域、１１３１：ＲＡＭ１１３を構成するメモリセル、１１３２：ＲＡＭ１１３を構成する共通の電源ライン
【図１】
0006694517.tif 000002
【図２Ａ】
0006694517.tif 000003
【図２Ｂ】
0006694517.tif 000004
【図２Ｃ】
0006694517.tif 000005
【図３Ａ】
0006694517.tif 000006
【図３Ｂ】
0006694517.tif 000007
【図４】
0006694517.tif 000008
【図５Ａ】
0006694517.tif 000009
【図５Ｂ】
0006694517.tif 000010
【図６】
0006694517.tif 000011
【図７Ａ】
0006694517.tif 000012
【図７Ｂ】
0006694517.tif 000013
【図８】
0006694517.tif 000014
【図９】
0006694517.tif 000015
【図１０】
0006694517.tif 000016
【図１１】
0006694517.tif 000017
【図１２】
0006694517.tif 000018
【図１３】
0006694517.tif 000019