我正在使用 Chisel 和 blackbox 对 verilog 寄存器文件运行我的 chisel 逻辑。寄存器文件没有复位信号,所以我希望寄存器被随机初始化。
我通过了--x-initial unique
验证器,基本上这就是我启动测试的方式:
private val backendName = "verilator"
"NOCDMA" should s" do blkwrite and blkread correctly (with $backendName)" in {
Driver.execute(Array("--fint-write-vcd","--backend-name",s"$backendName",
"--more-vcs-flags","--trace-depth 1 --x-initial unique"),
()=>new DMANetworkWithMem(memAddrWidth,memDataWidth)(nocDataWidth)(nNodesX,nNodesY)){
c => new DMANetworkRWTest(c)
}
}
但是在我写任何东西之前,我从寄存器文件中读取的数据都是零。
我写入后读取的数据是正确的。
那么,凿子里面有什么需要我调整的还是我没有正确地做所有事情?
有什么建议么?