Driver的作用是從sequencer中獲得數(shù)據(jù)項(xiàng),按照接口協(xié)議將數(shù)據(jù)項(xiàng)驅(qū)動到總線上。UVM類庫提供了uvm_driver基類,所有的Driver類都應(yīng)該直接或間接地從該類中擴(kuò)展出來。Driver有一個TLM port,通過它與sequencer進(jìn)行通信。
要創(chuàng)建一個Driver:
- 派生自uvm_driver基類。
- 注冊到factory機(jī)制。
- 從sequencer中獲取下一個數(shù)據(jù)項(xiàng),將數(shù)據(jù)項(xiàng)驅(qū)動到總線上。
- 在Driver中聲明一個virtual interface,配置到連接DUT實(shí)際interface的virtual interface上。
下面例子中的simple_driver定義了一個Driver類。這個例子從uvm driver派 生 出 simple_driver(參數(shù)化為simple_item事務(wù)類型),并使用seq_item_port中的方法與sequencer進(jìn)行通信。simple_driver包括一個構(gòu)造函數(shù),以及使用**`uvm_component_utils宏**在factory中注冊simple_driver類型。


- 第1行 擴(kuò)展出driver。
- 第5行 添加UVM宏,注冊simple_driver類型。
- 第13行 獲取virtual interface配置
- 第22行 調(diào)用get_next_item(),從sequencer中獲取下一個激勵的數(shù)據(jù)項(xiàng)。
- 第25行 向sequencer發(fā)出信號,表示當(dāng)前數(shù)據(jù)項(xiàng)的驅(qū)動已經(jīng)完成。
- 第30行 在這里驅(qū)動virtual interface來完成數(shù)據(jù)項(xiàng)激勵。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報(bào)投訴
-
driver
+關(guān)注
關(guān)注
0文章
527瀏覽量
69321 -
UVM
+關(guān)注
關(guān)注
0文章
183瀏覽量
20108 -
TLM
+關(guān)注
關(guān)注
1文章
46瀏覽量
25443
發(fā)布評論請先 登錄
相關(guān)推薦
熱點(diǎn)推薦
IC驗(yàn)證"一個簡單的UVM驗(yàn)證平臺"是如何搭建的(六)
連載....小編考慮到一個好的連續(xù)劇不能沒有結(jié)尾,所以后期會持續(xù)更新ic驗(yàn)證的UVM相關(guān)內(nèi)容.......今天更新一個最簡單的驗(yàn)證平臺,只有driver的驗(yàn)證平臺.....driver是驗(yàn)證平臺最基本
發(fā)表于 12-04 15:48
IC驗(yàn)證"UVM驗(yàn)證平臺加入factory機(jī)制"(六)
加入factory機(jī)制 上一節(jié)《IC驗(yàn)證"一個簡單的UVM驗(yàn)證平臺"是如何搭建的(五)》給出了一個只有driver、使用UVM搭建的驗(yàn)證平臺。嚴(yán)格來說這根本就不算是UVM驗(yàn)證
發(fā)表于 12-08 12:07
IC驗(yàn)證“UVM驗(yàn)證平臺加入objection機(jī)制和virtual interface機(jī)制“(七)
/my_driver.sv 13 task my_driver::main_phase(uvm_phase phase); 14 phase.raise_objection(this); 15 `
發(fā)表于 12-09 18:28
數(shù)字IC驗(yàn)證之“什么是UVM”“UVM的特點(diǎn)”“UVM提供哪些資源”(2)連載中...
原文鏈接:https://zhuanlan.zhihu.com/p/345775995大家好,我是一哥,上章內(nèi)容主要講述兩個內(nèi)容,芯片驗(yàn)證以及驗(yàn)證計(jì)劃。那本章我們主要講述的內(nèi)容有介紹什么是uvm
發(fā)表于 01-21 16:00
數(shù)字IC驗(yàn)證之“構(gòu)成uvm測試平臺的主要組件”(4)連載中...
?! D示是一個典型的uvm測試平臺的結(jié)構(gòu)圖,構(gòu)成測試平臺的每一個元素稱為組件,既component?! ∠旅鎻牡讓拥礁邔?,就每一個組件來說明它們在測試平臺中所起到了作用?! 〉谝粋€組件是driver
發(fā)表于 01-22 15:33
什么是uvm?uvm的特點(diǎn)有哪些呢
直觀的印象,就是uvm驗(yàn)證平臺,它是分層的結(jié)構(gòu)。圖中的每一個巨型框都代表著平臺的一個構(gòu)成元素。這些元素呢,我們稱為平臺組建,下面來簡單的分析一下。從最底層上來看,agent 中包含了driver,monitor和sequencer,其中
發(fā)表于 02-14 06:46
請問一下在UVM中的UVMsequences是什么意思啊
uvm_object基類擴(kuò)展得到。UVM sequences不是在仿真的開始,而是在仿真的過程中生成并分配內(nèi)存的,也沒有類似uvm_component的層次結(jié)構(gòu)。隨著仿真的進(jìn)行,將創(chuàng)建
發(fā)表于 04-11 16:43
談?wù)?b class='flag-5'>UVM中的uvm_info打印
, this); endfunction m_rh是uvm_report_handler class類型的。在1個基于uvm_report_object繼承過來的class在new的時候,會自動創(chuàng)建出m_rh
發(fā)表于 03-17 16:41
UVM response_handler和get_response機(jī)制
很多UVM用戶平時更多的使用get_response()方式去獲得uvm_driver的response,但get_response有些缺點(diǎn)
創(chuàng)建UVM Driver的步驟
Driver的作用是從sequencer中獲得數(shù)據(jù)項(xiàng),按照接口協(xié)議將數(shù)據(jù)項(xiàng)驅(qū)動到總線上。
UVM driver和sequencer的通信
sequencer生成激勵數(shù)據(jù),并將其傳遞給driver執(zhí)行。UVM類庫提供了uvm_sequencer基類,其參數(shù)為request和response數(shù)據(jù)類型。
創(chuàng)建UVM Driver
評論