国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

UVM高級應用

冬至子 ? 來源:多讀點書 ? 作者:夕文x ? 2023-05-26 14:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

說明:這部分內容比較零散,且很多不好理解,所以這里只能選擇性介紹一些內容。

使用interface代替driver部分功能

方法:

  • 在interface中可以定義任務與函數,也可以使用always語句和initial語句,也可以實例化其他interface??捎闷渥鲆恍┑蛯哟蔚霓D換, 如8b10b轉換、 曼徹斯特編碼等。這些轉換動作是與transaction完全無關的。

好處:

  • 讓driver從底層繁雜的數據處理中解脫出來, 更加專注于處理高層數據
  • 有更多的數據出現在interface中, 這會對調試起到很大的幫助(因為interface中的信號在波形文件中有記錄的)

可變時鐘的三種需求及對應實現方法

  • 在不同測試用例之間時鐘頻率不同, 但是在同一測試用例中保持不變
    • 例如:HDMI協議中會依據圖像分辨率采用不同的時鐘
    • 方法一:將時鐘獨立成一個文件,通過include不同的時鐘實現
    • 方法二:在測試用例中使用config_db的set方法設置一個變量,然后在時鐘實現的地方使用get方法獲取該變量,將其作為時鐘周期。
  • 在同一個測試用例中存在時鐘頻率變換的情況
    • 例如:PLL過渡期前和過渡期后的時鐘是不一樣的
    • 方法一:在測試用例中使用config_db的set方法隨著時間不同為時鐘周期變量設置不同值。
  • 既關心過渡期前后的時鐘, 也關心PLL在過渡期的行為,即要求時鐘變量不止是簡單的可變,而且是正弦變化的。
    • 例如:關心PLL過渡期內時鐘行為,實際工作中時鐘頻率也是存在一定抖動的
    • 方法一:建立一個clk的interface,然后通過config_db將對clk的驅動放在一個時鐘component中,這樣的話,要實現任意對clk的驅動只需要重載這個時鐘component即可。

layer sequence的引入

以太網包、IP包、 UDP包、 TCP包,數據是層層封裝的,為了提高測試用例的可重用性,方法有:

  • 方法一: sequence中調用子sequence ——將與ip相關的代碼寫成一個函數, 而與mac相關的代碼寫成另外一個函數, 將這些基本的函數放在base_sequence中。在新建測試用例時, 從base_sequence派生新的sequence, 并調用之前寫好的函數。---- 感覺更適合并列關系的測試用例
  • 方法二: 使用layer sequence ——一個sequence負責產生ip_transaction, 另外sequence負責產生my_transaction, 前者將產生的ip_transaction交給后者。--- 感覺更適合包含關系的測試用例

layer sequence的示例

圖片

聚合參數的優勢與問題

優勢:

  • 可以將interface也放入此聚合參數類中
  • 使用聚合類減少了config_db::set的使用, 也會大大降低出錯的概率

問題:

  • 本質上是將一些屬于某個uvm_component的變量變成對所有的uvm_component可見
  • 在一定程度上降低了驗證平臺的可重用性

總結:

  • 在參數聚合程度/粒度上需要權衡:更好方便的使用vs代碼可重用性
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • HDMI接口
    +關注

    關注

    1

    文章

    148

    瀏覽量

    35783
  • UVM
    UVM
    +關注

    關注

    0

    文章

    183

    瀏覽量

    20015
  • PLL電路
    +關注

    關注

    0

    文章

    94

    瀏覽量

    7089
  • TCP通信
    +關注

    關注

    0

    文章

    146

    瀏覽量

    4842
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    IC驗證"為什么要學習UVM呢"

    驗證的基本常識,將會散落在各個章節之間。UVM的一些高級功能,如何靈活地使用sequence機制、factory機制等。如何編寫代碼才能保證可重用性??芍赜眯允悄壳癐C界提及最多的幾個詞匯之一,它包含
    發表于 12-01 15:09

    什么是uvm_reg_field?

    uvm_reg_field是什么
    發表于 12-17 06:10

    數字IC驗證之“什么是UVM”“UVM的特點”“UVM提供哪些資源”(2)連載中...

    原文鏈接:https://zhuanlan.zhihu.com/p/345775995大家好,我是一哥,上章內容主要講述兩個內容,芯片驗證以及驗證計劃。那本章我們主要講述的內容有介紹什么是uvm
    發表于 01-21 16:00

    什么是uvm?uvm的特點有哪些呢

    大家好,我是一哥,上章內容我們介紹什么是uvm?uvm的特點以及uvm為用戶提供了哪些資源?本章內容我們來看一看一個典型的uvm驗證平臺應該是什么樣子的,來看一個典型的
    發表于 02-14 06:46

    談談UVM中的uvm_info打印

      uvm_info宏的定義如下:  `define uvm_info(ID,MSG,VERBOSITY) \  begin \  if (uvm_report_enabled(VERBOSITY
    發表于 03-17 16:41

    UVM中seq.start()和default_sequence執行順序

      1. 問題  假如用以下兩種方式啟動sequence,方法1用sequence的start()方法啟動seq1,方法2用UVM的default_sequence機制啟動seq2。那么seq1
    發表于 04-04 17:15

    基于UVM的驗證平臺設計研究

    基于UVM的驗證平臺設計研究_王國軍
    發表于 01-07 19:00 ?4次下載

    Modelsim uvm庫編譯及執行

    第一句話是設置uvm環境變量,指定uvm的dpi位置。 第二句話是創建work工作目錄。 第三句話是編譯源文件,并且通過-L指定幾個編譯庫。 第三句是執行仿真,調用uvmuvm
    的頭像 發表于 12-01 11:25 ?4777次閱讀
    Modelsim <b class='flag-5'>uvm</b>庫編譯及執行

    UVM實戰教材資料分享

    UVM實戰教材資料分享。
    發表于 05-05 15:51 ?18次下載

    什么是UVM environment?

    UVM environment**包含多個可重用的驗證組件,并根據test case的需求進行相應的配置。例如,UVM environment可能具有多個agent(對應不同的interface)、scoreboard、functional coverage collec
    的頭像 發表于 03-21 11:35 ?1840次閱讀
    什么是<b class='flag-5'>UVM</b> environment?

    UVM學習筆記(一)

    driver應該派生自uvm_driver,而uvm_driver派生自uvm_component。
    的頭像 發表于 05-26 14:38 ?2382次閱讀
    <b class='flag-5'>UVM</b>學習筆記(一)

    UVM driver和sequencer的通信

    sequencer生成激勵數據,并將其傳遞給driver執行。UVM類庫提供了uvm_sequencer基類,其參數為request和response數據類型。
    的頭像 發表于 06-07 11:58 ?3188次閱讀
    <b class='flag-5'>UVM</b> driver和sequencer的通信

    UVMuvm_config_db機制背后的大功臣

    本次講一下UVM中的uvm_config_db,在UVM中提供了一個內部數據庫,可以在其中存儲給定名稱下的值,之后可以由其它TB組件去檢索。
    的頭像 發表于 06-20 17:28 ?2314次閱讀

    UVMuvm_config_db機制背后的大功臣

    本次講一下UVM中的uvm_config_db,在UVM中提供了一個內部數據庫,可以在其中存儲給定名稱下的值,之后可以由其它TB組件去檢索。
    的頭像 發表于 06-29 16:57 ?2897次閱讀

    一文詳解UVM設計模式

    本篇是對UVM設計模式 ( 二 ) 參數化類、靜態變量/方法/類、單例模式、UVM_ROOT、工廠模式、UVM_FACTORY[1]中單例模式的補充,分析靜態類的使用,UVM中資源池的
    的頭像 發表于 08-06 10:38 ?4624次閱讀
    一文詳解<b class='flag-5'>UVM</b>設計模式