(57)【要約】【課題】  ＣＰＵの制御プログラムが不揮発性メモリに記憶されている構成において、低消費電力モードが解除された場合に、ＣＰＵがより速く処理を開始することができるマイクロコンピュータを提供する。【解決手段】  ＣＰＵ２は、スリープモードに移行する場合には、低消費電力制御回路１０を介して発振回路８及び周波数逓倍回路９の発振動作を停止させ、フラッシュＲＯＭ３に動作用電源を供給するフラッシュ電源回路１４は、上記回路８及び９の発振動作の停止、また、停止させた動作の再開に連動して外部電源の供給を遮断，再開させる。そして、周波数逓倍回路９は、スリープモードに移行する場合はその時点で設定されている発振制御条件を保持しており、発振動作を再開させる場合は保持された発振制御条件に基づいて動作し、ＣＰＵ２は、スリープモードが解除されるとマスクＲＯＭ４にアクセスし、ウェイクアップ直後に実行すべき制御プログラムを直ちに読み出す。【選択図】  図１
2006127466.tif 000002
【特許請求の範囲】
【請求項１】
外部より供給される電源に基づいて自身の動作用電源を生成する電源回路を備え、制御プログラムが格納される書換え可能な不揮発性メモリと、
発振停止状態からの起動が比較的速く且つ発振精度が比較的低い第１クロック信号と、発振停止状態からの起動が比較的遅く且つ発振精度が比較的高い第２クロック信号とを選択的に出力可能に構成され、少なくとも前記第２クロック信号を、外部発振子による発振出力を基準クロックとして生成するクロック制御回路と、
このクロック制御回路によって発振出力されるクロック信号が供給されると共に、前記不揮発性メモリより前記制御プログラムを読み出して動作するＣＰＵとを備えて構成されるマイクロコンピュータにおいて、
前記ＣＰＵは、低消費電力モードに移行する場合には、少なくとも前記クロック制御回路における前記第２クロック信号の発振動作を停止させ、
前記不揮発性メモリの電源回路は、前記低消費電力モードに移行すると前記外部電源の供給が遮断され、前記低消費電力モードが解除されると前記外部電源の供給も再開されるように構成され、
前記低消費電力モードが解除された場合に前記ＣＰＵが読み出す前記制御プログラムの一部は、前記モードが解除された時点でデータの読出しが可能な状態にある起動用メモリに予め配置されており、
前記クロック制御回路は、前記低消費電力モードが解除された場合は、少なくとも前記第２クロック信号の発振動作を再開させると共に、前記ＣＰＵに対して、その時点で発振動作が安定状態にある前記第１クロック信号を所定時間だけ供給した後、前記第２クロック信号を供給するように切替え、
前記ＣＰＵは、前記低消費電力モードが解除されて起動する場合には、前記起動用メモリに配置されている前記制御プログラムを読み出すように構成されていることを特徴とするマイクロコンピュータ。
【請求項２】
前記クロック制御回路は、
設定された発振制御条件に応じて定まる周波数で発振動作が可能となるようにデジタル演算処理を行ない、前記発振制御条件の１つは、基準クロック信号の周期を計測して得られるデータであり、
発振動作を停止させる際には、その時点で設定されている発振制御条件が保持可能に構成され、
前記低消費電力モードが解除されて発振動作を再開させる場合には、前記保持された発振制御条件に基づいて直ちに発振動作を開始することで生成されるクロック信号を前記第１クロック信号として出力し、
前記第１クロック信号が前記ＣＰＵに供給されている間に、前記基準クロック信号の周期を計測して得られた発振制御条件に基づいて生成されるクロック信号を前記第２クロック信号として出力するように構成されることを特徴とする請求項１記載のマイクロコンピュータ。
【請求項３】
前記ＣＰＵは、
起動時において、前記不揮発性メモリと前記起動用メモリとの何れにアクセスを行うかを選択するためのメモリ選択レジスタと、
このメモリ選択レジスタの設定に応じて、前記不揮発性メモリのアクセスアドレスと、前記起動用メモリのアクセスアドレスとの何れか一方を選択するため第１マルチプレクサと、
前記低消費電力モードの解除要因が発生した場合に、前記第１マルチプレクサを介して出力されるアドレスを、通常処理時におけるプログラムアドレスに替えてプログラムカウンタにセットするように切替えるための第２マルチプレクサとを備えていることを特徴とする請求項１又は２記載のマイクロコンピュータ。
【請求項４】
前記起動用メモリはＲＡＭで構成されており、
前記ＣＰＵは、前記制御プログラムの一部を前記ＲＡＭに転送する処理を行なった後、前記低消費電力モードに移行することを特徴とする請求項１乃至３の何れかに記載のマイクロコンピュータ。
【請求項５】
前記クロック制御回路の発振動作が再開された時点から、前記不揮発性メモリに対するアクセスを禁止する期間を設定するアクセス禁止タイマを備え、
前記ＣＰＵは、前記起動用メモリにアクセスを行っている期間において前記タイマによる禁止期間の計時が終了すると、前記不揮発性メモリに対してアクセスを行うように切替えることを特徴とする請求項１乃至４の何れかに記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、書換え可能な不揮発性メモリに格納されている制御プログラムを読み出して動作するＣＰＵを備え、低消費電力モードに移行可能に構成されているマイクロコンピュータに関する。
【背景技術】
【０００２】
マイクロコンピュータにおいては、所定の期間、処理すべきイベントが発生しない状態が継続すると、クロック制御回路の動作を停止させることでＣＰＵの動作も停止させて、低消費電力モードに移行するように構成されているものがある。そして、一旦低消費電力モードに移行すると、処理すべきイベントが発生した時点でクロック制御回路の動作を再開させ、ＣＰＵを起動するようになっている。
斯様なクロック制御回路は、例えばリングオシレータやデジタルＰＬＬなどを利用してデジタル的な発振動作を行なうと共に、クロック周波数が設定可能に構成される場合がある。斯様な構成のクロック制御回路では、周波数が極めて高いリングオシレータのクロック信号によって発振子による基準クロック信号の周期を測定し、その基準クロック信号の周波数を逓倍することで所定周波数のクロック信号を得るようにしている。
【０００３】
従って、低消費電力モードに移行してクロック制御回路の動作を停止させると、前記クロック信号を得る元になる基準クロック信号周期の測定データがリセットされてしまう。そのため、低消費電力モードが解除されてＣＰＵが再起動する場合には、発振子の安定待ちと基準クロック信号周期の測定から起動シーケンスが開始される。この測定に要する時間が、ＣＰＵの再起動を遅延させる一因となっていた。
斯様な問題を解決する技術として、例えば特許文献１には、マイクロコンピュータに対して発振安定時間が不要である外部からのクロック信号供給を可能とした上で、ＳＴＯＰモードの解除要求信号が発生すると、直ちに超低消費電力モードを解除するようにした構成が開示されている。
【特許文献１】特開平６−２０３１８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、マイクロコンピュータにおいては、制御プログラムの開発を容易にするため、フラッシュＲＯＭのように書換え可能な不揮発性メモリに制御プログラムを記憶させるように構成されているものがある。そして、フラッシュＲＯＭは、データの読み書きを行うために一般的なロジック回路の電源電圧とは異なる電圧レベルを必要とすることから、専用の電源回路が必要となっている。
しかしながら、特許文献１に開示されている技術では、外部からのクロック信号供給が可能であることを前提としており、システム構成上そのような前提の採用が不能であるとすれば全く用をなさない。
【０００５】
また、マイコンが低消費電力モードに移行する場合には制御プログラムの読み出しは行わなくなることから、フラッシュＲＯＭに対する電源供給も停止させるようにしている。そのため、低消費電力モードが解除されてＣＰＵが再起動する場合には、フラッシュＲＯＭ用の電源回路が起動して読み出しに必要な電源電圧が生成されるまでは、ＣＰＵがアクセスを行うことができない。従って、このフラッシュＲＯＭ内の電源回路の起動に要する時間も、ＣＰＵの再起動を遅延させる一因となっていた。
本発明は上記事情に鑑みてなされたものであり、その目的は、ＣＰＵの制御プログラムが不揮発性メモリに記憶されている構成において、低消費電力モードが解除された場合に、ＣＰＵがより速く処理を開始することができるマイクロコンピュータを提供することにある。
【課題を解決するための手段】
【０００６】
請求項１記載のマイクロコンピュータによれば、クロック制御回路を、発振停止状態からの起動が比較的速いが低発振精度である第１クロック信号と、起動が比較的遅いが高発振精度である第２クロック信号とを選択的に出力可能に構成する。この場合、少なくとも第２クロック信号は、外部発振子による発振出力を基準クロックとして生成される。また、不揮発性メモリの電源回路は、低消費電力モードに移行すると外部電源の供給が遮断され、低消費電力モードが解除されると外部電源の供給も再開されるように構成される。
そして、ＣＰＵは、低消費電力モードに移行する場合、クロック制御回路における第２クロック信号の発振動作を停止させて消費電力を低減する。クロック制御回路は、低消費電力モードが解除されると、起動が遅い第２クロック信号の発振動作を再開させると共に、ＣＰＵに対してその時点で発振動作が安定状態にあるが低精度である第１クロック信号を所定時間だけ供給した後、その所定時間が経過することで発振が安定した状態となっている高精度の第２クロック信号を供給するように切替える。
【０００７】
即ち、低消費電力モードが解除された場合、クロック制御回路はＣＰＵに第１クロック信号を動作用クロック信号として直ちに供給することができる。そして、ＣＰＵは、低消費電力モードが解除されると、その時点でデータの読出しが可能な状態にある起動用メモリにアクセスして直ちに制御プログラムを読み出すことができるので、前記モードの解除後に迅速に起動することが可能となる。従って、ＣＰＵの処理効率を向上させることができる。
【０００８】
請求項２記載のマイクロコンピュータによれば、クロック制御回路は、設定された発振制御条件に応じて定まる周波数で発振動作が可能となるようにデジタル演算処理を行なう構成であり、発振制御条件の１つは基準クロック信号の周期を計測して得られるデータである。また、発振動作を停止させる際には、その時点で設定されている発振制御条件が保持可能であり、低消費電力モードが解除されて発振動作を再開させる場合は、保持された発振制御条件に基づき直ちに発振動作を開始して生成されるクロック信号を第１クロック信号とする。そして、第１クロック信号がＣＰＵに供給されている間に、基準クロック信号の周期を計測して得られた発振制御条件に基づいて生成されるクロック信号を第２クロック信号とする。
【０００９】
即ち、この場合、第１，第２クロック信号は同じクロックソースによって生成される構成であるが、所定の間維持されていた低消費電力モードが解除された時点では、低消費電力モードに移行した直後とで例えば周囲温度などの環境条件が変化していることも想定されるため、その間に基準クロック信号の発振周期が変動している可能性もある。従って、低消費電力モードが解除された時点で保持されている発振制御条件で発振動作を開始して生成される第１クロック信号は、起動が比較的速いが発振精度は比較的低い。
一方、第１クロック信号がＣＰＵに供給されている間に、基準クロック信号の周期を計測して得られた発振制御条件で生成される第２クロック信号は、起動は比較的遅いが発振精度は比較的高い。従って、デジタル演算処理により発振動作を行なう１つのクロック制御回路によって、第１，第２クロック信号を生成出力することができる。
【００１０】
請求項３記載のマイクロコンピュータによれば、ＣＰＵがメモリ選択レジスタに設定を行うことで、第１マルチプレクサを介し、起動時に不揮発性メモリと起動用メモリとの何れにアクセスを行うかが選択される。そして、第２マルチプレクサは、低消費電力モードの解除要因が発生した場合に、第１マルチプレクサを介して出力されるアドレスを、通常処理時のプログラムアドレスに替えてプログラムカウンタにセットするように切替える。従って、制御プログラムに応じて、ＣＰＵが起動時にアクセスを行うメモリを選択することができる。
【００１１】
請求項４記載のマイクロコンピュータによれば、ＣＰＵは、制御プログラムの一部を起動用メモリとしてのＲＡＭに転送する処理を行なった後、低消費電力モードに移行する。即ち、前記制御プログラムの一部が記憶されるＲＡＭの領域を、ＣＰＵが通常の処理を行なっている期間は作業領域として使用することができるので、低消費電力モードの解除時にのみ使用される冗長な記憶領域を定常的に確保する必要がない。従って、リソースを効率的に使用することが可能となる。
【００１２】
請求項５記載のマイクロコンピュータによれば、ＣＰＵは、起動用メモリにアクセスを行っている期間においてアクセス禁止タイマによる禁止期間の計時が終了すると、不揮発性メモリに対してアクセスを行うように切替えを行う。即ち、ＣＰＵは、アクセス禁止タイマを参照することで、低消費電力モードが解除された後十分な時間が経過して、不揮発性メモリに動作用電源を供給する電源回路が安定したレベルの電源電圧を生成可能な状態になったことを把握して、アクセスの切替えタイミングを決定することができる。
【発明を実施するための最良の形態】
【００１３】
（第１実施例）
以下、本発明を車両用ＥＣＵ(Electronic Control Unit)に適用した場合の第１実施例について図面を参照して説明する。尚、以下に述べる構成の基本的部分は、特開２００４−２１３１９７号公報、又は特開２０００−３５７９４７号公報等に開示されているので、以下では概略的に説明する。図１は、ＥＣＵ（マイクロコンピュータ）１の電気的構成を示す機能ブロック図である。ＥＣＵ１は、半導体集積回路（ＩＣ）として構成されており、その内部回路として、ＣＰＵ２，フラッシュＲＯＭ（不揮発性メモリ）３，マスクＲＯＭ（起動用メモリ）４，ＲＡＭ５，その他の周辺回路（例えばゲートアレイ，Ａ／Ｄ変換器，通信用インターフェイスなど）６などを備えている。そして、これらはアドレスバス及びデータバスを介して接続されている。フラッシュＲＯＭ３には、ＣＰＵ２の制御プログラムが記憶されており、マスクＲＯＭ４には、低消費電力モードが解除された場合にＣＰＵ２が一時的にアクセスを行うための、制御プログラムの一部が予め記憶されている。
【００１４】
ＥＣＵ１には、水晶発振子（外部発振子）７が外付けされており、発振回路（基準クロック発振回路）８は、水晶発振子７にバイアスを与えて周波数２５ｋＨｚの基準クロック信号ＲＣＬＫ を出力するようになっている。基準クロック信号ＲＣＬＫ は周波数逓倍回路（クロック制御回路）９に与えられており、周波数逓倍回路９は、その基準クロック信号ＲＣＬＫ を逓倍したクロック信号ＭＣＬＫ を生成して、ＣＰＵ２や各メモリ３〜５及び周辺回路６のクロック入力端子に出力するようになっている。周波数逓倍回路９は、所謂ＤＰＬＬ(Digital Phase Locked Loop)回路として構成されるものであり、前記逓倍数は、ＣＰＵ２より与えられる逓倍数設定データＤＶの値に応じて設定される。
また、周波数逓倍回路９には、低消費電力制御回路１０によってＥＣＵ１の動作モードを低消費電力モードと通常モードとに切換えるためのスリープ制御信号ＳＣ（停止制御）が出力されるようになっている。低消費電力制御回路１０は、ＣＰＵ２の指令に基づきスリープ制御信号ＳＣをロウレベルにすることでＥＣＵ１を低消費電力モード（スリープ／ストップ）に維持するようになっている。
【００１５】
動作モードが一旦低消費電力モードに切替わると、低消費電力制御回路１０は、内部のスリープタイマがカウントアップするか、若しくは何らかの外部ウェイクアップ要因（例えば、キー検出スイッチにより、自動車のキーがキーシリンダに挿入されたことを検出するなど）が発生するまで当該モードを維持し続ける。そして、それらのウェイクアップ要因が発生すると、スリープ制御信号ＳＣをハイレベルにしてＥＣＵ１を低消費電力モードから通常動作モードに切換える。
【００１６】
低消費電力制御回路１０は、ＣＲ発振回路１１によって出力される例えば周波数２５ｋＨｚ程度の低速なクロック信号に基づいて動作するようになっており、制御レジスタ１０ａ，スリープタイマ１０ｂ，ＲＯＭＳＴＮＢＹタイマ（アクセス禁止タイマ）１０ｃ，ステータスレジスタ１０ｄ，制御信号出力部１０ｅなどを有して構成されている。また、図１では図示していないが、ＣＰＵ２と低消費電力制御回路１０とは、アドレスバス及びデータバスによって接続されており、ＣＰＵ２は内部レジスタに対する書込み及び読出しが可能となっている。
【００１７】
制御レジスタ１０ａは、ＣＰＵ２によってコマンド書込みが行われるレジスタであり、その設定に応じて制御信号出力部１０ｅより出力されるスリープ制御信号ＳＣの出力タイミングが決定される。スリープタイマ１０ｂは、制御レジスタ１０ａを介してスリープモードに設定されると、所定のスリープ移行期間をカウントするタイマである。また、ＲＯＭＳＴＮＢＹタイマ１０ｃは、スリープタイマ１０ｂがカウントアップした場合、若しくは外部ウェイクアップ要因が発生した場合にカウント動作を開始し、フラッシュ電源回路１４に外部電源１３の供給が開始されてから、フラッシュＲＯＭ３の動作用電源が生成されるまでの起動準備期間（禁止期間）をカウントするタイマである。起動準備期間は、例えば４１ＣＲクロック（４０μｓ×４１＝１６３０μｓ）程度に設定される。尚、外部電源１３は、ＥＣＵ１を構成するＣＰＵ２などのその他の構成要素に対して、５Ｖ程度の動作用電源を供給している。
【００１８】
ステータスレジスタ１０ｄは、ＣＰＵ２によって読出しが可能となっており、ＲＯＭＳＴＮＢＹタイマ１０ｃがカウントを開始するとフラグＲＯＭＳＴＮＢＹがセットされ、タイマ１０ｃがカウントアップすると前記フラグはリセットされるようになっている。そして、制御信号出力部１０ｅには、スリープタイマ１０ｂ，ＲＯＭＳＴＮＢＹタイマ１０ｃのカウントアップ信号並びに外部ウェイクアップ要因の発生信号が与えられており、各信号の出力タイミング及び上述した制御レジスタ１０ａの設定に基づいてスリープ制御信号ＳＣを出力する。
【００１９】
図２は、周波数逓倍回路９の概略構成を示す機能ブロック図である（尚、詳細な構成については、更に特開平８−２６５１１１号公報を参照）。制御回路１５には、発振回路８より出力される基準クロック信号ＲＣＬＫ が与えられている。そして、制御回路１５は、３個のフリップフロップ（図示せず）で構成されるシーケンスカウンタを内蔵している。このシーケンスカウンタによって基準クロック信号ＲＣＬＫ の入力パルス数をカウントして基準クロック信号ＲＣＬＫの８周期を１シーケンス制御周期とし、基準クロック信号ＲＣＬＫに同期して各種の制御タイミング信号をＤＣＯ（Digital Controlled Oscillator ，デジタル制御発振器）１６及びカウンタ・データラッチ回路１７に出力する。
【００２０】
ＤＣＯ１６は、内部にリングオシレータ１８を備えている。リングオシレータ１８は、複数個の論理反転回路の各出力端子を次段の入力端子へとリング状に接続して構成されており（図４参照）、外部からの停止制御信号によって発振動作の開始／停止が制御可能となっている。そして、論理反転回路の各出力端子からは、夫々多相クロック信号Ｒ１〜Ｒ１６が出力される。
【００２１】
カウンタ・データラッチ回路１７には、制御回路１５より出力される制御タイミング信号ＵＣＥ及びＵＬＲが与えられている。これらの制御タイミング信号ＵＣＥ及びＵＬＲは基準クロック信号ＲＣＬＫ一周期に相当するパルス幅を有しており、制御回路１５におけるシーケンス制御周期の第３及び第７周期に夫々出力される信号である。
また、カウンタ・データラッチ回路１７には、リングオシレータ１８より出力されるクロック信号Ｒ１３がＲＣＫとして与えられ、そのクロック信号ＲＣＫによって内部のアップカウンタ（１６ビット）によるカウント動作を行う。そして、カウンタ・データラッチ回路１７は、制御タイミング信号ＵＣＥが出力されている間、カウンタにアップカウント動作を行わせることで、基準クロック信号ＲＣＬＫ 一周期に相当する時間をクロック信号ＲＣＫによってカウントする。そのカウントデータは、制御回路１５よりシーケンス制御周期の第５周期で出力される制御タイミング信号ＤＬＳがＤＣＯ１６を介して与えられるラッチ信号ＤＬＣのタイミングでラッチされ、制御タイミング信号ＵＬＲが出力されるとラッチされたデータはクリアされる。
【００２２】
カウンタ・データラッチ回路１７は、カウントした１６ビットのデータＤＴ１６〜ＤＴ１を、ＣＰＵ２により与えられる逓倍数設定データＤＶに応じてデータビットを右シフトし、そのシフト後のデータの１２ビットをラッチする。そして、ラッチされた１２ビットのデータは、ＣＤ１２〜ＣＤ１としてＤＣＯ１６に出力される。ＤＣＯ１６が出力する逓倍クロック信号ＭＣＬＫ’は、デューティ比を調整するための分周回路１９を介して２分周されて、逓倍クロック信号ＭＣＬＫ として出力される。スリープ制御信号ＳＣは制御回路１５にも与えられていると共に、例えば、基準クロック信号ＲＣＬＫ一周期分程度の遅延時間を与える遅延回路２０を介して、制御回路１５に動作開始信号ＰＳＴＢとしても与えられるようになっている。
【００２３】
図３は、ＤＣＯ１６の詳細な構成を示す機能ブロック図である。カウンタ・データラッチ回路１７より与えられるラッチデータＣＤ１２〜ＣＤ１の内、上位側の８ビットであるＣＤ１２〜ＣＤ５は、ダウンカウンタ２１のカウントデータとして所定のタイミングでロードされる。そして、ダウンカウンタ２１は、リングオシレータ１８より出力されるクロック信号Ｒ１３によってロードされたカウントデータをダウンカウントするようになっている。
また、ラッチデータＣＤ１２〜ＣＤ１の内、下位側の４ビットであるＣＤ４〜ＣＤ１は、加算器２２を介してレジスタ２３のデータ入力端子Ｄに与えられるようになっている。レジスタ２３は、タイミング制御部２４より出力されるタイミング信号によって加算器２２の出力データを５ビットのデータＤ５〜Ｄ１として出力するようになっており、その内の下位４ビットデータＤ４〜Ｄ１は、パルスセレクタ２５に与えられると共に、加算器２２に被加算値として入力される。また、レジスタ２３より出力されるデータＤ５は、加算器２２における加算に応じて発生するキャリー信号に相当するものであり、タイミング制御部２４に与えられている。
【００２４】
パルスセレクタ２５には、リングオシレータ１８より出力される多相クロック信号Ｒ１６〜Ｒ１が与えられており、それらの多相クロック信号Ｒ１６〜Ｒ１の内、レジスタ２３より出力されるデータＤ４〜Ｄ１の値（１０進数値＋１）に相当する番号）に対応するものを１つ選択して、出力端子Ｐ１（Ｒ８〜Ｒ１），Ｐ２（Ｒ１６〜Ｒ９）の何れか一方からタイミング制御部２４に出力するようになっている。タイミング制御部２４には、リングオシレータ１８より出力されるクロック信号Ｒ５が与えられている。
また、ダウンカウンタ２１は、ロードされたカウントデータをダウンカウントして行き、そのカウント値が“２”になると出力信号ＣＮ２をハイレベルにし、カウント値が“１”になると出力信号ＣＮ１をハイレベルにしてタイミング制御部２４に出力するようになっている。
【００２５】
以上の構成による回路動作の概略は以下のようになる。即ち、基準クロック信号ＲＣＬＫ の８周期毎に、基準クロック信号ＲＣＬＫの１周期相当のカウントデータＤＴ１６〜ＤＴ１がカウントされ、その内逓倍データＤＶに応じてビット右シフトされた１２ビットデータＣＤ１２〜ＣＤ１がＤＣＯ１６に与えられる。そして、上位８ビットのＣＤ１２〜ＣＤ５がダウンカウントされると、レジスタ２３より与えられる下位データＤ４〜Ｄ１の値（＋１）に対応する多相クロック信号Ｒ１６〜Ｒ１の何れか１つが選択されて逓倍クロック信号ＭＣＬＫ’として出力される。
そして、図４に示すように、パルスセレクタ２５の内部では、各多相クロック信号Ｒ１〜Ｒ１６に対応してアナログスイッチ２６が配置されている。そして、複数のアナログスイッチ２６の内何れかを制御データＤ１〜Ｄ４に基づいてエンコーダ２７によりエンコードし択一的にオンすることで、多相クロック信号Ｒ１〜Ｒ１６の内１つをタイミング制御部９１に出力するようになっている。
【００２６】
図５は、カウンタ・データラッチ回路１７の内部構成の一部を示すものである。即ち、制御データＣＤ１２〜ＣＤ１は（図示はＣＤ４〜ＣＤ１のみ）、周波数設定回路部２８，周波数情報保持回路部（データ保持手段）２９によるダブルラッチ構成で保持されるようになっている。これらの回路部２８，２９は、夫々フリップフロップ３０，３１で構成されており、クロック入力端子には制御クロック１，２が与えられている。
そして、周波数設定回路部２８を構成するフリップフロップ３０のリセット端子にはリセット信号が与えられている。一方、周波数情報保持回路部２９を構成するフリップフロップ３１のリセット端子には、ＯＲゲート３２を介してリセット信号と、低消費電力モード時の停止制御信号が与えられている。尚、周波数情報保持回路部２９は、通常動作時においては、周波数設定回路部２８によって制御クロック１により同期化され保持された制御データ１〜４を、制御クロック２によって再同期化するために使用されている。
【００２７】
図６は、周波数逓倍回路９が低消費電力モードにある状態から、起動して発振動作を行なう場合を示すタイミングチャートである。（１）の低消費電力モードにおいては、リングオシレータ１８及び発振回路８の発振動作は停止した状態にある。そして、（２）において低消費電力モードが解除されると、それらは発振動作を開始する。また、低消費電力モード中において周波数設定回路部２８のデータはリセットされているが、周波数情報保持回路部２９のデータは保持されている。この保持されているデータは、（１）の低消費電力モードに移行する前に周波数逓倍回路９が行なっていた発振動作に使用されたデータ（発振制御条件）であり、リングオシレータ１８のクロック信号によって発振回路８の基準クロック信号の周期を計測したデータである。
【００２８】
従って、（２）で低消費電力モードが解除されると、周波数逓倍回路９は、基準クロック信号周期の計測を再度行なわずとも、周波数情報保持回路部２９に保持されているデータに基づいて直ちに発振動作を開始することが可能となっている。即ち、この時点で出力されるクロック信号が第１クロック信号に対応する。そして、（３）で制御クロック１（Ｃ＿Ｅ）が立ち下がると、周波数設定回路部２８は、ウェイクアップ後のＣＰＵ２によって新たに設定された制御データ入力１〜４を出力し、周波数情報保持回路部２９は、制御クロック２（Ｄ＿Ｅ）の立ち上がりでその制御データ入力１〜４をラッチして、（４）の立下りで新たに設定された制御データ１〜４を出力する。また、（４）では、逓倍クロック信号出力（発振出力）のイネーブル信号であるＦ＿Ｅがアクティブとなり、クロック信号ＭＣＬＫがＣＰＵ２に出力される。即ち、この時点で出力されるクロック信号が第２クロック信号に対応する。
【００２９】
図７は、ＣＰＵ２の内部構成を本発明の要旨に係る部分のみ示すものである。プログラムカウンタ（ＰＣ）３５には、制御プログラムの読み出しアドレスがセットされる。プログラムカウンタ３５より出力されるアドレスは、制御プログラムが記憶されているＣＰＵ２外部の命令メモリ（本実施例では、フラッシュＲＯＭ３又はマスクＲＯＭ４）に出力される。また、前記アドレスは、加算器３６を介して４バイトアクセスアドレスの増分である「４」が加算されると、次段の加算器３７及びマルチプレクサ（ＭＵＸ）３８に出力される。
【００３０】
加算器３７には、上記命令メモリより読み出された命令が「Ｊｍｐ」のような分岐命令であった場合に、その命令で指定された分岐先アドレスのオフセットがインストラクションデコーダ３９でデコードされて与えられる。従って、加算器３７より出力されるアドレスは、加算器３６の出力アドレスにオフセットアドレスが加算された分岐先アドレスとなり、マルチプレクサ３８に与えられる。マルチプレクサ３８の入力選択切替えは、インストラクションデコーダ３９のデコード結果に応じて行われ、分岐命令「Ｊｍｐ」であれば加算器３７の出力アドレスを選択し、その他の命令である場合は加算器３６の出力アドレスを選択する。
【００３１】
マルチプレクサ３８の出力アドレスは、次段のマルチプレクサ４０（第２マルチプレクサ）に与えられており、そのマルチプレクサ４０のもう一方の入力には、マルチプレクサ４１（第１マルチプレクサ）の出力アドレスが与えられている。マルチプレクサ４１には、入力として、アドレステーブル４２に書き込まれているマスクＲＯＭ４のアクセスアドレスＭＡと、フラッシュＲＯＭ３のアクセスアドレスＦＡとが与えられている。
そして、マルチプレクサ４１の入力選択切替えは、アドレス選択レジスタ（メモリ選択レジスタ）４３に対する書込み設定に応じて行なわれる。即ち、低消費電力モードが解除された場合において、ＣＰＵ２にフラッシュＲＯＭ３へアクセスさせる場合は、アドレス選択レジスタ４３の設定によりアクセスアドレスＦＡを選択し、マスクＲＯＭ４へアクセスさせる場合はアドレスＭＡを選択するように書込みを行う。
【００３２】
ここで、図８（ａ），（ｂ）には、マスクＲＯＭ４，フラッシュＲＯＭ３の概略的なメモリマップイメージを示す。マスクＲＯＭ４については、アドレスＭＡに分岐命令「ｊｍｐ  ＠ｒ１２」が配置されており、レジスタｒ１２で指定されているアドレスがウェイクアップベクタとして指定される。一方、フラッシュＲＯＭ３については、アドレスＦＡに分岐命令「ｊｍｐ  ｗｋｕｐ」が配置されており、ラベルｗｋｕｐで指定されているアドレスがウェイクアップベクタとなっている。
【００３３】
図９は、ＣＰＵ２が、通常動作モード→スリープ（低消費電力）モード→ウェイクアップ→通常動作モード、のように動作モードを変化させる場合の処理内容を示すフローチャートである。尚、車両用のＥＣＵ１がスリープモードに移行する場合としては、車両が駐車している状態のように処理すべきイベントが殆ど発生しないケースが想定される。
ＣＰＵ２は、スリープモードに移行する前に、アドレス選択レジスタ４３に設定を行なうことで、ウェイクアップした直後にアクセスする命令メモリを、フラッシュＲＯＭ３とするか、マスクＲＯＭ４とするかを選択する（ステップＳ１）。即ち、フラッシュＲＯＭ３を選択した場合はフラッシュ電源回路１４の起動準備期間が必要となり、マスクＲＯＭ４等を選択した場合は、上記準備期間は不要（削除）となる。また、この選択設定は、バスを介して低消費電力制御回路１０に対しても行われる。
【００３４】
ステップＳ１において、フラッシュＲＯＭ３を選択した場合（「ＮＯ」）、図７においては、マルチプレクサ４１でアドレスＦＡ側が選択される。続いて、ＣＰＵ２が低消費電力制御回路１０内部の制御レジスタ１０ａに対しスリープモードに移行するための書込み設定を行うと、制御信号出力部１０ｅがスリープ制御信号ＳＣをアクティブにすることで（図１０（ｂ），時点Ａ参照）発振回路８及び周波数逓倍回路９の動作及びフラッシュ電源回路１４の動作が停止する（図１０（ｃ），（ｄ）時点Ｂ参照）。そして、ＣＰＵ２はスリープモードに移行する（図１０参照）。尚、スリープモードに移行している間は、ウォッチドッグタイマのカウントも停止される。
【００３５】
スリープモードに移行している間に（ステップＳ５）スリープタイマ１０ｂがカウントアップするか、若しくは外部ウェイクアップ要因が発生すると、低消費電力制御回路１０は、ＲＯＭＳＴＮＢＹタイマ１０ｃがカウントアップして起動準備期間が経過するまで待機し（ステップＳ６）、当該期間の経過後にスリープ制御信号ＳＣをインアクティブにして発振回路８及び周波数逓倍回路９の動作を再開させ、ＣＰＵ２をウェイクアップさせる（ステップＳ７）。この時、マルチプレクサ４０は一時的にマルチプレクサ４１側を選択するので、プログラムカウンタ３５にはアドレスＦＡがセットされる。従って、ＣＰＵ２はウェイクアップするとアドレスＦＡに分岐してフラッシュＲＯＭ３にアクセスを行い、ウェイクアップ処理（２）を実行する（ステップＳ８）。
【００３６】
一方、ステップＳ１において、マスクＲＯＭ４を選択した場合（「ＹＥＳ」）、図７においては、マルチプレクサ４１でアドレスＭＡ側が選択される。尚、図１０は、このケースに対応するＥＣＵ１の各回路部の動作を示すタイミングチャートである。このケースでは、上記のように起動準備期間の経過を待つ必要がないので、スリープモードに移行している間に（ステップＳ２）ウェイクアップ要因が発生すると（図１０（ｆ），時点Ｆ参照）、低消費電力制御回路１０は直ちにスリープ制御信号ＳＣをインアクティブにする（ステップＳ３）。すると、周波数逓倍回路９は、直ちに周波数逓倍動作を開始して第クロック信号を出力する（図１０（ａ），時点Ｇ参照）。
【００３７】
この時、マルチプレクサ４０，４１を介してプログラムカウンタ３５にはアドレスＭＡがセットされ、ＣＰＵ２はウェイクアップするとアドレスＭＡに分岐して直ちにマスクＲＯＭ３にアクセスを行い、ウェイクアップ処理（１）を実行する（ステップＳ４）。また、この場合、低消費電力制御回路１０の内部では、ＲＯＭＳＴＮＢＹタイマ１０ｃが起動準備期間をカウントしているので、ＣＰＵ２は、ポーリングによりステータスレジスタ１０ｄを参照して、ＲＯＭＳＴＮＢＹフラグがリセットされたか否かを判定する。そして、ＲＯＭＳＴＮＢＹタイマ１０ｃがカウントアップしてＲＯＭＳＴＮＢＹフラグがリセットされたことを認識すると、ＣＰＵ２はプログラムカウンタ３５をアドレスＦＡにセットしてステップＳ８に移行し、ウェイクアップ処理（２）を実行する。
【００３８】
ここで、図１１には、スリープモード解除時の処理の流れを、（ａ）従来構成の場合と（ｂ）本実施例の構成の場合とについてタイミングチャートで示すものである。従来構成の場合は、ＣＰＵはウェイクアップすると、ＣＲ４１サイクルの起動準備期間が経過した後に、フラッシュＲＯＭに対するアクセスが可能となる。また、周波数逓倍回路は、その間に基準クロック信号ＲＣＬＫの周期測定は完了しているので、起動準備期間が経過した時点でマシンクロックＭＣＬＫの出力が可能となる。これに対して、本実施例の場合は、ＣＰＵ２はウェイクアップした時点でマスクＲＯＭ４へのアクセスが可能であると共に、周波数逓倍回路９もマシンクロックＭＣＬＫを第１クロック信号として直ちに出力可能な状態にあるから、スリープモードが解除されるとウェイクアップ処理をすぐに実行することが可能となっている。
【００３９】
また、その後は、図６について上述したように、周波数逓倍回路９は第１クロック信号を出力している期間に基準クロック信号ＲＣＬＫの周期測定を新たに行ない、高精度の第２クロック信号を出力することになる。ここで、所定の間維持されていたスリープモードが解除された時点では、スリープモードに移行した直後とで例えば周囲温度などの環境条件が変化していることも想定されるため、その間に基準クロック信号ＲＣＬＫの発振周期が変動している可能性もある。従って、スリープモードが解除された時点で保持されている発振制御条件で発振動作を開始して生成される第１クロック信号は、起動が比較的速いが発振精度は比較的低い。一方、第１クロック信号がＣＰＵに供給されている間に、基準クロック信号ＲＣＬＫの周期を新たに計測して得られた発振制御条件で生成される第２クロック信号は、起動は比較的遅いが発振精度は比較的高いと言える。
【００４０】
以上のように本実施例によれば、ＥＣＵ１を構成するＣＰＵ２は、スリープモードに移行する場合、低消費電力制御回路１０を介して発振回路８及び周波数逓倍回路９の発振動作を停止させ、フラッシュＲＯＭ３に動作用電源を供給するフラッシュ電源回路１４を、低消費電力制御回路１０が上記回路８及び９の発振動作を停止させること、また、停止させた動作を再開させることに連動して外部電源の供給が遮断，再開されるように構成した。そして、周波数逓倍回路９は、スリープモードに移行する場合はその時点で設定されている発振制御条件を保持し、スリープモードが解除されて発振動作を再開させる場合は、保持された発振制御条件に基づいて動作し、比較的低精度の第１クロック信号をＣＰＵ２に供給するようにした。
【００４１】
従って、周波数逓倍回路９は、スリープモードが解除されると直ちに発振動作を開始させて、ＣＰＵ２に動作用クロック信号を供給することができる。そして、ＣＰＵ２は、スリープモードが解除されると、その時点でデータの読出しが可能な状態にあるマスクＲＯＭ４にアクセスして、ウェイクアップ直後に実行すべき制御プログラムを直ちに読み出すことができるので、前記モードの解除後に迅速に起動することが可能となる。よって、ＣＰＵ２の処理効率を向上させることができる。
また、周波数逓倍回路９は、第１クロック信号をＣＰＵ２に供給している間に、基準クロック信号ＲＣＬＫの周期を新たに計測して得られた発振制御条件に基づいて生成するクロック信号を第２クロック信号とするので、デジタル演算処理により発振動作を行なう１つの周波数逓倍回路９によって、スリープモード解除後の起動時に直ちに必要な第１クロック信号と、高発振精度の第２クロック信号を共に生成出力することができる。
【００４２】
また、ＣＰＵ２がアドレス選択レジスタ４３に設定を行うことで、マルチプレクサ４１を介し、起動時にフラッシュＲＯＭ３とマスクＲＯＭ４との何れにアクセスを行うかが選択され、マルチプレクサ４０は、ウェイクアップ要因が発生した場合に、マルチプレクサ４１を介して出力されるアドレスを、通常処理時のプログラムアドレスに替えてプログラムカウンタ３５にセットするように切替える。従って、制御プログラムに応じて、ＣＰＵ２が起動時にアクセスを行うメモリを選択することができる。
更に、ＣＰＵ２は、マスクＲＯＭ４にアクセスを行っている期間においてＲＯＭＳＴＮＢＹタイマ１０ｃによる起動準備期間の計時が終了すると、フラッシュＲＯＭ３に対してアクセスを行うように切替える。即ち、ＣＰＵ２は、ＲＯＭＳＴＮＢＹタイマ１０ｃを参照することで、スリープモードが解除された後十分な時間が経過し、フラッシュ電源回路１４が安定したレベルの電源電圧を生成可能な状態になったことを把握して、アクセスの切替えタイミングを決定することができる。
【００４３】
（第２実施例）
図１２及び図１３は本発明の第２実施例を示すものであり、第１実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。第２実施例では、ＣＰＵ２がウェイクアップした直後にアクセスを行うメモリを、第１実施例のマスクＲＯＭ４に替えてＲＡＭ（起動用メモリ）５にしたものである。この場合、図７におけるアドレステーブル４２には、アドレスＭＡに替えてＲＡＭ５のアクセスアドレスＲＡを設定することになる。
【００４４】
図１２は、第１実施例の図９相当図である。この場合、ＣＰＵ２は、ステップＳ１で「ＹＥＳ」と判断すると、ウェイクアップ処理（１）のプログラムモジュールを、フラッシュＲＯＭ３からＲＡＭ５の所定領域に転送してから（ステップＳ１０）、スリープモードに移行する。尚、スリープモードに移行している間、ＲＡＭ５に記憶されているデータが保持されていることは言うまでもない。そして、ステップＳ３’では、ウェイクアップすると、ＣＰＵ２はアドレスＲＡに分岐し、続くステップＳ４’では、レジスタｒ１２で指定されているＲＡＭ５のウェイクアップ処理（１）の先頭アドレスに分岐することになる。
【００４５】
即ち、上記プログラムモジュールは、ウェイクアップ処理を実行する場合にしか使用しないので、ＣＰＵ２が通常処理を行っている場合、ＲＡＭ５のプログラムモジュール転送領域は、図１３（ａ）に示すように作業領域として使用することができる。そして、ＣＰＵ２はスリープモードへの移行直前に、図１３（ｂ）に示すようにＲＡＭ５にプログラムモジュールを転送し、ウェイクアップすると、マルチプレクサ４０，４１の切替えによりアドレスＲＡがプログラムカウンタ３５にセットされ、ＣＰＵ２は、直ちにＲＡＭ５にアクセスを行い、プログラムを実行することができる。
【００４６】
以上のように第２実施例によれば、ＣＰＵ２は、スリープモードに移行する場合、ウェイクアップ処理（１）のプログラムモジュールを、フラッシュＲＯＭ３からＲＡＭ５の所定領域に転送し、ウェイクアップするとＲＡＭ５にアクセスを行うようにした。従って、ＲＡＭ５の上記転送領域を、ＣＰＵ２が通常の処理を行なっている期間は作業領域として使用することができるので、スリープモードの解除時にのみ使用される冗長な記憶領域を定常的に確保する必要がなく、リソースを効率的に使用することが可能となる。
【００４７】
（第３実施例）
図１４及び図１５は本発明の第３実施例を示すものであり、第１実施例と異なる部分についてのみ説明する。図１４に示すＥＣＵ（マイクロコンピュータ）５１は、第１実施例における周波数逓倍回路９をクロック制御回路５２に置き換えたものである。そのクロック制御回路５２の内部には周波数逓倍回路５３が配置されているが、周波数逓倍回路５３は、周波数逓倍回路９とは異なり、発振制御条件を保持するための周波数情報保持回路部２９を備えていない。即ち、従来のＤＰＬＬ回路と同様の構成である。
【００４８】
また、周波数逓倍回路５３の入力側と出力側とには、セレクタ（マルチプレクサ）５４，５５が夫々配置されている。入力側のセレクタ５４の入力端子には、発振回路８により出力される基準クロック信号ＲＣＬＫと、ＣＲ発振回路１１より出力されるクロック信号ＣＬＫ＿ＣＲとが与えられており、セレクタ５４は、これらの何れか一方を選択して周波数逓倍回路５３に出力する。出力側のセレクタ５５の入力端子には、周波数逓倍回路５３より出力されるＲＣＬＫと、ＣＲ発振回路１１より出力される逓倍クロック信号ＤＣＬＫとが与えられており、セレクタ５５は、これらの何れか一方を選択してマシンクロックＭＣＬＫとして出力する。
【００４９】
そして、セレクタ５４，５５の選択切替えは、切替えタイマ５６の出力信号に基づいて行われる。切替えタイマ５６は、スリープ制御信号ＳＣがアクティブ（ロウ）になるとリセットされ、その状態からインアクティブ（ハイ）になると計時を開始する。そのカウンタ値が周波数逓倍回路５３の発振安定待ち時間（所定時間）Ｔｗに相当する値になると、セレクタ５４，５５に与える切替え制御信号をロウからハイに変化させ、カウント動作を停止する。セレクタ５４，５５は、与えられる切替え制御信号がロウの場合は何れもクロック信号ＣＬＫ＿ＣＲ側を選択し、切替え制御信号がハイに変化すると、基準クロック信号ＲＣＬＫ，逓倍クロック信号ＤＣＬＫ側を夫々選択するようになっている。
【００５０】
図１５は、ＥＣＵ５１において、ＣＰＵ２がスリープモードから通常動作モードに移行する状態を示すタイミングチャートである。ＣＲ発振回路１１は、ＣＰＵ２がスリープモードに移行している間も発振動作を継続しているので、クロック信号ＣＬＫ＿ＣＲは常時出力されており即時使用可能な状態にある（（ａ），（ｂ）参照）。そして、ウェイクアップ要因が発生するとスリープ制御信号ＳＣがインアクティブに変化して、ＣＰＵ２は通常動作モードに移行してウェイクアップする。すると、切替えタイマ５６はカウント動作を開始する。
【００５１】
この時、セレクタ５４，５５は、何れもクロック信号ＣＬＫ＿ＣＲ（第１クロック信号）側を選択するので、ＣＰＵ２は、当該クロック信号をマシンクロックＭＣＬＫとして動作し、第１実施例と同様にしてマスクＲＯＭ４にアクセスを行う。また、発振回路８及び周波数逓倍回路５３も発振動作を再開するが、周波数逓倍回路５３は、クロック信号ＣＬＫ＿ＣＲの周期測定から動作を開始するので、逓倍クロック信号ＤＣＬＫが安定した状態で出力されるまでには発振安定待ち時間Ｔｗの経過を待つ必要がある（（ｃ），（ｄ）参照）。
【００５２】
そして、第１実施例と同様に、ＣＰＵ２がＲＯＭＳＴＮＢＹタイマ１０ｃをポーリングして、ＲＯＭＳＴＮＢＹフラグがリセットされたことを確認すると、それ以降ＣＰＵ２はフラッシュＲＯＭ３に対してアクセスを行うようになる。その後、発振安定待ち時間Ｔｗが経過して、切替えタイマ５６が切替え制御信号をハイに変化させると、セレクタ５４，５５は、基準クロック信号ＲＣＬＫ，逓倍クロック信号ＤＣＬＫ側を夫々選択する。すると、マシンクロックＭＣＬＫは、クロック信号ＣＬＫ＿ＣＲから安定した逓倍クロック信号ＤＣＬＫに切替わる。また、以降、周波数逓倍回路５３は、基準クロック信号ＲＣＬＫの周期を新たに測定して周波数逓倍演算を行なうようになり、以降は高発振精度の第２クロック信号を生成出力する（（ｄ）参照）。
【００５３】
尚、以上の場合において、ＣＰＵ２が行なう処理内容は、図１５（ｅ）に示すように、ウェイクアップした直後のマスクＲＯＭ４にアクセスしている間は起動後の初期化処理を行ない、その後、フラッシュＲＯＭ３にアクセスしてマシンクロックＭＣＬＫがクロック信号ＣＬＫ＿ＣＲである間は、クロック精度が不要なアプリケーションを行なうようにする。そして、マシンクロックＭＣＬＫが逓倍クロック信号ＤＣＬＫに切替わった以降にクロック精度が必要なアプリケーションを行なうようにすれば、実動作上全く問題はない。
また、クロック信号ＣＬＫ＿ＣＲと、逓倍クロック信号ＤＣＬＫとの周波数設定が異なるとしても、例えば、周波数差をそのままにして切替えても良いし、周波数逓倍回路５３側の逓倍率を一時的に低下させたり、或いは、ＣＲ発振回路１１の発振周波数を一時的に上昇させて、切換えを行う時点で両者が等しくなるようにしても良い。
【００５４】
以上のように第３実施例によれば、クロック制御回路５２を、ＣＲ発振回路１１が出力する発振停止状態からの起動が比較的速いが低発振精度であるクロック信号ＣＬＫ＿ＣＲと、周波数逓倍回路５３出力する起動が比較的遅いが高発振精度である逓倍クロック信号ＤＣＬＫとを選択的に出力可能に構成する。
そして、ＣＰＵ２は、スリープモードに移行する場合、クロック制御回路５２における周波数逓倍回路５３の発振動作を停止させて消費電力を低減し、クロック制御回路５２は、スリープモードが解除されると、周波数逓倍回路５３の発振動作を再開させると共に、ＣＰＵ２に対してその時点で発振動作が安定状態にあるＣＲ発振回路１１のクロック信号ＣＬＫ＿ＣＲを供給し、発振安定待ち時間Ｔｗが経過すると、発振が安定した状態となっている高発振精度の逓倍クロック信号ＤＣＬＫを供給するように切替える。
【００５５】
従って、第１実施例と同様に、スリープモードが解除された場合、クロック制御回路５２はＣＰＵ２にクロック信号ＣＬＫ＿ＣＲを直ちに供給することができる。そして、周波数逓倍回路５３が、第１実施例の周波数逓倍回路９とは異なり、発振制御条件を保持するための周波数情報保持回路部２９を備えていない構成であっても、クロック信号ＣＬＫ＿ＣＲが供給されている間に入力されるクロック信号の周期を新たに測定して高発振精度の逓倍クロック信号ＤＣＬＫを生成して、発振安定待ち時間Ｔｗの経過後に出力することができる。
【００５６】
本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形が可能である。
フラッシュ電源回路１４は、フラッシュＲＯＭ３の内部に構成されていても良い。
例えば第１実施例において、図７のマルチプレクサ４１は必ずしも必要ではなく、ウェイクアップ直後は常にマスクＲＯＭ４にアクセスを行うように構成しても良い。
ＣＰＵ２等の動作用電源を生成する回路は、ＥＣＵ１に搭載されていても良い。
スリープモードに移行した場合、スリープモードを解除するためのスリープタイマ１０ｂは必ずしも必要ではなく、例えば、外部ウェイクアップ要因が発生した場合にのみウェイクアップするような構成であっても良い。
第３実施例において、スリープモードに移行する場合に、ＣＲ発振回路１１の動作を停止させるようにしても良い。但し、その場合、低消費電力制御回路１０を動作させるためのクロックソースは別途必要である。
第２クロック信号は、必ずしもＤＰＬＬ回路によって生成するものに限らない。要は、第１クロック信号よりも発振精度が高いものであれば良く、例えばアナログＤＰＬＬ回路によって生成しても良い。
車両用のＥＣＵに限ることなく、不揮発性メモリに制御プログラムが記憶されると共に、低消費電力モードに移行可能に構成されるマイクロコンピュータであれば広く適用が可能である。
【図面の簡単な説明】
【００５７】
【図１】本発明を車両用ＥＣＵに適用した場合の第１実施例であり、ＥＣＵの電気的構成を示す機能ブロック図
【図２】周波数逓倍回路の概略構成を示す機能ブロック図
【図３】ＤＣＯの詳細な構成を示す機能ブロック図
【図４】パルスセレクタの内部構成を示す図
【図５】カウンタ・データラッチ回路の内部構成の一部を示す図
【図６】周波数逓倍回路が低消費電力モードにある状態から、起動して発振動作を行なう場合を示すタイミングチャート
【図７】ＣＰＵの内部構成を、本発明の要旨に係る部分のみ示す機能ブロック図
【図８】（ａ）はマスクＲＯＭ、（ｂ）はフラッシュＲＯＭの概略的なメモリマップイメージを示す図
【図９】ＣＰＵが動作モードを変化させる場合の処理内容を示すフローチャート
【図１０】起動用メモリとしてマスクＲＯＭを選択した場合に、図９のフローチャートに対応するタイミングチャート
【図１１】スリープモード解除時の処理の流れを、（ａ）従来構成の場合と（ｂ）本実施例の構成の場合とについて示すタイミングチャート
【図１２】本発明の第２実施例を示す図９相当図
【図１３】ＲＡＭの概略的なメモリマップイメージであり、（ａ）はプログラムモジュールの転送前の状態、（ｂ）は同転送後の状態を示す図
【図１４】本発明の第３実施例を示す図１相当図
【図１５】図１０相当図
【符号の説明】
【００５８】
図面中、１はＥＣＵ（マイクロコンピュータ）、２はＣＰＵ、３はフラッシュＲＯＭ（不揮発性メモリ）、４はマスクＲＯＭ（起動用メモリ）、５はＲＡＭ（起動用メモリ）、７は水晶発振子（外部発振子）、９は周波数逓倍回路（クロック制御回路）、１０ｃはＲＯＭＳＴＮＢＹタイマ（アクセス禁止タイマ）、４０はマルチプレクサ（第２マルチプレクサ）、４１はマルチプレクサ（第１マルチプレクサ）、４３はアドレス選択レジスタ（メモリ選択レジスタ）、５１はＥＣＵ（マイクロコンピュータ）、５２はクロック制御回路、５３は周波数逓倍回路を示す。
【図１】
2006127466.tif 000003
【図２】
2006127466.tif 000004
【図３】
2006127466.tif 000005
【図４】
2006127466.tif 000006
【図５】
2006127466.tif 000007
【図６】
2006127466.tif 000008
【図７】
2006127466.tif 000009
【図８】
2006127466.tif 000010
【図９】
2006127466.tif 000011
【図１０】
2006127466.tif 000012
【図１１】
2006127466.tif 000013
【図１２】
2006127466.tif 000014
【図１３】
2006127466.tif 000015
【図１４】
2006127466.tif 000016
【図１５】
2006127466.tif 000017