GaloisLFSR

chisel3.util.random.GaloisLFSR
See theGaloisLFSR companion class
object GaloisLFSR

Utility for generating a pseudorandom UInt from a GaloisLFSR.

For example, to generate a pseudorandom 8-bit UInt that changes every cycle, you can use:

val pseudoRandomNumber = GaloisLFSR.maxPeriod(8)

Attributes

Companion
class
Source
GaloisLFSR.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
GaloisLFSR.type

Members list

Value members

Concrete methods

def apply(width: Int, taps: Set[Int], increment: Bool = ..., seed: Option[BigInt] = ..., reduction: LFSRReduce = ...): UInt

Return a pseudorandom UInt generated from a GaloisLFSR.

Return a pseudorandom UInt generated from a GaloisLFSR.

Value parameters

increment

when asserted, a new random value will be generated

reduction

the reduction operation (either XOR or XNOR)

seed

an initial value for internal LFSR state

taps

a set of tap points to use when constructing the LFSR

width

of pseudorandom output

Attributes

Source
GaloisLFSR.scala
def maxPeriod(width: Int, increment: Bool = ..., seed: Option[BigInt] = ..., reduction: LFSRReduce = ...): UInt

Return a pseudorandom UInt generated using a maximal period GaloisLFSR

Return a pseudorandom UInt generated using a maximal period GaloisLFSR

Value parameters

increment

when asserted, a new random value will be generated

reduction

the reduction operation (either XOR or XNOR)

seed

an initial value for internal LFSR state

width

of pseudorandom output

Attributes

Source
GaloisLFSR.scala