(57)【要約】【課題】半導体集積回路に内蔵されるリングオシレータの発振周波数を外部発振子を必要とせずに自動的に補正できるようにする。【解決手段】半導体集積回路に内蔵されるリングオシレータ１の発振経路内に介在させた遅延回路であって遅延量が互いに異なる複数の遅延素子を並列に接続した遅延回路２と、リングオシレータ１の出力信号Ｐｒを受けて発振周波数の進遅を細分化した複数の電圧レベル値に変換する周波数検知回路３と、周波数検知回路３が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットを出力信号Ｐｒ毎にラッチするコンデンサ電圧ラッチ回路４と、コンデンサ電圧ラッチ回路４が出力する複数のデータビットの組み合わせに基づき遅延回路２内の１つの遅延素子をリングオシレータ１の構成素子として選択する選択回路５とを備えている。【選択図】　　　図１
2004056561.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路に内蔵されるリングオシレータにおいて、
前記リングオシレータの発振経路内に介在させた遅延回路であって遅延量が互いに異なる複数の遅延素子を並列に接続した遅延回路と、
前記リングオシレータの発振周波数の変動を検出する周波数検知回路であって、一方の信号電極が電源に接続され、駆動電極に前記リングオシレータの出力信号が印加されるトランジスタと、前記トランジスタの他方の信号電極と接地との間に設けられる抵抗素子と、前記抵抗素子に並列に接続されるコンデンサ回路であって直列に接続した複数のコンデンサからなり各接続端から電圧レベル値を示す分圧信号を出力するコンデンサ回路とを備える周波数検知回路と、
前記周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットを前記リングオシレータの出力信号毎にラッチするラッチ回路と、
前記ラッチ回路が出力する複数のデータビットの組み合わせに基づき前記遅延回路内の１つの遅延素子を前記リングオシレータの構成素子として選択する選択回路と、
を備えたことを特徴とするリングオシレータの発振周波数補正回路。
【請求項２】
半導体集積回路に内蔵されるリングオシレータにおいて、
前記リングオシレータの各構成素子の電源端に接続される駆動電圧発生回路であって発生する駆動電圧が互いに異なる複数のレギュレータ回路を並列に接続した駆動電圧発生回路と、
前記リングオシレータの発振周波数の変動を検出する周波数検知回路であって、一方の信号電極が電源に接続され、駆動電極に前記リングオシレータの出力信号が印加されるトランジスタと、前記トランジスタの他方の信号電極と接地との間に設けられる抵抗素子と、前記抵抗素子に並列に接続されるコンデンサ回路であって直列に接続した複数のコンデンサからなり各接続端から電圧レベル値を示す分圧信号を出力するコンデンサ回路とを備える周波数検知回路と、
前記周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットを前記リングオシレータの出力信号毎にラッチするラッチ回路と、
前記ラッチ回路が出力する複数のデータビットの組み合わせに基づき前記駆動電圧発生回路内の１つのレギュレータ回路を前記リングオシレータの各構成素子の駆動電源として選択する選択回路と、
を備えたことを特徴とするリングオシレータの発振周波数補正回路。
【請求項３】
前記ラッチ回路は、前記リングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号に基づき、前記定めた論理値のデータビットをラッチすることを特徴とする請求項１または２に記載のリングオシレータの発振周波数補正回路。
【請求項４】
前記周波数検知回路では、前記トランジスタの駆動電極に前記リングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号が印加されることを特徴とする請求項３に記載のリングオシレータの発振周波数補正回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、マイクロコンピュータなどの半導体集積回路に内蔵されるリングオシレータの発振周波数を補正する発振周波数補正回路に関するものである。
【０００２】
【従来の技術】
半導体集積回路に内蔵されるリングオシレータは、インバータを奇数段直列に接続し、最終段の出力を初段に帰還させた発振回路であるが、その発振周波数は、電圧変化や周囲の温度変化に対し５０％〜１００％の変動を伴う。したがって、特にマイクロコンピュータに内蔵されるリングオシレータでは、発振周波数の補正が必要である。
【０００３】
そこで、従来のマイクロコンピュータでは、温度変化による周波数変動の少ない発振子を接続してその発振周波数が測定できるようにし、測定した外部発振子の発振周波数と別に測定したリングオシレータの発振周波数とを用いてソフトウエア処理によってリングオシレータの発振周波数補正を行っていた。
【０００４】
【発明が解決しようとする課題】
このように、従来のマイクロコンピュータでは、リングオシレータの発振周波数補正をソフトウエア処理によって実施しなければならず、補正処理自体が負荷となっていた。また、外部発振子にて高速動作をさせるために、補正処理中は消費電力が増加するという問題もあった。
【０００５】
この発明は、上記に鑑みてなされたもので、半導体集積回路に内蔵されるリングオシレータの発振周波数を外部発振子を必要とせずに自動的に補正でき、またその補正動作において消費電力の抑制が行えるリングオシレータの発振周波数補正回路を得ることを目的とする。
【０００６】
【課題を解決するための手段】
上記の目的を達成するために、この発明にかかるリングオシレータの発振周波数補正回路は、半導体集積回路に内蔵されるリングオシレータにおいて、前記リングオシレータの発振経路内に介在させた遅延回路であって遅延量が互いに異なる複数の遅延素子を並列に接続した遅延回路と、前記リングオシレータの発振周波数の変動を検出する周波数検知回路であって、一方の信号電極が電源に接続され、駆動電極に前記リングオシレータの出力信号が印加されるトランジスタと、前記トランジスタの他方の信号電極と接地との間に設けられる抵抗素子と、前記抵抗素子に並列に接続されるコンデンサ回路であって直列に接続した複数のコンデンサからなり各接続端から電圧レベル値を示す分圧信号を出力するコンデンサ回路とを備える周波数検知回路と、前記周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットを前記リングオシレータの出力信号毎にラッチするラッチ回路と、前記ラッチ回路が出力する複数のデータビットの組み合わせに基づき前記遅延回路内の１つの遅延素子を前記リングオシレータの構成素子として選択する選択回路とを備えたことを特徴とする。
【０００７】
この発明によれば、リングオシレータの発振経路内に、遅延量が互いに異なる複数の遅延素子を並列に接続した遅延回路が設けられている。そして、周波数検知回路では、トランジスタがリングオシレータの出力信号を受けて一定期間の導通状態と非導通状態とを交互に繰り返している。トランジスタが導通状態であるときに、コンデンサ回路では、直列に接続した複数のコンデンサが充電され、各接続端から電圧レベル値を示す分圧信号が出力される。各分圧信号のレベルは、トランジスタが導通状態である期間が長いか短いか、つまりリングオシレータの発信周波数が低いか高いかによって変化する。ラッチ回路では、周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットがリングオシレータの出力信号毎にラッチされる。選択回路では、ラッチ回路が出力する複数のデータビットの組み合わせに基づき遅延回路内の１つの遅延素子がリングオシレータの構成素子として選択される。
【０００８】
つぎの発明にかかるリングオシレータの発振周波数補正回路は、半導体集積回路に内蔵されるリングオシレータにおいて、前記リングオシレータの各構成素子の電源端に接続される駆動電圧発生回路であって発生する駆動電圧が互いに異なる複数のレギュレータ回路を並列に接続した駆動電圧発生回路と、前記リングオシレータの発振周波数の変動を検出する周波数検知回路であって、一方の信号電極が電源に接続され、駆動電極に前記リングオシレータの出力信号が印加されるトランジスタと、前記トランジスタの他方の信号電極と接地との間に設けられる抵抗素子と、前記抵抗素子に並列に接続されるコンデンサ回路であって直列に接続した複数のコンデンサからなり各接続端から電圧レベル値を示す分圧信号を出力するコンデンサ回路とを備える周波数検知回路と、前記周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットを前記リングオシレータの出力信号毎にラッチするラッチ回路と、前記ラッチ回路が出力する複数のデータビットの組み合わせに基づき前記駆動電圧発生回路内の１つのレギュレータ回路を前記リングオシレータの各構成素子の駆動電源として選択する選択回路とを備えたことを特徴とする。
【０００９】
この発明によれば、リングオシレータの各構成素子の電源端は、半導体集積回路の動作電源に接続されるのではなく、発生する駆動電圧が互いに異なる複数のレギュレータ回路を並列に接続した駆動電圧発生回路に接続されている。そして、周波数検知回路では、トランジスタがリングオシレータの出力信号を受けて一定期間の導通状態と非導通状態とを交互に繰り返している。トランジスタが導通状態であるときに、コンデンサ回路では、直列に接続した複数のコンデンサが充電され、各接続端から電圧レベル値を示す分圧信号が出力される。各分圧信号のレベルは、トランジスタが導通状態である期間が長いか短いか、つまりリングオシレータの発信周波数が低いか高いかによって変化する。ラッチ回路では、周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットがリングオシレータの出力信号毎にラッチされる。選択回路では、ラッチ回路が出力する複数のデータビットの組み合わせに基づき駆動電圧発生回路内の１つのレギュレータ回路がリングオシレータの各構成素子の駆動電源として選択される。
【００１０】
つぎの発明にかかるリングオシレータの発振周波数補正回路は、上記の発明において、前記ラッチ回路は、前記リングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号に基づき、前記定めた論理値のデータビットをラッチすることを特徴とする。
【００１１】
この発明によれば、上記の発明において、ラッチ回路では、リングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号に基づき前記定めた論理値のデータビットをラッチする動作が行われる。つまり、ラッチ回路では、イネーブル信号の信号レベルを操作することによって、ラッチデータを更新するか否かを制御することができる。
【００１２】
つぎの発明にかかるリングオシレータの発振周波数補正回路は、上記の発明において、前記周波数検知回路では、前記トランジスタの駆動電極に前記リングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号が印加されることを特徴とする。
【００１３】
この発明によれば、上記の発明において、周波数検知回路では、トランジスタの駆動電極にリングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号が印加される。つまり、イネーブル信号の信号レベルを操作することによって、リングオシレータの出力信号の状態と無関係にトランジスタが非導通状態を維持するように制御し、抵抗素子に電流が流れないようにすることができる。
【００１４】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるリングオシレータの発振周波数補正回路の好適な実施の形態を詳細に説明する。
【００１５】
実施の形態１．
図１は、この発明の実施の形態１によるリングオシレータの発振周波数補正回路の構成を示す回路図である。図２は、図１に示すコンデンサ電圧ラッチ回路の具体的な構成例を示す回路図である。
【００１６】
図１において、リングオシレータ１は、例えば５個のインバータで構成されるが、その発振経路の途中に遅延回路２が設けられている。遅延回路２は、並列に接続された複数の遅延素子（図示例では、４個の遅延素子２ａ，２ｂ，２ｃ，２ｄ）で構成されている。４個の遅延素子２ａ，２ｂ，２ｃ，２ｄ）は、互いに遅延量が異なり、選択回路５からの選択信号Ｓａ，Ｓｂ，Ｓｃ，Ｓｄによって個別に選択され、リングオシレータ１の構成要素の１つになるようになっている。
【００１７】
リングオシレータ１の出力信号Ｐｒは、周波数検知回路３とコンデンサ電圧ラッチ回路４とに入力されている。周波数検知回路３は、充電用のトランジスタＴｐと、分圧信号発生用のコンデンサ回路３ｂと、充放電用の抵抗素子Ｒとを備えている。
【００１８】
トランジスタＴｐは、Ｐチャネルトランジスタであって、ゲート電極にリングオシレータ１の出力信号Ｐｒが印加され、ソース電極が電源３ａに接続されている。このトランジスタＴｐのドレイン電極とグランド（接地）との間に、並列に接続されたコンデンサ回路３ｂと抵抗素子Ｒとが設けられている。
【００１９】
コンデンサ回路３ｂは、図示例では、直列に接続した４個のコンデンサ（容量素子）Ｃで構成されている。４個のコンデンサ（容量素子）Ｃは、それぞれ極板間の間隔が等しく、トランジスタＴｐのドレイン電極とグランド（接地）との電位差を４等分割し、３／４の電圧である分圧信号ＶｏｕｔＡと、１／２の電圧であるＶｏｕｔＢと、１／４の電圧であるＶｏｕｔＣとをそれぞれ発生するようになっている。これらの分圧信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣは、それぞれコンデンサ電圧ラッチ回路４に入力されている。
【００２０】
コンデンサ電圧ラッチ回路４は、分圧信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣ毎に設けられ、それぞれラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔを選択回路５に出力する。図２では、分圧信号ＶｏｕｔＡを受けてラッチ信号Ａｏｕｔを発生する回路が示されている。分圧信号ＶｏｕｔＢを受けてラッチ信号Ｂｏｕｔを発生する回路、分圧信号ＶｏｕｔＣを受けてラッチ信号Ｃｏｕｔを発生する回路も同一の構成である。
【００２１】
図２において、コンデンサ電圧ラッチ回路４は、インバータ２１，２４，２７と、トランスミッションゲート２２，２５と、データラッチ回路２３，２６とを備えている。
【００２２】
インバータ２１は、コンデンサ回路３ｂからの分圧信号ＶｏｕｔＡが閾値を超えるとき反転してトランスミッションゲート２２に出力する。トランスミッションゲート２２の出力は、インバータ２３ａ，２３ｂの逆並列接続で構成されるデータラッチ回路２３に入力される。データラッチ回路２３の出力は、インバータ２４を介してインバータ２６ａ，２６ｂの逆並列接続で構成されるデータラッチ回路２６に入力される。データラッチ回路２６からラッチ信号Ａｏｕｔが選択回路５に出力される。
【００２３】
インバータ２７は、リングオシレータ１の出力信号Ｐｒを反転した反転信号Ｐｒのバー（以下、「Ｐｒ−」と表記する）を発生する。出力信号Ｐｒは、トランスミッションゲート２２のＰチャネルトランジスタ２２ｂのゲート電極と、トランスミッションゲート２５のＮチャネルトランジスタ２５ａのゲート電極とに印加されている。反転信号Ｐｒ−は、トランスミッションゲート２２のＮチャネルトランジスタ２２ａのゲート電極と、トランスミッションゲート２５のＰチャネルトランジスタ２５ｂのゲート電極とに印加されている。
【００２４】
すなわち、トランスミッションゲート２２，２５は、リングオシレータ１の出力信号Ｐｒに従ってデータラッチ回路２３，２６へのデータ受け渡しタイミングをコントロールしている。
【００２５】
図１に戻って、選択回路５は、３入力のＮＡＮＤゲート回路５１，５２，５３，５４と、インバータ５５，５６，５７，５８，５９，６０とを備え、遅延回路２が備える４個の遅延素子２ａ，２ｂ，２ｃ，２ｄの１つを選択するようになっている。
【００２６】
ＮＡＮＤゲート回路５１には、ラッチ信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣが直接入力され、選択信号Ｓａを遅延素子２ａに出力している。すなわち、選択信号Ｓａは、｛ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣ｝＝｛１１１｝のとき発生する。
【００２７】
ＮＡＮＤゲート回路５２には、ラッチ信号ＶｏｕｔＡ，ＶｏｕｔＢが直接入力され、ラッチ信号ＶｏｕｔＣがインバータ５５を介して入力され、選択信号Ｓｂを遅延素子２ｂに出力している。すなわち、選択信号Ｓｂは、｛ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣ｝＝｛１１０｝のときに発生する。
【００２８】
ＮＡＮＤゲート回路５３には、ラッチ信号ＶｏｕｔＡが直接入力され、ラッチ信号ＶｏｕｔＢ，ＶｏｕｔＣがインバータ５６，５７を介して入力され、選択信号Ｓｃを遅延素子２ｃに出力している。すなわち、選択信号Ｓｃは、｛ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣ｝＝｛１００｝のときに発生する。
【００２９】
ＮＡＮＤゲート回路５４には、ラッチ信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣがインバータ５８，５９，６０を介して入力され、選択信号Ｓｄを遅延素子２ｄに出力している。すなわち、選択信号Ｓｄは、｛ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣ｝＝｛０００｝のときに発生する。
【００３０】
次に、図１〜図４を参照して、以上のように構成される実施の形態１による発振周波数補正回路の動作について説明する。なお、図３は、図１に示すリングオシレータの出力信号による充放電動作を説明する図である。図４は、図１に示すリングオシレータの発振周波数と充放電動作との関係を説明する図である。
【００３１】
まず、図１と図３を参照して、周波数検知回路３の基本的な動作について説明する。リングオシレータ１の出力信号Ｐｒは、図３（１）に示すように、高レベル（以下「Ｈレベル」という）の期間と低レベル（以下「Ｌレベル」という）の期間とが交互に繰り返すパルス信号である。
【００３２】
周波数検知回路３では、ＰチャネルのトランジスタＴｐは、リングオシレータ１の出力信号ＰｒがＬレベルである期間内導通状態となり、Ｈレベルである期間内非導通状態となる。トランジスタＴｐが導通状態になると、トランジスタＴｐのドレイン電極からコンデンサ回路３ｂに充電電流が供給され、コンデンサ回路３ｂが充電される。また、トランジスタＴｐが非導通状態になると、コンデンサ回路３ｂの充電電荷が抵抗素子Ｒを通ってグランド（接地）に放電される。
【００３３】
したがって、直列接続された４個のコンデンサ（容量素子）Ｃで構成されるコンデンサ回路３ｂの端子電圧、つまり、トランジスタＴｐの出力信号Ｖｃは、例えば図３（２）に示すような充放電動作波形となる。
【００３４】
ここで、トランジスタＴｐが導通状態になると、トランジスタＴｐの出力信号Ｖｃ、つまりコンデンサ回路３ｂの端子電圧は、抵抗素子Ｒの抵抗値とコンデンサ回路３ｂの容量値とで定まる時定数に従って、電源３ａの電圧をトランジスタＴｐでの電圧と抵抗素子Ｒでの電圧とで分圧した電圧に向かって増大する。図３（２）では、増大した後に、電源３ａの電圧をトランジスタＴｐでの電圧と抵抗素子Ｒでの電圧とで分圧した電圧で安定している場合が示されているが、実際には、コンデンサ回路３ｂの端子電圧（充電電荷量）は、抵抗素子Ｒの抵抗値とコンデンサ回路３ｂの容量値とで定まる時定数とトランジスタＴｐが導通状態にある期間の広狭とトランジスタＴｐの駆動能力とによって変化する。
【００３５】
リングオシレータ１の発振周波数は、温度変化によって５０％〜１００％程度変動することが知られている。高温になるとリングオシレータを構成するインバータの遅延が増加するので、発振周波数が低くなる。つまり、リングオシレータ１の出力信号ＰｒのＬレベル期間が増大する。
【００３６】
一方、トランジスタＴｐの駆動能力は、温度の上昇と共に減少する。温度変化によるトランジスタＴｐの駆動能力の変動幅は、６０％程度である。しかし、抵抗素子Ｒの抵抗値は、温度が上昇すると６０％程度増加するので、両者の変動特性が互いに相殺され、コンデンサ回路３ｂへの充電能力は変動しない。したがって、コンデンサ回路３ｂに充電される電荷量は、リングオシレータ１の出力信号ＰｒがＬレベルである期間の長さによって支配されることになる。
【００３７】
つまり、分圧信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣの大きさは、例えば図４に示すように、リングオシレータ１の出力信号ＰｒがＬレベルである期間の変化を反映して変化することになる。図４において、（Ａ）は、リングオシレータ１の発信周波数が低周波数である場合、つまりリングオシレータ１の出力信号ＰｒのＬレベル期間が長い場合における充放電波形を示している。（Ｂ）は、リングオシレータ１の発信周波数が高周波数である場合、つまりリングオシレータ１の出力信号ＰｒのＬレベル期間が短い場合における充放電波形を示している。
【００３８】
次に、図２を参照して、コンデンサ電圧ラッチ回路４の動作について説明する。図２において、分圧信号ＶｏｕｔＡは、インバータ２１を介してトランスミッションゲート２２に入力される。トランスミッションゲート２２では、リングオシレータ１の出力信号ＰｒがＬレベルである期間では、反転信号Ｐｒ−がＨレベルとなり、Ｎチャネルトランジスタ２２ａが導通状態になるので、インバータ２１の出力値がＮチャネルトランジスタ２２ａを介してデータラッチ回路２３に取り込まれる。データラッチ回路２３のデータは、インバータ２４を介してトランスミッションゲート２５に入力される。
【００３９】
そして、リングオシレータ１の出力信号ＰｒがＨレベルに立ち上がると、トランスミッションゲート２５では、Ｎチャネルトランジスタ２５ａが導通状態になるので、インバータ２４の出力値がＮチャネルトランジスタ２５ａを介してデータラッチ回路２６に取り込まれ、選択回路５に対してラッチ信号Ａｏｕｔが保持出力される。
【００４０】
ここで、インバータ２１では、分圧信号ＶｏｕｔＡが閾値を超えるレベルであれば、出力をＬレベルにするが、閾値を超えるレベルでなければ、出力をＨレベルにする。インバータ２１が出力をＬレベルにすると、データラッチ回路２３，２６には“０”がラッチされる。インバータ２１が出力をＨレベルにすると、データラッチ回路２３，２６には“１”がラッチされる。つまり、選択回路５に対して出力されるラッチ信号Ａｏｕｔの値は、分圧信号ＶｏｕｔＡの大きさによって、“０”の場合と“１”の場合とに変化する。
【００４１】
これを図４を参照して説明する。図４（Ａ）において、リングオシレータの発振周波数が低い場合には、（１）に示すように出力信号ＰｒのＬレベル期間が長いので、（２）に示すように、コンデンサ回路３ｂでは、十分に充電される。しかし、図４（Ｂ）において、リングオシレータの発振周波数が高い場合には、（１）に示すように出力信号ＰｒのＬレベル期間が短いので、（２）に示すように、コンデンサ回路３ｂでは、充電が不充分となる。この場合の分圧信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣのレベルは、それぞれ、図４（Ａ）の場合よりも低いものになる。なお、図４（Ａ）の場合と図４（Ｂ）の場合とで、分圧信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣの分圧割合は同じである。
【００４２】
このように、分圧信号ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣのそれぞれに対するコンデンサ電圧ラッチ回路４では、リングオシレータの発振周波数の高低変化に応じた値のラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔを出力することができる。コンデンサ回路３ｂでは、トランジスタＴｐ側から順にＨレベルとなるので、ラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔの値の組み合わせは、｛０００｝｛１００｝｛１１０｝｛１１１｝の４種類となる。
【００４３】
選択回路５では、ラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔの値の組み合わせが｛０００｝であるときは、ＮＡＮＤゲート回路５４から選択信号Ｓｄが出力され、遅延素子２ｄが選択される。ラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔの値の組み合わせが｛１００｝であるときは、ＮＡＮＤゲート回路５３から選択信号Ｓｃが出力され、遅延素子２ｃが選択される。ラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔの値の組み合わせが｛１１０｝であるときは、ＮＡＮＤゲート回路５２から選択信号Ｓｂが出力され、遅延素子２ｂが選択される。ラッチ信号Ａｏｕｔ，Ｂｏｕｔ，Ｃｏｕｔの値の組み合わせが｛１１１｝であるときは、ＮＡＮＤゲート回路５１から選択信号Ｓａが出力され、遅延素子２ａが選択される。
【００４４】
このように、遅延素子２ａ，２ｂ，２ｃ，２ｄのいずれか１つがリングオシレータ１の構成要素として接続される。その結果、選択された遅延素子によってリングオシレータ１の発振周波数が増減制御される。リングオシレータ１の発振周波数と遅延素子２ａ，２ｂ，２ｃ，２ｄとの関係は、具体的には、次のようになる。
【００４５】
すなわち、リングオシレータ１の発振周波数が高くなるのに伴い、出力信号ＰｒのＬレベル期間が短くなると、コンデンサ回路３ｂでは不十分な充電に移行するので、分圧信号ＶｏｕｔＣ，ＶｏｕｔＢ，ＶｏｕｔＡの順にインバータ２１の閾値を超えることができなくなる。そのため、分圧信号ＶｏｕｔＣ，ＶｏｕｔＢ，ＶｏｕｔＡの順に、データラッチ回路２３，２６に取り込まれる値は“１”となる。つまり、ラッチ信号Ｃｏｕｔ，Ｂｏｕｔ，Ａｏｕｔの値の組み合わせは、周波数の早い方から｛０００｝、｛００１｝、｛０１１｝、｛１１１｝となる。その結果、選択回路５から出力される選択信号は、周波数の早い順にＳｄ，Ｓｃ，Ｓｂ，Ｓａと出力される。
【００４６】
したがって、遅延素子２ａ，２ｂ，２ｃ，２ｄは、遅延量の大きいものから順に２ｄ，２ｃ，２ｂ，２ａとすることで、周波数が高くなれば遅延量の大きい遅延素子が選択される。また、逆に周波数が低くなれば遅延量の少ない遅延素子が選択されることになる。すなわち、温度変化による周波数変動が自動的に最小限に抑制される。
【００４７】
このように、実施の形態１によれば、リングオシレータの温度による周波数変動を自動的に検知し、周波数に応じて接続する遅延素子を切り替え得るようにしたので、温度変化による周波数変動を自動的に補正することが可能となる。
【００４８】
実施の形態２．
図５は、この発明の実施の形態２によるリングオシレータの発振周波数補正回路の要部構成を示す回路図である。リングオシレータでは、動作電圧が低くなると発振周波数が低くなる傾向がある。実施の形態２では、この特性を利用してリングオシレータの発振周波数を補正する回路の他の構成例が示されている。
【００４９】
すなわち、図５に示すように、この実施の形態２による発振周波数補正回路では、実施の形態１（図１、図２）に示した構成において、遅延回路２を省略して、リングオシレータ１を構成するインバータの電源電圧を制御する駆動電圧発生回路３１が設けられている。駆動電圧発生回路３１は、駆動電圧が互いに異なるレギュレータ回路３１ａ，３１ｂ，３１ｃ，３１ｄを備えている。レギュレータ回路３１ａ，３１ｂ，３１ｃ，３１ｄは、並列に接続され、図１に示した選択回路５からの選択信号Ｓａ，Ｓｂ，Ｓｃ，Ｓｄによって１つが選択されるようになっている。
【００５０】
このように、実施の形態２では、リングオシレータ１を構成するインバータの電源端は、半導体集積回路の動作電源に直接接続されるのではなく、レギュレータ回賂３１ａ，３１ｂ，３１ｃ，３１ｄに接続され、駆動電圧が増減制御されるようになっている。
【００５１】
実施の形態１にて説明したように、選択回路５では、選択信号がリングオシレータ１の発振周波数が高い順にＳｄ，Ｓｃ，Ｓｂ，Ｓａと出力される。したがって、レギュレータ回路は、３１ａ，３１ｂ，３１ｃ，３１ｄの順に駆動電圧を下げたものを用いる。
【００５２】
このようにすれば、最も発振周波数が高い場合は、選択信号Ｓｄが出力されるので、最も低い駆動電圧を出力するレギュレータ回路３１ｄからリングオシレータ１の各インバータに駆動電圧が供給され、発振周波数を低くする補正が行われる。逆に、最も発振周波数が低い場合は、選択信号Ｓａが出力されるので、最も高い駆動電圧を出力するレギュレータ回路３１ａからリングオシレータ１の各インバータに駆動電圧が供給され、発振周波数を高くする補正が行われる。
【００５３】
したがって、実施の形態２によれば、実施の形態１と同様に、温度変化による周波数変動を自動的に補正することが可能となる。
【００５４】
実施の形態３．
図６、図７は、この発明の実施の形態３によるリングオシレータの発振周波数補正回路の要部構成を示す回路図である。この実施の形態３では、実施の形態１または実施の形態２において、２値のイネーブル信号を追加することによって消費電力を抑制しつつ発振周波数の補正を行う回路の構成例が示されている。なお、図６は、図１に示した周波数検知回路にイネーブル信号を適用する場合の回路図である。図７は、図２に示したコンデンサ電圧ラッチ回路にイネーブル信号を適用する場合の回路図である。
【００５５】
すなわち、図６に示すように、この実施の形態３による発振周波数補正回路では、実施の形態１（図１、図２）または実施の形態２（図５）に示した構成において、周波数検知回路３におけるトランジスタＴｐの入力段にＯＲゲート回路３３を設け、トランジスタＴｐのゲート電極には、リングオシレータ１の出力信号Ｐｒとイネーブル信号Ｅとの論理和を取った信号が印加されるようにしている。
【００５６】
この構成によれば、イネーブル信号ＥがＨレベルの場合には、トランジスタＴｐは、ゲート電極にリングオシレータ１の出力信号Ｐｒの状態に関わらずＨレベルが入力されるので、非導通状態となる。
【００５７】
したがって、この構成によれば、イネーブル信号ＥがＨレベルである間はトランジスタＴｐから抵抗素子Ｒを経てグランド（接地）に電流が流れることがないので、消費電力を抑えることが可能となる。
【００５８】
また、図７に示すように、この実施の形態３による発振周波数補正回路では、実施の形態１（図１、図２）または実施の形態２（図５）に示した構成において、コンデンサ電圧ラッチ回路４に代えて、コンデンサ電圧ラッチ回路３５が設けられている。
【００５９】
コンデンサ電圧ラッチ回路３５では、図２に示したコンデンサ電圧ラッチ回路４のインバータ２７の入力段に、ＯＲゲート回路３６を設け、インバータ２７には、リングオシレータ１の出力信号Ｐｒとイネーブル信号Ｅとの論理和を取った信号が入力されるようにしている。
【００６０】
したがって、トランスミッションゲート２２のＮチャネルトランジスタ２２ａのゲート電極とトランスミッションゲート２５のＰチャネルトランジスタ２５ｂのゲート電極とには、リングオシレータ１の出力信号Ｐｒとイネーブル信号Ｅとの論理和を取った信号ＰｒＥの反転信号ＰｒＥ−が印加される。
【００６１】
その結果、イネーブル信号ＥがＨレベルである間は、トランスミッションゲート２２のＮチャネルトランジスタ２２ａが非導通状態を維持し、トランスミッションゲート２５のＰチャネルトランジスタ２５ｂは導通状態となるので、データラッチ回路２３にラッチされたデータは保持され、これによってデータラッチ回路２６には、同一内容のデータが取り込まれ保持される。その結果、選択される遅延素子またはレギュレータ回路は不変となる。
【００６２】
すなわち、イネーブル信号ＥがＨレベルである間は、リングオシレータ１の状態は保持され、イネーブル信号ＥがＬレベルである間は、リングオシレータ１の出力信号Ｐｒ毎に周波数が補正される。
【００６３】
このように、実施の形態３によれば、実施の形態１または実施の形態２において、イネーブル信号をＨレベルとＬレベルに切り替えることによって、消費電力の抑制と発振周波数補正との２つの目的を効果的に達成することができる。また、イネーブル信号による操作をコンデンサ電圧ラッチ回路でのみ行う場合には、発信周波数の補正を常時行うか間欠的に行うかを選択することができる。
【００６４】
【発明の効果】
以上説明したように、この発明によれば、リングオシレータの発振経路内に、遅延量が互いに異なる複数の遅延素子を並列に接続した遅延回路が設けられている。そして、周波数検知回路では、トランジスタがリングオシレータの出力信号を受けて一定期間の導通状態と非導通状態とを交互に繰り返している。トランジスタが導通状態であるときに、コンデンサ回路では、直列に接続した複数のコンデンサが充電され、各接続端から電圧レベル値を示す分圧信号が出力される。各分圧信号のレベルは、トランジスタが導通状態である期間が長いか短いか、つまりリングオシレータの発信周波数が低いか高いかによって変化する。ラッチ回路では、周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットがリングオシレータの出力信号毎にラッチされる。選択回路では、ラッチ回路が出力する複数のデータビットの組み合わせに基づき遅延回路内の１つの遅延素子がリングオシレータの構成素子として選択される。したがって、半導体集積回路に内蔵されるリングオシレータの発振周波数を外部発振子を必要とせずに自動的に補正することができる。
【００６５】
つぎの発明によれば、リングオシレータの各構成素子の電源端は、半導体集積回路の動作電源に接続されるのではなく、発生する駆動電圧が互いに異なる複数のレギュレータ回路を並列に接続した駆動電圧発生回路に接続されている。そして、周波数検知回路では、トランジスタがリングオシレータの出力信号を受けて一定期間の導通状態と非導通状態とを交互に繰り返している。トランジスタが導通状態であるときに、コンデンサ回路では、直列に接続した複数のコンデンサが充電され、各接続端から電圧レベル値を示す分圧信号が出力される。各分圧信号のレベルは、トランジスタが導通状態である期間が長いか短いか、つまりリングオシレータの発信周波数が低いか高いかによって変化する。ラッチ回路では、周波数検知回路が出力する複数の電圧レベル値を個別に閾値を超えるか否かで論理値を定め、その定めた論理値のデータビットがリングオシレータの出力信号毎にラッチされる。選択回路では、ラッチ回路が出力する複数のデータビットの組み合わせに基づき駆動電圧発生回路内の１つのレギュレータ回路がリングオシレータの各構成素子の駆動電源として選択される。したがって、半導体集積回路に内蔵されるリングオシレータの発振周波数を外部発振子を必要とせずに自動的に補正することができる。
【００６６】
つぎの発明によれば、上記の発明において、ラッチ回路では、リングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号に基づき前記定めた論理値のデータビットをラッチする動作が行われる。つまり、ラッチ回路では、イネーブル信号の信号レベルを操作することによって、ラッチデータを更新するか否かを制御することができるので、発振周波数補正を常時行うか間欠的に行うかを選択することができる。
【００６７】
つぎの発明によれば、上記の発明において、周波数検知回路では、トランジスタの駆動電極にリングオシレータの出力信号と２値のイネーブル信号との論理和を取った信号が印加される。つまり、イネーブル信号の信号レベルを操作することによって、リングオシレータの出力信号の状態と無関係にトランジスタが非導通状態を維持するように制御し、抵抗素子に電流が流れないようにすることができる。したがって、消費電力を抑制することができる。ラッチ回路では、周波数検知回路にて消費電力を抑制する動作が行われる場合にはリングオシレータの状態を維持し、消費電力を抑制する動作が行われない場合にはリングオシレータの発信周波数を補正する動作が行えるので、消費電力を抑制しつつ発振周波数の補正を行うことができる。
【図面の簡単な説明】
【図１】この発明の実施の形態１によるリングオシレータの発振周波数補正回路の構成を示す回路図である。
【図２】図１に示すコンデンサ電圧ラッチ回路の具体的な構成例を示す回路図である。
【図３】図１に示すリングオシレータの出力信号による充放電動作を説明する図である。
【図４】図１に示すリングオシレータの発振周波数と充放電動作との関係を説明する図である。
【図５】この発明の実施の形態２によるリングオシレータの発振周波数補正回路の要部構成を示す回路図である。
【図６】この発明の実施の形態３によるリングオシレータの発振周波数補正回路の要部構成を示す回路図（図１に示した周波数検知回路にイネーブル信号を適用する場合の回路図）である。
【図７】この発明の実施の形態３によるリングオシレータの発振周波数補正回路の要部構成を示す回路図（図２に示したコンデンサ電圧ラッチ回路にイネーブル信号を適用する場合の回路図）である。
【符号の説明】
１　リングオシレータ、２　遅延回路、２ａ，２ｂ，２ｃ，２ｄ　遅延素子、３　周波数検知回路、Ｔｐ　充電用のトランジスタ、Ｒ　充放電用の抵抗素子、３ｂ　分圧信号発生用のコンデンサ回路、Ｃ　直列接続されたコンデンサ（容量素子）、４，３５　コンデンサ電圧ラッチ回路、５　選択回路、２１，２４，２７，５５〜６０　インバータ、２２，２５　トランスミッションゲート、２３，２６　データラッチ回路、３１　駆動電圧発生回路、３１ａ，３１ｂ，３１ｃ，３１ｄ　レギュレータ回路、３３，３６　ＯＲゲート回路、５１〜５４　ＮＡＮＤゲート回路、Ｐｒ　リングオシレータの出力信号、Ｖｃ　充電用トランジスタの出力信号、ＶｏｕｔＡ，ＶｏｕｔＢ，ＶｏｕｔＣ　分圧信号、Ｓａ，Ｓｂ，Ｓｂ，Ｓｄ　選択信号、Ｅ　イネーブル信号。
【図１】
2004056561.tif 000003
【図２】
2004056561.tif 000004
【図３】
2004056561.tif 000005
【図４】
2004056561.tif 000006
【図５】
2004056561.tif 000007
【図６】
2004056561.tif 000008
【図７】
2004056561.tif 000009