马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
NVMe高速存储系统中数据缓存控制器数据缓存控制器主要实现了对大量突发数据的缓存、AXI4接口与AXI4-Stream接口之间的转换和NVMe命令的生成等功能。数据缓存控制器的整体架构如图1所示。 图1 整体框图 根据功能需求将数据缓存控制器划分为了3个模块:流程控制模块、接口转换模块和MIG模块。 (1)流程控制模块:流程控制模块主要实现三个功能,一是根据用户命令或输入的数据量大小来组装相应的NVMe提交命令,并发送至NVMeHost控制器;二是控制接口转换模块工作的开启与关闭;三是实现乒乓操作,来提高系统传输性能。 (2)接口转换模块:接口转换模块负责完成将DDR控制器的AXI4接口转换为与其他模块进行数据交互的AXI4-Stream接口。
(3)MIG模块:MIG 模块是Xilinx提供的DDR存储控制器,可以帮助用户快速的搭建工程,完成对DDR等外部存储器的控制。MIGIP核内部由用户接口、存储控制器和物理层模块三部分组成。同时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站搜用户名: 专注与守望
|