← Back to Patent Explorer
US5258936A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for generating pseudo-random numbers

Assignee: Motorola Solutions Inc
•
Filing: 1993-05-10
•
Granted: 1993-11-02
•
Expires: 2013-05-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for generating pseudo-random numbers. A programmably selectable MASK value determines the polynomial to be used to generate the pseudo-random numbers. The MASK value can be changed while pseudo-random numbers are being generated in order to increase the run rate and improve the randomness of the sequence of pseudo-random numbers being generated. A programmably selectable SEED value is also used. The initial SEED value is used to generate the first pseudo-random number. The first pseudo-random number is then used as the NEW SEED value to generate the second pseudo-random number, and so on.

Inventors

  • 👤 Michael G. Gallup
  • 👤 L. Rodney Goke

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 16:54
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/58; G06F7/582; G06F7/584; G06F2207/00; G06F2207/58; G06F2207/581; G06F2207/583

Claims Analysis

Total Claims: 35
Claim 1
Independent Claim 105 words
An apparatus for generating pseudo-random numbers, comprising: a first circuit which logically combines a first binary value and a second binary value to produce an intermediate binary value; and a second circuit which is coupled to said first circuit, which receives the intermediate binary value from said first circuit, and which produces a binary bit which has a first logic state if the intermediate binary value contains an odd number of ones and which has a second logic state if the intermediate binary value contains an even number of ones, said second circuit using the binary bit to determine a bit of a pseudo-random number.
Claim 2
Independent Claim 105 words
An apparatus for generating pseudo-random numbers, comprising: a first circuit which logically combines a first binary value and a second binary value to produce an intermediate binary value; and a second circuit which is coupled to said first circuit, which receives the intermediate binary value from said first circuit, and which produces a binary bit which has a first logic state if the intermediate binary value contains an odd number of ones and which has a second logic state if the intermediate binary value contains an even number of ones, said second circuit using the binary bit to determine a bit of a pseudo-random number.
Claim 3
Dependent Claim 27 words
An apparatus as in claim 1, wherein said first circuit performs a logical AND operation using the first binary value and the second binary value as operands.
Claim 4
Dependent Claim 19 words
An apparatus as in claim 1, wherein the binary bit is a most significant bit of the pseudo-random number.
Claim 5
Dependent Claim 14 words
An apparatus as in claim 1, wherein said second circuit comprises: a ones-tally circuit.
Claim 6
Dependent Claim 20 words
An apparatus as in claim 1, wherein said second circuit comprises: a shifting circuit for shifting the first binary value.
Claim 7
Dependent Claim 25 words
An apparatus as in claim 5, further comprising: control circuitry, coupled to said shifting circuit, for selecting between a shift operation and a no-shift operation.
Claim 8
Dependent Claim 28 words
An apparatus as in claim 6, further comprising: a first storage circuit for storing the first binary value, said first storage circuit being coupled to said first circuit.
Claim 9
Dependent Claim 28 words
An apparatus as in claim 7, further comprising: a second storage circuit for storing the second binary value, said second storage circuit being coupled to said first circuit.
Claim 10
Dependent Claim 28 words
An apparatus as in claim 8, wherein said control circuitry also controls read accesses and write accesses to said first storage circuit and to said second storage circuit.
Claim 11
Dependent Claim 42 words
An apparatus as in claim 9, wherein said second circuit produces the pseudo-random number by shifting each bit of the first binary value by one bit and by shifting in the binary bit as the most significant bit of the pseudo-random number.
Claim 12
Dependent Claim 28 words
An apparatus as in claim 10, wherein the pseudo-random number is also used as a next first binary value which is logically combined with the second binary value.
Claim 13
Independent Claim 166 words
A method for generating a pseudo-random number value in a data processing system, the data processing system having a plurality of registers and having a circuit for performing a logical combination function coupled to a circuit for producing a control signal, the method comprising the steps of: transferring, from a first one of the plurality of registers to a first bus, a first plurality of electrical signals which represent a first value; transferring, from a second one of the plurality of registers to a second bus, a second plurality of electrical signals which represent a second value; logically combining the first plurality of electrical signals which represent the first value and the second plurality of electrical signals which represent a second value to produce an intermediate value; placing the control signal in a first logic state if a number of ones in a binary representation of the intermediate value is odd; and generating a pseudo-random number value based upon the first value and the control signal.
Claim 14
Independent Claim 166 words
A method for generating a pseudo-random number value in a data processing system, the data processing system having a plurality of registers and having a circuit for performing a logical combination function coupled to a circuit for producing a control signal, the method comprising the steps of: transferring, from a first one of the plurality of registers to a first bus, a first plurality of electrical signals which represent a first value; transferring, from a second one of the plurality of registers to a second bus, a second plurality of electrical signals which represent a second value; logically combining the first plurality of electrical signals which represent the first value and the second plurality of electrical signals which represent a second value to produce an intermediate value; placing the control signal in a first logic state if a number of ones in a binary representation of the intermediate value is odd; and generating a pseudo-random number value based upon the first value and the control signal.
Claim 15
Dependent Claim 22 words
The method according to claim 12, wherein said step of logically combining further comprises the step of: performing a logical AND operation.
Claim 16
Dependent Claim 35 words
The method according to claim 12, further comprising the step of: placing the control signal in a second logic state if the number of ones in a binary representation of the intermediate value is even.
Claim 17
Dependent Claim 37 words
The method according to claim 12, wherein said step of generating a pseudo-random number value further comprises the step of: using the control signal to determine a logic state of a bit of the pseudo-random number value.
Claim 18
Dependent Claim 19 words
The method according to claim 15, wherein the bit of the pseudo-random number value is a most significant bit.
Claim 19
Dependent Claim 28 words
The method according to claim 15, wherein said step of generating a pseudo-random number value further comprises the step of: shifting the first value by one bit place.
Claim 20
Dependent Claim 40 words
The method according to claim 12, further comprising the steps of: storing an initial first value in the first one of the plurality of registers; and storing an initial second value in the second one of the plurality of registers.
Claim 21
Dependent Claim 48 words
The method according to claim 12, further comprising the step of: repeating said step of logically combining, said step of placing the control signal in the first logic state, and said step of generating a pseudo-random number value using a previous pseudo-random number value as the first value.
Claim 22
Dependent Claim 16 words
The method according to claim 12, wherein the method is initiated by decoding a single instruction.
Claim 23
Dependent Claim 14 words
The method according to claim 12, wherein the first value is a pseudo-random number.
Claim 24
Independent Claim 103 words
A method for operating a digital data processor comprising the steps of: decoding an instruction; and performing, in response to said decoding of the instruction, the steps of: 1) retrieving a first value from a first storage circuit; 2) retrieving a second value from a second storage circuit; 3) logically combining the first value and the second value to produce an intermediate value; 4) placing a binary bit in a first logic state if a number of ones in a binary representation of the intermediate value is odd; and 5) generating a pseudo-random number based upon the first value and the binary bit.
Claim 25
Independent Claim 103 words
A method for operating a digital data processor comprising the steps of: decoding an instruction; and performing, in response to said decoding of the instruction, the steps of: 1) retrieving a first value from a first storage circuit; 2) retrieving a second value from a second storage circuit; 3) logically combining the first value and the second value to produce an intermediate value; 4) placing a binary bit in a first logic state if a number of ones in a binary representation of the intermediate value is odd; and 5) generating a pseudo-random number based upon the first value and the binary bit.
Claim 26
Dependent Claim 21 words
The method according to claim 22, wherein said step of logically combining comprises the step of: performing a logical AND operation.
Claim 27
Dependent Claim 29 words
The method according to claim 22, wherein said step of generating a pseudo-random number comprises the step of: using the binary bit as one bit of the pseudo-random number.
Claim 28
Dependent Claim 19 words
The method according to claim 24, wherein a most significant bit of the pseudo-random number is the binary bit.
Claim 29
Independent Claim 112 words
An apparatus for generating pseudo-random numbers, comprising: first storage circuit for storing a first binary value; second storage circuit for storing a second binary value; ANDing circuit for logically ANDing the first binary value and the second binary value to produce an intermediate binary value, said ANDing circuit being coupled to said first storage circuit and said second storage circuit; and logic circuit for receiving the intermediate binary value from said ANDing circuit and for placing a binary bit in a first logic state if the intermediate binary value contains an odd number of ones, said logic circuit using the first binary value and the binary bit to generate a pseudo-random number.
Claim 30
Independent Claim 112 words
An apparatus for generating pseudo-random numbers, comprising: first storage circuit for storing a first binary value; second storage circuit for storing a second binary value; ANDing circuit for logically ANDing the first binary value and the second binary value to produce an intermediate binary value, said ANDing circuit being coupled to said first storage circuit and said second storage circuit; and logic circuit for receiving the intermediate binary value from said ANDing circuit and for placing a binary bit in a first logic state if the intermediate binary value contains an odd number of ones, said logic circuit using the first binary value and the binary bit to generate a pseudo-random number.
Claim 31
Independent Claim 88 words
An apparatus for generating a pseudo-random number, comprising: a storage circuit for storing a previously generated pseudo-random number; a programmable register circuit for storing a mask value; and circuitry, coupled to said storage circuit for receiving the previously generated pseudo-random number and coupled to said programmable register circuit for receiving the mask value, said circuitry using the mask value to select which bits of the previously generated pseudo-random number are masked, said circuitry generating the pseudo-random number based upon the previously generated pseudo-random number and the mask value.
Claim 32
Independent Claim 88 words
An apparatus for generating a pseudo-random number, comprising: a storage circuit for storing a previously generated pseudo-random number; a programmable register circuit for storing a mask value; and circuitry, coupled to said storage circuit for receiving the previously generated pseudo-random number and coupled to said programmable register circuit for receiving the mask value, said circuitry using the mask value to select which bits of the previously generated pseudo-random number are masked, said circuitry generating the pseudo-random number based upon the previously generated pseudo-random number and the mask value.
Claim 33
Dependent Claim 14 words
An apparatus as in claim 27, wherein said circuitry comprises: an arithmetic logic unit.
Claim 34
Dependent Claim 17 words
An apparatus as in claim 27, wherein the pseudo-random number is generated during execution of an instruction.
Claim 35
Dependent Claim 13 words
An apparatus as in claim 27, wherein said storage circuit is user programmable.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-11-01 1997-05-03 1997-11-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-11-01 2001-05-03 2001-11-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-11-01 2005-05-03 2005-11-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag