3

What single function can I use in chisel to represent a multiplexer with more than two inputs (choices)?

MuxLookup()?

blackgreen
  • 34,072
  • 23
  • 111
  • 129

1 Answers1

3

You can cascade 2-input Muxes, describe the behavior through a hierarchy of when/elsewhen/otherwise statements, or use MuxCase to describe an n-way Mux

result := MuxCase(defaultValue, Array(sel0 -> value0, sel1 -> value1, ...))

MuxLookup implies comparators (in addition to the multiplexers) to match the value of a signal to a number of values.

A good description of different chisel Mux constructs is available here: https://www.chisel-lang.org/chisel3/docs/explanations/muxes-and-input-selection.html

ɹɐʎɯɐʞ
  • 542
  • 5
  • 15