What is the theoretical-terminological difference between M.2, SATA, PCIe?
SATA : is a bus interface
PCIe : is a bus interface
M.2 : is a physical connector
If that's the case, how could something be both SATA
and PCIe
at the same time?
Also, U.2
, SATA
and SATAe
are all physical connectors.
Is SATA
both physical connector and bus interface?
As I know, ATA
uses IDE
protocol.SATA
uses AHCI
protocol.PCIe gen4
uses NVMe
protocol.
And something cannot be IDE
, AHCI
, and NVMe
at the same time.
But how could something use different bus interfaces
at once?
Solution 1:
Because, as you say, m.2 is a connector, not a protocol.
The m.2 connector supports a different set of pins depending on what protocol you want to use it for. A connector can have both PCIe, SATA and USB wired up to it depending on what it is to be used for.
From Wikipedia: M.2 the M.2 connector can have different notches and pins wired up for different uses:
Key ID | Notched pins | Provided interfaces |
---|---|---|
A | 8–15 | 2× PCIe ×1, USB 2.0, I2C and DP ×4 |
B | 12–19 | PCIe ×2, SATA, USB 2.0 and 3.0, audio, UIM, HSIC, SSIC, I2C and SMBus |
E | 24–31 | 2× PCIe ×1, USB 2.0, I2C, SDIO, UART, PCM and CNVi |
M | 59–66 | PCIe ×4, SATA and SMBus |