具有两个以上输入的多路复用器的 Chisel 函数

标签 chisel multiplexing

我可以在 chisel 中使用哪个单一函数来表示具有两个以上输入(选择)的多路复用器?

MuxLookup()?

最佳答案

您可以级联 2-input Muxes,通过 when/elsewhen/otherwise 的层次结构来描述行为code> 语句,或者使用 MuxCase 来描述一个 n-way Mux

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

MuxLookup 意味着比较器(除了多路复用器之外)将信号值与多个值相匹配。

此处提供了对不同凿子 MUX 构造的很好描述: https://www.chisel-lang.org/chisel3/docs/explanations/muxes-and-input-selection.html

关于具有两个以上输入的多路复用器的 Chisel 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67198423/

相关文章:

scala - 为什么 chisel UInt(32.W) 不能取 bit[32] 恰好为 1 的无符号数?

python - 复用地址和数据在并口上显示字符串

chisel - 如何交换寄存器的某些位

chisel - 使用 Cat 运算符(operator)维护 FIRRTL 上的连接顺序

scala - 使用 UInt 在 Seq 中获取项目

http2 - 为什么 HTTP/2 多路复用虽然 tcp 做同样的事情?

dictionary - FFMPEG 多路复用视频和音频(来自另一个视频) - 映射问题

java - 使用 Apache Thrift 的服务多路复用

scala - 有什么方法可以使用凿子从 verilog 文本内容生成黑盒吗? (在scala中根据文本内容定义val)