-
Notifications
You must be signed in to change notification settings - Fork 67
Open
Description
I see in Gtkwave reset signal active after 160 fs. But could not find where in the code reset active after 160 fs.
Config.sim.compile(MyTopLevel()).doSim { dut =>
// Fork a process to generate the reset and the clock on the dut
val period = 10
dut.clockDomain.forkStimulus(period)
SimTimeout(1000 * period)
var modelState = 0
for (idx <- 0 to 99) {
// Drive the dut inputs with random values
dut.io.cond0.randomize()
dut.io.cond1.randomize()
dut.io.state.simPublic()
dut.io.flag.simPublic()
// Wait a rising edge on the clock
dut.clockDomain.waitRisingEdge()
// Check that the dut values match with the reference model ones
val modelFlag = modelState == 0 || dut.io.cond1.toBoolean
assert(dut.io.state.toInt == modelState)
assert(dut.io.flag.toBoolean == modelFlag)
// Update the reference model value
if (dut.io.cond0.toBoolean) {
modelState = (modelState + 1) & 0xff
}
}
}
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels