ListLookup
chisel3.util.ListLookup
object ListLookup
For each element in a list, muxes (looks up) between cases (one per list element) based on a common address.
Value parameters
- addr
-
common select for cases, shared (same) across all list elements
- default
-
default value for each list element, should the address not match any case
- mapping
-
list of cases, where each entry consists of a BitPath (compared against addr) and a list of elements (same length as default) that is the output value for that element (will have the same index in the output).
Attributes
- Note
-
This appears to be an odd, specialized operator that we haven't seen used much, and seems to be a holdover from chisel2. This may be deprecated and removed, usage is not recommended.
- Example
-
ListLookup(2.U, // address for comparison List(10.U, 11.U, 12.U), // default "row" if none of the following cases match Array(BitPat(2.U) -> List(20.U, 21.U, 22.U), // this "row" hardware-selected based off address 2.U BitPat(3.U) -> List(30.U, 31.U, 32.U)) ) // hardware-evaluates to List(20.U, 21.U, 22.U) // Note: if given address 0.U, the above would hardware evaluate to List(10.U, 11.U, 12.U) - Source
- Lookup.scala
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ListLookup.type
Members list
In this article