[發明專利]一種FPGA的單向鏈表數據存儲方法及系統有效
| 申請號: | 202010079637.X | 申請日: | 2020-02-04 |
| 公開(公告)號: | CN111259014B | 公開(公告)日: | 2023-01-10 |
| 發明(設計)人: | 王凱;張貞雷;魏紅楊;鄒曉峰;呂垣森 | 申請(專利權)人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/245;G06F16/2455;G06F3/06;G06F15/78 |
| 代理公司: | 濟南舜源專利事務所有限公司 37205 | 代理人: | 李舜江 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 fpga 單向 數據 存儲 方法 系統 | ||
本發明提供一種FPGA的單向鏈表數據存儲方法及系統,包括:將片內RAM和片外DDR均劃分為多個節點,將片內RAM節點和片外DDR節點依次構建成FPGA的單向鏈表,并設置節點的指針;將FPGA的寄存器地址配置為單向鏈表的索引地址;將數據包的配置信息緩存到片內RAM節點,所述數據包的數據緩存到片外DDR節點。本發明構建了單向鏈表的內存分配結構,節省了配置信息對寄存器的資源占用,解決了單模塊寄存器資源緊張的問題。
技術領域
本發明屬于芯片數據流控技術領域,具體涉及一種FPGA的單向鏈表數據存儲方法及系統。
背景技術
鏈表是一種數據結構,在內存中通過節點記錄內存地址而相互鏈接形成一條鏈的儲存方式。相比數組而言,鏈表在內存中不需要連續的區域,只需要每一個節點都能夠記錄下一個節點的內存地址,通過引用進行查找,這樣的特點也就造就了鏈表增刪操作時間消耗很小,而查找遍歷時間消耗很大的特點。
FPGA具有速度快、效率高、靈活穩定、集成度高等優點,所以在硬件邏輯驗證與設計中是十分必要的,目前FPGA芯片內經常需要緩存一些管理數據包,數據包內包含FPGA芯片需要讀取的數據和數據包的配置信息,PPGA芯片主要包含了可編程邏輯模塊、固定功能邏輯模塊(如乘法器)的數目及存儲器(如嵌入式RAM),其中,FPGA的基本可編程邏輯單元是由查找表和寄存器組成的。
現有技術FPGA讀取時存在以下缺陷:FPGA片內的緩存小,不能在片內存儲大量數據;FPGA片外的緩存大,但是片內模塊不方便直接管理片外的緩存數據;FPGA 在應用時并行操作較多,但是提高工作效率一般,直接讀取數據時會降低CPU的效率。
發明內容
針對現有技術的上述不足,本發明提供一種FPGA的單向鏈表數據存儲方法及系統,以解決上述技術問題。
第一方面,本發明提供一種FPGA的單向鏈表數據存儲方法,包括:
將片內RAM和片外DDR均劃分為多個節點,將片內RAM節點和片外DDR節點依次構建成FPGA的單向鏈表,并設置節點的指針;
將FPGA的寄存器地址配置為單向鏈表的索引地址;
將數據包的配置信息緩存到片內RAM節點,所述數據包的數據緩存到片外 DDR節點。
進一步的,所述方法還包括:
根據FPGA的存儲數據讀取指令獲取寄存器地址;
根據所述寄存器地址索引到待測數據包所在的RAM節點,并讀取待測數據包的配置信息;
根據片內RAM節點的指針索引到片外DDR節點,并讀取待測數據包的數據。
進一步的,所述方法還包括:
CPU通過總線讀取待測數據包的配置信息;
DAM通過DMA交互模塊讀取待測數據包的數據。
進一步的,所述方法還包括:
將所述單向鏈表的第一個片內RAM節點配置為鏈表頭;
所述鏈表頭內輸入鏈表配置信息。
進一步的,所述數據配置信息包括:數據包大小、數據包數量、數據包是否校驗信息和數據校驗位。
進一步的,所述鏈表配置信息包括的單向鏈表的數據類型,傳輸通道,優先級,路由信息和目的地址。
第二方面,本發明提供一種FPGA的單向鏈表數據存儲系統,包括:
結構分配單元,配置用于將片內RAM和片外DDR均劃分為多個節點,將片內RAM節點和片外DDR節點依次構建成FPGA的單向鏈表,并設置節點的指針;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州浪潮智能科技有限公司,未經蘇州浪潮智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010079637.X/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





