(57)【要約】【課題】  フリップフロップによる乱数発生器を提供する。【解決手段】  該フリップフロップは、所定の範囲に含まれ、且つ、瞬時値が妨害信号により条件づけられる第１の周波数の第１の信号を受信するデータ入力部と、該第１の周波数より低い第２の所定の周波数の第２の信号を受信するクロック入力部とを有し、前記第２の信号は、遅延素子を通過することにより第１の信号の最大周期に等しいかそれ以上の遅延を与えられる。【選択図】  図２
2004288159.tif 000002
【特許請求の範囲】
【請求項１】
フリップフロップによる乱数発生器であって、該フリップフロップは、所定の範囲に含まれ、且つ、瞬時値が妨害信号により条件づけられる第１の周波数（ＨＦ）の第１の信号を受信するデータ入力部（Ｄ）と、該第１の周波数より低い第２の所定の周波数（ＢＦ）の第２の信号を受信するクロック入力部（ＣＬＫ）とを有し、前記第２の信号は、遅延素子（６）を通過することにより前記第１の信号の最大周期に等しいかそれ以上の遅延を与えられることを特徴とする乱数発生器。
【請求項２】
前記妨害信号は、前記第１及び第２の周波数の間の中間周波数（ＭＦ）で、第３の発振器（５）により提供されることを特徴とする請求項１に記載の発生器。
【請求項３】
前記第１の発振器により提供される前記信号を、前記フリップフロップ（３）の前記データ入力部（Ｄ）に到着する前に設定するための比較器（２）を更に有することを特徴とする請求項１に記載の発生器。
【請求項４】
前記第１の発振器（１）は、前記妨害信号を受信する制御入力部を有する電圧制御発振器であることを特徴とする請求項１に記載の発生器。
【請求項５】
前記第２の周波数は、前記第１の信号の最小周波数に対して少なくとも１００の比率を有するように選択されることを特徴とする請求項１に記載の発生器。
【請求項６】
中間信号の前記周波数は、前記第１の信号の最小周波数に対して５〜２０の範囲の比率を有するように選択されることを特徴とする請求項５に記載の発生器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異なる周波数の発振器から形成される乱数発生器に関する。
【背景技術】
【０００２】
図１は、乱数発生器の従来の例を概略的にブロック図で示したものである。
【０００３】
そのような発生器は、比較的高い周波数帯域（ＨＦ）において第１の電圧制御発振器（ＶＣＯ）１を用いる。発振器１の制御は、より低い周波数（ＭＦ）（図示無し）の発振器又は通常同じ集積回路からくる電子雑音のどちらかによるものである。発振器１の出力は、様々な周波数の三角信号を提供する。該三角信号は、比較器２による整形の後、フリップフロップ３の入力信号Ｄを形成し、該フリップフロップの出力Ｑが乱数を形成する数字の列を形成する。比較器２の機能は、単に、発振器１により提供された信号を方形パルスとして整形することである。このために、例えばその非反転入力などの入力のうち１つは、発振器１の出力を受信する。その間、その他の入力（例えば反転）は、参照電圧を受信する。該参照電圧は、抵抗分割ブリッジＲ１、Ｒ２により、比較器２のための参照電圧を提供するフィルタリングコンデンサＣと接続されたジャンクションポイントへ提供される。
【０００４】
発振器１の周波数に対して比較的低い周波数（ＢＦ）の第２の発振器４（ＯＳＣ）が、フリップフロップ３の入力部ＣＬＫへクロック信号を提供する。発振器４の周波数ＢＦは所定である。
【０００５】
発振器４の出力信号の各端（例えば立ち上がり）で、フリップフロップ３は、そのＤ入力の状態を考慮する。この状態は、発振器１により提供される信号に従って０又は１であるため、フリップフロップ３の出力は０又は１の出力状態をとる。発振器１の出力信号はノイズにより条件づけられる周波数を有するため、フリップフロップ３の出力での状態１又は０の連続が、ランダム状態のシーケンスを形成する。
【０００６】
図１の回路がこのように動作するためには、発振器１及び４は同期してはならない。実際、そうなると、ビットが重複したシーケンスがフリップフロップ３の出力に必然的に現れる。これが、発振器１の電圧制御入力が、中間周波数（つまり、周波数ＢＦと発振器１の最小周波数との間の範囲を有する）の信号又はノイズにより駆動される具体的な理由である。また、これは、発振器１の出力周波数の確率が等しいという特性を保障するために、発振器１が正弦波よりも三角信号を優先的に発生させる理由でもある。発振器１の周波数は、中間周波数の傾斜上にある電圧制御の位置により予め定められた固定範囲内で変動する。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
図１の回路の欠点は、それでも発振器の同期の危険性が残るという点である。実際、発振器１の周波数のノイズは、供給電源へ伝達されるため、発振器４を汚損させる。このノイズは、２つの信号を同期させる。実際、トリガが、閾値について行われる。ここで、より低い周波数に重畳するＨＦノイズの存在は、このノイズに優先して閾値のトリガが行われるようにしてしまう。これは、実際、信号を同期させることになる。
【０００８】
図１に示されるような乱数発生器の例は、クリプトグラフィー・リサーチ社（Cryptography Research Inc.）によって１９９９年４月２２日に出版された、ベンジャミン・ジュン（Benjamin Jun）及びポール・コーチャー（Paul Kocher）による「インテル乱数発生器」の記事においても詳述される。
【０００９】
本発明の実施形態は、従来の発振器発生器の欠点を克服する新しい乱数発生器を提供する。
【００１０】
本発明の実施形態は、より具体的には、フリップフロップの高周波数及び低周波数入力発振器からの信号の、起こり得る同期に関連した問題を解決することにある。
【課題を解決するための手段】
【００１１】
本発明の１つの実施形態は、フリップフロップによる乱数発生器を提供する。該フリップフロップは、所定の範囲に含まれ、且つ、瞬時値が妨害信号により条件づけられる第１の周波数の第１の信号を受信するデータ入力部と、該第１の周波数より低い第２の所定の周波数の第２の信号を受信するクロック入力部とを有し、前記第２の信号は、遅延素子を通過することにより前記第１の信号の最大周期に等しいかそれ以上の遅延を与えられる。
【００１２】
本発明の実施形態によると、前記妨害信号は、前記第１及び第２の周波数の間の中間周波数で、第３の発振器により提供される。
【００１３】
本発明の実施形態によると、発生器は、第１の発振器により提供される信号を、フリップフロップのデータ入力部へ到着する前に整形する比較器を更に有する。
【００１４】
本発明の実施形態によると、第１の発振器は、前記妨害信号を受信する制御入力部を有する電圧制御発振器である。
【００１５】
本発明の実施形態によると、第２の周波数は、第１の信号の最小周波数との比率が少なくとも１００になるように選択される。
【００１６】
本発明の実施形態によると、中間信号の周波数は、第１の信号の最小周波数との比率が５〜２０の間の範囲になるように選択される。
【００１７】
前述された本発明の特徴は、添付の図面に関連して、以下の具体的な実施形態の限定しない説明において詳述される。
【発明を実施するための最良の形態】
【００１８】
ここに、乱数発生器の実施形態が詳述される。以下の説明において、本発明の実施形態を充分に理解するために数々の具体的な詳細が示される。しかし、当業者であれば、本発明が、具体的な詳細のうちの１つ以上が欠けていても、又は、他の方法、構成要素、材料等を用いても、実行できるということは思いつくだろう。その他の場合には、周知の構造、材料、又は動作は、本発明の見地が不明瞭になるのを防ぐために、示されていないか、又は詳述されていない。
【００１９】
本明細書を通して、「１つの実施形態」又は「実施形態」という表現は、実施形態に関連して詳述される特定の特性、構造、又は特徴が、本発明の実施形態の少なくとも１つに含まれるということを意味する。従って、本明細書の様々な箇所に出現する「１つの実施形態において」又は「実施形態において」という表現は、必ずしも全てが同じ実施形態を参照するということではない。更に、特定の特性、構造、又は特徴は、１つ以上の実施形態においてあらゆる好ましい方法で組み合わされることができる。
【００２０】
異なる図面において、同一の要素が同一の符号で示されている。明確にするために、本発明の理解に必要な要素のみが図面に示され、以下に詳述される。特に、電圧制御発振器、比較器、そしてフリップフロップから成る詳細は、詳述されておらず、本発明の目的ではない。
【００２１】
本発明による１つの実施形態の特徴は、乱数シーケンスを提供するフリップフロップを制御する比較的低い周波数の発振器により提供される信号を、所定の時間遅らせることである。本発明の実施形態によると、この所定の時間は、比較的高い周波数の最大周期に対応することが好ましい。該比較的高い周波数は、その出力がフリップフロップ入力データを条件づける電圧制御発振器により提供されると考えられる。
【００２２】
図２は、本発明による乱数発生器の実施形態をブロックで概略的に示す。
【００２３】
前述のように、この発生器は、フリップフロップ３に基づく。該フリップフロップ３のＤデータ入力部は、比較的高い所定の動作周波数帯域（ＨＦ）を有する電圧制御発振器（ＶＣＯ）１の周波数で信号を受信する。フリップフロップのクロック入力部は、発振器１の周波数に対して比較的低い周波数（ＢＦ）で制御されることが意図される。発振器１は、中間周波数（ＭＦ）で、又はノイズにより制御される。図２の例では、発振器１を制御する中間周波数でのリング発振器５が示される。
【００２４】
任意で、そして従来では、発振器１の出力信号は、比較器２により整形される。該比較器２は、発振器１の出力を受信する第１の入力（例えば、非反転）を有し、その受信の間、第２の入力（例えば、反転）は、例えばチャージコンデンサＣと結合された抵抗分割ブリッジＲ１、Ｒ２により提供される参照電圧Ｖｒｅｆを受信する。比較器２の機能は、方形信号を復元するために、参照電圧Ｖｒｅｆで発振器１により提供される三角信号を考慮するレベルを設定することである。
【００２５】
示される例において、発振器５は直列の３つのインバータ５１、５２、５３から形成される。発振周波数を条件づけるコンデンサＣ５は、一般的に、三角信号を得るための挿入された抵抗Ｒ５を用いて、インバータ５３の出力を接地と接続させる。インバータ５３の出力（ここでは抵抗Ｒ５を通過した後）は、インバータ５１の入力部に折り返し戻され、発振器１の電圧制御信号を形成する。そのようなリング発振器の動作は、全く従来通りであり、インバータの数は、偶数であればどの数でもよい。同様に、低周波数発振器４は、直列のインバータ４１、４２、４３と、インバータ４１の出力を接地に接続するコンデンサＣ４とにより形成される。従って、それは発振器５と同様のリング構造を示し、相違点は、抵抗が無いということである。発振周波数は、コンデンサＣ４の値により条件づけられる。
【００２６】
本発明の実施形態によると、フリップフロップ３のクロック入力部ＣＬＫは、低周波数発振器４により提供される信号を直接受信することはなく、この信号は予め遅延素子６を通過する。素子６により導入される遅延は、少なくとも高周波数発振器１により提供される信号の最大周期と等しくなるよう選択される。遅延は、この最大周期と等しいことが好ましい。
【００２７】
示される例において、遅延素子６は、インバータ６１、６２、６３、６４のいくつかの直列の組み合わせにより形成され、該インバータの数は、所望される遅延の大きさにより選択される。
【００２８】
遅延素子６は、発振器４により提供される信号の周期が発振器１により提供される高周波数信号と偶然同期していると思われても、導入される遅延により次の周期は非同期化されることを可能にする。従って、中（medium）周波数又は中間周波数の供給源５のみにより条件づけられて得られた数の、確率が等しい特性が再現する。
【００２９】
ここで、電源上に中間周波数発振器５により導入され得るノイズの周波数は、必然的に発振器１の周波数以下である。実際、発振器５のノイズの振幅が発振器１の振幅以下だとすると、後者が発振器５の起こり得るノイズをかき消すことができる。従って、中間周波数でのこのノイズは、同期を引き起こすおそれがない。従って、フリップフロップ３の出力状態を効果的に条件づける発振器は、中間周波数の発振器５である。
【００３０】
この動作は、図３に示される。該図３は、フリップフロップ３のクロック信号ＣＬＫ及びこのフリップフロップの入力信号Ｄの形の例を、タイミング図で示す。
【００３１】
図３の左部分では、入力Ｄの信号は、発振器１の最大周波数（最小周期）であると想定される。この図面の右部分では、発振器１から発生する最小周波数（最大周期）が想定されている。この例においては、最大周波数が最小周波数の２倍である場合が考察されている。
【００３２】
フリップフロップ４の出力信号（端が信号ＣＬＫ上の点線ｔ１で示される）とフリップフロップのＤ入力との偶然の同期を想定して、素子６（図２）により導入される固定遅延Ｄ６は、時間ｔ２でクロック信号ＣＬＫの立ち上がり端を生じさせる。従って、同期時間後の最大周波数信号の１周期後、考慮されるＤ入力状態が起きていることが分かる。従って、それが実際起こるため、同期に関連した危険性がなくなる。図３の右部分では、時間ｔ’１での同期が想定される。ここでもまた、導入される遅延Ｄ６は、最小周波数の時に対して少なくとも１周期ずらして信号ＣＬＫの立ち上がり端を生じさせる。
【００３３】
導入される遅延Ｄ６は、高速発振器１の最大周期に等しいかそれ以上である。それ（遅延Ｄ６）は、この最大周期と等しいことが好ましい。
【００３４】
本発明の１つの実施形態の利点は、例えば高周波数信号のノイズによる中間周波数信号の汚損により、乱数発生器の高周波数及び低周波数発振器が同期する危険性による結果を防ぐことができる点である。
【００３５】
本発明の実施形態のもう１つの利点は、その実施が特に簡単であるという点である。実際、フリップフロップ及び発振器を有する従来の乱数発生器になされる変更は、低速発振器と直列の、所定の時間の遅延素子を加えるという点である。
【００３６】
実施形態の１例として、高周波数は、低周波数の少なくとも１００倍であり、中間周波数は、低周波数の５〜２０倍の間であることが好ましい。実施の具体例については、それぞれの発振器周波数は、低周波数（ＢＦ）で１ｋＨｚ、中間周波数（ＭＦ）で１０ｋＨｚ、高周波数（ＨＦ）で１００ｋＨｚ〜２００ｋＨｚ
の間を範囲とする周波数であることができる。
【００３７】
もちろん、本発明は、当業者であれば容易に思いつく様々な改変、変更、及び改善があるだろう。特に、遅延素子及び発振器の実際の実施は、以上に示される機能的指示及び本発明に基づいて当業者が行うことができる範囲内のことである。インバータを有するリング発振器以外の他の発振器の形態も用いることができることも理解しておくべきである。素子６により導入される遅延の正確さは臨界的ではない。発振器１の変動範囲全体に渡って確率が等しい結果を得るためには、状態１が半分あり、状態０が半分ある。
【００３８】
そのような改変、変更および改善は、本開示の一部分であり、本発明の意図及び範囲内にあるものとされる。従って、前述の説明は、例を示すためのものに過ぎず、限定するものではない。本発明は、請求項及びその均等物において規定される通りにのみ限定される。
【００３９】
本明細書で参照され、及び／又は願書（Application Data Sheet）に記載された上記全ての米国特許、米国特許出願公報、米国特許出願、外国特許、外国特許出願及び非特許出版物は、その全てが、ここに参照される。
【図面の簡単な説明】
【００４０】
【図１】乱数発生器の従来の例を概略的に示すブロック図である。
【図２】本発明による乱数発生器の実施形態を示す図である。
【図３】図２の発生器の動作を示すタイミング図である。
【符号の説明】
【００４１】
１、４、５  発振器
２  比較器
３  フリップフロップ
６  遅延素子
４１、４２、４３、５１、５２、５３、６１、６２、６３、６４  インバータ
【図１】
2004288159.tif 000003
【図２】
2004288159.tif 000004
【図３】
2004288159.tif 000005
【外国語明細書】
2004288159.tif 000006
2004288159.tif 000007
2004288159.tif 000008
2004288159.tif 000009
2004288159.tif 000010
2004288159.tif 000011
2004288159.tif 000012
2004288159.tif 000013
2004288159.tif 000014
2004288159.tif 000015
2004288159.tif 000016