(57)【要約】【課題】回路構成を簡略化した物理乱数を発生する。【解決手段】電源ＶＣＣとグランドの間に、抵抗Ｒｓ、ＮＰＮトランジスタＱ１の直列接続が配置される。トランジスタＱ１のコレクタベースはショートされ、ベースには、エミッタがグランドに接続されたトランジスタＱ２のベースが接続されている。トランジスタＱ２のコレクタは抵抗ＲＬを介し電源ＶＣＣに接続され、コレクタが出力端になっている。トランジスタＱ１とＱ２はカレントミラーを構成し、両者は同一の電流を流す。トランジスタＱ１のベース電圧はＶＢＥであり、これによって抵抗Ｒｓに流れる電流が決定され、出力の直流成分が決まる。そして、抵抗Ｒｓの熱雑音が増幅されて出力に得られる。【選択図】　　　　図１
2004013523.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの抵抗を含み、この抵抗を流れる電流の影響を受ける基準電圧を発生する基準電圧発生回路と、
この基準電圧を制御端子に受け、基準電圧の変動を増幅して出力するトランジスタと、
を有し、
抵抗の熱雑音を増幅した出力をトランジスタの出力に得て、この出力に基づいて乱数を発生する乱数発生回路。
【請求項２】
請求項１に記載の回路において、
前記トランジスタの出力を増幅するオペアンプと、
このオペアンプの出力について、二値化するコンパレータと、
をさらに有する乱数発生回路。
【請求項３】
請求項１または２に記載の回路において、
基準電圧発生回路は、
抵抗と、ダイオードの直列接続を含み、その抵抗とダイオードの接続点から基準電圧が出力される乱数発生回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、抵抗の熱雑音を利用する乱数発生回路に関する。
【０００２】
【従来の技術】
従来より、各種の分野で乱数発生器が利用されている。例えば、各種のシミュレーション、さいころの模擬、ゲームや抽選などにおいて乱数が使用され、さらに通信における暗号化などにおいても広く利用され、その重要性が増してきている。ここで、従来の乱数発生器では、通常所定の演算により、その周期が非常に長いことで擬似的に乱数と見なされるものを発生するものが一般的である。しかし、このような擬似的な乱数は、周期性を持ち、発生パターンを予想することができるという欠点がある。そこで、さらに完全な乱数を発生することが望まれている。
【０００３】
特開平１１−８５４７２号公報には、各種のノイズから物理乱数を発生する回路についての提案がある。この手法によれば、物理乱数を発生することができ、演算により擬似乱数を発生するものに比べ、より好ましい乱数を得ることができる。
【０００４】
【発明が解決しようとする課題】
このように、上記公報に記載の手法によって、物理乱数を得ることができる。しかし、ここで利用される各種のノイズレベルは、通常それほど大きなものではない。特に、抵抗の熱雑音などは、集積回路などにおいても発生しているものであるが、かなり小さなものである。そこで、このようなノイズをうまく取り出す回路が必要になる。
【０００５】
すなわち、熱雑音が重畳された信号を直接コンパレータなどに２値化しようとしても、ＤＣオフセットの影響でうまく２値化できない。そこで、増幅した後に交流成分を取り出し、これを増幅するなど数多くの増幅器を行うことが必要となり、回路が大規模になってしまうという問題があった。
【０００６】
本発明は、上記課題に鑑みなされたものであり、簡単な回路で効果的に物理乱数を発生することができる乱数発生回路を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明は、少なくとも１つの抵抗を含み、この抵抗を流れる電流の影響を受ける基準電圧を発生する基準電圧発生回路と、この基準電圧を制御端子に受け、基準電圧の変動を増幅して出力するトランジスタと、を有し、抵抗の熱雑音を増幅した出力をトランジスタの出力に得て、この出力に基づいて乱数を発生することを特徴とする。
【０００８】
このように、基準電圧をトランジスタの制御端子に入力することで、トランジスタに流れる電流に応じて出力の直流成分を決定することができ、出力の直流成分の決定が容易になる。さらに、このトランジスタによって入力側の抵抗の熱雑音を増幅することもできる。従って、出力についての増幅が容易であり、増幅器の数を減らして、効果的な回路構成で乱数発生が行える。
【０００９】
また、前記トランジスタの出力を増幅するオペアンプと、このオペアンプの出力について、二値化するコンパレータと、をさらに有することが好適である。
【００１０】
また、基準電圧発生回路は、抵抗と、ダイオードの直列接続を含み、その抵抗とダイオードの接続点から基準電圧が出力されることが好適である。
【００１１】
【発明の実施の形態】
以下、本発明の実施形態について、図面に基づいて説明する。
【００１２】
図１は、実施形態に係る乱数発生回路の構成図であり、電源ＶＣＣには、抵抗Ｒｓの一端が接続され、他端はベースコレクタが短絡されたＮＰＮトランジスタＱ１のコレクタに接続され、このトランジスタＱ１のエミッタがグランドに接続されている。従って、トランジスタＱ１はダイオードとして機能する。従って、電源ＶＣＣからの電流が、抵抗ＲｓおよびトランジスタＱ１を介しグランドに向けて流れる。ここで、コレクタベース間が短絡されたトランジスタＱ１の電圧降下は、１ＶＢＥ（ベースエミッタ間電圧）となる。また、抵抗Ｒｓに流れる電流Ｉ１は、抵抗Ｒｓの両端電圧を抵抗Ｒｓの抵抗値Ｒｓでわり算した、（ＶＣＣ−ＶＢＥ）／Ｒｓとなる。
【００１３】
抵抗ＲｓとトランジスタＱ１のコレクタとの接続点は、ＮＰＮトランジスタＱ２のベースに接続されており、このトランジスタＱ２のエミッタはグランドに接続され、コレクタは抵抗ＲＬを介し電源ＶＣＣに接続されている。また、抵抗ＲＬとトランジスタＱ２の接続点が出力端になっている。
【００１４】
この構成においては、トランジスタＱ１と、トランジスタＱ２はカレントミラーを構成している。従って、抵抗ＲＬに流れる電流Ｉ１は、抵抗Ｒｓに流れる電流と同じＩ１になる。
【００１５】
従って、出力端における直流成分ＶＤＣは、電源ＶＣＣから抵抗ＲＬでの電圧降下を減算した値になる。すなわち、
ＶＤＣ＝ＶＣＣ−ＲＬ・Ｉ１＝ＶＣＣ−ＲＬ・（ＶＣＣ−ＶＢＥ）／Ｒｓ
である。
【００１６】
例えば、ＲＬ＝Ｒｓに設定すると、ＶＤＣ＝ＶＢＥとなる。従って、本実施形態においては、抵抗ＲＬ、Ｒｓの抵抗値の設定によって出力端における直流成分ＶＤＣを比較的自由に設定できる。また、この直流成分ＶＤＣは、トランジスタの増幅率ｈｆｅによらない。そこで、トランジスタのｈｆｅの変動（バラツキ）によらず、直流成分ＶＤＣを適切に設定することができる。また、出力の直流成分ＶＤＣは電源電圧ＶＣＣに追従する。
【００１７】
そして、本実施形態において、出力端からの出力には抵抗Ｒｓの熱雑音およびトランジスタ（ダイオード）Ｑ１の熱雑音およびショット雑音が重畳される。
【００１８】
例えば、Ｉ１＝１００μＡとすると、トランジスタＱ１の抵抗ＲＱ１は、ＲＱ１＝２６ｍＶ／１００μＡ＝０．２６×１０−３×１０６＝２６０Ωとなり、かなり小さな値となる。そこで、トランジスタ（ダイオード）Ｑ１の熱雑音はかなり小さく、無視することができる。
【００１９】
また、トランジスタ（ダイオード）Ｑ１のショット雑音は、ショット雑音についての電流ｉが、ｉ２＝２ｑ・Ｉ１・Δｆであり、ｑ（電子の電荷）＝１．６×１０−１９、Ｉ１＝１００μＡから、ｉ２＝３×１０−２３・Δｆ程度になる。
【００２０】
従って、熱雑音の電圧電圧ｖは、ｖ２＝２ｑ・Ｉ１・Δｆ・ＲＱ１２は、２×１０−１８×Δｆ程度になる。
【００２１】
一方、抵抗による熱雑音の電圧ｖは、ｖ２＝４ｋＴ・Δｆ・Ｒｓ　（ｋ：ボルツマン定数＝１．３８×１０−２３）であり、抵抗Ｒｓ＝２０ｋΩとすると、ｖ２＝３．３２×１０−１３Δｆ程度になる。
【００２２】
従って、Ｉ１＝１００μＡ、抵抗Ｒｓ＝２０ｋΩという条件では、トランジスタ（ダイオード）Ｑ１のショット雑音に比べ、抵抗Ｒｓの熱雑音が十分大きく、抵抗Ｒｓの熱雑音がトランジスタＱ２によって増幅されることになる。なお、Δｆは、熱雑音の周波数帯域である。
【００２３】
そして、Δｆ＝１００ｋＨｚとすれば、ｖ２＝３．３×１０−８となり、ｖ＝１８０μＶ程度になる。
【００２４】
また、図１の回路においては、このようにして抵抗Ｒｓにおいて発生する熱雑音がトランジスタＱ２によって増幅され、かつこれにトランジスタＱ２および抵抗ＲＬの雑音が重畳されたものになる。
【００２５】
すなわち、図１の回路は、ダイオードＱ１を無視し、雑音のみに注目すれば、図２（ａ）に示すような回路と等価になる。この図２（ａ）の回路における雑音を含む小信号等価回路を図２（ｂ）に示す。この図２（ｂ）の等価回路において、出力電圧ｖ０は、雑音源にのみよることになる。またＣμは小さいので無視する。
【００２６】
この回路において、入力抵抗Ｒｓ、トランジスタＱ２におけるベース抵抗ｒｂ、エミッタ電流ｉｂ、負荷電流ｉｌ、コレクタ電流ｉｃであり、発生する雑音は、下記式で与えられる。
【００２７】
【数１】
Ｖ０１２＝（ｇｍ・ＲＬ・Ｚ／（Ｚ＋ｒｂ＋Ｒｓ））２・Ｖｓ２
Ｖ０２２＝（ｇｍ・ＲＬ・Ｚ／（Ｚ＋ｒｂ＋Ｒｓ））２・Ｖｂ２
Ｖ０３２＝（ｇｍ・ＲＬ・Ｚ・（Ｒｓ＋ｒｂ）／（Ｚ＋ｒｂ＋Ｒｓ））２・ｉｂ２
Ｖ０４２＝（ｉｌ・ＲＬ）２
Ｖ０５２＝（ｉｃ・ＲＬ）２
全雑音電圧は、Ｖ０１〜Ｖ０５の和であり、下記の式で与えられる。
【００２８】
【数２】
Ｖ０２＝（ｇｍ・ＲＬ・Ｚ・（Ｖｓ２＋Ｖｂ２＋（Ｒｓ＋ｒｂ）２）・ｉｂ２）２／（Ｚ＋ｒｂ＋Ｒｓ））２＋ＲＬ２（ｉｌ２＋ｉｃ２）
となる。
【００２９】
ここで、Ｖｓ２＝４ｋＴ・Ｒｓ・Δｆ、ｉｌ２＝４ｋＴ・Δｆ／ＲＬであり、またＺ＝ｒπ／／（１／Ｊｗｃ）である。これを代入することによって、
【数３】
Ｖ０２／Δｆ＝ｇｍ２・ＲＬ２・ｒπ２／（ｒπ＋Ｒｓ＋ｒｂ）２
・｛４ｋＴ・Δｆ（Ｒｓ＋ｒｂ）＋２ｑＩＢ（Ｒｓ＋ＲＢ）２｝
１／（１＋ｆ／ｆ１）＋ＲＬ２（４ｋＴ＋２ｑＩｃ）
となる。
【００３０】
そして、ｒｘ＝２０ｋΩ、ＲＬ＝１０ｋΩ、Ｉｃ＝１００μＡ、ｒｂ＝１００Ω、ｇｍ＝Ｉｃ・ｑ／ｋＴ＝１００／３．８×１０−３、ｒπ＝β／ｇｍ＝１００／３．８×１０−３＝２６×１０３をそれぞれ代入する。また、雑音の周波数特性は、Δｆ＝１００ｋＨｚ以内では変化しないとして、ｆ／ｆ１＝０とする。
【００３１】
これによって、Ｖ０＝１４５　（μＶ）が得られる。
【００３２】
なお、この回路における出力の雑音の大きさの計算については、「超ＬＳＩのためのアナログ集積回路設計技術（下巻）」、Ｐ．Ｒ．グレイ／Ｒ．Ｇ．メイヤー共著、永田穣監訳、培風館出版、１９９０年１１月３０日発行の２１３頁〜２３２頁を参照されたい。
【００３３】
このようにして、本実施形態の回路によれば、抵抗Ｒｓの熱雑音をトランジスタＱ２のベースに供給することで、出力に所定の直流成分ＶＤＣに雑音が重畳されたものを得ることができる。特に、直流成分ＶＤＣを安定してＶＣＣ／２（電源電圧の中間電圧）に維持することができるため、出力をそのままオペアンプで増幅することができる。
【００３４】
すなわち、実際の乱数発生回路は、図３に示されるように、トランジスタＱ２のコレクタ側の出力には、オペアンプＯＰ１が接続され、ここで所定の増幅がなされる。特に、オペアンプＯＰ１の入力における直流成分ＶＤＣが上述のように適切な値が設定されているため、オペアンプＯＰ１において、適切な増幅が行える。
【００３５】
このオペアンプＯＰ１の出力は、直流カットコンデンサＣを介し、コンパレータＣＭＰに入力され、ここで基準電圧（この場合はグランド電圧）と比較され、２値化出力が得られる。なお、コンパレータＣＭＰの出力は、プルアップ抵抗によってプルアップされている。
【００３６】
コンパレータＣＭＰの出力は、フリップフロップＦＦのデータ入力端に入力されており、このフリップフロップＦＦのクロック入力端に所望のクロックＣＬＫが入力されている。そこで、フリップフロップＦＦには、クロックＣＬＫの立ち上がりのタイミングでそのデータ入力端の信号がサンプリングされ、これがフリップフロップＦＦの出力に得られることになる。そして、基本的には、抵抗Ｒｓの熱雑音に起因する雑音をフリップフロップＦＦにおいてサンプリングすることになり、周期性のない乱数であって、クロックＣＬＫをデータクロックとしたものがフリップフロップＦＦの出力に得られる。
【００３７】
図４は、他の実施形態の構成を示すものであり、この実施形態では、抵抗Ｒｓと電源ＶＣＣの間に、２つのダイオードＱ３、Ｑ４が挿入配置されている。上述の式から明らかなように、出力負荷抵抗である抵抗ＲＬを大きくした方が、熱雑音を大きくすることができる。図４の構成によれば、抵抗ＲＬをＲｓ以上に設定することが可能になる。すなわち、図１の構成では、Ｒｓ＝ＲＬ以上に抵抗ＲＬの値を設定すると、トランジスタＱ２が飽和してしまい、電流量をＩ１に維持できない。図４の構成では、２つのダイオードＱ３、Ｑ４により抵抗Ｒｓに加わる電圧を小さくすることができ、これによって電流Ｉ１を減少することができる。これによって、抵抗ＲＬ大きくすることができ、出力の雑音を大きくすることができる。
【００３８】
また、トランジスタＱ１とトランジスタＱ２のトランジスタサイズを変更することも好適である。トランジスタＱ２のトランジスタサイズをトランジスタＱ１に比べ大きくすることによって、トランジスタＱ２に流れる電流を大きくすることができ、ｇｍを大きくすることができ、出力の雑音を大きくすることができる。さらに、この場合には入力抵抗である抵抗Ｒｓを大きくすることができ、抵抗Ｒｓにおいて発生する熱雑音を大きくすることができ、出力の雑音を大きくすることができる。
【００３９】
図５には、さらに他の実施形態の構成が示されており、この構成ではトランジスタＱ２へのベース電流供給ラインに抵抗Ｒｓ２が挿入配置されている。この構成によれば、抵抗Ｒｓ２の熱雑音がさらに重畳されることになり、出力の雑音を大きくすることができる。
【００４０】
図６には、さらに他の実施形態の構成が示されている。この構成では、ダイオード接続のトランジスタＱ１に代えてトランジスタＱ５が採用され、このトランジスタＱ５のコレクタベース間をトランジスタＱ６によって接続している。すなわち、コレクタが電源ＶＣＣに接続されたトランジスタＱ６のベースをトランジスタＱ５のコレクタに接続し、エミッタをトランジスタＱ５のベースに接続している。これによって、図１と同様の作用効果が得られる。さらに、このような通常のトランジスタ回路において、よく知られた変形や追加は数多くあり、これらを適宜採用することができる。
【００４１】
図７には、さらに他の実施形態の構成を示されている。この構成では、トランジスタＱ１に代えて抵抗Ｒｓ３を採用するとともに、トランジスタＱ２のベースに至る経路に抵抗Ｒｓ２を設けている。この構成によれば、抵抗Ｒｓ２によって、ベース電流ＩＢを制御することができ、出力の直流成分ＶＤＣ＝ＶＣＣ−Ｉｃ・ＲＬ＝ＩＢ・ｈｆｅ・ＲＬとなる。従って、直流成分ＶＤＣがＱ２のｈｆｅに影響されるという問題があるが、直流成分ＶＤＣを設定することができ、また熱雑音についての出力を得ることができる。特に、トランジスタＱ２のエミッタ抵抗をｒｅとした場合に、Ｒ／ｒｅに基づく雑音を出力に得ることができる。
【００４２】
図８には、図１の実施形態におけるダイオードＱ１およびトランジスタＱ２として、ＰＮＰ型のものを採用した例を示している。すなわち、ＰＮＰ型のトランジスタＱ１のエミッタを電源ＶＣＣに接続し、ベースコレクタ間を短絡するとともに、コレクタを抵抗Ｒｓを介しグランドに接続している。そして、トランジスタＱ１のベースにベースが接続されたトランジスタＱ２のエミッタを電源ＶＣＣに接続し、コレクタを抵抗ＲＬを介しグランドに接続している。この例においても、図１と同様の作用効果が得られる。また、上述の例では、トランジスタとしてバイポーラトランジスタを採用したが、ＭＯＳＦＥＴなども同様にして利用することができる。
【００４３】
なお、本実施形態の乱数発生回路は、半導体集積回路として構成することが好適であり、前記熱雑音を発生する抵抗は、ポリシリコン構成することが好適である。ポリシリコンは負の温度特性を持ち、温度が上昇すると抵抗値が減少する。一方、抵抗の熱雑音の大きさ（電圧ｖ０の２乗）は、ｖ０２＝４ｋＴ・Ｒ・Δｆ（ｋ：ボルツマン定数、Ｔ：絶対温度、Ｒ：抵抗の抵抗値、Δｆ：雑音の周波数帯域）と表すことができる。従って、抵抗値Ｒが温度の上昇に従って減少することで、４ｋＴの上昇分を相殺することができ、発生する熱雑音が温度により変動することを防止することができる。
【００４４】
【発明の効果】
以上説明したように、基準電圧をトランジスタの制御端子に入力することで、トランジスタに流れる電流に応じて出力の直流成分を決定することができ、出力の直流成分の決定が容易になる。さらに、このトランジスタによって入力側の抵抗の熱雑音を増幅することもできる。従って、出力についての増幅が容易であり、増幅器の数を減らして、効果的な回路構成で乱数発生が行える。
【図面の簡単な説明】
【図１】実施形態の回路構成を示す図である。
【図２】等価回路の構成を示す図である。
【図３】乱数発生回路全体の構成を示す図である。
【図４】他の実施形態の回路構成を示す図である。
【図５】さらに他の実施形態の構成を示す図である。
【図６】さらに他の実施形態の構成を示す図である。
【図７】さらに他の実施形態の構成を示す図である。
【図８】さらに他の実施形態の構成を示す図である。
【符号の説明】
Ｒｓ，ＲＬ　抵抗、Ｑ１，Ｑ２　トランジスタ。
【図１】
2004013523.tif 000003
【図２】
2004013523.tif 000004
【図３】
2004013523.tif 000005
【図４】
2004013523.tif 000006
【図５】
2004013523.tif 000007
【図６】
2004013523.tif 000008
【図７】
2004013523.tif 000009
【図８】
2004013523.tif 000010