国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

從網絡接口到 DMA,一套面向工程師的 FPGA 網絡開發框架

FPGA技術江湖 ? 來源:FPGA技術江湖 ? 2026-02-12 11:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在高性能網絡、數據中心和智能網卡加速領域,硬件與軟件協同設計已成為提升網絡處理效率的關鍵。Liberouter 提供的 Network Development Kit(NDK) 就是這樣一套專門用來快速開發 FPGA 加速網絡應用的開源框架,是連接高速網絡接口、FPGA 邏輯與主機處理器的工程級利器。

f3416a0a-07a7-11f1-90a1-92fbcf53809c.png

什么是 Liberouter NDK?

NDK 全稱 Network Development Kit,是由 Liberouter 研究團隊開發的一套框架,用于在 FPGA 加速卡上快速實現高性能網絡應用。它并不是一個簡單的示例或庫,而是一個 可直接用來推進復雜網絡硬件開發的平臺。

這個套件支持包括 10 GbE、100 GbE 和 400 GbE 在內的高速以太網標準,同時提供了配套的 Linux 驅動、用戶態庫、示例程序等工具,大幅降低了網絡加速 FPGA 設計的門檻。

核心功能和特點

基于標準以太網硬IP的網絡模塊,支持10 GbE、100 GbE、400 GbE等速度。

基于 PCIe Gen5 x16 或 2x PCIe Gen4 x16 接口的超高速 DMA 模塊,吞吐量達 400 Gbps。

易于使用的內存接口,可對卡進行單獨的讀取/寫入操作。

用于完整設計綜合的自動化腳本。只需運行一條 make 命令即可創建整個 FPGA 比特流。

Linux 內核驅動程序、DPDK 支持、用戶空間庫和配置工具。

通過用戶友好的 API 輕松創建自定義應用程序,實現組件訪問和 DMA 傳輸。

f3416a0a-07a7-11f1-90a1-92fbcf53809c.png

用戶應用程序

NDK 專為創建具有深度流水線式高速數據包處理的新型網絡應用而設計。應用核心是 FPGA 芯片上專用于用戶應用的區域,它可以利用 NDK 從網絡接口捕獲數據包,并通過超高速 DMA 傳輸將數據發送到主機 CPU。網絡模塊(NDK 的一部分)負責網絡數據包的接收和發送。網絡模塊通過數據流總線(兼容 AXI4-Stream/Avalon-ST)將接收到的數據包發送到應用核心。然后,同一數據總線用于將數據傳輸到主機 CPU。整個 NDK 的可擴展性從數十 Gbps 到數百 Gbps 不等。它的設計目標是在每個時鐘周期內發送和處理多個數據包。NDK 的標準數據總線經過優化,可以同時傳輸大量數據包,從而進一步提高吞吐量。上述數據總線包括 MFB (多幀總線)和MVB(多值總線)。就吞吐量而言,幾乎唯一的限制是可用的 FPGA 資源。

許多網絡應用需要大型數據結構或緩沖區。因此,NDK 提供了一個易于使用的接口,用于與外部存儲器(通常是 DRAM通信。用戶可以使用該接口快速開發連接跟蹤表、流緩存或數據緩沖區。

在FPGA中實現的用戶應用程序可以通過對指定地址范圍的讀/寫請求進行控制。這些請求通過與Intel Avalon-MM兼容的CSR總線從軟件傳輸到應用程序核心。軟件用戶應用程序可以通過簡單的軟件API生成這些讀/寫請求。

超高速DMA傳輸(DMA Medusa IP)

提供與廠商無關的FPGA架構和開源Linux驅動程序,用于采用逐包方式的高速DMA傳輸。該DMA設計吞吐量為400 Gbps,并采用多通道架構以支持CPU內核間的數據分發。該架構具有高度靈活性,支持各種高端FPGA系列和PCIe總線配置(最高可達PCIe Gen5 x16)。DMA IP可以利用更多PCI端點模塊,將吞吐量擴展到100、200和400 Gbps。

f4180e02-07a7-11f1-90a1-92fbcf53809c.png

已在 Intel Stratix 10 DX 開發套件上演示了 DMA 架構的 400 Gb 吞吐量。然而,同樣的 DMA 引擎也能為 Xilinx UltraScale+ 和 Intel Agilex 器件提供極高的吞吐量。NDK Linux 驅動程序允許單獨控制所有 DMA 通道。它還提供了一個用戶友好的 API,可將應用程序內核直接連接到 DMA IP。此外,還可以通過 DPDK 驅動程序處理 DMA 傳輸。

示例設計

作為 NDK 的一部分,該項目提供了一個最小化(參考)應用程序的示例設計,該設計可以輕松擴展,為用戶應用程序提供硬件加速。該示例設計基于 NDK 框架構建。由于架構設計精良,最小化應用程序核心僅包含連接網絡接口和 DMA 模塊所需的連接線。此外,最小化示例設計還包含一個用于向 DMA 通道分發數據的單元。

實施、驗證和運行

示例設計可作為創建目標應用程序的靈感來源??梢暂p松地使用加速引擎或其他獨特功能擴展應用程序核心。提供NDK Minimal(參考)應用程序的文檔,其中包含應用程序接口的詳細描述??梢詫W⒂趹贸绦蚝诵?,并利用 NDK 控制網絡接口和 PCIe,實現快速 DMA 傳輸。

所有網絡應用都需要進行精確的驗證和測試。因此,NDK 提供了一個 UVM 驗證環境,用于檢查應用的功能是否正常。該驗證環境包含一組適用于所有應用接口的總線功能模型 (BFM)。所有 BFM 和整個驗證環境的詳細描述請參見 NDK Minimal App 文檔。成功驗證應用核心后,可以通過一條 make 命令生成新的 FPGA 比特流,并在 FPGA 卡上運行該應用。

f47ec5c0-07a7-11f1-90a1-92fbcf53809c.png

支持的FPGA卡

NDK 目前支持多種 FPGA 卡,并且可以輕松擴展以支持任何其他帶有網絡接口和 PCIe 連接器的 FPGA 卡。NDK 中使用的絕大多數組件都已準備好支持各種高端 FPGA,包括 Intel Agilex、Intel Stratix 10、Xilinx UltraScale+ 等。

f5024f44-07a7-11f1-90a1-92fbcf53809c.png

小結

Liberouter 的 NDK 是一套工程級 FPGA 網絡加速開發框架,它把底層復雜的高速網絡收發、DMA 傳輸、 FPGA bitstream 生成等通用功能都封裝好,開發者可以更專注于業務邏輯和加速算法本身。

對從事 FPGA 網絡加速、智能 NIC 設計或高性能系統工程的開發者來說,NDK 提供了一條更快、更可靠、更可復用的硬件加速設計路線。

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

    關注

    1660

    文章

    22394

    瀏覽量

    635356
  • 網絡接口
    +關注

    關注

    0

    文章

    96

    瀏覽量

    18695
  • dma
    dma
    +關注

    關注

    3

    文章

    581

    瀏覽量

    105820
  • 網絡開發
    +關注

    關注

    0

    文章

    15

    瀏覽量

    8901

原文標題:從網絡接口到 DMA,一套面向工程師的 FPGA 網絡開發框架

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    北京鼎普誠聘windows內核開發工程師

    :2377183341windows內核開發工程師所需技能:1. 精通C/C+語言2. 熟悉Windows系統驅動編程3. 熟悉windbg常用的調試技巧。4. 了解WINDOWS文件系統、設備、TDI層網絡
    發表于 01-07 11:29

    【成都】【招聘】誠聘FPGA工程師、 windows設備驅動開發工程師、嵌入式軟件開發工程師、硬件工程師

    工程師(3人)崗位職責:1.承擔通信中數字信號處理算法設計及FPGA實現工作,完成FPGA的編碼、測試、聯調;2.負責在方案論證階段,協助硬件設計完成
    發表于 05-31 15:30

    明德揚——點?撥FPGA課程之網絡

    海思資深FPGA/ASIC工程師-潘老師主講,課程中我們將講解利用FPGA進行數字電路以及邏輯設計中的設計技巧,提供一套完整的明德揚設計方法和思路,糾正設計中不規范、不清晰的做法,并通
    發表于 06-01 16:39

    泰禾光電(合肥)硬件工程師/軟件工程師招聘

    泰禾光電(合肥)硬件工程師/軟件工程師招聘()硬件工程師1)電子相關專業,本科及以上學歷;2)精通數字電路和模擬電路,精通FPGA電路設計
    發表于 06-20 22:05

    【成都】獵頭職位:FPGA工程師/軟件工程師-國內某上市公司

    。5. 熟練掌握verilog語言,熟練掌握邏輯設計。職位3:FPGA工程師(偏算法邏輯方向)崗位要求:1、負責實施通信收發機調制解調系統邏輯開發,包括收發調制解調及信道編解碼;2、有至少
    發表于 06-22 17:10

    【上海】誠聘FPGA研發工程師

    獵頭職位:FPGA研發工程師(年薪:35-60W)工作職責:1.配合軟件工程師進行產品設計過程中的軟硬件聯調和驗證;2.負責根據系統設計要求進行FPGA代碼的設計、
    發表于 07-31 15:03

    誠招“FPGA工程師、嵌入式系統開發工程師

    納睿達科技有限公司誠招“FPGA工程師、嵌入式系統開發工程師”【FPGA工程師】學歷要求:研究生
    發表于 01-13 14:17

    FPGA開發工程師、硬件開發工程師

    FPGA開發工程師崗位職責:1、根據系統需求,完成FPGA器件選型和方案設計;2、負責FPGA的Verilog語言編寫、仿真、調試;3、負責
    發表于 10-22 11:03

    嵌入式工程師需要哪些技能書/技能加點

    嵌入式硬件工程師通用技能樹軟件C/C++語言編程經驗、編程能力、應用開發、OOP面向對象編程方式、軟件框架、C指針、文件IO、進程線程、高級IO、對C++中的智能指針、多線程、
    發表于 08-06 09:46

    嵌入式軟件開發工程師FPGA開發工程師 精選資料分享

    我是名初入職場的萌新,工作不久嵌入式軟件工程師轉到了FPGA工程師,這篇文章簡單講講兩者的區別。嵌入式軟件
    發表于 08-18 06:37

    嵌入式軟件開發工程師FPGA開發工程師的區別是什么?

    嵌入式軟件開發工程師FPGA開發工程師的區別是什么?
    發表于 11-22 06:11

    FPGA工程師需要具備哪些技能?

    、設計思路 FPGA芯片是開發高速數字電路設計的理想解決方案之。FPGA芯片基于HDL的設計方法允許工程師使用高級語言進行設計。因此,
    發表于 11-09 11:03

    什么是網絡工程師

    什么是網絡工程師網絡工程師就是通過學習和訓練,掌握了網絡技術的理論知識和操作技能的網絡技術人員。網絡工程師能夠從事計算機信息系統的設計、建
    的頭像 發表于 02-19 14:28 ?8980次閱讀

    解讀HarmonyOS如何實現一套網絡請求框架

    本期我們為大家帶來的是開發者裴云飛投稿的“HarmonyOS網絡請求框架實現”,這個網絡請求框架被命名為“蒹葭(JianJia)”。其原理是
    的頭像 發表于 05-18 11:21 ?3694次閱讀

    Socket 網絡編程框架介紹

    一套面向 Socket 的網絡編程框架,并通過提供組標準的 System call APIs,使得開發
    的頭像 發表于 11-09 14:19 ?2322次閱讀
    Socket <b class='flag-5'>網絡</b>編程<b class='flag-5'>框架</b>介紹