Chisel3:如何在RawModule中创建没有复位信号的寄存器?

时间:2019-03-17 17:36:37

标签: chisel

我想在withClock的帮助下在RawModule中创建RegNext。但是,当错误信息显示缺少隐式重置时,它将无法工作。所以我必须这样写:

class Test extends RawModule {
  ...
  val nothing = Wire(Bool())
  nothing := DontCare
  val a = withClockAndReset(io.ui_clk, nothing) {
    RegNext(~io.in)
  }
  ...
}

有更好的解决方案吗?

1 个答案:

答案 0 :(得分:2)

您可以使用来将其缩短一点

withClockAndReset(io.ui_clk, false.B)

但是我不知道是否有其他方法可以做到。 withClock在内部使用withClockAndReset,这就是错误的原因。也许其他人有更好的答案。