VCS中的覆蓋率分析介紹

2021-10-06 03:32:53 字數 1964 閱讀 6413

vcs在**過程中,也可以收集coverage metric。其中覆蓋率型別有:

1)code coverage:包括control_flow和value兩部分的coverage,line_coverage, branch_coverage, toggle_coverage, 

fsm_coverage。

2)functional coverage:包括covergroup,sva。

coverage database的產生:包含所有的有關coverage的資訊,預設放在simv.vdb資料夾下。

db中的預設路徑是,snps/coverage/db/testdata/line.verilog.data.xml

fsm/cond/tgl/branch等xml資訊。

在編譯命令中:vcs [cover_options] [compile_options] source.v

[cover_options]可以是:-cm line+cond+tgl+fsm+branch+assert

-cm_dir在compile options中改變simv.vdb資料夾的位置。

-cm_name指定testname。主要改變testname在db中的命名。

在**過程中:simv [cover_options] [run_options]

[cover_options]可以是:-cm line+cond+tgl+fsm+branch+assert

[run_options]指定runtime options。

coverage reports的產生:

使用工具urg(unified report generator)產生html格式檔案。

urg  -dir  dir1 [urg_option] -dbname merge

使用dve的gui介面。

dve -cov -dir

使用verdi的gui介面。

verdi -cov -covdir

verdi -cov -h,列印coverage mode下的幫助資訊

其他的vcs編譯和**中的option:

-cm_hier,在編過程中,指定收集coverage的scope。

-cm_assert_hier,在編譯過程中,只是指定不收集coverage的assert hier。

其中hier的表示,+/- module,+/- tree,+/-assert

-cm_count,在gui和urg report中,顯示次數,比如toggle的次數。

-cm_glitch period,不收集一定範圍的glitch的coverage。simulation option

-cm_start/stop,指定coverage收集的時間,simulation option

coverage group相關的option;

-covg_disable_cg,關閉所有的coverage group的收集

urg生成report中的option:

-dir,指定需要拿到的db的hier,

-dbname,指定輸出的merge db的hier

-elfile,指定exclusive的file,這樣更好計算coverage。

-elfilelist

-noreport,不輸出最終的report,只是merge db

-format text/both,指定report的輸出格式

-matric [line,cond,fsm,tgl,branch,assert]執行計算的coverage型別

-parallel,並行merge

-full64,以64bit的程式進行merge

-plan,-userdata,-userdatafile,-hvp_no_score_missing,指定hvp相關的生成資訊。

覆蓋率選項,覆蓋率分析

covergroup選項提供不同的覆蓋率選項,來計算覆蓋率。乙個covergroup可能會被多個地方例化使用,預設情況下sv會將所有的例項的覆蓋率合併到一起計算。如果需要單獨列出每個covergroup例項的覆蓋率,需要以下設定覆蓋率選項。covergroup cov coverpoint tr.l...

覆蓋率分析

為什麼需要 覆蓋率分析?在發布 的時候,我們常常會對其進行一系列的測試來協調軟體的效能和功能,使他們和預計的相同。但是檢驗通常都是相當的困難,即使程式相當的簡單。開發者常常會借助一些 測試工具 test suite 來模擬或者重建執行指令碼。如果測試程式組是徹底的,那麼程式的各個功能都將被測試到並且...

如何保證測試的覆蓋率

一 首先測試需求分析要全面。測試需求分析分兩步 1 測試需求的獲取 顯式需求 1 原始需求說明書 2 產品規格書 3 軟體需求文件 4 有無繼承性文件 5 經驗庫 6 通用的協議規範 隱式需求 使用者的主觀感受,市場的主流觀點,專業人士的評價分析 2,需求的分析 產生測試需求文件 將不同的需求 劃分...