上一篇文章IC君跟大家分享了Verdi使用技巧——連續(xù)有效信號量測方法。 有不少網(wǎng)友在文章后留言或者微信給我留言,提供了一些其它方法。 不得不說廣大人民群眾的智慧才是無窮無盡的,大家一起交流才能取得更大的進(jìn)步!
首先補(bǔ)充一下其他網(wǎng)友給我提供的測量連續(xù)有效信號的一些方法。
網(wǎng)格法:
點擊菜單里面的view選項,選擇Grid Options,如下圖所示:
選中選項Grid on 以及選項 Grid Counter with Start Number,如下圖所示,點擊Apply或者OK之后,就可以看到波形里面出現(xiàn)了網(wǎng)格,最下面有數(shù)字出現(xiàn)。 這種方法還有一個好處是鼠標(biāo)左鍵點到CLK信號的任意位置,計數(shù)都是從新的地方開始,具有很強(qiáng)的靈活性。
自動添加計數(shù)器:
右擊CLK信號,選擇Add Counter Signal by,選擇上升沿、下降沿、任意沿中的一個,
就會自動產(chǎn)生一個16進(jìn)制的計數(shù)信號,不過它的計數(shù)起點是從CLK的0時刻開始,不能選擇任意時刻,所以缺乏靈活性。
這兩種方法更推薦第一種網(wǎng)格法,看起來很強(qiáng)大,大家可以繼續(xù)探索探索。
但是實際debug過程中,更常遇到的場景是非連續(xù)有效的信號,如下圖所示:CLK并不是在每個時刻都是有效的,這時我們又該如何比較快速準(zhǔn)確的獲知某個時間段內(nèi)有效信號(CLK)個數(shù)呢?
跟獲取連續(xù)有效信號個數(shù)一樣,如果某個時間段內(nèi)有效信號個數(shù)較少(比如少于10個),直接手動數(shù)就可以了。 當(dāng)有效信號toggle次數(shù)比較多時,肉眼無法快速看出數(shù)量的時候,我們可以利用Verdi nWave里面的Logical operation 和Signal Event report 這兩個功能來實現(xiàn)。
對于非連續(xù)有效數(shù)據(jù)傳輸,通常會有一個信號來標(biāo)志哪筆數(shù)據(jù)是有效的,如上圖中的valid_in信號為1時表示data_in數(shù)據(jù)有效。 利用這個標(biāo)志信號跟時鐘進(jìn)行“與”操作,就得到一個新的時鐘。 這個新的時鐘只有在數(shù)據(jù)有效時才有,在數(shù)據(jù)無效時被遮掉了。 再通過Signal Event report獲知指定時間內(nèi)新的時鐘個數(shù),就可以知道有效數(shù)據(jù)的個數(shù)了。
具體操作步驟如下:
1.鼠標(biāo)選中時鐘信號clk和數(shù)據(jù)有效標(biāo)志信號valid_in;
2.點開nWave 菜單里面的Signal,再選擇下拉菜單里的Logical Operation,如下圖:
3.在彈出的對話框里面,如下圖所示,確認(rèn)Expression 里的信號操作是”&”; 把Name改成valid_in_clk; 然后點擊Create/Modify按鈕;
再回來看波形,如下圖所示,就會發(fā)現(xiàn)多了一個信號valid_in_clk,這個信號就是我們需要的新時鐘信號。
4.接下來就是Signal Event Report閃亮登場了。 選中valid_in_clk, 然后在View下拉菜單里面選Signal Event Report。 如下圖所示,在彈出的對話框里,找到Falling#這一列,里面列的數(shù)字16就是我們指定的時間段內(nèi)有效的數(shù)據(jù)個數(shù)了。
如果還是半信半疑的同學(xué),可以手動數(shù)一數(shù),看看Logical Operation加Signal Event Report這套組合拳的結(jié)果是否正確,哈哈~
用Logical Operation和Signal Event Report來量測非連續(xù)有效信號的方法就介紹到這里了,大家都學(xué)會了嗎?
-
信號
+關(guān)注
關(guān)注
11文章
2794瀏覽量
76880 -
計數(shù)器
+關(guān)注
關(guān)注
32文章
2256瀏覽量
94701 -
Verdi
+關(guān)注
關(guān)注
0文章
22瀏覽量
8791 -
signal
+關(guān)注
關(guān)注
0文章
110瀏覽量
24936 -
時鐘信號
+關(guān)注
關(guān)注
4文章
449瀏覽量
28590
發(fā)布評論請先 登錄
相關(guān)推薦
評論