一直以来我都有在rtl目录下快速编译代码、打开verdi查看互连结构以及进行lint检查的需求,因此这次所做的事就是将这三个操作集成在一个环境中。这个环境参考了许多之前的文章以及他人的经验,在行文过程中会列举。
环境下载参考【芯片前端】可能是定向验证的巅峰之作——auto_testbench,之后的脚本工具我会尽可能的融进这个公共环境中。
在下载的环境中,已经对脚本shutcut_proc进行了快捷键配置:
- alias cmp "${PROJ_ROOT}/script/shutcut_proc -c"
- alias vd "${PROJ_ROOT}/script/shutcut_proc -v"
- alias sg "${PROJ_ROOT}/script/shutcut_proc -s"
对应的,-c即对rtl进行vcs编译,-v对rtl进行verdi读取打开,-s对rtl进行spyglass lint检查。
脚本还是基于_sim.lst来进行读取和选择,也就是说在执行时当前目录下必须有_sim.lst,当然了这个关键词也可以进入脚本中去修改。我的习惯是在rtl目录下创建三个list:_rtl.lst/_sim.lst/_syn.lst,分别为纯rtl list,用于仿真的list和用于综合的list。
在_sim.lst的目录下键入cmp:
[xiaotu@xiaotu-eda ~/my_work/uvm_de