首先說明幾點:①下面的內容都是群里網友提供的干貨,我只是簡單整理了一下,希望幫助到更多的朋友;②時間倉促,搬磚之余整理的,整理地很凌亂,大家多包涵。
1.?Verdi怎么配置才能顯示二維數組?
? ? ?調試代碼時經常需要查看memory內的數據是否正確,一個一個讀出來檢查又特別麻煩,不做特別設置的話fsdb不會記錄二維數組的值。只需要在頂層加入在tb_top.sv中加入:$fsdbDumpMDA(); 波形窗口tools—memory/MDA就可以看到了。


打開verdi后,常規操作是將鼠標點擊要查看的信號,再使用ctrl+w即可添加該信號波形。但如果想要查看二維數組信號波形,則會出現如下所示的問題。

這是由于在top模塊中沒有設置對二維數組進行記錄,正確的方法是在top模塊中添加如下函數:$fsdbDumpMDA();
但是會發現,即便如此可能還是無法成功地添加二維數組波形,這時將top中的fsdb函數順序按下面方式編輯即可
$fsdbDumpvars(0);$fsdbDumpMDA();
2.句柄或者變量的聲明要早于函數的的調用和賦值。
? ? 句柄或者變量的聲明要放在`uvm_info前面,否則會報下面的錯誤。Line22應該放到line23后面。

比如你用的是arm a7,vcs仿真的時候define CORTEXA7_TARMAC,仿真完成就會吐出來這個文件。
Verdi HW/SW co-debug 簡單使用
4.??vcs可以通過defparam修改parameter.
-pvalue一般在vcs cmd line使用。

5.?為啥一定要49行代碼轉換一下,打印出來的k和a才是0,1,2遞增的;如果沒有49行,50行直接用j,打印出來的j和a都是3,變成靜態變量了。

參考下文和綠皮書P186頁,
硅芯思見:【141】for循環和fork...join_none聯合挖的坑
6.?

找到原因了,wait fork需要放在fork循環外面。
7.?defparam不能放在initial語句塊里面。

8. backdoor讀出的數據是前一拍的數據,

9.?sequence中local的妙用


修改成下文后,xrun編譯通過

10. 多bit數據拼接時,一定要寫完整的位寬


修改成下面的樣子,就符合預期了

11.?在testbench運行過程中,如何干掉sequence
https://zhuanlan.zhihu.com/p/413257343
怎么讓vip的driver在檢測到reset后,殺掉它的進程。
12.?如何在seqence中拿到uvm其他組件的句柄
調用p_sequencer的get_parent函數。

上圖中,為什么要用$cast做類型轉換?參考下面就一目了然了。


13. fopen函數中”w”不能大寫,必須小寫。


14.??如何學習amba總線
學axi/ahb/apb三個層次,第一個層次,自己看文檔然后寫個簡單帶amba口子的ram控制器,第二個層次,參與soc? debug,其實就是把axi/ahb/apb那幾根線拉出來,看明白a-master向b-slave讀或者寫了某個值,哪些axcache/axprot/axqos這些你先不管,需要的時候你自然就明白了,第三個層次,你可以參與ip設計,以axi/ahb/apb作為接口實現amba協議規定的那些特性。如果有做了幾十年設計的大佬,總結總結幾種套路,把特性和對應的rtl貼出來,也還行。一步一步來,千萬不要死扣文檔里面的每一句話。
第一個層次你可以去知乎,公眾號找別人寫的文章先看個一知半解就夠了。
第三個層次嘛,如果有做了幾十年設計的大佬,總結總結幾種套路,把特性和對應的rtl貼出來,也還行
https://github.com/adki/gen_amba_2021這個人有個倉里面有很多ppt講amba的我覺得還不錯,是個韓國人
https://github.com/adki/AMBA_AXI_AHB_APB
15.?如何用 vcs 收集覆蓋率時如何排除一些模塊,只收部分模塊的覆蓋率
VCScoverage off/on 告訴VCS對此段代碼進行仿真,但不統計覆蓋率
還有 -hier的方式,把不想收集的模塊去掉。

16.?華為內部的關于IC驗證的經驗總結
https://maimai.cn/article/detail?fid=1751511497&efid=qkIrLINVSS6fa0Uau1EmLQ
https://maimai.cn/article/detail?fid=1751511553&efid=RJNIqdgvpk0tb326HStR3A
17. 華為夏晶晶的文章
https://zhuanlan.zhihu.com/p/380400849
https://zhuanlan.zhihu.com/p/600264179
18.?夏core的知乎
https://www.zhihu.com/people/xia-jing-jing-57
最后,好好學習,天天向上。轉自微信公眾號《芯片驗證日記》。感謝關注。