(57)【要約】【課題】  外部に接続する発振子に応じて、マイクロコンピュータの発振安定待ち時間を短縮できるようにする。【解決手段】  外部発振子１５が接続された外部発振回路１１、自励発振回路１２、及び発振クロック監視回路１３を備え、発振クロック監視回路１３が、自励発振回路１２により生成されるクロック信号Ｓ１１を用いて、外部発振子１５の発振状態を監視し、その発振状態が安定したと判断した場合には、マイクロコンピュータの発振安定待ち時間を強制的に終了させる発振安定待ち時間終了信号Ｓ１３を出力する。【選択図】  図１
2005173927.tif 000002
【特許請求の範囲】
【請求項１】
外部発振子が接続され、第１のクロック信号を生成する外部発振回路と、
第２のクロック信号を生成する自励発振回路と、
上記第２のクロック信号を用いて上記外部発振子の発振状態を監視し、上記外部発振子の発振状態が安定したと判断した場合には発振安定待ち時間終了信号を出力する監視回路とを備えることを特徴とする半導体装置。
【請求項２】
上記外部発振子が発振動作を開始してから上記発振安定待ち時間終了信号を出力させるまでの時間を設定可能なレジスタをさらに備え、
上記監視回路は、上記外部発振子の発振状態が安定したと判断した場合には上記レジスタを最小時間に対応する値に設定することを特徴とする請求項１記載の半導体装置。
【請求項３】
上記監視回路は、上記外部発振子の発振状態を所定の時間間隔で監視することを特徴とする請求項１又は２に記載の半導体装置。
【請求項４】
上記発振安定待ち時間終了信号に応じて、上記自励発振回路の動作を停止させることを特徴とする請求項１〜３の何れか１項に記載の半導体装置。
【請求項５】
上記発振安定待ち時間終了信号に応じて、上記監視回路における上記外部発振子の発振状態の監視動作を停止させることを特徴とする請求項１〜４の何れか１項に記載の半導体装置。
【請求項６】
上記発振安定待ち時間終了信号に応じて、上記外部発振回路により生成される第１のクロック信号又は上記自励発振回路により生成される第２のクロック信号の何れか一方を出力するクロック制御回路とをさらに備えることを特徴とする請求項１〜５の何れか１項に記載の半導体装置。
【請求項７】
上記監視回路は、上記外部発振回路により生成される第１のクロック信号を計数する第１のカウンタと、
上記自励発振回路により生成される第２のクロック信号を計数する第２のカウンタと、
上記第１及び第２のカウンタの各計数値に基づいて、上記外部発振子の発振状態が安定したか否かを判定する判定回路とを備えることを特徴とする請求項１〜６の何れか１項に記載の半導体装置。
【請求項８】
上記第１のカウンタは、上記第２のカウンタの計数値に基づく外部発振検出期間の開始時に初期化され、
上記判定回路は、上記外部発振検出期間中に上記第１のカウンタの計数値が所定の値に達した場合には、上記外部発振子の発振状態が安定したと判定することを特徴とする請求項７記載の半導体装置。
【請求項９】
上記監視回路は、上記外部発振回路により生成される第１のクロック信号を計数する第１のカウンタと、
上記自励発振回路により生成される第２のクロック信号を計数する第２のカウンタと、
上記外部発振回路により生成される第１のクロック信号を計数し、互いに異なる計数値に応じた複数の信号を出力する第３のカウンタと、
上記レジスタの値に応じて、上記第３のカウンタから出力される複数の信号の中から１つの信号を選択し出力する第１のセレクタとを備えることを特徴とする請求項２記載の半導体装置。
【請求項１０】
上記レジスタは、任意の値を設定可能な第１のレジスタと、上記最小時間に対応する値が設定された第２のレジスタとからなり、
上記監視回路は、上記第１及び第２のカウンタの各計数値に基づいて、上記外部発振子の発振状態が安定したか否かを判定する判定回路と、
上記判定回路の判定結果に基づいて、上記第１のレジスタ又は上記第２のレジスタの何れか一方を選択し、レジスタの値を上記第１のセレクタに出力する第２のセレクタとをさらに備えることを特徴とする請求項９記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体装置に関し、特に、マイクロコンピュータ等の半導体装置における発振制御回路に用いて好適なものである。
【背景技術】
【０００２】
マイクロコンピュータ（以下、「マイコン」とも称す。）においては、例えば電源が投入されてから発振安定待ち時間が経過した後、内部に有するＣＰＵ等の動作を開始させる（起動させる）。マイコンの発振安定待ち時間は、発振回路が発振動作を開始しても入力されるクロック信号の発振が安定するまで、すなわち発振動作開始直後のクロック信号が不安定な期間中にはＣＰＵ等を動作（起動）させないようにするために設けられている。
【０００３】
このマイコンの発振安定待ち時間は、外部に接続する発振子の発振安定時間（発振状態が安定するまでの時間）の規格を満足する必要があるが、発振子の発振安定時間は、発振子毎に製品仕様として決まっている。そのため、マイコンの発振安定待ち時間は、特性が異なる様々な発振子に対応可能なように、汎用的に使用できるような十分なマージンを持たせた時間が予め設定されている。したがって、従来のマイコンは、発振安定時間が短い発振子を使用したとしても、発振安定時間が長い発振子を用いた場合と同じ発振安定待ち時間だけＣＰＵ等の動作を開始させることができない。
【０００４】
しかしながら、近年、ネットワークに接続されるような通信機能を有するマイコンにおいて、ストップモード、スリープモード等の低消費電力状態で待機しておき、データ受信を契機に、その状態から通常の動作状態に復帰し、受信したデータを有効にさせるなどの要求がある。しかしながら、マイコンの発振安定待ち時間が長いと、データを正確に受信することができず、いわゆるフレームロストすることがあり、発振安定待ち時間の短縮が強く要求されている。
【０００５】
この要求に応じてマイコンの発振安定待ち時間を改善する技術として、自励発振回路と、外部発振子が接続された外部発振回路とを備え、発振起動時には自励発振回路の出力を外部発振子に供給して発振を加速させることで、発振安定時間を短縮させるものがあった（例えば、特許文献１参照。）。また、発振安定時間が異なる２つの発振回路を備えるマイコンにおいて、発振回路の出力信号を互いに計数して発振安定時間が経過したか否かを判定することで、発振安定時間が経過したものから対応する各リソースを順次動作状態にするものがあった（例えば、特許文献２参照。）。
【０００６】
【特許文献１】特開平９−９３０４０号公報
【特許文献２】特開平６−１３８９７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来の技術は、何れも発振回路の発振安定時間の短縮を図ったものであり、マイコンの発振安定待ち時間そのものを短縮することはできなかった。すなわち、発振回路の発振安定時間を短縮しても、予め設定されているマイコンの発振安定待ち時間が経過するまではＣＰＵ等の動作を開始させることができない、言い換えれば発振回路の発振状態の安定後、直ちにＣＰＵ等の動作を開始させることができなかった。
【０００８】
本発明は、このような問題に鑑みてなされたものであり、外部に接続する発振子に応じて、マイクロコンピュータの発振安定待ち時間を短縮できるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の半導体装置は、外部発振子が接続された外部発振回路、自励発振回路、及び監視回路を備える。監視回路は、自励発振回路により生成されるクロック信号を用いて、外部発振子の発振状態を監視し、当該外部発振子の発振状態が安定したと判断すると発振安定待ち時間終了信号を出力する。
したがって、外部発振子の発振状態が安定すると直ちに出力される発振安定待ち時間終了信号により、マイクロコンピュータにおけるリセット状態を解除、すなわち発振安定待ち時間を強制的に終了して、ＣＰＵ等の動作を開始させることができる。
【００１０】
また、自励発振回路の動作、及び監視回路での外部発振子の発振状態の監視動作の少なくとも一方を、発振安定待ち時間終了信号に応じて停止させるようにしても良い。このようにした場合には、外部発振子の発振状態が安定した時点から、当該発振状態の監視に係る回路の消費電流を遮断して消費電力を低減することができる。
【発明の効果】
【００１１】
本発明によれば、外部発振子の発振状態を監視し、当該外部発振子の発振状態が安定したと判断した場合には発振安定待ち時間終了信号を出力することで、当該発振安定待ち時間終了信号により発振安定待ち時間を強制的に終了させることができ、接続する外部発振子に応じて、マイクロコンピュータの発振安定待ち時間を短縮することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態を図面に基づいて説明する。
（第１の実施形態）
図１は、本発明の第１の実施形態による半導体装置を適用したマイクロコンピュータ（マイコン）における発振制御回路１０の構成例を示すブロック図である。
発振制御回路１０は、外部発振回路１１、自励発振回路１２、発振クロック監視回路１３及びクロック制御回路１４を有する。この発振制御回路１０は、マイコン内部、すなわちマイコンと同一チップ内に形成される。
【００１３】
外部発振回路１１は、外部発振子１５が接続された発振回路であり、クロック信号Ｓ１１を生成する。外部発振子１５は、発振制御回路１０が形成されるマイコンの外部に設けられた水晶発振子である。なお、外部発振子１５は、水晶発振子に限らず、一般的に用いられる外付けの圧電振動子、発振回路等を任意に適用可能である。
また、自励発振回路１２は、出力の一部を入力に帰還して発振する発振回路であり、クロック信号Ｓ１２を生成する。自励発振回路１２は、例えばＣＲ発振回路や、リングオシレータで構成される。
【００１４】
発振クロック監視回路１３は、外部発振回路１１により生成されるクロック信号Ｓ１１及び自励発振回路１２により生成されるクロック信号Ｓ１２が入力され、クロック信号Ｓ１１、Ｓ１２に基づいて外部発振回路１１の発振状態を監視する。さらに、発振クロック監視回路１３は、外部発振回路１１の発振状態に応じた制御信号（発振安定待ち時間終了信号）Ｓ１３を出力する。なお、発振クロック監視回路１３の詳細については後述する。
【００１５】
クロック制御回路１４は、例えばセレクタ回路で構成され、外部発振回路１１により生成されるクロック信号Ｓ１１、自励発振回路１２により生成されるクロック信号Ｓ１２、発振クロック監視回路１３より出力される制御信号Ｓ１３が入力される。クロック制御回路１４は、ＣＰＵ等の機能部に供給するクロック信号Ｓ１４として、制御信号Ｓ１３に基づいてクロック信号Ｓ１１又はクロック信号Ｓ１２の何れか一方を出力する。
【００１６】
図１に示した発振制御回路１０を含むマイコンにおいて、例えば電源供給が開始され、外部発振回路１１及び自励発振回路１２による発振動作が開始されると、発振回路１１、１２によりそれぞれ生成されたクロック信号Ｓ１１、Ｓ１２の双方は、発振クロック監視回路１３とクロック制御回路１４とに入力される。
発振クロック監視回路１３は、入力されたクロック信号Ｓ１２を使用して外部発振回路１１の発振状態（入力されたクロック信号Ｓ１１の状態）を監視し、外部発振回路１１の発振状態が安定したか否かを判断する。
【００１７】
この判断の結果、発振クロック監視回路１３は、外部発振回路１１の発振状態が未だ安定していないと判断した場合には、制御信号Ｓ１３を出力しない（制御信号Ｓ１３をインアクティブに保持する。）。この制御信号Ｓ１３が出力されていない場合には、クロック制御回路１４は、入力されるクロック信号Ｓ１１、Ｓ１２のうち、自励発振回路１２より生成されたクロック信号Ｓ１２をＣＰＵ等の機能部に供給するクロック信号Ｓ１４として出力する。
【００１８】
一方、発振クロック監視回路１３は、外部発振回路１１の発振状態が安定したと判断した場合には、制御信号Ｓ１３を出力する（制御信号Ｓ１３をアクティブにする。）。この発振クロック監視回路１３からの制御信号Ｓ１３を受けたクロック制御回路１４は、出力するクロック信号を切り替え、クロック信号Ｓ１１、Ｓ１２のうち、外部発振回路１１により生成されたクロック信号Ｓ１１をクロック信号Ｓ１４として出力する。また、発振クロック監視回路１３から出力された制御信号Ｓ１３により、マイコンにおける発振安定待ち時間を直ちに終了させ、ＣＰＵの処理動作を開始可能にする。
【００１９】
上述のようにして、発振制御回路１０は、外部発振回路１１の発振状態を発振クロック監視回路１３にて監視することにより、外部発振回路１１による発振が開始されても、その発振状態が安定するまでの期間（生成されるクロック信号Ｓ１１が不安定な状態の期間）は、自励発振回路１２により生成されるクロック信号Ｓ１２をクロック信号Ｓ１４として出力する。
その後、外部発振回路１１の発振状態が安定したと判断すると、外部発振回路１１により生成されるクロック信号Ｓ１１をクロック信号Ｓ１４として出力するとともに、制御信号（発振安定待ち時間終了信号）Ｓ１３を出力して、マイコンにおける発振安定待ち時間を直ちに終了させ（リセット状態を解除し）、ＣＰＵの処理動作を可能にする。
【００２０】
図２は、図１に示した発振クロック監視回路１３の構成例を示すブロック図である。
図２に示すように、発振クロック監視回路１３は、３つのエッジ検出回路２１、２８、３０、３つのカウンタ２２、２５、２９、２つのインバータ２３、２６、否定論理和回路（ＮＯＲ回路）２４、及び否定論理積回路（ＮＡＮＤ回路）２７を有する。
【００２１】
第１のエッジ検出回路２１は、外部発振回路１１により生成されるクロック信号Ｓ１１が入力される。第１のエッジ検出回路２１は、クロック信号Ｓ１１におけるエッジ検出を行い、エッジを検出するたびに、例えばパルス状の検出信号Ｓ２１を出力する。
【００２２】
第１のカウンタ２２は、第１のエッジ検出回路２１から出力される検出信号Ｓ２１をカウント（計数）する３ビットカウンタであり、カウント値のオーバーフローが発生した際、オーバーフロー信号Ｓ２２を出力する。インバータ２３は、第１のカウンタ２２から出力されるオーバーフロー信号Ｓ２２の論理値を反転してＮＯＲ回路２４に出力する。
【００２３】
第２のカウンタ２５は、自励発振回路１２により生成されるクロック信号Ｓ１２が入力され、クロック信号Ｓ１２の周期数をカウントする２ビットカウンタである。なお、第２のカウンタ２５は、クロック信号Ｓ１２における１０周期毎にカウント値が１ずつ加算（インクリメント）される。また、第２のカウンタ２５は、カウント値が“１０”から“１１”に変化する際に制御信号Ｓ２４を出力し、カウント値が“１１”から“００”に変化する、つまりオーバーフローが発生した際に制御信号Ｓ２５を出力する。
【００２４】
インバータ２６は、第２のカウンタ２５から出力される制御信号Ｓ２５の論理値を反転してＮＡＮＤ回路２７に出力する。ＮＡＮＤ回路２７は、第２のカウンタ２５から出力される制御信号Ｓ２４とインバータ２６の出力との否定論理積演算を行い、演算結果を外部発振検出期間信号Ｓ２６として出力する。ここで、外部発振検出期間信号Ｓ２６は、外部発振回路１１の発振状態が安定したか否かを判断するための外部発振検出期間を示す信号であり、外部発振検出期間中においてのみ当該信号Ｓ２６はロウレベル（“Ｌ”）である。すなわち、インバータ２６及びＮＡＮＤ回路２７により、第２のカウンタ２５から出力される制御信号Ｓ２４、Ｓ２５に基づいて外部発振検出期間が規定される。
【００２５】
ＮＯＲ回路２４は、判定回路を構成し、インバータ２３の出力とＮＡＮＤ回路２７から出力される外部発振検出期間信号Ｓ２６との否定論理和演算を行い、演算結果を第３のクリア信号ＣＬＲ３として出力する。
上述したように外部発振検出期間中においては、外部発振検出期間信号Ｓ２６は“Ｌ”であり、この期間中はインバータ２３の出力を反転した信号がＮＯＲ回路２４から出力される。一方、外部発振検出期間以外は、外部発振検出期間信号Ｓ２６はハイレベル（“Ｈ”）であり、インバータ２３の出力に関わらず、ＮＯＲ回路２４の出力は“Ｌ”となる。
【００２６】
第２のエッジ検出回路２８は、外部から入力される第２のクリア信号ＣＬＲ２、及び第２のカウンタ２５から出力される制御信号Ｓ２４が入力される。第２のエッジ検出回路２８は、クリア信号ＣＬＲ２及び制御信号Ｓ２４のエッジを検出し、検出結果を第１のクリア信号ＣＬＲ１として出力する。具体的には、第２のエッジ検出回路２８は、クリア信号ＣＬＲ２及び制御信号Ｓ２４の少なくとも一方でエッジを検出すると第１のクリア信号ＣＬＲ１を出力する。
【００２７】
第３のカウンタ２９は、外部発振回路１１により生成されるクロック信号Ｓ１１が入力され、クロック信号Ｓ１１の周期数をカウントする１６ビットカウンタである。また、第３のカウンタ２９は、カウント値が“０”に変化した際に制御信号Ｓ２７を出力する。第３のエッジ検出回路３０は、第３のカウンタ２９から出力される制御信号Ｓ２７を検出し、検出結果を制御信号（発振安定待ち時間終了信号）Ｓ１３として出力する。
【００２８】
ここで、第１、第２及び第３のカウンタ２２、２５、２９には、それぞれ第１、第２及び第３のクリア信号ＣＬＲ１、ＣＬＲ２、ＣＬＲ３が入力されており、各カウンタ２２、２５、２９は、当該クリア信号ＣＬＲ１、ＣＬＲ２、ＣＬＲ３に応じてカウンタ値を“０”にリセットする。
【００２９】
次に、発振クロック監視回路１３の動作について説明する。
なお、第１、第２及び第３のカウンタ２２、２５、２９におけるカウント値の初期値は“０”であり、各カウンタ２２、２５、２９から出力される信号Ｓ２２、Ｓ２４、Ｓ２５、Ｓ２７は出力されていない（不活性状態である）ものとする。このとき、信号Ｓ２２、Ｓ２４、Ｓ２５は“Ｌ”であり、信号Ｓ２７は“Ｈ”である。
【００３０】
まず、電源投入やストップモードからの復帰等により電源の供給が開始されることで、外部発振回路１１及び自励発振回路１２は、発振動作をそれぞれ開始する。
外部発振回路１１により生成されたクロック信号Ｓ１１は、第１のエッジ検出回路２１及び第３のカウンタ２９に入力される。
この発振動作開始直後における外部発振回路１１の発振状態は不安定であるために、第１のエッジ検出回路２１においてクロック信号Ｓ１１のエッジは検出されず、第１のカウンタ２２のカウント値は変化しない。これにより、第１のカウンタ２２から出力されるオーバーフロー信号Ｓ２２は“Ｌ”に保持され、ＮＯＲ回路２４の出力である第３のクリア信号ＣＬＲ３は、外部発振検出期間信号Ｓ２６に関わらず“Ｌ”である。したがって、第３のカウンタ２９は、外部発振回路１１により生成されたクロック信号Ｓ１１の周期数をカウントし、１周期毎にカウント値を１ずつインクリメントする。
【００３１】
一方、自励発振回路１２により生成されたクロック信号Ｓ１２は、第２のカウンタ２５に入力され、第２のカウンタ２５は、クロック信号Ｓ１２の周期数をカウントする。しかし、上述したように発振動作開始直後において、第３のクリア信号ＣＬＲ３は、外部発振検出期間信号Ｓ２６に関わらず“Ｌ”であるので、第２のカウンタ２５の動作は、発振クロック監視回路１３全体としての動作には何ら影響を与えない。
【００３２】
したがって、外部発振回路１１及び自励発振回路１２が発振動作を開始してから所定の期間（外部発振回路１１の発振状態が安定していない、かつ第３のカウンタ２９にてオーバーフローが発生していない期間）は、第３のカウンタ２９から出力される制御信号Ｓ２７は変化せず、制御信号（発振安定待ち時間終了信号）Ｓ１３は出力されない。
【００３３】
次に、外部発振回路１１及び自励発振回路１２が発振動作を開始してから上記所定期間後の発振クロック監視回路１３の動作を、図３に基づいて説明する。
【００３４】
外部発振回路１１の発振状態が安定してくると、第１のエッジ検出回路２１において、外部発振回路１１により生成されたクロック信号Ｓ１１のエッジが随時検出され、検出信号Ｓ２１が出力される。これにより、検出信号Ｓ２１をカウントする第１のカウンタ２２のカウント値が、クロック信号Ｓ１１の１周期毎に１ずつインクリメントされる。
【００３５】
なお、第３のカウンタ２９は、クロック信号Ｓ１１の周期数をカウントし続けており、そのカウント値がクロック信号Ｓ１１の１周期毎に１ずつインクリメントされている。
また、第２のカウンタ２５においても、自励発振回路１２により生成されたクロック信号Ｓ１２の周期数をカウントし続けており、そのカウント値がクロック信号Ｓ１２の１周期毎に１ずつインクリメントされている。
【００３６】
ここで、第２のカウンタ２５は、そのカウント値がオーバーフローした場合に、例えば制御信号Ｓ２５を用いたりして任意に第２のクリア信号ＣＬＲ２が入力され初期化されている。また、第２のクリア信号ＣＬＲ２が出力されるのに伴い、そのエッジを検出した第２のエッジ検出回路２８は第１のクリア信号ＣＬＲ１を出力し、第１のカウンタ２２も初期化されている。
【００３７】
図３に示すように第２のカウンタ２５は、カウント値が“１０”から“１１”に変化する時刻Ｔ１において、制御信号Ｓ２４を“Ｌ”から“Ｈ”に変化させる。
このとき、第２のカウンタ２５から出力される制御信号Ｓ２５は“Ｌ”であるので、ＮＯＲ回路２７の出力である外部発振検出期間信号Ｓ２６は“Ｈ”から“Ｌ”に変化する。つまり、外部発振検出期間ＤＴが開始する。
【００３８】
また、第２のエッジ検出回路２８は、制御信号Ｓ２４における“Ｌ”から“Ｈ”への変化を検出して、第１のクリア信号ＣＬＲ１を第１のカウンタ２２に出力する。これにより、第１のカウンタ２２のカウント値が“０”に初期化される。
その後、第１、第２及び第３のカウンタ２２、２５、２９は、それぞれ検出信号Ｓ２１（クロック信号Ｓ１１）、クロック信号Ｓ１２、クロック信号Ｓ１１をカウントする。
【００３９】
そして、第１のカウンタ２２は、カウント値のオーバーフローが発生した時刻Ｔ２において、オーバーフロー信号Ｓ２２を“Ｌ”から“Ｈ”に変化させる。これにより、インバータ２３の出力及び外部発振検出期間信号Ｓ２６がともに“Ｌ”であるので、ＮＯＲ回路２４から出力される第３のクリア信号ＣＬＲ３が“Ｌ”から“Ｈ”に変化する。
【００４０】
第３のクリア信号ＣＬＲが“Ｌ”から“Ｈ”に変化すると、第３のカウンタ２９は、カウント値を“０”に初期化し、制御信号Ｓ２７を“Ｈ”から“Ｌ”に変化させる。第３のエッジ検出回路３０は、制御信号Ｓ２７における“Ｈ”から“Ｌ”への変化を検出して、制御信号（発振安定待ち時間終了信号）Ｓ１３を出力（アクティブに）する。
【００４１】
第２のカウンタ２５は、カウント値が“１１”から“００”に変化する時刻Ｔ３において、制御信号Ｓ２５を“Ｌ”から“Ｈ”に変化させる。これにより、外部発振検出期間信号Ｓ２６は“Ｌ”から“Ｈ”に変化する。つまり、外部発振検出期間ＤＴが終了する。
【００４２】
なお、外部発振検出期間ＤＴ中に、第１のカウンタ２２にてカウント値のオーバーフローが発生しない、すなわちオーバーフロー信号Ｓ２２が“Ｌ”を保持した場合には、外部発振回路１１の発振状態が未だ安定していないと判断し、上述したようにして第１及び第２のカウンタ２２、２５をリセットする。そして、第２のカウンタ２５のカウント値が再び“１１”となる外部発振検出期間ＤＴにおいて、第１のカウンタ２２が出力するオーバーフロー信号Ｓ２２に基づいて、外部発振回路１１の発振状態が安定したか否かの判断が行われる。つまり、発振クロック監視回路１３は、第２のカウンタ２５のカウント値が“１１”となる所定期間毎に外部発振回路１１の発振状態が安定したか否かを判断する。
【００４３】
また、外部発振回路１１の発振状態が安定したと判断されることなく、第３のカウンタ２９においてカウント値のオーバーフローが発生した場合には、制御信号（発振安定待ち時間終了信号）Ｓ１３を出力（アクティブに）する。
【００４４】
以上、説明したように第１の実施形態によれば、発振クロック監視回路１３は、自励発振回路１２により生成されるクロック信号Ｓ１２を用いて、外部発振回路１１（外部発振子１５）の発振状態を監視し、外部発振回路１１の発振状態が安定したと判断したら制御信号（発振安定待ち時間終了信号）Ｓ１３を出力する。
具体的には、発振クロック監視回路１３内にて、第１のカウンタ２２は、第１のエッジ検出回路２１を介して、外部発振回路１１により生成されたクロック信号Ｓ１１をカウントし、第２のカウンタ２５は、自励発振回路１２により生成されたクロック信号Ｓ１２をカウントする。そして、第２のカウンタ２５のカウント値に基づいて規定される外部発振検出期間ＤＴ中に、第１のカウンタ２２からオーバーフロー信号Ｓ２２が出力されたか、すなわちオーバーフローが発生したか否かを判断する。この判断の結果、第１のカウンタ２２にてオーバーフローが発生したときには、外部発振回路１１の発振状態が安定したと判断し、第３のカウンタ２９をリセットすることにより、制御信号（発振安定待ち時間終了信号）Ｓ１３を出力する。
これにより、外部発振回路１１の発振状態が安定すると直ちに制御信号（発振安定待ち時間終了信号）Ｓ１３を出力し、制御信号Ｓ１３によりマイクロコンピュータにおけるリセット状態を解除、すなわち発振安定待ち時間を強制的に終了させることができる。したがって、外部発振回路１１（外部発振子１５）に応じて、マイクロコンピュータの発振安定待ち時間を短縮することができ、従来のように予め設定される発振安定待ち時間が経過するのを待つことなくＣＰＵ等の動作を開始させることができる。
【００４５】
なお、自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、２９とが、入力される信号に応じて動作を停止させる機能をそれぞれ具備するようにして、図４に示すように制御信号（発振安定待ち時間終了信号）Ｓ１３をストップ信号ＳＴＯＰとして自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、２９とにそれぞれ供給するように構成しても良い。このように構成し、ストップ信号ＳＴＯＰがアクティブである場合には、自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、２９との動作を停止させることにより、外部発振回路１１の発振状態が安定した後は、自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、２９との消費電流を遮断して（電力消費を低減して）、マイコンの消費電力を低減することができる。
【００４６】
なお、図４においては、自励発振回路１２、第１、第２及び第３のカウンタ２２、２５、２９のすべてにストップ信号ＳＴＯＰを供給して動作を停止させるようにしているが、動作を停止させる機能部は任意であり、例えば自励発振回路１２の動作のみを停止させるようにしても良いし、例えば第１、第２及び第３のカウンタ２２、２５、２９の動作のみを停止させるようにしても良い。
【００４７】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
本発明の第２の実施形態における発振制御回路の全体構成は、図１に示した発振制御回路１０と同様であるので説明を省略する。
図５は、本発明の第２の実施形態における発振クロック監視回路１３’の構成例を示すブロック図である。この図５において、図２に示したブロック等と同一の機能を有するブロック等には同一の符号を付し、重複する説明は省略する。
【００４８】
第２の実施形態における発振クロック監視回路１３’は、図５に示すように３つのエッジ検出回路２１、２８、３０、３つのカウンタ２２、２５、２９、２つのインバータ２３、２６、否定論理和回路（ＮＯＲ回路）２４、及び否定論理積回路（ＮＡＮＤ回路）２７に加え、フリップフロップ５２、２つのセレクタ５３、５６、及び２つのレジスタ５４、５５を有する。
【００４９】
第３のカウンタ５１は、図２に示した第３のカウンタ２９と同様に、外部発振回路１１により生成されるクロック信号Ｓ１１が入力され、クロック信号Ｓ１１の周期数をカウントする１６ビットカウンタである。第３のカウンタ５１は、カウント値に応じて制御信号Ｓ５１〜Ｓ５４を出力する。各々の制御信号Ｓ５１〜Ｓ５４は、第３のカウンタ５１が対応するカウント値をカウントしたときに出力される。ここで、制御信号Ｓ５１〜Ｓ５４は、互いに異なるカウント値に応じた信号であり、制御信号Ｓ５１、Ｓ５２、Ｓ５３、Ｓ５４の順に対応するカウント値が大きくなる、つまりクロック信号Ｓ１１のカウント開始から制御信号が出力されるまでの時間が長くなる。
【００５０】
フリップフロップ５２は、外部から入力される第２のクリア信号ＣＬＲ２及びＮＯＲ回路２４から出力される第３のクリア信号ＣＬＲ３が入力される。フリップフロップ回路５２は、第３のクリア信号ＣＬＲ３が“Ｌ”から“Ｈ”に変化すると、選択信号Ｓ５５を出力する。
【００５１】
第２のセレクタ５３は、第１及び第２のレジスタ５４、５５が接続されているとともに、フリップフロップ５２から出力される選択信号Ｓ５５が入力される。第２のセレクタ５３は、選択信号Ｓ５５に応じて第１のレジスタ５４又は第２のレジスタ５５の何れか一方を選択し、選択したレジスタ値を選択信号Ｓ５６として出力する。
【００５２】
ここで、第１及び第２のレジスタ５４、５５は、それぞれ外部発振回路１１にて発振動作が開始されてから制御信号（発振安定待ち時間終了信号）Ｓ１３を出力するまでの時間を設定する、例えば２ビットのレジスタである。第１のレジスタ５４は、書き換え可能なレジスタであり、第２のレジスタ５５は、固定値（本実施形態においては“００”：第１のレジスタ５４に設定可能な値のうち、最小時間に対応する値）が設定されたレジスタである。
【００５３】
第１のセレクタ５６は、第３のカウンタ５１から出力される制御信号Ｓ５１〜Ｓ５４及び第２のセレクタ５３から出力される選択信号Ｓ５６が入力される。第１のセレクタ５６は、選択信号Ｓ５６として供給されるレジスタ値に応じて、制御信号Ｓ５１〜Ｓ５４を選択的に第３のエッジ検出回路３０に出力する。
具体的には、第１のセレクタ５６は、選択信号Ｓ５６として供給されるレジスタ値が“００”の場合には制御信号Ｓ５１を出力し、“０１”の場合には制御信号Ｓ５２を出力し、“１０”の場合には制御信号Ｓ５３を出力し、“１１”の場合には制御信号Ｓ５４を出力する。
【００５４】
次に、第２の実施形態における発振クロック監視回路１３’の動作について説明する。
まず、電源の供給が開始され、外部発振回路１１及び自励発振回路１２が発振動作を開始してから所定の期間においては、上述した第１の実施形態と同様に、第１のカウンタ２２から出力されるオーバーフロー信号Ｓ２２は“Ｌ”に保持され、ＮＯＲ回路２４の出力である第３のクリア信号ＣＬＲ３は、外部発振検出期間信号Ｓ２６に関わらず“Ｌ”である。
【００５５】
このとき、第２のセレクタ５３は、フリップフロップ５２からの選択信号Ｓ５５に基づいて、第１のレジスタ５４の値を選択信号Ｓ５６として出力する。選択信号Ｓ５６を受けた第１のセレクタ５６は、選択信号Ｓ５６に応じて、制御信号Ｓ５１〜Ｓ５４を選択的に出力する。しかしながら、制御信号Ｓ５１〜Ｓ５４は、発振動作を開始してから上記所定期間以上の時間が経過した後に出力される信号であり、制御信号（発振安定待ち時間終了信号）Ｓ１３は出力されない。
【００５６】
次に、外部発振回路１１及び自励発振回路１２が発振動作を開始してから上記所定期間が経過し、さらに外部発振検出期間ＤＴ中に第１のカウンタ２２にてカウント値のオーバーフローが発生した場合について説明する。
【００５７】
このとき、上述した第１の実施形態と同様にして、ＮＯＲ回路２４から出力される第３のクリア信号ＣＬＲ３が“Ｌ”から“Ｈ”に変化する。これにより、第３のカウンタ５１のカウント値が“０”にリセットされるとともに、フリップフロップ５２から選択信号Ｓ５５が出力される。
したがって、第２のセレクタ５３は、第２のレジスタ５５の値“００”を選択信号Ｓ５６として出力し、それを受けた第１のセレクタ５６は、対応するカウント値が最小、つまり出力されるまでの時間が最短の制御信号Ｓ５１を、第３のエッジ検出回路３０に出力するように切り替える。
【００５８】
そして、第３のカウンタ５１が、外部発振回路１１により生成されたクロック信号Ｓ１１をカウントし、カウント値が制御信号Ｓ５１に対応する値に達すると、アクティブな制御信号Ｓ５１が出力される。第３のカウンタ５１から出力された制御信号Ｓ５１は、第１のセレクタ５６を介して第３のエッジ検出回路３０に入力されており、第３のエッジ検出回路３０にて制御信号Ｓ５１のエッジが検出されることにより、制御信号（発振安定待ち時間終了信号）Ｓ１３が出力される。
【００５９】
なお、他の動作については、第３のカウンタ５１から出力される複数の制御信号Ｓ５１〜Ｓ５４のうち１つを選択して出力する点が異なるだけで、上述した第１の実施形態と動作原理は同様であるので説明を省略する。
【００６０】
以上、説明したように第２の実施形態によれば、第１及び第２のレジスタ５４、５５を設け、第１のレジスタ５４に設定する値に応じて、第３のカウンタ５１から出力される制御信号Ｓ５１〜Ｓ５４の何れか１つを選択することにより、外部発振回路１１にて発振動作が開始されてから制御信号（発振安定待ち時間終了信号）Ｓ１３を出力するまでの時間を選択することができる。
【００６１】
また、第１のレジスタ５４に設定した値に対応する時間が経過する前に、外部発振回路１１の発振状態が安定したと判断した場合には、最小時間に対応する値が設定された第２のレジスタ５５に基づいて、第３のカウンタ５１から出力される制御信号Ｓ５１〜Ｓ５４のうち、最小時間に対応する制御信号Ｓ５１を選択する。これにより、外部発振回路１１（外部発振子１５）に応じて、マイクロコンピュータの発振安定待ち時間を短縮することができ、ＣＰＵ等の動作を速やかに開始させることができる。
【００６２】
なお、図５に示した第２の実施形態における発振クロック監視回路１３’においても、自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、５１とが、入力される信号に応じて動作を停止させる機能をそれぞれ具備し、上記図４に示したのと同様にして、制御信号Ｓ１３をストップ信号ＳＴＯＰとして自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、５１とにそれぞれ供給するようにしても良い。そして、ストップ信号ＳＴＯＰがアクティブである場合には、自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、５１との動作を停止させることにより、外部発振回路１１の発振状態が安定した後は、自励発振回路１２と、第１、第２及び第３のカウンタ２２、２５、５１との消費電流を遮断して、マイコンの消費電力を低減することができる。
【００６３】
また、上述した第１及び第２の実施形態においては、外部発振検出期間ＤＴ中に、第１のカウンタ２２にてカウント値のオーバーフローが発生するか否かに基づいて、外部発振回路１１の発振状態が安定したか否かを判断している。しかしながら、本発明はこれに限定されず、例えば、第１のカウンタ２２のカウント値が所定の値に達したときに、第１のカウンタ２２からインバータ２３に対して信号を出力するようにして、外部発振検出期間ＤＴ中に、第１のカウンタ２２のカウント値が所定の値に達したか否かに基づいて、外部発振回路１１の発振状態が安定したか否かを判断するようにしても良い。
【００６４】
また、上述した第１及び第２の実施形態に示した第１、第２及び第３のカウンタ２２、２５、２９（５１）のビット数は一例であり、これに限定されるものではない。
第１、第２及び第３のカウンタ２２、２５、２９（５１）のビット数は任意であり、少なくとも下記に示す（ａ）及び（ｂ）の条件さえ満足すれば良い。
（ａ）外部発振回路１１の発振状態が安定しているとき、外部発振検出期間ＤＴ中に第１のカウンタ２２からの出力信号に基づいて第３のクリア信号ＣＬＲ３を出力する（“Ｌ”から“Ｈ”に変化させる）ことが可能、
（ｂ）外部発振回路１１が発振動作を開始してから１回目の外部発振検出期間ＤＴが終了するまでの時間に第３のカウンタ２９（５１）の信号に基づいて制御信号（発振安定待ち時間終了信号）Ｓ１３が出力されない
例えば、第１のカウンタ２２を２ビットカウンタで構成し、オーバーフロー信号をインバータ２３に出力するようにするとともに、第２のカウンタ２５を３ビットカウンタで構成し、クロック信号Ｓ１２の１周期毎にカウンタ値をインクリメントして３ビット目が“１”（カウント値８〜１５）のときに外部発振検出期間信号Ｓ２６を“Ｌ”にするように構成しても、上述した実施形態と同様の効果を得ることができる。
【００６５】
また、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
【００６６】
（付記１）外部発振子が接続され、第１のクロック信号を生成する外部発振回路と、
第２のクロック信号を生成する自励発振回路と、
上記第２のクロック信号を用いて上記外部発振子の発振状態を監視し、上記外部発振子の発振状態が安定したと判断した場合には発振安定待ち時間終了信号を出力する監視回路とを備えることを特徴とする半導体装置。
（付記２）上記外部発振子が発振動作を開始してから上記発振安定待ち時間終了信号を出力させるまでの時間を設定可能なレジスタをさらに備え、
上記監視回路は、上記外部発振子の発振状態が安定したと判断した場合には上記レジスタを最小時間に対応する値に設定することを特徴とする付記１記載の半導体装置。
（付記３）上記監視回路は、上記外部発振子の発振状態を所定の時間間隔で監視することを特徴とする付記１記載の半導体装置。
（付記４）上記発振安定待ち時間終了信号に応じて、上記自励発振回路の動作を停止させることを特徴とする付記１記載の半導体装置。
（付記５）上記発振安定待ち時間終了信号に応じて、上記監視回路における上記外部発振子の発振状態の監視動作を停止させることを特徴とする付記１記載の半導体装置。
（付記６）上記発振安定待ち時間終了信号に応じて、上記外部発振回路により生成される第１のクロック信号又は上記自励発振回路により生成される第２のクロック信号の何れか一方を出力するクロック制御回路とをさらに備えることを特徴とする付記１記載の半導体装置。
（付記７）上記監視回路は、上記外部発振回路により生成される第１のクロック信号を計数する第１のカウンタと、
上記自励発振回路により生成される第２のクロック信号を計数する第２のカウンタと、
上記第１及び第２のカウンタの各計数値に基づいて、上記外部発振子の発振状態が安定したか否かを判定する判定回路とを備えることを特徴とする付記１記載の半導体装置。
（付記８）上記第１のカウンタは、上記第２のカウンタの計数値に基づく外部発振検出期間の開始時に初期化され、
上記判定回路は、上記外部発振検出期間中に上記第１のカウンタの計数値が所定の値に達した場合には、上記外部発振子の発振状態が安定したと判定することを特徴とする付記７記載の半導体装置。
（付記９）上記監視回路は、上記第２のカウンタの計数値に基づいて、上記外部発振検出期間を規定する検出期間規定回路をさらに備えることを特徴とする付記８記載の半導体装置。
（付記１０）上記判定回路は、上記第２のカウンタの計数値に基づく外部発振検出期間中に、上記第１のカウンタにて計数値のオーバーフローが発生した場合には、上記外部発振子の発振状態が安定したと判定することを特徴とする付記７記載の半導体装置。
（付記１１）上記判定回路は、上記外部発振回路により生成される第１のクロック信号を計数する第３のカウンタをさらに備え、
上記第３のカウンタが上記第１及び第２のカウンタの各計数値に基づいて初期化された場合、あるいは上記第３のカウンタにて計数値のオーバーフローが発生した場合には、上記外部発振子の発振状態が安定したと判定することを特徴とする付記７記載の半導体装置。
（付記１２）上記監視回路は、上記外部発振回路により生成される第１のクロック信号のエッジを検出し、検出結果に応じた検出信号を出力するエッジ検出回路をさらに備え、
上記第１のカウンタは、上記エッジ検出回路から出力される検出信号を計数することを特徴とする付記７記載の半導体装置。
（付記１３）上記発振安定待ち時間終了信号が上記各カウンタに供給され、
上記各カウンタは、上記発振安定待ち時間終了信号に応じて計数動作を停止させることを特徴とする付記７記載の半導体装置。
（付記１４）上記監視回路は、上記外部発振回路により生成される第１のクロック信号を計数する第１のカウンタと、
上記自励発振回路により生成される第２のクロック信号を計数する第２のカウンタと、
上記外部発振回路により生成される第１のクロック信号を計数し、互いに異なる計数値に応じた複数の信号を出力する第３のカウンタと、
上記レジスタの値に応じて、上記第３のカウンタから出力される複数の信号の中から１つの信号を選択し出力する第１のセレクタとを備えることを特徴とする付記２記載の半導体装置。
（付記１５）上記レジスタは、任意の値を設定可能な第１のレジスタと、上記最小時間に対応する値が設定された第２のレジスタとからなり、
上記監視回路は、上記第１及び第２のカウンタの各計数値に基づいて、上記外部発振子の発振状態が安定したか否かを判定する判定回路と、
上記判定回路の判定結果に基づいて、上記第１のレジスタ又は上記第２のレジスタの何れか一方を選択し、レジスタの値を上記第１のセレクタに出力する第２のセレクタとをさらに備えることを特徴とする付記１４記載の半導体装置。
【図面の簡単な説明】
【００６７】
【図１】第１の実施形態による半導体装置の構成例を示すブロック図である。
【図２】第１の実施形態における発振クロック監視回路の構成例を示すブロック図である。
【図３】第１の実施形態における発振クロック監視回路の動作例を示すタイミングチャートである。
【図４】第１の実施形態における発振クロック監視回路の他の構成例を示すブロック図である。
【図５】第２の実施形態における発振クロック監視回路の構成例を示すブロック図である。
【符号の説明】
【００６８】
１０  発振制御回路
１１  外部発振回路
１２  自励発振回路
１３  発振クロック監視回路
１４  クロック制御回路
１５  外部発振子
Ｓ１３  制御信号（発振安定待ち時間終了信号）
【図１】
2005173927.tif 000003
【図２】
2005173927.tif 000004
【図３】
2005173927.tif 000005
【図４】
2005173927.tif 000006
【図５】
2005173927.tif 000007