vcs與verdi單步調試, vcs ucli調試hang【IMP】


資料來源

(1) VCS與verdi聯合進行單步調試 | 駿的世界 (lujun.org.cn)

(2) 當simulation hang住的時候該怎么辦? (qq.com)

(3) https://blog.csdn.net/gsjthxy/article/details/107207452

注1:(1)中的單步調試不是很適合debug hang case; (2)中的方法,試用了一下,首先tcl腳本存在一些語法問題,需要注意空格的必要性;其次,改掉語法錯誤后,調用函數沒有效果;(3)和(2)原理上一樣,具體實現不同;

1.VCS與verdi聯合進行單步調試

注:資料(1)中的示例可以把testbench中的一些變量拖到波形中觀察!!!

(1) 編譯: 在VCS編譯的時候,要額外加上 -debug_access+all -kdb -lca 這個三個選項參數。這樣,之后生成的simv,才能支持單步調試功能。

即 vcs  -debug_access+all -kdb -lca

(2) 編譯示例: makefile的vcs目標,對代碼進行編譯,生成simv。

(3) 仿真: 生成simv后,要增加一個選項,-gui=verdi,表示使用verdi這個工具進行單步調試。

(4) 仿真示例: makefile的sim目標,代碼仿真,進行單步調試。

(5) gui界面:執行 make vcs; make sim 后,會彈出verdi界面,並且停在0時刻。此時打開波形,時刻停在0時刻,信號還沒有產生波形。

(5.1) 在關心的代碼處設置斷點。

(5.2) 在交互式窗口,輸入run,或者快捷鍵F5,或者菜單欄Simulation->Run/Continue。運行仿真。

(5.3) 仿真會在斷點處停下來。

(5.4) 在交互式窗口輸入next,或者快捷鍵F10,或者菜單欄 Simulation->Step/Next->Next。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM