(57)【要約】【課題】回路規模が小さく、消費電流を少ないマイクロコンピュータを提供する。【解決手段】時計カウンタ６０は、通常動作モードには、通常電源電圧が供給されて、秒、分、時、日、月、年をカウントし、バックアップ動作モードでは、バックアップ電源電圧が供給され、秒、分、時、日をカウントし、かつ所定の日数を超えたときに、繰上りを記憶する。【選択図】図１
2014026503.tif 000002
【特許請求の範囲】
【請求項１】
バックアップ電源電圧を受ける端子と、
通常電源電圧を受ける端子と、
通常動作モードには、通常電源電圧が供給されて、秒、分、時、日、月、年をカウントし、バックアップ動作モードでは、バックアップ電源電圧が供給され、秒、分、時、日をカウントし、かつ所定の日数を超えたときに、繰上りを記憶する時計カウンタとを備えた、マイクロコンピュータ。
【請求項２】
前記時計カウンタは、
秒をカウントする秒カウンタと、
分をカウントする分カウンタと、
時刻をカウントする時カウンタと、
日をカウントする日カウンタと、
通常動作モードにおいて、月をカウントする月カウンタと、
通常動作モードにおいて、年をカウントする年カウンタと、
１以上のキャリービットを記憶し、バックアップ動作モードにおいて、前記日カウンタが所定値に達したときに、前記キャリービットの値が変化するキャリービットレジスタとを含む、請求項１記載のマイクロコンピュータ。
【請求項３】
通常動作モードで、通常電源電圧が供給されるメモリおよびＣＰＵを備え、  
前記メモリは、年および月のデータを記憶し、
前記ＣＰＵは、バックアップ動作モードから通常動作モードに復帰したときに、日カウンタの値と、キャリービットレジスタに格納されている値に基づいて、前記メモリ内の年および月のデータを更新するとともに、前記日カウンタのカウンタ値を調整する、請求項２記載のマイクロコンピュータ。
【請求項４】
バックアップ電源電圧を受ける端子と、
通常電源電圧を受ける端子と、
通常動作モードには、通常電源電圧が供給されて、バックアップ動作モードでは、バックアップ電源電圧が供給され、両動作モードにおいて、秒、分、時、日をカウントし、１以上のキャリービットを記憶し、所定の日数を超えたときに、前記１以上のキャリービットの値が変化する時計カウンタと、
年および月のデータを記憶するメモリと、
通常動作モードにおいて、通常電源電圧が供給されて、前記１以上のキャリービットの値が変化するごとに、前記メモリ内の年および月のデータを更新するＣＰＵとを備えた、マイクロコンピュータ。
【請求項５】
バックアップ電源電圧を受ける端子と、
通常電源電圧を受ける端子と、
通常動作モードには、通常電源電圧が供給されて、バックアップ動作モードでは、バックアップ電源電圧が供給され、両動作モードにおいて、秒、分、時、日をカウントし、１以上のキャリービットを記憶し、所定の日数を超えたときに、前記１以上のキャリービットの値が変化する時計カウンタと、
年および月を記憶するメモリと、
通常動作モードには、通常電源電圧が供給されて、バックアップ動作モードでは、バックアップ電源電圧が供給され、通常動作モードにおいて、前記１以上のキャリービットの値が変化するごとに、前記メモリ内の年および月のデータを更新し、バックアップ動作モードにおいて、前記１以上のキャリービットの値が所定の値に変化するごとに、前記メモリ内の年および月のデータを更新するＣＰＵとを備えた、マイクロコンピュータ。
【請求項６】
前記時計カウンタは、
秒をカウントする秒カウンタと、
分をカウントする分カウンタと、
時刻をカウントする時カウンタと、
日をカウントする日カウンタと、
１以上のキャリービットを記憶し、前記日カウンタが所定値に達したときに、前記１以上のキャリービットの値が変化するキャリービットレジスタとを含む、請求項４または５記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロコンピュータに関し、たとえば時計カウンタを有するマイクロコンピュータに関する。
【背景技術】
【０００２】
マイクロコンピュータは、通常電源とバックアップ電源を有し、マイクロコンピュータは、通常電源が供給される通常電源領域と、通常電源と通常電源がオフされた時にバックアップ電源からの供給に切り替えることができるバックアップ電源領域で構成される。
【０００３】
通常電源がオフされた時にはバックアップ電源のみでバックアップ電源領域に配置された回路の動作（主に、時間計測用カウンタなど）を継続する。このバックアップ電源領域に配置される時計カウンタは、年、月、週、日、時、分、秒のカウンタをそれぞれ持つ構成となっていて、１秒毎に９９年間順次カウントアップしていく。
【０００４】
特許文献１（特開２００４−２２１０１８号公報）には、ランプを特定の点灯モードとする時間帯を、商用交流電源の通電時には商用交流電源を検出して作動する２４時間タイマで管理し、商用交流電源の停電時にはバックアップ電源により常時作動しているリアルタイムクロックによるＲＴＣタイマで管理する照明器具が記載されている。この照明器具では、商用交流電源の停電検知時にはＲＴＣタイマがリセットされるとともに、ＲＴＣタイマの「時分秒」データに２４時間タイマによるカウント値が書き込まれてからＲＴＣタイマがカウント開始される。商用交流電源の復電検知時には２４時間タイマがリセットされるとともに、それまでのＲＴＣタイマによる「時分秒」データが２４時間タイマに書き込まれてから２４時間タイマがカウント開始される。また、複数の点灯モードを備えている場合、点灯モード毎に商用交流電源の停電検知時にＲＴＣタイマに書き込む「年」データを異ならせる。商用交流電源の復電検知時にはＲＴＣタイマの「年」データの範囲に基づいて停電検知時のモードを判定した上で、「現在の設定モードは停電検知時のモードと同じモードか？」を判定する。同じ場合は２４時間タイマにＲＴＣタイマによる「時分秒」データを書き込み、同じでない場合は２４時間タイマをリセットする。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２２１０１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、時計カウンタは、年、月、週、日、時、分、秒のカウンタを備えるため、回路規模が大きく、消費電流も大きい。そのため、停電時などに、時計カウンタの動作を継続させるには、容量のより大きなバックアップ電源を接続しなければならないという問題がある。
【０００７】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかであろう。
【課題を解決するための手段】
【０００８】
一実施の形態のマイクロコンピュータは、通常動作モードには、通常電源電圧が供給されて、秒、分、時、日、月、年をカウントし、バックアップ動作モードでは、バックアップ電源電圧が供給され、秒、分、時、日をカウントし、かつ所定の日数を超えたときに、繰上りを記憶する時計カウンタを備える。
【発明の効果】
【０００９】
一実施の形態のマイクロコンピュータによれば、回路規模を小さくし、消費電流を少なくすることができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態のマイクロコンピュータの構成を表わす図である。
【図２】第１の実施形態の時計カウンタの構成を表わす図である。
【図３】第１の実施形態のマイクロコンピュータによる時計カウント動作の手順を表わすフローチャートである。
【図４】第２の実施形態のマイクロコンピュータによる時計カウントの動作手順を表わすフローチャートである。
【図５】第３の実施形態のマイクロコンピュータの構成を表わす図である。
【図６】第３の実施形態の時計カウンタの構成を表わす図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を用いて説明する。
［第１の実施形態］
図１は、第１の実施形態のマイクロコンピュータの構成を表わす図である。
【００１２】
マイクロコンピュータ１００は、ＶＣＣ端子５１と、ＶＢＡＴＴ端子５２と、基準電圧生成回路５３と、比較器６２と、降圧回路５５と、スイッチ制御回路６６と、第１のスイッチ６５と、第２のスイッチ６４と、割込コントローラ６１と、ＣＰＵ（Central Processing Unit）５７と、フラッシュメモリ５９、ＳＲＡＭ（Static Random Access Memory）５６と、周辺回路５８と、時計カウンタ６０とを備える。
【００１３】
ＶＣＣ端子５１は、外部から通常電源電圧ＶＣＣを受ける。
ＶＢＡＴＴ端子５２は、外部の電池からバックアップ電源電圧ＶＢＡＴＴを受ける。
【００１４】
基準電圧生成回路５３は、パワーオンリセットを発生させるための基準電圧を生成する。
【００１５】
比較器６２は、基準電圧と通常電源電圧ＶＣＣとを比較する。比較器６２は、通常電源電圧ＶＣＣの大きさが基準電圧以下の場合、バックアップ動作モードを表わす「Ｈ」レベルのモード信号ＭＤを出力し、電源電圧ＶＣＣの大きさが基準電圧を超える場合には、通常動作モードを表わす「Ｌ」レベルのモード信号ＭＤを出力する。
【００１６】
降圧回路５５は、ＳＲＡＭ５６などの内部ロジック用の電源を生成する。
フラッシュメモリ５９は、現在の（年、月）のデータを記憶する。
【００１７】
割込コントローラ６１は、通常動作モードにおいて、時計カウンタ６０から割込み要求を受け、ＣＰＵ５７へ出力する。
【００１８】
ＣＰＵ５７は、通常動作モードにおいて、割込コントローラ６１から割込み要求を受信すると、キャリービットの値が変化するごとに、フラッシュメモリ５９内の年および月のデータを更新する。
【００１９】
ＳＲＡＭ５６は、各種のデータを記憶する。
周辺回路５８は、たとえば、マイクロコンピュータと外部とのインタフェース回路である。
【００２０】
スイッチ制御回路６６は、比較器６２から「Ｌ」レベルのモード信号ＭＤを受けたときには、マイクロコンピュータ１００の動作モードを通常動作モードに設定し、第１のスイッチ６５をオフにし、かつ第２のスイッチ６４をオンにする。スイッチ制御回路６６は、比較器６２から「Ｈ」レベルのモード信号ＭＤを受けたときには、マイクロコンピュータ１００の動作モードをバックアップ動作モードに設定し、第１のスイッチ６５をオンにし、かつ第２のスイッチ６４をオフにする。
【００２１】
通常領域には、ＶＣＣ端子５１と、基準電圧生成回路５３と、比較器６２と、降圧回路５５と、ＳＲＡＭ５６と、周辺回路５８と、ＣＰＵ５７と、フラッシュメモリ５９と、割込コントローラ６１とが配置される。
【００２２】
バッテリ動作可能領域には、ＶＢＡＴＴ端子５２と、第１のスイッチ６５と、第２のスイッチ６４と、スイッチ制御回路６６と、時計カウンタ６０とが配置される。
【００２３】
バッテリ動作可能領域内の機器は、通常動作モードでは、ＶＣＣ電源電圧で動作し、バックアップ動作モードでは、バックアップ電源電圧ＶＢＡＴＴで動作する。
【００２４】
通常領域内の機器は、通常動作モードでは、ＶＣＣ電源電圧で動作し、バックアップ動作モードでは、電源電圧が供給されず、動作しない。
【００２５】
時計カウンタ６０は、通常動作モードには、通常電源電圧が供給されて、バックアップ動作モードでは、バックアップ電源電圧が供給される。時計カウンタ６０は、通常動作モードおよびバックアップ動作モードにおいて、秒、分、時、日をカウントし、かつ１以上のキャリービットを記憶し、所定の日数を超えたときに、キャリービットの値が変化する。
【００２６】
図２は、第１の実施形態の時計カウンタの構成を表わす図である。
時計カウンタ６０は、サブクロック発振器２と、１２８Ｈｚ生成回路３と、１秒生成回路４と、秒カウンタ５と、分カウンタ６と、時カウンタ７と、日カウンタ９と、キャリービットレジスタ１４とを含む。
【００２７】
サブクロック発振器２は、サブクロックを発生する。
１２８Ｈｚ生成回路３は、サブクロックから１２８Ｈｚのクロックを出力する。
【００２８】
１秒生成回路４は、１２８Ｈｚのクロックを分周して、１秒ごとのクロックパルスを出力する。
【００２９】
秒カウンタ５は、１秒生成回路４からクロックパルスを受信すると、カウンタ値ＣＴ１をインクリメントする。秒カウンタ５は、カウンタ値ＣＴ１が「６０」に達した場合に、カウンタ値ＣＴ１を「１」にリセットし、オーバーフロー信号を分カウンタ６へ出力する。
【００３０】
分カウンタ６は、秒カウンタ５からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ２をインクリメントする。分カウンタ６は、カウンタ値ＣＴ２が「６０」に達した場合に、カウンタ値ＣＴ２を「１」にリセットし、オーバーフロー信号を時カウンタ７へ出力する。
【００３１】
時カウンタ７は、分カウンタ６からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ３をインクリメントする。時カウンタ７は、カウンタ値ＣＴ３が「２４」に達した場合に、カウンタ値ＣＴ３を「１」にリセットし、オーバーフロー信号を日カウンタ９へ出力する。
【００３２】
日カウンタ９は、時カウンタ７からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ４をインクリメントする。日カウンタ９は、カウンタ値ＣＴ４が「２８」に達した場合に、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する。
【００３３】
キャリービットレジスタ１４は、日カウンタ９からの出力（オーバーフロー信号）を受信すると、キャリービットの値を書き換える。すなわち、キャリービットレジスタ１４は、現在のキャリービットが「０」のときに、キャリービットを「１」に書き換え、現在のキャリービットが「１」のときに、キャリービットを「０」に書き換える。
【００３４】
キャリービットレジスタ１４は、キャリービットを書き換えたときには、現在のモードが通常動作モードの場合には、割込コントローラ６１へ割込み要求を出力する。キャリービットレジスタ１４は、現在のモードがバックアップ動作モードの場合には、割込み要求を出力しない。
【００３５】
ＣＰＵ５７は、割込コントローラ６１から割込み要求を受信すると、日カウンタ９のカウンタ値ＣＴ４と、キャリービットレジスタ１４に格納されている値に基づいて、フラッシュメモリ５９内の（年、月）データを更新するとともに、日カウンタ９のカウンタ値ＣＴ４を調整する。
【００３６】
ＣＰＵ５７は、たとえば、割込み要求を受信したときに、フラッシュメモリ５９内の（年、月）データが（２０１２、４）であって、キャリービットが「１」で、日カウンタ９のカウンタ値ＣＴ４が「４」の場合には、２８日＋４日＝３２日が経過したと判断する。ＣＰＵ５７は、フラッシュメモリ５９内の（年、月）データを（２０１２、５）に更新するともに、日カウンタ９のカウンタ値ＣＴ４を「２」だけ減少させる。
【００３７】
（動作）
図３は、第１の実施形態のマイクロコンピュータによる時計カウント動作の手順を表わすフローチャートである。
【００３８】
秒カウンタ５は、１秒生成回路４から１秒おきに生成されるクロックパルスを受信すると（ステップＳ１でＹＥＳ）、カウンタ値ＣＴ１をインクリメントする（ステップＳ２）。秒カウンタ５は、カウンタ値ＣＴ１が「６０」に達した場合に（ステップＳ３でＹＥＳ）、カウンタ値ＣＴ１を「１」にリセットし、オーバーフロー信号ＯＦを分カウンタ６へ出力する（ステップＳ４）。
【００３９】
分カウンタ６は、秒カウンタ５からオーバーフロー信号ＯＦを受信すると（ステップＳ５でＹＥＳ）、カウンタ値ＣＴ２をインクリメントする（ステップＳ６）。分カウンタ６は、カウンタ値ＣＴ２が「６０」に達した場合に（ステップＳ７でＹＥＳ）、カウンタ値ＣＴ２を「１」にリセットし、オーバーフロー信号ＯＦを時カウンタ７へ出力する（ステップＳ８）。
【００４０】
時カウンタ７は、分カウンタ６からオーバーフロー信号ＯＦを受信すると（ステップＳ９でＹＥＳ）、カウンタ値ＣＴ３をインクリメントする（ステップＳ１０）。時カウンタ７は、カウンタ値ＣＴ３が「２４」に達した場合に（ステップＳ１１でＹＥＳ）、カウンタ値ＣＴ３を「１」にリセットし、オーバーフロー信号ＯＦを日カウンタ９へ出力する（ステップＳ１２）。
【００４１】
日カウンタ９は、時カウンタ７からオーバーフロー信号ＯＦを受信すると（ステップＳ１３でＹＥＳ）、カウンタ値ＣＴ４をインクリメントする（ステップＳ１４）。日カウンタ９は、カウンタ値ＣＴ４が「２８」に達した場合に（ステップＳ１５でＹＥＳ）、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する（ステップＳ１６）。
【００４２】
キャリービットレジスタ１４は、日カウンタ９からオーバーフロー信号ＯＦを受信すると（ステップＳ１７でＹＥＳ）、現在のキャリービットが「０」の場合には（ステップＳ１８でＹＥＳ）、キャリービットを「１」に書き換え（ステップＳ１９）、現在のキャリービットが「１」の場合には（ステップＳ１８でＮＯ）、キャリービットを「０」に書き換える（ステップＳ２０）。さらに、現在のモードが通常動作モードの場合には（ステップＳ２１でＹＥＳ）、キャリービットレジスタ１４は、割込コントローラ６１へ割込み要求を出力する（ステップＳ２２）。ＣＰＵ５７は、割込コントローラ６１から割込み要求を受信すると（ステップＳ２３でＹＥＳ）、フラッシュメモリ５９内の（年、月）データを更新する（ステップＳ２４）。
【００４３】
以上のように、本実施の形態によれば、従来の年、月カウンタの代わりに、１ビットのキャリービットを設けることによって、回路規模を小さくし、かつ消費電流も小さくできる。また、バックアップ動作モードでは、フラッシュメモリ内の（年、月）データの更新を停止するので、バックアップ動作モードでの消費電力を少なくすることができる。
【００４４】
［第１の実施形態の変形例］
第１の実施形態では、キャリービットレジスタ１４のキャリービットは１ビットであり、日カウンタ９からオーバーフロー信号を受けるごとに、キャリービットは「０」から「１」、または「１」から「０」に値が変化することにした。これにより、第１の実施形態では、最大で５６日をカウントすることができる。
【００４５】
これに対して、本変形例では、キャリービットレジスタ１４のキャリービットは２ビットであり、日カウンタ９からオーバーフロー信号を受けると、キャリービットは「００」→「０１」→「１０」→「１１」→「００」・・・と変化する。これにより、本変形例では、最大で１１２日をカウントすることができる。
【００４６】
なお、キャリービットは、上記のように１ビット、２ビットに限定されるものではなく、３ビット以上であってもよい、他の実施形態でも同様である。
［第２の実施形態］
第２の実施形態のマイクロコンピュータが、第１の実施形態のマイクロコンピュータと相違する点は、以下である。
【００４７】
スイッチ制御回路６６は、比較器６２から「Ｌ」レベルのモード信号ＭＤを受けたときには、マイクロコンピュータの動作モードを通常動作モードに設定し、第１の実施形態と同様に第２のスイッチ６４をオンとし、かつ第１のスイッチ６５をオフにする。
【００４８】
スイッチ制御回路６６は、比較器６２から「Ｈ」レベルのモード信号ＭＤを受けたときには、マイクロコンピュータの動作モードをバックアップ動作モードに設定し、第２のスイッチ６４をオンとし、第１のスイッチ６５をオンにする。これによって、バックアップ動作モードにおいてバックアップ電源電圧ＶＢＡＴＴが、ＣＰＵ５７、フラッシュメモリ５９、降圧回路５５、ＳＲＡＭ５６、周辺回路５８へ供給される。これによって、バックアップ動作モードにおいてバックアップ電源電圧ＶＢＡＴＴが、ＣＰＵ５７、フラッシュメモリ５９、降圧回路５５、ＳＲＡＭ５６、周辺回路５８へ供給される。
【００４９】
また、第１の実施形態では、キャリービットレジスタ１４は、通常動作モードのときに限り、キャリービットの値が変化したときに、割込み信号を出力した。
【００５０】
これに対して、第２の実施形態では、キャリービットレジスタ１４は、通常動作モードのときには、第１の実施形態と同様に、キャリービットが書き換えられたときに、割込み信号を出力する。さらに、キャリービットレジスタ１４は、バックアップ動作モードのときには、キャリービットが「０」から「１」に書き換えられたときに、割込み信号を出力する。
【００５１】
（動作）
図４は、第２の実施形態のマイクロコンピュータによる時計カウントの動作手順を表わすフローチャートである。
【００５２】
秒カウンタ５は、１秒生成回路４から１秒おきに生成されるクロックパルスを受信すると（ステップＳ１でＹＥＳ）、カウンタ値ＣＴ１をインクリメントする（ステップＳ２）。秒カウンタ５は、カウンタ値ＣＴ１が「６０」に達した場合に（ステップＳ３でＹＥＳ）、カウンタ値ＣＴ１を「１」にリセットし、オーバーフロー信号ＯＦを分カウンタ６へ出力する（ステップＳ４）。
【００５３】
分カウンタ６は、秒カウンタ５からオーバーフロー信号ＯＦを受信すると（ステップＳ５でＹＥＳ）、カウンタ値ＣＴ２をインクリメントする（ステップＳ６）。分カウンタ６は、カウンタ値ＣＴ２が「６０」に達した場合に（ステップＳ７でＹＥＳ）、カウンタ値ＣＴ２を「１」にリセットし、オーバーフロー信号ＯＦを時カウンタ７へ出力する（ステップＳ８）。
【００５４】
時カウンタ７は、分カウンタ６からオーバーフロー信号ＯＦを受信すると（ステップＳ９でＹＥＳ）、カウンタ値ＣＴ３をインクリメントする（ステップＳ１０）。時カウンタ７は、カウンタ値ＣＴ３が「２４」に達した場合に（ステップＳ１１でＹＥＳ）、カウンタ値ＣＴ３を「１」にリセットし、オーバーフロー信号ＯＦを日カウンタ９へ出力する（ステップＳ１２）。
【００５５】
日カウンタ９は、時カウンタ７からオーバーフロー信号ＯＦを受信すると（ステップＳ１３でＹＥＳ）、カウンタ値ＣＴ４をインクリメントする（ステップＳ１４）。日カウンタ９は、カウンタ値ＣＴ４が「３０」に達した場合に（ステップＳ１５でＹＥＳ）、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する（ステップＳ１６）。
【００５６】
キャリービットレジスタ１４は、日カウンタ９からオーバーフロー信号ＯＦを受信すると（ステップＳ１７でＹＥＳ）、現在のキャリービットが「０」の場合には（ステップＳ１８でＹＥＳ）、キャリービットを「１」に書き換え（ステップＳ１９）、現在のキャリービットが「１」の場合には（ステップＳ１８でＮＯ）、キャリービットを「０」に書き換え（ステップＳ２０）。さらに、現在のモードが通常動作モードの場合には（ステップＳ２１でＹＥＳ）、キャリービットレジスタ１４は、割込コントローラ６１へ割込み要求を出力する（ステップＳ２２）。現在のモードがバックアップ動作モードの場合には（ステップＳ２１でＮＯ）、キャリービットが「１」に変化した場合に限り（ステップＳ２３でＹＥＳ）、キャリービットレジスタ１４は、割込コントローラ６１へ割込み要求を出力する（ステップＳ２４）。
【００５７】
ＣＰＵ５７は、割込コントローラ６１から割込み要求を受信すると（ステップＳ２５でＹＥＳ）、フラッシュメモリ５９内の（年、月）データを更新する（ステップＳ２６）。
【００５８】
以上のように、本実施の形態によれば、第１の実施形態と同様に、キャリービットを設けることによって、回路規模を小さくし、かつ消費電流も小さくできる。また、バックアップ動作モードでは、通常動作モードよりもフラッシュメモリ内のデータの更新頻度を少なくすることによって、バックアップ動作モードでの消費電力を少なくしつつ、かつフラッシュメモリ内のデータが長期間更新されない状態を防止することができる。
［第３の実施形態］
（構成）
図５は、第３の実施形態のマイクロコンピュータの構成を表わす図である。
【００５９】
このマイクロコンピュータ２００が、第１の実施形態のマイクロコンピュータ１００と相違する点は、以下である。
【００６０】
本実施の形態のマイクロコンピュータ２００では、時計カウンタ１６０から割込コントローラ６１を介して割込み要求がＣＰＵ５７へ送られない。
【００６１】
時計カウンタ１６０は、通常動作モードには、通常電源電圧が供給されて、秒、分、時、日、月、年をカウントし、バックアップ動作モードでは、バックアップ電源電圧が供給され、秒、分、時、日をカウントし、かつ所定の日数を超えたときに、繰上りを記憶する。
【００６２】
時計カウンタ１６０は、年、月、曜日、日、時、分、秒のカウンタと、キャリービットレジスタ１４を備える。月、年のカウントのために、通常動作モードでは、月、年カウンタ１１が使用され、バックアップ動作モードでは、キャリービットレジスタ１４が使用される。
【００６３】
図６は、第３の実施形態の時計カウンタの構成を表わす図である。
時計カウンタ１６０は、サブクロック発振器２と、１２８Ｈｚ生成回路３と、１秒生成回路４と、秒カウンタ５と、分カウンタ６と、時カウンタ７と、日カウンタ９と、スイッチ１５と、曜日カウンタ８と、スイッチ１０と、月カウンタ１２と、年カウンタ１１と、キャリービットレジスタ１４とを含む。
【００６４】
サブクロック発振器２は、サブクロックを発生する。
１２８Ｈｚ生成回路３は、サブクロックから１２８Ｈｚのクロックを出力する。
【００６５】
１秒生成回路４は、１２８Ｈｚのクロックを分周して、１秒ごとのクロックパルスを出力する。
【００６６】
秒カウンタ５は、１秒生成回路４からクロックパルスを受信すると、カウンタ値ＣＴ１をインクリメントする。秒カウンタ５は、カウンタ値ＣＴ１が「６０」に達した場合に、カウンタ値ＣＴ１を「１」にリセットし、オーバーフロー信号を分カウンタ６へ出力する。
【００６７】
分カウンタ６は、秒カウンタ５からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ２をインクリメントする。分カウンタ６は、カウンタ値ＣＴ２が「６０」に達した場合に、カウンタ値ＣＴ２を「１」にリセットし、オーバーフロー信号）を時カウンタ７へ出力する。
【００６８】
時カウンタ７は、分カウンタ６からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ３をインクリメントする。時カウンタ７は、カウンタ値ＣＴ３が「２４」に達した場合に、カウンタ値ＣＴ３を「１」にリセットし、オーバーフロー信号を日カウンタ９へ出力する。
【００６９】
日カウンタ９は、時カウンタ７からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ４をインクリメントする。
【００７０】
日カウンタ９は、モード信号ＭＤがバックアップ動作モードを表わす「Ｈ」レベルの場合には、カウンタ値ＣＴ４が「２８」に達した場合に、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する。
【００７１】
日カウンタ９は、モード信号ＭＤが通常動作モードを表わす「Ｌ」レベルの場合には、月カウンタ１２のカウンタ値ＣＴ６が「１」、「３」、「５」、「７」、「８」、「１０」、「１２」のときには、カウンタ値ＣＴ４が「３１」に達した場合に、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する。日カウンタ９は、モード信号ＭＤが通常動作モードを表わす「Ｌ」レベルの場合には、月カウンタ１２のカウンタ値ＣＴ６が「４」、「６」、「９」、「１１」のときには、カウンタ値ＣＴ４が「３０」に達した場合に、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する。
【００７２】
日カウンタ９は、モード信号ＭＤが通常動作モードを表わす「Ｌ」レベルの場合には、月カウンタ１２のカウンタ値ＣＴ６が「２」であり、年カウンタ１１のカウンタ値ＣＴ７が「４」の倍数のときには、カウンタ値ＣＴ４が「２９」に達した場合に、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する。
【００７３】
日カウンタ９は、モード信号ＭＤが通常動作モードを表わす「Ｌ」レベルの場合には、月カウンタ１２のカウンタ値ＣＴ６が「２」であり、年カウンタ１１のカウンタ値ＣＴ７が「４」の倍数でないときには、カウンタ値ＣＴ４が「２８」に達した場合に、カウンタ値ＣＴ４を「１」にリセットし、オーバーフロー信号ＯＦをキャリービットレジスタ１４へ出力する。
【００７４】
スイッチ１５は、モード信号ＭＤが通常動作モードを表わす「Ｌ」レベルのときには、オンとなり、時カウンタ７からのオーバーフロー信号を曜日カウンタ８に出力する。スイッチ１５は、モード信号ＭＤがバックアップ動作モードを表わす「Ｈ」レベルのときには、オフとなる。
【００７５】
曜日カウンタ８は、時カウンタ７からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ５をインクリメントする。曜日カウンタ８は、カウンタ値ＣＴ５が「７」に達した場合に、カウンタ値ＣＴ４を「１」にリセットする。
【００７６】
スイッチ１０は、モード信号ＭＤが通常動作モードを表わす「Ｌ」レベルのときには、日カウンタ９からのオーバーフロー信号を月カウンタ１２に出力する。スイッチ１０は、モード信号ＭＤがバックアップ動作モードを表わす「Ｈ」レベルのときには、日カウンタ９からのオーバーフロー信号をキャリービットレジスタ１４に出力する。
【００７７】
月カウンタ１２は、通常動作モードにおいて、スイッチ１０を介して日カウンタ９からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ６をインクリメントする。月カウンタ１２は、カウンタ値ＣＴ６が「１２」に達した場合に、カウンタ値ＣＴ６を「１」にリセットする。
【００７８】
年カウンタ１１は、通常動作モードにおいて、月カウンタ１２からの出力（オーバーフロー信号）を受信すると、カウンタ値ＣＴ７をインクリメントする。
【００７９】
キャリービットレジスタ１４は、バックアップ動作モードにおいて、スイッチ１０を介して、日カウンタ９からの出力（オーバーフロー信号）を受信すると、キャリービットの値を書き換える。すなわち、キャリービットレジスタ１４は、現在のキャリービットが「０」のときに、キャリービットを「１」に書き換え、現在のキャリービットが「１」のときに、キャリービットを「０」に書き換える。
【００８０】
ＣＰＵ５７は、通常動作モードでは、年カウンタ１１および月カウンタ１２のカウンタ値と整合するように、フラッシュメモリ５９内の（年、月）データを更新する。ＣＰＵ５７は、バックアップ動作モードから通常動作モードに復帰したときに、日カウンタ９のカウンタ値と、キャリービットレジスタ１４に格納されている値に基づいて、フラッシュメモリ５９内の（年、月）データを更新するとともに、日カウンタ９のカウンタ値を調整する。
【００８１】
ＣＰＵ５７は、たとえば、バックアップ動作モードに入る直前に更新されたフラッシュメモリ５９内の（年、月）データが（２０１２、４）であって、通常動作モードに復帰したときのキャリービットが「１」で、日カウンタ９のカウンタ値ＣＴ４が「４」の場合には、２８日＋４日＝３２日が経過したと判断する。ＣＰＵ５７は、フラッシュメモリ５９内の（年、月）データを（２０１２、５）に更新するともに、日カウンタ９のカウンタ値ＣＴ４を「２」だけ減少させる。
【００８２】
以上のように、本実施の形態によれば、第１の実施形態と同様に、キャリービットを設けることによって、回路規模を小さくし、消費電力も小さくできる。すなわち、通常動作モードでは、年、月カウンタでカウントし、バックアップ動作モードでは、キャリービットで繰上りを記憶することによって、バックアップ動作モードにおいて消費電流を削減することができる。
【００８３】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【００８４】
２  サブクロック発振器、３  １２８Ｈｚ生成回路、４  １秒生成回路、５  秒カウンタ、６  分カウンタ、７  時カウンタ、８  曜日カウンタ、９  日カウンタ、１０，１５，６４，６５  スイッチ、１１  年カウンタ、１２  月カウンタ、１４  キャリービットレジスタ、５１  ＶＣＣ端子、５２  ＶＢＡＴＴ端子、５３  基準電圧生成回路、５５  降圧回路、５６  ＳＲＡＭ、５７  ＣＰＵ、５８  周辺回路、５９  フラッシュメモリ、６０，１６０  時計カウンタ、６１  割込コントローラ、６２  比較器、６６  スイッチ制御回路、１００，２００  マイクロコンピュータ。
【図１】
2014026503.tif 000003
【図２】
2014026503.tif 000004
【図３】
2014026503.tif 000005
【図４】
2014026503.tif 000006
【図５】
2014026503.tif 000007
【図６】
2014026503.tif 000008