(57)【要約】【課題】スリープモード中にレジスタ等にソフトエラーが生じても、異常動作を回避する。【解決手段】マイコン２の動作に重要な意味をもつ情報が格納される保持回路１６と、保持回路１７とは、多重化された格納回路を提供する。これら保持回路１６、１７には、同じ情報が書き込まれ、格納される。マイコン２がスリープモード中に、ソフトエラーなど何らかの理由により保持回路１６、１７に不一致が生じることがある。この場合、ＥＸＯＲゲート１８、ＡＮＤゲート１５、およびＯＲゲート１２を介して、ウェイクアップ信号がマイコン２に与えられる。マイコン２は、臨時的に通常モードに復帰し、保持回路１６、１７を再設定する。この結果、保持回路１６、１７のソフトエラーによるマイコン２の異常動作を回避することができる。【選択図】図１
2010231417.tif 000002
【特許請求の範囲】
【請求項１】
マイコンの動作に重要な意味をもつ情報が格納されるクリティカルビットを持ち、当該クリティカルビットが多重化された格納回路（１６、１７、２６、２７）と、
前記格納回路に多重化して格納された複数のクリティカルビットの情報が所定の関係を満たすときエラーを検出するエラー検出回路（１８、２８）と、
マイコンがスリープモードにある時に前記エラー検出回路がエラーを検出すると、前記クリティカルビットの情報を修正する異常回復回路（１２、１５、２２、２５）とを備えることを特徴とする制御装置。
【請求項２】
前記格納回路は、前記クリティカルビットを多重化して格納する複数の保持回路（１６、１７、２６、２７）を備えることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記異常回復回路（１２、１５）は、前記マイコンをウェイクアップさせることにより前記クリティカルビットの情報を再設定させることを特徴とする請求項１または２に記載の制御装置。
【請求項４】
前記異常回復回路（２２、２５）は、前記マイコンをリセットすることにより前記クリティカルビットの情報を初期化させることを特徴とする請求項１または２に記載の制御装置。
【請求項５】
前記クリティカルビットには、前記マイコンのウェイクアップに重要な意味をもつレジスタ値が格納されることを特徴とする請求項１から４のいずれかに記載の制御装置。
【請求項６】
前記クリティカルビットには、前記マイコンの動作に重要な意味をもつクリティカル変数が格納されることを特徴とする請求項４に記載の制御装置。
【請求項７】
前記格納回路は、複数の前記クリティカルビットに前記マイコンから同じ情報が格納されるように接続されており、
前記エラー検出回路は、前記クリティカルビットが不一致となるとエラーを検出することを特徴とする請求項１から６のいずれかに記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイコンを備える制御装置であって、マイコンがスリープ中にソフトエラーによるビット反転が発生したことを検出し、マイコンの異常動作を回避する制御装置に関するものである。
【背景技術】
【０００２】
従来、特許文献１に記載の制御装置が知られている。制御装置は、マイコンの動作モードとして、通常モードとスリープモードとを有し、一定の条件が成立するとマイコンの動作モードをスリープモードに移行させる手段を備えている。スリープモードでは、電力消費が抑えられるため、バッテリの消耗を回避することができる。
【０００３】
このようなスリープモードは、車両に搭載された制御装置においても、車載バッテリの消耗を回避する手段として有効である。例えば、車両の施錠、開錠操作を実行する制御装置など、車両の電源スイッチであるイグニッションスイッチがＯＦＦ位置にある時にも処理を実行する制御装置では、周期的にマイコンの動作モードを通常モードとスリープモードとに交互に切り換えることで、消費電力の低減を図ることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−３１８９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、スリープモード中には、マイコンのクロックが停止されるなどしてマイコンが停止するため、マイコンの動作において重要な意味を持つレジスタやメモリの情報を維持できないことがある。例えば、マイコンの動作が通常モードにあるときには、レジスタの情報がベリファイ機能あるいはリフレッシュ機能によって正常に維持される。また、重要な意味をもつビットに異常が発生しても、異常検出回路あるいはソフトによる異常検出処理によって異常が検出され、異常状態からの回復処理を実行することができる。
【０００６】
ところが、マイコンがスリープモードにあるときに、粒子線によるソフトエラーなどが生じると、マイコンの動作に重要な意味をもつレジスタ上のビット、あるいはメモリ上のビットが不規則に反転し、当該ビットがもつ重要な情報が失われてしまうことがある。このようなソフトエラーなどが発生した場合、ウェイクアップ要求が発生して、マイコンがスリープモードから再び通常モードに移行しようとしても、重要な意味をもつビットの情報が破壊されているため、マイコンが正常に動作できないという問題点があった。
【０００７】
例えば、ウェイクアップ動作に重要な意味をもつレジスタの情報が破壊された場合には、ウェイクアップ要求に応えて通常モードに復帰することができないという異常な動作に入るおそれがある。また、システムの動作に重要な意味をもつメモリ上の変数が破壊されると、ウェイクアップによって通常モードに復帰した後に、マイコンが暴走するなど異常な動作をするおそれがある。
【０００８】
また、マイコンが異常な動作に入ると、利用者が強制的な初期化操作を行うなど、復旧処置が必要となるという問題点があった。例えば、車両用の制御装置においては、車載バッテリを取り外して再接続する処置、あるいは利用者がイグニッションスイッチをＯＮ位置に操作した直後にリセットする処置といった復旧処置が必要になるという問題点が生じる。
【０００９】
本発明は、上記問題点に鑑み、マイコンの動作に重要な意味をもつ情報がスリープ中に破壊されても、異常動作を回避可能な制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、下記の技術的手段を採用することができる。
【００１１】
請求項１に記載の発明は、マイコンの動作に重要な意味をもつ情報が格納されるクリティカルビットを持ち、当該クリティカルビットが多重化された格納回路（１６、１７、２６、２７）と、格納回路に多重化して格納された複数のクリティカルビットの情報が所定の関係を満たすときエラーを検出するエラー検出回路（１８、２８）と、マイコンがスリープモード（ストップモード、スタンバイモードなどの省電力モードを含めてスリープモードと呼ぶ）にある時にエラー検出回路がエラーを検出すると、クリティカルビットの情報を修正する異常回復回路（１２、１５、２２、２５）とを備えることを特徴とする制御装置という技術的手段を採用する。
【００１２】
この発明によると、クリティカルビットが多重化されており、それらが所定の関係を満たすとエラーが検出される。このため、マイコンがスリープモード中にクリティカルビットにソフトエラーなどの何らかの原因により異常が発生しても、エラー検出回路によってこれを検出できる。さらに、異常回復回路によってクリティカルビットの情報が修正されるので、マイコンが異常な動作をすることを回避することができる。
【００１３】
請求項２に記載の発明は、格納回路は、クリティカルビットを多重化して格納する複数の保持回路（具体的にはフリップフロップやラッチ、メモリセルなど）（１６、１７、２６、２７）を備えることを特徴とするという技術的手段を採用する。この発明によると、クリティカルビットは保持回路に対応付けられ、情報が格納される。
【００１４】
請求項３に記載の発明は、異常回復回路（１２、１５）は、マイコンをウェイクアップさせることによりクリティカルビットの情報を再設定させることを特徴とするという技術的手段を採用する。この発明によると、マイコンをウェイクアップさせ、クリティカルビットを再設定させるため、スリープモードに入る前の状態に復帰することができる。
【００１５】
請求項４に記載の発明は、異常回復回路（２２、２５）は、マイコンをリセットすることによりクリティカルビットの情報を初期化させることを特徴とするという技術的手段を採用する。この発明によると、マイコンをリセットしてクリティカルビットの情報を初期化するため、マイコンがスリープモードからウェイクアップした後に、少なくともクリティカルビットに起因して異常な動作をすることを回避することができる。
【００１６】
請求項５に記載の発明は、クリティカルビットには、マイコンのウェイクアップに重要な意味をもつレジスタ値が格納されることを特徴とするという技術的手段を採用する。この発明によると、クリティカルビットに異常が生じることでウェイクアップに関連する機能が損なわれることを回避できる。例えば、マイコンがスリープモードからウェイクアップできなくなるといった不具合の発生を回避することができる。
【００１７】
請求項６に記載の発明は、クリティカルビットには、マイコンの動作に重要な意味をもつクリティカル変数が格納されることを特徴とするという技術的手段を採用する。この発明によると、マイコンがスリープモードから通常モードに戻った際に異常な動作をすることを回避することができる。
【００１８】
請求項７に記載の発明は、格納回路は、複数のクリティカルビットにマイコンから同じ情報が格納されるように接続されており、エラー検出回路は、クリティカルビットが不一致となるとエラーを検出することを特徴とするという技術的手段を採用する。この発明によると、比較的簡単な回路でクリティカルビットの異常を検出することができる。
【００１９】
なお、特許請求の範囲および上記各手段に記載の括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示す。
【図面の簡単な説明】
【００２０】
【図１】本発明を適用した第１実施形態に係る制御装置を示すブロック図である。
【図２】第１実施形態の制御装置の作動を示すタイムチャートである。
【図３】本発明を適用した第２実施形態に係る制御装置を示すブロック図である。
【図４】第２実施形態の制御装置の作動を示すタイムチャートである。
【発明を実施するための形態】
【００２１】
（第１実施形態）
図１において、車載の制御装置の構成が示されている。制御装置１は、車両に搭載された電子制御装置であって、マイクロコンピュータ（この明細書では、マイコンとも呼ぶ）を搭載している。制御装置１は、車両に搭載されたボデー系電子制御装置である。制御装置１は、無線式ドアロック装置による施錠、開錠といった錠の制御、盗難防止制御、および車載の灯火の制御などを実行する。このため、制御装置１は、車両の電源スイッチであるイグニッションスイッチがＯＦＦ位置にあるときにも、所定の処理を実行する。
【００２２】
制御装置１は、マイコン２と、メモリ等の周辺回路３とを備えている。さらに、制御装置１は、周辺回路のひとつとして省電力モード制御回路４を備える。省電力モード制御回路４は、マイコン２を通常モードとスリープモードとに切り換えるためにマイコン２に接続されている。省電力モード制御回路４は、イグニッションスイッチがＯＦＦ位置にあるときに周期的にマイコン２の動作モードを通常モードとスリープモードとに交互に切り換える手段を提供する。
【００２３】
スリープモードにおいては、マイコン２の作動が実質的に停止され、消費電力が抑えられる。例えば、マイコン２のクロックが停止され、マイコン２の演算処理が停止されることによって省電力モードとしてのスリープモードが提供される。省電力モード制御回路４は、マイコン２がスリープモードにあることを示すスリープ信号を出力する。なお、ストップモード、スタンバイモードなどの省電力モードをスリープモードと呼ぶことができる。
【００２４】
制御装置１は、ウェイクアップ制御回路１０を備えている。ウェイクアップ制御回路１０は、所定の事象が生じるとウェイクアップ信号を発生し、マイコン２に入力する。これによりマイコン２は、スリープモードから通常モードへ復帰して、スリープモードに入る前の状態に戻る。
【００２５】
ウェイクアップ制御回路１０は、マイコン２をウェイクアップさせるべき事象を検出し、ウェイクアップ信号を発生する複数のウェイクアップ要求回路１１を備えている。ウェイクアップ要求回路１１は、マイコンをウェイクアップさせる典型的な一例として複数の割込み回路を備えることができる。外部割込回路１１ａは、外部からのウェイクアップ要求を受信して、ウェイクアップ信号を発生する。タイマ割込回路１１ｂは、制御装置１の一部として搭載されたタイマにより一定時間の経過が判定されるとウェイクアップ信号を発生する。例えば、一定時間ごとにウェイクアップ信号を発生してマイコンを間欠的に通常モードへ復帰させることができる。ネットワーク割込回路１１ｃは、制御装置１が接続された車両のネットワークからのウェイクアップ要求を検知してウェイクアップ信号を発生する。例えば、車両用のＬＡＮ回線の信号レベルの立ち上がり、あるいは立ち下がりに応答してウェイクアップ信号を発生させることができる。
【００２６】
ウェイクアップ制御回路１０は、選択回路としての論理和ゲート１２（以下、ＯＲゲートという）を有する。ＯＲゲート１２は、複数のウェイクアップ要求回路１１のいずれかからウェイクアップ信号が発生すると、それをマイコン２に向けて出力する。
【００２７】
ウェイクアップ制御回路１０は、さらにソフトエラー割込回路１３を備えている。ソフトエラー割込回路１３は、マイコン２がスリープモード中にレジスタなど重要な格納回路にソフトエラーが発生すると、ウェイクアップ信号を発生する。ソフトエラーは、何らかの原因により制御装置１内の半導体回路に格納された情報の一部のビットが反転する現象をいう。例えば、宇宙線のような粒子線が原因となって半導体回路によって構成されたレジスタまたはメモリ領域の一部ビットが反転することが知られている。なお、ソフトエラー割込回路１３は、ソフトエラーの原因を問わず、後述するエラー検出回路によって検出される特定のビットエラーに応答してウェイクアップ信号を発生するものである。
【００２８】
ソフトエラー割込回路１３は、ソフトエラーを検出するためのエラー検出回路１４と、論理積ゲート１５（以下、ＡＮＤゲートという）とを有する。ソフトエラー割込回路１３は、省電力モード制御回路４からスリープ信号が出力されており、しかも、エラー検出回路１４によってソフトエラーが検出されたときに、ウェイクアップ信号を発生し、ＯＲゲート１２に出力する。
【００２９】
エラー検出回路１４は、第１の保持回路１６（以下、ＦＦ１６という）と第２の保持回路１７（以下、ＦＦ１７という）とを備える多重化された情報格納回路と、排他的論理和ゲート１８（以下、ＥＸＯＲゲートという）とを備える。保持回路１６、１７は、フリップフロップによって構成することができる。また、保持回路１６、１７は、ラッチ、メモリセルなどによっても構成することができる。ＦＦ１６およびＦＦ１７は、それぞれが１ビットの情報を格納する半導体回路である。なお、ＦＦ１６およびＦＦ１７に代えて、複数ビット分の保持回路群を設けてもよい。ＦＦ１６およびＦＦ１７は、マイコン２に接続されている。ＦＦ１６およびＦＦ１７には、マイコン２から出力されるライト信号によって、同じ「１」または「０」が書き込まれ、格納される。
【００３０】
ＦＦ１６およびＦＦ１７は、レジスタを割り付けることによって提供されている。この実施形態では、ＦＦ１６およびＦＦ１７には、ウェイクアップの許可または禁止を示すウェイクアップ許可ビットが割り付けられている。ウェイクアップ許可ビットに代えて、信号の立ち上がりでウェイクアップをかけるか、信号の立下りでウェイクアップをかけるかを設定する割込設定レジスタを割り付けてもよい。よって、ＦＦ１６およびＦＦ１７は、マイコンの動作に重要な意味をもつ情報が格納されるクリティカルビットである。特に、ＦＦ１６およびＦＦ１７は、マイコン２のウェイクアップ動作の可否に重要な意味をもつ情報を格納する。しかも、ＦＦ１６およびＦＦ１７には、同じ情報が格納されるので、クリティカルビットは、多重化されている。ＦＦ１６およびＦＦ１７は、多重化された格納回路を提供している。
【００３１】
ＥＸＯＲゲート１８は、ＦＦ１６およびＦＦ１７の情報が不一致となるとエラーを検出する。よって、エラー検出回路１８は、格納回路であるＦＦ１６およびＦＦ１７に多重化して格納された複数のクリティカルビットの情報が所定の関係を満たすときエラーを検出する。例えば、粒子線などの何らかの原因によってＦＦ１６およびＦＦ１７のいずれか一方が反転すると、両情報が不一致となりエラーとして検知される。
【００３２】
ＦＦ１６およびＦＦ１７の情報が不一致となり、しかもスリープ信号が出力されている（マイコンがスリープモードにある）と、ＡＮＤゲート１５がウェイクアップ信号を発生し、ＯＲゲート１２を経由してマイコン２に出力される。マイコン２は、ウェイクアップ信号によって通常モードに復帰し、レジスタなどのマイコンの動作に重要な意味をもつ情報が格納された情報格納回路を再設定する。このように、ＡＮＤゲート１５とＯＲゲート１２とは、マイコン２がスリープモードにある時にエラー検出回路１４がエラーを検出すると、マイコン２をスリープモードから通常モードへ復帰させるとともに、マイコン２にクリティカルビットの情報を復旧することにより修正する処理を実行させる異常回復回路を提供している。この結果、マイコン２は、ソフトエラーに起因して異常な動作を起こすことなく、スリープモードから通常モードへ復帰して正常な動作を実行することができる。
【００３３】
マイコン２は、ソフトエラー割込回路１３からのウェイクアップ信号を受けると、ＦＦ１６とＦＦ１７との情報が不一致の状態であっても、ウェイクアップ動作を行い、通常モードに復帰するよう設定されている。また、マイコン２は、ウェイクアップにより通常モードに復帰した後、再びスリープモードに入る前に、レジスタ値を正常な内容に再設定する手段を備えている。
【００３４】
図２において、第１実施形態の作動例が示されている。図２において、（Ａ）はＦＦ１６の状態、（Ｂ）はＦＦ１７の状態、（Ｃ）はマイコン２の動作モードを示す。図２において、（Ｄ）は、ソフトエラー割込回路１３を備えない比較例におけるマイコンの動作モードを示す。
【００３５】
時刻ｔ１１において、マイコン２が所定のレジスタ値をＦＦ１６およびＦＦ１７に設定（セット）する。ここでは、ウェイクアップ動作を許可する「１」が設定される。その後、時刻ｔ１２において、マイコン２がスリープモードに入る。やがて、ソフトエラーが発生し、ＦＦ１６またはＦＦ１７のいずれか一方が反転すると、時刻ｔ１３において、エラー検出回路１４がソフトエラーを検出する。この結果、時刻ｔ１４においてマイコン２はウェイクアップ動作を実行し、通常モードに復帰する。この後、マイコン２は時刻ｔ１５でＦＦ１６およびＦＦ１７に所定のレジスタ値を再び設定し、時刻ｔ１６において再びスリープモードに入る。この結果、時刻ｔ１５においてソフトエラーによるＦＦ１６の反転状態が解消される。やがて、正規のウェイクアップが実行される。例えば、タイマ割込みによってウェイクアップ信号が発生される。時刻ｔ１７で正規のウェイクアップ信号がマイコン２に入力されると、マイコン２は通常モードに復帰する。しかも、ＦＦ１６およびＦＦ１７の情報が時刻ｔ１５において再設定されているため、レジスタ値は正常な状態になっているから、時刻ｔ１７において正常に正規のウェイクアップが実行される。
【００３６】
図２（Ｄ）は、ソフトエラー割込回路１３を備えない比較例を示している。この場合、図２（Ａ）に破線で示されるようにＦＦ１６の情報が再設定されず、「０」の状態のまま時刻ｔ１７に至る。このため、時刻ｔ１７において正規のウェイクアップ信号がマイコン２に入力されても、マイコン２が正常なウェイクアップ動作を行えない。このため、マイコン２が通常モードに復帰できない場合がある。
【００３７】
以上に述べた実施形態によると、マイコン２がスリープモードにあるときでも、多重化されたクリティカルビットの内容が監視され、何らかの原因による一部のクリティカルビットの反転が検出されるとマイコン２を臨時的に、かつ強制的にウェイクアップさせ、クリティカルビットを再設定させている。このため、ソフトエラーなど何らかの原因によりクリティカルビットが反転することがあっても、マイコン２を正常にウェイクアップさせることができる。
【００３８】
（第２実施形態）
次に、本発明を適用した第２実施形態を説明する。先行する説明を参照することができる構成要素には、先行実施形態と同一の符号を付した。
【００３９】
図３において、制御装置１は、リセット制御回路２０を備えている。リセット制御回路２０は、所定の事象が生じるとリセット信号を発生し、マイコン２に入力する。これによりマイコン２は、初期化され、レジスタや変数などが初期値に戻される。これにより、スリープモードが解消され、初期状態から通常モードの実行を開始する。
【００４０】
リセット制御回路２０は、マイコン２をリセットすべき事象を検出し、リセット信号を発生する複数のリセット要求回路２１を備えている。外部リセット回路２１ａは、外部からのリセット要求を受信して、リセット信号を発生する。ウォッチドッグ回路２１ｂは、マイコン２が所定の動作を実行していないことを検出するとリセット信号を発生する。ソフトリセット回路２１ｃは、ソフトウェアからの要求によりリセット信号を発生する。
【００４１】
リセット制御回路２０は、選択回路としての論理和ゲート２２（以下、ＯＲゲートという）を有する。ＯＲゲート２２は、複数のリセット要求回路２１のいずれかからリセット信号が発生すると、それをマイコン２に向けて出力する。
【００４２】
リセット制御回路２０は、さらにソフトエラーリセット回路２３を備えている。ソフトエラーリセット回路２３は、マイコン２がスリープモード中に、マイコン２の動作に重要な変数を格納する格納回路にソフトエラーが発生すると、リセット信号を発生する。
【００４３】
ソフトエラーリセット回路２３は、ソフトエラーを検出するためのエラー検出回路２４と、論理積ゲート２５（以下、ＡＮＤゲートという）とを有する。ソフトエラーリセット回路２３は、省電力モード制御回路４からスリープ信号が出力されており、しかも、エラー検出回路２４によってソフトエラーが検出されたときに、リセット信号を発生し、ＯＲゲート２２に出力する。
【００４４】
エラー検出回路２４は、第１の保持回路２６（以下、ＦＦ２６という）と第２の保持回路２７（以下、ＦＦ２７という）とを備える多重化された情報格納回路と、排他的論理和ゲート２８（以下、ＥＸＯＲゲートという）とを備える。ＦＦ２６およびＦＦ２７は、それぞれが１ビットの情報を格納する半導体回路である。なお、ＦＦ２６およびＦＦ２７に代えて、複数ビット分の保持回路群を設けてもよい。ＦＦ２６およびＦＦ２７は、マイコン２に接続されている。ＦＦ２６およびＦＦ２７には、マイコン２から出力されるライト信号によって、同じ「１」または「０」が書き込まれ、格納される。
【００４５】
ＦＦ２６およびＦＦ２７は、マイコン２の動作に重要な変数（クリティカル変数ともいう）を格納するＲＡＭ上に設けられている。この実施形態では、ＦＦ２６およびＦＦ２７には、システム状態変数が割り付けられている。よって、ＦＦ２６およびＦＦ２７は、マイコンの動作に重要な意味をもつ情報が格納されるクリティカルビットである。特に、ＦＦ２６およびＦＦ２７は、マイコン２が暴走することなく処理を実行するために重要な意味をもつ情報を格納する。しかも、ＦＦ２６およびＦＦ２７には、同じ情報が格納されるので、クリティカルビットは、多重化されている。ＦＦ２６およびＦＦ２７は、多重化された格納回路を提供している。
【００４６】
ＥＸＯＲゲート２８は、ＦＦ２６およびＦＦ２７の情報が不一致となるとエラーを検出する。よって、エラー検出回路２８は、格納回路であるＦＦ２６およびＦＦ２７に多重化して格納された複数のクリティカルビットの情報が所定の関係を満たすときエラーを検出する。例えば、粒子線などの何らかの原因によってＦＦ２６およびＦＦ２７のいずれか一方が反転すると、両情報が不一致となりエラーとして検知される。
【００４７】
ＦＦ２６およびＦＦ２７の情報が不一致となり、しかもスリープ信号が出力されていると、ＡＮＤゲート２５がリセット信号を発生し、ＯＲゲート２２を経由してマイコン２に出力される。マイコン２は、リセット信号によって初期化され、レジスタなどのマイコンの動作に重要な意味をもつ情報が格納された情報格納回路が再設定される。このように、ＡＮＤゲート２５とＯＲゲート２２とは、マイコン２がスリープモードにある時にエラー検出回路２４がエラーを検出すると、マイコン２をリセットしてクリティカルビットの情報を初期化して修正する異常回復回路を提供している。この結果、マイコン２は、ソフトエラーに起因して異常な動作を起こすことなく、正常な動作を実行することができる。
【００４８】
図４において、第２実施形態の作動例が示されている。図４において、（Ａ）はＦＦ２６の状態、（Ｂ）はＦＦ２７の状態、（Ｃ）はマイコン２の動作モードを示す。図４において、（Ｄ）は、ソフトエラーリセット回路２３を備えない比較例におけるマイコンの動作モードを示す。
【００４９】
時刻ｔ２１において、マイコン２がクリティカル変数の値をＦＦ２６およびＦＦ２７に設定（セット）する。ここでは、ウェイクアップ動作を許可する「１」が設定される。その後、時刻ｔ２２において、マイコン２がスリープモードに入る。やがて、ソフトエラーが発生し、ＦＦ２６またはＦＦ２７のいずれか一方が反転すると、時刻ｔ２３において、エラー検出回路２４がソフトエラーを検出する。この結果、時刻ｔ２４においてマイコン２はリセットされ、初期状態から通常モードの実行を開始する。この後、マイコン２は時刻ｔ２５でＦＦ２６およびＦＦ２７に所定の値を再び設定し、時刻ｔ２６において再びスリープモードに入る。この結果、時刻ｔ２４のリセットによってソフトエラーによるＦＦ２６およびＦＦ２７の不一致状態が解消される。やがて、正規のウェイクアップが実行される。例えば、タイマ割込みによってウェイクアップ信号が発生される。時刻ｔ２７で正規のウェイクアップ信号がマイコン２に入力されると、マイコン２は通常モードに復帰する。しかも、ＦＦ２６およびＦＦ２７の情報が時刻ｔ２５において再設定されているため、クリティカル変数の値は正常な状態になっているから、時刻ｔ２７において正常に正規のウェイクアップが実行される。時刻ｔ２８では、ＦＦ２６およびＦＦ２７の値がクリアされる。
【００５０】
図４（Ｄ）は、ソフトエラーリセット回路２３を備えない比較例を示している。この場合、図４（Ａ）に破線で示されるようにＦＦ２６の情報が再設定されず、「０」の状態のまま時刻ｔ２７に至る。このため、時刻ｔ２７において正規のウェイクアップ信号がマイコン２に入力されマイコン２が通常モードに復帰しても、破壊されたクリティカル変数によって処理を実行するため、正常に動作できない場合がある。
【００５１】
以上に述べた実施形態によると、マイコン２がスリープモードにあるときでも、多重化されたクリティカルビットの内容が監視され、何らかの原因による一部のクリティカルビットの反転が検出されるとマイコン２を臨時的に、かつ強制的にリセットさせ、クリティカルビットを再設定させている。このため、ソフトエラーなど何らかの原因によりクリティカルビットが反転することがあっても、マイコン２がウェイクアップした後に、正常に動作させることができる。
【００５２】
（他の実施形態）
本発明の技術的範囲は、上述した実施形態にのみ限定されるものではない。上述した実施形態は、本発明の技術的範囲内で、多様な変形、改良、または拡張を伴うことができる。本発明は、少なくとも次のような変形、改良または拡張を伴う実施形態を包含する。
【００５３】
例えば、上述の実施形態では、２つの保持回路を設けることによりクリティカルビットを多重化したが、２つ以上の保持回路によって三重、四重の多重化を図ってもよい。また、多重化する対象は、１ビットだけに限らず、数ビット、数バイト、さらには所定の情報格納領域とすることができる。また、格納回路は、マイコンのレジスタあるいはマイコンのキャッシュメモリなどスタティックメモリ上の保持回路に限らず、ダイナミックメモリなど種々のメモリ素子によって提供されてもよい。
【符号の説明】
【００５４】
１  制御装置
２  マイコン
３  周辺回路
４  省電力モード制御回路
１０  ウェイクアップ制御回路
１１  ウェイクアップ要求回路
１１ａ  外部割込回路
１１ｂ  タイマ割込回路
１１ｃ  ネットワーク割込回路
１２  論理和ゲート
１３  ソフトエラー割込回路
１４  エラー検出回路
１５  論理積ゲート
１６  第１の保持回路
１７  第２の保持回路
１８  排他的論理和ゲート
２０  リセット制御回路
２１  リセット要求回路
２１ａ  外部リセット回路
２１ｂ  ウォッチドッグ回路
２１ｃ  ソフトリセット回路
２２  論理和ゲート
２３  ソフトエラーリセット回路
２４  エラー検出回路
２５  論理積ゲート
２６  第１の保持回路
２７  第２の保持回路
２８  排他的論理和ゲート
【図１】
2010231417.tif 000003
【図２】
2010231417.tif 000004
【図３】
2010231417.tif 000005
【図４】
2010231417.tif 000006