NVME协议-NVME概述
参考资料:《深入浅出SSD》 , NVME协议1.3
NVME简述
Non-Volatile Memory Express,非易失性存储器标准,是跑在PCIE接口上的标准协议,
是一种Host与SSD之间通信的协议。
NVME作用
制定了Host与SSD之间的通讯命令格式以及命令的执行过程
NVME命令
1. NVME包含两种命令:Admin Command,IO Command
2. Admin Command作用:用于Host管理和控制SSD
IO Command作用:用于Host和SSD之间传输数据
NVME1.3支持的Admin Command
NVME支持的IO Command
NVME命令的执行过程
Step1. Host写指令到SQ中
Step2. Host写DoorBell,通知SSD取指令
Step3. SSD收到通知,从SQ中取走指令
Step4. SSD执行指令
Step5. SSD执行指令完成,将执行结果写入CQ中
Step6. SSD生成中断,通知Host,指令执行完成
Step7. Host收到通知,开始处理CQ,查看指令完成后返回的状态和数据
Step8. Host写DoorBell,通知SSD执行结果已处理,然后释放CQ