![]() | |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() | |
![]() | |
![]() |
Shift Register Generators (SRGs) [21, 22] are of the form:
where the 's and the
's are either 0 or 1.
The maximal period of
and can be achieved using as few as
two non-zero values of
.
This leads to a very fast random number generator.
There are two ways to make pseudorandom integers out of the bits
produced by Eq. (). The first, called the digital
multi-step method, takes n successive bits from Eq. (
) to
form an integer of n-bits. Then n more bits are generated to
create the next integer, and so on. The second method, called the
generalized feedback shift-register, creates a new n-bit
pseudorandom integer for every iteration of Eq. (
). This
is done by constructing the n-bit word from the last bit generated,
, and n-1 other bits from the k bits of SRG state. Thus a
random number is generated for each new bit generated. While these two
methods seem different, they are very related, and theoretical results
for one always hold for the other. Serious correlations can result if
k is small. Reader's interested in more general information on SRGs
should consult the references: [23, 21, 22].
The shift register sequences can be parameterized through the choice
of . One can systematically assign the values of
to the
processors to produce distinct maximal period shift register
sequences [24]. This scheme can be justified based on
exponential sum bounds, as in the case of the prime modulus LCG. This
similarity is no accident, and is based on the fact that both
generators are maximal period linear recursions over a finite
field [25].
The National Center for Supercomputing Applications
University of Illinois at Urbana-Champaign
ashoks@ncsa.uiuc.edu
Last modified: September 16, 1997