[發明專利]基于FPGA的數據處理方法及系統在審
| 申請號: | 202011016311.9 | 申請日: | 2020-09-24 |
| 公開(公告)號: | CN112347030A | 公開(公告)日: | 2021-02-09 |
| 發明(設計)人: | 蒲鶴升;彭祥吉 | 申請(專利權)人: | 深圳市紫光同創電子有限公司 |
| 主分類號: | G06F15/78 | 分類號: | G06F15/78;G06F12/0875;G06F12/0877 |
| 代理公司: | 深圳國新南方知識產權代理有限公司 44374 | 代理人: | 周雷 |
| 地址: | 518000 廣東省深圳市南山區粵海*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 fpga 數據處理 方法 系統 | ||
本發明提供了基于FPGA的數據處理方法,所述數據處理方法通過DMAC將FPGA軟核的數據發送至以太網,包括以下步驟:步驟S10、所述FPGA軟核獲取當前空閑的描述符;步驟S20、所述FPGA軟核將數據長度值發送至DMAC,并通過所述DMAC將所述長度值寫入當前描述符對應的長度寄存器;步驟S30、所述FPGA軟核將數據更新至DDR與當前描述符對應的數據塊中;步驟S40、所述FPGA軟核數據更新結束后,通過控制寄存器將當前描述符的控制位置“0”;步驟S50、所述DMAC通過以太網接口將更新至所述數據塊中的數據發送至所述以太網。本發明在FPGA軟核的數據發送至以太網過程中,通過DMAC,使以太網與片外存儲設備(例DDR)不通過FPGA軟核而直接進行大數據量的傳輸,從而克服FPGA軟核的處理能力不足以匹配以太網的通信速率的問題。
【技術領域】
本發明涉及FPGA技術領域,尤其涉及一種基于FPGA的數據處理方法及系統。
【背景技術】
千兆以太網的硬件結構可分為MAC控制器和PHY處理芯片,其中,MAC控制器可通過FPGA(Field Programmable GateArray,現場可編程邏輯門陣列)的Ethernet IP核實現。在此基礎上,利用基于FPGA的Cortex M1軟核(FPGA軟核)配合CACHE設備,使以太網應用場景極大拓寬,例如,基于Cortex M1軟核的LwIP協議棧實現。但是,Cortex M1軟核具有低功耗、低系統主頻以及多CACHE運行周期開銷特性,這導致Cortex M1軟核的處理能力遠不能匹配以太網的通信速率。
因此,如何提高Cortex M1軟核的處理能力以匹配以太網的通信速率成為噬待解決的問題。
【發明內容】
本發明的目的在于提供了一種基于FPGA的嵌入式以太網數據處理方法及系統。
為達到上述目的,本發明提供了一種基于FPGA的數據處理方法,所述數據處理方法通過DMAC將FPGA軟核的數據發送至以太網,包括以下步驟:
步驟S10、所述FPGA軟核獲取當前空閑的描述符;
步驟S20、所述FPGA軟核將數據長度值發送至DMAC,并通過所述DMAC將所述長度值寫入當前描述符對應的長度寄存器;
步驟S30、所述FPGA軟核將數據更新至DDR與當前描述符對應的數據塊中;
步驟S40、所述FPGA軟核數據更新結束后,通過控制寄存器將當前描述符的控制位置“0”;
步驟S50、所述DMAC通過以太網接口將更新至所述數據塊中的數據發送至所述以太網。
優選的,步驟S40還包括,步驟S41、所述FPGA軟核讀取當前描述符的鏈接符,獲取下一空閑的描述符,并執行步驟S20。
優選的,步驟S50之前還包括,步驟S500、所述DMAC判斷當前描述符的控制位是否為0,若控制位為0,則執行步驟S50。
優選的,步驟S50之后,所述數據處理方法還包括,
步驟S60、所述DMAC數據發送結束后,通過控制寄存器將當前描述符的控制位置“1”;
步驟S70、所述DMAC讀取當前描述符的鏈接符,所述DMAC判斷下一描述符的控制位是否為0,若控制位為0,則執行步驟S50。
優選的,步驟S50具體為,
步驟S51、所述DMAC將更新至所述數據塊中的數據讀取到數據緩存器中;
步驟S52、所述DMAC數據讀取結束后,根據所述以太網用戶側的發送時序逐一發送數據;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市紫光同創電子有限公司,未經深圳市紫光同創電子有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011016311.9/2.html,轉載請聲明來源鉆瓜專利網。





