chisel - 如何使用Chisel C++模拟器

标签 chisel

如何使用Chisel编译器生成的C++文件?文件对此并不清楚,还有其他来源可以指出吗?我对此真的一无所知,特别是我不懂C++。

以简单的加法器电路为例 Adder.scala我将得到以下与模拟器相关的文件: Adder.cpp , Adder.h , Adder-emulator.cpp , emul_api.h , emulator.hsim_api.h 。 我可以通过运行

进行编译
g++ Adder.cpp Adder-emulator.cpp 

这会生成输出 a.out在终端中运行它会生成另外三个文件,我不知道它们是什么。 00003710.cmd , 00003710.in00003710.out .

最佳答案

C++ 代码用于构建您的设计的仿真。您还需要定义一个测试器来驱动仿真,使用 poke() 设置信号值,并使用 peek()expect() > 阅读它们。

您不应该自己编译 C++。如果将 --genHarness--test 选项传递给 Chisel,它将编译 C++ 代码、构建仿真并运行测试器来驱动它。

看看 chisel-tutorial此过程的示例代码。

关于chisel - 如何使用Chisel C++模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39193522/

相关文章:

chisel - 如何在Chisel3中初始化Mem的数据

具有两个以上输入的多路复用器的 Chisel 函数

chisel - 如何将Vec的各个元素相加?

scala - 安装凿子

chisel - 如何在 chisel3.2 中的 bundle 内建议名称?

scala - 使用 MixedVec 在 chisel 中使用动态参数创建 IO 包

scala - 如何使用 chisel3 黑盒实例化 Xilinx 差分时钟缓冲器?

chisel - 如何将零打包到凿子中的捆绑中

chisel - 如何向火箭芯片外设添加 sbus 主控

scala - 如何正确使用 Chisel3.util 中的内置 shiftRegister?