色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

詳解寄存器模型鏡像值

全棧芯片工程師 ? 來源:全棧芯片工程師 ? 2024-10-23 09:43 ? 次閱讀

什么是reg_model鏡像值?

DUT的配置寄存器的值是實際值,reg_model有鏡像值、期望值的概念。

鏡像值:存放我們認為此時DUT里寄存器的實際值。

期望值:存放我們期望DUT寄存器被賦予的值。

什么是auto predict?

那么怎么更新reg_model里面的鏡像值呢?有三種方式更新reg_model里面的鏡像值。

方式1:reg_model調用自己的auto predict

舉個例子,如下圖,model.regA.write(47),通過regA找到對應的uvm_reg_item,然后找到address_map里面對應的地址,用adapter完成轉換得到bus_item并給到sequencer。然后通過driver的讀寫完成reg_model寄存器的鏡像值刷新。

5cbfad96-9073-11ef-a511-92fbcf53809c.png

在寄存器模型創建的組件的connect_phase()調用寄存器模型中的uvm_reg_map的set_auto_predict(on)來選擇打開(on=1)或關閉(on=0)自動預測功能,默認關閉。

景芯SoC驗證項目采用的就是auto_predict,如下圖,在SoC_subsys_env.sv里面connect_phase階段寫一句regmodel.default_map.set_auto_predict(1)即可。默認是關閉的。

5cde59f8-9073-11ef-a511-92fbcf53809c.png

自動預測打開的優點在于我們UVM環境實現起來會比較簡單,工作量大大降低,缺點是無法predict寄存器模型之外的總線行為(例如sequence),因而不能保證寄存器模型與DUT的實時匹配。

方式2:關閉自動預測功能并實例化uvm_reg_predictor

如果關閉自動預測功能,那么我們需要將uvm_reg_predictor實例化(或者繼承一個我們自己的predictor),將predictor實例與我們monitor相連接(這里還需要我們monitor能夠正確抓去總線數據),這樣predictor就會實時的獲取monitor所監測到的transaction信息,通過transaction中提供的address信息與uvm_reg_map中的寄存器address進行匹配進而發起相應的uvm_reg的predict()行為。

這樣一來uvm_reg的predict行為就跟寄存器模型中的讀寫行為脫鉤了,只是跟monitor上的行為想關聯,即使不是寄存器模型發起的讀寫(例如通過一般的sequence發起的總線讀寫),也是可以實時的更新寄存器模型中的鏡像值和期望值,這樣做更能保證寄存器模型中的值與DUT中的寄存器值最大程度的保持一致。

5d0129b0-9073-11ef-a511-92fbcf53809c.png

方式3:reg_model被動實例化uvm_reg_predictor

reg_model不做寄存器配置,僅作為被動檢測,由bus agent的monitor來獲取DUT的寄存器配置值,經過adapter轉為為address和data,address從map關系中找到對應的register,然后把data通過uvm_reg_item返回給reg_model。

5d30bf22-9073-11ef-a511-92fbcf53809c.png

我們需要在寄存器模型創建的組件的connect_phase()調用寄存器模型中的uvm_reg_map的set_auto_predict(on)來選擇打開(on=1)或關閉(on=0)自動預測功能,默認關閉。

自動預測打開的優點在于我們UVM環境實現起來會比較簡單,工作量大大降低,缺點是無法predict寄存器模型之外的總線行為(例如sequence),因而不能保證寄存器模型與DUT的實時匹配。

關閉自動預測我們就需要實例化uvm_reg_predictor,并將uvm_reg_predictor實例中的bus_in與我們的uvm_monitor中的uvm_analysis_port相連接,這就需要我們保證uvm_monitor實現必須完善,這樣就可以保證我們寄存器模型與DUT中的寄存器值最大可能的保持一致性。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5336

    瀏覽量

    120230
  • soc
    soc
    +關注

    關注

    38

    文章

    4161

    瀏覽量

    218162
  • 模型
    +關注

    關注

    1

    文章

    3226

    瀏覽量

    48807
  • DUT
    DUT
    +關注

    關注

    0

    文章

    189

    瀏覽量

    12373

原文標題:詳解寄存器模型reg_model的auto_predict

文章出處:【微信號:全棧芯片工程師,微信公眾號:全棧芯片工程師】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于DWC2的USB驅動開發-發送相關的寄存器DMA寄存器詳解

    本文轉自公眾號,歡迎關注 基于DWC2的USB驅動開發-發送相關的寄存器DMA寄存器詳解 (qq.com) 前言 如下寄存器DIEPxxx,對應IN端點,和發送數據相關,這一篇先介紹和
    的頭像 發表于 07-16 16:42 ?1641次閱讀
    基于DWC2的USB驅動開發-發送相關的<b class='flag-5'>寄存器</b>DMA<b class='flag-5'>寄存器</b><b class='flag-5'>詳解</b>

    UVM寄存器模型的常規方法有哪些呢?

    在應用寄存器模型時, 除了利用它的寄存器信息, 還可以利用它來跟蹤寄存器
    的頭像 發表于 11-25 09:27 ?1855次閱讀
    UVM<b class='flag-5'>寄存器</b><b class='flag-5'>模型</b>的常規方法有哪些呢?

    ARM寄存器詳解

    ARM有37個寄存器,其中31個通用寄存器,6個狀態寄存器。   這里尤其要注意區別的是ARM自身寄存器和它的一些外設的寄存器的區別。
    發表于 07-10 10:04 ?2956次閱讀

    DSP2812寄存器詳解

    DSP2812寄存器詳解DSP2812寄存器詳DSP2812寄存器詳解
    發表于 01-08 14:17 ?8次下載

    51寄存器的所有寄存器名稱,(包括寄存器每一位的作用及用法)資源詳解

    51寄存器的所有寄存器名稱,(包括寄存器每一位的作用及用法)資源詳解
    發表于 10-16 13:04 ?14次下載
    51<b class='flag-5'>寄存器</b>的所有<b class='flag-5'>寄存器</b>名稱,(包括<b class='flag-5'>寄存器</b>每一位的作用及用法)資源<b class='flag-5'>詳解</b>

    移位寄存器怎么用_如何使用移位寄存器_移位寄存器的用途

    移位寄存器是一個具有移位功能的寄存器,是指寄存器中所存的代碼能夠在移位脈沖的作用下依次左移或右移。本文主要介紹了移位寄存器的用途以及移位寄存器
    發表于 12-22 15:49 ?2w次閱讀

    寄存器操作方法_對寄存器操作的通用方法總結

    本文主要詳解寄存器操作方法以及對寄存器操作的通用方法總結,具體的跟隨小編來了解一下。
    的頭像 發表于 05-22 15:53 ?2.3w次閱讀

    ARM通用寄存器及狀態寄存器詳解

    筆者來聊聊ARM通用寄存器以及狀態寄存器的認識與理解。
    的頭像 發表于 01-06 14:58 ?7142次閱讀

    簡述RAL寄存器模型基礎

    RAL(Register Abstract Layer,寄存器抽象層),通常也叫寄存器模型,顧名思義就是對寄存器這個部件的建模。本文要介紹的內容,包括對UVM
    的頭像 發表于 02-14 16:55 ?2707次閱讀
    簡述RAL<b class='flag-5'>寄存器</b><b class='flag-5'>模型</b>基礎

    RAL寄存器模型操作圖鑒

    寄存器模型操作,指的是通過寄存器模型對RTL中寄存器進行讀寫訪問,或者同步寄存器
    的頭像 發表于 05-17 09:01 ?923次閱讀
    RAL<b class='flag-5'>寄存器</b><b class='flag-5'>模型</b>操作圖鑒

    簡化UVM寄存器模型的使用

    當我開始使用 UVM RAL 時,我無法理解 UVM 基類庫對更新所需鏡像寄存器有什么看法。我還認為,所使用的術語沒有準確反映其意
    的頭像 發表于 05-29 10:15 ?1243次閱讀
    簡化UVM<b class='flag-5'>寄存器</b><b class='flag-5'>模型</b>的使用

    基于DUT內部寄存器鏡像

    寄存器模型保持著DUT內部寄存器鏡像(mirror) 。 鏡像
    的頭像 發表于 06-24 12:02 ?887次閱讀

    寄存器模型Register Model學習筆記

    UVM的寄存器模型是一組高級抽象的類,用來對DUT中具有地址映射的寄存器和存儲進行建模。
    的頭像 發表于 07-11 09:20 ?2201次閱讀
    <b class='flag-5'>寄存器</b><b class='flag-5'>模型</b>Register Model學習筆記

    RAL寄存器模型操作指南

    寄存器模型操作,指的是通過寄存器模型對RTL中寄存器進行讀寫訪問,或者同步寄存器
    的頭像 發表于 07-12 09:37 ?1075次閱讀
    RAL<b class='flag-5'>寄存器</b><b class='flag-5'>模型</b>操作指南

    如何理解 RAMECC FAR 寄存器

    如何理解 RAMECC FAR 寄存器
    的頭像 發表于 10-19 18:19 ?656次閱讀
    如何理解 RAMECC FAR <b class='flag-5'>寄存器</b>的<b class='flag-5'>值</b>
    主站蜘蛛池模板: 十分钟在线观看免费视频高清WWW| 色欲国产麻豆精品AV免费| 三级黄色在线观看| 亚洲免费无l码中文在线视频| 2022年国产精品久久久久| 纲手胸被爆羞羞免费| 久久成人伊人欧洲精品AV| 青青草原国产在线| 亚洲精品国产字幕久久vr| 99视频精品全部 国产| 国产精品外围在线观看| 蜜臀久久99精品久久久久久做爰| 微福利92合集| 99re在这里只有精品| 国产在线精品亚洲一品区| 欧美巨大xxxx做受孕妇视频| 亚洲国产精品久久人人爱| a级男女性高爱潮高清试看| 国语精彩对白2021| 热久久国产欧美一区二区精品| 一扒二脱三插片在线观看| 高h喷水荡肉爽文总攻| 老人FREE VIODES老少配| 忘忧草日本在线WWW日本| GAY空少被体育生开菊| 久久www99re在线播放| 丝瓜视频在线免费| 97精品伊人久久大香线蕉app | 久久久久久久久久久福利观看| 欧美最猛性xxxxx亚洲精品| 亚洲色欲色欲综合网站| 国产3级在线观看| 欧美乱妇狂野欧美在线视频| 伊人久久中文大香线蕉综合| 国产精品久久久久影院色| 青青草原在线新免费| 综合一区无套内射中文字幕| 精品久久电影网| 性吧 校园春色| 高清国产激情视频在线观看| 欧美国产精品主播一区|