riscv - 在Chisel 3下,编译Rocket Chip的Verilator生成的C++需要10分钟。有什么方法可以加快这个速度吗?

标签 riscv chisel

我们正在修改 Rocket Chip 代码。每次修改后,我们都需要运行汇编程序,以确保一切仍然正确运行。

为此,步骤如下: 1)运行Chisel,生成Verilog 2)通过Verilator运行verilog,生成C++ 3)编译生成的C++ 4)运行测试

第 3 步比 Chisel 2 长约 10 倍。大约需要 10 分钟,这会减慢开发速度。

有什么办法可以加快速度吗?

最佳答案

我发现大量的构建和运行时间花费在用于验证支持的非真正可合成的构造上。

例如,我通过Config选项禁用TLMonitors。您可以在子系统配置中找到示例。

class WithoutTLMonitors extends Config ((site, here, up) => {
  case MonitorsEnabled => false
})

关于riscv - 在Chisel 3下,编译Rocket Chip的Verilator生成的C++需要10分钟。有什么方法可以加快这个速度吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50080546/

相关文章:

riscv - RISC-V ISA输入和输出操作

riscv - RISC-V Rocket-Chip 周期精确的 C++ 模拟器失败并出现 "std::bad_alloc"错误

chisel - 如何在Chisel中使用参数化模块生成Verilog代码?

scala - 如何使用uint进行位提取

compiler-errors - 编译 rv32i 代码包含压缩指令

riscv - 凿子——时钟门控

gcc - Riscv GCC 4.9.2无法编译linux 3.14.29

chisel - 戳或期待矢量端口的最佳方式

scala - 凿子中的 != 和 =/= 有什么区别?

scala - 表达式 _GEN_7 用作 FEMALE 但只能用作 MALE