一种基于NVMe的数据读取方法、装置及系统制造方法及图纸

技术编号:24019775 阅读:60 留言:0更新日期:2020-05-02 04:51
一种基于NVMe的数据读取方法,装置和系统。该方法包括:主机触发读指令,读指令中携带第一地址的指示信息,第一地址为主机开放给NVMe控制器寻址访问的地址,NVMe控制器获取到读指令后,向主机发送数据报文,数据报文中携带第一地址和载荷数据,主机接收到数据报文后,根据第一地址确定第二地址,并将载荷数据存入第二地址指示的存储空间。第二地址可以为主机的私有内存地址。主机通过将第一地址映射为第二地址,割裂了第二地址与通信协议的关系,主机对第二地址的访问可以不受通信协议的约束。

A data reading method, device and system based on nvme

【技术实现步骤摘要】
【国外来华专利技术】一种基于NVMe的数据读取方法、装置及系统
本申请涉及存储领域,尤其涉及一种基于非易失性高速传输总线(non-volatile memory express,NVMe)的数据读取方法、装置和存储设备。
技术介绍
随着存储技术的发展,尤其是在使用闪存(Flash)作为存储介质的固态硬盘(solid state drive,SSD)中,传统的机械硬盘设计的串行高级技术附件(serial advanced technology attachment,SATA)接口与串行ATA高级主控接口/高级主机控制器接口(Serial ATA Advanced Host Controller Interface,AHCI)标准已经无法满足存储设备的要求,成为限制存储设备处理能力的一大瓶颈。非易失性高速传输总线(non-volatile memory express,NVMe)应运而生,NVMe是一种允许主机(Host)和非易失性存储(non-volatile memory,NVM)子系统通信的接口,NVM子系统(包括控制器和存储介质)通信的该接口以寄存器接口的方式附加到高本文档来自技高网...

【技术保护点】
一种基于NVMe的数据读取系统,其特征在于,所述系统包括主机、NVMe控制器和存储介质;/n所述存储介质用于存储数据;/n所述主机用于触发读指令,所述读指令中携带指示信息,所述指示信息用于指示第一地址,所述第一地址为NVMe控制器可寻址的地址;/n所述NVMe控制器用于获取所述读指令,从所述存储介质中读取所述读指令对应的待读取数据,并向所述主机发送第一数据报文,所述第一数据报文中携带所述第一地址和第一载荷数据,所述待读取数据包含所述第一载荷数据;/n所述主机还用于接收所述第一数据报文,根据所述第一地址确定第二地址,并将所述第一载荷数据写入所述第二地址指示的存储单元,所述第二地址为所述主机可寻址...

【技术特征摘要】
【国外来华专利技术】一种基于NVMe的数据读取系统,其特征在于,所述系统包括主机、NVMe控制器和存储介质;
所述存储介质用于存储数据;
所述主机用于触发读指令,所述读指令中携带指示信息,所述指示信息用于指示第一地址,所述第一地址为NVMe控制器可寻址的地址;
所述NVMe控制器用于获取所述读指令,从所述存储介质中读取所述读指令对应的待读取数据,并向所述主机发送第一数据报文,所述第一数据报文中携带所述第一地址和第一载荷数据,所述待读取数据包含所述第一载荷数据;
所述主机还用于接收所述第一数据报文,根据所述第一地址确定第二地址,并将所述第一载荷数据写入所述第二地址指示的存储单元,所述第二地址为所述主机可寻址的地址。


根据权利要求1所述的系统,其特征在于,所述主机完成对所述第二地址指示的存储单元的写操作后,还用于对所述第二地址指示的存储单元中的数据进行操作。


根据权利要求2所述的系统,其特征在于,所述NVMe控制器还用于触发完成队列条目CQE,所述CQE用于指示所述NVMe控制器完成所述读指令指示的读操作;
所述主机对所述第二地址指示的存储单元中的数据进行操作后,还用于获取所述完成队列条目CQE。


根据权利要求2或3所述的系统,其特征在于,所述主机对所述第二地址指示的存储单元中的数据进行操作后,还用于释放所述第二地址指示的存储单元。


根据权利要求1-4任一项所述的系统,其特征在于,所述主机触发所述读指令前,还用于为所述读指令分配所述第二地址指示的存储单元,并记录所述第一地址与所述第二地址的对应关系。


根据权利要求5所述的系统,其特征在于,所述读指令的待读取数据对应至少两个数据报文,所述主机为所述读指令分配至少两个存储单元。



[根据细则91更正18.07.2019]
根据权利1所述的系统,其特征在于,所述主机用于根据所述第一地址和所述第一载荷数据在所述待读取数据中的顺序确定所述第二地址。


根据权利要求7所述的系统,其特征在于,所述NVMe控制器还用于向所述主机发送第二数据报文,所述第二数据报文中携带所述第一地址和第二载荷数据,所述待读取数据包含所述第二载荷数据;
所述主机还用于接收所述第二数据报文,并根据接收所述第一数据报文和所述第二数据报文的顺序确定所述第一载荷数据和所述第二载荷数据在所述待读取数据中的顺序。


根据权利要求7所述的系统,其特征在于,所述第一数据报文中还携带所述第一载荷数据在所述待读取数据中的偏移量,所述偏移量用于指示所述第一载荷数据在所述待读取数据中的顺序。


根据权利要求1-9任一项所述的系统,其特征在于,所述第一地址为所述NVMe控制器可寻址的PCIe地址,所述第一数据报文为PCIe报文;所述第二地址指示的存储单元为所述主机的内存空间。


一种基于NVMe的数据读取方法,其特征在于,所述方法包括:
主机触发读指令,所述读指令中携带指示信息,所述指示信息用于指示第一地址,所述第一地址为NVMe控制器可寻址的地址;
所述主机接收所述NVMe控制器发送的第一数据报文,所述第一数据报文中携带所述第一地址和第一载荷数据;
所述主机根据所述第一地址确定第二地址,所述第二地址为所述主机可寻址的地址;
所述主机将所述第一载荷数据写入所述第二地址指示的存储单元。


根据权利要求11所述的方法,其特征在于,所述主机完成对所述第二地址指示的存储单元的写操作后,所述方法还包括:
所述主机对所述第二地址指示的存储单元中的数据进行操作。


根据权利要求12所述的方法,其特征在于,所述主机对所述第二地址指示的存储单元中的数据进行操作后,所述方法还包括:
所述主机获取所述NVMe控制器触发的完成队列条目CQE,所述CQE用于指示所述NVMe控制器完成所述读指令指示的读操作。


根据权利要求12或13所述的方法,其特征在于,所述主机对所述第二地址指示的存储单元中的数据进行操作后,所述方法还包括:
所述主机释放所述第二地址指示的存储单元。


根据权利要求11-14任一项所述的方法,其特征在于,所述主机触发所述读指令前,所述方法还包括:
所述主机为所述读指令分配所述第二地址指示的存储单元,并记录所述第一地址与所述第二地址的对...

【专利技术属性】
技术研发人员:吉辛·维克多李君瑛周冠锋林嘉树
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1