[元带你学NVMe协议] NVME 命令队列 SQ/CQ 的奥秘
文章目录
- 前言
- 1. SQ 和 CQ 是什么?
- 2. SQ/CQ 有多少?
- 3. SQ/CQ 如何更新
- 4. SQ/CQ 执行流程
- 主机和SSD如何同步队列信息?
- 队列优先级
- 总结
前言
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
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
