JP2000298577A - 乱数生成装置 - Google Patents
乱数生成装置Info
- Publication number
- JP2000298577A JP2000298577A JP11104743A JP10474399A JP2000298577A JP 2000298577 A JP2000298577 A JP 2000298577A JP 11104743 A JP11104743 A JP 11104743A JP 10474399 A JP10474399 A JP 10474399A JP 2000298577 A JP2000298577 A JP 2000298577A
- Authority
- JP
- Japan
- Prior art keywords
- random number
- trigger signal
- inversion
- data
- inverted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Analogue/Digital Conversion (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
ウェア生成による乱数生成装置において、高速な乱数生
成速度と、高い乱数性を同時に実現する。 【解決手段】 ダイオード10Aの出力するノイズ18
Aを、アナログ・デジタル変換機構12Aでデジタル・
データに変換し、デジタル・データのうちの何ビットか
を素乱数16A,16B,..として取り出す。反転ト
リガ信号生成機構14で0と1の出現比率が均等な反転
トリガ信号17Aを生成し、反転機構13Aにて素乱数
16Aとの排他的論理和をとり2進乱数データ15aの
乱数として乱数データまとめ部15から出力する。反転
トリガ信号生成機構14の一手段として素乱数16Bを
利用し、素乱数16Bが1の時に直前の反転トリガ信号
17Aの反転した値を反転トリガ信号17Aとして反転
機構13Aに入力する。
Description
し、特に、ハードウェアによって乱数を生成する場合に
おける生成過程の高速化および高い乱数性の実現等に好
適な乱数生成技術に関する。
る不確定要素や、無作為抽出のための選択手段、暗号化
技術の鍵生成などの分野で利用される。たとえば、風洞
実験のシミュレーションで与える風は均質な物でなく、
風向、風速、圧力などいくつものパラメータに不確定さ
が必要になる。また、数学の世界では、モンテカルロ法
など乱数を計算に使用する。こうした乱数に、多くはソ
フトウェア生成の乱数が用いられている。
ばれるように、出力した乱数列に一定の規則性があり、
結果に誤った指向性が出たり、結果の収束に影響したり
することがある。
ランダム性があり、時間方向に規則性の無い物理現象を
選ぶことによって、ソフトウェア乱数の様な規則性を無
くすことができる。たとえば、仁木直人「工学的乱数発
生」統計数理研究所彙報 第27巻 第1号 1980
115−131、等の文献にも記載されているよう
に、過去のハードウェア乱数生成の乱数源に選ばれたラ
ンダム性のある物理現象には、コバルト−60の放射線
量、セシウム−137の崩壊によるガンマ線放射、トラ
ンジスタの熱雑音、ダイオードの熱雑音、ネオン放電管
からの雑音等がある。
す。ひとつは、前記の放射線量や、ノイズをパルス化し
たものを、一定時間計数した結果が偶数であるか奇数で
あるかで2進1桁乱数を生成する方法である。もうひと
つは、ランダム性のある物理現象のうちノイズが得られ
るものを利用し、得られたノイズをアナログ・デジタル
変換し、出力の何桁かを乱数として利用する方法であ
る。後者の例として、特開平6−314188号公報の
技術では、導線上のノイズをアナログ・デジタル変換
し、乱数を生成している。
価の尺度には、(1)0と1の出現する比率が等しいこ
と、(2)ある桁の0と1の出現する比率が、前に出現
した別の桁のパターンに左右されないこと、がある。
率が等しい」、(2)は「乱数列の規則性が無い」と表
現する。(2)について例を挙げると、00と続いた後
の0と1の出現する比率が1:3となる場合「規則性が
ある」わけで、それだけ「乱数性が悪い」となる。
(1)(2)はいずれも統計的な評価のため、評価対象
の母集団が大きいほど正しく評価でき、母集団が小さい
ケースでは常に成り立つものでは無い。
ある物理現象を計数することによる乱数生成装置は、計
数した値が充分大きくなる時間を必要とする。極端な例
を挙げると、一定時間計数した結果が0から1程度だと
して、ほとんどの場合0だとすると偶数と奇数の出現比
率が著しく不均等なために、出力する乱数に指向性が出
てしまう。たとえば100を中心に50から150の値
を計数できるような、充分大きく、充分ばらつきのある
値が計数できる時間を取れば、偶数と奇数の出現比率の
不均衡が無視できる様になる。しかし、出現比率の差を
小さくするために計数時間を大きくとれば、乱数の生成
速度は反比例して遅くなる。前述した100を中心に5
0から150の値を計時できるような時間をとると、理
論上回路の動作周波数の1/150以下、おそらくは1
/200から1/300程度の乱数生成速度しか得られ
ない。
ム性のあるノイズをアナログ・デジタル変換し、出力の
何桁かを乱数として利用する方法では、アナログ・デジ
タル変換機構の回路上のくせによって各桁の0と1の出
現比率が均等にならない場合が考えられる。ノイズをア
ナログ・デジタル変換する方法では物理現象を計数する
方法に比べて、回路の動作周波数とほぼ同等の乱数生成
速度を得ることができる。しかし、回路内の主にアナロ
グ・デジタル変換機構内部の信号が0から1、1から0
に変化する速さの違いやスレッショールド電圧の違いを
始め、ノイズ源のダイオードから誘導される電源線、接
地線、信号線へのノイズなど、回路特有のくせにより、
実際のノイズの電圧値とアナログ・デジタル変換機構が
出力するデジタル・データの値に誤差が生じる。たとえ
ば、変換前のノイズがxからx+1の中間の電圧であっ
た場合に、アナログ・デジタル変換機構の出力する結果
がxよりx+1を出力する確率が多いと、出力する各桁
の0と1の出現比率に偏りが生じてしまい、これを乱数
とすると0と1の出現比率に偏りがある乱数になる。回
路のくせは、回路を構成する素子の特性、温度、供給電
圧、動作周波数など、様々な条件に左右され、回路の改
善で偏りを無くすことは困難である。
数列を生成する乱数生成技術において、高速な乱数生成
速度と、乱数列に規則性が無く、均質な0と1の出現比
率を同時に実現することにある。
手段から得られる時間軸方向に規則性のない物理量をデ
ィジタル量に変換するアナログ・デジタル変換機構の出
力するデジタル・データのあるビット(以下、素乱数と
呼ぶ)を、反転トリガ信号と排他的論理和を取って乱数
とする。反転トリガ信号は、0と1の出現比率が1:1
となり、できるだけ規則性の無いものを生成する。この
方法により、乱数として0を出力する場合に、アナログ
・デジタル変換機構が0を出力している場合と1を出力
している場合とどちらの場合もあり、乱数として1を出
力する場合も同じくアナログ・デジタル変換機構が0を
出力している場合と1を出力している場合とどちらの場
合もあるため、アナログ・デジタル変換機構の回路の特
有のくせが出力に与える影響を無くすことができる。
にも、出力した乱数列の規則性は改善される。反転トリ
ガ信号の規則性を、0が出現した後に0と1が出現する
確率をa:1−a(0<a<1)とすると、0と1の出
現比率が1:1なので、1が出現した後の0と1が出現
する確率は1−a:aとなる。素乱数の0と1の出現比
率の偏りも簡単のため、同じくa:1−aとして、aの
値が0.5からずれた場合、出力する乱数列の規則性にど
の程度の影響が出るか計算してみる。出力する乱数列の
規則性は、前記の表現と同じように0が出現した後の0
と1が出現する確率をb:1−b、1の出現した後の0
と1の出現する確率を1−b:bと表現する。すると、
合、bはどうなるか計算して図7に示す。
下では、乱数の偏差と表現することとする。図7を見る
と分かるように、素乱数の偏差が1%の場合で、出力し
た乱数の偏差は10-6と非常に小さくできる。
機構は、反転トリガ信号生成機構に入力する素乱数が1
の時に同期して反転トリガ信号を0から1又は1から0
へ切り替え、素乱数が0の時は反転トリガ信号を変化さ
せない。素乱数の乱数列には規則性が無いため、生成し
た反転トリガ信号は0と1の出現比率は理論上均等にな
る。図6は、素乱数21とこの素乱数21を元に生成し
た反転トリガ信号22の関係の一例を信号の波形で表し
ている。信号の波形が上にある時の信号の値が1を表
し、信号の波形が下にある時の信号の値が0を表す。素
乱数21は0の出現比率が高いが、反転トリガ信号22
は0と1の出現比率はほぼ等しくなっているのがわか
る。
と同程度の影響がある。なぜなら、規則性の一つである
0の後1になる確率、1の後0になる確率は、素乱数の
1が出現する確率に等しいからである。しかし、後述す
る実施の形態で見てみた場合、うまく回路を構成するこ
とによって、アナログ・デジタル変換機構の出力のう
ち、偏差が1〜2%程度の素乱数を得ることが可能であ
り、前述したように、この程度の偏差が出力の偏差に与
える影響は非常に小さくできる。また、規則性が存在す
るソフトウェア乱数と組み合わせて乱数を生成しても、
乱数性の高い乱数が得られる。
を参照しながら詳細に説明する。
生成装置の構成の一例を示す概念図である。本実施の形
態の乱数生成装置は、経時的に不規則なノイズ18Aを
発生するダイオード10A、ノイズ18Aを素乱数16
A〜16Dのディジタルデータに変換するアナログ・デ
ジタル変換機構12A、反転トリガ信号17A〜17D
を生成する反転トリガ信号生成機構14、アナログ・デ
ジタル変換機構12Aおよび反転トリガ信号生成機構1
4にクロック信号19を供給するクロック発生機構1
1、乱数を使用する外部の任意の情報処理装置等との間
のインタフェースを提供する乱数データまとめ部15、
を含んでいる。
イズ18Aをアナログ・デジタル変換機構12Aに入力
する。アナログ・デジタル変換機構12Aの出力する素
乱数のうちの素乱数16A〜16Dを反転機構13A〜
13Bのデータ入力に、反転トリガ信号生成機構14の
出力する反転トリガ信号17A〜17Bは、反転機構1
3A〜13Bの反転トリガ入力に接続する。反転機構の
13Aの出力は、乱数データまとめ部15に接続する。
装置の動作としては、まず、アナログ・デジタル変換機
構12Aは、クロック信号19に同期して、ノイズ18
Aの電圧をデジタル・データに変換する。このデジタル
・データから素乱数16A〜16Dを取り出す。反転機
構13A〜13Bは、素乱数16A〜16Dと反転トリ
ガ信号生成機構14の出力する反転トリガ信号17A〜
17Bの排他的論理和を出力し、乱数データまとめ部1
5に送る。乱数データまとめ部15は、外部からの要求
でデータを取り出しやすいように加工し、2進乱数デー
タ15aとして出力する。素乱数のビット数と反転機構
の数は同じだが、反転トリガ信号はそれと異なっても構
わない。
装置のより具体的な変形例を示す概念図である。すなわ
ち、この図2の構成例は、図1の反転トリガ信号生成機
構14の実現方法の一つを提示している。
機構14は、複数の反転トリガ信号更新論理140A〜
140Bおよび反転トリガ信号レジスタ141A〜14
1Bを含んでいる。そして、アナログ・デジタル変換機
構12Aの出力する素乱数のうち反転機構13A〜13
Bに直接送られなかった素乱数16E〜16Fを、それ
ぞれ反転トリガ信号生成機構14内の反転トリガ信号更
新論理140A〜140Bに接続する。反転トリガ信号
更新論理140A〜140Bの出力はそれぞれ反転トリ
ガ信号レジスタ141A〜141Bに接続し、反転トリ
ガ信号レジスタ141A〜141Bの出力する反転トリ
ガ信号17A〜17Bは、反転機構13A〜13Bのい
ずれかの反転トリガ入力と、それぞれ反転トリガ信号更
新論理140A〜140Bに接続する。
リガ信号更新論理140Aは、反転トリガ信号17Aと
素乱数16Eの排他的論理和を出力する。反転トリガ信
号レジスタ141Aは、クロック信号19に同期して、
保持する値を反転トリガ信号更新論理140Aの出力に
置き換える。反転トリガ信号更新論理140Bと反転ト
リガ信号17B、素乱数16F、反転トリガ信号レジス
タ141Bの動作も同様である。このようにして、反転
トリガ信号17A、17Bを生成する以外は図1の説明
と同様である。
数生成装置の構成の一例を示す概念図である。この図3
の構成の場合、アナログ・デジタル変換機構12Aは8
ビット出力のものとし、アナログ・デジタル変換機構1
2Aの出力する8個の素乱数のうち1個の素乱数16A
を1個の反転機構13Aのデータ入力に、別の1個の素
乱数16Bを反転トリガ信号生成機構14内の1個の反
転トリガ信号更新論理140Aに接続する。反転トリガ
信号更新論理140Aの出力は反転トリガ信号レジスタ
141Aに接続し、反転トリガ信号レジスタ141Aの
出力する反転トリガ信号17Aは、反転機構13Aの反
転トリガ入力と、反転トリガ信号更新論理140Aの入
力側に接続する。
め部15内のシフト・レジスタ150に接続し、シフト
・レジスタ150の出力は、乱数データまとめ部15内
の乱数データ・バッファ152に接続する。乱数データ
まとめ部15内のデータまとめ部制御論理151の出力
は、乱数データ・バッファ152に接続する。クロック
発生機構11が出力するクロック信号19は、アナログ
・デジタル変換機構12Aと、反転トリガ信号レジスタ
141Aと、シフト・レジスタ150と、データまとめ
部制御論理151に接続する。
ては、まず、アナログ・デジタル変換機構12Aは、ク
ロック信号19に同期して、ノイズ18Aの電圧を8ビ
ットのデジタル・データに変換する。このデジタル・デ
ータから2個の素乱数16Aと16Bを取り出す。反転
トリガ信号更新論理140Aは、反転トリガ信号17A
と素乱数16Bの排他的論理和を出力する。反転トリガ
信号レジスタ141Aは、クロック信号19に同期し
て、保持する値を反転トリガ信号更新論理140Aの出
力に置き換える。反転機構13Aは、素乱数16Aと反
転トリガ信号17Aの排他的論理和を出力し、シフト・
レジスタ150に入力する。シフト・レジスタ150
は、8ビットのシフト・レジスタで、クロック信号19
に同期してシフト動作と、反転機構13Aの出力の取り
込みを行う。シフト・レジスタ150は、8ビット幅の
出力を乱数データ・バッファ152に送り、データまと
め部制御論理151は、クロック信号19に同期して、
8サイクルに1回、乱数データ・バッファ152に書き
込み指示を行う。乱数データ・バッファ152は、書き
込み指示を受けた時のシフト・レジスタ150からのデ
ータ(2進乱数データ15a)を記憶する。また乱数デ
ータ・バッファ152は、外部からの読み出し要求に対
して、2進乱数データ15aの書き出しと、書き出した
2進乱数データ15aの消去を行う機能と、たとえばP
CI等の汎用バス等に対する接続インターフェースを有
し、8ビットの乱数データ(2進乱数データ15a)を
外部の任意の装置等に供給することができる。
生成装置の構成の一例を示す概念図である。この図4の
構成では、反転トリガ信号生成機構14に対する素乱数
の入力手段として専用のダイオード10Bおよびアナロ
グ・デジタル変換機構12Bを設けた構成となってい
る。
する素乱数16A〜16Bに、ダイオード10Aが出力
するノイズ18Aをアナログ・デジタル変換機構12A
がアナログ・デジタル変換した出力を用い、反転トリガ
信号生成機構14内の反転トリガ信号更新論理140A
〜140Bに接続する素乱数16E〜16Fに、ダイオ
ード10Bが出力するノイズ18Bをアナログ・デジタ
ル変換機構12Bがアナログ・デジタル変換した出力を
用いている。
0Aおよび10Bと、アナログ・デジタル変換機構12
Aおよび12Bの組合せを2系統用意したことにより、
複数の反転機構13Aおよび13Bに入力される素乱数
16Aおよび16Bと、反転トリガ信号17Aおよび1
7Bとの間の相関を無くすことが可能となり、最終的に
乱数データまとめ部15から出力される2進乱数データ
15aにおいてより高い乱数性を実現することができ
る。
装置の変形例を示す概念図である。この図5の構成で
は、ダイオード10Aおよびアナログ・デジタル変換機
構12Aと、ダイオード10Bおよびアナログ・デジタ
ル変換機構12B、の2系列の素乱数16A、素乱数1
6B、および素乱数16G、素乱数16H、に対して、
対応した反転機構13A、13Bおよび反転機構13
C、13Dを設けるとともに、反転機構13A、13B
および反転機構13C、13Dの各々に対する反転トリ
ガ信号17Aおよび反転トリガ信号17Bが、互いに他
方のアナログ・デジタル変換機構12Bおよび12Aか
ら発生された素乱数16Eおよび素乱数16Jにてクロ
スして生成される構成としたものである。
イズ18Aを8ビット出力のアナログ・デジタル変換機
構12Aに入力する。ダイオード10Bが出力するノイ
ズ18Bを8ビット出力のアナログ・デジタル変換機構
12Bに入力する。アナログ・デジタル変換機構12A
の出力する8個の素乱数のうち1個の素乱数16Aを反
転機構13Aのデータ入力に、1個の素乱数16Bを反
転機構13Bのデータ入力に、1個の素乱数16Cを反
転トリガ信号生成機構14内の反転トリガ信号更新論理
140Bに接続する。アナログ・デジタル変換機構12
Bの出力する8個の素乱数のうち1個の素乱数16Gを
反転機構13Cのデータ入力に、1個の素乱数16Hを
反転機構13Dのデータ入力に、1桁の素乱数16Jを
反転トリガ信号生成機構14内の反転トリガ信号更新論
理140Aに接続する。反転トリガ信号更新論理140
Aの出力は反転トリガ信号レジスタ141Aに接続し、
反転トリガ信号レジスタ141Aの出力する反転トリガ
信号17Aは、反転機構13A、13Bの反転トリガ入
力と、反転トリガ信号更新論理140Aの入力側に接続
する。反転トリガ信号更新論理140Bの出力は反転ト
リガ信号レジスタ141Bに接続し、反転トリガ信号レ
ジスタ141Bの出力する反転トリガ信号17Bは、反
転機構13C、13Dの反転トリガ入力と、反転トリガ
信号更新論理140Bに接続する。反転機構の13A、
13B、13C、13Dの出力は、乱数データまとめ部
15に接続する。クロック発生機構11が出力するクロ
ック信号19は、アナログ・デジタル変換機構12A、
12Bと、反転トリガ信号レジスタ141A、141B
と、乱数データまとめ部15に接続する。前述の図3の
実施の形態と異なるのは、(1)ダイオードとアナログ
・デジタル変換機構が2個ずつあること、(2)1個の
アナログ・デジタル変換機構に対して、2個の反転機構
を備え、2個の素乱数を1個ずつ、それぞれの反転機構
に入力していること、(3)アナログ・デジタル変換機
構12Aの出力する素乱数16A、16Bの接続する、
反転機構13A、13Bに入力する反転トリガ信号17
Aは、もう一方のアナログ・デジタル変換機構12Bの
出力する素乱数16Jを利用して更新し、アナログ・デ
ジタル変換機構12Bの出力する素乱数16G、16H
の接続する、反転機構13C、13Dに入力する反転ト
リガ信号17Bは、もう一方のアナログ・デジタル変換
機構12Aの出力する素乱数16Eを利用して更新して
いること、である。
の形態と同じように、外からの読み出し要求に応答でき
るようにデータの形を整え記憶する。本実施の形態で
は、ダイオードから乱数データまとめ部15の前までの
回路を倍にし、利用する素乱数も倍にして乱数生成速度
の性能を向上し、しかも反転トリガ信号17A、反転ト
リガ信号17Bを更新するための素乱数16J、16E
を交換しあうことで、素乱数16A、16Bおよび素乱
数16G、16Hと、反転トリガ信号17A、17Bを
別系統の乱数源から生成するため、反転機構13A、1
3Bおよび反転機構13C、13Dのデータ入力(素乱
数16A、16Bおよび素乱数16G、16H)、反転
トリガ信号17A、17Bの間の予期せぬ相関から規則
性が生じることを回避している。
装置の構成例では、反転トリガ信号生成機構14におい
て反転トリガ信号17A、17B等を生成するための素
乱数は、ダイオード10A、10Bおよびアナログ・デ
ジタル変換機構12A、12B等を用いてハードウェア
的に得られた素乱数を用いているが、これに限らず、図
8に例示されるように、ソフトウェア乱数生成装置30
において、たとえばM系列法、合同式法等の所望のアル
ゴリズムを用いたソフトウェアにて生成されたソフトウ
ェア素乱数30aを、素乱数16B、16E、16F、
16J、等の代わりに用いても、同様に、得られる2進
乱数データ15aの生成速度が高速で、乱数列に規則性
が無く、均質な0と1の出現比率を同時に実現すること
が可能になる。この場合、ソフトウェア乱数生成装置3
0は、たとえば図示しないマイクロプロセッサや、乱数
を生成するためのソフトウェア等が格納されるROM、
RAM等を備えた一般的に情報処理装置で構成すること
ができる。
るように、反転トリガ信号生成機構14および反転機構
13A〜13D等で行われる素乱数16A、16B、1
6H、16G等の反転処理を、当該素乱数16A〜16
Gを利用する任意の情報処理装置の内部で、ソフトウェ
ア的に行わせることもできる。この場合、物理現象を利
用する乱数発生機構としては、本発明の上述の実施の形
態で例示したダイオード10A、アナログ・デジタル変
換機構12A、乱数データまとめ部15等で構成され
た、素乱数16A等をそのまま外部に出力する構成の物
理乱数生成装置を用いることができる。
物理乱数生成装置から得られる素乱数16Aを用いるプ
ログラムでは、前処理として、図9のフローチャートに
例示された以下のような処理を行うことで乱数性の向上
を達成することができる。
られた素乱数16A(2進ハードウェア乱数)を、整数
変数HRに格納する(ステップ201)。
ルーチンから2進ソフトウェア乱数を生成して整数変数
SRに格納する(ステップ202)。
ビット指標変数nを0に初期化する(ステップ20
3)。だだし、SR〔n=0〕はLSBを示す。
“0”との排他的論理和をとって更新する(ステップ2
04)。
トして(ステップ205)、ビット位置がSRのMSB
を越えたか否かを判定(ステップ206)しながら、S
RのMSB方向に隣接する第nビットと第n−1ビット
との排他的論理和をとって当該第nビット位置のビット
値を更新する(ステップ207)操作を、MSBまで反
復し、このステップ207の操作が終わったら、整数変
数HRに格納された2進ハードウェア乱数と、整数変数
SRに格納された反転操作後の2進ソフトウェア乱数と
の間で各ビット毎の排他的論理和をとり、結果を整数変
数HRに書き戻す処理(ステップ208)、を行う。
して、図1の乱数データまとめ部15から得られる2進
乱数データ15aと同様に、乱数列に規則性が無く、均
質な0と1の出現比率を持つ、2進ハードウェア乱数が
得られる。
転処理を行うため、多少、生成速度は犠牲になるが、素
乱数16Aを供給する物理乱数生成装置は任意のものを
用いることができ、物理乱数を利用する情報処理装置の
ソフトウェアの側のわずかな変更で、高い乱数性を持つ
物理乱数を使用できるようになる、という利点がある。
また、生成速度の点も、物理乱数を利用する情報処理装
置の実行速度が改善されれば問題にならなくなり、乱数
生成の高速性の要求も満たされる。
生成装置では、ハードウェアによる高速な生成速度の乱
数生成処理において、0と1の出現比率については均等
にでき、素乱数の偏差が最終的に出力される乱数の規則
性へ与える影響を少なくすることができる。図7で示し
たとおり、乱数列の規則性の偏りは、素乱数の0と1の
出現比率の偏りが2%の場合で10-5以下、1%で10
-6に改善することができる。
のの特徴を列挙すれば以下の通りである。
アナログ・デジタル変換機構と、乱数データまとめ部
と、クロック発生機構を有し、クロック発生機構が発生
するクロック信号を、前記アナログ・デジタル変換機構
に接続し、前記ダイオードに逆バイアスをかけた場合の
ツェナー降伏領域もしくはアバランシェ領域で発生する
ノイズの電圧を、前記アナログ・デジタル変換機構で前
記クロックに同期してnビット(n>1)のデジタル・
データに変換し、該デジタル・データのうちmビット
(1≦m≦n)を乱数データまとめ部で乱数として利用
できる形にまとめる乱数生成装置において、データ入力
と反転トリガ入力の2個の入力を持つm個の反転機構
と、反転トリガ信号生成機構を備え、該反転トリガ信号
生成機構は、0と1が変化しながらほぼ同じ比率で現れ
る反転トリガ信号をs個(1≦s≦m)生成し、該s個
の反転トリガ信号を、合計m個全ての前記反転機構の反
転トリガ入力に1対1もしくは1対多で接続し、前記乱
数データまとめ部に送られる直前のmビットのデジタル
・データを該m個の反転機構のデータ入力に1対1で接
続し、該m個の反転機構はデータ入力と反転トリガ入力
の排他的論理和を出力し、該出力を、前記アナログ・デ
ジタル変換機構が出力したm桁のデジタル・データの代
わりに前記乱数データまとめ部に送ることを特徴とする
乱数生成装置。
反転トリガ信号レジスタと、s個の反転トリガ信号更新
論理を有し、前記アナログ・デジタル変換機構の出力す
るデジタル・データのうちsビットをs個の該反転トリ
ガ信号更新論理全てに1対1で接続し、該反転トリガ信
号更新論理は対応する反転トリガ信号レジスタが保持す
る反転トリガ信号と前記入力されたデジタル・データと
の排他的論理和を出力し、前記反転トリガ信号レジスタ
に前記クロックを接続し、該反転トリガ信号レジスタが
保持している反転トリガ信号を、クロックに同期して前
記反転トリガ信号更新論理の出力に置き換え、該反転ト
リガ信号レジスタの保持している反転トリガ信号を出力
することを特徴とする反転トリガ信号生成機構を備える
項目<1>記載の乱数生成装置。
リガ信号として出力する反転トリガ信号生成機構を有す
る、項目<1>記載の乱数生成装置。
デジタル変換機構の組み合わせを、前記反転機構のデー
タ入力に接続するものと、前記反転トリガ信号更新論理
に接続するものを独立して2系統用意することを特徴と
する項目<2>記載の乱数生成装置。
デジタル変換機構と反転機構の組み合わせを2系統有
し、該反転機構の出力を別の反転機構のデータ入力と反
転トリガ入力に接続することを特徴とする項目<1>記
載の乱数生成装置。
2値の素乱数を生成するステップと、0と1が変化しな
がらほぼ同じ比率で現れる反転トリガ信号を生成するス
テップと、前記素乱数と前記反転トリガ信号との排他的
論理和をとって2進乱数として出力するステップと、を
含むことを特徴とする乱数生成方法。
の形態に基づき具体的に説明したが、本発明は前記実施
の形態に限定されるものではなく、その要旨を逸脱しな
い範囲で種々変更可能であることはいうまでもない。
の実施の形態に例示したダイオードに限らず、時間軸方
向に不規則な物理量を出力する一般の機器を広く用いる
ことができる。
ウェアによって乱数列を生成する乱数生成技術におい
て、高速な乱数生成速度と、乱数列に規則性が無く、均
質な0と1の出現比率を同時に実現することができる、
という効果が得られる。
成の一例を示す概念図である。
変形例を示す概念図である。
構成の一例を示す概念図である。
構成の一例を示す概念図である。
を示す概念図である。
ガ信号の関係の一例を信号の波形で表した線図である。
用の一例を表形式で例示した説明図である。
構成の一例を示す概念図である。
せる場合の一例を示すフローチャートである。
構、12A,12B…アナログ・デジタル変換機構、1
3A〜13D…反転機構、14…反転トリガ信号生成機
構、15…乱数データまとめ部、15a…2進乱数デー
タ、16A〜16J…素乱数、17A〜17D…反転ト
リガ信号、18A,18B…ノイズ、19…クロック信
号、21…素乱数、22…反転トリガ信号、30…ソフ
トウェア乱数生成装置、30a…ソフトウェア素乱数、
140A〜140B…反転トリガ信号更新論理、141
A〜141B…反転トリガ信号レジスタ、150…シフ
ト・レジスタ、151…データまとめ部制御論理、15
2…乱数データ・バッファ。
Claims (3)
- 【請求項1】 時間軸方向に規則性のない物理量を発生
する物理量発生手段と、前記物理量を2ビット以上の第
1のディジタルデータに変換するデータ変換手段と、前
記第1のディジタルデータの少なくとも一部を乱数デー
タとして外部に出力する外部出力インタフェースと、を
含む乱数生成装置であって、 0と1が変化しながらほぼ同じ比率で現れる反転トリガ
信号を生成する反転トリガ信号生成手段と、 前記データ変換手段と前記外部出力インタフェースとの
間に設けられ、前記第1のディジタルデータの少なくと
も一部のビットと、前記反転トリガ信号との排他的論理
和をとり、前記第1のディジタルデータの代わりに第2
のディジタルデータとして前記外部出力インタフェース
に出力するデータ反転手段と、 を含むことを特徴とする乱数生成装置。 - 【請求項2】 請求項1記載の乱数生成装置において、 前記反転トリガ信号生成手段は、任意の乱数発生手段か
ら時系列に入力されるディジタルの乱数データと、自身
の出力との排他的論理和をとり、前記反転トリガ信号と
して出力する反転トリガ更新論理と、前記反転トリガ更
新論理から出力される前記反転トリガ信号をラッチして
前記データ反転手段および前記反転トリガ更新論理に出
力する反転トリガ信号ラッチ手段とを含むことを特徴と
する乱数生成装置。 - 【請求項3】 請求項1または2記載の乱数生成装置に
おいて、 前記反転トリガ信号生成手段の前記反転トリガ更新論理
に入力される前記乱数データとして、前記第1のディジ
タルデータの一部を用いる構成、 前記物理量発生手段および前記データ変換手段の組み合
わせを、ディジタルデータを前記データ反転手段に入力
する組と、前記ディジタルデータを前記乱数データとし
て前記反転トリガ信号生成手段の前記反転トリガ更新論
理に入力する組の2系統設ける構成、 前記物理量発生手段および前記データ変換手段の組み合
わせを、前記ディジタルデータを前記データ反転手段に
入力する組と、前記ディジタルデータを前記乱数データ
として前記反転トリガ信号生成手段の前記反転トリガ更
新論理に入力する組の2系統設け、前記反転トリガ更新
論理に前記乱数データとして入力される前記ディジタル
データとして、互いに他の前記ディジタルデータを用い
る構成、 前記反転トリガ更新論理に入力される前記乱数データと
して、ソフトウェア生成乱数を用いる構成、 のいずれかの構成を含むことを特徴とする乱数生成装
置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10474399A JP3680091B2 (ja) | 1999-04-13 | 1999-04-13 | 乱数生成装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10474399A JP3680091B2 (ja) | 1999-04-13 | 1999-04-13 | 乱数生成装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2000298577A true JP2000298577A (ja) | 2000-10-24 |
| JP3680091B2 JP3680091B2 (ja) | 2005-08-10 |
Family
ID=14388988
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10474399A Expired - Fee Related JP3680091B2 (ja) | 1999-04-13 | 1999-04-13 | 乱数生成装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3680091B2 (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002091167A1 (fr) * | 2001-04-24 | 2002-11-14 | Sangikyo Corporation | Generateur de nombres aleatoires |
| EP1515438A1 (fr) * | 2003-08-28 | 2005-03-16 | St Microelectronics S.A. | Génération d'un flux de bits aléatoire normalisé |
| US8260835B2 (en) | 2003-06-24 | 2012-09-04 | Renesas Electronics Corporation | Random number generator with ring oscillation circuit |
| RU2642351C1 (ru) * | 2017-01-16 | 2018-01-24 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Способ выбора шумовых диодов с использованием измерительного устройства для генератора случайных чисел |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5341690B2 (ja) | 2009-09-14 | 2013-11-13 | 株式会社日立製作所 | 物理乱数生成装置 |
-
1999
- 1999-04-13 JP JP10474399A patent/JP3680091B2/ja not_active Expired - Fee Related
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002091167A1 (fr) * | 2001-04-24 | 2002-11-14 | Sangikyo Corporation | Generateur de nombres aleatoires |
| US7349935B2 (en) | 2001-04-24 | 2008-03-25 | Sangikyo Corporation | Random number generation apparatus |
| US8260835B2 (en) | 2003-06-24 | 2012-09-04 | Renesas Electronics Corporation | Random number generator with ring oscillation circuit |
| US9052975B2 (en) | 2003-06-24 | 2015-06-09 | Renesas Electronics Corporation | Random number generator with ring oscillation circuit |
| EP1515438A1 (fr) * | 2003-08-28 | 2005-03-16 | St Microelectronics S.A. | Génération d'un flux de bits aléatoire normalisé |
| US7689636B2 (en) | 2003-08-28 | 2010-03-30 | Stmicroelectronics S.A. | Generation of a normalized random bit flow |
| RU2642351C1 (ru) * | 2017-01-16 | 2018-01-24 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Способ выбора шумовых диодов с использованием измерительного устройства для генератора случайных чисел |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3680091B2 (ja) | 2005-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2937919B2 (ja) | 疑似乱数発生回路 | |
| US3706941A (en) | Random number generator | |
| US4691291A (en) | Random sequence generators | |
| JP3022439B2 (ja) | 擬似乱数発生方法および装置 | |
| JP3696209B2 (ja) | シード生成回路、乱数生成回路、半導体集積回路、icカード及び情報端末機器 | |
| CN103098018B (zh) | 比特序列生成器 | |
| US4047008A (en) | Pseudo-random number sequence generator | |
| US20030204541A1 (en) | Seedable pseudo-random number generator | |
| CN103399726B (zh) | 一种流水线化的组合式伪随机数发生器 | |
| US11586418B2 (en) | Random number generator, random number generating circuit, and random number generating method | |
| JP4663872B2 (ja) | 均一な分布を有する非反復性の数の列を発生する方法 | |
| JP2002330192A (ja) | 試験信号発生装置及び方法並びにポアソン分布エラー信号発生器及び発生方法 | |
| JP2000298577A (ja) | 乱数生成装置 | |
| Miroschnyk et al. | Practical methods for de Bruijn sequences generation using non-linear feedback shift registers | |
| Etzion | On de Bruijn Array Codes—Part I: Nonlinear Codes | |
| JP3502065B2 (ja) | 乱数発生装置 | |
| CN113138752B (zh) | 随机数生成器、随机数生成电路及随机数生成方法 | |
| US4998263A (en) | Generation of trigger signals | |
| KR100578721B1 (ko) | XOR 논리를 이용한 n 비트 순환 중복 검사 생성 방법및 이를 이용한 병렬 순환 중복 검사 생성기 | |
| RU2024209C1 (ru) | Устройство шифрования двоичной информации "албер" | |
| US3569956A (en) | Minimal logic block encoder | |
| KR101920142B1 (ko) | 의사 잡음 코드 생성기를 활용한 랜덤 순열 생성 시스템 및 방법 | |
| RU2021633C1 (ru) | Устройство для умножения чисел | |
| SU1005045A1 (ru) | Генератор псевдослучайных чисел | |
| KR20040084422A (ko) | 디지털 생체 정보를 이용한 난수 생성기 및 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 19990514 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 19990416 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 19990618 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20021015 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20031119 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031202 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040202 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040511 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20040628 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040707 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20040628 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041013 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041013 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040707 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050301 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050323 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050330 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080527 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090527 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100527 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110527 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110527 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120527 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120527 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130527 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130527 Year of fee payment: 8 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |