zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

[SSD固态硬盘协议 4] NVME 命令队列 SQ/CQ 的奥秘

队列命令协议队列 硬盘 奥秘 SSD 固态
2023-09-14 09:10:00 时间

前言

NVMe(over PCIE) 的速度远超 AHCI(over SATA), 其中一个重要的原因是 NVME 的队列个数远超 AHCI。NVME 队列深度达到了64K,并且支持队列个数最大可达64K。AHCI 只有一个 Queue, Queue 深度只有32。作为NVME 重点中的重点,本文将浓墨重彩介绍命令队列SQ 和 CQ.

1. SQ 和 CQ 是什么?

NVMe定义的命令有两种: Admin Command和 IO Command。

当Host要下发Admin command时,需要一个放置Admin command的队列,这个队列就叫做Admin Submission Queue, 简称Admin SQ.

Device执行完成Admin command时,会生成一个对应的Completion回应,此时也需要一个放置Completion的队列,这个队列就叫做Admin Comp