0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

有沒(méi)有辦法像debug RTL代碼一樣將UVM中變量拉到波形上看呢?

冬至子 ? 來(lái)源:處芯積律 ? 作者:處芯積律 ? 2023-06-29 15:14 ? 次閱讀

我們常用的debug UVM的方法是通過(guò)打印log實(shí)現(xiàn)。有沒(méi)有辦法像 debug RTL代碼一樣將 UVM 中變量拉到波形上看呢?答案是有的,下面讓我們看看是怎么做到的。

第一步在UVM compile 的選項(xiàng)里面加入 -debug_access+all

image.png

第二步在 simulation 選項(xiàng)中加入下面三個(gè)選項(xiàng)

-gui=verdi

** +UVM_VERDI_TRACE="UVM_AWARE+RAL+HIER+COMPWAVE"**

+UVM_TR_RECORD

這里 -gui=verdi是啟動(dòng)verdi 和vcs聯(lián)合仿真。+UVM_VERDI_TRACE 這里是記錄 UVM中 register,component 的波形。+UVM_TR_RECORD記錄 transaction的信息

image.png

我們 編譯完之后,然后開始跑仿真。跑仿真的時(shí)候會(huì)跳出下面verdi的界面。

image.png

接下來(lái)點(diǎn)擊綠色的箭頭就可以跑仿真

image.png

跑完仿真之后,我們點(diǎn)擊Verdi 里面 UVM這個(gè)地方,會(huì)出現(xiàn)UVM的環(huán)境。

image.png

下面我們看下 uvm component里面的信息,通過(guò)指定一個(gè) component 然后右擊 add to waveform 就可以看 component的信息。

image.png

Sequence里面的信息怎么看呢?下面點(diǎn)擊sequence view 就可以看 sequnce的信息。

image.png

我們要看sequence里面的一個(gè)變量變化,可以這么做。

先將一個(gè)object或者一個(gè)sequence 添加到watch中。

image.png

從這個(gè)watch中的object或者sequence里面選擇一個(gè)變量到 waveform上。重跑simulation,就可以看到對(duì)應(yīng)添加變量的值值。

image.png

下面是我們?cè)诓ㄐ紊峡吹絪equence里面變量的信息

image.png

看register model里面的值也是類似的做法,找到 register view,然后找到 register model 添加 register 到 waveform里面。

image.png

重跑simulation,就可以看到register值。

image.png

用verdi debug UVM總體感覺(jué)比較麻煩,個(gè)人還是喜歡打印log的方式debug。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 仿真器
    +關(guān)注

    關(guān)注

    14

    文章

    1014

    瀏覽量

    83591
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    385

    瀏覽量

    59665
  • UVM
    UVM
    +關(guān)注

    關(guān)注

    0

    文章

    181

    瀏覽量

    19121
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    IGBT驅(qū)動(dòng)波形負(fù)壓關(guān)斷時(shí)有上升尖峰,請(qǐng)問(wèn)有沒(méi)有辦法可以抑制?

    逆變器,用的個(gè)橋臂IGBT模塊,IGBT驅(qū)動(dòng)波形下管負(fù)壓關(guān)斷時(shí)有上升尖峰,請(qǐng)問(wèn)有沒(méi)有辦法可以抑制?圖中黃色是下管驅(qū)動(dòng)波形,藍(lán)色是管驅(qū)動(dòng)
    發(fā)表于 04-03 11:20

    STC單片機(jī),有沒(méi)有辦法做U盤燒錄程序?

    STC單片機(jī),有沒(méi)有辦法做U盤燒錄程序?就像PLC一樣U盤插上就可以燒錄程序了
    發(fā)表于 10-18 22:26

    體機(jī)改造成普通主機(jī),請(qǐng)問(wèn)有沒(méi)有辦法把它改成普通主板一樣vga視頻輸出?

    `我家里有個(gè)機(jī)型為聯(lián)想c225r的體機(jī),現(xiàn)在想把它改成可以連接顯示器的主機(jī),可是主板集成化太高,只能連接自帶屏幕而且要接兩條線,如圖,不知各位大神有沒(méi)有辦法把它改成普通主板一樣vg
    發(fā)表于 08-04 17:43

    有沒(méi)有辦法讓全局變量產(chǎn)生警告?

    我使用的是全局變量,但是沒(méi)有。我更改了變量的類型,這樣就不會(huì)溢出。在其他文件,我注意到我把它們外部化了。這不會(huì)產(chǎn)生警告或錯(cuò)誤。有沒(méi)有辦法
    發(fā)表于 08-01 08:05

    有沒(méi)有辦法在運(yùn)行時(shí)查看變量?

    我想觀察個(gè)變量的值,而圖片是編程和運(yùn)行的,我假設(shè)沒(méi)有辦法這樣做,但我要求確定。問(wèn)題中的PIC是10LF320,程序員是PICTIT3。謝謝。
    發(fā)表于 10-09 12:14

    TouchGFX示波器有沒(méi)有辦法次刷新多個(gè)數(shù)據(jù)點(diǎn)

    ) 有沒(méi)有辦法加快數(shù)據(jù)輸入到圖表的速度?b) 有沒(méi)有辦法次刷新多個(gè)數(shù)據(jù)點(diǎn),例如 ADC 值數(shù)組?PK編輯:我玩了模擬器,發(fā)現(xiàn)我可以在 handleTickEvent() 事件
    發(fā)表于 12-20 07:36

    有沒(méi)有辦法實(shí)現(xiàn)個(gè)通配符的ButtonWithLabel小部件

    的自定義字符串替換標(biāo)簽,該字符串可以在運(yùn)行時(shí)更改并且不可預(yù)測(cè)(無(wú)法使用資源)。有沒(méi)有辦法實(shí)現(xiàn)個(gè)帶有文本的按鈕,可以通配符一樣隨時(shí)更改?
    發(fā)表于 01-04 09:07

    有沒(méi)有辦法使用HAL庫(kù)來(lái)讀取地址中指定的變量?

    有沒(méi)有辦法使用HAL庫(kù)來(lái)讀取地址中指定的變量?STM32L073內(nèi)置溫度傳感器應(yīng)該如何校準(zhǔn)?
    發(fā)表于 01-05 08:23

    有沒(méi)有辦法通過(guò)NFC重置標(biāo)簽?

    0/0 字節(jié)”,因此它不接受任何訂單。我現(xiàn)在的問(wèn)題是,為什么會(huì)發(fā)生這種情況,有沒(méi)有辦法通過(guò) NFC 重置標(biāo)簽?以前有其他人遇到過(guò)這個(gè)問(wèn)題嗎?
    發(fā)表于 01-16 07:59

    有沒(méi)有辦法個(gè)項(xiàng)目或組項(xiàng)目中的所有代碼文件中進(jìn)行查找/替換?

    有沒(méi)有辦法個(gè)項(xiàng)目或組項(xiàng)目中的所有代碼文件中進(jìn)行查找/替換?即更改項(xiàng)目或所有打開項(xiàng)目中的變量名稱?保羅
    發(fā)表于 01-16 06:20

    有沒(méi)有辦法動(dòng)態(tài)改變FTM的pwm頻率?

    ”,然后是“ FTM_CalculateCounterClkDiv ”來(lái)修改頻率和“ FTM_Init ”。但這是個(gè)非常慢的解決方案,如果我多次修改頻率太快,它就無(wú)法正常工作。有沒(méi)有辦法動(dòng)態(tài)改變
    發(fā)表于 03-21 07:24

    求助,有沒(méi)有辦法從配置工具添加#include 或外部引用到“生成的代碼”?

    移出的數(shù)據(jù)數(shù)組的變量名作為源地址表達(dá)式。生成代碼時(shí),這個(gè)變量名在“peripherals.c”中被引用(正如預(yù)期的那樣),但是由于變量未知而導(dǎo)致編譯失敗。
    發(fā)表于 04-06 07:59

    AT+HTTPCLIENT有沒(méi)有辦法打斷命令?

    )AT HTTP 命令似乎沒(méi)有正確的錯(cuò)誤處理, 也從未觀察到“AT HTTP 錯(cuò)誤代碼”部分描述的錯(cuò)誤代碼有沒(méi)有辦法為 ATHTTP命令
    發(fā)表于 04-24 08:09

    有沒(méi)有辦法保護(hù)ESP代碼?

    有沒(méi)有辦法保護(hù) ESP 代碼? 我最初來(lái)自 PIC 背景,這非常簡(jiǎn)單,只需在固件閃爍時(shí)設(shè)置代碼保護(hù)位,vola 代碼是安全的。我想為客戶
    發(fā)表于 05-08 08:25

    如何用Verdi查看UVM環(huán)境變量

    我們常用的debug UVM的方法是通過(guò)打印log實(shí)現(xiàn)。有沒(méi)有辦法 debug RTL
    的頭像 發(fā)表于 06-25 16:01 ?1595次閱讀
    如何用Verdi查看<b class='flag-5'>UVM</b>環(huán)境<b class='flag-5'>中</b>的<b class='flag-5'>變量</b>?