前一段時(shí)間IC君比較忙,沒(méi)有更新文章,最近稍微閑下來(lái)點(diǎn),繼續(xù)更新Verdi相關(guān)的文章。
Verdi提供了很強(qiáng)大的搜索查找功能,充分利用好這些功能在IC設(shè)計(jì)/驗(yàn)證過(guò)程中可以大大提高debug效率。 下面我們就結(jié)合實(shí)際應(yīng)用來(lái)介紹一下Verdi中常用的搜索查找功能以及一些使用技巧。
1 層次瀏覽器窗格中尋找實(shí)例(instance)
在利用 Verdi debug時(shí),首先需要找到我們負(fù)責(zé)模塊的實(shí)例(instance),再選擇相應(yīng)的信號(hào)來(lái)觀察它們的行為來(lái)debug。 當(dāng)設(shè)計(jì)很龐大時(shí),要找到底層的一個(gè)小模塊,如果用鼠標(biāo)從top一層一層的往下點(diǎn),效率會(huì)比較低; 又或者我們只負(fù)責(zé)了一個(gè)小模塊,對(duì)整個(gè)設(shè)計(jì)的層級(jí)關(guān)系并不清楚的時(shí)候,找到我們的底層設(shè)計(jì)會(huì)變得非常困難。
這時(shí),只要我們知道底層模塊的實(shí)例名,就可以利用Verdi的“Show Navigation Text Field”功能快速查找了。 操作方法如下圖,
a) 在Verdi的層次瀏覽器窗格(Verdi界面的左部)點(diǎn)右鍵,彈出菜單里選“Show Navigation Text Field”或快捷鍵“Ctrl+S”
b) 在輸入對(duì)話(huà)框里輸入相應(yīng)的實(shí)例名,再點(diǎn)右邊的搜索按鈕就可以了。
2. 搜索源代碼
源代碼窗格里提供了三種搜索指令,功能各不相同,用來(lái)應(yīng)付不同的使用場(chǎng)景。
1) 查找范圍
Find scope適用于整個(gè)chip里面的查找。 前面提到的應(yīng)用場(chǎng)景——尋找底層模塊,find scope 也可以很輕松的辦到,如下:
A) 來(lái)源 – >查找范圍
B) 在彈出對(duì)話(huà)框里Scope Type選module
Filter內(nèi)填要找module關(guān)鍵字
Instance list 里面選擇一個(gè),點(diǎn)Go To,source code就會(huì)打開(kāi)該module
另外,對(duì)話(huà)框最下面列出了整個(gè)設(shè)計(jì)中找到的個(gè)數(shù),可以知道該module被instance次數(shù)。
2) 查找信號(hào)/實(shí)例/輸入端口
這個(gè)指令可以查找指定模塊內(nèi)的信號(hào)、實(shí)例或輸入輸出端口。 這個(gè)指令的好處是可以把要查找的內(nèi)容都列出來(lái),想看哪一個(gè)就用鼠標(biāo)點(diǎn)一下,就會(huì)切換到源代碼窗格對(duì)應(yīng)位置。 當(dāng)模塊內(nèi)要查找的signal(instance or input/output port)比較多時(shí),可以快速的找到想看的signal。
操作方法如下:
源 –> 查找信號(hào)/實(shí)例/輸入端口
選擇要查找的類(lèi)型:signal, instance or instport
輸入框里面輸入信號(hào)名,點(diǎn)Find 按鈕,下面會(huì)列出所有找到的信號(hào)
點(diǎn)擊某個(gè)信號(hào),就會(huì)到達(dá)source code 里面對(duì)應(yīng)的信號(hào)
3)查找字符串
Find string應(yīng)該是debug 過(guò)程中使用頻率最高的查找指令了。 只要在輸入框里面輸入部分或全部要查找的字符串,再點(diǎn)一下find
按鈕就可以了。
這個(gè)指令可以在當(dāng)前文檔(current File)或者全部文檔(All file)里面查找,因?yàn)樽址檎移ヅ涞帽容^多,要根據(jù)需要選擇在當(dāng)前文檔或全部文檔查找,以提高查找效率。
因?yàn)槭褂妙l率高,Verdi也很貼心的在默認(rèn)工具欄里放置了Find string的輸入窗口,如下:
輸入欄輸入字符串有幾種方法
(1)手動(dòng)輸入,好處是可以只輸入部分字符,不用全部輸入信號(hào)名
(2)點(diǎn)擊信號(hào),按中鍵拖入輸入欄,然后點(diǎn)向上或向下查找,找同名信號(hào)
(3)點(diǎn)擊信號(hào),按快捷鍵”Ctrl+F”,信號(hào)名就會(huì)自動(dòng)輸入到輸入欄。 這個(gè)快捷鍵很好用,大家要善加利用哦。
3. nWave里面的信號(hào)追溯源代碼
Debug過(guò)程中,往nWave 里添加信號(hào)后,查看了信號(hào)波形,如果看到異常往往要回頭看一下源代碼。 如果一時(shí)找不到了,find string當(dāng)然可以找得到,但是需要輸入一串字符,可能就不那么樂(lè)意了。
其實(shí)Verdi很貼心,可以直接把nwave里面的波形拖到nTrace里面,可以快速的找到要找的信號(hào)。
操作方法:nWave里面選擇信號(hào),如out_den
按住中鍵,直接拖到source code plane,
然后放開(kāi),就會(huì)顯示你要找的信號(hào)了
上述內(nèi)容介紹了Verdi常用的幾種搜索查找功能和技巧。 希望對(duì)大家有幫助,debug效率更上一個(gè)檔次。 如果你有什么好想法,也歡迎留言一起討論。
-
IC設(shè)計(jì)
+關(guān)注
關(guān)注
37文章
1291瀏覽量
103768 -
瀏覽器
+關(guān)注
關(guān)注
1文章
1016瀏覽量
35276 -
源代碼
+關(guān)注
關(guān)注
96文章
2944瀏覽量
66668 -
Verdi
+關(guān)注
關(guān)注
0文章
22瀏覽量
8761 -
DEBUG
+關(guān)注
關(guān)注
3文章
90瀏覽量
19886
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論