//來自微信公眾號 「數字晶元實驗室」
提高驗證生產力的關鍵之一是提高驗證的抽象層次。
DUT的實際介面是信號級的,我們有必要在事務級管理大量的驗證任務,例如
產生激勵和收集覆蓋率數據。
UVM提供了一組可用於連接各個組件的事務級通信介面。 TLM介面的使用將驗證環境中的組件相互隔離開來。當RTL被修改時,UVM驗證環境只需要替換事務級介面和DUT信號級介面的轉換。
TLM(transaction-level modeling),事務級建模,是一種用於構建高度抽象組件和模型的建模風格。
在UVM中,事務是一個類對象,uvm_transaction(從uvm_object擴展),
包括建模兩個組件之間通信所需的任何信息。下面是一個簡單的匯流排協議事務級建模:
class simple_trans extends uvm_transaction;
rand data_t data;
rand addr_t addr;
rand enum {WRITE,READ} kind;
constraint c1 { addr < 16』h2000; }
...
endclass
事務對象包括變數,約束以及操作數據的方法。
事務級介面定義了一組使用事務對象的方法。