在现代嵌入式系统、工控设备、AI 加速计算等领域,M.2 (NGFF) 接口已经成为扩展高速存储、无线通信和计算能力的重要标准之一。特别是在 NXP i.MX 8M Plus 这样的嵌入式开发平台中,PCIe 3.0 M.2 接口通常用于连接 NVMe SSD、Wi-Fi 6/7 无线模块、AI 加速模块(如 Google Edge TPU)等。
本文将基于 NXP 8MPLUS-BB 开发板的 M.2 (NGFF) 设计,从 硬件架构、PCIe 底层驱动实现、Linux 驱动支持及产品应用 角度深入解析其核心技术。
1. M.2 (NGFF) 物理接口概览
M.2(原名 NGFF,Next Generation Form Factor)是 mSATA 和 Mini PCIe 的继任者,采用更紧凑的物理尺寸,并支持多种总线协议,包括:
- PCIe (PCI Express) —— NVMe SSD、高速 AI 加速卡
- SATA (Serial ATA) —— 传统 SATA SSD
- USB 2.0 / 3.0 —— Wi-Fi、蓝牙模块
- SDIO / UART / I²C / PCM —— 适用于无线通信模块
📌 Key ID 标准定义:
Key ID | 支持的协议 | 常见设备 |
---|---|---|
B-Key | PCIe x2 / SATA / USB 3.0 | SATA SSD、4G/5G 模块 |
M-Key | PCIe x4 | NVMe SSD、AI 加速卡 |
B+M-Key | PCIe x2 / SATA | 兼容 SATA SSD 或 PCIe SSD |
E-Key | PCIe x1 / USB 2.0 | Wi-Fi / Bluetooth 模块 |
A+E Key | PCIe x1 / USB 3.0 | 无线网卡、网络适配器 |
📌 NXP 8MPLUS-BB 采用的是 Key E M.2 接口,主要用于 Wi-Fi / AI 加速等模块。

2. M.2 (NGFF) 硬件架构解析
在 NXP 8MPLUS-BB 设计中,M.2 插槽由多个关键子系统组成:
① M.2 (NGFF) 插座及信号分配
📌 硬件框架(基于原理图分析):
- PCIe TX/RX(PCIe 发送/接收信号)
- USB 2.0 D+/D-(无线模块 BT/Wi-Fi 连接)
- UART(M.2 UART_RXD / TXD / RTS / CTS)—— 用于调试或与外部 MCU 交互
- I²C(M.2 I2C_SDA / SCL)—— 控制低速设备
- SDIO(M.2 SD_CMD / DATA)—— 可能用于 Wi-Fi 模块通信
- PCM(M.2 PCM_CLK / SYNC / IN / OUT)—— 用于音频数据传输,如语音通信模块
② PCIe 3.0 信号路径
- PCIe TX / RX 信号 → 直接连到 M.2 插槽(用于高速数据传输)。
- PCIe CLK 时钟信号
- 时钟芯片 GV0241AKLF 生成 100MHz PCIe 参考时钟。
- 外部 25MHz 晶振提供基础时钟。
- PCIe PERST#(复位)、WAKE#(唤醒)信号 → 用于初始化和唤醒 M.2 设备。
③ PCIe 复位 & 唤醒管理
- PCIe_nCLKREQ_3V3:PCIe 设备请求时钟信号。
- PCIe_nWAKE_3V3:PCIe 设备唤醒信号。
- PCIe_PERST#(PCIe Reset):初始化时复位设备。
④ M.2 供电系统
- VPCIE_3V3(3.3V)
- VDD_1V8(1.8V)
- MOSFET Q13(电源管理)
📌 总结:M.2 (NGFF) 插槽是一个高度集成的接口,支持 PCIe、USB、UART、I²C、SDIO、PCM,并具备独立的电源管理和信号控制。
3. Linux 内核驱动支持
📌 Linux 内核 PCIe 设备树(DTS)配置
&pcie {
status = "okay";
num-lanes = <1>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie>;
reset-gpios = <&gpio3 5 GPIO_ACTIVE_LOW>;
wake-gpios = <&gpio3 6 GPIO_ACTIVE_HIGH>;
clock-names = "pcie_refclk";
clocks = <&clk 3>;
};
📌 Linux PCIe 驱动加载流程
- PCIe 总线初始化(
drivers/pci/controller
) - PCIe 设备枚举
- PCIe 设备驱动绑定(如
nvme
或ath10k
Wi-Fi) - 用户态设备管理(
lspci
、dmesg
查看设备信息)
4. 典型产品应用场景
① Wi-Fi 6/7 模块
- 适用于嵌入式设备、工业控制、智能家居。
② NVMe SSD 高速存储
- 适用于边缘计算、机器学习存储加速。
③ AI 加速卡(Google Edge TPU)
- 适用于计算机视觉、推理计算。
5. 结论
📌 核心特点总结:
- M.2 (NGFF) 是现代嵌入式扩展的重要标准,兼容 PCIe、USB、UART、I²C、SDIO、PCM。
- 在 NXP 8MPLUS-BB 设计中,M.2 Key E 插槽支持 Wi-Fi 6/7、AI 加速、无线通信等应用。
- Linux PCIe 驱动支持设备自动初始化、配置、管理,适用于高性能计算和通信设备。
- 未来发展方向包括 PCIe 4.0/5.0、更低功耗 AI 加速模块、更高带宽无线通信模块。
🚀 M.2 (NGFF) PCIe 3.0 方案,正在加速未来智能硬件的发展!