使用Chisel进行正式验证

时间:2018-03-16 12:28:32

标签: hdl chisel formal-verification

是否可以使用Chisel3 HDL语言进行形式验证? 如果是,是否有开源软件可以做到这一点? 我知道我们可以用Yosys进行verilog形式验证,但用凿子吗?

3 个答案:

答案 0 :(得分:1)

SpaceCowboy问了同样的问题here。而jkoening回应了它:不知道但也许它会完成。

答案 1 :(得分:1)

可以将Yosys-smtbmc与here中所述的一些小技巧一起使用,以在生成的Verilog中“注入”正式属性。

答案 2 :(得分:0)

现在有一个名为chisel-formal的凿子包装。

import chisel3.formal._

这扩展了具有正式特性的模块。

class MyModule extends Module with Formal {
//...
      past(io.Mwrite, 1) (pMwrite => {
        when(io.Mwrite === true.B) {
          assert(pMwrite === false.B)
        }
      })
      cover(countreg === 10.U)
//...
}

允许使用assert(),假定(),cover(),past()等函数。

github repository上提供了完整的指导。