欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

創(chuàng)建UVM Testcase的步驟

芯片驗(yàn)證工程師 ? 來源:芯片驗(yàn)證工程師 ? 2023-06-15 09:41 ? 次閱讀

在UVM中,Testcase是一個(gè)類,它封裝了測(cè)試用例開發(fā)者編寫的特定激勵(lì)序列。

創(chuàng)建Base Test

下面首先開發(fā)了一個(gè)Base Test。這個(gè)Base Test是所有基于ubus_example_env開發(fā)的測(cè)試用例的一個(gè)起點(diǎn)。

108a8c2e-0ace-11ee-962d-dac502259ad0.png

base test的build_phase()創(chuàng)建了ubus_example_env。任何從ubus_example_base_test派生的Testcase都會(huì)繼承ubus_example_base_test中的所有定義,這意味著如果派生的Testcase調(diào) 用 super.build_phase() , 也會(huì)將構(gòu)建top-levelenvironment。

Base Test基類創(chuàng)建測(cè)試用例

測(cè)試用例編寫者可以從Base Test派生出使用相同驗(yàn)證環(huán)境的測(cè)試用例。top-level environment是由Base Test的build_phase()創(chuàng)建的,派生測(cè)試用例可 以 對(duì)run_phase()做一些 調(diào) 整 ( 例 如,改變環(huán)境中執(zhí)行的 default sequence ) 。下 面 是一 個(gè)繼 承 自u(píng)bus_example_base_test 的簡單測(cè)試用例。

10b0acc4-0ace-11ee-962d-dac502259ad0.png

這個(gè)測(cè) 試 用例改變了由masters[0] agent和slaves[0]agent執(zhí) 行 的default sequence。

通過基類super.build_phase(),將創(chuàng)建驗(yàn)證環(huán)境ubus_example_env0以及它的所有驗(yàn)證子組件。因此,任何會(huì)影響這些驗(yàn)證組件構(gòu)建的配置(比如要?jiǎng)?chuàng)建多少個(gè)masters)都必須在調(diào)用super.build_phase()之前設(shè)置好。

對(duì)于這個(gè)例子,由于sequences要到后面的phase才開始獲取,所以可以在調(diào)用super.build_phase()之后再調(diào)用uvm_config_db::set。

選擇測(cè)試用例

在定義了擴(kuò)展測(cè)試用例后,需要調(diào)用uvm_pkg::run_test()任務(wù)來選擇一個(gè)要執(zhí)行仿真的測(cè)試用例。它的原型是:

task run_test(string test_name="");

UVM支持通過兩種不同的機(jī)制指明要運(yùn)行的測(cè)試用例。

測(cè)試用例(即已經(jīng)向factory注冊(cè)的測(cè)試用例名稱)可以直接傳遞給run_test()任務(wù),也可以通過+UVM_TESTNAME在命令行中聲明。

如果兩種機(jī)制都使用,命令行優(yōu)先。一旦選擇了一個(gè)測(cè)試用例名稱,run_test()任務(wù)就會(huì)調(diào)用factory機(jī)制來創(chuàng)建一個(gè)測(cè)試用例的實(shí)例,實(shí)例名稱為uvm_test_top。最后,run_test()通過執(zhí)行各個(gè)phase來啟動(dòng)測(cè)試。

下面的例子顯示了如何通過仿真器的命令行參數(shù)向run_test()任務(wù)提供類型名為test_read_modify_write的測(cè)試。使用命令行參數(shù)可以避免在調(diào)用run_test()的任務(wù)中hardcode指定testcase名稱。在一個(gè)initial語句中,調(diào)用run_test()如下:

// DUT, interfaces, and all non-UVM code
initial
uvm_pkg::run_test();

使用仿真器命令行選項(xiàng)選擇一個(gè)test_read_modify_write類型的測(cè)試用例,使用以下命令:

% simulator-command other-options +UVM_TESTNAME=test_read_modify_write

如果提供給run_test()的測(cè)試用例名稱不存在,仿真器將立即調(diào)用$fatal報(bào)錯(cuò)退出。如果發(fā)生這種情況,很可能是名字打錯(cuò)了或者是`uvm_component_utils宏沒有被使用注冊(cè)這個(gè)testcase。

通過使用這種方法,只改變+UVM_TESTNAME參數(shù),可以運(yùn)行多個(gè)測(cè)試,而不必重新編譯測(cè)試平臺(tái)。

??


審核編輯:劉清

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

    關(guān)注

    14

    文章

    1019

    瀏覽量

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

    關(guān)注

    0

    文章

    182

    瀏覽量

    19234

原文標(biāo)題:創(chuàng)建UVM Testcase

文章出處:【微信號(hào):芯片驗(yàn)證工程師,微信公眾號(hào):芯片驗(yàn)證工程師】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    數(shù)字IC驗(yàn)證之“構(gòu)成uvm測(cè)試平臺(tái)的主要組件”(4)連載中...

    擴(kuò)展于uvm component。下面的類都是以它為基類擴(kuò)展而來的。  uvm test,對(duì)應(yīng)著testcase測(cè)試案例,驗(yàn)證工程師的測(cè)試案例都是從這個(gè)基類擴(kuò)展而來。  uvm env
    發(fā)表于 01-22 15:33

    UVM代碼如何把testcase與driver分開

    UVM代碼如何把testcase與driver分開
    發(fā)表于 03-11 07:58

    什么是uvm?uvm的特點(diǎn)有哪些呢

    大家好,我是一哥,上章內(nèi)容我們介紹什么是uvmuvm的特點(diǎn)以及uvm為用戶提供了哪些資源?本章內(nèi)容我們來看一看一個(gè)典型的uvm驗(yàn)證平臺(tái)應(yīng)該是什么樣子的,來看一個(gè)典型的
    發(fā)表于 02-14 06:46

    談?wù)?b class='flag-5'>UVM中的uvm_info打印

    , this);  endfunction  m_rh是uvm_report_handler class類型的。在1個(gè)基于uvm_report_object繼承過來的class在new的時(shí)候,會(huì)自動(dòng)創(chuàng)建出m_rh
    發(fā)表于 03-17 16:41

    我的第一個(gè)UVM代碼——Hello world

    run_test調(diào)用了uvm_test派生出來的testcase(hello_world)。 為什么run_test能夠通過字符串\"hello_world\"找到testcase?與宏定義
    發(fā)表于 11-03 10:18

    Modelsim uvm庫編譯及執(zhí)行

    第一句話是設(shè)置uvm環(huán)境變量,指定uvm的dpi位置。 第二句話是創(chuàng)建work工作目錄。 第三句話是編譯源文件,并且通過-L指定幾個(gè)編譯庫。 第三句是執(zhí)行仿真,調(diào)用uvm
    的頭像 發(fā)表于 12-01 11:25 ?3933次閱讀
    Modelsim <b class='flag-5'>uvm</b>庫編譯及執(zhí)行

    allegro與PADS的區(qū)別及創(chuàng)建PCB封裝的步驟

    allegro與PADS的區(qū)別及創(chuàng)建PCB封裝的步驟
    發(fā)表于 03-27 10:56 ?67次下載
    allegro與PADS的區(qū)別及<b class='flag-5'>創(chuàng)建</b>PCB封裝的<b class='flag-5'>步驟</b>

    多負(fù)載電源解決方案的創(chuàng)建步驟

    多負(fù)載電源解決方案的創(chuàng)建步驟
    發(fā)表于 05-28 10:03 ?14次下載

    典型的UVM Testbench架構(gòu)

    UVM類庫提供了通用的代碼功能,如component hierarchy、transaction level model(TLM),configuration database等等,使用戶能夠創(chuàng)建任何類型的Testbench架構(gòu)。
    的頭像 發(fā)表于 05-22 10:14 ?2230次閱讀
    典型的<b class='flag-5'>UVM</b> Testbench架構(gòu)

    UVM學(xué)習(xí)筆記(一)

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

    創(chuàng)建UVM Driver的步驟

    Driver的作用是從sequencer中獲得數(shù)據(jù)項(xiàng),按照接口協(xié)議將數(shù)據(jù)項(xiàng)驅(qū)動(dòng)到總線上。
    的頭像 發(fā)表于 05-30 09:22 ?1090次閱讀
    <b class='flag-5'>創(chuàng)建</b><b class='flag-5'>UVM</b> Driver的<b class='flag-5'>步驟</b>

    創(chuàng)建UVM Driver

    Driver的作用是從sequencer中獲得數(shù)據(jù)項(xiàng),按照接口協(xié)議將數(shù)據(jù)項(xiàng)驅(qū)動(dòng)到總線上。UVM類庫提供了uvm_driver基類,所有的Driver類都應(yīng)該直接或間接地從該類中擴(kuò)展出來。Driver有一個(gè)TLM port,通過它與sequencer進(jìn)行通信。
    的頭像 發(fā)表于 05-30 16:17 ?846次閱讀
    <b class='flag-5'>創(chuàng)建</b><b class='flag-5'>UVM</b> Driver

    UVM中的uvm_do宏簡析

    uvm_do宏及其變體提供了創(chuàng)建、隨機(jī)化和發(fā)送transaction items或者sequence的方法。
    的頭像 發(fā)表于 06-09 09:36 ?5207次閱讀
    <b class='flag-5'>UVM</b>中的<b class='flag-5'>uvm</b>_do宏簡析

    我的第三個(gè)UVM代碼—把testcase與driver分開

    testcase里驅(qū)動(dòng)interface,當(dāng)代碼越來越多,需要考慮把環(huán)境拆分成多個(gè)小的環(huán)境,便于修改和維護(hù)。
    的頭像 發(fā)表于 06-15 10:54 ?704次閱讀
    我的第三個(gè)<b class='flag-5'>UVM</b>代碼—把<b class='flag-5'>testcase</b>與driver分開

    Testcase在芯片驗(yàn)證中的作用

    隨著半導(dǎo)體技術(shù)的快速發(fā)展,集成電路芯片的復(fù)雜度日益增加,芯片設(shè)計(jì)中的驗(yàn)證工作變得越來越重要。驗(yàn)證的目的是確保芯片在各種工況下的功能正確性和性能穩(wěn)定性。在這個(gè)過程中,testcase(測(cè)試用例)扮演著關(guān)鍵角色。本文將簡要介紹 testcase 的基本概念、設(shè)計(jì)方法和在芯片驗(yàn)
    的頭像 發(fā)表于 09-09 09:32 ?1496次閱讀