scoreboard
主要用於比較
reference model
與dut
輸出是否一致,並給出比較結果。
乙個簡單的
scoreboard
如下:
6~7行分別定義了兩個埠,乙個事
exp_port
,用於從
reference model的ap
獲得期望的資料;
另外乙個埠是
act_export
,用於從
monitor的ap
獲得實際
dut的輸出資料。
main_phase
中使用fork
開啟了兩個程序,其中乙個用於從
reference model
中獲得資料,另乙個用於從
monitor
中獲得資料。一般來說,同樣一組資料,經過
dut處理後會存在延遲,但是在
reference model
中部會(除非刻意這麼做)。 從
scoreboard
的角度看,
reference model
中的資料總是先到達,所以在
33行中把
reference model
的資料先放入乙個佇列中。
由於dut的輸出後到達,所以當
36行接收到
dut的輸出後,先檢視佇列中是否有記錄,如果沒有記錄,則說明
reference model
沒有資料輸出,而
dut輸出了,這是不期望的結果,
52行給出錯誤資訊。如果佇列中有記錄,則從
38行從佇列中彈出第乙個資料,並把此資料與
dut的輸出比較,這裡比較用到了
compare
函式,這裡之所以可以用這個函式比較,是因為在定義
transaction
時使用了一些列的
uvm_field_*
巨集。compare
會逐字段比較
get_actual
和tmp_tran,
如果所有的字段都一樣,那麼返回
1,否則返回0.
★:scoreboard
中一般使用乙個佇列來暫存從
reference model
中得到的期望資料。
《UVM實戰》 2 1節驗證平台的組成
第2章 乙個簡單的uvm驗證平台 2.1 驗證平台的組成 驗證用於找出dut中的bug,這個過程通常是把dut放入乙個驗證平台中來實現的。乙個驗證平台要實現如下基本功能 驗證平台要模擬dut的各種真實使用情況,這意味著要給dut施加各種激勵,有正常的激勵,也有異常的激勵 有這種模式的激勵,也有那種模...
UVM驗證培訓 factory 實用的UVM機制
路科驗證官網 路科驗證 專注於數字晶元驗證的系統思想和前沿工程領域 eetop路科首頁 eetop 路科驗證 ic驗證培訓 csdn路科首頁 csdn 路科驗證 ic驗證培訓 uvm鼓勵工程師建立模組化 可復用的測試平台。uvm通過tlm介面,把乙個元件及其他與之相連的元件隔離開來,以此實現模組化。...
移動平台中的模組復用
在 復用 這一角度,無疑android是最棒的,至少到目前尚無平台可以出其右。當然,我相信android的思想也不是一蹴而就的,也是借鑑並發展了前人的思想。我們慢慢看來 1.首先,在windows等pc平台上,最常見的復用的粒度 是基於 程序 的復用,程序的邊界是很清晰的。客戶可以顯示的復用其他的程...