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

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

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

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

NVMe高速傳輸卻不用XDMA設(shè)計(jì)之1

高速傳輸與存儲(chǔ) ? 來(lái)源:高速傳輸與存儲(chǔ) ? 作者:高速傳輸與存儲(chǔ) ? 2025-06-09 17:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

NVMe IP放棄XDMA原因

選用XDMA做NVMe IP的關(guān)鍵傳輸模塊,可以加速I(mǎi)P的設(shè)計(jì),但是XDMA對(duì)于開(kāi)發(fā)者來(lái)說(shuō),還是不方便,原因是它就象一個(gè)黑匣子,調(diào)試也非一番周折,尤其是后面PCIe4.0升級(jí)。因此決定直接采用PCIe設(shè)計(jì),雖然要費(fèi)一番周折,但是目前看,還是值得的,uvm驗(yàn)證也更清晰。

PCIe 加速模塊設(shè)計(jì)

PCIe 加速模塊負(fù)責(zé)處理PCIe事務(wù)層,并將其與NVMe功能和AXI接口直接綁定。如圖1所示,PCIe加速模塊按照請(qǐng)求發(fā)起方分為請(qǐng)求模塊和應(yīng)答模塊。請(qǐng)求模塊負(fù)責(zé)將內(nèi)部請(qǐng)求事務(wù)轉(zhuǎn)換為配置管理接口信號(hào)或axis請(qǐng)求方請(qǐng)求接口信號(hào)(axis_rq),以及解析 axis 請(qǐng)求方完成接口信號(hào)(axis_rc);應(yīng)答模塊負(fù)責(zé)接收axis完成方請(qǐng)求接口信號(hào)(axis_cq),將請(qǐng)求內(nèi)容轉(zhuǎn)換為AXI4接口信號(hào)或其它內(nèi)部信號(hào)做進(jìn)一步處理,同時(shí)將應(yīng)答事務(wù)通過(guò)axis完成方完成接口axis_cc)發(fā)送給PCIE集成塊.

wKgZPGgxkAWAGe2ZAACUFjGWWo0349.png

圖1 PCIe加速模塊結(jié)構(gòu)和連接關(guān)系圖

PCIe 加速模塊不僅承擔(dān)了TLP與其它接口信號(hào)的轉(zhuǎn)換功能,也是降低傳輸延遲增加吞吐量的核心部件。接下來(lái)分別對(duì)請(qǐng)求模塊和應(yīng)答模塊的結(jié)構(gòu)設(shè)計(jì)進(jìn)行具體分析。

PCIe 請(qǐng)求模塊設(shè)計(jì)

請(qǐng)求模塊的具體任務(wù)是將系統(tǒng)的請(qǐng)求轉(zhuǎn)換成為axis接口形式的TLP或配置管理接口信號(hào)。這些請(qǐng)求主要包含初始化配置請(qǐng)求和門(mén)鈴寫(xiě)請(qǐng)求。初始化配置請(qǐng)求由初始化模塊發(fā)起,當(dāng)配置請(qǐng)求的總線號(hào)為0時(shí),請(qǐng)求通過(guò)Cfg_mgmt接口發(fā)送給PCIE集成塊;當(dāng)配置請(qǐng)求的總線號(hào)不為0時(shí),請(qǐng)求以PCIe配置請(qǐng)求TLP的格式從axis_rq接口發(fā)送到PCIE集成塊,然后由硬核驅(qū)動(dòng)數(shù)據(jù)鏈路層和物理層通過(guò)PCIe接口發(fā)送給下游設(shè)備,下游設(shè)備的反饋通過(guò)axis_rc接口以Cpl或CplD的形式傳回。門(mén)鈴寫(xiě)請(qǐng)求由NVMe控制模塊發(fā)起,請(qǐng)求以PCIe存儲(chǔ)器寫(xiě)請(qǐng)求TLP的格式從axis_rq接口交由PCIE集成塊發(fā)送。

由于發(fā)起請(qǐng)求的模塊存在多個(gè),并且在時(shí)間順序上初始化模塊先占用請(qǐng)求,NVMe控制模塊后占用請(qǐng)求,不會(huì)出現(xiàn)請(qǐng)求的競(jìng)爭(zhēng),因此設(shè)置一條內(nèi)部請(qǐng)求總線用于發(fā)起請(qǐng)求和接收響應(yīng),該請(qǐng)求總線也作為請(qǐng)求模塊的上游接口。請(qǐng)求模塊的請(qǐng)求總線接口說(shuō)明如表1所示。無(wú)論是配置請(qǐng)求還是門(mén)鈴寫(xiě)請(qǐng)求,請(qǐng)求的數(shù)據(jù)長(zhǎng)度都只有一個(gè)雙字,因此設(shè)置讀寫(xiě)數(shù)據(jù)位寬均為32比特。

表1 請(qǐng)求總線接口

wKgZPGgxkCOABVxfAADP1j_0uk4920.png

在接收到請(qǐng)求總線接口的請(qǐng)求事務(wù)后,當(dāng)請(qǐng)求類型的值為0時(shí),表示通過(guò)PCIE集成塊的配置管理接口發(fā)送請(qǐng)求,由于請(qǐng)求接口的接口和時(shí)序與配置管理接口基本一致,因此此時(shí)直接將請(qǐng)求接口信號(hào)驅(qū)動(dòng)到配置管理接口完成請(qǐng)求的發(fā)送,請(qǐng)求讀數(shù)據(jù)和響應(yīng)也通過(guò)選通器連接到配置管理接口。當(dāng)請(qǐng)求類型值不為0時(shí),則需要將請(qǐng)求轉(zhuǎn)換為T(mén)LP以axis接口形式發(fā)送,這一過(guò)程通過(guò)請(qǐng)求狀態(tài)機(jī)實(shí)現(xiàn),請(qǐng)求狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)移圖如圖2所示。

wKgZPGgxkFaAbkXyAACO845bvXI893.png

圖2 PCIe請(qǐng)求狀態(tài)轉(zhuǎn)移圖

各狀態(tài)說(shuō)明如下:

IDLE:空閑狀態(tài),復(fù)位后的初始狀態(tài)。當(dāng)請(qǐng)求寫(xiě)有效或請(qǐng)求讀有效,且請(qǐng)求類型值不為0時(shí),如果請(qǐng)求寫(xiě)有效跳轉(zhuǎn)到WR_HEAD狀態(tài),如果請(qǐng)求讀有效或讀寫(xiě)同時(shí)有效跳轉(zhuǎn)到RD_HEAD狀態(tài),否則保持IDLE狀態(tài)。實(shí)際的上層設(shè)計(jì)中讀寫(xiě)請(qǐng)求不會(huì)同時(shí)發(fā)生,這里的狀態(tài)跳轉(zhuǎn)條件增加了讀優(yōu)先設(shè)計(jì),從而避免異常情況的出現(xiàn)。

WR_HEAD:請(qǐng)求寫(xiě)TLP頭發(fā)送狀態(tài)。該狀態(tài)下根據(jù)請(qǐng)求類型、請(qǐng)求地址組裝寫(xiě)請(qǐng)求的TLP報(bào)文頭部,并將報(bào)文頭部通過(guò)axis_rq接口發(fā)送。當(dāng)axis_rq接口握手時(shí)跳轉(zhuǎn)到WR_DATA狀態(tài)。

WR_DATA:請(qǐng)求寫(xiě)TLP數(shù)據(jù)發(fā)送狀態(tài)。該狀態(tài)下將請(qǐng)求寫(xiě)的數(shù)據(jù)通過(guò)axis_rq接口發(fā)送,當(dāng)axis_rq接口握手時(shí)跳轉(zhuǎn)到DONE狀態(tài)。

RD_HEAD:請(qǐng)求讀TLP頭發(fā)送狀態(tài)。該狀態(tài)下組裝讀請(qǐng)求TLP報(bào)頭通過(guò)axis_rq接口發(fā)送,當(dāng)接口握手時(shí)跳轉(zhuǎn)到RD_DATA狀態(tài)。

RD_DATA:請(qǐng)求讀CplD接收狀態(tài)。該狀態(tài)下監(jiān)測(cè)axis_rc接口信號(hào),當(dāng)出現(xiàn)數(shù)據(jù)傳輸有效時(shí),啟動(dòng)握手并接受數(shù)據(jù),然后跳轉(zhuǎn)到DONE狀態(tài)。

DONE:請(qǐng)求完成狀態(tài)。該狀態(tài)下使能req_ack請(qǐng)求響應(yīng)信號(hào),如果是讀請(qǐng)求同時(shí)將RD_DATA狀態(tài)下接收的數(shù)據(jù)發(fā)送到req_rdata請(qǐng)求讀數(shù)據(jù)接口。一個(gè)時(shí)鐘周期后回到IDLE狀態(tài)。

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

    關(guān)注

    33

    文章

    9000

    瀏覽量

    153715
  • 高速傳輸
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    9170
  • nvme
    +關(guān)注

    關(guān)注

    0

    文章

    251

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    NVMe IP高速傳輸卻不依賴便利的XDMA設(shè)計(jì)之一

    NVMe IP放棄XDMA原因 選用XDMANVMe IP的關(guān)鍵傳輸模塊,可以加速I(mǎi)P的設(shè)計(jì),但是XD
    發(fā)表于 05-24 17:09

    NVMe IP高速傳輸卻不依賴便利的XDMA設(shè)計(jì)之二

    NVMe IP放棄XDMA原因 選用XDMANVMe IP的關(guān)鍵傳輸模塊,可以加速I(mǎi)P的設(shè)計(jì),但是XD
    發(fā)表于 05-25 10:20

    NVMe IP高速傳輸卻不依賴便利的XDMA設(shè)計(jì)之三:系統(tǒng)架構(gòu)

    請(qǐng)求數(shù)據(jù)傳輸, 數(shù)據(jù)傳輸通過(guò) AXI4總線接口對(duì)接用戶邏輯, 使用突發(fā)傳輸提高數(shù)據(jù)傳輸性能。 圖1 Nv
    發(fā)表于 06-29 17:42

    NVMe IP高速傳輸擺脫XDMA設(shè)計(jì)四:系統(tǒng)控制模塊設(shè)計(jì)

    系統(tǒng)控制模塊負(fù)責(zé)實(shí)現(xiàn) NVMe over PCI 邏輯加速引擎的控制功能, 其結(jié)構(gòu)如圖 1 所示。 用戶通過(guò)系統(tǒng)控制模塊實(shí)現(xiàn)對(duì)初始化功能、 隊(duì)列管理功能、 DMA 功能等主要功能的控制, 同時(shí)邏輯
    發(fā)表于 06-29 18:07

    NVMe IP高速傳輸卻不依賴XDMA設(shè)計(jì)五:DMA 控制單元設(shè)計(jì)

    DMA 控制單元負(fù)責(zé)控制 DMA 傳輸事務(wù), 該單元承擔(dān)了 DMA 事務(wù)到 NVMe 事務(wù)的轉(zhuǎn)換任務(wù), 使用戶對(duì)數(shù)據(jù)傳輸事務(wù)的控制更加簡(jiǎn)單快捷。 DMA 控制功能由 DMA寄存器組實(shí)現(xiàn)。DMA
    發(fā)表于 07-02 19:45

    NVMe高速傳輸擺脫XDMA設(shè)計(jì)六:性能監(jiān)測(cè)單元設(shè)計(jì)

    性能監(jiān)測(cè)單元負(fù)責(zé)監(jiān)測(cè) NVMe over PCIe 邏輯加速引擎的運(yùn)行狀態(tài)和統(tǒng)計(jì)信息, 包括復(fù)位后 運(yùn)行時(shí)間信息、 NVMe 指令數(shù)量統(tǒng)計(jì)信息、 數(shù)據(jù)操作數(shù)量統(tǒng)計(jì)信息、 IOPS 性能統(tǒng)計(jì) 信息
    發(fā)表于 07-02 19:51

    NVMe高速傳輸擺脫XDMA設(shè)計(jì)七:系統(tǒng)初始化

    路訓(xùn)練由 PCIE 集成塊實(shí)現(xiàn), 初始化模塊根據(jù)鏈路訓(xùn)練完成信號(hào)和初始化啟動(dòng)信號(hào)來(lái)執(zhí)行 PCIe 初始化和NVMe 初始化。 圖1 系統(tǒng)初始化流程`` 系統(tǒng)初始化的主要流程如圖 1 所示, 在系統(tǒng)供電
    發(fā)表于 07-04 09:14

    NVMe高速傳輸擺脫XDMA設(shè)計(jì)十:NVMe初始化狀態(tài)機(jī)設(shè)計(jì)

    1NVMe配置初始化狀態(tài)機(jī)狀態(tài)轉(zhuǎn)移圖。各狀態(tài)的說(shuō)明如下: 圖1NVMe初始化狀態(tài)轉(zhuǎn)移圖 IDLE:空閑狀態(tài),復(fù)位后的初始狀態(tài)。當(dāng)檢測(cè)到初始化控制寄存器的NVMe初始化啟動(dòng)信號(hào)時(shí),進(jìn)入
    發(fā)表于 07-05 22:03

    PCIE高速傳輸解決方案FPGA技術(shù)XILINX官方XDMA驅(qū)動(dòng)

    PCIE高速傳輸方案傳輸的帶寬利用率可達(dá)到90%以上,延遲可達(dá)到理論的最低延遲值。該方案已經(jīng)應(yīng)用到航天航空、雷達(dá)等領(lǐng)域。一、 高效率傳輸方案 該采集方案 Demo 基于 VC709
    發(fā)表于 05-19 08:58

    NVMe IP over PCIe 4.0:擺脫XDMA,實(shí)現(xiàn)超高速!

    基于NVMe加速引擎,它直接放棄XDMA,改為深度結(jié)合PCIe,通過(guò)高速傳輸機(jī)制開(kāi)發(fā)。同時(shí)利用UVM驗(yàn)證平臺(tái)驗(yàn)證,有效提升工作效率。
    的頭像 發(fā)表于 04-16 14:57 ?404次閱讀
    <b class='flag-5'>NVMe</b> IP over PCIe 4.0:擺脫<b class='flag-5'>XDMA</b>,實(shí)現(xiàn)超<b class='flag-5'>高速</b>!

    NVMe IP高速傳輸卻不依賴XDMA設(shè)計(jì)之二:PCIe讀寫(xiě)邏輯

    應(yīng)答模塊的具體任務(wù)是接收來(lái)自PCIe鏈路上的設(shè)備的TLP請(qǐng)求,并響應(yīng)請(qǐng)求。由于基于PCIe協(xié)議的NVMe數(shù)據(jù)傳輸只使用PCIe協(xié)議的存儲(chǔ)器讀請(qǐng)求TLP和存儲(chǔ)器寫(xiě)請(qǐng)求TLP,應(yīng)答模塊分別針對(duì)兩種TLP設(shè)置處理引擎來(lái)提高并行性和處理速度。
    的頭像 發(fā)表于 06-09 17:25 ?295次閱讀
    <b class='flag-5'>NVMe</b> IP<b class='flag-5'>高速</b><b class='flag-5'>傳輸</b><b class='flag-5'>卻不</b>依賴<b class='flag-5'>XDMA</b>設(shè)計(jì)之二:PCIe讀寫(xiě)邏輯

    NVMe IP高速傳輸卻不依賴XDMA設(shè)計(jì)之三:系統(tǒng)架構(gòu)

    所設(shè)計(jì)的新系統(tǒng)架構(gòu)中,Nvme over PCIe IP通過(guò) PCIe 3.0x4 接口連接 NVMe固態(tài)硬盤(pán), 并提供 AXI4-Lite 接口用于系統(tǒng)控制, 以及 AXI4 接口用于數(shù)據(jù)傳輸
    的頭像 發(fā)表于 06-29 17:46 ?591次閱讀
    <b class='flag-5'>NVMe</b> IP<b class='flag-5'>高速</b><b class='flag-5'>傳輸</b><b class='flag-5'>卻不</b>依賴<b class='flag-5'>XDMA</b>設(shè)計(jì)之三:系統(tǒng)架構(gòu)

    NVMe IP高速傳輸卻不依賴XDMA設(shè)計(jì)四:系統(tǒng)控制模塊

    系統(tǒng)控制模塊負(fù)責(zé)實(shí)現(xiàn) NVMe over PCI 邏輯加速引擎的控制功能, 其結(jié)構(gòu)如圖 1 所示。 用戶通過(guò)系統(tǒng)控制模塊實(shí)現(xiàn)對(duì)初始化功能、 隊(duì)列管理功能、 DMA 功能等主要功能的控制, 同時(shí)邏輯加速引擎的工作狀態(tài)也通過(guò)此模塊反饋給用戶。
    的頭像 發(fā)表于 06-29 17:52 ?107次閱讀
    <b class='flag-5'>NVMe</b> IP<b class='flag-5'>高速</b><b class='flag-5'>傳輸</b><b class='flag-5'>卻不</b>依賴<b class='flag-5'>XDMA</b>設(shè)計(jì)<b class='flag-5'>之</b>四:系統(tǒng)控制模塊

    NVMe IP高速傳輸卻不依賴XDMA設(shè)計(jì)五:DMA 控制單元設(shè)計(jì)

    DMA 控制單元負(fù)責(zé)控制 DMA 傳輸事務(wù), 該單元承擔(dān)了 DMA 事務(wù)到 NVMe 事務(wù)的轉(zhuǎn)換任務(wù), 使用戶對(duì)數(shù)據(jù)傳輸事務(wù)的控制更加簡(jiǎn)單快捷。 DMA 控制功能由 DMA寄存器組實(shí)現(xiàn)。
    的頭像 發(fā)表于 07-02 19:47 ?974次閱讀
    <b class='flag-5'>NVMe</b> IP<b class='flag-5'>高速</b><b class='flag-5'>傳輸</b><b class='flag-5'>卻不</b>依賴<b class='flag-5'>XDMA</b>設(shè)計(jì)<b class='flag-5'>之</b>五:DMA 控制單元設(shè)計(jì)

    NVMe IP高速傳輸卻不依賴XDMA設(shè)計(jì)六:性能監(jiān)測(cè)單元設(shè)計(jì)

    性能監(jiān)測(cè)單元負(fù)責(zé)監(jiān)測(cè) NVMe over PCIe 邏輯加速引擎的運(yùn)行狀態(tài)和統(tǒng)計(jì)信息, 包括復(fù)位后 運(yùn)行時(shí)間信息、 NVMe 指令數(shù)量統(tǒng)計(jì)信息、 數(shù)據(jù)操作數(shù)量統(tǒng)計(jì)信息、 IOPS 性能統(tǒng)計(jì) 信息、 指令延遲統(tǒng)計(jì)信息等。
    的頭像 發(fā)表于 07-02 19:49 ?147次閱讀
    <b class='flag-5'>NVMe</b> IP<b class='flag-5'>高速</b><b class='flag-5'>傳輸</b><b class='flag-5'>卻不</b>依賴<b class='flag-5'>XDMA</b>設(shè)計(jì)<b class='flag-5'>之</b>六:性能監(jiān)測(cè)單元設(shè)計(jì)