關於VCS hvp planner的粗淺理解

2021-10-22 18:41:16 字數 1825 閱讀 4689

筆者剛開始接觸hvp的時候,是用verdi介面建立的,對裡面有很多概念,feature,measure,metric,attribute,annotation一知半解,尤其是metric比較難理解,後來看了user guide之後發現,如果把hvp當成乙個synopsys自定義的一種程式設計(標記)語言就容易理解很多了。

計畫的基本結構:

針對特性1宣告乙個measure2並指明其所測物件的型別

驗證物件的特性2feature2

針對特性2宣告乙個measure4並指明其所測物件的型別

…子計畫1名稱

子計畫2名稱

計畫體結束

逐個內容說明:

先從最難懂的metric開始:我們要驗證乙個電路,目標是確定這個電路是否正確實現了需求,這個需求其實就是所驗物件的特性,那麼假如你根據結果知道設計工程師已經正確實現了,但是如何告訴別人呢? 最直接的做法,就是告訴他,你看我這個coveragegroup是什麼意思,它達到了多少覆蓋率,裡面某個bin是什麼意思,你看我已經測到了,還有這個名字的case是什麼意思,你看這個log說明它已經跑完了。以上這個過程,如何進一步整理出來,等別人問起,甩給他乙個**就可以了,我想這就是hvp的目的。那麼上述過程中的covergroup和什麼名字的case,case pass了幾個,就是所謂的metric。

synopsys 預定義了一些metric,比如line cond fsm toggle branch 分別對應不同的code coverage,group用來對應function coverage, 還有一些其他,可以自己找ug看。

另一種方式就是自己定義metric,自己定義metric時,metric自帶的屬性需要選擇後確定,比如你所定義的metric type是什麼,這個metric的測量結果在最終結果上的統計方式是什麼等。哪些自帶的屬性可配置可以參考ug。需要說明的是自定義的metric是需要定義在feature外面的,全域性可以用。

measure,一般結構就是

measure metric  measure_name

source=「 」,「 」,「 」;

endmeasure

metric已經講過了,measure_name只是對測量的這個動作取個名字,最重要的是source,這個是把乙個抽象的測量型別和驗證環境中真正的實體對應起來,這樣synopsys工具在進行資料反標時就可以找到資料庫中的資料了。source填寫的格式和metric是有關係的,比如metric是個line code coverage的話,source需要是rtl的某個instance或者module,如果metric是乙個function coverage的話,source需要是某個已經定義好的covergroup。

描述乙個電路特性是否被正確實現可能需要很多方面的資料,因此乙個feature下面可以有很多個measure。

另外兩個概念就沒那麼重要了,attribute比較偏向於設定乙個全域性屬性,因為它具有可繼承性,plan頭上寫好之後,其後的feature和measure如果不改寫,就沿用。annotation更像是一些注釋內容,為了看的人容易區分段落(瞎猜的)。synopsys預定義了兩個attribute,乙個是owner乙個是at_least, ug上說at_least的設定會影響反標結果。也預定義了兩個annotation,乙個是weight,乙個是description,其中weight的設定會影響反標結果。 這兩個型別的變數也可以自定義,自定義格式可以參考ug。

特別值得一提的是,自定義的attribute和annotation是可以作為被引用字元放在source的字串中的。

今天寫得比較匆忙,後續再補充。(是我的問題還是網頁的問題,排版好難用啊-.-||||||)

關於程式關於世界

首先,在學了1年多的軟體設計的基礎上,問下自己 程式是什麼?業務需求是什麼?程式有什麼用?什麼是演算法?什麼是資料庫?或許每個人的理解不同,會給出不同的答案。那麼自己的理解 程式是乙個讓計算機工作的流程,在程式寫好之後,計算機就會按照,程式設計師定義好流程在執行。其實很多時候,乙個程式的好壞,在於乙...

關於血液關於軟體

1 自然沉降法 將血袋垂直吊掛於4 2 冰箱內,使紅細胞自然下沉1 3d,或將血袋呈70 80 角立於冰箱,需用時,用一次性分漿器分出血漿,制得濃縮紅細胞。2 洗滌法 一般用生理鹽水反覆洗滌3 6次。經洗滌的紅細胞,除白細胞和血小板減少外,血漿蛋白也極少,紅細胞中殘存的血漿蛋白含量約為原總蛋白的1 ...

關於冷漠,關於愛情

我不知道為什麼今天又莫名其妙開始思考愛情這件事,隨之就解決了我一直無法面對冷漠這件事 被冷漠是我始終無法消化的一件事,每當遇見冷漠時,我總會覺得就像一團火把自己燒得面目全非,但對方卻毫無傷害。但我突然懂了,遇到冷漠時,體面的離開即可 在乎你的人一定會在你離開後,找到你跟你解釋為什麼 連解釋都來不及,...