女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

UVM中更簡單的內存管理

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者: Siddharth Nair ? 2022-06-10 16:37 ? 次閱讀

典型的SOC由多個接口組成,這些接口可以訪問設計中的存儲器。我們在驗證這樣的設計時,需要保證各個接口的內存訪問不重疊,導致數據完整性丟失。

在使用涉及多個接口的基于 System Verilog 的驗證環境進行驗證時,我們需要對激勵提供簡潔的約束,以確保這些訪問不會重疊并導致數據完整性丟失。

驗證工程師通常不得不花費大量時間來調試應用的約束,而這種形式的約束會導致刺激的約束不足,這是一條非常冒險的道路。

隨著基于 UVM 的單例內存管理器的引入,由于 UVM 提供的內存管理類的可用性,這項任務變得更加易于實現。但是這些新的驗證組件仍然不是專門為開發涉及多個主機的環境而設計的。我們在這里開發的“ Easy memory manager ”最大限度地利用了現有的 UVM 方法,并且還提供了多個主控器之間更容易的內存訪問。

什么是 UVM 內存管理器?

關于uvm_mem_mam類的可用資源非常稀缺,因此如果讀者對其功能沒有太多了解,這將是可以理解的。在繼續討論內存管理器提供的功能之前,我們想簡要介紹一下默認 UVM 內存管理器的功能。

UVM 中有四個與內存管理相關的類。它們在下面提到 -

uvm_mem_mam_cfg – 它允許我們選擇要由管理器管理的字節數以及開始和結束偏移量。

uvm_mem_mgr – 由希望分配內存的靜態/動態實體發起。

uvm_mem_alloc_policy - 它也可以用來控制管理器的開始和結束偏移量,也可以根據我們的要求約束這些變量。

uvm_mem_region - 這些代表將由內存管理器分配的區域。這些區域包含開始偏移量和要由管理器分配的字節數。

現在我們對默認內存管理器的操作以及與 UVM 中的內存管理相關的類有了一個簡要的了解,讓我們看看我們在內存管理器中添加了哪些現有功能。

支持的功能

“ Easy memory manager ”支持以下一組功能,可以在各種項目中重用:

整個內存分為memory、master、region分配三個維度,支持這三個維度上region的分配和釋放。

將內存劃分為虛擬區域。

運行時分配和區域釋放。

多個主控的非重疊分配。

通過提供要分配的區域的物理地址和字節數來分配區域。

可以保留內存塊,以便任何主機都無法訪問它。

提供有關已分配區域的詳細信息的調試機制。

根據 .xls 文件的輸入創建記憶。

頂部寄存器塊和管理器可通過腳本進行配置。

即插即用,因此可以直接在任何現有的 UVM 環境中使用。

建筑學

本節描述了內存管理器的結構和將要介紹“簡易內存管理器”的環境。管理器由頂部的uvm_reg_block組成,其中包含各個存儲器(例如,閃存、JTAG、SRAM 等)。各個內存是根據.xls文件中提供的數據創建的。各個內存類配置可根據項目要求完全定制。以類似的方式,我們可以通過腳本的命令行選項配置頂部內存。經理是單身人士,因此不會有數據重復。

pYYBAGKdv3KAHu26AAC-pUOZz2c514.png

圖1使用 Easy 內存管理器的環境

圖2使用 Easy memory manager 分配和釋放內存區域

poYBAGKdv4qALunBAAKLJGd4PXw489.png

表1管理器內的方法列表

在這里,我們展示了如何在多主機場景中使用“簡易內存管理器”的場景。存儲器被兩個主機訪問,一個是 SPI,另一個是以太網,它們正在執行自己的測試序列。在該示例中,您可以觀察到 master 在訪問內存時提供的唯一編號如何使用戶對測試用例中區域的處理更加可控。此外,用戶無需了解 RAL 模型中的內存結構。他可以簡單地提供物理地址,并且經理足夠聰明,可以根據地址保留區域。

pYYBAGKdv5WAVdZ7AAKSz4g_low617.png

圖3預留/釋放區域時 master 與 manager 的交互

最初,整個內存范圍都可用,SPI 主機請求兩個區域,以便它可以在這些區域上啟動其序列。

同樣,以太網主控也請求了三個區域。以太網主設備和 SPI 主設備的區域將通過主設備編號進行區分,主設備編號在分配時作為參數傳遞給主設備。

SPI 主控已完成其序列并通過在調用釋放函數時指定其唯一主控編號來釋放其分配的兩個區域。

以太網主機現在希望訪問之前分配給 SPI 主機的區域。因此它將通過指定物理地址來請求這些區域。

以太網的序列已經完成,它將釋放它所請求的區域。

整合步驟

pYYBAGKdv52AHS8PAAFNAoENk5U067.png

圖 4 集成步驟

向 XLS 提供輸入——在 .xls 文件中以適當的格式寫入數據以創建單獨的內存。

通過腳本生成內存和 reg_block – 使用適當的命令行選項運行腳本。如果未提供命令行選項,則使用默認選項。

以管理器在環境中的實例——內存和管理器將根據 .xls 文件中提供的數據和命令行選項創建。在要訪問管理器的組件中創建管理器的對象實例。

獲取管理器的句柄——管理器的實例需要獲取管理器的句柄,因為它是一個單例。管理器包含一個返回單例句柄的方法。

通過句柄訪問方法– 可以使用管理器的句柄訪問管理器的方法。

“ Easy memory manager”本質上是通用的,可用于任何現有的基于 UVM 的驗證環境。管理器包易于配置,并且可以擴展到任何項目特定的環境,而無需更改內部代碼。

在eInfochips,我們已經在系統、子系統和 IP 級環境中使用了這個內存管理器,并取得了預期的效果。我們已經使用 QuestaSim 和 NCSim 模擬器驗證了這個組件。

審核編輯:郭婷

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

    關注

    40

    文章

    5586

    瀏覽量

    174864
  • 存儲器
    +關注

    關注

    38

    文章

    7637

    瀏覽量

    166456
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1784

    瀏覽量

    94807
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    安科瑞醫療建筑能效解決方案,讓能源管理簡單!# 能源管理

    能源管理
    jf_55902079
    發布于 :2025年05月19日 16:52:11

    Linux系統通過預留物理內存實現ARM與FPGA高效通信的方法

    管理子系統管理。因此,需要預留一部分物理內存,使其不被內核管理。接下來將為大家詳細介紹在 Linux 系統通過預留物理
    的頭像 發表于 04-16 13:42 ?550次閱讀
    Linux系統<b class='flag-5'>中</b>通過預留物理<b class='flag-5'>內存</b>實現ARM與FPGA高效通信的方法

    IEC61508系統的動態內存使用

    IEC 61508標準強烈推薦使用靜態內存管理方式。在安全應用設計,我們都在遵循這個建議。
    的頭像 發表于 04-11 15:17 ?839次閱讀
    IEC61508系統<b class='flag-5'>中</b>的動態<b class='flag-5'>內存</b>使用

    光伏電站智能分析管理系統讓電站管理簡單

    光伏電站智能分析管理系統讓電站管理簡單 光伏電站建好后,管理才是真正的考研。過去靠人工巡檢,設備壞了要等好幾天才能發現,發電損失讓人心疼。
    的頭像 發表于 03-14 15:20 ?324次閱讀
    光伏電站智能分析<b class='flag-5'>管理</b>系統讓電站<b class='flag-5'>管理</b><b class='flag-5'>更</b><b class='flag-5'>簡單</b>

    愛立信如何讓網絡運維簡單

    在愛立信“可編程網絡”這一創新概念里,差異化連接、AI賦能和意圖驅動、網絡能力開放作為三大基石,各司其職,讓網絡智能、更靈活、開放。本期《信觀察》,愛立信專家將從AI賦能和意圖驅動的概念和功能入手,與您分享愛立信如何“讓網絡運維
    的頭像 發表于 03-03 09:27 ?5834次閱讀

    hyper 內存,Hyper內存:如何監控與優化hyper-v虛擬機的內存使用

    在日常工作,我們常常需要處理大量的文件和數據,這些重復性任務不僅耗時耗力,還容易因疲勞而導致錯誤。幸運的是,批量管理工具的出現為這一問題提供了高效的解決方案。今天就為大家介紹Hyper內存
    的頭像 發表于 01-24 14:15 ?972次閱讀
    hyper <b class='flag-5'>內存</b>,Hyper<b class='flag-5'>內存</b>:如何監控與優化hyper-v虛擬機的<b class='flag-5'>內存</b>使用

    虛擬內存溢出該怎么處理 虛擬內存在服務器的應用

    在現代計算機系統,虛擬內存是一種重要的資源管理技術,它允許系統使用硬盤空間來擴展物理內存的容量。然而,當系統運行的程序和進程超出了物理內存
    的頭像 發表于 12-04 09:49 ?704次閱讀

    Linux下如何管理虛擬內存 使用虛擬內存時的常見問題

    在Linux系統,虛擬內存管理是操作系統內核的一個重要功能,負責管理物理內存和磁盤上的交換空間。以下是對Linux下如何
    的頭像 發表于 12-04 09:19 ?1241次閱讀

    虛擬內存對計算機性能的影響

    在現代計算機系統內存管理是確保系統高效運行的關鍵因素之一。虛擬內存技術作為內存管理的核心組成
    的頭像 發表于 12-04 09:17 ?3219次閱讀

    虛擬內存的作用和原理 如何調整虛擬內存設置

    虛擬內存,也稱為虛擬內存管理或頁面文件,是計算機操作系統的一種內存管理技術。它允許系統使用硬盤
    的頭像 發表于 12-04 09:13 ?2034次閱讀

    Linux內存泄露案例分析和內存管理分享

    作者:京東科技 李遵舉 一、問題 近期我們運維同事接到線上LB(負載均衡)服務內存報警,運維同事反饋說LB集群有部分機器的內存使用率超過80%,有的甚至超過90%,而且內存使用率還再不停的增長。接到
    的頭像 發表于 10-24 16:14 ?1016次閱讀
    Linux<b class='flag-5'>內存</b>泄露案例分析和<b class='flag-5'>內存</b><b class='flag-5'>管理</b>分享

    Linux內存管理HVO的實現原理

    代碼閱讀工具:vim+ctags+cscope本文主要介紹內存管理的HVO(HugeTLB Vmemmap Optimization)特性,通過HVO可以節省管理HugeTLB 頁面
    的頭像 發表于 10-22 16:51 ?593次閱讀
    Linux<b class='flag-5'>內存</b><b class='flag-5'>管理</b><b class='flag-5'>中</b>HVO的實現原理

    Windows管理內存的三種主要方式

    Windows操作系統提供了多種方式來管理內存,以確保系統資源的有效利用和性能的優化。以下是關于Windows管理內存的三種主要方式的詳細闡述,包括堆
    的頭像 發表于 10-12 17:09 ?2213次閱讀

    內存管理的硬件結構

    常見的內存分配函數有malloc,mmap等,但大家有沒有想過,這些函數在內核是怎么實現的?換句話說,Linux內核的內存管理是怎么實現的?
    的頭像 發表于 09-04 14:28 ?589次閱讀
    <b class='flag-5'>內存</b><b class='flag-5'>管理</b>的硬件結構

    ESP-IDF內核內存管理如何驗證?

    請教一下,ESP-IDF 內核內存管理如何驗證
    發表于 06-19 06:30