[发明专利]一种基于FPGA的NVMe SSD命令处理方法有效

专利信息
申请号: 201910420004.8 申请日: 2019-05-20
公开(公告)号: CN110109626B 公开(公告)日: 2022-01-25
发明(设计)人: 张京超;刘旺;孟凡廓;朱凯晖;乔立岩;彭喜元 申请(专利权)人: 哈尔滨工业大学
主分类号: G06F3/06 分类号: G06F3/06
代理公司: 哈尔滨市松花江专利商标事务所 23109 代理人: 时起磊
地址: 150001 黑龙*** 国省代码: 黑龙江;23
权利要求书: 查看更多 说明书: 查看更多
摘要: 一种基于FPGA的NVMe SSD命令处理方法,它属于数据存储技术领域。本发明解决了随着NVMe SSD读写操作的命令增大或命令种类增多,流程控制状态机的复杂度增加的问题。本发明对NVMe SSD命令处理流程控制模块进行设计,将多种命令执行流程相结合,使用一个简单的流程控制状态机即可实现所有命令执行流程,便于开发和维护;而且在保证功能完整的同时,优化了流程控制状态机的状态数量及状态转移条件,减少了流程控制状态机中判断步骤的时间开销,提高了开发效率,与传统方法相比,采用本发明方法可以节省FPGA内部43%的触发器资源和65%的查找表资源。本发明可以应用于数据存储技术领域。
搜索关键词: 一种 基于 fpga nvme ssd 命令 处理 方法
【主权项】:
1.一种基于FPGA的NVMe SSD命令处理方法,其特征在于,该方法包括以下步骤:步骤A1、FPGA接收到用户命令后更新命令提交队列,并向NVMe SSD发送写寄存器请求,更新NVMe SSD中的命令提交队列尾门铃寄存器,跳转至步骤A2;步骤A2、FPGA进入等待状态,并判断是否接收到数据包,当FPGA接收到数据包时,跳转至步骤A3;步骤A3、判断接收的数据包是否为写内存请求,若是写内存请求,则跳转至步骤A4;否则,跳转至步骤A8;步骤A4、判断接收的数据包是否为写数据请求;若是写数据请求,则FPGA接收从NVMe SSD读取的数据,跳转至步骤A2;否则,跳转至步骤A5;步骤A5、判断接收的数据包是否为写命令完成队列请求,若是写命令完成队列请求,则跳转至步骤A6;否则,跳转至步骤A12;步骤A6、判断命令是否成功执行,若成功执行,则更新命令完成队列,跳转至步骤A7;否则,跳转至步骤A12;步骤A7、FPGA向NVMe SSD发送写内存请求,更新NVMe SSD中的命令完成队列头门铃寄存器,跳转至步骤A13;步骤A8、判断接收的数据包是否为读内存请求,若是读内存请求,则跳转至步骤A9;否则,跳转至步骤A12;步骤A9、判断接收的数据包是否为读命令提交队列请求,若是读命令提交队列请求,则FPGA发送完成报文,返回NVMe命令信息,跳转至步骤A2;否则,跳转至步骤A10;步骤A10、判断接收的数据包是否为读地址列表请求,若是读地址列表请求,则FPGA发送完成报文,返回地址列表信息,跳转至步骤A2;否则,跳转至步骤A11;步骤A11、判断接收的数据包是否为读数据请求,若是读数据请求,则FPGA发送完成报文,返回要存储的数据,跳转至步骤A2;否则,跳转至步骤A12;步骤A12、报错,跳转至步骤A13;步骤A13、结束。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201910420004.8/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top