M.2 是電腦內部擴充卡規格,可提供 PCIe、SATA 和 USB 等介面的裝置,如 Wi-Fi、SSD 等。
M.2 模組長方形,一端有雙面金手指接腳,另一端有半圓形孔,允許寬度有 12、16、22、和 30 mm,長度有 16、26、30、38、42、60、80、和 110 mm,例如模組碼 2280 代表 22 mm 寬、80 mm 長。接腳雙面共有 75 個位置,最多使用 67 pins,0.5 mm pitch、背面插中間。
考量 PCIe/SATA/USB 等各自介面的訊號和電氣特性不同,定義了多組的插槽防呆鍵位 (目前實體產品有 A/B/E/M key) 來避免誤插而導致運作不正常或損壞。
Wi-Fi/Bluetooth、GPS 或 NFC 介面卡等 M.2 模組,原先多屬於 USB 介面,主要採用 A/E key。
目前 M.2 SSD 大多是 M key 2280 模組,採用 NVMe PCIe x4。而 B+M 模組有 2242 和 2280,主要是 SATA、少數 PCIe x2。此外類似的有 mSATA、Apple 用的。
支援 M.2 SSD 插槽有兩種類型:B key (另稱socket 2) 和 M key (另稱socket 3)。
| 設備 | 插座 | Key | SSD 介面 | |
|---|---|---|---|---|
| 筆電 | 2 | B | 可能僅支援 SATA | PCIe ×2, SATA |
| 3 | M | PCIe or SATA | PCIe ×4, SATA |
| 插座 | Key | 大小 | 裝置 | |
|---|---|---|---|---|
| ? | A | 1630, 2230, 3030 | WiFi, Bluetooth, NFC and/or WiGig | 2 of PCIe ×1, USB 2.0, I2C and DP ×4 |
| Socket 1 | E | 1630, 2230, 3030 | WiFi, Bluetooth, NFC and/or GPS/GNSS | 2 of PCIe x1, USB 2.0, I2C, SDIO, UART, PCM and CNVi |
| Socket 2 | B | 3042, 2230, 2242, 2260, 2280, 22110 | 3G/LTE + GPS/GNSS or SSD | PCIe ×2, SATA, USB 2.0 and 3.0, audio, UIM, HSIC, SSIC, I2C and SMBus |
| Socket 3 | M | 2242, 2260, 2280, 22110 | SSD with PCIe or SATA interface | PCIe ×4, SATA and SMBus |
SATA SSD 是 B+M-keyed,可放在 B-keyed 或 M-keyed 插座
NVMe PCIe x4 SSD 是 M-keyed,不能放在 B-keyed 插座
| Pin | A | E | B | M | B 說明 |
|---|---|---|---|---|---|
| 1 | GND | GND | CONFIG_3 | CONFIG_3 | |
| 2 | 3.3V | 3.3V | 3.3V | 3.3 V | |
| 3 | USB D+ | USB D+ | GND | GND | |
| 4 | 3.3V | 3.3V | 3.3V | 3.3V | |
| 5 | USB D- | USB D- | GND | PERn3 | |
| 6 | LED1# | LED1# | FULL CARD POWER OFF# | N/A | 通知 Host |
| 7 | GND | GND | USB_D+ | PERp3 | |
| 8 | A | PCM_CLK/I2S SCK | W_DISABLE# | N/A | 通知 Host |
| 9 | SDIO CLK/SYSCLK | USB_D- | GND | ||
| 10 | PCM SYNC/I2S WS | GPIO_9/ DAS/DSS | DAS/DSS | ||
| 11 | SDIO CMD | GND | PETn3 | ||
| 12 | PCM_IN/I2S_IN | x | 3.3 V | ||
| 13 | SDIO DATA0 | PETp3 | |||
| 14 | PCM_OUT/I2S SD_OUT | 3.3 V | |||
| 15 | SDIO DATA1 | GND | |||
| 16 | LED2# | LED2# | 3.3V | ||
| 17 | A | SDIO DATA2 | PERn2 | ||
| 18 | GND | GND | 3.3 V | ||
| 19 | A | SDIO DATA3 | PERp2 | ||
| 20 | A | UART WAKE# | GPIO_5 | N/A | |
| 21 | A | SDIO WAKE# | CONFIG_0 | CONFIG_0 | |
| 22 | A | UART RxD | GPIO_6 | N/A | |
| 23 | A | SDIO_RESET#/ TX_BLANKING | GPIO_11 | PETn2 | |
| 24 | A | E | GPIO_7 | N/A | |
| 25 | A | DPR | PETp2 | 模組輸出 | |
| 26 | A | GPIO_10 | N/A | ||
| 27 | A | GND | GND | ||
| 28 | A | GPIO_8 | N/A | ||
| 29 | A | PERn1 / USB RX- /SSIC-RxN | PERn1 | or USB 3.0 RX- | |
| 30 | A | UIM-RESET | N/A | ||
| 31 | A | PERp1 / USB RX+ / SSIC-RxP | PERp1 | or USB 3.0 RX+ | |
| 32 | A | UART TxD | UIM-CLK | N/A | Host 輸出 |
| 33 | GND | GND | GND | GND | |
| 34 | A | UART CTS | UIM-DATA | N/A | |
| 35 | PETp0 | PETp0 | PETn1 / USB TX- / SSIC-TxN | PETn1 | or USB 3.0 TX- |
| 36 | A | UART RTS | UIM-PWR | N/A | Host 輸出 |
| 37 | PETn0 | PETn0 | PETp1 / USB TX+ / SSIC-TxP | PETp1 | or USB 3.0 TX+ |
| 38 | Vendor defined | Vendor defined | DEVSLP | DEVSLP | |
| 39 | GND | GND | GND | GND | |
| 40 | Vendor defined | Vendor defined | GPIO_0/SMB_CLK | N/A | |
| 41 | PERp0 | PERp0 | SATA-B+/PERn0 | SATA-B+/PERn0 | |
| 42 | Vendor defined | Vendor defined | GPIO_1/SMB_DATA | N/A | |
| 43 | PERn0 | PERn0 | SATA-B-/PERp0 | SATA-B-/PERp0 | |
| 44 | COEX3 | COEX3 | GPIO_2/ALERT# | N/A | |
| 45 | GND | GND | GND | GND | |
| 46 | COEX2 | COEX_RxD | GPIO_3 | N/A | |
| 47 | PEFCLKP0 | PEFCLKP0 | SATA-A-/PETn0 | SATA-A-/PETn0 | |
| 48 | COEX1 | COEX_TxD | GPIO_4 | N/A | |
| 49 | PEFCLKN0 | PEFCLKN0 | SATA-A+/PETp0 | SATA-A+/PETp0 | |
| 50 | SUSCLK | SUSCLK | PERST# | PERST# | |
| 51 | GND | GND | GND | GND | |
| 52 | PERST0# | PERST0# | CLKREQ# | CLKREQ# | Reference clock request signal |
| 53 | CLKREQ0# | CLKREQ0# | REFCLKN | REFCLKN | PCIe Reference Clock signals (100 MHz) |
| 54 | W_DISABLE2# | W_DISABLE2# | PEWAKE# | PEWAKE# | PCIe WAKE# Open Drain with pull up on platform. Active Low. |
| 55 | PEWake0# | PEWake0# | REFCLKP | REFCLKP | PCIe Reference Clock signals (100 MHz) |
| 56 | W_DISABLE1# | W_DISABLE1# | MFG1 | MFG1 | |
| 57 | GND | GND | GND | GND | |
| 58 | SMB_DATA | I2C_DATA | MFG2 | MFG2 | |
| 59 | Reserved | Reserved/PETp1 | ANTCTL0 | x | Host 輸出 |
| 60 | SMB_CLK | I2c_CLK | COEX3 | Host 輸出 | |
| 61 | Reserved | Reserved/PETn1 | ANTCTL1 | Host 輸出 | |
| 62 | ALERT# | ALERT# | COEX_TXD | Host 輸出 | |
| 63 | GND | GND | ANTCTL2 | Host 輸出 | |
| 64 | Reserved | Reserved | COEX_RXD | Host 輸出 | |
| 65 | Reserved | Reserved/PERp1 | ANTCTL3 | Host 輸出 | |
| 66 | UIM_SWP | UIM_SWP/PERST1# | SIM DETECT | 模組輸出 | |
| 67 | Reserved | Reserved/PERn1 | RESET# | N/A | 模組輸出 |
| 68 | UIM_POWER_SNK | UIM_POWER_SNK/ CLKREQ1# | SUSCLK | SUSCLK | Host 輸出 32.768 kHz |
| 69 | GND | GND | CONFIG_1 | CONFIG_1 | |
| 70 | UIM_POWER_SRC | UIM_POWER_SRC/ PEWAKE1# | 3.3V/VBAT | 3.3 V | |
| 71 | Reserved | Reserved/REFCLKp1 | GND | GND | |
| 72 | 3.3V | 3.3V | 3.3V/VBAT | 3.3 V | |
| 73 | Reserved | Reserved/REFCLKn1 | GND | GND | |
| 74 | 3.3V | 3.3V | 3.3V/VBAT | 3.3 V | |
| 75 | GND | GND | CONFIG_2 | CONFIG_2 |
CONFIG_x:Defines module type
DAS/DSS:Device Activity Signal / Disable Staggered Spinup
PERST#:PCIe reset
PERp0、PERn0、PETp0、PETn0、PERp1、PERn1、PETp1、PETn1、PERp2、PERn2、PETp2、PETn2、PERp3、PERn3、PETp3、PETn3:PCIe Lane
DEVSLP:Device Sleep,high 是 host 通知 SSD 進入 low power state.
MFGx:Manufacturing pin. Use determined by vendor.
參考