(57)【要約】      （修正有）【課題】起動動作が安定なリング発振器を提供する。【解決手段】コンピュータシステムは、リング構成に結合された複数のロジックゲート２０１−２０４を含むリング発振器を含む。システムはまた、複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲート２０１のクロック入力２０６に供給されるリング有効信号とクロック信号２１０とによってリング発振器を起動するためのロジック回路２０３を含む。クロック信号は、少なくとも１つの制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させる。クロック信号は、所定のウォームアップ期間中にクロック入力に供給され、その後に、ロジック回路が、クロック信号がない状態で、リング発振器を再起動し動作させる。【選択図】図２
2019146159.tif 000002
【特許請求の範囲】
【請求項１】
複数のロジックゲートの最後のロジックゲートを除く各々の出力が、前記複数のロジックゲートの次の１つのロジックゲートのための入力として使用されるリング構成で結合された前記複数のロジックゲートであって、前記複数のロジックゲートの前記最後のロジックゲートの出力が、前記複数のロジックゲートの最初のロジックゲートの入力にフィードバックされ、前記最初のロジックゲートの入力として使用される、前記複数のロジックゲートを含むリング発振器を動作させる方法であって、
前記リング構成内の前記複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲートのクロック入力に供給されたリング有効信号及びクロック信号によって前記リング発振器を起動することであって、前記少なくとも１つの制御されたロジックゲートが、前記少なくとも１つの制御されたロジックゲートを制御し、それによって前記リング発振器を前記クロック信号に同期させるために、前記クロック信号を受信し、前記クロック信号が、所定のウォームアップ期間中に前記クロック入力に供給される、前記リング発振器を起動することと、その後に、
前記クロック信号がない状態で前記リング発振器を再起動して動作させることと
を含む方法。
【請求項２】
前記複数のロジックゲートが、前記リング構成で結合された奇数個の反転ロジックゲートを含み、かつ
前記少なくとも１つの制御ロジックゲートが、前記クロック信号が供給される前記クロック入力である同期入力を有する、請求項１に記載の方法。
【請求項３】
前記少なくとも１つの制御されたロジックゲートが、非反転入力と反転入力、及び少なくとも反転出力を有する差動バッファゲートを含み、前記非反転入力が、前記リング構成における前記複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、前記反転入力が前記クロック入力であり、前記反転出力が、前記リング構成における前記複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつ
前記リング発振器を起動することが、前記差動バッファゲートの前記反転入力に供給される前記リング有効信号と前記クロック信号とによって、前記リング発振器を起動することを含む、請求項１又は２に記載の方法。
【請求項４】
前記少なくとも１つの制御されたロジックゲートが、前記リング構成における前記複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合された入力と、前記リング構成における反転ロジックゲートのうちの次の１つのロジックゲートの入力に結合された反転出力と、前記クロック入力であるゲート有効入力とを有するトライステートインバータを含み、かつ
前記リング発振器を起動することが、前記トライステートインバータの前記有効入力に供給される前記リング有効信号と前記クロック信号とによって、前記リング発振器を起動することを含む、請求項１に記載の方法。
【請求項５】
前記少なくとも１つの制御されたロジックゲートが、データ入力と有効入力、及び少なくとも反転出力を有するゲート付きＤラッチを含み、前記データ入力が、前記リング構成における前記複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、前記有効入力が前記クロック入力であり、前記反転出力が、前記リング構成における前記複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつ
前記リング発振器を起動することが、前記ゲート付きＤラッチの前記有効入力に供給される前記リング有効信号と前記クロック信号とによって、前記リング発振器を起動することを含む、請求項１に記載の方法。
【請求項６】
前記少なくとも１つの制御されたロジックゲートが、前記リング構成における前記複数のロジックゲートのうちの連続するロジックゲート間に結合され、かつ第１の入力と第２の入力、セレクタ入力と出力を有する２：１マルチプレクサを含み、前記第１の入力が、前記リング構成における前記連続するロジックゲートのうちの早い方の１つの出力に結合され、前記セレクタ入力が前記クロック入力であり、前記出力が、両方とも前記リング構成の前記連続するロジックゲートのうちの後の方の１つのための入力に結合され、フィードバックされて前記２：１マルチプレクサの前記第２の入力に結合され、かつ
前記リング発振器を起動することが、前記２：１マルチプレクサの前記セレクタ入力に供給される前記リング有効信号と前記クロック信号とによって、前記リング発振器を起動することを含む、請求項１に記載の方法。
【請求項７】
前記複数のロジックゲートの各々が、前記リング発振器内の信号伝搬においてゲート遅延を引き起こし、前記リング発振器を起動することが、前記リング有効信号と、前記ゲート遅延又は前記ゲート遅延の倍数であるパルス幅を有する周期的なパルス列を含む前記クロック信号とによって、前記リング発振器を起動することを含む、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記クロック信号がクロック周波数を有し、前記リング発振器を再起動し動作させることが、前記クロック周波数又は前記クロック周波数の倍数である周波数で前記リング発振器を再起動し動作させることを含む、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記少なくとも１つの制御されたロジックゲートが、複数の制御されたロジックゲートを制御し、それによって前記リング発振器を前記クロック信号に同期させるために、前記クロック信号を受信するそれぞれのクロック入力を各々が含む前記複数の制御されたロジックゲートである、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
リング発振器を備える、コンピュータシステムにおいてセキュリティを提供するためのシステムであって、前記リング発振器が、複数のロジックゲートの最後のロジックゲートを除く各々の出力が、前記複数のロジックゲートの次の１つのロジックゲートのための入力として使用されるリング構成で結合された前記複数のロジックゲートを含み、前記複数のロジックゲートの前記最後のロジックゲートの出力が、前記複数のロジックゲートの最初のロジックゲートの入力にフィードバックされ、前記最初のロジックゲートの入力として使用され、また請求項１から９のいずれか一項に記載の方法を実行し、かつ少なくとも
前記リング構成内の前記複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲートのクロック入力に供給されたリング有効信号及びクロック信号によって前記リング発振器を起動することであって、前記少なくとも１つの制御されたロジックゲートが、前記少なくとも１つの制御されたロジックゲートを制御し、それによって前記リング発振器を前記クロック信号に同期させるために、前記クロック信号を受信し、前記クロック信号が、所定のウォームアップ期間中に前記クロック入力に供給される、前記リング発振器を起動することと、その後に、
前記クロック信号がない状態で前記リング発振器を再起動して動作させることと
を行うように構成された１つ又は複数のロジック回路を備えるシステム。
【請求項１１】
前記複数のロジックゲートが、前記リング構成で結合された奇数個の反転ロジックゲートを含み、かつ前記少なくとも１つの制御されたロジックゲートが、前記クロック信号が供給される前記クロック入力である同期入力を有する、請求項１０に記載のシステム。
【請求項１２】
前記少なくとも１つの制御されたロジックゲートが、非反転入力と反転入力、及び少なくとも反転出力を有する差動バッファゲートを含み、前記非反転入力が、前記リング構成における前記複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、前記反転入力が前記クロック入力であり、前記反転出力が、前記リング構成における前記複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつ
前記リング発振器を起動するように構成されている前記１つ又は複数のロジック回路が、前記リング有効信号と、前記差動バッファゲートの前記反転入力に供給される前記クロック信号とによって、前記リング発振器を起動するように構成されていることを含む、請求項１０又は１１に記載のシステム。
【請求項１３】
前記少なくとも１つの制御されたロジックゲートが、前記リング構成における前記複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合された入力と、前記リング構成における反転ロジックゲートのうちの次の１つのロジックゲートの入力に結合された反転出力と、前記クロック入力であるゲート有効入力とを有するトライステートインバータを含み、かつ前記リング発振器を起動するように構成されている前記１つ又は複数のロジック回路が、前記リング有効信号と、前記トライステートインバータの前記有効入力に供給される前記クロック信号とによって、前記リング発振器を起動するように構成されていることを含む、請求項１０に記載のシステム。
【請求項１４】
前記少なくとも１つの制御されたロジックゲートが、データ入力と有効入力、及び少なくとも反転出力を有するゲート付きＤラッチを含み、前記データ入力が、前記リング構成における前記複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、前記有効入力が前記クロック入力であり、前記反転出力が、前記リング構成における前記複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつ
前記リング発振器を起動するように構成されている前記１つ又は複数のロジック回路が、前記ゲート付きＤラッチの前記有効入力に供給される前記リング有効信号と前記クロック信号とによって、前記リング発振器を起動するように構成されていることを含む、請求項１０に記載のシステム。
【請求項１５】
前記少なくとも１つの制御されたロジックゲートが、前記リング構成における前記複数のロジックゲートのうちの連続するロジックゲート間に結合され、かつ第１の入力と第２の入力、セレクタ入力と出力を有する２：１マルチプレクサを含み、前記第１の入力が、前記リング構成における前記連続するロジックゲートのうちの早い方の１つの出力に結合され、前記セレクタ入力が前記クロック入力であり、前記出力が、両方とも前記リング構成の前記連続するロジックゲートのうちの後の方の１つのための入力に結合され、フィードバックされて前記２：１マルチプレクサの前記第２の入力に結合され、かつ
前記リング発振器を起動するように構成されている前記１つ又は複数のロジック回路が、前記２：１マルチプレクサの前記セレクタ入力に供給される前記リング有効信号と前記クロック信号とによって、前記リング発振器を起動するように構成されていることを含む、請求項１０に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、リング発振器の起動動作を安定させることに関し、特に、同期可能なリング発振器を使用してリング発振器の起動動作を安定させることに関する。
【背景技術】
【０００２】
リング発振器は、ループ状に、すなわちリング構成で結合されたロジックゲート又はアナログ増幅器を含む。ある要素の出力は、次の入力に結合される。奇数個のこれらの構成要素は、それらの入力信号を反転させる。リング発振器は、電子工学において多くの用途があり、情報セキュリティで使用される真の乱数を生成するためにエントロピー源として使用することができる。しかしながら、起動時に、リング発振器は、それらの内部温度を急速に変化させ、回路ノイズ及び環境の影響と共に、複数の予測不可能な発振周波数がもたらされる。リング発振器の起動動作のこの不確実性は、利用可能なエントロピーを予測不可能にし、したがって情報セキュリティを損なう可能性がある。
【０００３】
リング発振器の起動動作を安定させるための既存の解決策の１つは、サーモスタットを使用して回路温度を安定させることであるが、この解決策がアナログ回路を必要とするので高価である。他の既存の解決策は、リング発振器を自己ウォームアップすることであるが、これは予測可能な起動条件を保証しない。第３の既存の解決策は、リング発振器が起動する前に、ダミー回路を使用して熱を発生させることであるが、これは不正確であり、予測可能な起動条件を保証しない。
【０００４】
したがって、上記で論じた問題のうちの少なくともいくつか、並びに他の起こりうる問題を考慮に入れるシステム及び方法を有することが望ましいだろう。
【発明の概要】
【０００５】
本開示の例示的な実施態様は、同期可能なリング発振器を使用して、リング発振器の起動動作を安定させることに関する。同期可能なリング発振器は、標準的なロジックゲートで作られる。リング発振器は、起動時に所定のウォームアップ期間中に安定したクロック信号に同期させることができる。したがって、既存の解決策とは対照的に、例示的な実施態様は、低コストでリング発振器の起動動作を安定させることができ、予測可能な起動条件を提供することができる。
【０００６】
したがって、本開示は、以下の例示的実施態様を含むが、それらに限定されない。
【０００７】
いくつかの例示的な実施態様は、リング発振器を動作させる方法を提供する。リング発振器は、複数のロジックゲートの最後のロジックゲートを除く各々の出力が、複数のロジックゲートの次の１つのロジックゲートのための入力として使用されるリング構成で結合された複数のロジックゲートであって、複数のロジックゲートの最後のロジックゲートの出力が、複数のロジックゲートの最初のロジックゲートの入力にフィードバックされ、最初のロジックゲートの入力として使用される、複数のロジックゲートを含む。方法は、リング構成内の複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲートのクロック入力に供給されたリング有効信号（リング有効入力を含むリング発振器）及びクロック信号によってリング発振器を起動することであって、少なくとも１つの制御されたロジックゲートが、少なくとも１つの制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるために、クロック信号を受信し、クロック信号が、所定のウォームアップ期間中にクロック入力に供給される、リング発振器を起動することと、その後に、クロック信号がない状態でリング発振器を再起動して動作させることとを含む。
【０００８】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、複数のロジックゲートは、リング構成で結合された奇数個の反転ロジックゲートを含み、かつ少なくとも１つの制御されたロジックゲートが、クロック信号が供給されるクロック入力である同期入力を有する。
【０００９】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、少なくとも１つの制御されたロジックゲートは、非反転入力と反転入力、及び少なくとも反転出力を有する差動バッファゲートを含み、非反転入力が、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、反転入力がクロック入力であり、反転出力が、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつリング発振器を起動することが、差動バッファゲートの反転入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む。
【００１０】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、少なくとも１つの制御されたロジックゲートは、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合された入力と、リング構成における反転ロジックゲートのうちの次の１つのロジックゲートの入力に結合された反転出力と、クロック入力であるゲート有効入力とを有するトライステートインバータを含み、かつリング発振器を起動することは、トライステートインバータの有効入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む。
【００１１】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、少なくとも１つの制御されたロジックゲートは、データ入力と有効入力、及び少なくとも反転出力を有するゲート付きＤラッチ（ｇａｔｅｄ  Ｄ−ｌａｔｃｈ）を含み、データ入力は、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、有効入力はクロック入力であり、反転出力は、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつリング発振器を起動することは、ゲート付きＤラッチの有効入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む。
【００１２】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、少なくとも１つの制御されたロジックゲートは、リング構成における複数のロジックゲートのうちの連続するロジックゲート間に結合され、かつ第１の入力と第２の入力、セレクタ入力と出力を有する２：１マルチプレクサを含み、第１の入力は、リング構成における連続するロジックゲートのうちの早い方の１つの出力に結合され、セレクタ入力はクロック入力であり、出力は、両方ともリング構成の連続するロジックゲートのうちの後の方の１つのための入力に結合され、フィードバックされて２：１マルチプレクサの第２の入力に結合され、かつリング発振器を起動することは、２：１マルチプレクサのセレクタ入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む。
【００１３】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、複数のロジックゲートの各々は、リング発振器内の信号伝搬においてゲート遅延を引き起こし、リング発振器を起動することは、リング有効信号と、ゲート遅延又はゲート遅延の倍数（ａ  ｍｕｌｔｉｐｌｅ  ｏｆ  ｔｈｅ  ｇａｔｅ  ｄｅｌａｙ）であるパルス幅を有する周期的なパルス列を含むクロック信号とによって、リング発振器を起動することを含む。
【００１４】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、クロック信号は、クロック周波数を有し、リング発振器を再起動し動作させることは、クロック周波数又はクロック周波数の倍数である周波数でリング発振器を再起動し動作させることを含む。
【００１５】
任意の上記例示的実施態様の方法のいくつかの例示的実施態様、又は上記例示的実施態様の任意の組み合わせにおいて、少なくとも１つの制御されたロジックゲートは、複数の制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるために、クロック信号を受信するそれぞれのクロック入力を各々が含む複数の制御されたロジックゲートである。
【００１６】
いくつかの例示的な実施態様は、コンピュータシステムにおいてセキュリティを提供するためのシステムを提供し、システムは、任意の上記例示的実施態様の方法、又は上記例示的実施態様の任意の組合せの方法を少なくとも実行するように構成された１つ又は複数のロジック回路を備える。
【００１７】
本開示の上記の特徴、態様、及び利点、及びその他の特徴、態様、及び利点は、下記の詳細な説明と共に、簡潔に後述する添付図面を参照することで明らかになろう。本開示は、本明細書に記載の特定の例示的な実施態様において、この開示内に明記する２つ、３つ、４つ、又はもっと多くの特徴又は要素が明示的に組み合わされているか、若しくは列挙されているか否かにかかわらず、かかる特徴又は要素の任意の組み合わせを含む。この開示は、本開示のいかなる分離可能な特徴又は要素も、その態様及び例示的な実施態様のいずれにおいても、本開示の文脈がそうでないことを明確に指示していない限り組合せ可能であること見なされるように、全体論的に読まれるためのものである。
【００１８】
したがって、この「発明の概要」は、本開示のいくつかの態様の基本的な理解を提供するために、いくつかの例示的な実施態様を要約することだけを目的に提供されていることが理解されよう。したがって、上述の例示的な実施態様は単なる例であり、いかなる意味においても、本開示の範囲又は本質を狭めると解釈すべきではないことが理解されよう。その他の例示的な実施態様、態様、及び利点は、添付図面と併せて下記の詳細説明を参照することで明らかになろう。添付図面は、例を用いて、記載されているいくつかの例示的な実施態様の原理を示すものである。
【００１９】
上記のように本開示の例示的な実施態様を一般的な用語で説明したが、これより添付図面を参照する。これらの図面は必ずしも正確な縮尺で描かれているわけではない。
【図面の簡単な説明】
【００２０】
【図１】本開示の例示的な実施態様による、コンピュータシステムにおいてセキュリティを提供するためのシステムを示す。
【図２】様々な例示的実施態様による、同期可能リング発振器を示す。
【図３】Ａ−Ｄは、様々な例示的実施態様による、リング発振器を同期させるために使用されるロジックゲートを示す。
【図４】Ａ及びＢは、様々な例示的実施態様による、リング発振器を動作させる方法の様々なステップを示すフローチャートである。
【発明を実施するための形態】
【００２１】
本開示のいくつかの実施態様が、添付図面を参照してこれより下記でより網羅的に説明されるが、添付図面には、本開示の実施態様の全てではなく一部しか示されていない。実際のところ、本開示の様々な実施態様は、多くの異なる形態で実施され、本明細書に明記されている実施態様に限定されると解釈すべきではない。むしろ、これらの例示的な実施態様は、本開示が包括的かつ完全なものになるように、かつ、当業者に本開示の範囲が十分に伝わるように、提供されている。例えば、特に明記されない限り、「第１の」、「第２の」などとして参照されるものは、特定の順番を示すと解釈すべきではない。また、（特に明記されない限り）何か別のものの上にあると説明されうるものは、その代わりに下にあることもあり、逆もまた然りである。同様に、何か別の物の左にあると説明されうる物は、その代わりに右にあることもあり、逆もまた然りである。全体を通して、類似の参照番号は類似の要素を指す。
【００２２】
本開示の例示的な実施態様は、一般に、リング発振器の起動動作を安定させること、特に同期可能なリング発振器を使用してリング発振器の起動動作を安定させることに関する。
【００２３】
図１は、本開示の例示的な実施態様による、コンピュータシステム１１０においてセキュリティを提供するためのシステム１００を示す。コンピュータシステムは、図示されたようなシステムを含みうる。例えば、コンピュータシステムは、そのシステムを備えていてもよい。別の例では、コンピュータシステムとシステムは、２つの別々のシステムでありうる。
【００２４】
システム１００は、少なくともその一部がマルチプレクサ、レジスタ、演算ロジック装置、メモリ、マイクロプロセッサなどのロジック回路を含む又はそのようなロジック回路を用いて実装される複数の構成要素、ユニットなど（一般に「構成要素」）の各々の１つ又は複数を含みうる。システムは、多数の異なる用途のいずれかのために設計され、システム内の１つ又は複数のリング発振器の起動動作を安定させ、コンピュータシステム１１０においてセキュリティを提供するために特定の適用性を有しうる。
【００２５】
システムは、任意の多数の異なる用途向けに設計されてもよく、システム内の１つ又は複数のリング発振器の起動動作を安定させ、コンピュータシステム１１０にセキュリティを提供するために特定の適用性を有してもよい。１つ又は複数の機能、及び機能の組み合わせは、特定の機能を実行する専用の電子ハードウェアベースのシステム及び／又はプロセッサ、あるいは専用ハードウェアとプログラムコード命令の組み合わせによって実装されうることも理解されよう。図示されるように、メモリに格納されプロセッサによって実行可能なコンピュータプログラムは、安全なアプリケーションプログラム１１１（より簡単には安全なアプリケーションとも称される）を含みうる。
【００２６】
いくつかの例では、図示されるように、システム１００は、制御ロジック１０１及びリング発振器１０２を含む。後述するように、制御ロジックは、リング発振器の起動動作を安定させるために、リング発振器を制御することができる。一例では、リング発振器は、真の乱数を生成し、シードとして擬似乱数発生器１０３に提供することができる。疑似乱数発生器は、疑似乱数を生成し、コンピュータシステム１１０内の安全なアプリケーション１１１に提供するために、シードを使用することができる。安全なアプリケーションは、擬似乱数を使用し、コンピュータシステムで使用される暗号文又はメッセージ認証コードのブロックを生成するために鍵発生器を含みうる。別の例では、システムは、複数のリング発振器１０２を含みうる。
【００２７】
図２は、様々な実施的実施態様による同期化可能リング発振器２００を示す。いくつかの例では、リング発振器２００は、システム１００内のリング発振器１０２とすることができる。いくつかの例では、リング発振器は、図示されたように、リング構成で結合された複数のロジックゲート、例えばロジックゲート２０１−２０４を含む。リング構成では、複数のロジックゲートのうちの最後のロジックゲートを除く各々の出力は、複数のロジックゲートのうちの次の１つのロジックゲートのための入力として使用される。例えば、図示されたように、ロジックゲート２０１の出力は、ロジックゲート２０２のための入力として使用され、ロジックゲート２０２の出力は、ロジックゲート２０３のための入力として使用される。また、リング構成では、複数のロジックゲートのうちの最後のロジックゲートの出力は、複数のロジックゲートのうちの最初のロジックゲートのための入力にフィードバックされ、最初のロジックゲートのための入力として使用される。例えば、最後のロジックゲート２０４の出力は、最初のロジックゲート２０１のための入力にフィードバックされ、最初のロジックゲート２０１のための入力として使用される。
【００２８】
いくつかの例では、複数のロジックゲートのうちの１つのロジックゲートは、有効信号を受信し、ロジックゲート及びそれによってリング発振器を有効にするよう構成された有効入力を含む。例えば、リング発振器の第１のロジックゲート、例えばロジックゲート２０１はまた、制御ロジック１０１からリング有効信号を受信し、リング発振器の発振を開始及び停止するための有効入力２０６を有する。有効入力は、発振を開始又は停止する入力と共に、リング発振器のロジックゲート間のＮＡＮＤ又はＮＯＲゲート又はラッチの使用を含む、当該技術分野において知られている任意の手段によって、発振器を起動又は停止することができる。リング有効信号は、ロジックゲート２０１−２０４のいずれにも供給することができる。
【００２９】
いくつかの例では、制御ロジック１０１は、リング有効信号、及びリング構成内の複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲートのクロック入力に供給されるクロック信号によって、リング発振器２００を起動するように構成される。少なくとも１つの制御されたロジックゲートは、クロック信号を受信して少なくとも１つの制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるように構成される。クロック信号は、所定のウォームアップ期間にわたってクロック入力に供給される。所定のウォームアップ期間の後、制御ロジックは、クロック信号がない状態でリング発振器を再起動し動作させるように構成される。
【００３０】
例えば、図示されたように、少なくとも１つの制御されたロジックゲートは、ロジックゲート２０３とすることができる。ロジックゲート２０３は、クロック信号２１０を受信し、ロジックゲートを制御して、それによってリング発振器２００をクロック信号に同期させるように構成されたクロック入力２０５を含む。別の例では、少なくとも１つの制御されたロジックゲートは、異なるロジックゲート、例えばロジックゲート２０１又は２０２とすることができる。制御ロジックは、リング有効信号及びクロック信号を所定のウォームアップ期間中にクロック入力に供給することによって、リング発振器を起動することができる。所定のウォームアップ期間の後、制御ロジックは、例えばクロック信号を除去又は無効にすることによって、クロック信号がない状態でリング発振器を再起動し動作させることができる。
【００３１】
一例では、クロック信号２１０のクロック（同期）周波数が多くのリング発振器の周波数に対して低調波である場合、それらすべてを単一のクロック信号と同期させることができる。例えば、周波数１．５ＧＨｚ、１．７ＧＨｚ、２ＧＨｚ、２．３ＧＨｚのリング発振器はすべて、１００ＭＨｚのクロック信号に同期させることができる（１５、１７、２０及び２３の周波数逓倍で）。
【００３２】
一例では、クロック信号２１０は、狭いクロックパルスとすることができる。クロック信号がロジックレベル１にあるとき、クロック信号は、少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３の出力の変化を阻止することができる。一方、クロック信号がロジックレベル０にあるとき、制御されたロジックゲートの出力は、クロック信号に影響されない。
【００３３】
一例では、ロジックレベル１のクロック信号２１０が制御されたロジックゲート２０３の入力に到達するとき、クロック信号がロジックレベル１にある全期間中にリング発振器動作のため、制御されたロジックゲートが切り替わらない場合、クロック信号は、制御されたロジックゲートの出力に影響しない。これは、制御されたロジックゲートが切り替わらない場合、阻止される出力の変化がないためである。
【００３４】
一方、クロック信号２１０がロジックレベル１にある期間中に、制御されたロジックゲート２０３がリング発振器動作のため切り替わる場合、制御されたロジックゲートの出力の対応する変化は阻止される。すなわち、次のロジックゲート、例えばロジックゲート２０４に向かう信号は、前のレベルに保持される。クロック信号がロジックレベル１からロジックレベル０に変化するときにのみ、制御されたロジックゲートの出力が、リング内の次のロジックゲートに到達可能とされる。このようにして、制御されたロジックゲートの出力は、クロック信号の立ち下がりエッジ（ロジックレベル１からロジックレベル０への変化）に同期する。別の例では、制御されたロジックゲートの出力は、クロック信号の立ち上がりエッジ（ロジックレベル０からロジックレベル１への変化）に同期させることができる。
【００３５】
いくつかの例では、複数のロジックゲートは、リング構成で結合された奇数個の反転ロジックゲートを含む。例えば、ロジックゲート２０１は、反転ロジックゲート、例えばインバータとすることができる。別の例では、ロジックゲート２０１、２０２、及び２０３は、反転ロジックゲートとすることができる。少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３は、クロック信号２１０を受信するように構成されたクロック入力２０５である有効入力を有する。少なくとも１つの制御されたロジックゲートは、反転ロジックゲートであってもなくてもよい。一例では、制御されたロジックゲートの出力及び／又は１つ又は複数の入力を、反転から非反転に、又はその逆に変更することができる。リング発振器２００は、リング発振器内に奇数個の反転ロジックゲートがある限り、正常に動作することができる。
【００３６】
いくつかの例では、少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３は、非反転入力と反転入力と少なくとも反転出力とを有する差動バッファゲート（以下の図３Ａに示す）を含む。非反転入力は、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力、例えばロジックゲート２０２の出力に結合される。反転入力は、クロック入力２０５である。反転出力は、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力、例えばロジックゲート２０４の入力などに結合される。
【００３７】
いくつかの例では、少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３は、トライステートインバータ（以下の図３Ｂに示す）を含む。トライステートインバータは、リング構成の複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合された入力を有する。トライステートインバータはまた、リング構成の複数のロジックゲートのうちの次の１つのロジックゲートの入力に結合された反転出力と、クロック入力２０５であるゲート有効入力とを有する。
【００３８】
いくつかの例では、少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３は、ゲート付きＤラッチ（以下の図３Ｃに示される）を含む。ゲート付きＤラッチは、データ入力と有効入力と少なくとも反転出力とを有する。データ入力は、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合される。有効入力は、クロック入力２０５である。反転出力は、リング構成内の複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合される。
【００３９】
いくつかの例では、少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３は、リング構成内の複数のロジックゲートの連続するロジックゲート間に結合された２：１マルチプレクサ（以下の図３Ｄに示される）を含む。例えば、２：１マルチプレクサは、ロジックゲート２０３の一部とすることができ、又は連続するロジックゲート２０３と２０４との間に挿入することができる。２：１マルチプレクサは、第１の入力と第２の入力、セレクタ入力と出力を有する。第１の入力は、リング構成における連続するロジックゲートのうちの早い方の１つの出力、例えばロジックゲート２０３の出力に結合される。セレクタ入力は、クロック入力である。出力は、リング構成内の連続するロジックゲートのうちの後の方の１つのための入力、例えばロジックゲート２０４の入力に結合される。出力はまた、フィードバックされ、２：１マルチプレクサの２番目の入力に結合される。
【００４０】
いくつかの例では、複数のロジックゲートの各々は、リング発振器２００内の信号伝搬においてゲート遅延を引き起こす。クロック信号２１０は、少なくとも１つの制御されたロジックゲート、例えばロジックゲート２０３によって引き起こされるゲート遅延又はゲート遅延の倍数であるパルス幅を有する周期的なパルス列を含む。一例では、制御されたロジックゲート２０３が通常の反転ロジックゲートである場合、クロック信号のパルス幅は、反転ロジックゲートの遅延と等しくなりうる。別の例では、制御されたロジックゲートが非常に高速の反転ロジックゲートである場合、クロック信号のパルス幅は、非常に高速の反転ロジックゲートの遅延の２倍又は３倍とすることができる。同期時には、リング発振器の発振信号のわずかなパルス幅位相変調があり、これはクロック信号のパルス幅以下である。
【００４１】
いくつかの例では、クロック信号２１０は、クロック周波数を有し、リング発振器２００は、クロック周波数又はクロック周波数の倍数である周波数で発振するように構成される。リング発振器の自走発振周波数は、技術的限界によって制約される。例えば、リング発振器の発振周波数は、３２ｎｍのシリコンオンインシュレータ（ＳＯＩ）技術におけるクロック信号のクロック周波数の１倍、２倍、…、４０倍に制限されうる。他のチップ製造技術は、わずかに異なる最大許容発振周波数を必要とすることがある。別の例では、目標が環境条件の全範囲内で固定周波数比によってクロック信号に結合された周波数の信号を生成することである場合、リング発振器は、クロック信号のクロック周波数の最大４倍など、はるかに低い自走周波数で設計されてもよい。
【００４２】
いくつかの例では、少なくとも１つの制御されたロジックゲートは、クロック信号２１０を受信して多重制御されたロジックゲートを制御し、それによってリング発振器２００をクロック信号に同期させるように構成されたそれぞれのクロック入力２０５を各々が含む、多重制御されたロジックゲートである。例えば、ロジックゲート２０１−２０４の複数又はすべてが、クロック入力を含み、クロック信号を受信することができる。一例では、クロック信号は、同時にリング発振器の複数のロジックゲートに到達する必要がある。これを実現するために、バッファのツリー構造を使用して、クロック信号を複数のロジックゲートに分配することができる。この例では、このツリーの遅延についての要件は、それが各終端ノード、すなわち複数のロジックゲートの各々において、均一でなければならいことを除き、他にない。
【００４３】
図３Ａ、図３Ｂ、図３Ｃ及び図３Ｄは、様々な実施てき実施態様による、リング発振器２００を同期させるために使用される制御されたロジックゲート２０３を示す。
【００４４】
いくつかの例では、制御されたロジックゲート２０３は、図３Ａに示されるように、差動バッファゲート３００を含む。これらの例では、差動バッファゲートは、反転ロジックゲートである。差動バッファゲートは、非反転入力３０１と反転入力３０２、非反転出力３０３と反転出力３０４を含む。非反転入力は、リング内の複数のロジックゲートのうちの前の１つのロジックゲートの出力、例えばロジックゲート２０２の出力に結合される。反転入力は、クロック信号２１０を受信するためのクロック入力２０５である。非反転出力は、浮動していてもよい。反転出力は、複数のロジックゲートのうちの次の１つのロジックゲートのための入力、例えばロジックゲート２０４の入力などに結合される。別の例では、差動バッファゲートは、非反転出力を有していない。
【００４５】
一例では、反転入力３０２で受信されたクロック信号２１０がロジックレベル１又は供給電圧に近い場合、次のロジックゲート２０４は、差動バッファゲート３００の反転出力３０４上のいかなる変化にも反応しない。反転入力で受信されたクロック信号がロジックレベル０又は接地に近い電圧レベルである場合、リング発振器２００は、正常に機能する。したがって、差動バッファゲートの反転入力を短パルスのクロック信号に結合することにより、リング発振器がクロック信号の立ち下がりエッジに同期する。この例では、追加の同期遅延が、クロックパルスに最も近く切り替わることになる１つ又は複数のロジックゲート（おそらく制御されたロジックゲートではない）に導入される。リング発振器の他のロジックゲートは、影響を受けないこともある。
【００４６】
いくつかの例では、制御されたロジックゲート２０３は、図３Ｂに示されるように、トライステートインバータ３１０を含む。これらの例では、トライステートインバータは、リング内の複数のロジックゲートのうちの前の１つのロジックゲートの出力、例えばロジックゲート２０２の出力に結合された入力３１１を含む。トライステートインバータはまた、複数のロジックゲートのうちの次の１つのロジックゲートの入力、例えばロジックゲート２０４の入力に結合された反転出力３１２を含む。トライステートインバータは、クロック信号２１０を受信するためのクロック入力２０５であるゲート有効入力３１３を更に含む。受信したクロック信号は、信号ＥＮｂ３１４を取得してトライステートインバータを駆動させるために、反転させることができる。
【００４７】
一例では、受信されたクロック信号２１０がロジックレベル１にあり、ＥＮｂ３１４がロジックレベル０にあるとき、反転出力３１２は、高インピーダンスで、浮動状態にある。この場合、クロック信号が十分に短いパルスを含む場合、次のロジックゲート２０４の入力容量は放電する時間がないので、次のロジックゲートは、その前のオン／オフ状態を保持する。一方、受信されたクロック信号がロジックレベル０にあり、ＥＮｂがロジックレベル１にあるとき、トライステートインバータは、通常のインバータのように動作する。この場合、反転出力は、次のロジックゲートの入力に直接結合される。したがって、トライステートインバータ３１０のゲート有効入力３１３を短パルスのクロック信号に結合することにより、リング発振器２００は、クロック信号の立ち下がりエッジに同期する。この例では、追加の同期遅延が、クロックパルスに最も近く切り替わることになる１つ又は複数のロジックゲート（おそらく制御されたロジックゲートではない）に導入される。リング発振器の他のロジックゲートは、影響を受けないこともある。
【００４８】
いくつかの例では、制御されたロジックゲート２０３は、図３Ｃに示されるように、ゲート付きＤラッチ３２０を含む。これらの例では、ゲートＤラッチは、反転ロジックゲートである。ゲート付きＤラッチは、データ入力３２１と有効入力３２２、反転出力３２３と非反転出力３２４を含む。データ入力は、リング内の複数のロジックゲートのうちの前の１つのロジックゲートの出力、例えばロジックゲート２０２の出力に結合される。有効入力は、クロック信号２１０を受信するためのクロック入力２０５である。反転出力は、リング内の複数のロジックゲートのうちの次の１つのロジックゲートのための入力、例えばロジックゲート２０４の入力に結合される。非反転出力は、浮動していてもよい。
【００４９】
一例では、表３２５に示すように、有効入力３２２（Ｅ）がロジックレベル０にあるとき、反転出力３２３
2019146159.tif 000003
は、ラッチされ、データ入力３２１（Ｄ）のいかなる変化にも反応しない。一方で、有効入力（Ｅ）がロジックレベル１にあるとき、反転出力
2019146159.tif 000004
は、通常のインバータのようにデータ入力（Ｄ）の反転値を有する。したがって、ゲート付きＤラッチ３２０の有効入力を短パルスのクロック信号に結合することにより、リング発振器２００がクロック信号の立ち上がりエッジに同期する。この例では、ゲート付きＤラッチは、リング発振器の通常のインバータに置き換えることができる。ゲート付きＤラッチは、めったに準安定状態にならないように最適化されているという利点があり、したがって、よりクリーンな周波数スペクトルが生成される。
【００５０】
いくつかの例では、制御されたロジックゲート２０３は、図３Ｄに示すように、２：１マルチプレクサ３３０又は３４０を含む。２：１マルチプレクサは、リング内の複数のロジックゲートのうちの連続するロジックゲート間に結合される。例えば、２：１マルチプレクサは、ロジックゲート２０３の一部とすることができ、又は連続するロジックゲート２０３と２０４との間に挿入することができる。２：１マルチプレクサ３３０は、第１の入力３３１と第２の入力３３２、セレクタ入力３３３と出力３３４を有する。第１の入力は、リング内の連続するロジックゲートのうちの早い方の１つの出力、例えばロジックゲート２０３の出力に結合される。セレクタ入力は、クロック入力２０５である。出力は、リング内の連続するロジックゲートのうちの後の方の１つのための入力、例えばロジックゲート２０４の入力に結合される。出力はまた、フィードバックされ、２：１マルチプレクサの第２の入力に結合される。
【００５１】
２：１マルチプレクサは、３４０に示すように実施することができる。２：１マルチプレクサは、第１の入力３４１と第２の入力３４２、セレクタ入力３４３と出力３４４を有する。第１入力、第２入力、セレクタ入力及び出力は、２：１マルチプレクサ３３０と同様に配置することができる。
【００５２】
一例では、２：１マルチプレクサ３３０について、セレクタ入力３３３がロジックレベル１にあるとき、２：１マルチプレクサはラッチになり、出力３３４は第２の入力３３２と同一である。この場合、出力の現在のレベルは維持され、第１の入力３３１に対するいかなる変化の影響も阻止される。他方、セレクタ入力がロジックレベル０にあるとき、第１の入力は、最大でクロックパルスの幅の遅延で出力に伝播可能とされる。すなわち、リング発振器２００は、正常に動作する。したがって、２：１マルチプレクサ３３０のセレクタ入力を短パルスのクロック信号に結合することにより、リング発振器２００がクロック信号の立ち下がりエッジに同期する。２：１マルチプレクサ３４０は、リング発振器をクロック信号の立ち下がりエッジに同様に同期させるために、使用することができる。
【００５３】
同期可能リング発振器２００で使用される差動バッファゲート３００、トライステートインバータ３１０、ゲート付きＤラッチ３２０、又は２：１マルチプレクサ３３０又は３４０は、集積回路製造プロセスの標準構成要素ライブラリで利用可能でありうる。したがって、既存の解決策とは対照的に、リング発振器２００の起動動作を安定させるために同期可能リング発振器を使用することは、低コストであり、予測可能な起動条件を提供することができる。
【００５４】
一例では、３２ｎｍ以下の集積回路のフィーチャサイズでは、特定のゲートは減速し、他のゲートは温度と共に加速する。特定の気温では、傾向が逆転することがある。製造上のばらつきによっては、ゲートの動作は予測できない。リング発振器は、発振し始めると、ウォームアップし、より速い発振を引き起こし、平衡に達するまで更にスピードアップしうる。温度変化の速度及び環境条件の変動は、異なる安定した発振周波数をもたらし、リング発振器を使用するシステムに問題を引き起こす。すなわち、リング発振器は、未知のエントロピー生成速度のテストされていないモードに入る可能性がある。
【００５５】
一例では、温度の安定化は、リング発振器周囲の局所的な温度が安定した値に達するまで、リング発振器を単に短時間作動させるだけでは、実現することができない。リング発振器をしばらく作動することによって、回路は安定した温度を達成するが、これらの温度値は、いくつかの異なる予測不可能な値のうちの１つになる可能性がある。その理由は、振動周波数が異なり、局所温度が異なると、多くの安定点（平衡）が存在するからである。例えば、特定のリング発振器は、５を上回る異なる安定した発振周波数を有することがある。
【００５６】
一例では、いくつかの異なる温度制御手法が可能である。例えば、加熱素子をリング発振器のすぐ隣に構築することができる。例えば、システムのクロック周波数に同期して多くのゲートを切り替え、リング発振器の起動時に停止することで、ヒーターは既知の制御可能な量の熱を発生させることができる。加熱ゲートは、それらのスイッチング点におけるわずかな遅れを確実にするために鎖状に配置することができるだろう。また、必要に応じて抵抗性負荷をオン及びオフに切り替えることも別の解決策となりうるが、この解決策は、標準的な集積回路構成要素ライブラリでは利用できない大型（分散）抵抗器などのアナログ構成要素を必要とする。
【００５７】
一例では、集積回路システムにおいて、ダイ上の発振器回路の局所温度が急速に変化すると、回路ノイズの影響は、このより強い影響によって隠される。そのため、リング発振器の位相ドリフトは、予測可能になる。起動時にリング発振器は、いくらかの熱を発生し、発振器回路の局部温度は、集積回路のダイ温度を上回るまで上昇する。この温度変化は、発振周波数に大きな変動を引き起こす。温度変化は、回路ノイズとはほとんど無関係である。
【００５８】
もう１つの問題は、リング発振器がいくつかの安定した周波数のうちの１つで起動できることである。生成されたエントロピー（物理的なランダム性）は、予測できない周波数に依存するが、これは局所的な加熱パターンの変動の結果である。製造の不確実性は、各リング発振器を異なるものにするので、セットのスタートアップ周波数は予測することができない。予測不可能な周波数は、個々の集積回路の長く高価な特性評価によってのみ測定することができる。予測不可能な起動問題は、リング発振器を起動することによって改善することはできず、所定のウォームアップ期間後にエントロピーを収集するのみであるが、これは、どのリング回路も、リング発振器の様々な安定した発振周波数に対応するいくつかの予測不可能な温度のうちの１つにウォームアップする可能性があるからである。
【００５９】
また、リング発振器の作動が長くなればなるほど、サイドチャネルでの情報漏洩が多くなる（例えば、電磁放射、容量結合又は誘導結合、電力使用の変動、出力ピンのノイズ）。発振信号に関する漏洩情報により、権限のない第三者が、その動作をモデル化し、位相ドリフト動作を予測することが可能になる。攻撃が成功すると、乱数（及び派生暗号鍵）の機密性が失われる可能性がある。
【００６０】
一例では、本開示に開示されているリング発振器２００を使用すると、既知の制御可能な量の熱を発生させることができ、したがって予測可能な回路温度を提供することができる。加熱モード中に予測不可能な発振周波数の問題を回避するために、リング発振器２００は、安定したクロック信号２１０に同期される。制御ロジック１０１は、安定したクロック信号２１０に同期するリング発振器２００を起動するように構成される。このとき周波数が固定されるので、発生した熱も固定される。１μｓのような、所定の一定時間後にリング発振器が安定するのに十分な時間を確保すると、クロック信号は除去される。この時点で、システム１００内の回路の局所温度は安定している。また、急激な温度変化ではなく、回路ノイズが、リング発振器の位相ドリフトに影響を与えることになる。更に、自走リング発振器は、そのパルスカウンタを使用して、値に真のランダム性を生成することになる。更に、自走発振についてのサイドチャネル漏洩は、最小限に維持されるが、これは、ここで安定した発振によって動作期間がより短くできるからである。
【００６１】
別の例では、リングベースの物理的複製不可能機能（ＰＵＦ）デバイスは、複数のリング発振器を含むことができる。ＰＵＦデバイスは、対の複数のリング発振器の間で周波数比較を実行することによって、コンピュータシステム１１０で使用されるチップＩＤ又はルート鍵の構成要素を生成することができる。ＰＵＦデバイスに関する主な問題は、複数のリング発振器がいくつかの安定しているが予測不可能な周波数のうちの１つで起動することである。予測不可能な周波数の周波数比較は信頼できない可能性があるため、ＰＵＦ値はランダムになる可能性がある。
【００６２】
ＰＵＦデバイスにおける上記予測不可能な起動問題は、リング発振器を起動することによって改善することができず、ウォームアップ期間後にエントロピーを収集するのみであるが、これは、リング回路が、ランダムな起動周波数に対応するいくつかの予測不可能な温度のうちの１つにウォームアップすることになるからである。また、リング発振器の作動が長くなればなるほど、サイドチャネルでの情報漏洩が多くなる（例えば、電磁放射、容量結合又は誘導結合、電力使用の変動、出力ピンのノイズ）。発振信号に関する漏洩情報は、権限のない第三者が周波数をマッピングできるようにし、個々のリング発振器へのターゲットとされた攻撃により、その攻撃は、ＰＵＦ値を発見することができる。攻撃が成功すると、ＰＵＦ値（及び派生暗号化ルート鍵）の機密性が失われる可能性がある。
【００６３】
一例では、本開示に開示されているリング発振器２００を使用すると、既知の制御可能な量の熱を発生させることができ、したがって予測可能な回路温度を提供することができる。加熱モード中に予測不可能な発振周波数の問題を回避するために、ＰＵＦデバイスは、安定したクロック信号２１０に同期している複数のリング発振器２００を含むことができる。制御ロジック１０１は、ＰＵＦデバイス内のリング発振器を起動するように構成され、リング発振器は、クロック信号２１０の安定したクロック周波数に同期する。１μｓのような所定の一定時間後にリング発振器が安定すると、例えばクロック信号を停止することなどにより、リング発振器の同期が停止される。この時点で、ＰＵＦデバイスについて、リング発振器回路の局所的温度は安定しており、製造上の違いにより、対のリング発振器の間に信頼性のある周波数関係が得られる。また、自走リング発振器は、所定の一定期間作動すると、それらに関連するパルスカウンタに一定の差を生じさせることになる。更に、自走発振に関するサイドチャネル漏洩は、不安定なウォームアップ期間がパルス計数に含まれる場合よりも短い非同期作動時間によって、最小に保たれる。
【００６４】
図４Ａは、様々な例示的実施態様による、リング発振器２００（すなわち、リング発振器１０２）を動作させる方法４００における様々なステップを示すフローチャートである。ブロック４０１において、方法は、所定のウォームアップ期間中にリング構成内で複数のロジックゲート２０１−２０４のうちの少なくとも１つの制御されたロジックゲート２０３のクロック入力２０５に供給されるリング有効信号とクロック信号２１０とによってリング発振器を起動することを含む。少なくとも１つの制御されたロジックゲートは、クロック信号を受信して、少なくとも１つの制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させる。ブロック４０２において、方法は、所定のウォームアップ期間の後、クロック信号がない状態でリング発振器を再起動し動作させることを含む。
【００６５】
いくつかの例では、方法４００は、図４Ｂに示されるようにセキュリティ用途のためにブロック４０２で複数のステップを含みうる。ブロック４０２１において、方法は、有効信号２０６を除去することによって、リング発振器２００を無効にすることを含む。ブロック４０２２で、方法は、クロック信号２１０を停止又は除去することを含む。ブロック４０２３において、方法は、所定の期間、待機することを含む。ブロック４０２４において、方法は、クロック信号がない状態で、自走（非同期）モードでリング発振器を再起動することを含む。ブロック４０２５で、方法は、所定の期間待機することを含む。ブロック４０２６において、方法は、出力信号のサンプルを取得すること、又はセキュリティ用途のための所望のデータ（例えば、真の乱数）を取得するために、発振周期をカウントするカウンタを読み取ることを含む。ブロック４０２６の後、方法は、必要に応じて、ブロック４０２３又は４０２５から繰り返すことができる。
【００６６】
このセクションは、限定することなく、一連の段落として提示された本開示のシステム及び方法の更なる態様及び特徴を記載し、それらのいくつか又はすべては、明確かつ効率的に英数字で指定されうる。
【００６７】
Ａ１．  複数のロジックゲートの最後のロジックゲートを除く各々の出力が、複数のロジックゲートの次の１つのロジックゲートのための入力として使用されるリング構成で結合された複数のロジックゲートであって、複数のロジックゲートの最後のロジックゲートの出力が、複数のロジックゲートの最初のロジックゲートの入力にフィードバックされ、最初のロジックゲートの入力として使用される、複数のロジックゲートを含むリング発振器を動作させる方法であって、リング構成内の複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲートのクロック入力に供給されたリング有効信号及びクロック信号によってリング発振器を起動することであって、少なくとも１つの制御されたロジックゲートが、少なくとも１つの制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるために、クロック信号を受信し、クロック信号が、所定のウォームアップ期間中にクロック入力に供給される、リング発振器を起動することと、その後に、クロック信号がない状態でリング発振器を再起動して動作させることとを含む方法。
Ａ２．  複数のロジックゲートが、リング構成で結合された奇数個の反転ロジックゲートを含み、かつ少なくとも１つの制御されたロジックゲートが、クロック信号が供給されるクロック入力である同期入力を有する、段落Ａ１に記載の方法。
Ａ３．  少なくとも１つの制御されたロジックゲートが、非反転入力と反転入力、及び少なくとも反転出力を有する差動バッファゲートを含み、非反転入力が、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、反転入力がクロック入力であり、反転出力が、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつリング発振器を起動することが、差動バッファゲートの反転入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む、段落Ａ１に記載の方法。
Ａ４．  少なくとも１つの制御されたロジックゲートが、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合された入力と、リング構成における反転ロジックゲートのうちの次の１つのロジックゲートの入力に結合された反転出力と、クロック入力であるゲート有効入力とを有するトライステートインバータを含み、かつリング発振器を起動することが、トライステートインバータの有効入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む、段落Ａ１に記載の方法。
Ａ５．  少なくとも１つの制御されたロジックゲートが、データ入力と有効入力、及び少なくとも反転出力を有するゲート付きＤラッチを含み、データ入力が、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、有効入力がクロック入力であり、反転出力が、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつリング発振器を起動することが、ゲート付きＤラッチの有効入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む、段落Ａ１に記載の方法。
Ａ６．  少なくとも１つの制御されたロジックゲートが、リング構成における複数のロジックゲートのうちの連続するロジックゲート間に結合され、かつ第１の入力と第２の入力、セレクタ入力と出力を有する２：１マルチプレクサを含み、第１の入力が、リング構成における連続するロジックゲートのうちの早い方の１つの出力に結合され、セレクタ入力がクロック入力であり、出力は、両方ともリング構成の連続するロジックゲートのうちの後の方の１つのための入力に結合され、フィードバックされて２：１マルチプレクサの第２の入力に結合され、かつリング発振器を起動することが、２：１マルチプレクサのセレクタ入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動することを含む、段落Ａ１に記載の方法。
Ａ７．  複数のロジックゲートの各々が、リング発振器内の信号伝搬においてゲート遅延を引き起こし、リング発振器を起動することが、リング有効信号と、ゲート遅延又はゲート遅延の倍数であるパルス幅を有する周期的なパルス列を含むクロック信号とによって、リング発振器を起動することを含む、段落Ａ１に記載の方法。
Ａ８．  クロック信号がクロック周波数を有し、リング発振器を再起動し動作させることが、クロック周波数又はクロック周波数の倍数である周波数でリング発振器を再起動し動作させることを含む、段落Ａ１に記載の方法。
Ａ９．  少なくとも１つの制御されたロジックゲートが、複数の制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるために、クロック信号を受信するそれぞれのクロック入力を各々が含む複数の制御されたロジックゲートである、段落Ａ１に記載の方法。
Ｂ１０．  コンピュータシステムにおいてセキュリティを提供するためのシステムであって、複数のロジックゲートの最後のロジックゲートを除く各々の出力が、複数のロジックゲートの次の１つのロジックゲートのための入力として使用されるリング構成で結合された複数のロジックゲートであって、複数のロジックゲートの最後のロジックゲートの出力が、複数のロジックゲートの最初のロジックゲートの入力にフィードバックされ、最初のロジックゲートの入力として使用される、複数のロジックゲートを含むリング発振器を含み、また少なくとも：リング構成内の複数のロジックゲートのうちの少なくとも１つの制御されたロジックゲートのクロック入力に供給されたリング有効信号及びクロック信号によってリング発振器を起動することであって、少なくとも１つの制御されたロジックゲートが、少なくとも１つの制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるために、クロック信号を受信し、クロック信号が、所定のウォームアップ期間中にクロック入力に供給される、リング発振器を起動し；その後に、クロック信号がない状態でリング発振器を再起動して動作させるように構成された１つ又は複数のロジック回路を含むシステム。
Ｂ１１．  複数のロジックゲートが、リング構成で結合された奇数個の反転ロジックゲートを含み、かつ少なくとも１つの制御されたロジックゲートが、クロック信号が供給されるクロック入力である同期入力を有する、段落Ｂ１０に記載のシステム。
Ｂ１２．  少なくとも１つの制御されたロジックゲートが、非反転入力と反転入力、及び少なくとも反転出力を有する差動バッファゲートを含み、非反転入力が、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、反転入力がクロック入力であり、反転出力が、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、リング発振器を起動するように構成されている１つ又は複数のロジック回路が、リング有効信号と差動バッファゲートの反転入力に供給されるクロック信号とによって、リング発振器を起動するように構成されていることを含む、段落Ｂ１０に記載のシステム。
Ｂ１３．  少なくとも１つの制御されたロジックゲートが、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合された入力と、リング構成における反転ロジックゲートのうちの次の１つのロジックゲートの入力に結合された反転出力と、クロック入力であるゲート有効入力とを有するトライステートインバータを含み、かつリング発振器を起動するように構成されている１つ又は複数のロジック回路が、リング有効信号と、トライステートインバータの有効入力に供給されるクロック信号とによって、リング発振器を起動するように構成されていることを含む、段落Ｂ１０に記載のシステム。
Ｂ１４．  少なくとも１つの制御されたロジックゲートが、データ入力と有効入力、及び少なくとも反転出力を有するゲート付きＤラッチを含み、データ入力が、リング構成における複数のロジックゲートのうちの前の１つのロジックゲートの出力に結合され、有効入力がクロック入力であり、反転出力が、リング構成における複数のロジックゲートのうちの次の１つのロジックゲートのための入力に結合され、かつ、リング発振器を起動するように構成されている１つ又は複数のロジック回路が、ゲート付きＤラッチの有効入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動するように構成されていることを含む、段落Ｂ１０に記載のシステム。
Ｂ１５．  少なくとも１つの制御されたロジックゲートが、リング構成における複数のロジックゲートのうちの連続するロジックゲート間に結合され、かつ第１の入力と第２の入力、セレクタ入力と出力を有する２：１マルチプレクサを含み、第１の入力が、リング構成における連続するロジックゲートのうちの早い方の１つの出力に結合され、セレクタ入力がクロック入力であり、出力は、両方ともリング構成の連続するロジックゲートのうちの後の方の１つのための入力に結合され、フィードバックされて２：１マルチプレクサの第２の入力に結合され、かつ、リング発振器を起動するように構成されている１つ又は複数のロジック回路が、２：１マルチプレクサのセレクタ入力に供給されるリング有効信号とクロック信号とによって、リング発振器を起動するように構成されていることを含む、段落Ｂ１０に記載のシステム。
Ｂ１６．  複数のロジックゲートの各々が、リング発振器内の信号伝搬においてゲート遅延を引き起こし、リング発振器を起動するように構成されている１つ又は複数のロジック回路が、リング有効信号と、ゲート遅延又はゲート遅延の倍数であるパルス幅を有する周期的なパルス列を含むクロック信号とによって、リング発振器を起動するように構成されることを含む、段落Ｂ１０に記載のシステム。
Ｂ１７．  クロック信号がクロック周波数を有し、リング発振器を再起動し動作させるように構成されている１つ又は複数のロジック回路が、クロック周波数又はクロック周波数の倍数である周波数でリング発振器を再起動し動作させるように構成されることを含む、段落Ｂ１０に記載のシステム。
Ｂ１８．  少なくとも１つの制御されたロジックゲートが、複数の制御されたロジックゲートを制御し、それによってリング発振器をクロック信号に同期させるために、クロック信号を受信するように構成されたそれぞれのクロック入力を各々が含む複数の制御されたロジックゲートである、段落Ｂ１０に記載のシステム。
【００６８】
上述の説明及び添付図面において提示されている教示の恩恵を受ける、本開示に関連する当業者には、本明細書に明記された本開示の多数の修正例及びその他の実施形態が想起されよう。従って、本開示は開示された特定の実施態様に限定されず、修正例及び他の実施態様は付随する特許請求の範囲の中に含まれることが意図されているものと理解すべきである。更に、上述の説明及び添付図面は、要素及び／又は機能の特定の例示的な組み合わせに照らして例示的な実施態様を説明しているが、付随する特許請求の範囲から逸脱せずに、代替的な実施態様によって、要素及び／又は機能の様々な組み合わせが提供されうることを理解すべきである。つまり、付随する特許請求の範囲の一部に明記されうるように、例えば、明示的に上述されているものとは異なる要素及び／又は機能の組み合わせも想定される。本明細書では特定の用語が用いられているが、それらは、一般的な、及び説明的な意味でのみ使用されており、限定を目的とするものではない。
【図１】
2019146159.tif 000005
【図２】
2019146159.tif 000006
【図３Ａ】
2019146159.tif 000007
【図３Ｂ】
2019146159.tif 000008
【図３Ｃ】
2019146159.tif 000009
【図３Ｄ】
2019146159.tif 000010
【図４】
2019146159.tif 000011
【外国語明細書】
2019146159000001.pdf
2019146159000002.pdf
2019146159000003.pdf
2019146159000004.pdf