0
A
回答
1
从Sodor README(https://github.com/ucb-bar/riscv-sodor):
我如何生成的Verilog自己?
您可以通过修改emulator/common/Makefile.include中的Makefile来生成Verilog代码。在CHISEL_ARGS变量中,将“--backend c”更改为“--backend v”。这会将核心的Top.v verilog文件及其临时内存(对应于名为“Top”的凿子模块)转储到CHISEL_ARGS中“--targetDir”指定的位置。
一旦你有了Top.v模块,你将不得不编写你自己的testharness和glue代码来与Top.v交谈。这里的主要困难是您需要通过HTIF链接(“主机 - 目标接口”)将riscv-fesvr链接到Sodor内核。这允许fesvr将二进制文件加载到Sodor内核的暂存器内存中,使内核脱离重置,并在运行时处理任何系统调用,错误条件或测试成功/结束条件时与内核通信。
这基本上涉及将模拟器/ */emulator.cpp移植到Verilog。我建议编写一个与现有C++代码(emulator/common/htif_emulator.cc等)接口的Verilog测试程序。 emulator/common/htif_main.cc显示了一个使用Synopsys的DirectC在Verilog测试工具和现有C++代码之间进行连接的示例存根。
相关问题
- 1. 生成语句:verilog
- 2. 如何为系统verilog生成ctags?
- 3. 在verilog中使用for循环生成
- 4. 生成环路中的Verilog端口
- 5. 在verilog中生成自定义波形
- 6. Verilog代码生成'不关心'迭代
- 7. 如何合成xilinx核心生成器中生成的verilog核心?
- 8. 在Quartus II中生成合成后的verilog模型
- 9. Verilog随机数发生器
- 10. 门级Verilog:有条件的,生成门输入
- 11. 在verilog问题中随机生成相同的数字
- 12. 实例化名称修改verilog下生成块
- 13. 用于生成周期性波形的Verilog代码
- 14. 十六进制值在verilog循环中生成
- 15. 在仿真代码中访问Verilog genvar生成的实例
- 16. 在Verilog中使用一个整数生成块
- 17. 凿:Verilog的生成代码圣马丁和uint
- 18. 多钟生成[Verilog的] [使用的fork-join]
- 19. 错误的Verilog,使用生成语句CSHM筛选编码
- 20. 增加Verilog中的多个Genvars生成语句
- 21. verilog中的“生成”和“endgenerate”附近的语法错误
- 22. 凿子应该生成verilog测试台逻辑吗?
- 23. 系统的Verilog:覆盖的成员系统的Verilog类
- 24. 没有生成为opencv_contrib生成文件
- 25. 内部产生复位的Verilog 2005
- 26. genvar缺少产生“循环”变量:VERILOG
- 27. verilog乘法结果为零?
- 28. 系统verilog/verilog ---事件
- 29. 为jsTree生成树
- 30. 为Netflix生成oauth_signature