JPS62186330A - 乱数発生回路 - Google Patents
乱数発生回路Info
- Publication number
- JPS62186330A JPS62186330A JP61027950A JP2795086A JPS62186330A JP S62186330 A JPS62186330 A JP S62186330A JP 61027950 A JP61027950 A JP 61027950A JP 2795086 A JP2795086 A JP 2795086A JP S62186330 A JPS62186330 A JP S62186330A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- feedback
- logic circuit
- circuit
- sequence
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 abstract description 11
- 230000008878 coupling Effects 0.000 abstract 4
- 238000010168 coupling process Methods 0.000 abstract 4
- 238000005859 coupling reaction Methods 0.000 abstract 4
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
本発明の乱数発生回路は、いわゆるM系列を発生する複
数のフィードバック付きシフトレジスタに、これらを結
合する非線形結合論理回路を付加し、該非線形結合論理
回路の出力によって9M系列のビット列を変更すること
により、長周期かつ高品質の乱数を高速に発生すること
を可能としている。
数のフィードバック付きシフトレジスタに、これらを結
合する非線形結合論理回路を付加し、該非線形結合論理
回路の出力によって9M系列のビット列を変更すること
により、長周期かつ高品質の乱数を高速に発生すること
を可能としている。
本発明は9M系列を発生するフィードバック付きシフト
レジスタを複数個用いて、各々が乱数の各ビットに対応
するようにした乱数発生回路に係り、特に1例えばデー
タ処理装置において、シミュレーションなどを行う場合
に用いられる乱数を。
レジスタを複数個用いて、各々が乱数の各ビットに対応
するようにした乱数発生回路に係り、特に1例えばデー
タ処理装置において、シミュレーションなどを行う場合
に用いられる乱数を。
ハードウェアにより高速に発生する乱数発生回路に関す
るものである。
るものである。
従来、一般にデータ処理装置において用いる疑似乱数は
、ソフトウェアによって発生するようにされていたが、
ハードウェア回路によって、高速に簡易に発生できるよ
うにすることが考慮されている。
、ソフトウェアによって発生するようにされていたが、
ハードウェア回路によって、高速に簡易に発生できるよ
うにすることが考慮されている。
従来の乱数発生方法として1例えば1次合同法やM系列
法が知られている。M系列法では、乱数(整数)の各ビ
ット毎に独立に。
法が知られている。M系列法では、乱数(整数)の各ビ
ット毎に独立に。
’)n= a l ’ bh−1■a2・b、−2■・
・・・・・Φa、、−b、−8(・は論理積、■は排他
的論理和演算を示す)なる論理演算を施すことにより、
ランダムなビット列(b、)を発生する。ここで+
al〜a14は。
・・・・・Φa、、−b、−8(・は論理積、■は排他
的論理和演算を示す)なる論理演算を施すことにより、
ランダムなビット列(b、)を発生する。ここで+
al〜a14は。
“0”か“l”の値をとる。なお1M系列法では。
通常の場合、三項原始多項式の理論に基づき、特定の2
個のaiのみを非零とした。
個のaiのみを非零とした。
b、=b、1−、■bM−,。
の形がハードウェアの簡略化の目的で採用され。
これにより、2”−1の周期を実現するようにされてい
る。
る。
即ち1M系列乱数発生回路では、各ピント毎に独立なフ
ィードバック付きシフトレジスタを用意し、1つの周期
のビット列の部分列を組合わせることにより、整数乱数
を発生するようにされる。
ィードバック付きシフトレジスタを用意し、1つの周期
のビット列の部分列を組合わせることにより、整数乱数
を発生するようにされる。
上記M系列による方式では、乱数の周期がシフトレジス
タの段数によって決定されるため、長周期を実現するた
めには、多数のシフトレジスタを設ける必要があった。
タの段数によって決定されるため、長周期を実現するた
めには、多数のシフトレジスタを設ける必要があった。
また2M系列法により発生される乱数は9局所的な統計
的性質が、必ずしも満足のいくものではないことも指摘
されている。
的性質が、必ずしも満足のいくものではないことも指摘
されている。
そこで1M系列発生の高速性を活かし、から乱数の質を
向上させる方式が望まれている。
向上させる方式が望まれている。
本発明は上記問題点の解決を図り9M系列法による高速
性および回路の単純性を損なうことなく。
性および回路の単純性を損なうことなく。
2N−1より長周期で高品質の乱数を発生させる乱数発
生回路を提供することを目的とする。
生回路を提供することを目的とする。
C問題点を解決するための手段〕 ゛第1図は本発
明の原理ブロック図を示す。
明の原理ブロック図を示す。
第1図において、10−1ないし10−mは乱数の各ピ
ントを生成するフィードバック付きシフトレジスタ、1
1はフィードバック付きシフトレジスタ10−1.・・
・の各ビット間に非線形な相互作用を施す非線形結合論
理回路、12−1ないし12−mはフィードバック付き
シフトレジスタ10−1.・・・のビット列を変更する
M系列変更回路。
ントを生成するフィードバック付きシフトレジスタ、1
1はフィードバック付きシフトレジスタ10−1.・・
・の各ビット間に非線形な相互作用を施す非線形結合論
理回路、12−1ないし12−mはフィードバック付き
シフトレジスタ10−1.・・・のビット列を変更する
M系列変更回路。
13−1ないし13−mはフィードバック用EOR(排
他的論理和)回路を表す。
他的論理和)回路を表す。
フィードバック付きシフトレジスタ10−1ないし10
−mは、それぞれ語長mビットの乱数の各ビットを発生
させる。いわゆる2個のaiのみを“l”にした三項式
が用いられており、最終段のシフトレジスタのビット値
と、途中の段におけるビット値とが、EOR回路13−
1ないし13−mを介して、シフトレジスタ10−1な
いし10−mの第1段にフィードバックされるようにな
っている。
−mは、それぞれ語長mビットの乱数の各ビットを発生
させる。いわゆる2個のaiのみを“l”にした三項式
が用いられており、最終段のシフトレジスタのビット値
と、途中の段におけるビット値とが、EOR回路13−
1ないし13−mを介して、シフトレジスタ10−1な
いし10−mの第1段にフィードバックされるようにな
っている。
非線形結合論理回路11は、フィードバック付きシフト
レジスタ10−1ないし10−mの各段の予め任意に定
められた論理値を入力する。そして、その出力を他のビ
ットを生成するフィードバック付きシフトレジスタのル
ープに、EOR回路で構成されるM系列変更回路12−
1ないし12−mを介して挿入し1元来のM系列による
ビット列を変更する。
レジスタ10−1ないし10−mの各段の予め任意に定
められた論理値を入力する。そして、その出力を他のビ
ットを生成するフィードバック付きシフトレジスタのル
ープに、EOR回路で構成されるM系列変更回路12−
1ないし12−mを介して挿入し1元来のM系列による
ビット列を変更する。
従来のM系列法による乱数発生回路では、第1図に示す
非線形結合論理回路11およびM系列変更回路12−1
ないし12−mがないため、フィードバック付きシフト
レジスタ10−1ないし10−mの各ピント列は、独立
してループする。そのため、シフトレジスタの段数がN
段であるとすると、乱数の周期は、2’−1となる。こ
れに対し1本発明では、非線形結合論理回路11および
M系列変更回路12−1.・・・、12−mにより。
非線形結合論理回路11およびM系列変更回路12−1
ないし12−mがないため、フィードバック付きシフト
レジスタ10−1ないし10−mの各ピント列は、独立
してループする。そのため、シフトレジスタの段数がN
段であるとすると、乱数の周期は、2’−1となる。こ
れに対し1本発明では、非線形結合論理回路11および
M系列変更回路12−1.・・・、12−mにより。
各フィードバック付きシフトレジスタ10−1゜・・・
、10−mをループするビット値が、他のシフトレジス
タのビットの論理値によって変更されるため、これによ
って発生される乱数の周期は。
、10−mをループするビット値が、他のシフトレジス
タのビットの論理値によって変更されるため、これによ
って発生される乱数の周期は。
2”−’ (2N−1)の程度になる。
第2図は本発明の一実施例、第3図は第2図図示実施例
の動作を説明するための図を示す。
の動作を説明するための図を示す。
第2図において、第1図と同符号のものは第1図図示の
ものに対応する。20ないし22はM系列を変更するE
OR回路、23ないし29はナンド回路、30ないし3
2はノット回路、33ないし35はM系列変更用レジス
タを表す。
ものに対応する。20ないし22はM系列を変更するE
OR回路、23ないし29はナンド回路、30ないし3
2はノット回路、33ないし35はM系列変更用レジス
タを表す。
この実施例では、上位の第Oビットから下位の第3ビツ
トまでの語長4ビツトの乱数を発生させ。
トまでの語長4ビツトの乱数を発生させ。
シフトレジスタの段数Nが、7であるものを示している
。フィードバックの取り出し口pは、4である。即ち、
N=7.p=4.m=4であり、シフトレジスタの7段
目および4段目から、フィードバックを得る三項式によ
るM系列を基調にしている。
。フィードバックの取り出し口pは、4である。即ち、
N=7.p=4.m=4であり、シフトレジスタの7段
目および4段目から、フィードバックを得る三項式によ
るM系列を基調にしている。
非線形結合論理回路11としては、ナンド回路23〜2
9.ノット回路30〜32およびM系列変更用レジスタ
33〜35によって、整数加算における桁上げをシミュ
レートするものを採用している。なお、非線形結合論理
回路11の構成は。
9.ノット回路30〜32およびM系列変更用レジスタ
33〜35によって、整数加算における桁上げをシミュ
レートするものを採用している。なお、非線形結合論理
回路11の構成は。
乱数の応用分野や許容されるハードウェア量により、他
の形態のものを採用してもよく1例えば純組合わせ回路
でも、順序回路を含むものでもよい。
の形態のものを採用してもよく1例えば純組合わせ回路
でも、順序回路を含むものでもよい。
第2図図示回路の持つ各論理値が、第3図に示されてい
る。論理値s、p、cの右肩に付されている添字は、シ
ーケンスを表し、右下に付されている添字は、ビット位
1を表す。S、は乱数のiビット百の算術和であり、c
、はキャリーである。
る。論理値s、p、cの右肩に付されている添字は、シ
ーケンスを表し、右下に付されている添字は、ビット位
1を表す。S、は乱数のiビット百の算術和であり、c
、はキャリーである。
また、P、はキャリー伝播項、G□はキャリー生成項を
表す。
表す。
キャリーC,の最下位は、CM=AN’ BNとなり、
その他は。
その他は。
Ci =GiVPi・C4,1
=1’i −A、VPi ・Ci、1
で表される。また。
s、=p、Φci*+、 p正−A、■B。
であり、キャリー生成項G、は。
G、=A、・B、=Pi−A。
となり、B8が失われても、PiとA、とがら。
再生可能である。
このように、第2図に示す回路では、非線形結合論理回
路11による相互作用として、下位の桁の情報が、順次
上位の桁に伝播する。即ち、第1桁目のM系列は、i+
1〜N−1桁の情報の函数によって、適宜、変更を受け
ることになる。これにより、上位の桁にいくほど、その
周期が長くなっていく。
路11による相互作用として、下位の桁の情報が、順次
上位の桁に伝播する。即ち、第1桁目のM系列は、i+
1〜N−1桁の情報の函数によって、適宜、変更を受け
ることになる。これにより、上位の桁にいくほど、その
周期が長くなっていく。
以上説明したように2本発明によれば、従来のM系列方
式によるものに比べて、乱数の発生速度を落とすことな
く、長周期の乱数を発生させることができ、統計的に質
のよい乱数を発生させることができる。換言すれば、同
一周期の乱数を発生させる場合には、シフトレジスタに
関連するハードウェア量を低減できる。例えば2本発明
の乱数発生回路を、専用プロセッサ等に組み込むことに
より、シミュレーションなどにおける乱数を用いたデー
タ処理の性能を向上させることが可能になる。
式によるものに比べて、乱数の発生速度を落とすことな
く、長周期の乱数を発生させることができ、統計的に質
のよい乱数を発生させることができる。換言すれば、同
一周期の乱数を発生させる場合には、シフトレジスタに
関連するハードウェア量を低減できる。例えば2本発明
の乱数発生回路を、専用プロセッサ等に組み込むことに
より、シミュレーションなどにおける乱数を用いたデー
タ処理の性能を向上させることが可能になる。
第1図は本発明の原理ブロック図、第2図は本発明の一
実施例、第3図は第2図図示実施例の動作を説明するた
めの図を示す。 図中、10−1ないし10−mはフィードバック付きシ
フトレジスタ、11は非線形結合論理回路、12−1な
いし12−mはM系列変更回路。 13−1ないし13−mはフィードバック用EOR回路
を表す。
実施例、第3図は第2図図示実施例の動作を説明するた
めの図を示す。 図中、10−1ないし10−mはフィードバック付きシ
フトレジスタ、11は非線形結合論理回路、12−1な
いし12−mはM系列変更回路。 13−1ないし13−mはフィードバック用EOR回路
を表す。
Claims (1)
- 【特許請求の範囲】 複数個のフィードバック付きシフトレジスタ(10−1
、…、10−m)を備え、各々が乱数の各ビットに対応
するように構成された乱数発生回路において、上記各ビ
ット間に非線形な相互作用を施す非線形結合論理回路(
11)と、 該非線形結合論理回路(11)の出力により、上記シフ
トレジスタ内のビット列を変更する論理回路(12−1
、…、12−m)とを備え、 上記非線形結合論理回路(11)により、上記複数のシ
フトレジスタ(10−1、…、10−m)を結合するよ
うにしたことを特徴とする乱数発生回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61027950A JPS62186330A (ja) | 1986-02-13 | 1986-02-13 | 乱数発生回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61027950A JPS62186330A (ja) | 1986-02-13 | 1986-02-13 | 乱数発生回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62186330A true JPS62186330A (ja) | 1987-08-14 |
Family
ID=12235170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61027950A Pending JPS62186330A (ja) | 1986-02-13 | 1986-02-13 | 乱数発生回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62186330A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100458850B1 (ko) * | 2002-07-19 | 2004-12-03 | 매그나칩 반도체 유한회사 | 인증 시스템에서의 임의 숫자 발생 장치 |
-
1986
- 1986-02-13 JP JP61027950A patent/JPS62186330A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100458850B1 (ko) * | 2002-07-19 | 2004-12-03 | 매그나칩 반도체 유한회사 | 인증 시스템에서의 임의 숫자 발생 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7921145B2 (en) | Extending a repetition period of a random sequence | |
US6539409B2 (en) | Method for synthesizing linear finite state machines | |
Hotkar et al. | Implementation of Low Power and area efficient carry select Adder | |
JPS63294115A (ja) | 非線形ランダム系列発生器 | |
US9166795B2 (en) | Device and method for forming a signature | |
Dubrova et al. | A BDD-based approach to constructing LFSRs for parallel CRC encoding | |
Khan | A recursive method for synthesizing quantum/reversible quaternary parallel adder/subtractor with look-ahead carry | |
JPS62186330A (ja) | 乱数発生回路 | |
Sunandha et al. | Implementation of modified Dual-CLCG method for pseudorandom bit generation | |
PV et al. | Design and implementation of efficient stochastic number generator | |
Pang et al. | A novel method of synthesizing reversible logic | |
JP2000075785A (ja) | 高速暗号処理回路および処理方法 | |
Singh et al. | Performance Analysis of Low Power Decoders Using Reversible Computing | |
JPH01220528A (ja) | パリテイ発生器 | |
Sekhar et al. | An Efficient Pseudo Random Number Generator for Cryptographic Applications | |
Reji et al. | Three-Operand Binary Addition Using Parallel Prefix Adders | |
Alia et al. | On the lower bound to the VLSI complexity of number conversion from weighted to residue representation | |
Raghavaiah et al. | Quaternary logic based high recital spanning tree parallel prefix adder | |
MADHUPAVANI et al. | Design of Random Number Generation Using 256 Bit LFSR in FPGA | |
Yadav et al. | 64 Bit Binary Counter with Minimal Clock Period | |
JPH0964754A (ja) | 誤り検出符号生成回路 | |
KR100858559B1 (ko) | 잉여 이진수의 덧셈 방법, 잉여 이진수의 곱셈 방법, 잉여이진수 덧셈기 및 잉여 이진수 곱셈기 | |
Pavithara et al. | Design and FPGA implementation of folded SHA-256 using 4-2 adder compressor | |
Pornin | Automatic software optimization of block ciphers using bitslicing techniques | |
Zhong et al. | Joint Optimization of Randomizer and Computing Core for Low-Cost Stochastic Circuits |