(57)【要約】      （修正有）【課題】トラップを利用したランダムノイズ生成素子を用いても、使用回数や使用頻度に関わらず、乱数生成に必要なノイズ信号を初期状態と変わらない状態に保つ。【解決手段】電圧供給回路２０と、半導体基板上に形成されたソース、ドレイン領域と、ソースとドレイン間のチャネルとなるトンネル絶縁膜と、トンネル絶縁膜上の電圧供給回路からの電圧が印加されるゲート電極と、トンネル絶縁膜とゲート電極との間に設けられた電荷トラップ部とを有し、電荷トラップ部に捕獲された電荷に基づいてソースとドレイン間に流れるドレイン電流にランダムノイズが生成されるランダムノイズ生成素子１０と、ランダムノイズ生成素子から生成されるランダムノイズを乱数に変換し出力する乱数変換回路３０と、乱数変換回路から出力される乱数を検定する検定回路５０と、電荷トラップ部内の電荷を半導体基板に引き抜き電荷トラップ部を初期化する初期化回路７０とを備えている。【選択図】図３
2010055205.tif 000002
【特許請求の範囲】
【請求項１】
電圧を供給する電圧供給回路と、
半導体基板上に離間して形成されたソースおよびドレイン領域と、前記ソース領域と前記ドレイン領域との間のチャネル領域となる前記半導体基板上に形成されたトンネル絶縁膜と、前記トンネル絶縁膜上に形成され前記電圧供給回路からの電圧が印加されるゲート電極と、前記トンネル絶縁膜と前記ゲート電極との間に設けられ電荷をトラップすることが可能な電荷トラップ部と、を有し、前記電荷トラップ部に捕獲された電荷に基づいて前記ソース領域と前記ドレイン領域間に流れるドレイン電流にランダムノイズが生成されるランダムノイズ生成素子と、
前記ランダムノイズ生成素子から生成されるランダムノイズを乱数に変換して出力する乱数変換回路と、
前記乱数変換回路から出力される乱数を検定する第１検定回路と、
前記ランダムノイズ生成素子の前記電荷トラップ部内の電荷を、前記トンネル絶縁膜を通して前記半導体基板に引き抜き前記電荷トラップ部を初期化する初期化回路と、
を備えることを特徴とする乱数生成装置。
【請求項２】
前記初期化回路は、前記第１検定回路によって前記乱数の検定結果が不合格とされた時および前記第１検定回路による前記乱数の検定結果の合格数が所定値に達した時のいずれかの場合に動作することを特徴とする請求項１記載の乱数生成装置。
【請求項３】
前記初期化回路は、前記半導体基板に正の電圧を印加することにより、前記電荷トラップ部内の電荷を引き抜くことを特徴とする請求項１または２記載の乱数生成装置。
【請求項４】
前記初期化回路は、前記ゲート電極に負の電圧を印加することにより、前記電荷トラップ部内の電荷を引き抜くことを特徴とする請求項１または２記載の乱数生成装置。
【請求項５】
電圧を供給する電圧供給回路と、
半導体基板上に離間して形成されたソースおよびドレイン領域と、前記ソース領域と前記ドレイン領域との間のチャネル領域となる前記半導体基板上に形成されたトンネル絶縁膜と、前記トンネル絶縁膜上に形成され前記電圧供給回路からの電圧が印加されるゲート電極と、前記トンネル絶縁膜と前記ゲート電極との間に設けられ電荷をトラップすることが可能な電荷トラップ部と、を有し、前記電荷トラップ部に捕獲された電荷に基づいて前記ソース領域と前記ドレイン領域間に流れるドレイン電流にランダムノイズが生成されるランダムノイズ生成素子と、
前記ランダムノイズ生成素子から生成されるランダムノイズを乱数に変換して出力する乱数変換回路と、
前記乱数変換回路から出力される乱数を検定する第１検定回路と、
前記ランダムノイズ生成素子の前記ドレイン電流をモニターし、前記ドレイン電流が安定したか否かを判定するドレイン電流モニター回路と、
前記ドレイン電流モニター回路によって前記ドレイン電流が安定したと判断されかつ前記第１検定回路によって前記乱数が合格とされた場合に、前記乱数変換回路から出力される前記乱数を外部に出力する出力回路と、
を備えていることを特徴とする乱数生成装置。
【請求項６】
前記電流モニター回路は、
異なる複数の基準電流を供給することが可能な電流供給回路と、
複数の前記基準電流のうちの１つ基準電流と前記ランダムノイズ生成素子のドレイン電流とを比較し、比較結果に基づいてデータ「１」またはデータ「０」を出力するコンパレータと、
前記コンパレータから出力される連続したデータの所定個数のうち、データ「１」の個数とデータ「０」の個数のどちらが多いかを検定する第２検定回路と、
前記電流供給回路から供給される基準電流を小さい基準電流から大きい基準電流に変えていった場合に、前記第２検定回路による検定結果が変化したときに前記ドレイン電流が安定したと判定する判定回路と、
を備えていることを特徴とする請求項５記載の乱数生成装置。
【請求項７】
前記乱数変換回路は、前記ランダムノイズから周期性を除去する平滑化回路を備えていることを特徴とする請求項１乃至６のいずれかに記載の乱数生成装置。
【請求項８】
前記電圧供給回路は、異なる電圧を発生することが可能であることを特徴とする請求項１乃至７のいずれかに記載の乱数生成装置。
【請求項９】
前記電圧供給回路は、前記ランダムノイズ生成素子の前記ドレイン領域にも電圧を印加することを特徴とする請求項１乃至８のいずれかに記載の乱数生成装置。
【請求項１０】
前記第１検定回路は、モノビット・テストを行うことを特徴とする請求項１乃至９のいずれかに記載の乱数生成装置。
【請求項１１】
前記第１検定回路は、ロングラン・テストを行うことを特徴とする請求項１乃至９のいずれかに記載の乱数生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、乱数生成装置に関する。
【背景技術】
【０００２】
従来、物理乱数生成源を用いた乱数生成装置が知られている。その乱数源として代表的なものとして、熱雑音、量子効果、または電荷トラップが挙げられる。ここで電荷トラップは、格子欠陥、不純物などによって自然に形成されるものや量子ドットなどによって、人工的に形成されるものなど様々な形態がある。また、電荷トラップは、ＮＡＮＤ型フラッシュメモリからの電荷の自然減を利用した場合に適用できる。電荷トラップは素子の微細化によって、より顕著になる傾向がある。
【０００３】
一方、ＩＣカード等の小型携帯端末に搭載される乱数生成装置の乱数として、従来は一定のアルゴリズムで作られる算術乱数が用いられてきた。高いセキュリティレベルが求められる中、その基準は年々厳しくなっており、より真性度の高い乱数が求められている。さらに、搭載される乱数生成装置により生成される乱数の質の定期的なチェックを行うことが必須条件となりつつある。例えば、Schindlerらによって提示されたＡＩＳ３１(Application notes Interpretation of the Scheme)においては、ランダムノイズ生成素子にオンラインテストとスタートアップテストなどが課されている。
【０００４】
これに対し、乱数の質を定期的にチェックする検定回路を組み込んだ自己検定型乱数生成装置が知られている（例えば、特許文献１参照）。特許文献１に記載の乱数生成装置においては、トラップを利用したランダムノイズ生成素子が用いられ、検定方法としてＭＯＮＯＢＩＴテストが採用され、その検定結果より、基準を満たす、より良い結果が得られたランダムノイズ生成素子が選び出され、乱数生成に使用される。
【０００５】
また、特許文献２に記載の乱数生成装置においては、ランダムノイズ生成素子中のトラップに蓄積された電荷を放出する時間がランダムになることを利用しており、電荷放出にかかる時間がある基準の時間よりも長いか短いかによって「１」か「０」に振り分ける方法をとっている。
【特許文献１】米国特許公開第２００５／０１２３４７１号明細書
【特許文献２】米国特許公開第２００７／０２７６８９０号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、後述するように、トラップを利用したランダムノイズ生成素子は、トラップに蓄積された電荷が蓄積されたままになりやすく、ある固定の基準値を設けたとしても、使用回数や使用頻度によって電荷放出時間の平均値も変化し、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数の生成ができなくなる可能性がある。
【０００７】
本発明は、上記事情を考慮してなされたものであって、トラップを利用したランダムノイズ生成素子を用いても、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数の生成することのできる乱数生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の態様による乱数生成装置は、電圧を供給する電圧供給回路と、半導体基板上に離間して形成されたソースおよびドレイン領域と、前記ソース領域と前記ドレイン領域との間のチャネル領域となる前記半導体基板上に形成されたトンネル絶縁膜と、前記トンネル絶縁膜上に形成され前記電圧供給回路からの電圧が印加されるゲート電極と、前記トンネル絶縁膜と前記ゲート電極との間に設けられ電荷をトラップすることが可能な電荷トラップ部と、を有し、前記電荷トラップ部に捕獲された電荷に基づいて前記ソース領域と前記ドレイン領域間に流れるドレイン電流にランダムノイズが生成されるランダムノイズ生成素子と、前記ランダムノイズ生成素子から生成されるランダムノイズを乱数に変換して出力する乱数変換回路と、前記乱数変換回路から出力される乱数を検定する第１検定回路と、前記ランダムノイズ生成素子の前記電荷トラップ部内の電荷を、前記トンネル絶縁膜を通して前記半導体基板に引き抜き前記電荷トラップ部を初期化する初期化回路と、を備えることを特徴とする。
【０００９】
また、本発明の第２の態様による乱数生成装置は、電圧を供給する電圧供給回路と、
半導体基板上に離間して形成されたソースおよびドレイン領域と、前記ソース領域と前記ドレイン領域との間のチャネル領域となる前記半導体基板上に形成されたトンネル絶縁膜と、前記トンネル絶縁膜上に形成され前記電圧供給回路からの電圧が印加されるゲート電極と、前記トンネル絶縁膜と前記ゲート電極との間に設けられ電荷をトラップすることが可能な電荷トラップ部と、を有し、前記電荷トラップ部に捕獲された電荷に基づいて前記ソース領域と前記ドレイン領域間に流れるドレイン電流にランダムノイズが生成されるランダムノイズ生成素子と、前記ランダムノイズ生成素子から生成されるランダムノイズを乱数に変換して出力する乱数変換回路と、前記乱数変換回路から出力される乱数を検定する第１検定回路と、前記ランダムノイズ生成素子の前記ドレイン電流をモニターし、前記ドレイン電流が安定したか否かを判定するドレイン電流モニター回路と、前記ドレイン電流モニター回路によって前記ドレイン電流が安定したと判断されかつ前記第１検定回路によって前記乱数が合格とされた場合に、前記乱数変換回路から出力される前記乱数を外部に出力する出力回路と、を備えていることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、トラップを利用したランダムノイズ生成素子を用いても、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【発明を実施するための最良の形態】
【００１１】
本発明の実施形態を説明する前に、本発明に至った経緯および本発明の概要について説明する。
【００１２】
まず、ランダムノイズ生成素子の初期化の必要性について説明する。電荷トラップをノイズ生成源とするランダムノイズ生成素子の一例として、非化学量論的ＳｉＮ膜のトラップ膜を有し、このＳｉＮ膜中のダングリングボンドを利用したＭＯＳＦＥＴを挙げられる（例えば、特開２００７−３０４７３０号公報参照）。なお、本発明の一実施形態においては、ランダムノイズ生成素子としては、ＳｉＮ膜中のダングリングボンドを利用したＭＯＳＦＥＴばかりでなく、ＲＴＳ（Random telegraph signal）を利用した通常のＭＯＳＦＥＴ、またはＮＡＮＤフラッシュメモリ等のメモリ素子であって、メモリからの電荷のリークを乱数として利用したメモリ素子も用いることができる。
【００１３】
本発明の一実施形態に用いられるランダムノイズ生成素子１０、例えば特開２００７−３０４７３０号公報に記載のＭＯＳＦＥＴは、図１に示すように、半導体基板１のチャネル領域１ａ上にトンネル絶縁膜２が形成され、トンネル絶縁膜２上にトラップ絶縁膜３が形成されている。これらのトンネル絶縁膜２およびトラップ絶縁膜３によって絶縁部が形成されている。トラップ絶縁膜３は、ダングリングボンドに基づくトラップを有し、Ｓｉｘ(ＳｉＯ２)ｙ(Ｓｉ３Ｎ４)１−ｙＭｚ（ただし、ＭはＳｉ、Ｏ及びＮ以外の元素、ｘ≧０、１≧ｙ≧０、ｚ≧０（ｘ＝０且つｙ＝１且つｚ＝０の場合は除く））なる一般式で表される。例えば、トラップ絶縁膜３は、非化学量論的なシリコン酸窒化膜で形成されている。このトラップ絶縁膜３上には制御酸化膜（制御絶縁膜）４が形成され、制御酸化膜４上にはｎ＋型ポリシリコンで形成されたゲート電極（制御電極）５が形成されている。
【００１４】
このように、本発明の一実施形態におけるランダムノイズ生成素子１０においては、チャネル領域１ａと、ダングリングボンドに基づくトラップを有するトラップ絶縁膜３との間には、非常に薄いトンネル絶縁膜２が介在しているだけである。このため、熱揺らぎに起因した電子（電荷）のランダムな充放電が、トンネル絶縁膜２を介して、チャネル領域１とトラップ絶縁膜３との間で生じる。したがって、トラップ絶縁膜３中のトラップに捕捉された電荷の量に応じて、チャネル領域１ａの導電性がランダムに変動する。すなわち、トラップに捕捉された電荷の量に応じて、ソース領域６ａおよびドレイン領域６ｂ間に流れる電流がランダムに変動する。したがって、ランダムノイズ生成素子１０に後述する乱数変換回路を接続することにより、チャネル領域１ａの導電性のランダムな変動に基づく物理乱数を生成することが可能である。
【００１５】
上記ランダムノイズ生成素子１０において、ゲート電極に電圧を長時間印加した際のドレイン電流の経時変化について測定した結果を図２に示す。図２からわかるように、ドレイン電流は高速にランダムな増減を繰り返しながらも、時間とともに単位時間当たりの平均電流値が減少している。この現象は、電圧を長時間印加し続けることで、チャネル領域１とトラップ絶縁膜３との間で電荷の充放電は行われるが、一部の電荷はトラップにそのまま蓄積され、トラップされた電荷によるクーロン遮蔽効果によってキャリア電子が侵入できない領域が徐々に増え、これにより、ランダムな変化は残しながらもチャネルは高抵抗になることが原因であると本発明者達は考えた。
【００１６】
これは、特開２００７−３０４７３０号公報に記載されたランダムノイズ生成素子だけに起こる現象ではなく、例えば特開２００５−１６７１６５公報に記載されたように、何らかの電荷トラップを利用してランダムノイズを生成する場合には、どのランダムノイズ生成素子においても起こる可能性のある現象である。特開２００５−１６７１６５号公報におけるランダムノイズ生成素子は、Ｓｉ微結晶粒子群を電荷トラップとして用いたＭＯＳＦＥＴであって、チャネルと、Ｓｉ微結晶粒子群との間には、非常に薄いトンネル絶縁膜が介在しているだけであり、チャネルとトラップとなるＳｉ微結晶粒子群間で熱揺らぎに起因した電子のランダムな充放電が生じる。したがって、Ｓｉ微結晶粒子群に捕捉された電荷の量に応じて、チャネル領域の導電性がランダムに変動する。その結果、チャネルに流れる電流がランダムに変動し、ランダムノイズが発生する。このランダムノイズを乱数変換回路によってデジタル乱数へ変換することで、乱数を発生させることが可能である。この特開２００５−１６７１６５公報に記載されたランダムノイズ生成素子も本発明の一実施形態による乱数生成装置のランダムノイズ生成素子として用いることができる。
【００１７】
上記乱数変換回路はランダムノイズ信号を何らかの方法を用いてデジタル乱数へ変換する回路のことであり、例えば、ある基準の電流値（もしくは電圧値）に対する入力された電流値（もしくは電圧値）の大小で出力デジタル乱数の「１」，「０」を決定する（このときの基準は概ね電流および電圧の平均値）。上述したように、ランダムノイズ生成素子においては、ドレインの平均電流が時間の経過とともにずれてしまう特性を有しているので、乱数変換回路に入力されるランダムな電流値（もしくは電圧値）が全体的に基準値と比較して下回る、もしくは上回り、乱数変換回路から出力される乱数の「１」と「０」の総数のバランスが均等ではなくなる可能性がある。
【００１８】
そこで、本発明者達は、ランダムノイズ生成素子の電荷トラップに蓄積された電荷を定期的に放出させて、ランダムノイズ生成素子におけるトラップ膜を初期状態に戻せば、経時変化により乱数の質が左右されず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数生成を可能とする乱数生成装置を実現できると考えた。すなわち、本発明の一実施形態による乱数生成装置においては、電荷トラップがノイズ生成源となるランダムノイズ生成素子を初期状態に戻すための初期化回路を備えるよう構成したものである。
【００１９】
（第１実施形態）
本発明の第１実施形態による乱数生成装置を図３に示す。本実施形態の乱数生成装置は、ランダムノイズ生成素子１０と、最適電圧調整回路２０と、乱数変換回路３０と、平滑化回路４０と、検定回路５０と、出力回路６０、初期化回路７０、制御回路１００とを、備えている。ランダムノイズ生成素子１０は、例えば、図１に示すＭＯＳＦＥＴである。
【００２０】
最適電圧調整回路２０は、ランダムノイズ生成素子１０がランダムノイズ（物理乱数）を発生するのに適したゲート電圧を調整する回路であって、ゲート電圧供給回路２１と、ゲート電圧を切り換えるための切り換え信号ＳＡ、ＳＢ、ＳＣ、ＳＤ、ＳＥを発生する切り換え信号発生回路２５とを備えている。ゲート電圧供給回路２１は、直列に接続されかつゲートに制御回路１００からのゲート信号ＶＧ１を受ける例えば６個のｎチャネルＭＯＳトランジスタ２２ａ、２２ｂ、２２ｃ、２２ｄ、２２ｅ、２２ｆからなる直列回路と、５個のスイッチ２３ａ、２３ｂ、２３ｃ、２３ｄ、２３ｅと、を備えている。上記直列回路の一端は電源電圧ＶＤ１に接続され、他端は接地される。スイッチ２３ａは、切り換え信号ＳＡに基づいて動作し、一端がＭＯＳトランジスタ２２ａとＭＯＳトランジスタ２２ｂとの共通接続ノードに接続され、他端がランダムノイズ生成素子１０のゲートに接続される。スイッチ２３ｂは、切り換え信号ＳＢに基づいて動作し、一端がＭＯＳトランジスタ２２ｂとＭＯＳトランジスタ２２ｃとの共通接続ノードに接続され、他端がランダムノイズ生成素子１０のゲートに接続される。スイッチ２３ｃは、切り換え信号ＳＣに基づいて動作し、一端がＭＯＳトランジスタ２２ｃとＭＯＳトランジスタ２２ｄとの共通接続ノードに接続され、他端がランダムノイズ生成素子１０のゲートに接続される。スイッチ２３ｄは、切り換え信号ＳＤに基づいて動作し、一端がＭＯＳトランジスタ２２ｄとＭＯＳトランジスタ２２ｅとの共通接続ノードに接続され、他端がランダムノイズ生成素子１０のゲートに接続される。スイッチ２３ｅは、切り換え信号ＳＥに基づいて動作し、一端がＭＯＳトランジスタ２２ｅとＭＯＳトランジスタ２２ｆとの共通接続ノードに接続され、他端がランダムノイズ生成素子１０のゲートに接続される。すなわち、ゲート電圧供給回路２１は、電源電圧ＶＤ１を、６個のＭＯＳトランジスタ２２ａ、２２ｂ、２２ｃ、２２ｄ、２２ｅ、２２ｆのオン抵抗によって分圧した５個の電圧を切り換え信号ＳＡ、ＳＢ、ＳＣ、ＳＤ、ＳＥに基づいて選択し、ランダムノイズ生成素子１０のゲートに印加する。
【００２１】
切り換え信号発生回路２５は、検定回路５０から出力される検定が不合格であることを示す信号Ｓ２＿ＮＧに基づいて動作する４個のＤ型フリップフロップ２６１〜２６４が直列に接続された４段のシフト段を有するシフトレジスタである。第１のシフト段のフリップフロップ２６１の入力信号（制御回路１００からのオン信号Ｓ３）が切り換え信号ＳＥであり、出力信号が切り換え信号ＳＤである。そして、第２のシフト段のフリップフロップ２６２の出力信号が切り換え信号ＳＣであり、第３のシフト段のフリップフロップ２６３の出力信号が切り換え信号ＳＢであり、第４のシフト段のフリップフロップ２６４の出力信号が切り換え信号ＳＡである。すなわち、制御回路１００から送られてきたオン信号Ｓ３は、検定回路５０から信号Ｓ２＿ＮＧが送られてくる度に、順次シフトされて、シフトされた段から切り換え信号が発生される。このシフトレジスタ２５は、制御回路１００から送られてくるリセット信号Ｒ２によってリセットされる。なお、シフトレジスタ２５の段数と、ゲート電圧供給回路２１のスイッチ２３ａ、２３ｂ、２３ｃ、２３ｄ、２３ｅの個数とは同じ数であり、それらの数は、ランダムノイズ生成素子１０のゲートへの印加電圧を調整する上での刻み幅と数に応じて変更する。
【００２２】
乱数変換回路３０は、制御回路１００から送られてくるクロック信号ＣＬＫ＿１の立ち上がりまたは立ち下がりのタイミングでランダムノイズ生成素子１０から発生する物理乱数（例えば、ドレイン電流値）をサンプリングし、そのサンプル値に応じて値が「０」または「１」となるデジタルランダム信号ＲＳを出力する。
【００２３】
本実施形態に用いられるランダムノイズ生成素子１０は、発生するランダムノイズが１／ｆ特性（ここで、ｆは揺らぎの周波数）を有している。そこで、本実施形態では、この１／ｆ特性による周期性を持たない乱数生成を行うために、平滑化回路４０が設けられている。すなわち、平滑化回路４０は、乱数変換回路３０から出力されるデジタルランダム信号から１／ｆ特性による周期性が除去されたデジタルランダム信号を出力する。この平滑化回路４０は、乱数変換回路３０に組み込まれていてもよい。また、発生するランダムノイズに１／ｆ特性を有していないランダムノイズ生成素子を用いる場合には、平滑化回路は不要となる。
【００２４】
平滑化回路４０の一具体例を図４に示す。この具体例の平滑化回路４０は、フリップフロップからなるカウンタ回路４２と、インバータ４４と、フリップフロップからなるラッチ回路４６と、を備えている。カウンタ回路４２は、乱数変換回路３０から送られてきてＤ端子に入力されるデジタルランダム信号ＲＳの変化に応じて、制御回路１００から送られてきてクロックイネーブル端子ＣＥに入力される基準クロック信号ＣＬＫ＿０のクロックをカウントし、そのカウント値ＣＴＳを出力する。ラッチ回路４６は、デジタルランダム信号ＲＳがインバータ４４によって反転されたデジタルランダム信号／ＲＳをクロック入力端子ＣＫに受け、このデジタルランダム信号／ＲＳの変化に応じて、カウンタ回路４２の出力ＣＴＳをラッチし、このラッチした値ＯＵＴ＿ＲＳを出力する。
【００２５】
図４に示す平滑化回路４０の動作を説明する波形図を図５に示す。まず、時刻Ｔ５において、乱数変換回路３０の出力であるランダム信号ＲＳがローレベルからハイレベルとなる。時刻Ｔ５からＴ６までの間、ランダム信号ＲＳがハイレベルの状態では、カウンタ回路４２は、出力端子Ｑからカウント信号ＣＴＳを出力する。カウント信号ＣＴＳは、クロック信号ＣＬＫ＿０の立ち上がりエッジ検出毎にハイレベルとローレベルを交互に切り換える。なお、ここでは、カウンタ回路４２は、例示的に１カウントごとにローレベルとハイレベルが交互に切り換わる１ビットカウンタであるとする。時刻Ｔ６において、ランダム信号ＲＳがハイレベルからローレベルとなると、インバータ４４は、ハイレベルとなるランダム信号／ＲＳを出力する。ランダム信号／ＲＳがハイレベルとなると、ラッチ回路４６は、カウンタ回路４２から出力されるカウント信号ＣＴＳをラッチし、乱数信号ＯＵＴ＿ＲＳを出力する。時刻Ｔ７において、再びランダム信号ＲＳがローレベルからハイレベルとなる。すると、カウンタ回路４２は、ランダム信号ＲＳがハイレベルの状態が続く間、クロック信号ＣＬＫ＿０の立ち上がりエッジ検出毎に、カウント信号ＣＴＳのレベルを交互に切り替える。時刻Ｔ８において、ランダム信号ＲＳがハイレベルからローレベルとなる。ランダム信号ＲＳがローレベルとなると、インバータ４４は、ハイレベルとなるランダム信号／ＲＳを出力する。ランダム信号／ＲＳがハイレベルとなると、ラッチ回路４６は、カウンタ回路４２から出力されるカウント信号ＣＴＳをラッチし、乱数信号ＯＵＴ＿ＲＳを出力する。以後、同様にランダム信号ＲＳの立ち下がりエッジで乱数信号ＯＵＴ＿ＲＳを出力する動作を繰り返す。
【００２６】
図４に示す本具体例の平滑化回路４０を用いることで、クロック信号ＣＬＫ＿０の周波数が高いほど、「０」と「１」の出現する頻度に偏りがなくなり、ランダムノイズ生成素子１０が有する１／ｆ特性を打ち消す効果がある。但し、乱数を生成する場合は、使用する乱数の特性を考慮し、クロック信号ＣＬＫ＿０の周波数を選定する必要がある。
【００２７】
このようにして、平滑化回路４０によって１／ｆ特性が打ち消された乱数は、検定回路５０に送られる。そして検定回路５０において、平滑化回路４０から出力される乱数が、予測不可能性、再現不可能性を持ち合わせた高品質な乱数であるか否かの検定が行われる。
【００２８】
本実施形態に係る検定回路５０の一具体例を図６に示し、本検定回路の動作のタイミングチャートを図７に示す。この具体例の検定回路５０は、フリップフロップからなるカウンタ回路５２と、比較回路５４と、フリップフロップからなるラッチ回路５６とを備えている。この具体例の検定回路はモノビット・テスト（monobit test）に由来し、平滑化回路４０から出力されるデジタル乱数のうち値が「１」の個数を数える。カウンタ回路５２により平滑化回路４０から出力されたデジタル乱数の「１」の数を数え、カウントされた値は比較回路５４において、予め定められた基準値と比較される。カウンタ回路５２によりカウントされた値が上記基準値の範囲内にある場合、比較回路５４は、カウンタ回路５２がリセットされてから次にリセットされるまでに、必ずあるクロック間でデータ「１」を出力する。また、検定開始から、検定で用いる、定めた乱数の総数をＮとするとき、Ｎクロック目で立ち上がる信号Ｔ１により、ラッチ回路５６により、比較回路５４から出力される値をラッチする。この検定回路５０による検定は、上記信号Ｔ１によってラッチされたラッチ回路５６の出力端子Ｑから出力される信号が「１」であれば合格、「０」であれば不合格とする。すなわち、検定合格の時は、ラッチ回路５６の出力端子Ｑから出力される信号が「１」となり、検定不合格のときはラッチ回路５６の出力端子／Ｑから出力される信号が「１」となり、それぞれの出力を、信号Ｓ２＿ＯＫ、Ｓ２＿ＮＧとする。したがって、信号Ｓ２＿ＯＫは検定合格信号となり、信号Ｓ２＿ＮＧは検定不合格信号となる。
【００２９】
なお、図６に示す検定回路５０において、平滑化回路４０と、カウンタ回路５２との間にインバータを設けて、平滑化回路４０の出力をインバータによって反転し、このインバータの出力をカウンタ回路５２のクロック端子ＣＫに入力するように構成してもよい。この場合は、平滑化回路４０の出力のうち「０」をカウントする回路構成となる。
【００３０】
なお、米国商務省国立標準研究所（ＮＩＳＴ）が作成した、４つの乱数データ検定項目からなるＦＩＰＳ（Federal Information Processing Standard）１４０−２の項目に含まれるモノビット・テストにおける基準は、総数２００００ビットの乱数で検定が行われ、そのうち「１」もしくは「０」が、９６５４から１０３４６までの間にあることが検定合格条件である。
【００３１】
図３に示すスイッチ６０は、検定回路５０から検定不合格を意味する信号Ｓ２＿ＮＧが出力されてときにオフ状態となり、平滑化回路４０から出力されるデジタル乱数を外部に出力せず、検定回路５０から検定合格を意味する信号Ｓ２＿ＯＫが出力されてときにオン状態となり、平滑化回路４０から出力されるデジタル乱数を外部に出力する。
【００３２】
次に、本実施形態に係る初期化回路７０について説明する。
【００３３】
一般に、初期化回路の動作条件は下記３つが挙げられる。
（１）乱数生成装置の起動時に実施する
（２）乱数の質が劣化したときに実施する
（３）使用時間もしくは使用回数に応じて定期的に実施する
上記３つの条件を少なくとも１個含むことで本発明の一実施形態の効果を得ることが可能である。
【００３４】
本実施形態に係る初期化回路７０の一具体例を図８に示し、動作を説明する波形図を図９に示す。この具体例の初期化回路７０は、電源７１と、スイッチ回路７２と、カウンタ回路７３と、ラッチ回路７４と、カウンタ回路７５、７７と、比較回路７６、７８と、ＯＲ回路７９とを備えている。
【００３５】
初期化回路７０は、回路起動時、検定回路５０によって不合格とされた時、特定の時間および使用回数時に、制御回路１００から送られてくるリセット信号Ｒ１によって、カウンタ回路７５、７７をリセットし、制御回路１００から送られてくる回路起動パルス信号Ｐ１により、カウンタ回路７５、７７のＶＤＤ信号をオンにする。リセット信号Ｒ１がＯＮとなった後、回路起動パルス信号Ｐ１でスイッチ回路７２をオンとし、電源７１の電圧をランダムノイズ生成素子１０の基板に印加する。電圧の印加時間は、基準クロックＣＬＫ＿０によるｔクロック分を１セットとし、回路起動時のリフレッシュ時には（ｔ×１）クロック分の時間の電圧の印加をランダムノイズ生成素子１０の基板へ行う。ここで、基板へ印加を行う単位時間ｔクロックについては、任意に定めてかまわないが、ｔは数秒程度でも十分にランダムノイズ生成素子１０のトラップ絶縁膜中に蓄積した電荷を引き抜く効果が期待できる。さらに検定合格１回につき、リフレッシュ時間ｔクロック分の印加時間を追加する。例えば、検定回路５０による乱数検定にてａ回合格後、不合格となった場合では、（（ａ＋１）×ｔ）クロック分の時間の電圧印加を行う。
【００３６】
カウンタ７３のクロック入力端子へ検定回路５０からの検定合格信号Ｓ２＿ＯＫが入力され、検定回路５０による合格回数をカウントし、その数をラッチ回路７４で検定不合格信号Ｓ２＿ＮＧの立ち上がりのタイミングで記録する。さらに、カウンタ回路７５のクロック入力端子ＣＫへ基準クロック信号ＣＬＫ＿０を入力し、クロック数をカウントする。このカウント値は比較回路７６に送られ、基準値ｔクロックと比較され、上記カウント値
が基準値ｔクロックとなったところで、比較回路２７から値が「１」となる信号を出力される。この信号は、ＯＲ回路７９に入力され、このＯＲ回路７９の出力によってカウンタ回路７５のカウント値がリセットされる。また、ＯＲ回路７９にはリセット信号Ｒ１も入力される。
【００３７】
また、比較回路７６の出力は、カウンタ回路７７のクロック入力端子へ入力され、カウントされる。比較回路７８は、ラッチ回路７４によって出力された検定回路５０での合格数ＳＯＫ（ａ）に１を足した数（ここでは（ａ＋１））を基準値とし、この基準値と、カウンタ回路７７からの出力であるカウント値とを比較する。そして、カウンタ回路７７からの出力であるカウント値が（ａ＋１）となったとき、値が「１」となるＯＵＴ１を出力し、スイッチ回路７２をオフさせる。すなわち、初期化回路７０から出力される信号ＯＵＴ１は、ランダムノイズ生成素子１０の初期化が終了したことを示す信号となる。
【００３８】
このような構成の初期化回路７０によって、回路起動時、特定の時間および使用回数時に、電源７１の電圧をランダムノイズ生成素子１０の基板に印加することが可能となり、ランダムノイズ生成素子１０を初期化、すなわち、リフレッシュすることができる。
【００３９】
次に、本実施形態に係る最適電圧調整回路２０の動作を、図３および図１０を参照して説明する。図１０は、本実施形態に係る最適電圧調整回路２０の動作を説明する波形図である。
【００４０】
初期化回路７０から出力される、ランダムノイズ生成素子１０の初期化終了を示す信号ＯＵＴ１がオン状態、すなわち値が「１」になると、制御回路１００から出力される制御信号Ｓ３が「１」となり、切り換え信号ＳＥがオン状態になる。これよりスイッチ２３ｅがオンになり、ＭＯＳトランジスタ２２ｅとＭＯＳトランジスタ２２ｆとの共通接続ノードにおける電位がランダムノイズ生成素子１０のゲートに印加される。上記共通接続ノードにおける電圧がゲートに印加された状態でランダムノイズ生成素子１０より出力された物理乱数は、乱数変換回路３０でデジタルランダム信号ＲＳへ変換される。乱数変換回路３０より出力されたデジタルランダム信号を平滑化回路４０で平滑化し、この平滑化されたデジタルランダム信号を検定回路５０で検定を行う。
【００４１】
その検定結果が合格であれば検定合格信号Ｓ２＿ＯＫによって、スイッチ６０がオン状態にされ、平滑化回路４０の出力であるデジタルランダム信号が乱数として、外部に出力される。検定結果が不合格の場合は、検定不合格信号Ｓ２＿ＮＧによってオフ状態とされ、平滑化回路４０の出力であるデジタルランダム信号が乱数として、外部に出力されない。すなわち定期的に行われる検定回路５０による乱数検定に合格し続ける限り、乱数として外部に出力され続ける。
【００４２】
また、検定結果が不合格であった場合には、検定不合格信号Ｓ２＿ＮＧがシフトレジスタ２５のクロック端子へ入力される。これより、切り換え信号は切り換え信号ＳＥから切り換え信号ＳＤへ移行し、ゲート電圧供給回路２１におけるスイッチ２３ｄがオン状態になり、その他スイッチはオフ状態になる。これにより、ランダムノイズ生成素子１０のゲートへは、ＭＯＳトランジスタ２２ｄとＭＯＳトランジスタ２２ｅとの共通接続ノードにおける電圧が印加される。この状態でランダムノイズ生成素子１０より出力された物理乱数は、乱数変換回路３０でデジタルランダム信号へ変換される。スイッチ２３ｅがオン状態だったときと同様に、乱数変換回路３０より出力されたデジタルランダム信号を、平滑化回路４０を介して検定回路５０で乱数検定を行い、その結果が合格であればスイッチ６０をオン状態にし、不合格であれば、検定不合格信号Ｓ２＿ＮＧを発生し、上述したことが繰り返される。これにより、乱数検定に合格するまで、のシフトレジスタ２５およびゲート電圧供給回路２１における印加電圧調整動作が続けられる。
【００４３】
次に、本実施形態の乱数生成装置の動作を、図１１を参照して説明する。図１１は本実施形態の乱数生成装置の動作を示すフローチャートである。
【００４４】
まず、乱数生成装置を起動し、回路起動時にランダムノイズ生成素子１０を初期化（リフレッシュ）する（図１１のステップＳ１１）。この初期化は、制御回路１００から初期化回路７０に回路起動パルス信号Ｐ１を送り、初期化動作を開始させ、ランダムノイズ生成素子１０の基板に正の電圧を印加する。この時、ランダムノイズ生成素子１０のゲートに印加するに適した電圧を、最適電圧調整回路２０により、調整する（ステップＳ１２）。本実施形態では、ドレイン電圧は固定とし、ゲート電圧を調整することで許容範囲のドレイン電流を取得しているが、必要によってはドレイン電圧、ゲート電圧ともに調整することも可能である。
【００４５】
ここで出力ドレイン電流およびドレイン電圧が許容範囲であるか否かは、検定回路５０によって平滑化回路４０を介して得られる乱数変換回路３０の出力について確率統計検定を行い、その合否によって判断する（ステップＳ１３）。検定に合格すれば、現在、ランダムノイズ生成素子１０へ印加されているゲート電圧値が乱数出力に際して基準を満たす印加条件と判断し、そのまま、出力乱数の使用を許可し、スイッチ６０を介して外部に出力する（ステップＳ１４）。そして、検定回路５０によって出力乱数を定期的に検定する（ステップＳ１５）。この検定に合格すれば、ステップＳ１４に戻り、上述のことを繰り返す。ステップＳ１５における定期的な検定に不合格の場合は、ステップＳ１１に戻り、ランダムノイズ生成素子１０をリフレッシュし、上述のことを繰り返す。
【００４６】
ステップＳ１３における検定に不合格の場合は、ステップＳ１６に進み、設定電圧ステップの１サイクルが終了したか否かの判断を行う。ここで、設定電圧ステップの１サイクルとは、最適電圧調整回路２０に印加される電圧ＶＧ１を固定したときに、スイッチ２３ｅからスイッチ２３ａまで順次オン状態として、ランダムノイズ生成素子１０のゲートに印加する電圧（設定電圧）を順次変えて行うことを意味する。本実施形態の場合は、５種類の設定電圧を変えて行っている。設定電圧ステップの１サイクルが終了していない場合は、ステップＳ１２に戻り、最適電圧調整回路２０により、ランダムノイズ生成素子１０に印加するゲート電圧を変更し、その変更したゲート電圧で再度検定を行う（ステップＳ１３）。ステップＳ１３にいて行われる検定に合格すれば、ステップＳ１４に進み、上述のことが繰り返される。不合格であれば、ステップＳ１６に進み、上述したことが繰り返される。
【００４７】
ステップＳ１６において、設定電圧ステップの１サイクルが終了したと判断された場合は、サイクル数が規定値Ａに達しているか否かの判断がステップＳ１７において行われ、規定値Ａに達していると判断された場合は、動作を終了する。規定値Ａに達していないと判断された場合は、ステップＳ１１に戻り、上述したことが繰り返される。なお、このとき、設定電圧ステップのサイクルを複数回繰り返すことにより、ランダムノイズ生成素子１０のトラップ膜から電荷が除去される可能性が高くなり、検定に合格する可能性が高くなる。この規定値Ａに関しては任意に設定することができるが、ある程度の回数この動作を繰り返しても検定に合格しない場合には、その後も検定に合格する乱数を取得できる可能性はかなり低いと判断し、規定値Ａは１０回程度とすることが望ましい。さらに、上記のように、ある程度の回数で最適電圧値調整回路２０によって調整した後、それでも検定に合格する乱数を生成できない場合には、ランダムノイズ生成素子１０が破壊されたものと判断し、そのランダムノイズ生成素子１０を使用した乱数生成を中止する、もしくは、予め用意していた予備のランダムノイズ生成素子と交換するといった措置をとることが望ましい。
【００４８】
以上説明したように、本実施形態によれば、トラップを利用したランダムノイズ生成素子を用いても、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００４９】
（第２実施形態）
次に、本発明の第２実施形態による乱数生成装置を説明する。
【００５０】
本実施形態の乱数生成装置は、第１実施形態の乱数生成装置において、モノビット・テストを行う図６に示す検定回路５０を、ロングラン・テストを行う図１２に示す検定回路１２０に置き換えた構成となっている。
【００５１】
この検定回路１２０は、ある総数の乱数列中が全て「０」または「１」であったときに不合格とするものであり、その一具体例の構成を図１２に示す。この具体例の検定回路１２０は、カウンタ回路１２１と、比較回路１２２と、カウンタ回路１２３と、比較回路１２４と、ＮＯＴ回路１２５と、カウンタ回路１２６と、比較回路１２７と、カウンタ回路１２８と、比較回路１２９と、ＡＮＤ回路１３０と、ＮＡＮＤ回路１３１と、Ｄ型フリップフロップ１３２とを備えている。この検定回路１２０は、ＦＩＰＳ（Federal Information Processing Standard）１４０−２の項目に含まれるロングラン・テストに基づいている。
【００５２】
この検定回路１２０の動作を説明する波形図を図１３に示す。ロングラン・テストによる合否は、乱数２００００ビット中に、「０」もしくは「１」が連続して２６個出力された乱数列の組が１〜２６組の場合を不合格とするテストである。
【００５３】
カウンタ回路１２１は、平滑化回路４０から出力されるランダムなデジタル乱数列のうち、連続する「１」の数をカウントする。また、平滑化回路４０から出力される乱数が「１」から「０」となった際は、フリップフロップ１３２からの信号により、カウンタ回路１２１はリセットされる。また、比較回路１２２は、カウンタ回路１２１がリセットされる直前のカウントされた値を読み取り、その値が２６以上であったときには「１」を出力し、２６未満であったときには「０」を出力する。カウンタ回路１２３は、比較回路１２２からの出力される「１」の回数をカウントし、比較回路１２４は、検定開始から２００００ビット目で立ち上がる信号Ｔ２により、そのタイミングにおけるカウンタ回路１２３おける値を読み取り、その値が１〜２６であったときには「１」を出力し、０もしくは２７以上であったときには「０」を出力する。
【００５４】
また、ＮＯＴ回路１２５は、平滑化回路４０からの出力を受けて反転し、その反転した信号はカウンタ回路１２６に送られる。これより、カウンタ回路１２６は、平滑化回路４０からの出力されるランダムなデジタル乱数列のうち、連続する「０」の数をカウントする。また、平滑化回路４０からの出力乱数が「１」から「０」となった際は、フリップフロップ１３２からの信号により、カウンタ回路１２６はリセットされる。また、比較回路１２７は、カウンタ回路１２６がリセットされる直前のカウントされた値を読み取り、その値が２６以上であったときには「１」を出力し、２６未満であったときには「０」を出力する。さらに、カウンタ回路１２８は、比較回路１２７からの出力される「１」の回数をカウントし、比較回路１２９は、検定開始から２００００ビット目で立ち上がる信号Ｔ２により、そのタイミングにおけるカウンタ回路１２８における値を読み取り、その値が１〜２６であったときには「１」を出力し、０もしくは２７以上であったときには「０」を出力する。
【００５５】
比較回路１２４からの出力は、平滑化回路４０から出力される「１」の乱数列の長さと組数の評価結果であり、比較回路１２９からの出力は、平滑化回路４０から出力される「０」の乱数列の長さと組数の評価結果である。そのため、２００００ビット中に、「１」、「０」ともに相応の乱数列の長さと組数を含んでいればＡＮＤ回路１３０の出力は「１」となり、その出力信号は検定合格信号Ｓ２＿ＯＫとして、出力される。また、「１」、「０」のどちらか一方でも合格条件を満たさなければ、ＡＮＤ回路１３０の出力は「０」となり、ＮＡＮＤ回路１３１の出力が「１」となる。このＮＡＮＤ回路１３１の出力は検定不合格信号Ｓ２＿ＮＧとなり、他回路へその信号は送信される。
【００５６】
本実施形態の乱数生成装置は、第１実施形態の乱数生成装置とは検定方法は異なるが、第１実施形態と同様に、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００５７】
（第３実施形態）
次に、本発明の第３実施形態による乱数生成装置を説明する。
【００５８】
本実施形態の乱数生成装置は、第１実施形態において、図８に示す初期化回路７０を、図１４に示す初期化回路１４０に置き換えた構成となっている。図１４に示す初期化回路１４０は、図８に示す初期化回路７０において、電源７１およびスイッチ回路７２を、２つの電源１４２、１４４と、スイッチ回路１４６に置き換えた構成となっており、第１および第２の実施形態と異なり、初期化の際に、ランダムノイズ生成素子１０の基板に正電圧を印加する代わりに、ゲートに負電圧を印加する構成となっている。この初期化回路１４０の動作を説明する波形図を図１５に示す。
【００５９】
電源１４２は、乱数取得時にランダムノイズ生成素子１０のゲートに電圧が与えられる最適電圧調整回路２０におけるゲート電圧供給回路２１の出力と同じ電圧となる電源であり、電源１４４は、ランダムノイズ生成素子１０を初期化する際に印加する電圧用の電源である。回路起動時、検定回路５０において不合格とされた時，特定の時間および使用回数時にリセット信号Ｒ１によってカウンタ回路７５，７７をリセットし、制御回路１００より出力された回路起動パルス信号Ｐ１により、カウンタ回路７５，７７のＶＤＤ信号をＯＮにする。制御回路１００より出力されるリセット信号Ｒ１がＯＮとなった後、ランダムノイズ生成素子１０のトラップ絶縁膜中に蓄積されたままになっている電荷を引き抜くために、回路起動パルス信号Ｐ１でスイッチ回路８２の接続が電源１４２から電源１４４へと切り替える。これにより、ランダムノイズ生成素子１０のゲートに、電源１４２で印加する電圧とは逆符号（負）の電圧値の印加が開始される。電圧の印加時間は、クロックＣＬＫ＿０によるｔクロック分を１セットとし、回路起動時のリフレッシュには（ｔ×１）クロック分の時間の電圧印加をランダムノイズ生成素子１０のゲートへ行う。さらにチェックテスト合格１回につき、リフレッシュ時間ｔクロック分の印加時間を追加する。例えば、検定回路５０による乱数検定にてａ回合格後、不合格となった場合では、（（ａ＋１）×ｔ）クロック分の時間の電圧の印加を行う。カウンタ７３のクロック入力へ検定合格信号Ｓ２＿ＯＫが入力され、検定回路５０による合格回数をカウントし、その数をラッチ回路７４において、検定不合格信号Ｓ２＿ＮＧを受信したタイミングで記録する。さらに、カウンタ回路７５のクロック入力端子ＣＫへクロックＣＬＫ＿０を入力し、ｔクロックとなったところで、比較回路７６から信号「１」を出力し、この信号をカウンタ回路７７のクロック入力端子へ入力する。比較回路７８は、ラッチ回路７４によって出力された検定回路５０での合格数＋１の数を記録し、カウンタ回路７７の出力がその値と等しくなったとき、比較回路７８から信号「１」を出力し、この信号をＯＵＴ１とする。そして出力信号ＯＵＴ１を受け、スイッチ回路１４６が接続を電源１４４から電源１４２へ切り替える。
【００６０】
以上説明したように、本実施形態は、第１実施形態と初期化の方法が異なるが、第１実施形態と同様に、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００６１】
（第４実施形態）
次に、本発明の第４実施形態による乱数生成装置を説明する。
【００６２】
本実施形態の乱数生成装置は、第２実施形態の乱数生成装置において、初期化回路７０を、第３実施形態で説明した図１４に示す初期化回路１４０に置き換えた構成となっている。
【００６３】
本実施形態は、第２実施形態とは初期化方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００６４】
（第５実施形態）
次に、本発明の第５実施形態による乱数生成装置を説明する。
【００６５】
本実施形態の乱数生成装置は、第１実施形態の乱数生成装置において、初期化回路７０を、図１６に示す初期化回路１５０に置き換えた構成となっている。図１６に示す初期化回路１５０は、図８に示す初期化回路７０において、電源７１およびスイッチ回路７２を、排他的論理和回路（以下、ＸＯＲ回路ともいう）１５１と、カウンタ回路１５２と、ＯＲ回路１５３と、ラッチ回路１５４と、ＭＯＳトランジスタがダイオード接続された抵抗素子１５５に置き換えた構成となっている。この初期化回路１５０の動作を説明する波形図を図１７に示す。
【００６６】
この初期化回路１５０においては、回路起動時、検定回路５０において不合格とされた時、または特定の時間および使用回数時にリセット信号Ｒ１によって、カウンタ回路７５、７７、１５２、およびラッチ回路１５４をリセットし、カウンタ回路７５、７７、ラッチ回路１５４のＶＤＤ信号をＯＮにする。リセット信号Ｒ１がＯＮとなった後、回路起動パルス信号Ｐ１をラッチ回路１５４のクロック入力端子へ入力し、ランダムノイズ生成素子１０の基板へ電圧印加を開始する。電圧の印加時間は、クロックＣＬＫ＿０によるｔクロック分を１セットとし、回路起動時のリフレッシュには（ｔ×１）クロック分の時間の電圧印加をランダムノイズ生成素子１０の基板へ抵抗素子１５５を介して行う。さらに検定合格１回につき、リフレッシュ時間ｔクロック分の印加時間を追加する。例えば、検定回路５０による乱数検定にてａ回合格後、不合格となった場合では、（（ａ＋１）×ｔ）クロック分の時間の電圧印加を行う。カウンタ７３のクロック入力端子へ検定合格信号Ｓ２＿ＯＫが入力され、検定回路５０による合格回数をカウントし、その数をラッチ回路７４で検定不合格信号Ｓ２＿ＮＧの受信タイミングで記録する。さらに、カウンタ７５のクロック入力端子ＣＫへクロックＣＬＫ＿０を入力し、ｔクロックとなったところで、比較回路７６から信号「１」を出力し、この信号をカウンタ回路７７のクロック入力端子へ入力する。比較回路７８は、ラッチ回路７４によって出力された検定回路５０での合格数＋１の数を記録し、カウンタ回路７７の出力がその値と等しくなったとき値が「１」となる信号ＯＵＴ１を出力する。比較回路７８より出力された信号ＯＵＴ１はＸＯＲ回路１５１へ入力され、２ビットカウンタ１５２は信号ＯＵＴ１が「１」となったとき、２桁目が「１」となり、ラッチ回路１５４をリセットし、ランダムノイズ生成素子１０の基板への電圧印加は停止する。
【００６７】
本実施形態は、第１実施形態とは初期化方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００６８】
（第６実施形態）
次に、本発明の第６実施形態による乱数生成装置を説明する。
【００６９】
本実施形態の乱数生成装置は、第２実施形態の乱数生成装置において、初期化回路７０を、第５実施形態で説明した初期化回路１５０に置き換えた構成となっている。
【００７０】
本実施形態は、第２実施形態とは初期化方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００７１】
（第７実施形態）
次に、本発明の第７実施形態による乱数生成装置を図１８に示す。
【００７２】
本実施形態の乱数生成装置は、第１実施形態の乱数生成装置において、最適電圧調整回路２０を最適電圧調整回路２０Ａに置き換えた構成となっている。この最適電圧調整回路２０Ａは、最適電圧調整回路２０と同じ構成を有しているが、ゲート電圧供給回路２１の出力をランダムノイズ生成素子１０のゲートに印加するばかりでなく、ドレインにも印加するように構成されている。すなわち第１乃至第６実施形態では、ランダムノイズ生成素子１０のドレイン電圧は固定とし、ゲート電圧のみ調整する構成であったが、本実施形態では、ランダムノイズ生成素子１０のドレインとゲートを接続した構成とする。この構成を取ることにより、常にランダムノイズ生成素子１０のドレインとゲートに印加される電圧が等しくなり、ドレイン電流は常に飽和領域になる。そのため、ドレイン電流の揺らぎは、線形領域のときと比べて、やや小さくはなるが、ドレイン電流の平均値の変動は抑えられると考えられる。そのため、検定回路１２０による検定を通る乱数取得に最適なランダムノイズ生成素子１０へ印加する電圧条件を一度決定すれば、その後、ドレイン電流の平均電流の変動幅が減少し、最適電圧調整回路２０Ａを起動する回数を減らすことが可能となる。
【００７３】
本実施形態における最適電圧調整回路２０Ａの動作を説明する波形図を図１９に示す。
【００７４】
本実施形態において、ランダムノイズ生成素子１０の初期化終了信号ＯＵＴ１がオン状態、すなわち値が「１」になると、制御回路１００から出力される制御信号Ｓ３が「１」となり、切り換え信号ＳＥがオン状態になる。これよりスイッチ２３ｅがオン状態になり、ＭＯＳトランジスタ２２ｅとＭＯＳトランジスタ２２ｆとの共通接続ノードにおける電位がランダムノイズ生成素子１０のゲートとドレインに印加される。上記共通接続ノードにおける電圧がランダムノイズ生成素子１０のゲートおよびドレインに印加された状態でランダムノイズ生成素子１０より出力された物理乱数は、上述したように、ドレイン電流の平均値の変動は抑えられたものとなる。そして、この物理乱数は、乱数変換回路３０でデジタルランダム信号ＲＳへ変換される。乱数変換回路３０より出力されたデジタルランダム信号を平滑化回路４０で平滑化し、この平滑化されたデジタルランダム信号を検定回路５０で検定を行う。
【００７５】
その検定結果が合格であれば検定合格信号Ｓ２＿ＯＫによって、スイッチ６０がオン状態にされ、平滑化回路４０の出力であるデジタルランダム信号が乱数として外部に出力される。上記検定結果が不合格の場合は、検定不合格信号Ｓ２＿ＮＧによってスイッチ６０がオフ状態にされ、平滑化回路４０の出力であるデジタルランダム信号が乱数として外部に出力されない。すなわち、定期的に行われる検定回路１２０による乱数検定に合格し続ける限り、乱数として外部に出力され続ける。
【００７６】
また、検定結果が不合格であった場合には、検定不合格信号Ｓ２＿ＮＧがシフトレジスタ２５のクロック端子へ入力される。これより、切り換え信号は切り換え信号ＳＥから切り換え信号ＳＤへ移行し、ゲート電圧供給回路２１におけるスイッチ２３ｄがオン状態になり、その他スイッチはオフ状態になる。これにより、ランダムノイズ生成素子１０のゲートへは、ＭＯＳトランジスタ２２ｄとＭＯＳトランジスタ２２ｅとの共通接続ノードにおける電圧が印加される。この状態でランダムノイズ生成素子１０より出力された物理乱数は、乱数変換回路３０でデジタルランダム信号へ変換される。スイッチ２３ｅがオン状態だったときと同様に、乱数変換回路３０より出力されたデジタルランダム信号を、平滑化回路４０を介して検定回路５０で乱数検定を行い、その結果が合格であればスイッチ６０をオン状態にし、不合格であれば、検定不合格信号Ｓ２＿ＮＧを発生し、上述したことが繰り返される。これにより、乱数検定に合格するまで、のシフトレジスタ２５およびゲート電圧供給回路２１における印加電圧の調整動作が続けられる。この印加電圧の調整動作は、乱数検定に合格するまで、続けられる。しかし、設定したすべての電圧印加条件で検定が不合格であった場合には、第１実施形態で説明したように、再度、初期化回路７０にてランダムノイズ生成素子１０を初期化し、最適電圧調整回路２０Ａの動作を初めから行う。ただし、ある回数Ｘだけランダムノイズ生成素子１０の初期化、最適電圧調整回路２０Ａの調整動作を繰り返しても検定で不合格が続いた場合には、この乱数生成装置での乱数出力を停止する。この停止を決定する回数Ｘに関しては任意であるが、数十回この動作を繰り返しても検定に合格しない場合には、その後も検定に合格する乱数を取得できる可能性はかなり低いと判断し、高々試行回数は１０回程度とすることが望ましい。
【００７７】
以上説明したように、本実施形態は、第１実施形態とは検定方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００７８】
（第８実施形態）
次に、本発明の第８実施形態による乱数生成装置を説明する。
【００７９】
本実施形態の乱数生成装置は、第７実施形態の乱数生成装置において、検定回路５０を第２実施形態で説明した図１２に示す検定回路１２０に置き換えた構成となっている。
【００８０】
本実施形態は、第７実施形態と検定方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００８１】
（第９実施形態）
次に、本発明の第９実施形態による乱数生成装置を説明する。
【００８２】
本実施形態の乱数生成装置は、第７実施形態の乱数生成装置において、初期化回路７０を第３実施形態で説明した図１４に示す初期化回路１４０に置き換えた構成となっている。
【００８３】
本実施形態は、第７実施形態と初期化方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００８４】
（第１０実施形態）
次に、本発明の第１０実施形態による乱数生成装置を説明する。
【００８５】
本実施形態の乱数生成装置は、第９実施形態の乱数生成装置において、検定回路５０を第２実施形態で説明した図１２に示す検定回路１２０に置き換えた構成となっている。
【００８６】
本実施形態は、第９実施形態と検定方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００８７】
（第１１実施形態）
次に、本発明の第１１実施形態による乱数生成装置を説明する。
【００８８】
本実施形態の乱数生成装置は、第７実施形態の乱数生成装置において、初期化回路７０を第５実施形態で説明した図１６に示す初期化回路１５０に置き換えた構成となっている。
【００８９】
本実施形態は、第７実施形態と初期化方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００９０】
（第１２実施形態）
次に、本発明の第１２実施形態による乱数生成装置を説明する。
【００９１】
本実施形態の乱数生成装置は、第１１実施形態の乱数生成装置において、検定回路５０を第２実施形態で説明した図１２に示す検定回路１２０に置き換えた構成となっている。
【００９２】
本実施形態は、第１１実施形態と検定方法は異なるが、定期的にランダムノイズ生成素子を初期化しているので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【００９３】
トラップ絶縁膜中に多くのトラップを有するとき、図２に示すように、ドレイン電流は高速にランダムな増減を繰り返しながらも、時間とともに単位時間当たりの平均電流値が減少する現象が見られる。これは、電圧を長時間印加し続けることで、チャネル領域１とトラップ絶縁膜３との間で電荷の充放電はされながらも、一部の電荷はトラップ絶縁膜３にそのまま蓄積され、トラップされた電荷によるクーロン遮蔽効果よってキャリア電子が侵入できない領域がトラップ絶縁膜３において徐々に増えることで、ランダムな変化は残しながらもチャネルは高抵抗になることが原因と考えられる。
【００９４】
以上説明したように、本発明の第１乃至第１２実施形態による乱数生成装置は、トラップ源となるランダムノイズ生成素子中のトラップ膜に蓄積された電荷を定期的に放出させ、ランダムノイズ生成素子を初期化する初期化回路を備えているので、常に使用可能な範囲内の出力値を確保が可能なランダムノイズ生成素子となり、１乱数源素子の寿命の長期化を可能とし、乱数生成装置に設けられるランダムノイズ生成素子は最小限の数に抑えることができる。さらに、定期的に検定をかけ、出力乱数をモニターすることで、ランダムノイズ生成素子が正常な乱数出力が可能な状態にあるのか確認が可能となる。これら両方の機能を合わせ持つことで、常に高いセキュリティを確保し続けることの可能な乱数生成装置を得ることができる。
【００９５】
（第１３乃至第１６実施形態の概要）
上記第１乃至第１２実施形態では、定期的にトラップ絶縁膜に蓄積された電荷を放出させることにより、ランダムノイズ生成素子１０におけるトラップ絶縁膜を初期状態に戻すための初期化回路を設けた。しかし、図２に示すように、平均ドレイン電流は、指数関数的に減少した後、１０００秒付近を境に安定してくる。そこで、以下の第１３乃至第１６実施形態においては、トラップ絶縁膜中のトラップに電荷を溜め込み、トラップへの電荷の出入りが平衡に達し、ドレイン電流が安定する領域になってから乱数取得を開始するために、上記第１実施形態において、ドレイン電流モニター回路が新たに設けられた乱数生成装置について説明する。
【００９６】
まず、第１３乃至第１６実施形態のいずれかによる乱数生成装置の動作の概要を、図２０を参照して説明する。
【００９７】
まず、乱数生成装置を起動する。そして、ランダムノイズ生成素子から出力されるドレイン電流の平均値は図２に示すような指数関数的振る舞いを示し、トラップ絶縁膜のトラップへの電荷の出入りが平衡に達する付近でドレイン電流の平均値はほぼ一定となる（ステップＳ２１）。一定の時間間隔をあけ、段階的にドレイン電流付近の電流値と比較を行うことでこのドレイン電流の平均値の変化をモニターし、ほぼ一定となるまで待つ。
【００９８】
そして、ランダムノイズ生成素子への入力に適した印加電圧を調整する（ステップＳ２２）。ここではドレイン電圧は固定とし、ゲート電圧を調整することで許容範囲のドレイン電流を取得することを仮定した。必要によってはドレイン電圧、ゲート電圧ともに調整することも可能である。
【００９９】
ランダムノイズ生成素子から出力されたドレイン電流が許容範囲であるか否かは、乱数変換回路の後段に設けられる検定回路によって出力乱数について確率統計検定を行い、その合否によって判断する（ステップＳ２３）。検定に合格すれば、現在、ランダムノイズ生成素子へ印加されている値が乱数の出力に際して基準を満たす印加条件と判断し、そのまま乱数の出力を開始する（ステップＳ２４，Ｓ２５）。
【０１００】
しかし、検定に不合格であれば、印加電圧を変更し、その変更に再度検定を行う（ステップＳ２６、Ｓ２２）。検定に合格すれば、この印加条件を採用し、不合格であれば、再度印加条件値を変更する（ステップＳ２６，Ｓ２２）。電圧印加条件の調整の際は、低電圧から高電圧へ順に確認することが望ましい。
【０１０１】
電圧印加条件が決定し、乱数取得を開始後も、定期的に出力乱数を検定し、その乱数の質に変化がないか確認を行う（ステップＳ２５）。確認を行う頻度は任意に設定可能とする。定期的な出力乱数の検定において、合格であればそのまま乱数の取得を継続する。不合格の場合には、再び乱数源素子のドレイン電流の安定を待ち、その値をモニターする（ステップＳ２１）。そして、ドレイン電流の平均値がほぼ一定となれば、直前まで採用していた印加条件で乱数取得を行い、その出力乱数の検定の結果が合格であればそのまま乱数取得を継続する。検定に不合格であった場合は、再び印加条件の調整を初めから行う。この後動作は上記動作の繰り返しとなる。
【０１０２】
ただし、ある回数Ｘだけランダムノイズ生成素子の平均ドレイン電流の安定待ち、最適電圧調整回路の動作（設定電圧ステップのサイクル）を繰り返しても検定で不合格が続いた場合には（ステップＳ２６、Ｓ２７）、この乱数生成装置での乱数出力を停止する。この停止を決定する回数Ｘに関しては任意であるが、ある程度の回数この動作を繰り返しても検定に合格しない場合には、その後も検定に合格する乱数を取得できる可能性はかなり低いと判断し、高々試行回数Ｘは１０回程度とすることが望ましい。さらに、上記のように、ある程度の回数で最適電圧値特定回路を施行した後、それでも検定に合格する乱数を生成できない場合には、ランダムノイズ生成素子が破壊されたものと判断し、そのランダムノイズ生成素子を使用した乱数生成を中止する、もしくは、予め用意していた予備のランダムノイズ生成素子と交換することが望ましい。
【０１０３】
（第１３実施形態）
次に、本発明の第１３実施形態による乱数生成装置を、図２１を参照して説明する。
【０１０４】
本実施形態の乱数生成装置は、図３に示す第１実施形態の乱数生成装置において、初期化回路７０の代わりに、図２１に示すドレイン電流モニター回路１６０を新たに設けた構成となっている。このドレイン電流モニター回路１６０は、ランダムノイズ生成素子１０から出力されるドレイン電流の平均値の変化をモニターし、ドレイン電流の平均値の安定具合をチェックする。このドレイン電流モニター回路１６０は、スイッチと、抵抗の役割を担うＭＯＳＦＥＴとで構成される電流供給回路１６１と、シフトレジスタ１７０と、コンパレータ１８１と、簡易検定回路１８２と、ラッチ回路１８３〜１９２と、ＡＮＤ回路１９３〜１９７と、ＯＲ回路１９８と、制御回路１９９とを備えている。
【０１０５】
電流供給回路１６１は、５個のスイッチ１６２１〜１６２５と、５個のＭＯＳトランジスタ１６４１〜１６４５とを備えている。スイッチ１６２ｉ（ｉ＝１，・・・，５）と、ＭＯＳトランジスタ１６４ｉは直列に接続されている。そして、各スイッチ１６４ｉ（ｉ＝１，・・・，５）は、一端が駆動電源ＶＤ２に接続され、他端がＭＯＳトランジスタ１６４ｉのソースおよびゲートに接続され、シフトレジスタ１７０から送られてくる切り換え信号Ｓｉ＋５に基づいて開閉動作を行う。各ＭＯＳトランジスタ１６４１〜１６４５のドレインは、コンパレータ１８１に接続される。
【０１０６】
このドレイン電流モニター回路１６０の動作を、図２２乃至図２４を参照して説明する。
【０１０７】
図２２および図２３はドレイン電流モニター回路１６０の動作を説明する波形図である。まず、値が「１」の制御信号Ｓ＿ｏｎが制御回路１００からシフトレジスタ１７０に送られてきて、ドレイン電流モニター回路１６０が起動する。そして、電流供給回路１６１は、スイッチ１６２ｉ（ｉ＝１，・・・，５）が切り換え信号Ｓｉ＋５に基づいて順にオンになる。スイッチ１６２ｉ（ｉ＝１，・・・，５）が順にオンになることにより、電流供給回路１６１の出力は、段階的に大きくなる。すなわち、本実施形態では、電流供給回路１６１は、順次大きくなる５段階の電流Ｉ６、Ｉ７、Ｉ８、Ｉ９、Ｉ１０を供給する。電流Ｉ６はスイッチ１６２１がオンしたとき、電流Ｉ７は（＞Ｉ６）スイッチ１６２１、１６２２がオンしたとき、電流Ｉ８は（＞Ｉ７）スイッチ１６２１、１６２２、１６２３がオンしたとき、電流Ｉ９は（＞Ｉ８）スイッチ１６２１、１６２２、１６２３、１６２４がオンしたとき、電流Ｉ１０は（＞Ｉ９）スイッチ１６２１、１６２２、１６２３、１６２４、１６２４がオンしたときに供給される電流である。この電流供給回路１６１の最大電流Ｉ１０は、電流供給回路１６１中の合成抵抗と、駆動電圧ＶＤ２によって決定される。このとき、初めに試す電流値Ｉ６は、初期状態のランダムノイズ生成素子１０のドレイン電流と同等の電流値となるよう、予めＭＯＳトランジスタ１６４１〜１６４５による抵抗値、および駆動電圧ＶＤ２およびゲート電圧ＶＧ２を調整しておく。ここでスイッチ１６２ｉ（ｉ＝１，・・・，５）の個数は、シフトレジスタ１７０のシフト段の段数と同数であるが、この個数はランダムノイズ生成素子１０のドレイン電流と比較する電流レベル刻みを決定するものであり、両者の数は任意である。比較を行う電流レベルの分布として、最大電流は、ドレイン電流の初期状態における電流値と同等の電流値とし、最小電流は、ランダムノイズ生成素子１０へ電圧を長時間印加した際のドレイン電流値よりもやや小さい値とすると、コンパレータ１８１における電流値の比較には望ましい。
【０１０８】
実験により取得したランダムノイズ生成素子１０のドレイン電流の経時変化を示すグラフに本実施形態であるドレイン電流モニター回路１６０の動作における比較対象となる電流値および時間について加筆したものを図２４に示す。ランダムノイズ生成素子１０のドレイン電流が、切り換え信号Ｓ６およびＳ７をオン状態（「１」）にしたときの電流値Ｉ７と、切り換え信号Ｓ６、Ｓ７およびＳ８をオン状態にしたときの電流値Ｉ８との間で安定したときについて記述する。
【０１０９】
ランダムノイズ生成素子１０より出力される電流値と、スイッチ１６２１〜１６２５を含む電流供給回路１６１からの出力電流との比較をコンパレータ１８１により行う。電流供給回路１６１より出力される電流を基準電流としておく。コンパレータ１８１より出力されたデジタル信号は、簡易検定回路１８２へ入力される。簡易検定回路１８２は、上記実施形態で説明した検定回路よりも簡易的かつ目的が異なる。ここでは、決められた長さの乱数列の中での「１」と「０」の個数のどちらが優位（多い）かのみを感知し、コンパレータ１８１における電流値の比較の結果をシフトレジスタ１７０に送出することを目的とする。この簡易検定回路１８２については後で記述する。
【０１１０】
このような動作をする簡易検定回路１８２においては、簡易検定回路１８２からの出力は、コンパレータ１８１による出力値が「１」が優位のとき「１」を出力する信号Ｓ＿Ｗ１、「０」が優位のとき「１」を出力する信号Ｓ＿Ｗ０とする。このとき、信号Ｓ＿Ｗ０が「１」であれば、基準値のほうがドレイン電流よりも大きいことになる。スイッチ１６２１のみがオンであったとき、コンパレータ１８１より出力される信号Ｓ＿ｃｏｍｐを基準クロック信号ＣＬＫ＿０のタイミングでデジタル乱数を取得した際に、データ「１」のほうがデータ「０」よりも多かった場合には、簡易検定回路１８２からの出力信号Ｓ＿Ｗ１が「１」となる。この信号Ｓ＿Ｗ１は、シフトレジスタ１７０のクロック入力端子に入力される。信号Ｓ＿Ｗ１が「１」となるタイミングで、信号Ｓ＿ｏｎ（Ｓ６ａ）が信号Ｓ７ａへシフトする。電流供給回路１６１に含まれるスイッチ１６２１〜１６２５はそれぞれ、切り換え信号Ｓ６〜Ｓ１０がオン状態（「１」の状態）のときに、オンとなる。また、シフトレジスタ１７０の出力信号Ｓ６ａ〜Ｓ１０ａは、フリップフロップ１８３、１８５、１８７、１８９、１９１に送られるとともに制御回路１９９にも送られる。そして、制御回路１９９は、それぞれの信号Ｓ６ａ〜Ｓ１０ａが「１」となったら、リセット信号Ｒ３が「１」になるまで、それらの値を保持する切り換え信号Ｓ６〜Ｓ１０を出力し、スイッチ１６２１〜１６２５に送出する。
【０１１１】
スイッチ１６２１のみがオンであって、かつ信号Ｓ＿Ｗ１が「１」となったとき、電流供給回路１６１、シフトレジスタ１７０により、スイッチ１６２１に加えスイッチ１６２２もオンとなる。この後の動作は、スイッチ１６２１がオンのときと同様に、基準電流Ｉ７と、ランダムノイズ生成素子１０のドレイン電流とがコンパレータ１８１において比較され、その後、簡易検定回路１８２において検定が行われる。この電流モニター回路１６０の動作説明では、ランダムノイズ生成素子１０のドレイン電流が、電流供給回路１６１から供給される電流値Ｉ７と、電流値Ｉ８との間で安定すると仮定しているので、コンパレータ１８１の出力信号Ｓ＿ｃｏｍｐは「１」が多くなる。このため、簡易検定回路１８２による検定は、出力信号Ｓ＿Ｗ１が「１」となる結果が得られる。この信号Ｓ＿Ｗ１がシフトレジスタ１７０のクロック入力端子に入力されると、シフトレジスタ１７０から信号Ｓ８ａが出力される。制御回路１９９は、入力された信号Ｓ８ａに基づいて、リセット信号Ｒ３がオン状態（「１」）となるまで、信号Ｓ８ａを保持し続ける信号Ｓ８を出力し、スイッチ１６２３をオンにする。このとき、電流供給回路１６１においては、３個のスイッチ１６２１、１６２２、１６２３がオンとなっている。したがって、電流供給回路１６１からは電流Ｉ８がコンパレータ１８１に供給される。そして、コンパレータ１８１においては、この電流Ｉ８を基準電流として、ランダムノイズ生成素子１０のドレイン電流と比較される。すると、図２４に示すように、コンパレータ１８１の出力値は「０」が優位となり、検定回路１８２の出力はＳ＿Ｗ０が「１」となる。この信号を制御回路１９９が受けることで、ランダムノイズ生成素子１０への電圧の印加はそのままに、ｔ３クロック分の時間だけ、乱数生成装置の動作を一時中断する。簡易検定の結果、コンパレータ１８１からの出力Ｓ＿ｃｏｍｐの「１」と「０」との割合が「０」のほうが大きくなったとき、信号Ｓ＿Ｗ０は「１」となる。信号Ｓ＿Ｗ０がオン状態（「１」）となってから、ｔ３クロック後、再び、スイッチ１６２１をオンにする切り換え信号Ｓ６を制御回路１０１から出力し、同様の動作を繰り返す。同様の動作を繰り返した結果、前のルーチンと同じスイッチをオンとしたときと同様のスイッチ（本例ではスイッチ１６２３）をオンにしたときに、検定結果が初めて「１」が優位な結果から「０」が優位な結果に変わった場合、今回出力された信号Ｓ＿Ｗ０をラッチ回路１８３，１８５，１８７，１８９，１９１が保持し、今回のルーチンよりも一つ前のルーチンにおける結果をラッチ回路１８４，１８６，１８８，１９０，１９２で保持している。本例ではスイッチ１６２３のときに連続するルーチンでＳ＿Ｗ１が「１」となったため、ＡＮＤ回路１９５の出力は「１」となり、ＯＲ回路１９８の出力ＯＵＴ２も「１」となる。出力ＯＵＴ２が「１」となるとき、ランダムノイズ生成素子１０のドレイン電流は安定したとみなし、ドレイン電流モニター回路１６０の動作を終了し、最適電圧調整回路２０の動作を開始する。
【０１１２】
（簡易検定回路）
次に、簡易検定回路１８２の動作について説明する。トラップを利用したランダムノイズ生成素子１０を利用した乱数生成装置において、ノイズ信号の発生源となるトラップへ電荷の一部が長時間蓄積したままとなることで、スクリーニング効果により、ランダムノイズ生成素子１０から出力されるドレイン電流は、図３に示すような指数関数的な減少が見られる。しかし、図３からわかるように、ある程度時間が経つことでドレイン電流の平均値が安定する。そこで、ドレイン電流の平均値が時間に対し変化が少なく安定してから乱数取得を始めることで、一度その分の時間を待てば、ランダムノイズ生成素子１０をリフレッシュ（初期化）することなく乱数取得を行うことができる。
【０１１３】
ここで簡易検定回路１８２は上記で紹介した検定回路よりも簡易的なもので十分とする。ここでは、決められた長さの乱数列の中での「１」と「０」の個数のどちらが優位（多い）かのみを感知し、その結果を返す回路とした。
【０１１４】
図２５は本実施形態における簡易検定回路１８２を示す回路図、図２６はそのタイミングチャートである。
【０１１５】
本実施形態における簡易検定回路１８２は、カウンタ回路１８２ａと、比較回路１８２ｂとを備えている。カウンタ１８２ａの入力端子Ｄには乱数列、ここではドレイン電流モニター回路１６０のコンパレータ１８１からの出力信号Ｓ＿ｃｏｍｐが入力され、カウンタ１８２ａのクロック入力端子へは基準クロックＣＬＫ＿０が入力される。そしてそのカウント値は比較回路１８２ｂの入力端子Ｄへ入力される。カウント開始からｔ４クロック後に立ち上がる信号をＳ＿ｔ４とし、その区間でのカウント値をＳ＿ｃｏｕｎｔとすると、ｔ４クロック間で得られた乱数のうち過半数が「１」ならば、比較回路１８２ｂの出力信号Ｓ＿Ｗ１は「１」、過半数が「０」ならば、比較回路１８２ｂの出力信号Ｓ＿Ｗ０は「１」となる信号を出力する。ここで、制御回路１９９から出力される、比較対象の乱数列の長さＴ４は任意である。検定に必要な乱数列として、例えば、ＦＩＰＳ１４０−２における検定では必要な乱数列は２００００ビットであるが、この簡易検定回路１８２では、乱数性の良し悪しを判定するわけではなく、ランダムノイズ生成素子１０のドレイン電流がその時間においてどの程度の大きさにあるかがわかれば良いので、検定対象となる乱数列がその１／１０程度の長さであってもその効果は十分である。
【０１１６】
なお、本実施形態においては、図３に示す出力回路６０は、ドレイン電流モニター回路１６０によってランダムノイズ生成素子のドレイン電流が安定し、かつ検定回路５０によって検定結果が合格とされた場合に、オンとなり、乱数を外部に出力する。
【０１１７】
以上説明したように、本実施形態によれば、トラップを利用したランダムノイズ生成素子を用いても、ランダムノイズ生成素子のドレイン電流をモニターし、ドレイン電流が安定してから乱数の取得を始めるので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【０１１８】
（第１４実施形態）
次に、本発明の第１４実施形態による乱数生成装置を説明する。本実施形態の乱数生成装置は、第１３実施形態の乱数生成装置において、第１実施形態で説明した検定回路５０を第２実施形態で説明した検定回路１２０に置き換えた構成となっている。
【０１１９】
本実施形態も第１３実施形態と同様に、トラップを利用したランダムノイズ生成素子を用いても、ランダムノイズ生成素子のドレイン電流をモニターし、ドレイン電流が安定してから乱数の取得を始めるので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【０１２０】
（第１５実施形態）
次に、本発明の第１５実施形態による乱数生成装置を説明する。本実施形態の乱数生成装置は、第１３実施形態の乱数生成装置において、第１実施形態で説明した最適電圧調整回路２０を、第７実施形態で説明した最適電圧調整回路２０Ａに置き換えた構成となっている。
【０１２１】
本実施形態も第１３実施形態と同様に、トラップを利用したランダムノイズ生成素子を用いても、ランダムノイズ生成素子のドレイン電流をモニターし、ドレイン電流が安定してから乱数の取得を始めるので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【０１２２】
（第１６実施形態）
次に、本発明の第１６実施形態の乱数生成装置を説明する。本実施形態の乱数生成装置は、第１５実施形態の乱数生成装置において、第１実施形態で説明した検定回路５０を第２実施形態で説明した検定回路１２０に置き換えた構成となっている。
【０１２３】
本実施形態も第１５実施形態と同様に、トラップを利用したランダムノイズ生成素子を用いても、ランダムノイズ生成素子のドレイン電流をモニターし、ドレイン電流が安定してから乱数の取得を始めるので、使用回数や使用頻度に関わらず、物理乱数としての予測不可能性、再現不可能性を持ち合わせた高品質な乱数を生成することができる。
【０１２４】
なお、上記実施形態においては、検定回路としては、第１実施形態で説明した検定回路５０、または第２実施形態で説明した検定回路１２０を用いたが、これらの検定回路に用いられた検定方法以外の検定方法を用いることができる。例えば、ＦＩＰＳ１４０−２を構成するランテスト（run test）やポーカーテスト（poker test）などもその１つである。さらに、乱数検定を行う検定回路として、特開２００７−１６４４３４号公報に記載のような自己相関を用いた乱数検定回路を用いてもよい。
【０１２５】
そして、さらに信頼性の高い乱数であることを示すには、エントロピーテストなども行うことが望ましい。用いるテストの採用種類は任意であり、より多くの検定を実施したほうが信頼性は高くなる。
【０１２６】
また、最適電圧調整回路の動作条件は、初期化回路の動作後に必ず起動させることが好ましい。そして、検定回路については、幾つかの検定パターンが考えられる。出力乱数の検定は、ハードウェアで実施するだけではなく、ソフトウェアの検定プログラムを適用させてもよい。
【０１２７】
また、上記実施形態において、ランダムノイズ生成素子として、非化学量論的ＳｉＮのトラップ膜を有するＭＯＳＦＥＴを用いた例について説明してきたが、非化学量論的ＳｉＮのトラップ膜を有するＭＯＳＦＥＴの代わりに通常のＭＯＳＦＥＴを使用すれば、ＲＴＳ（Random telegraph signal）の量を調整する方法として適用できる。
【０１２８】
また、上記ランダムノイズ生成素子はトラップ膜の膜厚が薄いＭＯＳＦＥＴであったが、このＭＯＳＦＥＴは、トンネル絶縁膜を厚くすれば、ＮＡＮＤフラッシュメモリとして用いられるＮＯＭＯＳ型メモリ、そしてフローティングゲートをポリシリコン等で利用したメモリのメモリセルとして用いることができる。
【図面の簡単な説明】
【０１２９】
【図１】ランダムノイズ生成素子の一具体例を示す断面図。
【図２】図１に示すランダムノイズ生成素子のドレイン電流の径時変化を示す図。
【図３】第１実施形態の乱数生成装置を示すブロック図。
【図４】第１実施形態に用いられる平滑化回路の一具体例を示す回路図。
【図５】図４に示す平滑化回路の動作を説明する波形図。
【図６】第１実施形態に用いられる検定回路の一具体例を示す回路図。
【図７】図６に示す検定回路の動作を説明する波形図。
【図８】第１実施形態に用いられる初期化回路の一具体例を示す回路図。
【図９】図８に示す初期化回路の動作を説明する波形図。
【図１０】第１実施形態に用いられる最適電圧調整回路の動作を説明する波形図。
【図１１】第１実施形態の乱数生成装置の動作を説明するフローチャート。
【図１２】第２実施形態に用いられる検定回路の一具体例を示す回路図。
【図１３】図１２に示す検定回路の動作を説明する波形図。
【図１４】第３実施形態に用いられる初期化回路の一具体例を示す回路図。
【図１５】図１４に示す初期化回路の動作を説明する波形図。
【図１６】第５実施形態に用いられる初期化回路の一具体例を示す回路図。
【図１７】図１６に示す初期化回路の動作を説明する波形図。
【図１８】第７実施形態の乱数生成装置を示すブロック図。
【図１９】第７実施形態に用いられる最適電圧調整回路の動作を説明する波形図。
【図２０】第１３乃至第１６実施形態のいずれかによる乱数生成装置の動作の概要を説明するフローチャート。
【図２１】ドレイン電流モニター回路を示すブロック図。
【図２２】ドレイン電流モニター回路の動作を説明する波形図。
【図２３】ドレイン電流モニター回路の動作を説明する波形図。
【図２４】ランダムノイズ生成素子のドレイン電流の経時変化を示す図。
【図２５】簡易検定回路の一具体例を示す回路図。
【図２６】簡易検定回路の動作を説明する波形図。
【符号の説明】
【０１３０】
１  半導体基板
１ａ  チャネル領域
２  トンネル絶縁膜  
３  トラップ絶縁膜
４  制御絶縁膜（制御酸化膜）
５  ゲート電極（制御電極）
６ａ  ソース領域
６ｂ  ドレイン領域
１０  ランダムノイズ生成素子
２０  最適電圧調整回路
２１  ゲート電圧供給回路
２２ａ〜２２ｆ  ＭＯＳトランジスタ
２３ａ〜２３ｅ  スイッチ
２５  切り換え信号発生回路
２６１〜２６４  フリップフロップ
３０  乱数変換回路
４０  平滑化回路
５０  検定回路
６０  出力回路
７０  初期化回路
１００  制御回路
【図１】
2010055205.tif 000003
【図２】
2010055205.tif 000004
【図３】
2010055205.tif 000005
【図４】
2010055205.tif 000006
【図５】
2010055205.tif 000007
【図６】
2010055205.tif 000008
【図７】
2010055205.tif 000009
【図８】
2010055205.tif 000010
【図９】
2010055205.tif 000011
【図１０】
2010055205.tif 000012
【図１１】
2010055205.tif 000013
【図１２】
2010055205.tif 000014
【図１３】
2010055205.tif 000015
【図１４】
2010055205.tif 000016
【図１５】
2010055205.tif 000017
【図１６】
2010055205.tif 000018
【図１７】
2010055205.tif 000019
【図１８】
2010055205.tif 000020
【図１９】
2010055205.tif 000021
【図２０】
2010055205.tif 000022
【図２１】
2010055205.tif 000023
【図２２】
2010055205.tif 000024
【図２３】
2010055205.tif 000025
【図２４】
2010055205.tif 000026
【図２５】
2010055205.tif 000027
【図２６】
2010055205.tif 000028
【手続補正書】
【提出日】平成20年10月30日(2008.10.30)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
また、特許文献２に記載の乱数生成装置においては、ランダムノイズ生成素子中のトラップに蓄積された電荷を放出する時間がランダムになることを利用しており、電荷放出にかかる時間がある基準の時間よりも長いか短いかによって「１」か「０」に振り分ける方法をとっている。
【特許文献１】米国特許公開第２００５／０１２５４７１号明細書
【特許文献２】米国特許公開第２００７／０２７６８９０号明細書