You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于M.2接口协议及相关存储设备通信机制的技术问询

关于M.2接口协议及相关存储设备通信机制的技术问询

注意:我在这个问题里说的有些内容是错误的,别忘了看已采纳的答案。

先跟大家分享我梳理的一些存储协议相关的认知,可能有些地方不对,欢迎指正:

  • 其实不存在专门用于数据传输的SATA软件协议,SATA光驱、硬盘、SSD都是用SCSI作为软件协议的。很多人不知道这点,我甚至见过SE上的采纳答案都没意识到,就连德语维基百科都把AHCI和NVMe对比,其实应该是SCSI和NVMe对比才对——认为AHCI是SATA用来传输数据的软件协议,这是个很大的误区。
  • 老IDE硬盘用的ATAPI其实是ATA之上的SCSI协议,所以这类设备本质上也用SCSI。
  • AHCI只被SATA控制器用来枚举磁盘,磁盘本身传输数据并不用它。我有一块普通SATA SSD和SATA光驱,lshw的输出能证明两者都用SCSI作为软件协议,看以bus info:开头的行就知道:
*-cdrom
description: DVD-RAM writer
product: BD-RE  BH16NS55
vendor: HL-DT-ST
physical id: 0
bus info: scsi@4:0.0.0
logical name: /dev/cdrom
logical name: /dev/cdrw
logical name: /dev/dvd
logical name: /dev/dvdrw
logical name: /dev/sr0
version: 1.01
capabilities: removable audio cd-r cd-rw dvd dvd-r dvd-ram
configuration: ansiversion=5 status=nodisc

*-disk
description: ATA Disk
product: SanDisk SDSSDH3
physical id: 1
bus info: scsi@5:0.0.0
logical name: /dev/sda
version: 20RL
serial: 2140LR450907
size: 931GiB (1TB)
capabilities: partitioned partitioned:luks
configuration: ansiversion=5 logicalsectorsize=512 sectorsize=512

接下来是我关于M.2接口的几个疑问,希望懂行的朋友解答:

  • M.2接口支持PCIe、SATA、USB三种物理层类型(主要定义电压这类物理参数),但这些和软件协议无关。那采用SATA物理层的M.2磁盘,是需要用AHCI,还是只靠SCSI就能传输容量这类设备信息?
  • SATA用AHCI做设备枚举、SCSI传数据;PCIe NVMe磁盘用NVMe传数据,那它用什么协议做枚举?总不可能是NVMe吧,毕竟PCIe显卡就不用NVMe做枚举,肯定有另一种专门的协议。
  • 维基提到M.2也支持USB,那这类基于USB物理层的M.2设备,枚举和数据传输分别用什么软件协议?
  • 为什么市面上没有M.2 USB磁盘?(这里指的是物理层原生用USB、直接插主板M.2插槽的设备,不是那种把M.2硬盘装在USB转接外壳里的产品)
  • 为什么没有M.2 SATA NVMe磁盘?(也就是物理层用SATA、软件协议用NVMe的存储设备)

备注:内容来源于stack exchange,提问作者zomega

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 15:47:48