天天看點

代碼覆寫率前言一、如何統計代碼覆寫率二、如何檢視代碼覆寫率三、參考文檔總結

文章目錄

  • 前言
  • 一、如何統計代碼覆寫率
  • 二、如何檢視代碼覆寫率
  • 三、參考文檔
  • 總結

前言

在數字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官方文檔的介紹。