JPH0326859B2 - - Google Patents
Info
- Publication number
- JPH0326859B2 JPH0326859B2 JP59214467A JP21446784A JPH0326859B2 JP H0326859 B2 JPH0326859 B2 JP H0326859B2 JP 59214467 A JP59214467 A JP 59214467A JP 21446784 A JP21446784 A JP 21446784A JP H0326859 B2 JPH0326859 B2 JP H0326859B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- random numbers
- random number
- sequence
- uniform distribution
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
- G06F7/584—Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/581—Generating an LFSR sequence, e.g. an m-sequence; sequence may be generated without LFSR, e.g. using Galois Field arithmetic
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/583—Serial finite field implementation, i.e. serial implementation of finite field arithmetic, generating one new bit or trit per step, e.g. using an LFSR or several independent LFSRs; also includes PRNGs with parallel operation between LFSR and outputs
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Description
[産業上の利用分野]
この発明はシフトレジスタ回路を利用した乱数
発生装置に関し、とくに簡易な構成でありながら
性質の良好な乱数を発生できるようにしたもので
ある。 [従来技術〕 近年M系列発生器(Maximum Length Shift
Register Sequence Generator)を利用した一様
乱数発生装置が着目されている。M系列発生器は
その係数多項式をガロア体上の原始多項式に選ん
だものであり、出力される数列の周期を係数多項
式が同一次数の範囲で最大にするものである。も
ちろんM系列発生器から発生される数列からその
要素をどのように取り出して乱数に用いるかにつ
いては留意する必要がある。たとえばM系列
{a1}から{aj,……,aj+k}、{aj+1,……,
aj+k+1},{aj+2,……,aj+k+2}というように乱
数を選んでいくと、継続する乱数間に強い関連性
が生じ不適切である。 M系列から一様乱数を発生させる主たる手法と
してはTausworthe方法とLewis及びPayneの方
法とが知られている。 Taworthe方法では、M系列{ai}の継続する
l(p、ただしpは系数多項式次数)個の要素
の並べて、lビツトの2進小数 Wi=0.aσi+r-1aσi+r-2……ait+r-l を得、これを乱数とするものである。なおσはM
系列から相続くl個の要素を取り出す間隔であ
る。この手法の概要を第5図に示す。このように
生成された乱数ではM系列の周期Tと間隔σとを
互いに素に選ぶと{Wi}の周期もTとなり、ま
たその一周期中にはOが2p-l回ずつ現われる。従
つてpがlより十分大きければこの乱数は一様に
分布することがわかる。 Lewis及びPayne方法は特性方程式として f(D)=Dp+Dq+1(p>q) を用い、これによつて生成されるM系列{ai}の
位相を適当にずらしたものを並て、2進小数 Wi=0.aiai+〓2……ai+〓3 を得、これを乱数とするものである。この手法の
概要を第6図に示す。この手法のM系列{ai}は
漸化式 ai=ai-r+ai-q(mod2) を満たし、この結果{Wi}は漸化式 Wi=Wi-pWi-q で生成できる。ただしはビツトごとの排他的論
理和である。 しかしながら上述2つの手法は重大な欠点があ
る。即ちTauswortheの方法では乱数発生に要す
る時間が長くなつてしまう。またLewis及び
Payheの方法では一様性が不明となる欠点があ
る。この方法自体からは乱数の一様性が保証され
ていず、そのため一様性があるのかないのかを吟
味する必要がある。 [発明が解決しようとする問題点] この発明は以上の事情を考慮してなされたもの
であり、M系列発生器のシフトレジスタ回路から
出力される数列をシヤツフリングして出力する乱
数発生装置であつて、その構成から乱数の性質を
知ることができ、このためその性質についての吟
味する必要がなく、かつ乱数発生の所要時間が短
かいもの提供することを目的としている。 この発明はより具体的にはM系列発生器を利用
して性質のすぐれた乱数を簡易に生成する乱数発
生装置を提供することを目的としている。 [問題点を解決するための手段] この発明は以上の目的を達成するために、“1”
及び“0”を要素とする数列を発生するシフトレ
ジスタ回路と、このシフトレジスタ回路からのパ
ラレルを出力Aを受取りA×Gの行列積を実行す
る行列積回路とを有している。ただし、Aはベク
トルGは行列である。 [実施例] 以下この発明の一実施例について説明しよう。 第1図はこの実施例を示すものであり、この図
においてシフトレジスタ回路1は7ステージのシ
フトレジスタ2及びエクスクルーシブ・オア回路
3からなつている。このシフトレジスタ回路1の
特性方程式はf(D)=D7+D4+1である。シフト
レジスタ回路1は明らかにM系列発生器であり、
27−1の周期を有する。 シフトレジスタ2の各ステージからの出力は行
列積回路4にパラレルに供給されている。この行
列積回路4は行列G で表わすことができる。シフトレジスタ2の各ス
テージからの出力の成分をai(i=0〜6)とす
れば行列積回路4の出力bj(j=0〜6)はbj=
〓i aigji(mod2)である。ただし、gjiは行列Gの成
分である。行列積回路の出力は一旦ラツチ5にラ
ツチされたのち2進小数乱数W W=0.b0b1……b6 として出力される。 なお行列積回路4は例えば第2図に示すように
構成することができる。この図において6はエク
スクルーシブ・オア回路、7は行信号線、8は列
信号線である。 この乱数発生装置から発生する乱数の性質を理
解するために2次元での分布を求めた。これを第
3図に示す。2次元の分布とは継続する乱数
(Wi,Wi+1)の分布を調べたものである。図に示
す分布には規則性がなく、かつ一様性があること
が明らかである。このことは継続する2つの乱数
の関連性がなく、しかも乱数の発生確率が特定の
ものにかたよらないことを意味する。この乱数発
生装置の乱数がすぐれた性質を有することがわか
る。このことの詳細はのちに理解される。つぎに
行列Gの意味について考察を加えることにする。 結論から言えば行列Gによつて生成される乱数
は7ビツトの漸近的なLewis及びPayneの乱数で
ある。漸近的乱数(asymptotically random
number)の意味はのちに理解される。 まずk次均等分布(k−distribution)の概念
を導入しよう。この概念は乱数の一様性の目安と
なるものである。 定 義 乱数{Wi}の継続するk個の要素を座標成分
とする点をxiとするとき、k次元超立方体内の任
意の点x(座標成分がlビツトの2進小数で表わ
せるもの)に対してp(xi=x)=2-klが成立する
とき乱数{Wi}はk次均等分布をするという。
ここで確率pは1周期全体にわたる相対頻度を意
味する。 座標成分がlビツトで、次元がkであるから超
立方体内の点は2lk個である。p=(xi=x)=2-kl
であれば乱数{wi}が各点xに均等に分布するこ
とは明らかである。 M系列に基づく系列{wi}の分布に即して言え
ば、k次均等分布をつぎのように言うことができ
る。 定 義 (wi,wi+1,……,wi+r-1をkl組と見なすと
き、1周期にすべての成分が0の組は2p-kl−1
回、他のすべてのパターンはいずれも2p-kl回出現
するならば、{wi}はk次均等分布とする(この
ことからpklであることは明らかである)。 k個の継続する乱数を用いてシミユレーシヨン
を行うときk次均等分布が肝要とすることは明ら
かであろう。 てLewis及びPayneの乱数がk次均等分布であ
るためには、乱数wiを wi=0.aj1+iajz+i……ajl+i とし、k=LP/l」として、次の行列G^の各行
ベクトルが線形独立になることが、必要十分であ
る(このことについてはCommunications of
the ACM Vol.26,pp516〜523を参照された
い)。 ただし、{ai}はM系列、pはM系列の特性方
程式の次数、Lp/l」はp/lを超えない最大
の整数、Aiは(aiai+1……)である。 このことをp=7,l=7の乱数に適用する。 まずk=L1/1」=1である。そして を満たすG^7の行うベクトルが線形独立であれば
よい。なおG^7のサフイツクス7はl=7である
ことを示す。 他方第1図の実施例の乱数は で表わすことができる。この式において行列Gの
行ベクトルが線形独立なことは明らかである。こ
のことから行列式回路4から出力される乱数
(aj1ajz……aj7),(aj1+1ajz+1……aj7+1)が7ビ
ツト1次均等をするLewis及びPayneの乱数であ
ることがわかる。 次に、漸近的乱数との関連でこの実施例の乱数
について考察する。 一般にモンテカルロ法等のシミユレーシヨンの
ために乱数を使用するとき、要求される精度(ビ
ツト長)はその目的によりさまざまである。従つ
て任意のビツト長に対しk次均等分布が保証され
ていることが望ましい。例えばp=7のときの数
列aj1+1、ajz+i、aj3+i……を考えよう。そしてこの
数列のうち上位7ビツトを乱数としたときには1
次均等分布(k=L7/7」)が確立されているけ
れども、上位3ビツトを乱数としたときには2次
均等分布(k=L7/3」=2)が確立されていな
いとしよう。そうすると、この数列からl=7の
乱数を取り出すことは好ましいが、l=3の乱数
を装取り出すことは不適切となつてしまう。この
ことは不都合である。 漸近的乱数は以上の不都合が解消されている乱
数である。これはつぎのようにいうことができ
る。 定 義 次の2条件を満たすLewis及びPayneの乱数を
漸近的にランダムなsビツトのLewis及びPayne
の乱数と呼ぶ。 条件1:行列G^lの行ベクトルが任意のl(s)
に対して線形独立となる。 条件2:周期が素数となる。 なお、条件2はつぎのような要請に応えるもの
である。即ち通常k次元のシミユレーシヨンで乱
数を使用する場合一様乱数wiのオーバーラツプし
ないk組(wkl,wkl+1,……wkl+k-1)を用いる。
条件2はこの列に対してk次均等分布を保証する
ために必要となる。 さて、第1図の実施例で発生させられる乱数が
漸近的乱数はどうかについて考えよう。まずl=
7の場合にはk=1であり、 が成立しているので1次均等分布が確立している
ことは明らかである。 l=4,5及び6の場合には、k=1でありそ
れぞれ上述から が導き出され、これらの式からl=4,5及び6
の場合に一次均等分布が確立されるとは明らかで
ある。 l=3の場合にはk=L7/3」=2であり、ま
た上述G^7から が導き出される。ここで横棒で表わした第2、第
4及び第6の行ベクトルがそれぞれ第1、第3及
び第5の行ベクトルか一意的に決定されることに
留意されたい。結論から述べよう。第1、第3第
5の行ベクトルのうち任意のものをjで表わし、
第2、第4及び第6の行ベクトルのうち対応する
ものをj+1で表わし、さらにを(g1,g2,g3,
……,g7)で表記するとしうよ。j+1は次のよ
うにしてjから求まる。 gj+1,1=gj,7 gj+1,2=gj,1 gj+1,3=gj,2 gj+1,4=gj,3+gj,7 gj+1,5=gj,4 gj+1,6=gj,5 gj+1,7=gj,6 例えば第3行の行ベクトルg j2=(0111001)で
あるから第4行の行ベクトルj2 + 1=(1010100)
となる。同様にして第2行及び第6行の行ベクト
ルも求め、つぎの行列G^3を得る。 この行列G3各行ベクトルは線形独立となつて
いるので、この実施例の乱数はl=3の場合に2
次均等分布となることがわかる。 さて行ベクトルj+1が行ベクトルjから一意
的に決定されることについて考えておく。 既述のとおりl=3、k=2ではつぎの式が成
立する。 この式からAi(Aj1,Aj2またはAj3)は Aj=gj,1・A1+gj,2・A2+gj,3・A3+gj,4・A4+
gj,5・A5+5gj,6・A6+gj,7・A7 である。また上の式で数列Aの位相1つずらす
と、 を得るのでAj+1は Aj+1=gj,1・A2+gj,2・A3+gj,3・A4+gj,4・A5
+gj,5・A6+gj,6・A7+gj,7・A8 である。 ところでLewis及びPhayneの数列{ai}(ただ
しf(D)=DpDq+1)ではai=aj-p+ai-qが成立す
るのでA8=A1+A4である。従つて、Aj+1はつぎ
のように整理される。 Aj+1=gj,7・A1+gj,1・A2+gj,2・A3+(gj,3+
gj,7)・A4+gj,4・A5+gj,5・A6+gj,6・A7 jからgj+1を求め得ることは以上から理解でき
る。 なおここではgj+1とgjとについて述べたがj+
2,gj+3……をそれぞれj+1,j+2……から求め
ることができることももちろんである。このこと
の証明は上述と同様であり、繰り返さない。 さてこの実施例の漸近的ランダムネスの考察に
戻ろう。l=2の場合にはk=L7/2」=3であ
り、またG^7及びG^3から が導き出される。この場合も横棒で示す行ベクト
ルをそれぞれ直ぐ上の行ベクトルから決定して を得る。各行ベクトルは線形独立なので3次均等
分布が確立することがわかる。 l=1の場合にはk=L7/1」=7であり、ま
たG^7,G^3及びG^2から が導き出される。この場合も横棒で示す行ベクト
ルをそれぞれ直ぐ上の行ベクトルから順次決定し
て を得る。各行ベクトルは線形独立なので7次均等
分布が確立することがわかる。 以上からこの実施例の乱数が7ビツト漸近的な
乱数であることがわかる。 なお、第4図はこの実施例の乱数の上位3ビツ
トを使つた場合の2次均等分布の状態を示してい
る。これに対し、第3図は下位の4ビツトも含め
た全ビツトを使用した場合の2次元分布の状態を
示している。第3図から下位4ビツトによつて2
次元分布の規則性を解消していることがわかる。
このような規則性の解消は下位4ビツトに対応す
る、行列Gの第4〜7の行ベクトルからなる行列
のランクを高することにより達成される。 つぎに実施例の行列Gの決定のしかたについて
述べる。7ビツト漸近的な乱数を発生させるため
にはl=1から7まで順にk次均等分布を確立す
るように行ベクトルを決定していけばよい。 l=1 まず行列G^1任意の1つの行ベクトルを設定す
る。上述から理解されるように他の行ベクトルは
一意的に決定される。つぎにこのようにして得た
行列G1の各行ベクトルが線形独立になつている
かどうかを調べる。線形独立になつていれば、こ
の行列G^1を正規なものとして選ぶ。線形独立に
なつていなければ最初に設定する行ベクトルを他
のものにして同様の操作を行う。 例ば行列G^1の第1行ベクトル(1000000)とす
ると行列G1はつぎのようになる。 この行列G^1の各行ベクトルは線形独立である
のでこれを正規のものとして選ぶことができる。
この選択によりl=1のときの7次均等分布が保
証される。 l=2 行列G^2の第1、第2及び第3行の行ベクトル
は行列G^1の第1、第2及び第3行ベクトルと同
一であり、 である。横棒で示す未決定の行ベクトルはl=1
の場合と同様に求める。即ち、得られる行列G^2
の各行ベクトルが線形独立になるように、未決定
の行ベクトルのうち任意の1つを設定する。 例えば第4行の行ベクトルを(0111001)とす
ると行列G^2としてつぎのものが得られる。 この行列G^2の各行ベクトルは線形独立である
のでこれを正規のものとして選ぶことができる。
この選択によりl=2のときの3次均等分布が保
証される。 l=3 行列G^3の第1、第2、第3及び第4の行ベク
トルは行列G^2の第1、第2、第4及び第5の行
ベクトルと同一であり、 である。この場合も上述と同様に第5行及び第6
行の行ベクトルを適切に選定して2次均等分布を
満たす行列G^3を得る。 例えば行列G3はつぎのようなものである。 l=4,5,6及び7 l=4,5,6及びの場合にも同様にして行列
G^4、G^5、G^6及びG^7のうち未決定の行ベクトルを
決定していく。以下はそのようにして得た行列
G4、G5、G6及びG7の一例である。ただしアンダ
ーラインは新たく設定した行ベクトルを示す。 このような行列G^4,G^5,G^6及びG^7は一次均等
分布を保証する。 行列G^7が行列積回路4の行列Gとして用いら
れることは既に述べた。行列積回路4の出力の上
位1ビツトを用いると7次均等分布の乱数が得ら
れ、上位2ビツト、3ビツトをそれぞれ用いて3
次、4次均等分布の乱数が得られることについて
は説明を要しないであろう。 なお、この発明は上述実施例の構成の細部に拘
束されないことはもちろんである。 例えば上述では7ビツト漸近的な乱数を発生す
るようにしたけれどもビツト数は適切に選定する
ことができる。例えば3ビツト漸近的な乱数をつ
ぎの行列を実現する行列積回路により生成するよ
うにしてもよい。なお特性方程式はf(D)=D31+
D28+1である。
発生装置に関し、とくに簡易な構成でありながら
性質の良好な乱数を発生できるようにしたもので
ある。 [従来技術〕 近年M系列発生器(Maximum Length Shift
Register Sequence Generator)を利用した一様
乱数発生装置が着目されている。M系列発生器は
その係数多項式をガロア体上の原始多項式に選ん
だものであり、出力される数列の周期を係数多項
式が同一次数の範囲で最大にするものである。も
ちろんM系列発生器から発生される数列からその
要素をどのように取り出して乱数に用いるかにつ
いては留意する必要がある。たとえばM系列
{a1}から{aj,……,aj+k}、{aj+1,……,
aj+k+1},{aj+2,……,aj+k+2}というように乱
数を選んでいくと、継続する乱数間に強い関連性
が生じ不適切である。 M系列から一様乱数を発生させる主たる手法と
してはTausworthe方法とLewis及びPayneの方
法とが知られている。 Taworthe方法では、M系列{ai}の継続する
l(p、ただしpは系数多項式次数)個の要素
の並べて、lビツトの2進小数 Wi=0.aσi+r-1aσi+r-2……ait+r-l を得、これを乱数とするものである。なおσはM
系列から相続くl個の要素を取り出す間隔であ
る。この手法の概要を第5図に示す。このように
生成された乱数ではM系列の周期Tと間隔σとを
互いに素に選ぶと{Wi}の周期もTとなり、ま
たその一周期中にはOが2p-l回ずつ現われる。従
つてpがlより十分大きければこの乱数は一様に
分布することがわかる。 Lewis及びPayne方法は特性方程式として f(D)=Dp+Dq+1(p>q) を用い、これによつて生成されるM系列{ai}の
位相を適当にずらしたものを並て、2進小数 Wi=0.aiai+〓2……ai+〓3 を得、これを乱数とするものである。この手法の
概要を第6図に示す。この手法のM系列{ai}は
漸化式 ai=ai-r+ai-q(mod2) を満たし、この結果{Wi}は漸化式 Wi=Wi-pWi-q で生成できる。ただしはビツトごとの排他的論
理和である。 しかしながら上述2つの手法は重大な欠点があ
る。即ちTauswortheの方法では乱数発生に要す
る時間が長くなつてしまう。またLewis及び
Payheの方法では一様性が不明となる欠点があ
る。この方法自体からは乱数の一様性が保証され
ていず、そのため一様性があるのかないのかを吟
味する必要がある。 [発明が解決しようとする問題点] この発明は以上の事情を考慮してなされたもの
であり、M系列発生器のシフトレジスタ回路から
出力される数列をシヤツフリングして出力する乱
数発生装置であつて、その構成から乱数の性質を
知ることができ、このためその性質についての吟
味する必要がなく、かつ乱数発生の所要時間が短
かいもの提供することを目的としている。 この発明はより具体的にはM系列発生器を利用
して性質のすぐれた乱数を簡易に生成する乱数発
生装置を提供することを目的としている。 [問題点を解決するための手段] この発明は以上の目的を達成するために、“1”
及び“0”を要素とする数列を発生するシフトレ
ジスタ回路と、このシフトレジスタ回路からのパ
ラレルを出力Aを受取りA×Gの行列積を実行す
る行列積回路とを有している。ただし、Aはベク
トルGは行列である。 [実施例] 以下この発明の一実施例について説明しよう。 第1図はこの実施例を示すものであり、この図
においてシフトレジスタ回路1は7ステージのシ
フトレジスタ2及びエクスクルーシブ・オア回路
3からなつている。このシフトレジスタ回路1の
特性方程式はf(D)=D7+D4+1である。シフト
レジスタ回路1は明らかにM系列発生器であり、
27−1の周期を有する。 シフトレジスタ2の各ステージからの出力は行
列積回路4にパラレルに供給されている。この行
列積回路4は行列G で表わすことができる。シフトレジスタ2の各ス
テージからの出力の成分をai(i=0〜6)とす
れば行列積回路4の出力bj(j=0〜6)はbj=
〓i aigji(mod2)である。ただし、gjiは行列Gの成
分である。行列積回路の出力は一旦ラツチ5にラ
ツチされたのち2進小数乱数W W=0.b0b1……b6 として出力される。 なお行列積回路4は例えば第2図に示すように
構成することができる。この図において6はエク
スクルーシブ・オア回路、7は行信号線、8は列
信号線である。 この乱数発生装置から発生する乱数の性質を理
解するために2次元での分布を求めた。これを第
3図に示す。2次元の分布とは継続する乱数
(Wi,Wi+1)の分布を調べたものである。図に示
す分布には規則性がなく、かつ一様性があること
が明らかである。このことは継続する2つの乱数
の関連性がなく、しかも乱数の発生確率が特定の
ものにかたよらないことを意味する。この乱数発
生装置の乱数がすぐれた性質を有することがわか
る。このことの詳細はのちに理解される。つぎに
行列Gの意味について考察を加えることにする。 結論から言えば行列Gによつて生成される乱数
は7ビツトの漸近的なLewis及びPayneの乱数で
ある。漸近的乱数(asymptotically random
number)の意味はのちに理解される。 まずk次均等分布(k−distribution)の概念
を導入しよう。この概念は乱数の一様性の目安と
なるものである。 定 義 乱数{Wi}の継続するk個の要素を座標成分
とする点をxiとするとき、k次元超立方体内の任
意の点x(座標成分がlビツトの2進小数で表わ
せるもの)に対してp(xi=x)=2-klが成立する
とき乱数{Wi}はk次均等分布をするという。
ここで確率pは1周期全体にわたる相対頻度を意
味する。 座標成分がlビツトで、次元がkであるから超
立方体内の点は2lk個である。p=(xi=x)=2-kl
であれば乱数{wi}が各点xに均等に分布するこ
とは明らかである。 M系列に基づく系列{wi}の分布に即して言え
ば、k次均等分布をつぎのように言うことができ
る。 定 義 (wi,wi+1,……,wi+r-1をkl組と見なすと
き、1周期にすべての成分が0の組は2p-kl−1
回、他のすべてのパターンはいずれも2p-kl回出現
するならば、{wi}はk次均等分布とする(この
ことからpklであることは明らかである)。 k個の継続する乱数を用いてシミユレーシヨン
を行うときk次均等分布が肝要とすることは明ら
かであろう。 てLewis及びPayneの乱数がk次均等分布であ
るためには、乱数wiを wi=0.aj1+iajz+i……ajl+i とし、k=LP/l」として、次の行列G^の各行
ベクトルが線形独立になることが、必要十分であ
る(このことについてはCommunications of
the ACM Vol.26,pp516〜523を参照された
い)。 ただし、{ai}はM系列、pはM系列の特性方
程式の次数、Lp/l」はp/lを超えない最大
の整数、Aiは(aiai+1……)である。 このことをp=7,l=7の乱数に適用する。 まずk=L1/1」=1である。そして を満たすG^7の行うベクトルが線形独立であれば
よい。なおG^7のサフイツクス7はl=7である
ことを示す。 他方第1図の実施例の乱数は で表わすことができる。この式において行列Gの
行ベクトルが線形独立なことは明らかである。こ
のことから行列式回路4から出力される乱数
(aj1ajz……aj7),(aj1+1ajz+1……aj7+1)が7ビ
ツト1次均等をするLewis及びPayneの乱数であ
ることがわかる。 次に、漸近的乱数との関連でこの実施例の乱数
について考察する。 一般にモンテカルロ法等のシミユレーシヨンの
ために乱数を使用するとき、要求される精度(ビ
ツト長)はその目的によりさまざまである。従つ
て任意のビツト長に対しk次均等分布が保証され
ていることが望ましい。例えばp=7のときの数
列aj1+1、ajz+i、aj3+i……を考えよう。そしてこの
数列のうち上位7ビツトを乱数としたときには1
次均等分布(k=L7/7」)が確立されているけ
れども、上位3ビツトを乱数としたときには2次
均等分布(k=L7/3」=2)が確立されていな
いとしよう。そうすると、この数列からl=7の
乱数を取り出すことは好ましいが、l=3の乱数
を装取り出すことは不適切となつてしまう。この
ことは不都合である。 漸近的乱数は以上の不都合が解消されている乱
数である。これはつぎのようにいうことができ
る。 定 義 次の2条件を満たすLewis及びPayneの乱数を
漸近的にランダムなsビツトのLewis及びPayne
の乱数と呼ぶ。 条件1:行列G^lの行ベクトルが任意のl(s)
に対して線形独立となる。 条件2:周期が素数となる。 なお、条件2はつぎのような要請に応えるもの
である。即ち通常k次元のシミユレーシヨンで乱
数を使用する場合一様乱数wiのオーバーラツプし
ないk組(wkl,wkl+1,……wkl+k-1)を用いる。
条件2はこの列に対してk次均等分布を保証する
ために必要となる。 さて、第1図の実施例で発生させられる乱数が
漸近的乱数はどうかについて考えよう。まずl=
7の場合にはk=1であり、 が成立しているので1次均等分布が確立している
ことは明らかである。 l=4,5及び6の場合には、k=1でありそ
れぞれ上述から が導き出され、これらの式からl=4,5及び6
の場合に一次均等分布が確立されるとは明らかで
ある。 l=3の場合にはk=L7/3」=2であり、ま
た上述G^7から が導き出される。ここで横棒で表わした第2、第
4及び第6の行ベクトルがそれぞれ第1、第3及
び第5の行ベクトルか一意的に決定されることに
留意されたい。結論から述べよう。第1、第3第
5の行ベクトルのうち任意のものをjで表わし、
第2、第4及び第6の行ベクトルのうち対応する
ものをj+1で表わし、さらにを(g1,g2,g3,
……,g7)で表記するとしうよ。j+1は次のよ
うにしてjから求まる。 gj+1,1=gj,7 gj+1,2=gj,1 gj+1,3=gj,2 gj+1,4=gj,3+gj,7 gj+1,5=gj,4 gj+1,6=gj,5 gj+1,7=gj,6 例えば第3行の行ベクトルg j2=(0111001)で
あるから第4行の行ベクトルj2 + 1=(1010100)
となる。同様にして第2行及び第6行の行ベクト
ルも求め、つぎの行列G^3を得る。 この行列G3各行ベクトルは線形独立となつて
いるので、この実施例の乱数はl=3の場合に2
次均等分布となることがわかる。 さて行ベクトルj+1が行ベクトルjから一意
的に決定されることについて考えておく。 既述のとおりl=3、k=2ではつぎの式が成
立する。 この式からAi(Aj1,Aj2またはAj3)は Aj=gj,1・A1+gj,2・A2+gj,3・A3+gj,4・A4+
gj,5・A5+5gj,6・A6+gj,7・A7 である。また上の式で数列Aの位相1つずらす
と、 を得るのでAj+1は Aj+1=gj,1・A2+gj,2・A3+gj,3・A4+gj,4・A5
+gj,5・A6+gj,6・A7+gj,7・A8 である。 ところでLewis及びPhayneの数列{ai}(ただ
しf(D)=DpDq+1)ではai=aj-p+ai-qが成立す
るのでA8=A1+A4である。従つて、Aj+1はつぎ
のように整理される。 Aj+1=gj,7・A1+gj,1・A2+gj,2・A3+(gj,3+
gj,7)・A4+gj,4・A5+gj,5・A6+gj,6・A7 jからgj+1を求め得ることは以上から理解でき
る。 なおここではgj+1とgjとについて述べたがj+
2,gj+3……をそれぞれj+1,j+2……から求め
ることができることももちろんである。このこと
の証明は上述と同様であり、繰り返さない。 さてこの実施例の漸近的ランダムネスの考察に
戻ろう。l=2の場合にはk=L7/2」=3であ
り、またG^7及びG^3から が導き出される。この場合も横棒で示す行ベクト
ルをそれぞれ直ぐ上の行ベクトルから決定して を得る。各行ベクトルは線形独立なので3次均等
分布が確立することがわかる。 l=1の場合にはk=L7/1」=7であり、ま
たG^7,G^3及びG^2から が導き出される。この場合も横棒で示す行ベクト
ルをそれぞれ直ぐ上の行ベクトルから順次決定し
て を得る。各行ベクトルは線形独立なので7次均等
分布が確立することがわかる。 以上からこの実施例の乱数が7ビツト漸近的な
乱数であることがわかる。 なお、第4図はこの実施例の乱数の上位3ビツ
トを使つた場合の2次均等分布の状態を示してい
る。これに対し、第3図は下位の4ビツトも含め
た全ビツトを使用した場合の2次元分布の状態を
示している。第3図から下位4ビツトによつて2
次元分布の規則性を解消していることがわかる。
このような規則性の解消は下位4ビツトに対応す
る、行列Gの第4〜7の行ベクトルからなる行列
のランクを高することにより達成される。 つぎに実施例の行列Gの決定のしかたについて
述べる。7ビツト漸近的な乱数を発生させるため
にはl=1から7まで順にk次均等分布を確立す
るように行ベクトルを決定していけばよい。 l=1 まず行列G^1任意の1つの行ベクトルを設定す
る。上述から理解されるように他の行ベクトルは
一意的に決定される。つぎにこのようにして得た
行列G1の各行ベクトルが線形独立になつている
かどうかを調べる。線形独立になつていれば、こ
の行列G^1を正規なものとして選ぶ。線形独立に
なつていなければ最初に設定する行ベクトルを他
のものにして同様の操作を行う。 例ば行列G^1の第1行ベクトル(1000000)とす
ると行列G1はつぎのようになる。 この行列G^1の各行ベクトルは線形独立である
のでこれを正規のものとして選ぶことができる。
この選択によりl=1のときの7次均等分布が保
証される。 l=2 行列G^2の第1、第2及び第3行の行ベクトル
は行列G^1の第1、第2及び第3行ベクトルと同
一であり、 である。横棒で示す未決定の行ベクトルはl=1
の場合と同様に求める。即ち、得られる行列G^2
の各行ベクトルが線形独立になるように、未決定
の行ベクトルのうち任意の1つを設定する。 例えば第4行の行ベクトルを(0111001)とす
ると行列G^2としてつぎのものが得られる。 この行列G^2の各行ベクトルは線形独立である
のでこれを正規のものとして選ぶことができる。
この選択によりl=2のときの3次均等分布が保
証される。 l=3 行列G^3の第1、第2、第3及び第4の行ベク
トルは行列G^2の第1、第2、第4及び第5の行
ベクトルと同一であり、 である。この場合も上述と同様に第5行及び第6
行の行ベクトルを適切に選定して2次均等分布を
満たす行列G^3を得る。 例えば行列G3はつぎのようなものである。 l=4,5,6及び7 l=4,5,6及びの場合にも同様にして行列
G^4、G^5、G^6及びG^7のうち未決定の行ベクトルを
決定していく。以下はそのようにして得た行列
G4、G5、G6及びG7の一例である。ただしアンダ
ーラインは新たく設定した行ベクトルを示す。 このような行列G^4,G^5,G^6及びG^7は一次均等
分布を保証する。 行列G^7が行列積回路4の行列Gとして用いら
れることは既に述べた。行列積回路4の出力の上
位1ビツトを用いると7次均等分布の乱数が得ら
れ、上位2ビツト、3ビツトをそれぞれ用いて3
次、4次均等分布の乱数が得られることについて
は説明を要しないであろう。 なお、この発明は上述実施例の構成の細部に拘
束されないことはもちろんである。 例えば上述では7ビツト漸近的な乱数を発生す
るようにしたけれどもビツト数は適切に選定する
ことができる。例えば3ビツト漸近的な乱数をつ
ぎの行列を実現する行列積回路により生成するよ
うにしてもよい。なお特性方程式はf(D)=D31+
D28+1である。
【表】
[発明の効果]
以上説明したようにこの発明によればシフトレ
ジスタ回路の出力を行列積回路に供給してシヤツ
フリングするようにしている。従つて乱数の発生
の所要時間を短かくすることができる。また、行
列積回路の行列から乱数の性質を知ることがで
き、あらためてその性質を吟味する必要がない。 また行列積回路の行列を適切に選ぶことにより
sビツト漸近的な乱数を簡易に生成することがで
きる。
ジスタ回路の出力を行列積回路に供給してシヤツ
フリングするようにしている。従つて乱数の発生
の所要時間を短かくすることができる。また、行
列積回路の行列から乱数の性質を知ることがで
き、あらためてその性質を吟味する必要がない。 また行列積回路の行列を適切に選ぶことにより
sビツト漸近的な乱数を簡易に生成することがで
きる。
第1図はこの発明の一実施例を示すブロツク
図、第2図は第1図の行列積回路4の構成例を示
す回路図、第3図及び第4図は第1図実施例を説
明するための図、第5図及び第6図はそれぞれ
Tauswortheの方法及びLewis Payneの方法を説
明する図である。
図、第2図は第1図の行列積回路4の構成例を示
す回路図、第3図及び第4図は第1図実施例を説
明するための図、第5図及び第6図はそれぞれ
Tauswortheの方法及びLewis Payneの方法を説
明する図である。
Claims (1)
- 【特許請求の範囲】 1 フイードバツクシフトレジスタを含んでなる
M系列発生器と、 上記フイードバツクシフトレジスタから得られ
るパラレルなビツトデータAを受け取り A G(ただしAはベクトル、Gは行列である
の行列積を実行する手段とを有し、 さらに上記行列Gをk次均等分布が生成される
ように選定した乱数発生装置。 2 漸次的乱数が生成されるように上記行列Gを
選定した特許請求の範囲第3項記載の乱数発生装
置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59214467A JPS6197746A (ja) | 1984-10-15 | 1984-10-15 | 乱数発生装置 |
| DE8585110592T DE3580151D1 (de) | 1984-10-15 | 1985-08-23 | Pseudozufallszahlengenerator. |
| EP85110592A EP0178432B1 (en) | 1984-10-15 | 1985-08-23 | Pseudorandom number generator |
| US07/171,213 US5046036A (en) | 1984-10-15 | 1988-03-18 | Pseudorandom number generator |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59214467A JPS6197746A (ja) | 1984-10-15 | 1984-10-15 | 乱数発生装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6197746A JPS6197746A (ja) | 1986-05-16 |
| JPH0326859B2 true JPH0326859B2 (ja) | 1991-04-12 |
Family
ID=16656203
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP59214467A Granted JPS6197746A (ja) | 1984-10-15 | 1984-10-15 | 乱数発生装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5046036A (ja) |
| EP (1) | EP0178432B1 (ja) |
| JP (1) | JPS6197746A (ja) |
| DE (1) | DE3580151D1 (ja) |
Families Citing this family (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4959832A (en) * | 1988-12-09 | 1990-09-25 | International Business Machines | Parallel pseudorandom pattern generator with varying phase shift |
| US5187676A (en) * | 1991-06-28 | 1993-02-16 | Digital Equipment Corporation | High-speed pseudo-random number generator and method for generating same |
| EP0529512A3 (en) * | 1991-08-23 | 1993-06-16 | Fujitsu Limited | Method and system for generating random number sequences |
| US5210770A (en) * | 1991-09-27 | 1993-05-11 | Lockheed Missiles & Space Company, Inc. | Multiple-signal spread-spectrum transceiver |
| ES2038912B1 (es) * | 1991-09-30 | 1994-08-01 | Alcatel Standard Electrica | Sistema sincrono de aleatorizacion de datos en paralelo. |
| JP2541480B2 (ja) * | 1993-10-06 | 1996-10-09 | 日本電気株式会社 | 擬似乱数発生装置 |
| EP0656709B1 (en) * | 1993-11-30 | 2005-07-13 | Canon Kabushiki Kaisha | Encryption device and apparatus for encryption/decryption based on the Montgomery method using efficient modular multiplication |
| KR970002951B1 (ko) * | 1994-04-13 | 1997-03-13 | 양승택 | 2^n길이 의사 난수 계열 발생 장치 |
| US5864491A (en) * | 1997-11-10 | 1999-01-26 | Telefonaktiebolaget L M Ericsson | Apparatus and associated method for generating a pseudo random number |
| US6292506B1 (en) | 1998-12-04 | 2001-09-18 | The United States Of America As Represented By The Secretary Of The Air Force | Length selectable, hardware efficient pseudorandom code generator |
| US6636553B1 (en) * | 1998-12-29 | 2003-10-21 | Texas Instruments Incorporated | Pseudorandom noise generator for WCDMA |
| US6188714B1 (en) | 1998-12-29 | 2001-02-13 | Texas Instruments Incorporated | Parallel M-sequence generator circuit |
| FI107094B (fi) * | 1999-05-10 | 2001-05-31 | Nokia Mobile Phones Ltd | Menetelmä päivittää koodigeneraattorin lineaarinen palautesiirtorekisteri |
| US6640236B1 (en) * | 1999-08-31 | 2003-10-28 | Qualcomm Incorporated | Method and apparatus for generating multiple bits of a pseudonoise sequence with each clock pulse by computing the bits in parallel |
| US6745219B1 (en) | 2000-06-05 | 2004-06-01 | Boris Zelkin | Arithmetic unit using stochastic data processing |
| JP3626105B2 (ja) * | 2001-03-05 | 2005-03-02 | Necマイクロシステム株式会社 | 疑似ランダム信号発生回路 |
| GB2379140B (en) * | 2001-08-22 | 2004-11-10 | Ubinetics Ltd | Code generation |
| US7227951B2 (en) * | 2001-11-06 | 2007-06-05 | Ntt Docomo, Inc. | Enhanced ANSI X9.17 pseudorandom number generators with forward security |
| US7461111B2 (en) | 2002-09-30 | 2008-12-02 | Fdk Corporation | Method of uniforming physical random number and physical number generation device |
| US8885761B2 (en) | 2003-03-25 | 2014-11-11 | Sony Corporation | Data processing apparatus and method |
| GB2454193B (en) | 2007-10-30 | 2012-07-18 | Sony Corp | Data processing apparatus and method |
| US7426666B2 (en) * | 2004-05-18 | 2008-09-16 | Lucent Technologies Inc. | Noisy channel emulator for high speed data |
| US20080281892A1 (en) * | 2004-09-22 | 2008-11-13 | Erwin Hemming | Method and Apparatus for Generating Pseudo Random Numbers |
| US8213611B2 (en) * | 2004-11-03 | 2012-07-03 | Broadcom Corporation | Two-stage block synchronization and scrambling |
| RU2294559C1 (ru) * | 2005-06-02 | 2007-02-27 | Федеральное государственное научное учреждение Научно-исследовательский институт "СПЕЦВУЗАВТОМАТИКА" | Устройство для генерации псевдослучайной последовательности двоичных чисел с использованием эллиптических кривых |
| US7970809B2 (en) * | 2007-06-07 | 2011-06-28 | Harris Corporation | Mixed radix conversion with a priori defined statistical artifacts |
| US8694798B2 (en) * | 2008-05-22 | 2014-04-08 | Red Hat, Inc. | Generating and securing multiple archive keys |
| US8175268B2 (en) * | 2008-05-22 | 2012-05-08 | Red Hat, Inc. | Generating and securing archive keys |
| US9124462B2 (en) * | 2012-10-25 | 2015-09-01 | Texas Instruments Incorporated | Flexible PRBS architecture for a transceiver |
| EP2940923B1 (en) * | 2014-04-28 | 2018-09-05 | Université de Genève | Method and device for optics based quantum random number generator |
| US10476661B2 (en) * | 2016-06-27 | 2019-11-12 | Fujitsu Limited | Polynomial-based homomorphic encryption |
| US10327634B2 (en) | 2017-09-08 | 2019-06-25 | Arkadiy Farberov | Ophthalmic lens doublet for ophthalmoscopy |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3742381A (en) * | 1971-06-09 | 1973-06-26 | California Inst Of Techn | Wideband digital pseudo gaussian noise generator |
| GB1382048A (en) * | 1971-09-15 | 1975-01-29 | Int Computers Ltd | Randomnumber generators |
| FR2172460A5 (ja) * | 1972-02-11 | 1973-09-28 | Alsthom Cgee | |
| JPS49120553A (ja) * | 1973-03-19 | 1974-11-18 | ||
| JPS505545A (ja) * | 1973-05-16 | 1975-01-21 | ||
| US4161041A (en) * | 1978-10-06 | 1979-07-10 | The United States Of America As Represented By The Secretary Of The Air Force | Pseudo random number generator apparatus |
| JPS5654118A (en) * | 1979-10-09 | 1981-05-14 | Agency Of Ind Science & Technol | Simple generating method of irregular signal |
| JPS56162564A (en) * | 1980-05-20 | 1981-12-14 | Nec Corp | Multivalued code generator |
| JPS57194621A (en) * | 1981-05-26 | 1982-11-30 | Nec Corp | Random number generator |
| US4408298A (en) * | 1981-06-26 | 1983-10-04 | Rca Corporation | Pseudo random number generator apparatus |
| GB8421500D0 (en) * | 1984-08-24 | 1984-09-26 | British Telecomm | Error generation |
| US4774681A (en) * | 1985-03-11 | 1988-09-27 | Tektronix, Inc. | Method and apparatus for providing a histogram |
-
1984
- 1984-10-15 JP JP59214467A patent/JPS6197746A/ja active Granted
-
1985
- 1985-08-23 EP EP85110592A patent/EP0178432B1/en not_active Expired
- 1985-08-23 DE DE8585110592T patent/DE3580151D1/de not_active Expired - Lifetime
-
1988
- 1988-03-18 US US07/171,213 patent/US5046036A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6197746A (ja) | 1986-05-16 |
| EP0178432B1 (en) | 1990-10-17 |
| DE3580151D1 (de) | 1990-11-22 |
| EP0178432A3 (en) | 1987-06-03 |
| EP0178432A2 (en) | 1986-04-23 |
| US5046036A (en) | 1991-09-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0326859B2 (ja) | ||
| Rueppel | Correlation immunity and the summation generator | |
| US4493046A (en) | Apparatus for generation of binary pseudo-random numbers | |
| Bardell | Analysis of cellular automata used as pseudorandom pattern generators | |
| US7921145B2 (en) | Extending a repetition period of a random sequence | |
| Marsaglia | Xorshift rngs | |
| US4691291A (en) | Random sequence generators | |
| Bright et al. | Quasi-random number sequences from a long-period TLP generator with remarks on application to cryptography | |
| JP2002268875A (ja) | 乱数生成装置 | |
| Mandal et al. | Feedback reconstruction and implementations of pseudorandom number generators from composited de Bruijn sequences | |
| Fúster-Sabater | Generation of cryptographic sequences by means of difference equations | |
| US20040054703A1 (en) | Method and device for generating a pseudo-random sequence using a discrete logarithm | |
| Szmidt | Nonlinear feedback shift registers and Zech’s logarithms | |
| Chugunkov et al. | Computing in finite fields | |
| EP0878932B1 (en) | Circuit and method for arbitrarily shifting M-sequence | |
| US20030147529A1 (en) | Table driven method for calculating arithmetic inverse for use in cryptography | |
| Beletsky | Generalized galois-fibonacci matrix generators pseudo-random sequences | |
| Gammel et al. | Linear filtering of nonlinear shift-register sequences | |
| Gong et al. | The decimation-Hadamard transform of two-level autocorrelation sequences | |
| RU2756833C1 (ru) | Генератор псевдослучайных чисел | |
| Green et al. | Linear complexity of polyphase power residue sequences | |
| Beletsky | Generalized Galois and Fibonacci Matrices in Cryptographic Applications | |
| JPWO2001067605A1 (ja) | 疑似ランダム信号生成方法及びその装置 | |
| Beletsky | Synthesis of Сryptoresistant Generators of Pseudorandom Numbers Based on Generalized Galois and Fibonacci Matrixes | |
| US20020129071A1 (en) | Pseudo random address generator for 0.75M cache |