UVM:7.3.4 UVM中后门访问操作的实现:DPI+VPI
生活随笔
收集整理的這篇文章主要介紹了
UVM:7.3.4 UVM中后门访问操作的实现:DPI+VPI
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.實際平臺中,C/C++對DUT中的寄存器也要讀寫。verilog 提供VPI,常用的有兩個:
2.這樣很麻煩,systemverilog 提供了DPI,讀為例,在C/C++中定義如下一個函數:
3.systemverilog 使用如下方式將C/C++定義的函數導入:
1)之后可以在systemverilog 中像普通函數一樣調用uvm_hdl_read,比vpi 簡練許多。
4.整個過程:
1)要操作的寄存器路徑被抽象成一個字符串,不再是一個絕對路徑:
2)路徑變成字符串,可以存儲,為建立寄存器模型提供可能。
5.UVM使用DPI+VPI 后門的大體流程是:
1)建立寄存器模型時將路徑參數設置好。
2)后門寫操作時,寄存器模型調用uvm_hdl_deposit函數:
在C/C++側,此函數內部會調用vpi_put_value 對DUT 中的寄存器進行寫操作。
3)后門讀操作時,調用uvm_hdl_read,->vpi_get_value,并將讀取值返回。
總結
以上是生活随笔為你收集整理的UVM:7.3.4 UVM中后门访问操作的实现:DPI+VPI的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 读取word 表格,实战 |
- 下一篇: python做桌面软件 代码隐藏_桌面杂