91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SystemVerilog和UVM的關系是什么

發布時間:2021-12-17 16:36:04 來源:億速云 閱讀:257 作者:iii 欄目:互聯網科技

本篇內容主要講解“SystemVerilog和UVM的關系是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“SystemVerilog和UVM的關系是什么”吧!

UVM提供了豐富的基類庫和驗證方法學,并且被主流的EDA工具、IP供應商和設計公司采用。現在,使用SystemVerilog基本上等同于使用UVM驗證。

如果你要問我,SystemVerilog和UVM到底是啥關系,我覺得漢字和詩的比喻也許比較恰當。我自然不會說是code language和library的關系,太沒有想象空間。

當天空下雪了,

SystemVerilog+UVM:忽如一夜春風來,千樹萬樹梨花開。

Only UVM:thousands of pear flowers bloom as if spring wind just passed by

Only SystemVerilog:“風景美如畫,吟詩贈天下。奈何沒文化,臥槽雪好大”。

SystemVerilog是一種硬件設計和驗證語言(hardware design and verification language,HDVL),Verilog HDL的升級版。

為了更好地支持驗證環境,SystemVerilog提供了面向對象編程(OOP)的能力受約束隨機激勵斷言功能覆蓋率等特性。

在復雜驗證環境搭建的過程中,僅僅使用SystemVerilog已經無法滿足驗證需求,這時候就需要基類庫(base class libraries)工具包(toolkits)或者說方法學(methodology guidance)的支持,提高驗證平臺搭建效率。

關于驗證平臺需要基于UVM的最主要的原因就是:復用(reuse)

1、  工具之間復用

SystemVerilog和UVM的關系是什么

SystemVerilog語言參考手冊超過1300頁,Cadence、Synopsys和Mentor等主流EDA工具在具體實現時存在差異,但在支持UVM時保持一致,也就是說基于UVM的驗證環境可以在不同EDA工具之間移植。

2、  項目之間復用

基于UVM的驗證環境很容易項目之間復用,同時工程師之間對于驗證環境也容易達成共識。這是僅僅使用SystemVerilog語言無法做到的。

3、  驗證IP的復用

在SoC設計中存在很多標準協議,AMBA、DDR和Ethernet等。UVM還能方便VIP的復用和維護。

4、解決方案的復用

驗證和其他軟件開發一樣,存在幾乎每個項目遇到的問題。UVM提供現成的解決方案實現。

下面介紹UVM中的一些關鍵概念:

1、Components&Data

UVM中的類主要分為兩類:ComponentsData

Components繼承自uvm_component,Data繼承自uvm_sequence_item

uvm_component和uvm_sequence_item都繼承自uvm_object

Components在仿真開始消耗時間之前的0時刻(build_phase)創建。用戶在繼承了Components之后,覆蓋build_phase方法即可。

build_phase這種phase callback是top-down的。可以看出來UVM的Components是一個樹形結構,根節點只有一個uvm_root(singleton object

Data在仿真過程產生的,像數據流一樣流過各個Components。

2、factory機制

使用面向對象編程技術用戶可以很容易地基于基類創建新的驗證組件并且利用OOP的繼承特性以通用方式操作用戶定義的對象。例如,在基本的數據事物類的基礎上進行錯誤注入。

為了充分利用這種OOP在驗證平臺中的靈活性,有必要利用factory機制這個設計模式在驗證過程中實現類的替換。

class user_monitor extends uvm_monitor;`uvm_component_utils(user_monitor)...

3、configure&resourcedatabase

configure可以看成是一個全局可以訪問的,使用字符串名稱進行檢索的數據資源。可以根據數據值配置相應的驗證平臺。

4、TLM connection

對于組件,需要在build_phase自上而下地完成實例化,對于組件之間的連接需要在connect_phase自下而上地完成TLM連接,用于數據流的發送和接收。

到此,相信大家對“SystemVerilog和UVM的關系是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

林州市| 永仁县| 温州市| 简阳市| 横山县| 伊宁县| 壤塘县| 常德市| 汝阳县| 陵川县| 安康市| 瑞金市| 仲巴县| 北辰区| 海丰县| 镇坪县| 河东区| 淮阳县| 西林县| 托克逊县| 阿拉善左旗| 仙居县| 孟津县| 隆安县| 云南省| 伊宁县| 页游| 孟连| 西贡区| 久治县| 桑日县| 渭源县| 武冈市| 荣成市| 阿巴嘎旗| 枣强县| 盐源县| 灌南县| 沁源县| 贵州省| 汽车|