數據緩存控制器主要實現了對大量突發數據的緩存、AXI4接口與AXI4-Stream接口之間的轉換和NVMe命令的生成等功能。數據緩存控制器的整體架構如圖1所示。
圖1數據緩存控制器整體架構
根據功能需求將數據緩存控制器劃分為了3個模塊:流程控制模塊、接口轉換模塊和MIG模塊。
(1)流程控制模塊:流程控制模塊主要實現三個功能,一是根據用戶命令或輸入的數據量大小來組裝相應的NVMe提交命令,并發送至NVMe Host控制器;二是控制接口轉換模塊工作的開啟與關閉;三是實現乒乓操作,來提高系統傳輸性能。
(2)接口轉換模塊:接口轉換模塊負責完成將DDR控制器的AXI4接口轉換為與其他模塊進行數據交互的AXI4-Stream接口。
(3)MIG模塊:MIG模塊是Xilinx提供的DDR存儲控制器,可以幫助用戶快速的搭建工程,完成對DDR等外部存儲器的控制。MIG IP核內部由用戶接口、存儲控制器和物理層模塊三部分組成。同時MIG IP還支持AXI4接口,用戶可以直接通過AXI4接口訪問DDR存儲器。
如圖2所示,它為數據緩存控制器的頂層模塊框圖。
圖2 數據緩存控制器的頂層模塊框圖
數據緩存控制器的外部接口信號主要包括與Microblaze處理器、NVMe Host控制器、以太網控制器、外部DDR存儲器相連接的端口。其中AXI4_Lite接口用于配置數據緩存控制器的寄存器;M_AXIS_ENTRY接口用于向NVMe Host控制器發送NVMe命令;S_AXIS_DATA接口用于接收輸入的數據流數據;M_AXIS_DATA接口用于輸出的緩存數據;M_AXI_DDR用于讀寫DDR內緩存的數據;NVMe_Done信號用于指示命令執行成功;NVMe_Error信號用于指示命令執行錯誤。
數據緩存控制器的頂層接口信號定義如表1所示。
對相關視頻感興趣者請看B站。搜用戶名:專注與守望
審核編輯 黃宇
-
控制器
+關注
關注
114文章
16959瀏覽量
182870 -
SSD
+關注
關注
21文章
2947瀏覽量
119098 -
存儲系統
+關注
關注
2文章
422瀏覽量
41240 -
數據緩存
+關注
關注
0文章
24瀏覽量
7315
發布評論請先 登錄
評論