MultiplicandSelector class

A class accessing the multiples of the multiplicand at a position.

Constructors

MultiplicandSelector.new(int radix, Logic multiplicand, {Logic? selectSignedMultiplicand, bool signedMultiplicand = false})
Build a MultiplicandSelector generationg required multiples of multiplicand to select using a RadixEncoder argument.

Properties

hashCode int
The hash code for this object.
no setterinherited
multiples LogicArray
Place to store multiples of the multiplicand (e.g. *1, *2, *-1, *-2..).
getter/setter pair
multiplesSlice List<Logic>
Multiples sliced into columns for select to access.
latefinal
multiplicand Logic
The base multiplicand from which to generate multiples to select.
getter/setter pair
radix int
The radix of the selector.
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shift int
The bit shift of the selector (typically overlaps 1).
getter/setter pair
width int
New width of partial products generated from the multiplicand.
no setter

Methods

fetchMultiples(int col) Logic
Retrieve the multiples of the multiplicand at current bit position.
getMultiples(int col) Logic
Compute the multiples of the multiplicand at current bit position.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
select(int col, RadixEncode encode) Logic
Select the partial product term from the multiples using a RadixEncode.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Constants

allowedRadices → const List<int>
The allowed radix values for the selector to decode and select from multiples of the multiplicand