説明

マイクロコンピュータ

【課題】暗電流を増加させることなくレジスタのリフレッシュを行うことが可能なマイクロコンピュータを提供する。
【解決手段】CPUの動作モードを、CPUが動作している通常動作モードと、CPUが停止しているスリープモードとの間で切り替える動作モード切換手段と、通常動作モードにて動作し、CPUを動作させるためのメインクロックを生成するメインクロック生成手段と、メインクロック生成手段とは別に設けられ、サブクロックを生成するサブクロック生成手段と、CPUの設定状態や動作状態を含むCPU状態情報を記憶する第一記憶手段と、リフレッシュ用のCPU状態情報を記憶するする第二記憶手段と、スリープモードにおいて、サブクロックに基づいて予め定められたタイミングでリフレッシュ信号を生成するリフレッシュ信号生成手段と、リフレッシュ信号に基づいて、第二記憶手段に記憶されたCPU状態情報を読み出して、第一記憶手段に書き込むデータリフレッシュ手段と、を備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マイクロコンピュータに関し、特にCPUが停止しているときのレジスタ,メモリのリフレッシュ動作に関するものである。
【背景技術】
【0002】
車両において、各部の電子制御化に伴い、電子制御装置(以下、ECU:Electronic Control Unitと略称する)が数多く搭載されるようになっているが、消費電力も増加し、バッテリの負担も増大している。そこで、通常動作モードと、該通常動作モードよりも消費電力量が少ないスリープモードとの間で切り替えが可能なマイクロコンピュータを用いることで、ECUが非動作時のときには、マイクロコンピュータをスリープモードとして、消費電力量を抑制している。
【0003】
従来、スリープモード時に、CPUの動作に関する設定を保持するレジスタの記憶内容がノイズ等の影響で変わること(レジスタのデータ化け)によるシステム誤作動を防止するために、定期的にレジスタリフレッシュを行っている。図8に、従来技術によるレジスタリフレッシュの実施例のタイミングチャートを示す。レジスタリフレッシュタイミングTmが到来したときに、CPUの状態はスリープモード(CPU停止状態)から通常モード(CPU動作状態)に切り替わり、レジスタリフレッシュRmを行う。そして、レジスタリフレッシュRmを行った後に、CPUの状態は通常モードからスリープモードに切り替わる。
【0004】
また、光ディスク再生装置においても、スリープモードで処理を一時停止するときに、DRAMの内容を保持しつつ消費電力を低減するリフレッシュ回路が考案されている(特許文献1参照)。
【0005】
【特許文献1】特開2000−260179号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
図8の例では、CPU動作時にメインクロックを用いたレジスタリフレッシュRmを実施することで、レジスタのデータ化けを回避している。暗電流(ECU非動作時の消費電流)低減を図るためには、レジスタリフレッシュタイミングすなわち低消費電力動作時間Tmを長くすることは有効である。しかし、CPU動作時のレジスタリフレッシュの間隔(すなわちTm)が長くなるため、レジスタのデータ化けによるシステムへの悪影響を及ぼす確率が高くなる。そのため、積極的な低消費電力動作を行うことができず、暗電流増加の一因となっている。
【0007】
上記問題を背景として、本発明の課題は、暗電流を増加させることなくレジスタのリフレッシュを行うことが可能なマイクロコンピュータを提供することにある。
【課題を解決するための手段および発明の効果】
【0008】
上記課題を解決するためのマイクロコンピュータは、プログラムを実行するCPUと、CPUの動作モードを、該CPUが動作している通常モードと、該CPUが停止しているスリープモードとの間で切り替える動作モード切換手段と、通常モードにて動作し、CPUを動作させるためのメインクロックを生成するメインクロック生成手段と、メインクロック生成手段とは別に設けられ、サブクロックを生成するサブクロック生成手段と、CPUの設定状態や動作状態を含むCPU状態情報を記憶する第一記憶手段と、リフレッシュ用のCPU状態情報を記憶する第二記憶手段と、スリープモードにおいて、サブクロックに基づいて予め定められたタイミングでリフレッシュ信号を生成するリフレッシュ信号生成手段と、リフレッシュ信号に基づいて、第二記憶手段に記憶されたCPU状態情報を読み出して、第一記憶手段に書き込むデータリフレッシュ手段と、を備えることを特徴とする。
【0009】
上記構成においては、低消費電力動作時(スリープモード時)にはメインクロックは停止するが、サブクロックは動作し続けている。これを利用することで、低消費電力動作時のレジスタ(第一記憶手段)のリフレッシュを実現することができる。これにより、低消費電力動作時のレジスタのデータ化けの心配がなくなり、積極的な低消費電力動作を行うことで、暗電流低減が見込める。また、上記構成においては、リフレッシュは、CPU動作時には実行されない。そのため、CPU動作時はソフトウェアによるレジスタ書き換えに影響を与えることがないため、ECUの動作に影響を及ぼすことはない。
【0010】
また、本発明のマイクロコンピュータにおける第一記憶手段は、揮発性メモリを含んで構成され、第二記憶手段は、不揮発性メモリを含んで構成されるように構成される。
【0011】
揮発性メモリを用いてデータの保持を行う場合、常にデータ保持用の電圧を印加しているが、データ化けを確実に防止することはできない。また、不揮発性メモリは、データ化けの可能性が低く、リフレッシュ用のデータを保持するのに好適である。上記構成によって、レジスタ等に揮発性メモリを用いた場合でも、レジスタのデータ化けの可能性がより小さくなる。また、RAMを第一記憶手段として用いる場合にも、データ化けの心配がより小さくなる。
【0012】
また、本発明のマイクロコンピュータにおけるリフレッシュ信号生成手段は、メインクロックを検出するメインクロック検出手段を含み、メインクロックを検出したときにはリフレッシュ信号を生成せず、メインクロックを検出しないときにリフレッシュ信号を生成するように構成される。
【0013】
上記構成によって、リフレッシュは、CPU動作時には実行されない。一方、スリープモード時には確実に実行される。そのため、CPU動作時はソフトウェアによるレジスタ書き換えに影響を与えることがないため、ECUの動作に影響を及ぼすことはない。
【0014】
また、本発明のマイクロコンピュータにおける第二記憶手段には、予めバックアップ用のCPU状態情報が記憶されており、データリフレッシュ手段は、第二記憶手段から、バックアップ用のCPU状態情報を読み出して、第一記憶手段に書き込むように構成される。
【0015】
上記構成によって、レジスタ等においてデータ化けが発生したときにおいても、データの内容を復旧することができる。
【0016】
また、本発明のマイクロコンピュータにおける第二記憶手段は、CPUの動作モードが、通常モードからスリープモードに切り替えられる直前の、第一記憶手段に記憶されているCPU状態情報を記憶し、データリフレッシュ手段は、第二記憶手段から、通常モードからスリープモードに切り替えられる直前のCPU状態情報を読み出して、第一記憶手段に書き込むように構成される。
【0017】
上記構成によって、レジスタ等においてデータ化けが発生したときにおいても、データの内容を復旧することができ、さらに、スリープモードから通常モードに切り替ったときには、CPUは、通常モードからスリープモードに切り替えられる直前の状態から動作するため、ECUの動作を円滑なものとすることができる。
【0018】
また、本発明のマイクロコンピュータは、第一記憶手段に記憶されたCPU状態情報の内容と、第二記憶手段に記憶されたCPU状態情報の内容とを比較するCPU状態情報比較手段を備え、データリフレッシュ手段は、CPU状態情報の内容の比較結果に基づいて、第二記憶手段からCPU状態情報を読み出して、第一記憶手段に書き込むように構成される。
【0019】
上記構成によって、リフレッシュの対象を選択・限定することができるため、リフレッシュ時間を短縮することができる。また、リフレッシュが不要な領域に書き込みを行わないため、書き込みの際にデータが化けるということも発生しない。
【0020】
また、本発明のマイクロコンピュータにおけるデータリフレッシュ手段は、第一記憶手段に記憶されたCPU状態情報の内容と、第二記憶手段に記憶されたCPU状態情報の内容とが異なっているときに、異なっているとされたCPU状態情報の内容のみを、第二記憶手段から読み出して前記第一記憶手段に書き込むように構成される。
【0021】
上記構成によって、CPU状態情報の内容とが異なっているもののみを書き換えるため、リフレッシュに要する時間を短縮することができる。また、リフレッシュが不要な領域に書き込みを行わないため、書き込みの際にデータが化けるということも発生しない。
【0022】
また、本発明のマイクロコンピュータにおけるデータリフレッシュ手段は、第一記憶手段に記憶されたCPU状態情報の内容と、第二記憶手段に記憶されたCPU状態情報の内容とが、少なくとも1つ以上異なっているときに、第一記憶手段の内容を、スリープモードから通常モードに切り替えられた際に、予め定められた内容に書き換える旨のデータ再設定情報を書き込むように構成される。
【0023】
上記構成によって、スリープモード時にデータ化けが発生したときには、データのリフレッシュは行われないが、スリープモードから通常モードに切り替えられた際に、実質的にデータのリフレッシュが行われ、暗電流も増加せず、ECUの動作に影響を及ぼすことはない。
【0024】
また、本発明のマイクロコンピュータにおけるサブクロック生成手段は、CR発振回路を含むように構成される。
【0025】
CR発振回路は、C(コンデンサ),R(抵抗),トランジスタあるいはオペアンプ等で構成され、水晶発振子が不要である。上記構成によって、比較的安価でサブクロック生成手段を構成することが可能となる。また、CR発振回路は集積化が可能なため、マイクロコンピュータに内蔵することも可能である。さらに、水晶発振子を用いた発振回路に比べて、消費電流が少ないので、スリープモードでの動作に適している。
【発明を実施するための最良の形態】
【0026】
以下、本発明のマイクロコンピュータを、図面を参照しながら説明する。本発明のマイクロコンピュータは、例えば、車両に搭載されたECUに用いられる。車両では暗電流が多いと、バッテリの消耗を早めるため、本発明のマイクロコンピュータを用いることで、暗電流を低減でき、バッテリの消耗を抑えることができる。
【0027】
図1に、マイクロコンピュータ(以下、マイコンと略称する)1およびその周辺構成を示す。マイコン1は、基本的な構成要素として、プログラムを実行するCPU11,マイコン1の機能や動作モードを選択して設定するためのDRAMあるいはSRAMで構成されるレジスタ12,プログラムやデータが予め格納されるROM13,CPU11による演算結果を一時記憶するためのRAM14,EEPROM(Electrical Erasable & Programmable Read Only Memory:電気的消去・プログラム可能・読出し専用メモリ)あるいはフラッシュメモリ等の不揮発性記憶媒体で構成されるメモリ15等が、データバス24を介して接続されている。
【0028】
なお、CPU11が本発明の動作モード切換手段に相当し、レジスタ12が本発明の第一記憶手段に相当し、ROM13が本発明の第二記憶手段に相当し、RAM14が本発明の第一記憶手段に相当し、メモリ15が本発明の第二記憶手段に相当する。また、レジスタ12に記憶された情報の少なくとも一部が本発明のCPU状態情報に相当し、さらに、RAM14に記憶された情報の少なくとも一部も本発明のCPU状態情報に相当する。
【0029】
そして、マイコン1は、その外部に設けられる発振素子23とによりCPU11の動作クロックであるメインクロック信号(例えば、数MHz〜数十MHz)を生成するメイン発振回路16と、上記メインクロック信号よりも周波数が低いサブクロック信号(例えば、数十KHz)を生成するサブ発振回路18とを備えている。なお、メイン発振回路16が本発明のメインクロック生成手段に相当する。また、サブ発振回路18が本発明のサブクロック生成手段に相当する。
【0030】
また、マイコン1は、レジスタ等のリフレッシュ動作を行うリフレッシュ制御部19を備えている。リフレッシュ制御部19は、例えばPLD(Programmable Logic Device:プログラム可能論理デバイス)によって構成され、メインクロック信号およびサブクロック信号の状態に基づいて生成されるリフレッシュ信号生成部17からの信号に基づいてリフレッシュ動作を行う。なお、リフレッシュ制御部19が本発明のメモリデータリフレッシュ手段,CPU状態情報比較手段に相当する。
【0031】
図10に、リフレッシュ信号生成部17の構成を示す。リフレッシュ信号生成部17は、メイン発振回路16からのメインクロックを検出する検出回路17a,サブ発振回路18と分周回路17cとの経路の接続/遮断を行うスイッチ回路17b,サブ発振回路18からのサブクロックを分周する分周回路17cを含んで構成される。なお、リフレッシュ信号生成部17が本発明のリフレッシュ信号生成手段に相当する。また、検出回路17aが本発明のメインクロック検出手段に相当する。
【0032】
検出回路17aは、メインクロックを検出したときには、スイッチ回路17bをオフ状態とし、サブ発振回路18と分周回路17cとの経路が遮断状態となり、分周回路17cからは信号は出力されない。一方、メインクロックを検出しないきとには、スイッチ回路17bをオン状態とし、サブ発振回路18と分周回路17cとの経路の経路が接続状態となり、分周回路17cからはサブクロックが分周された信号が出力される。
【0033】
図1に戻り、CPU11は、特定の命令を実行することによってマイコン1の動作モードを、少なくともCPU11およびメイン発振回路が動作する通常動作モードと、CPU11およびメイン発振回路16の動作を停止させ、通常動作モードよりも消費電力量が少ないスリープモードに切り替え制御することができるようになっている。
【0034】
よって、リフレッシュ信号生成部17は、スリープモードにおいてのみ、サブクロックが分周された信号を出力する。
【0035】
また、マイコン1は、モータやLCD等の外部アクチュエータを駆動するためのドライバ20,シリアル通信を行うシリアル通信部21,外部との信号の入出力を行うための汎用入出力ポートを含む入出力部22等を含むこともある。
【0036】
電源回路25は、例えばバッテリ等の外部電源装置から、マイコン1の各部に電源を供給するためのものである(各部への結線は省略)。
【0037】
図2に、サブ発振回路18の構成例を示す。サブ発振回路18は、周知のCR発振回路により構成される。図2は、サブ発振回路18をウィーンブリッジ型発振回路で構成した例である。他に、ザルツァ型発振回路,移相型発振回路を用いてもよい。図2の例では、抵抗R1,R2、コンデンサC1,C2、オペアンプOPが、発振回路の基本構成要素である。また、抵抗R3は振幅安定化用、抵抗R4は振幅調整用の抵抗である。出力端子SIN OUTから出力されるサブクロック信号の発振周波数fは、f=1/{2π×(C1×C2×R1×R2)1/2}となる。
【0038】
図3に、データリフレッシュ動作における、マイコン1の動作の流れを示す。まず、スリープモードに移行する命令が実行されたか否かを判定する。スリープモード移行命令が実行されたとき(S11:Yes)、少なくともCPU11およびメイン発振回路16の動作を停止して、通常モードからスリープモードに移行する(S13)。なお、ステップS12については後述する。スリープモード中は、メイン発振回路16は停止しているが、サブ発振回路18は動作している。また、サブ発振回路18は、消費電力低減の面から、通常モード時には停止している方が望ましい。
【0039】
スリープモード中は、通常モードに移行する命令が実行されたか否かを判定する。例えば、スリープモード中にシリアル通信部20においてデータを受信した場合、あるいは入出力部22で予め定められた信号を検出した場合、シリアル通信部20あるいは入出力部22からCPU11にウェイクアップ信号が送られる。このウェイクアップ信号が通常モード移行命令に相当する。通常モード移行命令が実行されたとき(S14:Yes)、メイン発振回路16およびCPU11の動作を開始してスリープモードから通常モードに移行する(S17)。
【0040】
一方、通常モード移行命令が実行されずスリープモードが継続中のとき(S14:No)、リフレッシュタイミング(図9のRsに相当)が到来したか否かを判定する。リフレッシュ信号生成部17には、メインクロックとサブクロックの両方が入力されているが、上述のとおり、メイン発振回路16が動作していてメインクロックが入力されているとき(すなわち通常モード時)には、リフレッシュ制御部19に対して何も出力しない。一方、メイン発振回路16が停止してメインクロックが入力されないとき(すなわちスリープモード時)には、サブクロックに基づいて、例えば分周処理を行ってリフレッシュタイミング信号をリフレッシュ制御部19に対して出力する。
【0041】
リフレッシュタイミングが到来したとき(S15:Yes)、例えばレジスタ12のデータリフレッシュ動作(S16)を実行する(後述)。
【0042】
図4を用いて、図3のステップS16に相当するデータリフレッシュ動作について、レジスタ12に記憶されている内容のリフレッシュを例に挙げて説明する。なお、本動作は、リフレッシュ制御部19において行われる。まず、ROM13に予め記憶されているリフレッシュ情報を1つあるいは複数読み出す(S31)。
【0043】
図5に、ROM13に記憶されているリフレッシュ情報の一例を示す。リフレッシュ情報はレジスタのアドレスと、その設定内容であるデータとが関連付けて記憶されている。図4に戻り、リフレッシュ制御部19は、リフレッシュ情報に含まれるアドレスを指定して、そのアドレスに対応付けられたデータをレジスタ12に書き込む(S32)。
【0044】
そして、全データ、あるいは予め定められたアドレス範囲または予め定められた個数のデータの書き込みが完了したとき(S33:Yes)、本動作を終了する。
【0045】
図4の例では、ROM13に予め記憶されているリフレッシュ情報を用いてレジスタのリフレッシュを行っていたが、マイコン1がスリープモードに移行する直前のデータを記憶し、その記憶内容をリフレッシュ情報として用いてもよい。以下にその動作の概要を説明する。
【0046】
まず、図3のマイコン1の動作において、スリープモードに移行する命令が実行されたか否かを判定して、スリープモード移行命令が実行されたとき(S11:Yes)、レジスタ12のデータをメモリ15に退避する(S12)。その後、CPU11およびメイン発振回路16の動作を停止して通常モードからスリープモードに移行する(S13)。以降の動作は、図3と同様である。
【0047】
図4のデータリフレッシュ動作においては、ステップS31においてROM13からではなくメモリ15からリフレッシュ情報を読み出す。その他の動作は図4と同様である。
【0048】
メモリ15に記憶したリフレッシュ情報を用いて、リフレッシュ動作を行う構成において、レジスタ12の他にRAM14のリフレッシュを行うことも可能である。RAM14は、少なくとも一部の領域がSRAMあるいはデータを保持可能なDRAMで構成されていることもある。このため、スリープモード時にはRAM14のこれらの領域においてデータ化けが発生する可能性もある。以下にその動作の概要を説明する。
【0049】
まず、図3のマイコン1の動作において、スリープモードに移行する命令が実行されたか否かを判定して、スリープモード移行命令が実行されたとき(S11:Yes)、RAM14のデータをメモリ15に退避する(S12)。その後、メイン発振回路16およびCPU11の動作を停止して通常モードからスリープモードに移行する(S13)。以降の動作は、図3と同様である。
【0050】
図4のデータリフレッシュ動作においては、ステップS31においてROM13からではなくメモリ15からリフレッシュ情報を読み出し、ステップS32では、読み出したデータをRAM14に書き込む。その他の動作は図4と同様である。
【0051】
図6を用いて、図3のステップS16に相当するデータリフレッシュ動作の別例について、レジスタ12に記憶されている内容のリフレッシュを例に挙げて説明する。まず、ROM13に予め記憶されているリフレッシュ情報(ROMデータ)を例えば1つ読み出す(S51)。次に、読み出したフレッシュ情報に含まれるアドレスに相当するレジスタ12のデータ(レジスタデータ)を読み出す(S52)。
【0052】
そして、読み出したROMデータおよびレジスタデータの内容を比較する(S53)。比較の結果、両者が一致しているとき(S54:Yes)、データ化けが発生していないのでステップS56(後述)へ移る。一方、両者が一致していないとき(S54:No)、データ化けが発生したとして、読み出したROMデータをレジスタ12の該当するアドレス領域へ書き込む(S55)。このとき、レジスタ12の予め定められた領域に予め定められたデータ(初期化コード:本発明のデータ再設定情報)を書き込む構成としてもよい。
【0053】
そして、全データ、あるいは予め定められたアドレス範囲または予め定められた個数のデータの書き込みが完了したとき(S56:Yes)、本動作を終了する。
【0054】
図7を用いて、レジスタ12の予め定められた領域に予め定められたデータ(初期化コード)が書き込まれた構成における、マイコン1の通常モードへの移行動作について説明する。なお、本動作は、マイコン1がスリープモードとなっていることが前提となる。
【0055】
まず、図3と同様に、通常モードに移行する命令が実行されたか否かを判定する。通常モード移行命令が実行されたとき(S71:Yes)、メイン発振回路16およびCPU11の動作を開始してスリープモードから通常モードに移行する(S72)。次に、レジスタ12の予め定められた領域の内容を読み出す(S73)。
【0056】
そして、その読み出した内容が初期化コードか否かを判定する。初期化コードであるとき(S74:Yes)、レジスタ12の全ての内容あるいは予め定められた範囲の内容を初期化する(S75)。初期化の方法は、以下のいずれを用いてもよい。
・ROM13に予め記憶されているレジスタ初期化データ(リフレッシュ情報でもよい)をレジスタ12に書き込む。
・ROM13に記憶されてCPU11が実行するプログラムに含まれるレジスタ初期化処理を実行し、レジスタ初期化処理に含まれる初期化データをレジスタ12に書き込む。
【0057】
図6の構成においても、マイコン1がスリープモードに移行する直前のデータを記憶し、その記憶内容をリフレッシュ情報として用いることが可能である。この場合、図3ではステップS12を実行して、レジスタデータをメモリ15に退避してリフレッシュ情報を作成する。そして、図6のステップS51では、メモリ15に記憶されたリフレッシュ情報を読み出す。
【0058】
また、図6の構成においても、RAM14のリフレッシュを行うことが可能である。この場合、図3ではステップS12を実行して、RAM14のデータをメモリ15に退避してリフレッシュ情報を作成する。そして、図6のステップS51では、メモリ15に記憶されたリフレッシュ情報を読み出し、ステップS52ではRAM14のデータを読み出す。
【0059】
また、図6の構成において、メモリ15に記憶されたリフレッシュ情報とRAM14のデータとを比較した結果、両者の内容が異なってデータ化けが発生している場合(S54:No)、レジスタ12と同様に、RAM14の所定領域に初期化コードを書き込み、図7のようなRAM初期化処理を行ってもよい。
【0060】
図8に、従来技術によるレジスタリフレッシュ動作に関するタイミングチャートを示す。また、図9に、本発明の構成によるレジスタリフレッシュ動作に関するタイミングチャートを示す。図8の例では、レジスタのリフレッシュRmを行う度にCPU11を動作させなければならず、低消費電力動作時間Tmが継続せず、Tmの延べ時間も長くならないが、図9の例では、レジスタのリフレッシュRsを行うためにCPU11を動作させる必要がないので、低消費電力動作時間Tsを、継続時間,延べ時間とも図8のTmよりも長くすることができる。無論、RAM14のデータのリフレッシュも同様に行うことができる。
【0061】
上述の図3〜図6の例では、レジスタ12のみ、あるいはRAM14のみのリフレッシュを行っているが、レジスタ12およびRAM14の両方をリフレッシュしてもよい。例えば、図4において、まず、レジスタ12のリフレッシュを行い、続いてRAM14のリフレッシュを行う。無論、レジスタ12のリフレッシュ動作とRAM14のリフレッシュ動作とを別個のものとしてもよい。
【0062】
また、リフレッシュタイミング(Rs)が到来したときに、レジスタ12のリフレッシュとRAM14のリフレッシュとを交互に行ってもよい。
【0063】
以上、本発明の実施の形態を説明したが、これらはあくまで例示にすぎず、本発明はこれらに限定されるものではなく、特許請求の範囲の趣旨を逸脱しない限りにおいて、当業者の知識に基づく種々の変更が可能である。
【図面の簡単な説明】
【0064】
【図1】マイクロコンピュータの構成例を示す図。
【図2】サブ発振回路の構成例を示す図。
【図3】データリフレッシュ動作を説明するフロー図。
【図4】図3のデータリフレッシュ動作の詳細を説明するフロー図。
【図5】リフレッシュ情報の一例を示す図。
【図6】データリフレッシュ動作の別例を説明するフロー図。
【図7】レジスタ初期化時のマイコンの動作を説明するフロー図。
【図8】従来技術によるレジスタリフレッシュの動作例を示すタイミングチャート。
【図9】本発明の構成によるレジスタリフレッシュの動作例を示すタイミングチャート。
【図10】リフレッシュ信号生成部の構成例を示す図。
【符号の説明】
【0065】
1 マイクロコンピュータ(マイコン)
11 CPU(動作モード切換手段)
12 レジスタ(第一記憶手段)
13 ROM(第二記憶手段)
14 RAM(第一記憶手段)
15 メモリ(第二記憶手段)
16 メイン発振回路(メインクロック生成手段)
17 リフレッシュ信号生成部(リフレッシュ信号生成手段,CPU状態情報比較手段)
17a 検出回路(メインクロック検出手段)
17b スイッチ回路
17c 分周回路
18 サブ発振回路(サブクロック生成手段)
19 リフレッシュ制御部(メモリデータリフレッシュ手段)
23 発振素子

【特許請求の範囲】
【請求項1】
プログラムを実行するCPUと、
前記CPUの動作モードを、該CPUが動作している通常モードと、該CPUが停止しているスリープモードとの間で切り替える動作モード切換手段と、
前記通常モードにて動作し、前記CPUを動作させるためのメインクロックを生成するメインクロック生成手段と、
前記メインクロック生成手段とは別に設けられ、サブクロックを生成するサブクロック生成手段と、
前記CPUの設定状態や動作状態を含むCPU状態情報を記憶する第一記憶手段と、
リフレッシュ用の前記CPU状態情報を記憶する第二記憶手段と、
前記スリープモードにおいて、前記サブクロックに基づいて予め定められたタイミングでリフレッシュ信号を生成するリフレッシュ信号生成手段と、
前記リフレッシュ信号に基づいて、前記第二記憶手段に記憶された前記CPU状態情報を読み出して、前記第一記憶手段に書き込むデータリフレッシュ手段と、
を備えることを特徴とするマイクロコンピュータ。
【請求項2】
前記第一記憶手段は、揮発性メモリを含んで構成され、
前記第二記憶手段は、不揮発性メモリを含んで構成される請求項1に記載のマイクロコンピュータ。
【請求項3】
前記リフレッシュ信号生成手段は、前記メインクロックを検出するメインクロック検出手段を含み、
前記メインクロックを検出したときには前記リフレッシュ信号を生成せず、前記メインクロックを検出しないときに前記リフレッシュ信号を生成する請求項1または請求項2に記載のマイクロコンピュータ。
【請求項4】
前記第二記憶手段には、予めバックアップ用のCPU状態情報が記憶されており、
前記データリフレッシュ手段は、前記第二記憶手段から、前記バックアップ用のCPU状態情報を読み出して、前記第一記憶手段に書き込む請求項1ないし請求項3のいずれか1項に記載のマイクロコンピュータ。
【請求項5】
前記第二記憶手段は、前記CPUの動作モードが、前記通常モードから前記スリープモードに切り替えられる直前の、前記第一記憶手段に記憶されている前記CPU状態情報を記憶し、
前記データリフレッシュ手段は、前記第二記憶手段から、前記通常モードから前記スリープモードに切り替えられる直前の前記CPU状態情報を読み出して、前記第一記憶手段に書き込む請求項1ないし請求項4のいずれか1項に記載のマイクロコンピュータ。
【請求項6】
前記第一記憶手段に記憶されたCPU状態情報の内容と、前記第二記憶手段に記憶されたCPU状態情報の内容とを比較するCPU状態情報比較手段を備え、
前記データリフレッシュ手段は、前記CPU状態情報の内容の比較結果に基づいて、前記第二記憶手段からCPU状態情報を読み出して、前記第一記憶手段に書き込む請求項1ないし請求項5のいずれか1項に記載のマイクロコンピュータ。
【請求項7】
前記データリフレッシュ手段は、前記第一記憶手段に記憶されたCPU状態情報の内容と、前記第二記憶手段に記憶されたCPU状態情報の内容とが異なっているときに、前記異なっているとされたCPU状態情報の内容のみを、前記第二記憶手段から読み出して前記第一記憶手段に書き込む請求項6に記載のマイクロコンピュータ。
【請求項8】
前記データリフレッシュ手段は、前記第一記憶手段に記憶されたCPU状態情報の内容と、前記第二記憶手段に記憶されたCPU状態情報の内容とが、少なくとも1つ以上異なっているときに、前記第一記憶手段に記憶されている全てのCPU状態情報の内容を、前記スリープモードから前記通常モードに切り替えられた際に、予め定められた内容に書き換える旨のデータ再設定情報を書き込む請求項6に記載のマイクロコンピュータ。
【請求項9】
前記サブクロック生成手段は、CR発振回路を含む請求項1ないし請求項8のいずれか1項に記載のマイクロコンピュータ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−61393(P2010−61393A)
【公開日】平成22年3月18日(2010.3.18)
【国際特許分類】
【出願番号】特願2008−226328(P2008−226328)
【出願日】平成20年9月3日(2008.9.3)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】