(1)配置环境
安装modelsim和vivado。点击vivado菜单栏中的tools,在下拉选项中选择compile simulation libraries。simulator选项选择:modelsim simulator。compile library location表示编译库存放的路径。simulator executable path:表示modelsim安装路径,即modelsim.exe所在的路径。如下所示:
根据计算机配置,编译时间大概在10分钟左右。
(2)配置vivado环境
这一步将vivado与modelsim联合起来。点击vivado菜单栏中的tools,在下拉菜单中选择setting,target simulator选择modelsim simulator ,compile library location选择刚才编译路的路径。再点击apply,最后点击ok。
(3)在vivado中开始仿真
在vivado中建立工程后,创建源文件以及tb文件,点击simulation—>run behavior simulation。如下图所示:这一步骤将打开modelsim。
(4)在modelsim中设置覆盖率选项
在vivado中点击simulation 后,将自动打开modelsim界面。此时,在modelsim中的library、project、覆盖率coverage界面中都没有内容,这是因为vivado将工程创建在xil_defaultlib默认的库下,在modelsim命令窗口中会看到这条命令:
vsim -voptargs=""+acc"" -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.tb xil_defaultlib.glbl
(4.1)在modelsim中设置覆盖率的编译选项
在modelsim界面中点击compile选项,在下拉菜单中选择compile option,在弹出的界面上点击coverage,在coverage界面中点击需要选择的覆盖率类型,最后点击apply,再点击ok。
将编译选项设置好覆盖率选项后,需要再重新将设计文件编译一次,由于设计文件在vivado工程中,所以在编译的时候需要使用源文件的绝对路径,命令如下:
vlog F:/modelsim_workspace/coverage_single/QD.v +cover=bcesxf
vlog编译编译.v或者.sv文件的命令。
F:/modelsim_workspace/coverage_single/QD.v 表示设计文件所在的路径。
+cover=bcesxf 表示选择覆盖率的类型。
(4.2)设置modelsim 中simulation覆盖率选项
在仿真时,也需要设置仿真覆盖率选项,点击modelsim菜单栏中的simulate选项,点击design optimization选项,点击coverage选项,选择覆盖率类型,点击start immediately选项,最后返回到design界面,手动填写output design name ,可以是任何合法的名字;在design unit中写入vivado编译后tb的名称。
最后在modelsim命令行窗口中敲入仿真命令:xil_defaultlib.tb表示vivado编译后tb所在库的全名。
vsim -gui xil_defaultlib.tb -coverage -novopt
在Modelsim菜单栏中点击view—>coverage—>instance coverage ,即可看到各个模块实例的覆盖率情况,点击view—>coverage—>code coverage analysis即可看到每个实例的语句覆盖情况。