(57)【要約】【課題】  電源電圧が低下した場合でも電源線の終端側に配置されている回路の動作を極力維持し、必要に応じて周辺回路の動作状態をより柔軟に選択できるマイクロコンピュータを提供する。【解決手段】  マイクロコンピュータ１１において、ＲＯＭ１３に、ＣＰＵ１２にクロック制御処理を実行させるためのサブルーチンプログラム１３ａを記憶させ、電圧低下検出回路１７が電源線２１の終端部において電源電圧Ｖｃｃの低下を検出すると、クロック回路１６を介してＣＰＵ１２に供給されるクロック信号の周波数を分周させると共に、周辺回路１４，１５に夫々供給されているクロック信号の供給を停止させる。そして、ＣＰＵ１２がサブルーチンプログラム１３ａを実行することで、周辺回路１５に対するクロック信号の供給を再開させる。【選択図】  図１
2006251886.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと、このＣＰＵによって実行される制御プログラムが記憶されるプログラムメモリと、その他所定の機能を実現するための複数の周辺回路と、前記ＣＰＵ及び前記周辺回路に夫々供給するクロック信号を制御するクロック制御回路とを備えてなるマイクロコンピュータにおいて、
電源線の終端部に配置され、電源電圧が所定レベル以下に低下したことを検出する電圧低下検出回路を備え、
前記プログラムメモリには、前記ＣＰＵにクロック制御処理を実行させるためのサブルーチンプログラムが記憶されており、
前記電圧低下検出回路が電圧の低下を検出すると、前記クロック制御回路より前記ＣＰＵに供給されるクロック信号の周波数を分周させると共に、前記ＣＰＵに前記サブルーチンプログラムを実行させ、
前記サブルーチンプログラムは、前記ＣＰＵに、前記複数の周辺回路に夫々供給されているクロック信号を選択的に停止又は分周させる処理を実行させるように記述されていることを特徴とするマイクロコンピュータ。
【請求項２】
前記電圧低下検出回路が電圧の低下を検出すると、前記複数の周辺回路に夫々供給されているクロック信号を予め選択的に停止又は分周させてから、前記ＣＰＵに前記サブルーチンプログラムを実行させることを特徴とする請求項１記載のマイクロコンピュータ。
【請求項３】
ＣＰＵと、このＣＰＵによって実行される制御プログラムが記憶されるプログラムメモリと、その他所定の機能を実現するための複数の周辺回路と、前記ＣＰＵ及び前記周辺回路に夫々供給するクロック信号を制御するクロック制御回路とを備えてなるマイクロコンピュータにおいて、
電源線の終端部に配置され、電源電圧が所定レベル以下に低下したことを検出する電圧低下検出回路を備え、
前記プログラムメモリには、前記ＣＰＵにクロック制御処理を実行させるためのサブルーチンプログラムが記憶されており、
前記電圧低下検出回路が電圧の低下を検出すると、前記クロック制御回路より前記ＣＰＵに供給されるクロック信号の周波数を分周させると共に前記複数の周辺回路に夫々供給されているクロック信号を停止させ、更に、前記ＣＰＵに前記サブルーチンプログラムを実行させ、
前記サブルーチンプログラムは、前記ＣＰＵに、前記複数の周辺回路に対するクロック信号の供給を、選択的に再開させる処理を実行させるように記述されていることを特徴とするマイクロコンピュータ。
【請求項４】
前記サブルーチンプログラムは、前記ＣＰＵに、前記複数の周辺回路に対するクロック信号の供給を選択的に再開させる場合に、必要に応じて前記クロック信号の分周処理を実行させることを特徴とする請求項３記載のマイクロコンピュータ。
【請求項５】
前記クロック制御回路は、前記ＣＰＵに供給されるクロック信号をそのまま出力する経路と分周回路を介して出力する経路とを選択するためのマルチプレクサを備え、
前記マルチプレクサは、前記電圧低下検出回路が電圧の低下を検出すると、前記分周回路側の経路を選択するように構成されていることを特徴とする請求項１乃至４の何れかに記載のマイクロコンピュータ。
【請求項６】
前記電圧低下検出回路が電圧の低下を検出すると、前記ＣＰＵに割り込み要求を発生させ、前記ＣＰＵが前記割り込み要求を許可すると、前記サブルーチンプログラムの先頭アドレスを割り込みベクタとして前記ＣＰＵ側に渡す割り込み制御回路を備えたことを特徴とする請求項１乃至５の何れかに記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵ，プログラムメモリ，複数の周辺回路やクロック制御回路等を備えてなるマイクロコンピュータに関する。
【背景技術】
【０００２】
マイクロコンピュータ（マイコン）のような集積回路においては、電源電圧が低下して動作保障レベルを下回った場合は、誤動作を回避するため一旦リセット状態に移行するように構成されている。そして、この場合のリセット状態は、電源電圧レベルが正常範囲に回復するまでは解除されないのが通常である。しかし、例えば高い安全性が要求される製品の制御に使用されるマイコンにおいては、動作が停止する期間は極力短くなることが望ましい。
【０００３】
例えば、特許文献１には、図８に示すような構成が開示されている。マイクロコンピュータ１の内部にはＣＰＵ２，ＲＯＭ３，及び周辺回路４が内蔵されており、アドレス信号を送受するためのアドレスバス５及びデータ信号を送受するためのデータバス６にて相互に接続されている。システムクロックは、ＣＰＵ２内のクロック発振回路２ａで発振されると、クロック制御回路２ｂを介してＲＯＭ３及び周辺回路４に供給されている。
ＲＯＭ２の内部には、電源電圧モニタ用のセンスアンプ回路７及び判定回路８が配置されており、これらが電源電圧が所定レベル以下になったことを検出すると、クロック制御回路２ｂに制御信号を出力する。すると、クロック制御回路２ｂは、クロック周波数を低下させて、動作速度マージンを確保するようにしている。
【特許文献１】特開平７−５６８８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示されている技術では、ＲＯＭ３の内部において電源電圧をモニタしているため、マイコン１の内部で電源線の終端側での電源電圧は、配線抵抗分の電圧降下によって更に低下している場合も考えられる。すると、その終端側に配置されている周辺回路などは、電圧の不足により動作不能となることも想定される。
また、特許文献１では、電源電圧の低下を検出するとマイコン１の内部に供給されているクロック信号の周波数を一律に低下させているが、例えば、周辺回路の機能によってはその処理速度を維持した状態でなければ動作させる意味がないものも存在する。そのような周辺回路についても、低速で無意味に動作させてしまう場合がある。
【０００５】
本発明は上記事情に鑑みてなされたものであり、その目的は、電源電圧が低下した場合でも、電源線の終端側に配置されている回路の動作を極力維持すると共に、必要に応じて周辺回路の動作状態をより柔軟に選択することが可能なマイクロコンピュータを提供することにある。
【課題を解決するための手段】
【０００６】
請求項１記載のマイクロコンピュータによれば、プログラムメモリには、ＣＰＵにクロック制御処理を実行させるためのサブルーチンプログラムが記憶される。また、電圧低下検出回路は、電源線の終端部に配置されて電源電圧をモニタする。そして、電圧低下検出回路が電圧の低下を検出すると、クロック制御回路を介してＣＰＵに供給されるクロック信号の周波数が分周され、ＣＰＵはサブルーチンプログラムを実行する。すると、当該プログラムに基づき、ＣＰＵは、複数の周辺回路に夫々供給されているクロック信号を選択的に停止又は分周させる処理を行う。
即ち、電圧の低下が検出された場合は、ＣＰＵに供給されるクロック信号の周波数が分周されることで電力消費が抑制される。更に、周辺回路に供給されるクロック信号が選択的に停止又は分周されることで電力消費の抑制を更に図ると共に、周辺回路の機能に応じて動作状態を選択することができる。そして、電源線の終端部で電源電圧がモニタされるので、終端側に配置されている回路についても動作可能な状態を極力維持することができる。
【０００７】
請求項２記載のマイクロコンピュータによれば、電圧低下検出回路が電圧の低下を検出すると、周辺回路に供給されているクロック信号を予め選択的に停止又は分周させてからＣＰＵにサブルーチンプログラムを実行させる。従って、常時動作させる必要性が比較的低いことが明らかな周辺回路については、サブルーチンプログラムの実行により動作状態を選択する前の段階で、動作を停止させたり若しくは動作速度を低下させることができる。よって、サブルーチンプログラムの記述をより簡単にすることができる。
【０００８】
請求項３記載のマイクロコンピュータによれば、請求項１と同様に、プログラムメモリには、ＣＰＵにクロック制御処理を実行させるためのサブルーチンプログラムが記憶される。また、電圧低下検出回路は、電源線の終端部に配置されて電源電圧をモニタする。そして、電圧低下検出回路が電圧の低下を検出すると、クロック制御回路を介してＣＰＵに供給されるクロック信号の周波数が分周されると共に複数の周辺回路に夫々供給されているクロック信号の供給も停止させる。その後、ＣＰＵがサブルーチンプログラムを実行すると、当該プログラムに基づいて、ＣＰＵが複数の周辺回路に対するクロック信号の供給を選択的に再開させる。従って、電源電圧の低下時に何れの周辺回路を動作させるかについては、サブルーチンプログラムにより全て決定することができる。
【０００９】
請求項４記載のマイクロコンピュータによれば、サブルーチンプログラムは、ＣＰＵにより複数の周辺回路に対するクロック信号の供給を選択的に再開させる場合、必要に応じてクロック信号の分周処理を実行させるように記述されるので、周辺回路の動作を再開させたる場合の動作速度についても選択的に決定することができる。
請求項５記載のマイクロコンピュータによれば、クロック制御回路よりＣＰＵに供給されるクロック信号は、マルチプレクサを介して非分周信号と分周信号とが選択されるようになっている。そして、電圧低下検出回路が電圧の低下を検出した際にマルチプレクサに分周回路側の経路を選択させる動作は、極めて簡単なハードウエアにより実現することができる。
【００１０】
請求項６記載のマイクロコンピュータによれば、電圧低下検出回路が電圧の低下を検出すると、割り込み制御回路はＣＰＵに割り込み要求を発生させ、その割り込み要求が許可されると、サブルーチンプログラムの先頭アドレスを割り込みベクタとしてＣＰＵ側に渡す。従って、ＣＰＵにサブルーチンプログラムを実行させる処理についても、簡単なハードウエアによって実現することができる。
【発明を実施するための最良の形態】
【００１１】
（第１実施例）
以下、本発明を例えば車両に搭載されるＥＣＵ（Electronic Control Unit）としてのマイクロコンピュータに適用した場合の第１実施例について、図１乃至図５を参照して説明する。図１は、マイクロコンピュータ（マイコン）１１の電気的構成を示す機能ブロック図である。マイコン１１は、ＣＰＵ１２，ＲＯＭ（プログラムメモリ）１３，周辺回路１４（Ａ）及び１５（Ｂ），クロック回路部（クロック制御回路）１６，電圧低下検出回路１７，割り込み制御回路１８などで構成されている。そして、電圧低下検出回路１７を除く構成部分は、アドレスバス１９及びデータバス２０を介して接続されている。
【００１２】
電圧低下検出回路１７は、マイコン１１の内部に配線されている電源線２１の終端に配置されて電源電圧Ｖｃｃ（例えば２．５Ｖ）を監視しており、電圧Ｖｃｃが参照電圧Ｖｄｄ（例えば２．０Ｖ）を下回った場合に電圧低下検出信号（ハイアクティブ）を出力するように構成されている。尚、トランジスタレベルの動作が可能な限界電圧はこの場合１．２５Ｖであるものとする。電圧低下検出信号は、フリップフロップ２２によりクロック同期化されると、検出フラグとしてクロック回路部１６及び割り込み制御回路１８に与えられる。
【００１３】
ＲＯＭ１３には、ＣＰＵ１２によって実行される制御プログラムが記憶されているが、その一部であるサブルーチンプログラム１３ａが用意されている。このサブルーチンプログラム１３ａは、上述したように電圧低下検出回路１７によって電源電圧Ｖｃｃの低下が検出された場合、ＣＰＵ１２により実行されるようになっている。
クロック回路部１６は、クロック分周回路２３と周辺クロック制御回路２４とで構成されている。クロック回路部１６には、例えばマイコン１１に外付けされる発振子及び内部の発振回路（何れも図示せず）より出力されるクロック信号ＣＬＫ（例えば周波数１６ＭＨｚ）が供給される。
【００１４】
周辺回路１４は、例えば車内ＬＡＮの一種であるＣＡＮにより通信を行うための通信用回路であり、周辺回路１５は、例えばＣＰＵ１２の指示によりパルス幅が制御されるＰＷＭ信号を出力するＰＷＭ信号生成回路であるとする。周辺回路１５は、供給されるクロック信号を内部の分周回路（図示せず）で適宜分周したものをＰＷＭ信号の搬送波信号として使用するようになっている。そして、その分周比は、ＣＰＵ１２により設定可能となるように構成されている。
【００１５】
また、割り込み制御回路１８は、ＣＰＵ１２に対して発生させる割り込みを制御するものであり、電圧低下検出回路１７やその他の図示しない割り込み発生元からの割り込み処理要求が発生すると、ＣＰＵ１２に対して割り込み要求信号を出力する。そして、ＣＰＵ１２が割り込みを許可する信号を返すと、割り込み要因に応じた割り込みベクタをＣＰＵ１２側に渡すようになっている。
クロック分周回路２３は、図２に示すように、４分周回路２５及びマルチプレクサ（ＭＰＸ）２６で構成され、ＣＰＵ１２にクロック信号Ｃ＿ＣＬＫを供給する。マルチプレクサ２６の入力端子には、クロック信号ＣＬＫと４分周回路２５を介して出力される４分周クロック信号（周波数４ＭＨｚ）とが与えられている。マルチプレクサ２６は、検出フラグがセットされていない場合はクロック信号ＣＬＫ側を選択して出力し、検出フラグがセットされると４分周クロック信号側を選択してＣ＿ＣＬＫを出力する。
【００１６】
一方、図３は、周辺クロック制御回路２４の詳細構成を示すものである。周辺クロック制御回路２４は、フラグ立上り検出部２７，クロックイネーブル制御部２８Ａ，２８Ｂを備えている。フラグ立上り検出部２７は、直列に２段接続されたフリップフロップ２７ａ及び２７ｂとＮＡＮＤゲート２７ｃとで構成されている。フリップフロップ２７ａのデータ入力端子には検出フラグが与えられ、フリップフロップ２７ａ，２７ｂ夫々の出力端子はＮＡＮＤゲート２７ｃの入力端子に接続されている。尚、フリップフロップ２７ｂ側は負論理入力となっている。ここで、並びに以降に述べるフリップフロップについては、何れもクロック信号Ｃ＿ＣＬＫで同期化を行うものとする。
【００１７】
クロックイネーブル制御部２８Ａ，２８Ｂは何れも同じ構成であり、マルチプレクサ２９，ＡＮＤゲート３０及び３１，フリップフロップ３２を備えている。マルチプレクサ２９の一方の入力端子には、データバス２０のデータビット線（Ａ，Ｂで夫々異なる）が接続されており、出力端子は、ＡＮＤゲート３０を介してフリップフロップ３２のデータ入力端子に接続されている。
また、ＡＮＤゲート３０の他方の入力端子には、フラグ立上り検出部２７におけるＮＡＮＤゲート２７ｃの出力端子が接続されている。フリップフロップ３２の出力端子は、ＡＮＤゲート３１の一方の入力端子とマルチプレクサ２９の他方の入力端子とに接続されている。そして、ＡＮＤゲート３１の他方の入力端子には、クロック信号ＣＬＫが与えられている。
【００１８】
マルチプレクサ２９の切替えは、ＣＰＵ１２が切替え用に割り当てられた書き込みアドレスに書き込みを行うと図示しないアドレスデコーダによってデコードが行われ、そのデコード信号（ハイアクティブ）がマルチプレクサ２９の切替え信号となる（ここではＡ，Ｂ共通である）。従って、マルチプレクサ２９が常にはフリップフロップ３２側を選択することで、フリップフロップ３２にセットされたデータは保持される。そして、フラグ立上り検出部２７が立上りを検出していない期間に、ＣＰＵ１２がデータバス２０のＬＳＢ側２ビット（Ｄ１，Ｄ０）にデータを書き込めば、フリップフロップ３２Ａ，３２Ｂに夫々データを一括でセットすることができる。
【００１９】
図４は、電圧低下検出回路１７により電源電圧Ｖｃｃの低下が検出された場合に、主として周辺クロック制御回路２４の動作を示すタイミングチャートである。電圧の低下が、Ｃ＿ＣＬＫ周期（１）内で検出されると（ｂ）、検出フラグは周期（２）の立上りで同期化されて出力される（ｃ）。すると、フラグ立上り検出部２７では、検出フラグの立上りを受けてフリップフロップ２７ａの出力が周期（３）で立ち上がる（ｄ）。
この時、周期（３）においては、ＮＡＮＤゲート２７ｃの入力レベルが夫々ハイ，ロウとなるので、ＮＡＮＤゲート２７ｃは周期（３）の立上りで出力端子をロウレベルに変化させる（ｆ）。そして、フリップフロップ２７ｂの出力が次の周期（４）でハイレベルに変化するので（ｅ）、ＮＡＮＤゲート２７ｃは１周期だけロウレベルを出力する（ｆ）。すると、クロックイネーブル制御部２８のＡＮＤゲート３０はそのロウレベルを受けてロウレベルを出力するので、フリップフロップ３２は周期（４）の立上りでロウレベルとなり（ｇ）、以降はそのレベルが保持される。これにより、周辺回路１４及び１５に対するクロック信号の供給がＡＮＤゲート３１で停止される。
【００２０】
次に、本実施例の作用について図５も参照して説明する。電圧低下検出回路１７により電源電圧Ｖｃｃの低下が検出されていない状態では、フラグ立上り検出部２７のＮＡＮＤゲート２７ｃはハイレベルを出力しているので、クロックイネーブル制御部２８のフリップフロップ３２はＣＰＵ１２が事前に設定したデータ「１」を保持している。従って、周辺回路１４及び１５には、ＡＮＤゲート３１を介してクロック信号ＣＬＫがＰＡ＿ＣＬＫ，ＰＢ＿ＣＬＫとして供給されている。
【００２１】
図５は、電圧低下検出回路１７により電源電圧Ｖｃｃの低下が検出された場合の処理の流れを示すフローチャートである。尚、このフローチャートでは、マイコン１１のハードウエアによって行われる処理と、ＣＰＵ１２のソフトウエア（サブルーチンプログラム１３ａ）によって行なわれる処理とが示されている。
電圧Ｖｃｃの低下が検出され、検出フラグがセットされると（ステップＳ１）、クロック回路部１６では、クロック分周回路２３のマルチプレクサ２６が４分周回路２５側を選択するので、ＣＰＵ１２に供給されるＣ＿ＣＬＫは４分周されて４ＭＨｚとなる。また、上述したように、周辺クロック制御回路２４では周辺回路１４及び１５に対するクロック信号の供給が停止される（ステップＳ２）。
【００２２】
そして、ＣＰＵ１２に対しては、割り込み制御回路１８によって割り込み要求が出力され、サブルーチンプログラム１３ａの先頭アドレスが割り込みベクタとして渡される。すると、ＣＰＵ１２は、サブルーチンプログラム１３ａに分岐して（ステップＳ３）当該プログラム１３ａの実行を開始する。従って、以降の処理は、サブルーチンプログラム１３ａの実行によりソフトウエア的に行われる。
【００２３】
先ず、ＣＰＵ１２は、周辺回路１５側について、ＰＷＭ信号の搬送波周波数を内部で４分周させるように搬送波カウンタのカウンタ値を再設定する（ステップＳ４）。それから、制御レジスタ３２Ｂ側にデータ「１」を書き込むことで、周辺回路１５側に対するクロック信号の供給を再開させる（ステップＳ５）。すると、サブルーチンプログラム１３ａを終了してメインプログラムにリターンする（ステップＳ６）。
以上の処理によって周辺回路１５は低速で動作することになるが、周辺回路１４側はクロック信号の供給が停止したままになり動作停止状態となる。これは、周辺回路１４が通信回路であるため、マイコン１１側において一方的に低速で動作すると通信相手との同期が取れなくなることから、低速で動作させる意味がないからである。
【００２４】
ＣＰＵ１２は、４分周されたクロック信号Ｃ＿ＣＬＫに基づいて低速で動作したままメインプログラムに復帰する（ステップＳ７）。その状態で、電源電圧Ｖｃｃのレベルが正常な状態に復帰すると、電圧低下検出回路１７は検出信号をインアクティブにする。それに伴い検出フラグはリセットされるが、その立下りによってリセット回路３４（図１参照）はマイコン１１に対する内部リセットを発生させる。ここで、「立下り」の検出は、フラグ立上り検出部２７のＮＡＮＤゲート２７ｃとは逆に、１段目，２段目のフリップフロップの出力レベルが夫々ロウ，ハイを示したＡＮＤ条件で、ハイ，若しくはロウレベルのパルスを出力すれば良い。すると、マイコン１１のハードウエアもリセットされるので、クロック回路部１６も初期化され、クロック信号の供給も通常状態に復帰する。
【００２５】
以上のように本実施例によれば、ＲＯＭ１３に、ＣＰＵ１２にクロック制御処理を実行させるためのサブルーチンプログラム１３ａを記憶させ、電圧低下検出回路１７が電源線２１の終端部において電源電圧Ｖｃｃの低下を検出すると、クロック回路１６を介してＣＰＵ１２に供給されるクロック信号の周波数を分周させると共に、周辺回路１４，１５に夫々供給されているクロック信号の供給を停止させる。そして、ＣＰＵ１２がサブルーチンプログラム１３ａを実行することで、周辺回路１５に対するクロック信号の供給を再開させるようにした。
【００２６】
従って、電圧の低下が検出された場合は、ＣＰＵ１２に供給されるクロック信号の周波数を４分周させ、且つ周辺回路１４，１５に対するクロック信号の供給を停止させて電力消費を抑制することができる。また、その後周辺回路１５についてはクロック信号の供給を選択的に再開させるので、周辺回路１４，１５の機能に応じて動作状態を選択することができる。そして、マイコン１１の内部において電源線２１の終端側に配置されている周辺回路１５等についても、動作速度マージンを極力確保することができる。
また、ＣＰＵ１２は、サブルーチンプログラム１３ａに基づいて周辺回路１５に対するクロック信号の供給を再開させる場合、周辺回路１５の内部でクロック信号の分周処理を実行させるので、周辺回路１５の動作を再開させる場合の動作速度についても選択的に決定することができる。
【００２７】
また、電圧低下検出回路１７が電圧の低下を検出した場合、クロック回路部１６のクロック分周回路２３では、ＣＰＵ１２に供給するクロック信号Ｃ＿ＣＬＫを、マルチプレクサ２６に４分周回路２５側の経路を選択させて出力するので、極めて簡単なハードウエアによってクロックの分周処理を実現することができる。
更に、電圧低下検出回路１７が電圧の低下を検出すると、割り込み制御回路１８はＣＰＵ１２に割り込み要求を発生させ、その割り込み要求が許可されると、サブルーチンプログラム１３ａの先頭アドレスを割り込みベクタとしてＣＰＵ１２側に渡すので、ＣＰＵ１２にサブルーチンプログラム１３ａを実行させる処理についても、簡単なハードウエアによって実現することができる。
【００２８】
（第２実施例）
図６及び図７は本発明の第２実施例を示すものであり、第１実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。第２実施例のマイコン４１は、第１実施例のマイコン１１とはクロック回路部１６の内部における周辺クロック制御回路２４が、周辺クロック制御回路４２に置き換わったものであり、その他の構成は第１実施例と同様である。但し、ＲＯＭ１３に記憶されるサブルーチンプログラム１３ａは、若干変更されてサブルーチンプログラム１３ｂとなっている（図６参照）。
図７に、周辺クロック制御回路４２の構成を示す。周辺クロック制御回路４２では、周辺クロック制御回路２４よりフラグ立上り検出部２７が削除されており、それに伴いクロックイネーブル制御部２８のＡＮＤゲート３０も削除され、マルチプレクサ２９の出力端子は、フリップフロップ３２のデータ入力端子に直結されている。
【００２９】
次に、第２実施例の作用について図６も参照して説明する。図６は、第１実施例の図５相当図であるが、図５におけるステップＳ４は削除され、ステップＳ２，Ｓ５は、ステップＳ８，Ｓ９に夫々置き換えられている。即ち、ステップＳ１で検出フラグがセットされると、続くステップＳ８では、第１実施例と同様に、ＣＰＵ１２に供給されるＣ＿ＣＬＫは４分周されて４ＭＨｚとなるが、周辺回路１４及び１５に対するクロック信号の供給は停止されずにそのままとなる。
【００３０】
そして、ＣＰＵ１２がサブルーチンプログラム１３ｂに分岐してその実行を開始すると、第２実施例では、周辺回路１４に対するクロック信号の供給を停止させるように、クロックイネーブル制御部２８Ａ’側にデータ「０」を書き込む（ステップＳ９）。以降の処理は第１実施例と同様である。即ち、結果として、電圧の低下が検出されると、第１実施例と略同様に、周辺回路１４は動作を停止し、周辺回路１５はそのまま動作し続けることになる（但し、ＰＷＭ搬送波周波数は分周されない）。
【００３１】
以上のように第２実施例によれば、電圧低下検出回路１７が電圧の低下を検出すると、ＣＰＵ１２に供給されるクロック信号の周波数が４分周され、ＣＰＵ１２はサブルーチンプログラム１３ｂを実行する。すると、当該プログラム１３ｂに基づき、ＣＰＵ１２は、周辺回路１４に供給されているクロック信号を選択的に停止させる。従って、電源電圧の低下時に、周辺回路１４，１５の何れを動作させ、何れを停止させるかは、サブルーチンプログラム１３ｂの記述に基づいて決定することができる。
【００３２】
本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形が可能である。
ステップＳ２やＳ８の処理を、ソフトウエアによって実行しても良い。
第１実施例のステップＳ２において、ハードウエアでステップＳ４，Ｓ５に相当する処理を実行させても良い。
第２実施例において、ステップＳ４を実行しても良い。
また、第２実施例において、ステップＳ８で周辺回路１４に対するクロック信号の供給を停止させて、ステップＳ９を削除しても良い。
周辺回路は３つ以上あっても良い。
電圧低下検出時にＣＰＵに供給するクロック信号は、周波数を２分周したり、８分周以上したりするものでも良い。
電源電圧レベルや電圧低下検出のしきい値レベル、また、クロック信号の周波数などは一例であり、個別の設計に応じて適宜設定すれば良い。
車両制御用のマイコンに限ることなく、一般的な用途のマイコンに広く適用することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明を例えば車両用ＥＣＵに適用した場合の第１実施例であり、マイクロコンピュータ（ＥＣＵ）の電気的構成を示す機能ブロック図
【図２】クロック分周回路の電気的構成を示す図
【図３】周辺クロック制御回路の詳細構成を示す図
【図４】電源電圧Ｖｃｃの低下が検出された場合における、主として周辺クロック制御回路の動作を示すタイミングチャート
【図５】電源電圧Ｖｃｃの低下が検出された場合の処理の流れを示すフローチャート
【図６】本発明の第２実施例を示す図５相当図
【図７】図３相当図
【図８】従来技術を示す図１相当図
【符号の説明】
【００３４】
図面中、１１はマイクロコンピュータ、１２はＣＰＵ、１３はＲＯＭ（プログラムメモリ）、１３ａ，１３ｂはサブルーチンプログラム、１４，１５は周辺回路、１６はクロック回路部（クロック制御回路）、１７は電圧低下検出回路、１８は割り込み制御回路、２１は電源線、２３はクロック分周回路、２４は周辺クロック制御回路、２５は４分周回路、２６はマルチプレクサ、４１はマイクロコンピュータ、４２は周辺クロック制御回路を示す。
【図１】
2006251886.tif 000003
【図２】
2006251886.tif 000004
【図３】
2006251886.tif 000005
【図４】
2006251886.tif 000006
【図５】
2006251886.tif 000007
【図６】
2006251886.tif 000008
【図７】
2006251886.tif 000009
【図８】
2006251886.tif 000010