环境配置和工具链
yosys安装和简单使用
已有:
alu.v alu_tb.v wave wave.vcd
第一步,在 Yosys 中读取 Verilog 文件。
read_verilog alu.v
第二步,使用后面的命令,检查模块例化结构。hierarchy -check
hierarchy -check
接着是第三步,执行下一条命令,来完成高层次的逻辑综合。
proc; opt; opt; fsm; memory; opt
到了第四步,我们就可以用 write_verilog 生成网表文件。
write_verilog alu_synth.v
之后,我们再用下方的命令,输出综合后的逻辑图。
show -format dot -prefix ./alu
将.dot转换成.PNG图片方便查看
dot -Tpng alu.dot -o alu.png
进一步使用看官网https://yosyshq.net/yosys
环境搭建
12|QEMU:支持RISC-V的QEMU如何构建? (geekbang.org)
13|小试牛刀:跑通RISC-V平台的Hello World程序 (geekbang.org)
问题
-
缺少工具链
AS src/miniCPU_sim.asm build/miniCPU_sim.o make: riscv32-unknown-elf-as: 没有那个文件或目录 make: *** [Makefile:29:build/miniCPU_sim.o] 错误 127
【问题解决】Error: Can‘t find compiler riscv32-unknown-elf-gcc-CSDN博客
有个问题, 之前不是安装过了RISCV64的吗?二者不兼容是吗:
riscv64-unknown-elf-gcc -v
为什么不行呢?
两种架构的工具链是不兼容的,因为它们对于不同的指令集和寄存器规范进行了优化?
但是很多内容都是拿64bit的工具链来构建32的相关应用的呀?难道是编译的相关标志?-march?太久远了,不看了。
-
yosys安装 缺少tcl头文件
[ 5%] Building kernel/json.o In file included from kernel/register.cc:20: ./kernel/yosys.h:81:12: fatal error: 'tcl.h' file not found # include <tcl.h> ^~~~~~~ In file included from kernel/rtlil.cc:20: ./kernel/yosys.h:81:12: fatal error: 'tcl.h' file not found # include <tcl.h> ^~~~~~~ In file included from kernel/driver.cc:20: ./kernel/yosys.h:81:12: fatal error: 'tcl.h' file not found # include <tcl.h> ^~~~~~~ In file included from In file included from kernel/log.cc:20: ./kernel/yosys.h:81:12: fatal error: 'tcl.h' file not found # include <tcl.h> ^~~~~~~ kernel/calc.cc:24: ./kernel/yosys.h:81:12: fatal error: 'tcl.h' file not found # include <tcl.h> ^~~~~~~
make - Error: tcl.h not found (no such file or directory) - Ask Ubuntu