文章目錄
- 前言
- 一、如何統計代碼覆寫率
- 二、如何檢視代碼覆寫率
- 三、參考文檔
- 總結
前言
在數字RTL驗證過程中,代碼覆寫率是驗證是否收斂的一個重要名額,這裡記錄以下代碼覆寫率相關的内容。
- 統計代碼覆寫率的方法
- 檢視代碼覆寫率的方法
一、如何統計代碼覆寫率
在仿真指令後面加入如下選項,可以用于統計代碼覆寫率:
vcs -cm tgl+line+fsm+cond+branch -cm_hier ./filename
-cm tgl+line+fsm+cond+branch選項,分别開啟代碼的翻轉覆寫率、行覆寫率、狀态機覆寫率、條件覆寫率、分支覆寫率。
-cm_hier選項,用于指定需要統計代碼覆寫率的層次結構。
filename中的格式如下所示:
+tree是關鍵字,top.u_dut是需要被統計的層次結構,0表示自頂向下全部統計。
二、如何檢視代碼覆寫率
可以在makefile中編寫如下函數,實作代碼覆寫率的檢視
coverage:
cd output; \
rm -rf urgReportALL; \
urg -dir ./*/*.vdb -format both -report urgReportALL; \
firefox urgReportALL/tests.html &
-dir 指定代碼覆寫率vdb檔案存放的路徑;
-format 指定生成代碼覆寫檔案的格式,both表示txt和html兩種格式都生成;
-report 指定生成的檔案存放的檔案夾;
三、參考文檔
關于代碼覆寫率更多的介紹,可以參考如下官方文檔:
$VCS_HOME/doc/UserGuide/pdf/cov_ug.pdf —— Coverage Technology User Guide
$VCS_HOME/doc/UserGuide/pdf/cov_ref.pdf —— Coverage Technology Reference Manual
注:如果沒有pdf這個檔案夾,說明工具安裝的時候沒有裝vcs的doc。
總結
這篇文章主要介紹了,在數字前端仿真過程中,常用的代碼覆寫率的統計和檢視方法,更多更詳細的介紹可以檢視vcs官方文檔的介紹。