(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即可看到每個實例的語句覆蓋情況。