modelsim脚本
‘壹’ Modelsim SE版本每次调用都需要重新编译库,怎么解决
确认环境变量设置正确并且在modelsim安装目录下modelsim.ini文件中有库映射语句
比如编译一个叫my_lib的库 需要在modelsim.ini添加一句my_lib = {path}/my_lib
{path}就是my_lib所在路径
modelsim.ini需要修改只读属性
然后仿真的时候脚本里面vsim的选项中加载这个库就可以了 比如vsim -L my_lib work.my_sim
‘贰’ 怎么编辑脚本一键启动modelsim仿真,添加有用信号,修改代码和执行仿真
1、首先写一个可执行文件bat
建立txt文档,输入 modelsim -do cmd.do,再改为bat后缀。
2、编写do文件,f文件目录搜索文件(可选择,也可在do文件进行路径指定)
参考步骤如下,modelsim-do文件命令文件编写:
详细参考本文件模板cmd.do文件内容
# 代表注释
## part 1: new lib
vlib ./lib/work 创建文件夹命令
vmap work ./lib/work 在work文件夹里创建了一个名为work的库文件夹
## part 2: load design
方案1)使用compile.f
vlog -sv -f compile.f
compile.f 说明:列出所有文件及目录相对路径
例如
+incdir+ `include文件的搜索目录。
-incdir 在指定目录下搜索include文件
+incdir+../../project/src/
../../project/src/top.v
方案2)
vlog -sv -novopt -incr -work work "../tb/prim_sim.v" 语句1编译文件
vlog -sv -novopt +incdir+../proj/src/define/ -incr -work work "../proj/src/top.v" 语句2编译文件且指定头文件路径
## part 3: sim design
vsim -novopt work.tb 启动仿真命令
## part 4: add signals
## 仿真头文件必需是tb文件名及模块名称
add wave tb_top/* 添加当前文件模块所有信号
add wave -group "top" {sim:/tb/top_tb/*} 添加一个组 所以信号
add wave /tb/u_top/u_rd/error 添加文件的单个信号
## part 5: show ui 图形窗口添加
view wave
view structure
view signals
## part 6: run 运行仿真
run 20000000ps
3、f文件示例
目录文件以及文件目录搜索路径