Я пытался сгенерировать verilog для приведенной ниже программы, но она выдает AssertionError. Является ли соответствующий оператор verilog развернутым «io.opcode: = io.a + io.b» 5 раз? было бы очень полезно, если бы кто-нибудь мог рассказать, как работает цикл for.
val io = new Bundle {
val a = UInt(INPUT, 2)
val b = UInt(INPUT, 2)
val opcode = UInt(INPUT, 2)
val output = UInt(OUTPUT, 2)
}
for(j <- 0 to 4){
io.opcode := io.a + io.b
}
io.output := io.opcode