天天看點

《UVM實戰》——2.1節驗證平台的組成

本節書摘來自華章社群《uvm實戰》一書中的第2章,第2.1節驗證平台的組成,作者 張 強,更多章節内容可以通路雲栖社群“華章社群”公衆号檢視

第2章

一個簡單的uvm驗證平台

2.1 驗證平台的組成

驗證用于找出dut中的bug,這個過程通常是把dut放入一個驗證平台中來實作的。一個驗證平台要實作如下基本功能:

驗證平台要模拟dut的各種真實使用情況,這意味着要給dut施加各種激勵,有正常的激勵,也有異常的激勵;有這種模式的激勵,也有那種模式的激勵。激勵的功能是由driver來實作的。

驗證平台要能夠根據dut的輸出來判斷dut的行為是否與預期相符合,完成這個功能的是記分闆(scoreboard,也被稱為checker,本書統一以scoreboard來稱呼)。既然是判斷,那麼牽扯到兩個方面:一是判斷什麼,需要把什麼拿來判斷,這裡很明顯是dut的輸出;二是判斷的标準是什麼。

驗證平台要收集dut的輸出并把它們傳遞給scoreboard,完成這個功能的是monitor。

驗證平台要能夠給出預期結果。在記分闆中提到了判斷的标準,判斷的标準通常就是預期。假設dut是一個加法器,那麼當在它的加數和被加數中分别輸入1,即輸入1+1時,期望dut輸出2。當dut在計算1+1的結果時,驗證平台也必須相應完成同樣的過程,也計算一次1+1。在驗證平台中,完成這個過程的是參考模型(reference model)。

一個簡單的驗證平台框圖如圖2-1所示。在uvm中,引入了agent和sequence的概念,是以uvm中驗證平台的典型框圖如圖2-2所示。

從下一節開始,将從隻有一個driver的最簡單的驗證平台開始,一步一步搭建如圖2-2所示的驗證平台。

《UVM實戰》——2.1節驗證平台的組成
《UVM實戰》——2.1節驗證平台的組成