Chisel 2 - BlackBox的测试线束 - 如何在模拟器中集成Verilog?

时间:2017-10-18 16:43:34

标签: riscv chisel

我们正在尝试在Chisel 2中使用Chisel BlackBox构造。除非我们尝试测试行为,否则一切正常。

Chisel2中Blackboxing的问题是使用C后端进行模拟。

在Chisel3中,我们可以将Chisel指向Verilog源,它有Verilator生成C ++代码并自动集成。在Chisel2中,它没有使用Verilator。相反,它直接从Chisel代码生成C ++。所以Chisel 2并没有为BlackBox中的Verilog生成C ++行为。

我们尝试的是手动使用Verilator从Verilog代码生成C ++。但我们还没有弄清楚如何将C ++与Chisel 2生成的C ++集成在一起。问题是每次我们调用sbt时它都会重新生成c ++代码,因此所有手动修改都会丢失。

我们还研究了将c ++代码移植到Scala中,但看起来我们必须通过JNI(Java Native Interface)移植我们的verilog RTL的c ++模型才能运行模拟。

有没有人有可行的解决方案将Chisel 2生成的C ++代码与Chisel Black Box内部的verilog生成的C ++代码集成?

0 个答案:

没有答案