我有一个表格,表格的每一行都包含状态(寄存器)。存在选择一个特定行的逻辑。只有一行接收“选择”信号。然后访问该选定行的状态。要么状态的一部分作为输出连接到模块的 IO,要么将 IO 的一部分用作更新状态的输入。
如果我用电路实现这个,我会使用通道门。选定的信号将打开一组传输门,它将行的寄存器连接到总线。然后将总线连接到 IO 包。这是快速、小面积和低能量的。
在 Chisel 中有一种直接的实现方式。它将所选行编码为二进制数,然后将该数字应用于传统多路复用器的选择输入。不幸的是,对于具有 20 到 50 行和数百位状态的表,这种实现可能非常缓慢,并且在面积和能源上都是浪费的。
这个问题有两个部分:1)有没有办法在 Chisel 中指定公共汽车,这样你就有通关门或传统的三州司机都挂在公共汽车上?
2)如果做不到这一点,在 Chisel 中是否有一种快速、小面积、低能耗的方法?
谢谢