scholarly journals FPGA-Optimised Uniform Random Number Generators Using LUTs and Shift Registers

Author(s):  
David B. Thomas ◽  
Wayne Luk
Author(s):  
E. Jack Chen

As computer capacities and simulation technologies advance, simulation has become the method of choice for modeling and analysis. The fundamental advantage of simulation is that it can tolerate far less restrictive modeling assumptions, leading to an underlying model that is more reflective of reality and thus more valid, leading to better decisions. Simulation studies are typically preceded by transforming in a more or less complicated way of a sequence of numbers between 0 and 1 produced by a pseudorandom generator into an observation of the measure of interest. Random numbers are a fundamental resource in science and technology. A facility for generating sequences of pseudorandom numbers is a fundamental part of computer simulation systems. Furthermore, random number generators also play an important role in cryptography and in the blockchain ecosystem. All samples of the sequence are generated independently of each other, and the value of the next sample in the sequence cannot be predicted, regardless of how many samples have already been produced.


Author(s):  
E. Jack Chen

A facility for generating sequences of pseudorandom numbers is a fundamental part of computer simulation systems. Furthermore, multiple independent streams of random numbers are often required in simulation studies, for instance, to facilitate synchronization for variance-reduction purposes, and for making independent replications. A portable set of software utilities is described for uniform random-number generation. It provides for multiple generators (streams) running simultaneously, and each generator (stream) has its sequence of numbers partitioned into many long disjoint contiguous substreams. Simple procedure calls allow the user to make any generator “jump” ahead/back v steps (random numbers). Implementation issues are discussed. An efficient and portable code is also provided to implement the package. The basic underlying generator CMRG (combined Multiple Recursive Generator) combines two multiple recursive random number generators with a period length of approximately 2191 (˜ 3.1× 1057), good speed, and excellent theoretical properties.


1967 ◽  
Vol 14 (1) ◽  
pp. 100-119 ◽  
Author(s):  
R. R. Coveyou ◽  
R. D. Macpherson

Sign in / Sign up

Export Citation Format

Share Document