IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ザ・ボーイング・カンパニーの特許一覧

<>
  • 特許-同期可能なリング発振器 図1
  • 特許-同期可能なリング発振器 図2A
  • 特許-同期可能なリング発振器 図2B
  • 特許-同期可能なリング発振器 図2C
  • 特許-同期可能なリング発振器 図2D
  • 特許-同期可能なリング発振器 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-07
(45)【発行日】2024-03-15
(54)【発明の名称】同期可能なリング発振器
(51)【国際特許分類】
   H03K 3/03 20060101AFI20240308BHJP
   H03K 3/354 20060101ALI20240308BHJP
【FI】
H03K3/03
H03K3/354 B
【請求項の数】 14
【外国語出願】
(21)【出願番号】P 2018238584
(22)【出願日】2018-12-20
(65)【公開番号】P2019154023
(43)【公開日】2019-09-12
【審査請求日】2021-12-15
(31)【優先権主張番号】15/853,171
(32)【優先日】2017-12-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】500520743
【氏名又は名称】ザ・ボーイング・カンパニー
【氏名又は名称原語表記】The Boeing Company
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】ハース, ラースロー
【審査官】及川 尚人
(56)【参考文献】
【文献】米国特許出願公開第2017/0117907(US,A1)
【文献】特開2011-199590(JP,A)
【文献】特開2015-220614(JP,A)
【文献】米国特許出願公開第2015/0097629(US,A1)
【文献】特開2017-092940(JP,A)
【文献】米国特許出願公開第2004/0070459(US,A1)
【文献】米国特許出願公開第2012/0286883(US,A1)
【文献】特開2014-039262(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H03K 3/00-3/86
(57)【特許請求の範囲】
【請求項1】
リング構成で接続された複数の論理ゲートを備えるリング発振器であって、
前記複数の論理ゲートの最後の1つを除いた各々の出力は前記複数の論理ゲートの次の1つへの入力として使用され、前記複数の論理ゲートの最後の1つの出力はフィードバックされて、前記複数の論理ゲートの最初の1つへの入力として使用され、前記複数の論理ゲートの1つの論理ゲートは、前記論理ゲートを有効にし、またそれによって前記リング発振器を有効にするイネーブル信号を受信するように構成されたイネーブル入力を含み、
前記複数の論理ゲートは、少なくとも1つの制御された論理ゲートを制御するためにバッファのツリー構造を利用して前記少なくとも1つの制御された論理ゲートに同時に到達するクロック信号を受信するように構成されたクロック入力を含む、該少なくとも1つの制御された論理ゲートを含み、これによって前記リング発振器を前記クロック信号に同期させ、
前記複数の論理ゲートの各々は、前記リング発振器内の信号伝播のゲート遅延を引き起こし、前記クロック信号は、前記少なくとも1つの制御された論理ゲートによって引き起こされる前記ゲート遅延と同じ、又は該ゲート遅延の倍数となるパルス幅を有する周期的なパルス列を含む、リング発振器。
【請求項2】
前記複数の論理ゲートは、前記リング構成で接続された奇数個の反転論理ゲートを含む、請求項1に記載のリング発振器。
【請求項3】
前記少なくとも1つの制御された論理ゲートは、非反転入力と反転入力、及び少なくとも1つの反転出力を有する差動バッファゲートを含み、前記非反転入力は、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続されており、前記反転入力は前記クロック入力であり、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続される、請求項1又は2に記載のリング発振器。
【請求項4】
前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続された入力と、前記リング構成にある前記複数の論理ゲートの次の1つの入力に接続された反転出力とを有するトライステートインバータを含む、請求項1又は2に記載のリング発振器。
【請求項5】
前記少なくとも1つの制御された論理ゲートは、データ入力及び少なくとも1つの反転出力を有するゲーテッドDラッチを含み、前記データ入力は前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続され、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続される、請求項1又は2に記載のリング発振器。
【請求項6】
前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの連続する論理ゲート間に接続された2:1マルチプレクサを含み、前記2:1マルチプレクサは、第1の入力と第2の入力、セレクタ入力と出力を有し、前記第1の入力は前記リング構成にある前記連続する論理ゲートの前の1つへの出力に接続され、前記セレクタ入力は前記クロック入力であり、前記出力は、前記リング構成にある前記連続する論理ゲートの後の1つの入力に接続されると共に、フィードバックされて、前記2:1マルチプレクサの前記第2の入力に接続される、請求項1又は2に記載のリング発振器。
【請求項7】
前記クロック信号はクロック周波数を有し、前記リング発振器は、前記クロック周波数と同じ、又は前記クロック周波数の倍数となる周波数で発振するように構成される、請求項1から6のいずれか一項に記載のリング発振器。
【請求項8】
前記少なくとも1つの制御された論理ゲートは、複数の制御された論理ゲートであり、該複数の制御された論理ゲートの各々が、前記複数の制御された論理ゲートを制御する前記クロック信号を受信し、それによって前記リング発振器を前記クロック信号に同期させるように構成された各々のクロック入力を含む、請求項1から7のいずれか一項に記載のリング発振器。
【請求項9】
請求項1に記載のリング発振器の同期化の方法であって、
前記リング発振器の複数の論理ゲートの1つの論理ゲートのイネーブル入力でイネーブル信号を受信することであって、前記複数の論理ゲートは、前記複数の論理ゲートの最後の1つを除いた各々の出力が前記複数の論理ゲートの次の1つへの入力として使用されるリング構成で接続され、前記複数の論理ゲートの最後の1つの出力はフィードバックされて、前記複数の論理ゲートの最初の1つへの入力として使用され、前記イネーブル信号は前記論理ゲートを有効にし、また、それによってリング発振器を有効にする、イネーブル信号を受信することと、
前記複数の論理ゲートの少なくとも1つの制御された論理ゲートのクロック入力で、クロック信号を受信することと、
前記少なくとも1つの制御された論理ゲートを制御する前記クロック信号を使用し、それによって前記リング発振器を前記クロック信号に同期させることと、
を含み、
前記複数の論理ゲートの各々は、前記リング発振器内の信号伝播のゲート遅延を引き起こし、前記クロック信号は、前記少なくとも1つの制御された論理ゲートによって引き起こされる前記ゲート遅延と同じ、又は該ゲート遅延の倍数となるパルス幅を有する周期的なパルス列を含む、方法。
【請求項10】
前記複数の論理ゲートは、リング構成で接続された奇数個の反転論理ゲートを含む、請求項9に記載の方法。
【請求項11】
前記少なくとも1つの制御された論理ゲートは、非反転入力と反転入力、及び少なくとも1つの反転出力を有する差動バッファゲートを含み、前記非反転入力は、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続されており、前記反転入力は前記クロック入力であり、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続され、前記クロック信号を受信することは、前記反転入力で前記クロック信号を受信することを含む、請求項9に記載の方法。
【請求項12】
前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続された入力と、前記リング構成にある前記複数の論理ゲートの次の1つの入力に接続された反転出力とを有するトライステートインバータを含む、請求項9に記載の方法。
【請求項13】
前記少なくとも1つの制御された論理ゲートは、データ入力及び少なくとも1つの反転出力を有するゲーテッドDラッチを含み、前記データ入力は、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続されており、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続される、請求項9に記載の方法。
【請求項14】
前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの連続する論理ゲート間に接続された2:1マルチプレクサを含み、前記2:1マルチプレクサは、第1の入力と第2の入力、セレクタ入力と出力を有し、前記第1の入力は前記リング構成にある前記連続する論理ゲートの前の1つの出力に接続され、前記セレクタ入力は前記クロック入力であり、前記出力は、前記リング構成にある前記連続する論理ゲートの後の1つの入力に接続されると共に、フィードバックされて、前記2:1マルチプレクサの前記第2の入力に接続され、前記クロック信号を受信することは、前記セレクタ入力で前記クロック信号を受信することを含む、請求項9に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は概して同期可能なリング発振器に関し、具体的には標準的な論理ゲートで構築された同期可能なリング発振器に関する。
【背景技術】
【0002】
リング発振器は、ループ内に接続された、すなわち、リング構成で接続された論理ゲート又はアナログ増幅器を含む。1つのエレメントの出力は次の入力に接続される。奇数個のこれらの構成要素は入力信号を反転する。リング発振器は電子機器で多数の用途があり、情報セキュリティで使用される真の乱数を生成するためのエントロピー源として使用することができる。同期可能なリング発振器は、情報セキュリティアプリケーションに幾つかの利点をもたらす。例えば、同期可能なリング発振器は、リング発振器を固定クロック周波数に同期させるとき、リング発振器を短い周期で動作させることによって、安定した始動条件を保証する。このようにして、リング発振器は、情報セキュリティの点でリング発振器を正しく動作させるのに必要な、予測可能な始動条件を保証する既知の量の熱を生成する。リング発振器が同期された後は、通常(非同期)動作モードでの短い自走発振時間(shorter free running oscillation times)によって、サイドチャネル漏洩及び干渉インジェクション感度は大幅に低減されうる。短い自走発振時間はまた、情報セキュリティアプリケーションの応答時間及びスループットを改善する。
【0003】
リング発振器を同期させる既存のソリューションの1つは、リング発振器で演算増幅器を使用し、クロック信号から得られた狭いパルスを用いて演算増幅器の非反転入力をドライブすることである。別の既存のソリューションは、リングゲートの入力トランジスタの接地ラインを、同期信号のパルスが送り込まれる導線に接続する。しかしながら、これらの既存のソリューションはいずれも、チップと称される集積回路内の標準的なデジタル設計ツールで配置することができない。
【0004】
したがって、上記の問題点のうちの少なくとも幾つかと、起こりうる他の問題点を考慮した、方法及び装置を手に入れることが望ましいであろう。
【発明の概要】
【0005】
本開示の例示的な実装は、集積回路製造プロセスの標準的な構成要素ライブラリで利用可能な標準的な論理ゲートによって構築される、同期可能なリング発振器を対象としている。既存のソリューションとは対照的に、例示的な実装は、より正確で、より安定的で、消費電力が少なく、低コストで挙動が十分によくわかっている同期可能なリング発振器を提供する。
【0006】
したがって、本開示は、下記の例示的な実行形態を含むが、それらに限定されるわけではない。
【0007】
幾つかの例示的な実装は、リング発振器を提供する。本開示に関係するリング発振器は、リング構成で接続された複数の論理ゲートを含み、複数の論理ゲートの最後の1つを除いた各々の出力が、複数の論理ゲートの次の1つへの入力として使用され、複数の論理ゲートの最後の1つの出力はフィードバックされ、複数の論理ゲートの最初の1つへの入力として使用される。複数の論理ゲートは、少なくとも1つの制御された論理ゲートを制御するためのクロック信号を受信するように構成されたクロック入力も含む、少なくとも1つの制御された論理ゲートを含み、これによってリング発振器をクロック信号に同期させる。複数の論理ゲートのうちの1つの論理ゲートは、論理ゲート及びそれによってリング発振器を有効にするイネーブル信号を受信するように構成されたイネーブル入力を含む。
【0008】
前述の任意の例示的な実装、或いは前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、複数の論理ゲートはリング構成で接続された奇数個の反転論理ゲートを含み、少なくとも1つの制御された論理ゲートは、クロック信号を受信するように構成されたクロック入力であるイネーブル入力を有する。
【0009】
前述の任意の例示的な実装、或いは前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、少なくとも1つの制御された論理ゲートは、非反転入力と反転入力、並びに少なくとも1つの反転出力を有する差動バッファゲートを含み、非反転入力は、リング構成にある複数の論理ゲートの前の1つの出力に接続されており、反転入力はクロック入力であり、また、反転出力はリング構成にある複数の論理ゲートの次の1つへの入力に接続される。
【0010】
前述の任意の例示的な実装、或いは前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、少なくとも1つの制御された論理ゲートは、リング構成にある複数の論理ゲートの前の1つの出力に接続された入力と、リング構成にある複数の論理ゲートの次の1つの入力に接続された反転出力と、クロック入力であるイネーブル入力とを有するトライステートインバータを含む。
【0011】
前述の任意の例示的な実装、又は前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、少なくとも1つの制御された論理ゲートは、データ入力とイネーブル入力、及び少なくとも1つの反転出力を有するゲーテッドDラッチを含み、データ入力は、リング構成にある複数の論理ゲートの前の1つの出力に接続され、イネーブル入力はクロック入力であり、反転出力はリング構成にある複数の論理ゲートの次の1つの入力に接続される。
【0012】
前述の任意の例示的な実装、又は前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、少なくとも1つの制御された論理ゲートは、リング構成にある複数の論理ゲートの連続する論理ゲート間に接続された2:1マルチプレクサであって、第1の入力及び第2の入力、セレクタ入力及び出力を有する2:1マルチプレクサを含み、第1の入力はリング構成にある連続する論理ゲートの前の1つの出力に接続され、セレクタ入力はクロック入力であって、出力はリング構成にある連続する論理ゲートの後の1つの入力に接続されると共に、フィードバックされ、2:1マルチプレクサの第2の入力に接続される。
【0013】
前述の任意の例示的な実装、又は前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、複数の論理ゲートの各々は、リング発振器内の信号伝播のゲート遅延を引き起こし、クロック信号は、少なくとも1つの制御された論理ゲートによって引き起こされるゲート遅延と同じ、又はゲート遅延の倍数となるパルス幅を有する周期的なパルス列を含む。
【0014】
前述の任意の例示的な実装、又は前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、クロック信号はクロック周波数を有し、リング発振器は、クロック周波数と同じ、又はクロック周波数の倍数となる周波数で発振するように構成される。
【0015】
前述の任意の例示的な実装、又は前述の例示的な実装の任意の組み合わせのリング発振器の幾つかの例示的な実装では、少なくとも1つの制御された論理ゲートは、その各々が、複数の制御された論理ゲートを制御するクロック信号を受信し、それによってリング発振器をクロック信号に同期させるように構成された各クロック入力を含む、複数の制御された論理ゲートである。
【0016】
幾つかの例示的な実装は、リング発振器を同期する方法を提供する。本方法は、リング発振器の複数の論理ゲートの1つの論理ゲートのイネーブル入力でイネーブル信号を受信することであって、複数の論理ゲートは、複数の論理ゲートの最後の1つを除いて、それぞれの出力が複数の論理ゲートの次の1つへの入力として使用されるリング構成で接続され、複数の論理ゲートの最後の1つの出力はフィードバックされ、複数の論理ゲートの最初の1つへの入力として使用され、イネーブル信号は論理ゲートを有効にし、また、それによってリング発振器を有効にする、イネーブル信号を受信することと、複数の論理ゲートの少なくとも1つの制御された論理ゲートのクロック入力で、クロック信号を受信することと、少なくとも1つの制御された論理ゲートを制御するクロック信号を使用し、それによってリング発振器をクロック信号に同期させることと、を含む。
【0017】
本開示の上記の特徴、態様、及び利点、及びその他の特徴、態様、及び利点は、下記の詳細説明と共に、簡潔に後述する添付図面を参照することで明らかになろう。本開示は、本書に記載の特定の例示的な実装において本開示に明記する2つ、3つ、4つ、又はそれよりも多くの特徴又は要素が明示的に組み合わされている、あるいは列挙されているか否かにかかわらず、上記特徴又は要素の任意の組み合わせを含む。本開示は、本開示のいかなる分離可能な特徴又は要素も、本開示の文脈がそうでないことを明確に指示しない限り、その態様及び例示的な実装のいずれにおいても組合せ可能であることが、意図されるように、全体論的に読むべきものである。
【0018】
したがって、この「発明の概要」は、本開示の幾つかの態様の基本的な理解を提供するために、幾つかの例示的な実装を要約することのみを目的に提供されていると理解されたい。したがって、上述の例示的な実装は例に過ぎず、いかなる意味においても、本開示の範囲又は本質を狭めると解釈すべきではないことを理解されたい。その他の例示的な実装、態様、及び利点は、添付図面と併せて下記の詳細説明を参照することで明らかになろう。添付図面は、例を用いて、記載されているいくつかの例示的な実装の原理を示すものである。
【0019】
上述のように、本開示の例示的な実装を一般的な用語で説明したが、ここでは添付図面を参照する。これらの図面は必ずしも正確な縮尺で描かれているわけではない。
【図面の簡単な説明】
【0020】
図1】本開示の例示的な実装による同期可能なリング発振器を示している。
図2A】様々な例示的な実装による、リング発振器の同期に使用される論理ゲートを示している。
図2B】様々な例示的な実装による、リング発振器の同期に使用される論理ゲートを示している。
図2C】様々な例示的な実装による、リング発振器の同期に使用される論理ゲートを示している。
図2D】様々な例示的な実装による、リング発振器の同期に使用される論理ゲートを示している。
図3】様々な例示的な実装による、リング発振器の同期の方法の様々なステップを示している。
【発明を実施するための形態】
【0021】
本開示の幾つかの実装を、添付図面を参照してこれより下記で更に詳しく説明するが、添付図面には、本開示の実装のすべてではなく一部しか示されていない。実際のところ、本開示の様々な実装は、多くの異なる形態で具現化されてよく、本書に明記されている実装に限定されると解釈すべきではない。むしろ、これらの例示的な実装は、本開示が包括的かつ完全なものになるように、かつ、当業者に本開示の範囲が十分に伝わるように提供されている。例えば、特に明記されない限り、「第1の」、「第2の」などの言及は、特定の順序を意味するものと解釈されるべきではない。また、(特に明記されない限り)何か別のものの上にあると説明されうるものは、その代わりに下にあることもあり、逆もまた然りである。同様に、何か別の物の左にあると説明されうる物は、その代わりに右にあることもあり、逆もまた然りである。全体を通して、類似の参照番号は類似の要素を表している。
【0022】
本開示の例示的な実装は概して、同期可能なリング発振器を対象としており、具体的には、標準的な論理ゲートを備える同期可能なリング発振器を対象としている。リング発振器は、情報セキュリティで使用される乱数を生成するエントロピー源として使用されうる。例えば、リング発振器の出力は、所定の時間だけ発振周期をカウントすることによって、エントロピー値又は真の乱数を生成するため、カウンタに送られる。幾つかのアプリケーションでは、生成された真の乱数は、コンピュータシステムの安全なアプリケーションで使用される暗号化キーを生成するため、疑似乱数発生器用のシードとして使用されうる。他のアプリケーションとして、リングベースの物理的に複製困難な関数(PUF)装置、又は予測可能な周波数の信号生成が含まれる。
【0023】
図1は、本開示の例示的な実装による、同期可能なリング発振器100を示している。幾つかの実施例では、リング発振器は、図示したような論理ゲート101~104などのリング構成で接続された複数の論理ゲートを含む。リング構成では、複数の論理ゲートの最後の1つを除いて、それぞれの出力が複数の論理ゲートの次の1つへの入力として使用される。例えば、図示したように、論理ゲート101の出力は、論理ゲート102への入力として使用され、論理ゲート102の出力は論理ゲート103への入力として使用される。また、リング構成では、複数の論理ゲートの最後の1つの出力はフィードバックされ、複数の論理ゲートの最初の1つへの入力として使用される。例えば、直列に連なる最後の論理ゲート104の出力はフィードバックされ、直列に連なる第1の論理ゲート101への入力として使用される。
【0024】
幾つかの実施例では、複数の論理ゲートの1つの論理ゲートは、論理ゲート及びそれによってリング発振器を有効にするイネーブル信号を受信するように構成されたイネーブル入力を含む。例えば、リング発振器の第1の論理ゲート、例えば、論理ゲート101はまた、リング発振器の発振を始動及び停止するイネーブル信号を受信するイネーブル入力106を有する。イネーブル入力は、NAND又はNORゲート、或いはリング発振器の論理ゲートの中のラッチを、発振の始動又は停止を行う入力と共に使用することなど、当該技術分野の任意の手段によって、発振器を始動又は停止することができる。イネーブル信号は、論理ゲート101~104のいずれかに提供されうる。
【0025】
幾つかの実施例では、複数の論理ゲートは少なくとも1つの制御された論理ゲートを含む。少なくとも1つの制御された論理ゲートは、少なくとも1つの制御された論理ゲートを制御するためのクロック信号を受信するように構成されたクロック入力を含み、これによってリング発振器をクロック信号に同期させる。例えば、図示したように、少なくとも1つの制御された論理ゲートは論理ゲート103になりうる。論理ゲート103は、論理ゲートを制御するためのクロック信号110を受信するように構成されたクロック入力105を含み、これによってリング発振器100をクロック信号に同期させる。別の実施例では、少なくとも1つの制御された論理ゲートは、異なる論理ゲート、例えば、論理ゲート101又は102になりうる。
【0026】
一実施例では、クロック信号110は狭いクロックパルスになりうる。クロック信号が論理レベル1のとき、クロック信号は、少なくとも1つの制御された論理ゲート、例えば、論理ゲート103の出力の変化をブロックしうる。これとは反対に、クロック信号が論理レベル0のときには、制御された論理ゲートの出力はクロック信号に影響されない。
【0027】
一実施例では、論理レベル1のクロック信号110が制御された論理ゲート103の入力に到達したとき、クロック信号が論理レベル1である全期間中に、制御された論理ゲートが切り替わらないと、クロック信号は制御された論理ゲートの出力に影響を及ぼさない。これは、制御された論理ゲートが切り替わらない場合、ブロックされるべき出力の変化が存在しないからである。
【0028】
これとは反対に、クロック信号110が論理レベル1である全期間中に、制御された論理ゲート103が切り替わると、制御された論理ゲートの出力の対応する変化はブロックされる。すなわち、次の論理ゲート、例えば、論理ゲート104に進む信号は前のレベルに保持される。クロック信号が論理レベル1から論理レベル0に変化したときのみ、制御された論理ゲートの出力はリング内の次の論理ゲートに到達することができる。このようにして、制御された論理ゲートの出力は、クロック信号の立ち下がりエッジ(論理レベル1から論理レベル0への変化)に同期される。別の実施例では、制御された論理ゲートの出力は、クロック信号の立ち上がりエッジ(論理レベル0から論理レベル1への変化)に同期されうる。
【0029】
幾つかの実施例では、複数の論理ゲートは、リング構成で接続された奇数個の反転論理ゲートを含む。例えば、論理ゲート101は、反転論理ゲート、例えば、インバータになりうる。別の実施例では、論理ゲート101、120及び103は反転論理ゲートになりうる。少なくとも1つの制御された論理ゲート、例えば、論理ゲート103は、クロック信号110を受信するように構成されたクロック入力105であるイネーブル入力を有する。少なくとも1つの制御された論理ゲートは、反転論理ゲートであることもあれば、そうでないこともある。一実施例では、制御された論理ゲートの出力及び/又は一又は複数の入力は、反転から非反転に、或いはその逆に修正されうる。リング発振器100は、リング発振器内に奇数個の反転論理ゲートがある限り、正常に動作しうる。
【0030】
幾つかの実施例では、少なくとも1つの制御された論理ゲート、例えば、論理ゲート103は、(図2Aに示したように)非反転入力と反転入力、及び少なくとも1つの反転出力を有する差動バッファゲートを含む。非反転入力は、リング構成にある複数の論理ゲートの前の1つの出力、例えば、論理ゲート102の出力に接続される。反転入力はクロック入力105である。反転出力は、リング構成にある複数の論理ゲートの次の1つへの入力、例えば、論理ゲート104の入力に接続される。
【0031】
幾つかの実施例では、少なくとも1つの制御された論理ゲート、例えば、論理ゲート103は、(図2Bに示したように)トライステートインバータを含む。トライステートインバータは、リング構成にある複数の論理ゲートの前の1つの出力に接続された入力を有する。トライステートインバータはまた、リング構成にある複数の論理ゲートの次の1つの入力に接続された反転出力、及びクロック入力105であるイネーブル入力を有する。
【0032】
幾つかの実施例では、少なくとも1つの制御された論理ゲート、例えば、論理ゲート103は、(図2Cに示したように)ゲーテッドDラッチを含む。ゲーテッドDラッチは、データ入力とイネーブル入力、及び少なくとも1つの反転出力を有する。データ入力は、リング構成にある複数の論理ゲートの前の1つの出力に接続される。イネーブル入力はクロック入力105である。反転出力は、リング構成にある複数の論理ゲートの次の1つへの入力に接続される。
【0033】
幾つかの実施例では、少なくとも1つの制御された論理ゲート、例えば、論理ゲート103は、(図2Dに示したように)リング構成にある複数の論理ゲートの連続する論理ゲートの間に接続された2:1マルチプレクサを含む。例えば、2:1マルチプレクサは、論理ゲート103の一部であってよく、或いは連続する論理ゲート103と104の間に挿入されうる。2:1マルチプレクサは、第1の入力及び第2の入力、セレクタ入力及び出力を有する。第1の入力は、リング構成にある連続する論理ゲートの前の1つの出力、例えば、論理ゲート103の出力に接続される。セレクタ入力はクロック入力である。出力は、リング構成にある連続する論理ゲートの後の1つへの入力、例えば、論理ゲート104の入力に接続される。出力はまた、フィードバックされ、2:1マルチプレクサの第2の入力に接続される。
【0034】
幾つかの実施例では、複数の論理ゲートの各々は、リング発振器100内の信号伝播のゲート遅延を引き起こす。クロック信号110は、少なくとも1つの制御された論理ゲート、例えば、論理ゲート103によって引き起こされるゲート遅延と同じ、又はゲート遅延の倍数となるパルス幅を有する周期的なパルス列を含む。一実施例では、制御された論理ゲート103が通常の反転論理ゲートである場合には、クロック信号のバルス幅は反転論理ゲートの遅延に等しくなりうる。別の実施例では、制御された論理ゲート103が非常に高速な反転論理ゲートである場合には、クロック信号のパルス幅は、非常に高速な反転論理ゲートの遅延の2~3倍になりうる。同期では、リング発振器の発振信号のわずかなパルス幅の位相変調があり、これはクロック信号のパルス幅以下になる。
【0035】
幾つかの実施例では、クロック信号110はクロック周波数を有し、リング発振器100は、クロック周波数又はクロック周波数の倍数に等しい周波数で発振するように構成される。リング発振器の自走発振周波数は技術的な限界によって制約される。例えば、リング発振器の発振周波数は、32nmシリコンオンインシュレータ(SOI)技術のクロック信号のクロック周波数の1、2、…、40倍に制限されうる。他のチップ製造技術は、わずかに異なる最大許容発振周波数を必要とする。別の実施例では、あらゆる種類の環境条件での固定周波数によって、クロック信号に連結された周波数の信号を生成することが目標の場合には、リング発振器は、クロック信号のクロック周波数のせいぜい4倍など、大幅に低い自走周波数で設計されうる。
【0036】
幾つかの実施例では、少なくとも1つの制御された論理ゲートは、その各々が、複数の制御された論理ゲートを制御するクロック信号110を受信し、それによってリング発振器100をクロック信号に同期させるように構成された各クロック入力105を含む、複数の制御された論理ゲートである。例えば、複数の又はすべての論理ゲート101~104は、クロック入力を含み、クロック信号を受信しうる。一実施例では、クロック信号は、リング発振器の複数の論理ゲートに同時に到達することが必要になる。これを実現するため、クロック信号は、バッファのツリー構造を利用して複数の論理ゲートに分散されうる。この実施例では、このツリーは各ターミナルノード、すなわち、複数の論理ゲートの各々で一様でなければならないが、このツリーの遅延に関してそれ以外の要件はない。
【0037】
図2A図2B図2C及び図2Dは、様々な例示的な実装により、リング発振器100の同期に使用される制御された論理ゲート103を示している。
【0038】
幾つかの実施例では、制御された論理ゲート103は、図2Aに示したように、差動バッファゲート200を含む。これらの実施例では、差動バッファゲートは反転論理ゲートである。差動バッファゲートは、非反転入力201と反転入力202、非反転出力203と反転出力204を含む。非反転入力は、リング内の複数の論理ゲートの前の1つの出力、例えば、論理ゲート102の出力に接続される。反転入力はクロック信号110を受信するクロック入力105である。非反転出力はフローティングになりうる。反転出力は、複数の論理ゲートの次の1つへの入力、例えば、論理ゲート104の入力に接続される。別の実施例では、差動バッファゲートは非反転出力を有さない。
【0039】
一実施例では、反転入力202で受信したクロック信号110が論理レベル1であるか、供給電圧に近い場合には、次の論理ゲート104は、差動バッファゲート200の反転出力204のいかなる変化にも反応しない。反転入力で受信したクロック信号が論理レベル0であるか、接地に近い電圧レベルにある場合には、リング発振器100は正常に機能する。したがって、差動バッファゲート200の反転入力をショートパルスのクロック信号に接続することによって、リング発振器をクロック信号の立ち下がりエッジに同期させる。この実施例では、クロックパルスに最も近くなるように切り替わりうる一又は複数の論理ゲート(制御された論理ゲートではない可能性あり)に、余分の同期遅延が導入される。リング発振器の他の論理ゲートは影響されないことがある。
【0040】
幾つかの実施例では、制御された論理ゲート103は、図2Bに示したように、トライステートインバータ210を含む。これらの実施例では、トライステートインバータは、リング内の複数の論理ゲートの前の1つの出力、例えば、論理ゲート102の出力に接続された入力211を含む。トライステートインバータはまた、複数の論理ゲートの次の1つの入力、例えば、論理ゲート104の入力に接続された反転出力212を含む。トライステートインバータは更に、クロック信号110を受信するクロック入力105であるイネーブル入力213を含む。受信したクロック信号は、トライステートインバータを駆動する信号ENb 214を取得するため反転されうる。
【0041】
一実施例では、受信したクロック信号110が論理レベル1で、ENb 214が論理レベル0のときには、反転出力212は高インピーダンスでフローティング状態にある。この場合、クロック信号が十分に短いパルスを含み、次の論理ゲート104の入力キャパシタンスが放電する時間を有していないときには、次の論理ゲート104は前のオン/オフ状態を保持する。これとは反対に、受信したクロック信号が論理レベル0で、ENbが論理レベル1のときには、トライステートインバータは通常のインバータのように動作する。この場合、反転出力は次の論理ゲート104の入力に直接接続される。したがって、トライステートインバータ210のイネーブル入力213をショートパルスのクロック信号に接続することによって、リング発振器100をクロック信号の立ち下がりエッジに同期させる。この実施例では、クロックパルスに最も近くなるように切り替わりうる一又は複数の論理ゲート(制御された論理ゲートではない可能性あり)に、余分の同期遅延が導入される。リング発振器の他の論理ゲートは影響されないことがある。
【0042】
幾つかの実施例では、制御された論理ゲート103は、図2Cに示したように、ゲーテッドDラッチ220を含む。これらの実施例では、ゲーテッドDラッチは反転論理ゲートである。ゲーテッドDラッチは、データ入力221とイネーブル入力222、反転出力223と非反転出力224を含む。データ入力は、リング内の複数の論理ゲートの前の1つの出力、論理ゲート102の出力に接続される。イネーブル入力は、クロック信号110を受信するクロック入力105である。反転出力は、リング内の複数の論理ゲートの次の1つへの入力、例えば、論理ゲート104の入力に接続される。非反転出力はフローティングになりうる。
【0043】
一実施例では、表225に示したように、イネーブル入力222(E)が論理レベル0のとき、反転出力223
はラッチされ、データ入力221(D)のいかなる変化とも反応しない。これとは反対に、イネーブル入力(E)論理レベル1のとき、反転出力
は通常のインバータのように、データ入力(D)の反転した値を有する。したがって、ゲーテッドDラッチ220のイネーブル入力をショートパルスのクロック信号に接続することによって、リング発振器100をクロック信号の立ち上がりエッジに同期させる。この実施例では、ゲーテッドDラッチは、リング発振器100の通常のインバータを置き換えることができる。ゲーテッドDラッチは、まれに準安定状態になるように最適化されており、その結果、よりクリアな周波数スペクトルを生成する点で有利である。
【0044】
幾つかの実施例では、制御された論理ゲート103は、図2Dに示すように、2:1マルチプレクサ230又は240を含む。2:1マルチプレクサは、リング内の複数の論理ゲートの連続する論理ゲートの間に接続される。例えば、2:1マルチプレクサは、論理ゲート103の一部であってよく、或いは連続する論理ゲート103と104の間に挿入されうる。2:1マルチプレクサ230は、第1の入力231と第2の入力232、セレクタ入力233と出力234を有する。第1の入力は、リング内の連続する論理ゲートの前の1つの出力、例えば、論理ゲート103の出力に接続される。セレクタ入力はクロック入力105である。出力は、リング内の連続する論理ゲートの後の1つへの入力、例えば、論理ゲート104への入力に接続される。出力はまた、フィードバックされ、2:1マルチプレクサの第2の入力に接続される。
【0045】
同様に、2:1マルチプレクサ240は、第1の入力241と第2の入力242、セレクタ入力243と出力244を有する。第1の入力、第2の入力、セレクタ入力と出力は、2:1マルチプレクサ230と同様に配置されうる。
【0046】
一実施例では、2:1マルチプレクサ230に関して、セレクタ入力233が論理レベル1のとき、2:1マルチプレクサはラッチになり、出力234は第2の入力232と同じになる。この場合、出力の電流レベルは維持され、第1の入力231での変化の影響はブロックされる。これとは反対に、セレクタ入力が論理レベル0のとき、第1の入力は、最大でクロックパルスの幅の遅延で出力を伝播することができる。すなわち、リング発振器100は正常に機能する。したがって、2:1マルチプレクサ230のセレクタ入力をショートパルスのクロック信号に接続することによって、リング発振器100をクロック信号の立ち下がりエッジに同期させる。2:1マルチプレクサ240は、同様に、リング発振器をクロック信号の立ち下がりエッジに同期させるのに使用可能である。
【0047】
同期可能なリング発振器100で使用される差動バッファゲート200、トライステートインバータ210、ゲーテッドDラッチ220、或いは2:1マルチプレクサ230又は240は、集積回路製造プロセスの標準的な構成要素ライブラリで利用可能になりうる。したがって、既存のソリューションとは対照的に、同期可能なリング発振器は、より正確で、より安定的で、より低コストで、その挙動は十分に理解されている。
【0048】
図3は、様々な例示的な実装にしたがって、リング発振器100を同期させる方法300の様々なステップを示すフロー図である。ブロック301では、方法は、リング発振器の複数の論理ゲート101~104のうちの1つの論理ゲートのイネーブル入力106で、イネーブル信号を受信することを含む。複数の論理ゲートは、リング構成で接続される。複数の論理ゲートの最後の1つを除いて、それぞれの出力は複数の論理ゲートの次の1つへの入力として使用される。複数の論理ゲートの最後の1つの出力はフィードバックされ、複数の論理ゲートの最初の1つへの入力として使用される。イネーブル信号は、論理ゲート及びそれによってリング発振器を有効にするブロック302では、方法は、複数の論理ゲートの少なくとも1つの制御された論理ゲート103のクロック入力105で、クロック信号110を受信することを含む。ブロック303では、方法は、クロック信号を使用して少なくとも1つの制御された論理ゲートを制御し、それによってリング発振器をクロック信号に同期させることを含む。
【0049】
幾つかの実施例では、方法は、セキュリティアプリケーションのためのブロック304~310を含む。ブロック304では、方法は、所定の期間だけリング発振器を運用すること又は操作することを含む。ブロック305では、方法は、イネーブル信号を取り除いてリング発振器を無効にすることを含む。ブロック306では、方法は、クロック信号を停止すること又は除去することを含む。ブロック307では、方法は、所定の期間待機することを含む。ブロック308では、方法は、クロック信号なしの自走(非同期)モードでリング発振器を再起動することを含む。ブロック309では、方法は、所定の期間待機することを含む。ブロック310では、方法は、出力信号のサンプルを取得すること、或いは、セキュリティアプリケーション用に所望のデータ(例えば、真の乱数)を得るため、発振周期をカウントするカウンタを読むことを含む。ブロック310の後、方法は、必要に応じてブロック307又は309から反復することがある。
【0050】
同期可能なリング発振器100は、既知の制御可能な熱量を生成するため、また、予測可能な回路温度を実現するために使用されうる。リング発振器は、予測できない発振周波数の問題を避けるため、安定したクロック信号に同期される。予測できない発振周波数は、周波数及び対応するダイ温度の複数の平衡の結果であり、ダイ温度からのゲート遅延の非単調な依存性に起因する。同期可能なリング発振器はまた、周波数逓倍器信号発生器の構築に使用されうる。これらの信号発生器の設計では、クロック信号は発振信号の位相を定期的に調整する。その結果得られる位相の同期によって、クロック信号の周波数とリング発振器の周波数との比率は安定した状態を保つ。同期した発振器は、クロック信号の小さな周波数変化に追随し、その結果、位相と周波数の変調は、クロックの位相又は周波数の変調の結果得られる発振信号で実現されうる。複数の同期可能なリング発振器は同じクロック信号を同期することができ、そのため、信号発生器は複数の安定した信号を生成することができる。複数の安定した信号の各々は、クロック信号とは同じ方法であるが、異なるキャリア周波数で変調されうる。
【0051】
この項では、本開示のシステム及び方法の追加の態様及び特徴が説明されるが、かかるシステム及び方法は、限定されずに一連の段落として提示され、一連の段落の一部又は全部は、明確性及び有効性のために英数字で指定されうる。
【0052】
A1. リング構成で接続された複数の論理ゲートを備えるリング発振器であって、
前記複数の論理ゲートの最後の1つを除いた各々の出力は前記複数の論理ゲートの次の1つへの入力として使用され、前記複数の論理ゲートの最後の1つの出力はフィードバックされ、前記複数の論理ゲートの最初の1つへの入力として使用され、前記複数の論理ゲートの1つの論理ゲートは、前記論理ゲートを有効にし、またそれによって前記リング発振器を有効にするイネーブル信号を受信するように構成されたイネーブル入力を含み、
前記複数の論理ゲートは、少なくとも1つの制御された論理ゲートを制御するためのクロック信号を受信するように構成されたクロック入力も含む、少なくとも1つの制御された論理ゲートを含み、これによって前記リング発振器を前記クロック信号に同期させる、リング発振器。
【0053】
A2. 前記複数の論理ゲートは、前記リング構成で接続された奇数個の反転論理ゲートを含み、
前記少なくとも1つの制御された論理ゲートは、前記クロック信号を受信するように構成された前記クロック入力であるイネーブル入力を有する、段落A1に記載のリング発振器。
【0054】
A3. 前記少なくとも1つの制御された論理ゲートは、非反転入力と反転入力、及び少なくとも1つの反転出力を有する差動バッファゲートを含み、前記非反転入力は、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続されており、前記反転入力は前記クロック入力であり、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続される、段落A1に記載のリング発振器。
【0055】
A4. 前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続された入力と、前記リング構成にある前記反転論理ゲートの次の1つの入力に接続された反転出力と、前記クロック入力であるイネーブル入力とを有するトライステートインバータを含む、段落A1に記載のリング発振器。
【0056】
A5. 前記少なくとも1つの制御された論理ゲートは、データ入力とイネーブル入力、及び少なくとも1つの反転入力を有するゲーテッドDラッチを含み、前記データ入力は前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続され、前記イネーブル入力は前記クロック入力であり、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続される、段落A1に記載のリング発振器。
【0057】
A6. 前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの連続する論理ゲート間に接続された2:1マルチプレクサであって、第1の入力と第2の入力、セレクタ入力と出力を有する2:1マルチプレクサを含み、前記第1の入力は前記リング構成にある前記連続する論理ゲートの前の1つの出力に接続され、前記セレクタ入力は前記クロック入力であって、前記出力は、前記リング構成にある前記連続する論理ゲートの後の1つへの入力に接続されると共に、フィードバックされ、前記2:1マルチプレクサの前記第2の入力に接続される、段落A1に記載のリング発振器。
【0058】
A7. 前記複数の論理ゲートの各々は、前記リング発振器内の信号伝播のゲート遅延を引き起こし、前記クロック信号は、前記少なくとも1つの制御された論理ゲートによって引き起こされる前記ゲート遅延と同じ、又は前記ゲート遅延の倍数となるパルス幅を有する周期的なパルス列を含む、段落A1に記載のリング発振器。
【0059】
A8. 前記クロック信号はクロック周波数を有し、前記リング発振器は、前記クロック周波数と同じ、又は前記クロック周波数の倍数となる周波数で発振するように構成される、段落A1に記載のリング発振器。
【0060】
A9. 前記少なくとも1つの制御された論理ゲートは複数の制御された論理ゲートであり、該複数の制御された論理ゲートの各々が、前記複数の制御された論理ゲートを制御する前記クロック信号を受信し、それによって前記リング発振器を前記クロック信号に同期させるように構成された各々のクロック入力を含む、段落A1に記載のリング発振器。
【0061】
B10. リング発振器の同期化の方法であって、
前記リング発振器の複数の論理ゲートの1つの論理ゲートのイネーブル入力でイネーブル信号を受信することであって、前記複数の論理ゲートは、前記複数の論理ゲートの最後の1つを除いた各々の出力は前記複数の論理ゲートの次の1つへの入力として使用されるリング構成で接続され、前記複数の論理ゲートの最後の1つの出力はフィードバックされ、前記複数の論理ゲートの最初の1つへの入力として使用され、前記イネーブル信号は前記論理ゲートを有効にし、また、それによってリング発振器を有効にする、イネーブル信号を受信することと、
前記複数の論理ゲートの少なくとも1つの制御された論理ゲートのクロック入力で、クロック信号を受信することと、
前記少なくとも1つの制御された論理ゲートを制御する前記クロック信号を使用し、それによって前記リング発振器を前記クロック信号に同期させることと、
を含む、リング発振器の同期化の方法。
【0062】
B11. 前記複数の論理ゲートは、リング構成で接続された奇数個の反転論理ゲートを含み、前記少なくとも1つの制御された論理ゲートは、前記クロック入力であるイネーブル入力を含み、前記クロック信号を受信することは、前記イネーブル入力で前記クロック信号を受信することを含む、段落B10に記載の方法。
【0063】
B12. 前記少なくとも1つの制御された論理ゲートは、非反転入力と反転入力、及び少なくとも1つの反転出力を有する差動バッファゲートを含み、前記非反転入力は、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続されており、前記反転入力は前記クロック入力であり、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続され、前記クロック信号を受信することは、前記反転入力で前記クロック信号を受信することを含む、段落B10に記載の方法。
【0064】
B13. 前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続された入力と、前記リング構成にある前記複数の論理ゲートの次の1つの入力に接続された反転出力と、前記クロック入力であるイネーブル入力とを有するトライステートインバータを含み、前記クロック信号を受信することは、前記イネーブル入力で前記クロック信号を受信することを含む、段落B10に記載の方法。
【0065】
B14. 前記少なくとも1つの制御された論理ゲートは、データ入力とイネーブル入力、及び少なくとも1つの反転出力を有するゲーテッドDラッチを含み、前記データ入力は、前記リング構成にある前記複数の論理ゲートの前の1つの出力に接続されており、前記イネーブル入力は前記クロック入力であり、また、前記反転出力は前記リング構成にある前記複数の論理ゲートの次の1つへの入力に接続され、前記クロック信号を受信することは、前記イネーブル入力で前記クロック信号を受信することを含む、段落B10に記載の方法。
【0066】
B15. 前記少なくとも1つの制御された論理ゲートは、前記リング構成にある前記複数の論理ゲートの連続する論理ゲート間に接続された2:1マルチプレクサであって、第1の入力と第2の入力、セレクタ入力と出力を有する2:1マルチプレクサを含み、前記第1の入力は前記リング構成にある前記連続する論理ゲートの前の1つの出力に接続され、前記セレクタ入力は前記クロック入力であって、前記出力は、前記リング構成にある前記連続する論理ゲートの後の1つの入力に接続されると共に、フィードバックされ、前記2:1マルチプレクサの前記第2の入力に接続され、前記クロック信号を受信することは、前記セレクタ入力で前記クロック信号を受信することを含む、段落B10に記載の方法。
【0067】
B16. 前記複数の論理ゲートの各々は、前記リング発振器内の信号伝播のゲート遅延を引き起こし、前記クロック信号は、前記少なくとも1つの制御された論理ゲートによって引き起こされる前記ゲート遅延と同じ、又は前記ゲート遅延の倍数となるパルス幅を有する周期的なパルス列を含む、段落B10に記載の方法。
【0068】
B17. 前記クロック信号はクロック周波数を有し、前記方法は更に、前記クロック周波数と同じ、又は前記クロック周波数の倍数となる周波数で、リング発振器を発振することを含む、段落B10に記載の方法。
【0069】
B18. 前記少なくとも1つの制御された論理ゲートは、その各々がそれぞれのクロック入力を含む、複数の制御された論理ゲートであり、前記クロック信号を受信することは、前記複数の制御された論理ゲートのそれぞれのクロック入力で、前記クロック信号を受信することを含み、クロック信号を使用することは、前記複数の制御された論理ゲートを制御するクロック信号を使用し、それによって前記リング発振器を前記クロック信号に同期させることを含む、段落B10に記載の方法。
【0070】
上述の説明及び添付図面に提示されている教示の恩恵を受ける、本開示に関連する当業者には、本書に明記された本開示の多数の修正例及びその他の実装が想起されよう。したがって、本開示は開示の特定の実装に限定されるものではないこと、及び、変形例及びその他の実装も付随する特許請求の範囲に含まれるよう意図されていることを、理解されたい。さらに、上述の説明及び添付図面は、要素及び/又は機能の特定の実施例の組み合わせに照らして例示的な実装を説明しているが、特許請求の範囲から逸脱せずに、代替的な実装によって要素及び/又は機能の異なる組み合わせが提供されてもよいと理解されたい。すなわち、付随する特許請求の範囲の一部に明記されうるように、例えば、明示的に上述されているものとは異なる要素及び/又は機能の組み合わせも想定される。本書では特定の用語を用いるが、それらは、一般的な、及び説明的な意味でのみ使用されており、限定を目的とするものではない。
図1
図2A
図2B
図2C
図2D
図3