(57)【特許請求の範囲】
【請求項１】
１又は複数の入力クロック信号から、１つの出力信号を選択的に生成する回路であって、
Ａ）  入力クロック信号のための複数の入力と、入力クロック信号の中から１つを選択する信号のためのコントロール入力と、選択された入力クロック信号を供給するためのマルチプレクサ出力とを有する、マルチプレクサと、
Ｂ）  マルチプレクサ出力と回路の出力との間に設けられた信号ラッチであって、マルチプレクサ出力への接続ラインはスイッチを有している、信号ラッチと、
Ｃ）  外部クロック選択信号のためのコントロール入力と、マルチプレクサ出力の信号と回路の出力信号のための信号入力と、ロジッククロック信号のためのクロック入力と、マルチプレクサのコントロール入力に接続されるコントロール出力と、スイッチに接続されるディセーブル信号出力とを有する、スイッチングロジックとを備え、
前記スイッチングロジックは、そのコントロール入力で信号が切り替わった場合にスイッチを開にし、そのコントロール入力からそのコントロール出力へ、切り替わった信号を伝達し、マルチプレクサ出力の出力信号が、少なくとも１回切り替わって且つ回路の出力信号と等しくなった場合に、スイッチを再び閉にするように構成されている、
ことを特徴とする回路。
【請求項２】
請求項１に記載の回路であって、ロジッククロック信号を利用可能にするために、スイッチングロジックのクロック入力に接続されたクロック生成器を備えていることを特徴とする回路。
【請求項３】
請求項１又は請求項２に記載の回路であって、スイッチングロジックは、
ａ）  コントロール入力におけるクロック選択信号の切り替わりを待つ、ステップと、
ｂ）  コントロール入力における信号が切り替わった場合に、スイッチを開にするために、ディセーブル信号出力にディセーブル信号を供給する、ステップと、
ｃ）  コントロール入力から、マルチプレクサへのコントロール出力に、信号を伝達する、ステップと、
ｄ）  マルチプレクサ出力における信号の切り替わりを待つ、ステップと、
ｅ）  マルチプレクサ出力における切り替わった信号が、回路の出力信号と等しくない場合に、マルチプレクサ出力における信号の切り替わりを再び待つ、ステップと、
ｆ）  スイッチを閉にするために、ディセーブル信号出力におけるディセーブル信号を除去し、ステップａ）に戻る、ステップと、
を行うように実現された状態及び状態遷移のステートマシンである、ことを特徴とする回路。
【請求項４】
請求項１乃至請求項３のいずれかに記載の回路であって、ＣＭＯＳにより実現されることを特徴とする回路。
【発明の詳細な説明】
【０００１】
本発明は、１又は複数のクロック信号から、出力信号を選択的に生成するための回路に関する。
【０００２】
デジタル・マイクロエレクトロニック回路は、その動作のために、クロック信号を必要とする。この信号は、クロックレートを予め決定する。事情によっては、異なるクロック信号から得られる異なるクロックレートで、ロジック回路が交互に動作すべきであるという状況が生じるかもしれない。例えば、何らかの遅い周辺装置に適合できるようにするために、マイクロコンピュータの中央処理装置（ＣＰＵ）を任意に速い及び遅いクロックで動作させることができるようにする必要があるかもしれない。同様に、スマート・カード・コントローラにおいては、チップ・クロック用のソースは、そのアプリケーションに応じて、異なるかもしれない。例えば、外部クロックがスマート・カードのピンを介して供給されるかもしれず、或いは、外部クロックがオンチップ発振器用の内部ソースとして、機能するかもしれない。
【０００３】
異なるシステムクロックの間でスイッチングをする場合には、スイッチングの間に、定義されていない状態又は電圧パルス（グリッチ）が発生しないことを、考慮すべきである。このような事情の下、複数のクロック信号の間の切り替え又は２つの異なるクロック信号の間の切り替えを可能にする回路が、例えば、米国特許第５，４８３，１８５号、米国特許第５，６０４，４５２号、及び、米国特許第５，７９０，６０９号に記述されている。既知の回路においては、予め定められたクロック信号がマルチプレクサに与えられ、マルチプレクサの出力が、これらのクロック信号のうちの１つを出力信号として供給する。これはマルチプレクサのコントロール入力により、選択することができる。２つのクロック信号の間の切り替えは、定義されていない信号状態がその出力に生じないように、コントロール手段により、コントロールされる。この目的のために、スイッチングプロセスの間、出力信号はロジックハイ状態に対応するレベルに、維持される。この状態から開始して、出力信号は新しく選択されたクロックにより連続的に進行する。しかしながら、ハイ状態を待つので、出力信号がスイッチングプロセスの始まりでちょうどロジックロー状態になった場合には、スイッチングプロセスでは、比例した長い時間を消失する。したがって、頻繁にスイッチングプロセスがある場合には、顕著な遅延が回路に発生する。さらに、既知の回路は、共通して、回路のコントロールは外部クロック信号の１つにより行われる。このクロック信号が乱れたり停止したりした場合、回路の機能は中断する。
【０００４】
このような認識に基づいて、本発明の目的は、複数の入力クロック信号から１つの出力信号を選択的に生成し、速くて干渉のないクロック信号の間のスイッチングを可能にする回路を、提供することである。同時に、回路はフェールセーフであるべきであり、且つ、好ましくは、簡単な手段でＣＭＯＳ技術により実現されるべきである。
【０００５】
この目的は、請求項１に定義された回路により、解決される。有利な実施形態が従属の請求項に定義されている。
【０００６】
１又は複数の入力クロック信号から、１つの出力信号を選択的に生成する回路は、次のようなエレメントを備えている。
【０００７】
Ａ）  入力クロック信号のための複数の入力と、入力クロック信号の中から１つを選択する信号のためのコントロール入力と、選択された入力クロック信号を供給するためのマルチプレクサ出力とを有する、マルチプレクサと、
Ｂ）  マルチプレクサ出力と回路の出力との間に設けられた信号ラッチであって、マルチプレクサ出力への接続ラインはスイッチを有している、信号ラッチと、
Ｃ）  外部クロック選択信号のためのコントロール入力と、マルチプレクサ出力の信号と回路の出力信号のための信号入力と、ロジッククロック信号のためのクロック入力と、マルチプレクサのコントロール入力に接続されるコントロール出力と、スイッチに接続されるディセーブル信号出力とを有する、スイッチングロジック。
【０００８】
前記スイッチングロジックは、そのコントロール入力で信号が切り替わった場合にスイッチを開にし、そのコントロール入力からそのコントロール出力へ、切り替わった信号を伝達し、マルチプレクサ出力の出力信号が、少なくとも１回切り替わって且つ信号ラッチに保持された回路の出力信号と等しくなった場合に、スイッチを再び閉にするように構成されている。
【０００９】
この回路は、入力クロック信号の１つを出力信号に選択的に切り替えることを可能にし、２つの異なる入力クロック信号の切り替えの間に、出力信号に、定義されていない状態、又は、干渉電圧が生じない。これは、マルチプレクサ出力が信号ラッチを介して回路の出力に接続されることにより、また、マルチプレクサと信号ラッチとの間の接続がスイッチにより遮断されることにより、達成される。このような遮断は、２つの入力クロック信号の間のスイッチングの前に行われ、このため、スイッチングの間、回路の出力は信号ラッチのみに接続され、この結果、現在の信号レベル（ハイ又はロー）が一定に保たれ、干渉が生じない。スイッチングプロセスが終了し、安定した信号（そのレベルは信号ラッチの信号のレベルに対応している）がマルチプレクサ出力に現れた場合にのみ、スイッチは再び閉になり、出力信号が直ちに新しく選択された入力クロック信号に追随するようになる。
【００１０】
スイッチングの間、この回路は、スイッチングプロセスの開始時における出力信号のレベルを、少なくとも、入力クロック信号間で生じる最も短いクロック周期の間、維持することを確保する。このようにして、短すぎるクロック信号によって、接続されたロジック回路が干渉することが、排除される。この効果は、スイッチを再び閉にすることにより、マルチプレクサ出力が信号ラッチに再び接続する前に、まず、コントロールが、少なくともマルチプレクサ出力の信号の切り替わりを待つことにより達成される。それ故、現在のラッチ状態が、少なくとも、新しい信号の１フルクロック長だけ維持される。
【００１１】
提案した回路は、好ましくは、ロジッククロック信号を利用可能にするために、スイッチングロジックのクロック入力に接続されたクロック生成器を少なくとも備えている。それ固有のクロック発生器であるので、回路は、外部クロック信号と独立したものとなり、故障又は干渉の場合にも、動作を続けることができる。さらに、固有のクロックは、入力クロック信号に対する実質的な遅延なしに反応するのに十分な速さで、スイッチングロジックが動作をすることを可能にする。
【００１２】
提案した回路のスイッチングロジックは、特に、ステートマシンとして構成されていてもよく、このスイッチングロジックの状態及び状態遷移は、次のようなステップを行うことを実現する。
【００１３】
ａ）  コントロール入力におけるクロック選択信号の切り替わりを待つ、ステップと、
ｂ）  コントロール入力における信号が切り替わった場合に、スイッチを開にするために、ディセーブル信号出力にディセーブル信号を供給する、ステップと、
ｃ）  コントロール入力から、マルチプレクサへのコントロール出力に、信号を伝達する、ステップと、
ｄ）  マルチプレクサ出力における信号の切り替わりを待つ、ステップと、
ｅ）  マルチプレクサ出力における切り替わった信号が、回路の出力信号と等しくない場合に、マルチプレクサ出力における信号の切り替わりを再び待つ、ステップと、
ｆ）  スイッチを閉にするために、ディセーブル信号出力におけるディセーブル信号を除去し、ステップａ）に戻る、ステップ。
【００１４】
このようなステートマシンは、その機能を、標準化された回路記述言語により定義できるという利点を有しており、この回路記述言語は、具体的な回路における予め定められたロジックステップの機能を、簡単に且つ自動的に変換することを、可能にする。
【００１５】
本発明に係る回路は、好ましくは、ＣＭＯＳ技術により実現される。これは、回路を既知のマイクロチップに集積化することを可能にする、既知の信頼性のある技術である。特に、回路は、スマートカードチップに関して使用されてもよい。スマートカードにおいては、チップを、外部から供給されたクロック又は内部で生成したクロックで任意にコントロールし、且つ、スマートカードの機能に課せられたセキュリティー条件が極めて厳格である状況が、しばしば、生じる。スイッチングプロセスの間、出力信号が定義されていない状態、又は、チップのリセットさえ、発生するのが、如何なる場合でも回避される。
【００１６】
図１は、回路１００を示しており、この回路１００は、複数の所定の入力クロック信号ＣＬＫ＿ＳＲＣ＿１，ＣＬＫ＿ＳＲＣ＿２，…，ＣＬＫ＿ＳＲＣ＿ｎから、１つの入力クロック信号を選択することにより、１つの出力信号ＣＬＫ＿ＯＵＴの生成を可能にする。このような回路は、特に、スマートカードチップに用いられてもよく、チップに外部クロック又は内部クロックを任意に供給する。入力クロック信号は、必ずしも同期されている必要はない。
【００１７】
スマートカードコントローラにおいては、極めて厳格なセキュリティー条件が考慮されるべきである。動作状態において、このようなスマートカードコントローラは、定義されていない状態に決してしてはならない。従って、スマートカードコントローラを常に定義された状態に維持するために、システムクロックＣＬＫ＿ＯＵＴとして、生成されるパルスは、システムに依存した最小期間に達しない状態に陥らないことが必要である。特に、短いラスティングパルス（グリッチ）がシステムクロック上で発生してはならない。
【００１８】
したがって、２つの入力クロック信号の間のスイッチングフューズは、クリティカルである。スイッチングプロセスの間又は後のスマートカードコントローラのリセットは、スマートカードコントローラを再び定義された状態にするかもしれないが、データを維持するという理由から、行われてはならない。さらに、特にテスト目的のためには、できる限り歪みのない態様で、入力クロック信号からシステムクロックを得ることが重要である。
【００１９】
システムクロックを生成する、異なる入力クロック信号ＣＬＫ＿ＳＲＣ１，…，ＣＬＫ＿ＳＲＣ＿ｎは、図１の回路の入力に現れる。回路の別の入力は、コンフィギュレーション又はクロック選択信号ＣＦＧを供給するために用いられる。この信号ＣＦＧは、システムクロックを生成すべき入力クロック信号を指定している。信号ＣＦＧは、信号ベルトであり、つまり入力クロック信号の数ｎに依存する。ＣＦＧはｍ個の別個の信号からなり、ここで２ｍはｎより大きいか又は等しい関係にある。回路１００は、その出力に、所望のシステムクロックＣＬＫ＿ＯＵＴを供給する。
【００２０】
回路１００においては、入力クロック信号ＣＬＫ＿ＳＲＣ＿１，…，ＣＬＫ＿ＳＲＣ＿ｎは、既知のマルチプレクサＭＵＸの入力に接続されている。マルチプレクサＭＵＸは、ステートマシンＦＳＭのコントロール出力に接続されたコントロール入力を有している。このコントロール入力を介して、マルチプレクサＭＵＸは、ステートマシンから内部コントロール信号ＣＦＧ＿ｉを受信する。このコントロール信号は、入力クロック信号からの選択をコントロールする。ＣＦＧ＿ｉは、ＣＦＧと同様に、信号ベクトルである。
【００２１】
マルチプレクサＭＵＸの出力は、信号ＭＵＸ＿ＯＵＴを伝達し、この信号ＭＵＸ＿ＯＵＴは現在の選択された入力クロック信号に対応している。この信号はトランジスタスイッチＳを介して、スタテック型ＣＭＯＳラッチに与えられる。このラッチは、スイッチＳを開にすべき場合でも、現在のレベル（ロー又はハイ）を維持する信号メモリとして機能する。ＣＭＯＳラッチの出力は、この回路の出力及びステートマシンＦＳＭに接続される。所望の出力は信号ＣＬＫ＿ＯＵＴが、この回路の出力から得られる。
【００２２】
ステートマシンＦＳＭは、上述したように、コンフィギュレーション信号ＣＦＧが現れる、この回路の入力に接続されている。さらに、これはディセーブル信号出力を介して、スイッチＳに接続されており、ディセーブル信号ＤＩＳＡＢＬＥを介して、このスイッチを任意に開閉する。ステートマシンは、出力信号ＣＬＫ＿ＯＵＴと同様に、マルチプレクサ出力からの入力信号として、信号ＭＵＸ＿ＯＵＴを受信する。
【００２３】
さらに、ステートマシンＦＳＭは、リング発振器ＲＯに接続されており、リング発振器ＲＯは、それ独自のクロックＦＣＬＫを供給する。このクロックは、最も速い入力クロック信号又はシステムクロックのクロックレートを明らかに越えており、これによりステートマシンＦＳＭは、入力クロック信号のクロック周期の間に、必要なプロセスステップを行い、擬似的には瞬時に入力クロック信号の変化に反応することができる。
【００２４】
システムクロックを異なる入力クロック信号に切り替えることを、回路１００で行う場合、これは、外部コンフィギュレーション信号ＣＦＧの変化に対応することにより、指示される。コンフィギュレーション信号のこのような変化の後、ステートマシンＦＳＭにより及びコントロール信号ＤＩＳＡＢＬＥ手段により、スイッチＳを介して、信号ラッチＬＡＴＣＨは最初に非トランスペアレントにスイッチされる。この結果、システムクロックＣＬＫ＿ＯＵＴは、瞬間的に現在のレベルを維持する。信号ラッチＬＡＴＣＨが確実に非トランスペアレントである場合、ステートマシンは、信号ＣＦＧの変化を信号ＣＦＧ＿ｉとして、マルチプレクサＭＵＸのコントロール入力に与える。その結果として、マルチプレクサＭＵＸは、新しい入力クロック信号にセットされる。グリッチは、マルチプレクサの出力信号ＭＵＸ＿ＯＵＴのこの切り替えの間に発生するかもしれないが、非トランスペアレントな信号ラッチＬＡＴＣＨによりブロックされる。
【００２５】
マルチプレクサＭＵＸ＿ＯＵＴの出力信号が、安定し且つ信号ラッチＬＡＴＣＨに保持した値に変化し終えた瞬間に、信号ラッチＬＡＴＣＨは再びステートマシンＦＳＭによりトランスペアレントに切り替えられる。信号ラッチをリリースするこの条件は、出力信号ＣＬＫ＿ＯＵＴに、システムクロックの最小フューズ長の短かさまで陥ることが、発生しないことを保証する。
【００２６】
回路１００は、ＶＨＤＬ（ＩＥＥＥ基準１０７６〜１９８７）等の既知のハードウェア記述言語により記述することができ、必要さとれるセルライブラリーに課せられた最小条件下で、合成することができる。原則として、スイッチング合成のスタティックラッチと同様に、ＮＡＮＤゲート又はＮＯＤゲートだけで、提供されなければならない。
【００２７】
この回路により達成することのできる利点は、特に、システムクロックＣＬＫ＿ＯＵＴ上にグリッチを生成することなく、異なる入力クロック信号の間の切り替えを可能にすることである。この切り替えは、プログラムを現在実行しているコントローラにより行ってもよいが、スイッチングプロセスの間又は後のコントローラのリセットは必要とされない。スイッチングプロセス以外では、マルチプレクサＭＵＸ及び信号ラッチＬＡＴＣＨによる遅延時間だけが、入力クロック信号によるシステムクロックの生成に影響を与える。
【００２８】
さらに、スイッチングプロセスの始まりにおいて、現在のシステムクロックＣＬＫ＿ＯＵＴが、現在のロジックレベルに維持されるという利点がある。レベルが所定の値（例えば、ハイレベル）に切り替わるまで最初に待つ必要がなくなる。このため、このスイッチングプロセスを、特に、遅いものから速い入力クロック信号への切り替えに適用した場合において、スイッチングプロセスは、一般的に既知の回路よりも速く進行する。重要な利点は、回路を任意数の入力クロック信号に対して構成することができることであり、つまり、任意数の入力クロック信号に基本的に拡張することができることである。
【００２９】
さらなる利点は、この回路は、既存のマルチプレクサとピン・コンパチブルであることであり、つまり、追加の入力又は出力信号は必要とされず、生成もされない。
【００３０】
さらなる利点は、この回路は、それ自体分離されたクロック生成器ＲＯによりコントロールされるであることである。このため、入力クロック信号の質に依存しておらず、特に、これらの信号のうちの１つが乱れたり、停止したりした場合でも、機能する。
【００３１】
図２は、図１に示したステートマシンＦＳＭの動作可能モードの状態遷移図である。
【００３２】
ステートマシンは通常、アイドル状態ＩＤＬＥにある。ステートマシンは、外部コンフィギュレーション信号ＣＦＧが変化しない限り、この状態を維持する。このため、マルチプレクサＭＵＸは切り替わらない。ステートマシンは、この信号と、ステートマシンのコントロール入力の信号ＣＦＧ＿ｉとを比較することにより、外部コンフィギュレーション信号が同じ状態を維持しているかどうかをチェックする。
【００３３】
マルチプレクサＭＵＸを切り替えるべき場合には、前述の信号ＣＦＧとＣＦＧ＿ｉが等しくなくなる。そして、ステートマシンは、状態ＷＴに変化する。この状態で、信号ＤＩＳＡＢＬＥはアクティブになり、スイッチＳが開になる。これにより、非トランスペアレントに信号ラッチＬＡＴＣＨを切り替える。
【００３４】
続いて、ステートマシンは、無条件に、状態ＲＥＣＦＧに変化する。信号ＣＦＧ＿ｉ上の外部コンフィギュレーション信号ＣＦＧが、最初に、マルチプレクサＭＵＸに伝達される。これにより、マルチプレクサＭＵＸは、新しく選択された入力クロック信号に切り替わる。
【００３５】
マルチプレクサ出力における信号ＭＵＸ＿ＯＵＴのロジックレベル（０又は１）に応じて、ステートマシンは連続して状態ＷＴ＿０又はＷＴ＿１に切り替わり、この信号が対応する他のレベルに切り替わるのを待つ。このような切り替わりの後、ステートマシンは状態ＤＥＣＩＤＥに切り替わる。
【００３６】
この状態ＤＥＣＩＤＥにおいて、ステートマシンは、マルチプレクサ出力における新しいレベルＭＵＸ＿ＯＵＴが、信号ラッチＬＡＴＣＨにおけるレベルＣＬＫ＿ＯＵＴに一致するかどうかを、チェックする。これらのレベルが一致していない場合には、マルチプレクサ出力は、回路の出力にまだ接続することができない。したがって、ステートマシンは、ＲＥＣＦＧに戻り、信号ＭＵＸ＿ＯＵＴの切り替わりを待つための新しい周期を開始する。
【００３７】
遅くともこの２回目の切り替わりの後に、レベルＭＵＸ＿ＯＵＴは、ラッチのレベルＣＬＫ＿ＯＵＴに一致する。状態ＤＥＣＩＤＥでこの条件が確立した場合には、ステートマシンは状態ＥＮＡＢＬＥに切り替わる。この状態において、スイッチＳは閉になり、これにより信号ラッチＬＡＴＣＨは再びトランスペアレントに切り替わる。マルチプレクサ出力の信号ＭＵＸ＿ＯＵＴは、これにより、回路の出力に伝達される。
【００３８】
この結果、ステートマシンＦＳＭは、状態ＩＤＬＥに再び戻り、クロック信号の切り替えプロセス全体が、終了する。
【図面の簡単な説明】
【図１】図１は、回路図を示す。
【図２】図２は、図１の回路のスイッチングロジックにおける状態遷移図である。
【符号の説明】
１００  回路
ＣＦＧ  外部コンフィギュレーション信号
ＣＦＧ＿ｉ  内部コンフィギュレーション信号
ＣＬＫ＿ＯＵＴ  出力信号
ＣＬＫ＿ＳＲＣ＿１、ＣＬＫ＿ＳＲＣ＿２、…、ＣＬＫ＿ＳＲＣ＿ｎ  入力クロック信号
ＤＩＳＡＢＬＥ  コントロール信号
ＦＣＬＫ  ロジッククロック信号
ＦＳＭ  ステートマシン
ＬＡＴＣＨ  信号ラッチ
ＭＵＸ  マルチプレクサ
ＭＵＸ＿ＯＵＴ  マルチプレクサ出力信号
ＲＯ  リング発振器
【図１】
0003904472.tif 000002
【図２】
0003904472.tif 000003