前言
EDA发展的趋势是自动化,使用脚本自动化仿真可以减少不必要的时间浪费。
流程
在windows下新建批处理脚本bat文件(linux下可用shell脚本或者其他,注意给脚本运行权限即可:chmod +x name.sh);
批处理文件或者脚本中内容只有一句话:
vsim -do sim.do
把bat脚本与写好的do文件放入sim home 目录;仿真的时候点击bat文件即可。
举个栗子,do文件内容:
1.功能仿真:(器件ep4ce6f17c8,器件不同挂载不同的器件库)
#set the sim home dir ;
set sim_home D:/test_study/debounce
#set the src code home dir;
set src_home D:/work/debounce
vlib ${sim_home}/work
vmap work ${sim_home}/work
vlog ${src_home}/debounce.v ${src_home}/debounce_tb.v
vsim -novopt -t 1ns -L altera_ver -L altera_mf_ver -L cycloneive_ver -L sgate_ver -L lpm_ver work.debounce_tb
view wave
add wave *
run @600ns
2.时序仿真:添加布局布线后的网表以及指定标准的延时文件(对比上述代码更改两处即可)
请注释掉网表文件中的initial语句,否则modelsim仿真时候会标注两次延时文件(下图仅仅是栗子,项目不一致):
vlog D:/test_study/test/simulation/modelsim/debounce.vo
vsim -novopt -t ns -L altera_ver -L altera_mf_ver -L cycloneive_ver -L sgate_ver -L lpm_ver -sdftyp /div_tb/div_tb=D:/test_study/test/simulation/modelsim/div_v.sdo
work.debounce_tb
3.do文件指令解释:
vlib 新建work库
vmap 把系统的work库文件映射到新建的work库中
vlog 添加并编译HDL文件
vsim 打开仿真,novopt表示未优化仿真,后边为添加器件库,最后仿真module为debounce_tb
view wave 打开波形窗口
add wave 添加波形
run 运行时间
以上。