99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

寄存器寫保護的需求和硬件實現(xiàn)

ruikundianzi ? 來源:IC的世界 ? 2023-10-17 15:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.寄存器寫保護的需求

在軟件硬件交互的過程中,通常需要軟件(host)對特定地址的寄存器進行寫操作,告之硬件進行特定的處理流程,我們在《IC設(shè)計:軟硬件交互-polling》中提到的doorbell寄存器就屬于此類。

在使用PCIe SR-IOV能力時,對芯片硬件來說,有多個軟件(host),而doorbell寄存器與特定的host綁定,從安全角度考慮,我們期望doorbell寄存器只能被綁定的軟件(host)寫,而不能被其他host寫,不會因為其他host的誤寫操作導(dǎo)致進程出錯。

寄存器的寫保護指的是某些特殊的寄存器只能被指定的host寫更新,而不能被其他host更新。此處的寄存器可能是單個普通寄存器,也可能是多個寄存器組成的ram。

2.寄存器寫保護硬件實現(xiàn)

03461952-6659-11ee-939d-92fbcf53809c.png

如圖設(shè)計中,多個host編號命名為func_id,且func_id編碼連續(xù);有多個doorbell,且doorbell以ram(db_data_mem)的形式呈現(xiàn),db_data_mem的地址表示func_id號,這樣,func_id與doorbell的關(guān)系就綁定了。

在如下的模塊中:存在3個ram,db_id_func_mem、db_id2func_id_mem、db_data_mem、

db_id_func_mem是虛擬ram,用于cfg_csr產(chǎn)生ram訪問接口,在圖中畫出也方便理解流程,地址表示func_id號,數(shù)據(jù)包為{db_id,db_data}。

db_id2func_id_mem表示db_id與func_id的對應(yīng)關(guān)系,地址為db_id,數(shù)據(jù)為func_id,db_id2func_id_mem的內(nèi)容需要軟件提前配置好。

db_data_mem是目標ram,地址表示func_id號,data表示db_data內(nèi)容。

配置模塊cfg_csr對db_id_func_mem的寫訪問信號線包含:wdata、wen、waddr等信號,其中wdata為{db_id,db_data},waddr表示的是func_id。

對db_id_func_mem的寫操作會觸發(fā)db_id2func_id_mem的讀操作,以db_id作為讀地址讀出數(shù)據(jù)func_id。

寫訪問信號進過打拍對齊后,將wr_addr_dly與db_id_func_mem讀出的func_id進行比較,如果相等則證明寫操作正確,db_data會被寫入到db_data_mem。如果不相等,則不會對db_data_mem進行寫操作。

3.為什么此種設(shè)計能夠達到寫保護的效果呢?

在這里,每個主機都知道自己的db_id,以及doorbell的地址(func_id),而不知道其他主機的db_id和doorbell的地址。主機在進行doorbell寫操作時,寫數(shù)據(jù)必須包含db_id,這樣db_id會與func_id進行匹配,匹配通過才會真正去更新doorbell。db_id與func_id匹配不通過,則不會更新doorbell。而其他主機是不知道當(dāng)前doorbell的地址(func_id)對應(yīng)的db_id的,因此有效降低了其他主機誤寫doorbell的概率。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5435

    瀏覽量

    124606
  • IC設(shè)計
    +關(guān)注

    關(guān)注

    38

    文章

    1360

    瀏覽量

    105813
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3485

    瀏覽量

    67534
  • PCIe
    +關(guān)注

    關(guān)注

    16

    文章

    1342

    瀏覽量

    85213

原文標題:

文章出處:【微信號:IP與SoC設(shè)計,微信公眾號:IP與SoC設(shè)計】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    PIC18F8722系列中的配置寄存器寫保護

    最近我在PIC18F822系列數(shù)據(jù)表中遇到了配置寄存器寫保護位。這意味著什么?由于配置寄存器通常只在正常情況下可讀,那么為什么要寫保護呢?一旦設(shè)置,如果我想有一個不同的配置,難道不可能
    發(fā)表于 04-09 15:06

    如何在SPI FLASH中添加WP引腳及寫保護設(shè)置

    使用W25QXX系列SPI FLASH。偶有發(fā)生數(shù)據(jù)被改變的現(xiàn)象,目前想添加寫保護功能。1. WP引腳拉低后是保護全片還是全頭扇區(qū)?2. 看資料WP引腳得和狀態(tài)寄存器配合起來使用,那么WP不拉高的情況是否可以修改
    發(fā)表于 07-15 04:36

    'F303寫保護它是如何工作的?

    FLASH_WRPR 寄存器描述中,它是 32 位,所以我猜 [1:0] 是一個錯字。b) 好的,我們有32 位寫保護,4.3.2 寫保護寫保護以2頁的粒度
    發(fā)表于 01-31 08:13

    寄存器,寄存器是什么意思

    寄存器,寄存器是什么意思 寄存器定義  寄存器是中央處理內(nèi)的組成部分。寄存器是有限存貯容量
    發(fā)表于 03-08 14:26 ?2.2w次閱讀

    數(shù)據(jù)寄存器,數(shù)據(jù)寄存器是什么意思

    數(shù)據(jù)寄存器,數(shù)據(jù)寄存器是什么意思 數(shù)據(jù)寄存器數(shù)據(jù)寄存器包括累加AX、基址寄存器BX、計數(shù)
    發(fā)表于 03-08 14:38 ?1.3w次閱讀

    移位寄存器,移位寄存器是什么意思

    移位寄存器,移位寄存器是什么意思 移位寄存器_
    發(fā)表于 03-08 14:50 ?1.8w次閱讀

    MPC860寄存器配置

    MPC860 的系統(tǒng)接口單元(SIU)控制系統(tǒng)啟動、初始化、運行、保護和外部系統(tǒng)總線。這些功能是靠許多寄存器實現(xiàn)的。這篇文檔將詳細說明各個寄存器的配置情況。
    發(fā)表于 06-08 17:54 ?53次下載
    MPC860<b class='flag-5'>寄存器</b>配置

    寄存器與移位寄存器

    寄存器與移位寄存器:介紹寄存器原理和移位寄存器的原理及實現(xiàn)。
    發(fā)表于 05-20 11:47 ?0次下載

    如何在VHDL中實現(xiàn)一個簡單的寄存器

    存儲的位數(shù)上有所不同,具體取決于系統(tǒng)的配置。在本教程中,我們將學(xué)習(xí)如何在 VHDL 中實現(xiàn)一個簡單的寄存器。
    發(fā)表于 07-29 16:48 ?5126次閱讀
    如何在VHDL中<b class='flag-5'>實現(xiàn)</b>一個簡單的<b class='flag-5'>寄存器</b>

    RA2快速設(shè)計指南 [7] 寄存器寫保護和I/O端口配置

    (R_BSP_RegisterProtectEnable 和 R_BSP_RegisterProtectDisable),分別用于使能和禁用寄存器寫保護。 9. I/O 端口配置(1) 《硬件手冊》中的“I/O
    的頭像 發(fā)表于 04-10 17:55 ?1832次閱讀

    RA6快速設(shè)計指南 [12] 寄存器寫保護,I/O端口配置 (1)

    9 寄存器寫保護 寄存器寫保護功能可防止重要寄存器因軟件錯誤而被覆蓋。使用保護
    的頭像 發(fā)表于 06-30 12:10 ?1347次閱讀
    RA6快速設(shè)計指南 [12] <b class='flag-5'>寄存器</b><b class='flag-5'>寫保護</b>,I/O端口配置 (1)

    RA2快速設(shè)計指南 [6] 寄存器寫保護和I/O端口配置

    RA2快速設(shè)計指南 [6] 寄存器寫保護和I/O端口配置
    的頭像 發(fā)表于 10-24 16:48 ?1045次閱讀
    RA2快速設(shè)計指南 [6] <b class='flag-5'>寄存器</b><b class='flag-5'>寫保護</b>和I/O端口配置

    IC設(shè)計:寄存器寫保護的以一種實現(xiàn)方式

    在軟件硬件交互的過程中,通常需要軟件(host)對特定地址的寄存器進行寫操作,告之硬件進行特定的處理流程。
    發(fā)表于 10-09 09:42 ?1181次閱讀
    IC設(shè)計:<b class='flag-5'>寄存器</b><b class='flag-5'>寫保護</b>的以一種<b class='flag-5'>實現(xiàn)</b>方式

    寄存器尋址的實現(xiàn)方式

    在計算機體系結(jié)構(gòu)中,寄存器尋址是一種常見的尋址方式,它允許程序直接訪問CPU內(nèi)部的寄存器。寄存器尋址可以提高程序的執(zhí)行效率,因為它避免了對內(nèi)存的訪問。 寄存器尋址的基本概念
    的頭像 發(fā)表于 07-12 10:36 ?1585次閱讀

    接口的控制與狀態(tài)寄存器什么作用

    的行為并獲取硬件的狀態(tài)信息。 接口的控制與狀態(tài)寄存器的作用 在現(xiàn)代計算機系統(tǒng)中,硬件設(shè)備與軟件之間的交互是通過一系列的接口來實現(xiàn)的。這些接口不僅需要能夠傳輸數(shù)據(jù),還需要能夠控制
    的頭像 發(fā)表于 10-17 10:42 ?1546次閱讀