嵌入式知识篇---PCle
PCIe是Peripheral Component Interconnect Express的缩写,中文通常称为“快速外设互连”。它是一种高速串行计算机扩展总线标准,作用是把 CPU/SoC 和外部设备(如 SSD、GPU、网卡、采集卡)连接起来,并让它们高速通信。
在 Jetson 边缘计算平台中,PCIe 直接决定了你能接什么外设、接多少、跑多快。
一句话:PCIe 就是 SoC 对外的高速公路,车道越宽、限速越高,数据跑得就越快。
一、核心概念:通道(Lane)、版本、带宽
PCIe 的传输能力由通道数量(Lanes)和版本(Gen)共同决定。
1.1 通道宽度(x1 / x4 / x8 / x16)
x1:1 条数据传输通道
x4:4 条通道,带宽为 x1 的 4 倍
x8 / x16:用于显卡或高速存储卡
1.2 版本与带宽(每通道单向)
| PCIe 版本 | 每通道速率 | 编码方式 | 有效带宽(x1 单向) | x4 有效带宽 |
|---|---|---|---|---|
| Gen 1 | 2.5 GT/s | 8b/10b | 250 MB/s | 约 1 GB/s |
| Gen 2 | 5 GT/s | 8b/10b | 500 MB/s | 约 2 GB/s |
| Gen 3 | 8 GT/s | 128b/130b | 约 985 MB/s | 约 3.94 GB/s |
| Gen 4 | 16 GT/s | 128b/130b | 约 1.97 GB/s | 约 7.88 GB/s |
| Gen 5 | 32 GT/s | 128b/130b | 约 3.94 GB/s | 约 15.76 GB/s |
GT/s = Giga Transfers per second(每秒十亿次传输)
二、实战意义:你能用 PCIe 接什么?(Jetson 场景)
2.1 常见 PCIe 设备
| 设备类型 | 典型配置 | 需要带宽 | 用途 |
|---|---|---|---|
| NVMe SSD | PCIe Gen3 x4 | ~3.5 GB/s | 高速存储、系统盘、数据集加载 |
| 千兆网卡 | PCIe Gen2 x1 | 125 MB/s | 增加独立网口(Jetson 自带一个) |
| 万兆网卡 | PCIe Gen3 x4 | 1.25 GB/s | 大数据回传、多机协同 |
| USB 3.0 扩展卡 | PCIe Gen2 x1 | ~400 MB/s | 扩 USB 口(接多摄像头/U盘) |
| AI 加速卡(如 Google Coral) | PCIe Gen2 x1 | ~400 MB/s | 增加推理算力 |
| 多路视频采集卡 | PCIe Gen2 x4 | ~1.6 GB/s | 接 4~8 路 HDMI/SDI 输入 |
| FPGA 加速器 | PCIe Gen3 x4 | ~3.5 GB/s | 自定义信号处理 |
2.2 Jetson 原生的 CSI 摄像头(PCIe 没有直接关系)
摄像头走的是CSI 接口,不是 PCIe。
但如果用CSI 转 PCIe的桥接芯片(如使用多路采集卡),则摄像头数据会经过 PCIe 进入 SoC。
三、Jetson Orin 系列 PCIe 能力深度对比
| 特性 | Jetson Orin Nano | Jetson Orin NX |
|---|---|---|
| PCIe 版本 | Gen 3 | Gen 4 |
| 总通道数 | 5 条(1×4 + 1×1) | 8 条(可拆分为 1×4 + 3×1 或 2×4) |
| 最大带宽(总计) | ~3.94 GB/s(Gen3 x4)+ ~0.985 GB/s(Gen3 x1) ≈4.9 GB/s | ~7.88 GB/s(Gen4 x4)+ 3×1.97 GB/s(Gen4 x1) ≈13.8 GB/s |
| Root Complex 模式 | ✅ 支持(作为主机接设备) | ✅ 支持 |
| Endpoint 模式 | ❌ 不支持 | ✅ 支持(可作为设备被其他 CPU 控制) |
Root Complex= 主板角色,可以连接外设(SSD/网卡)。
Endpoint= 设备角色,像一块 PCIe 卡被别的电脑控制。
四、从 PCIe 视角解释 Orin Nano 和 NX 的差异
4.1 Orin Nano:够用,但不支持高端外设组合
Gen3 x4接一块 NVMe SSD(实测 2~2.5 GB/s)没问题。
没有 Endpoint 模式:不能拿 Nano 当“PCIe 加速卡”插到服务器上(某些科研场景会用 Jetson 做协处理器)。
总带宽有限:如果同时接:SSD(占满 x4)+ 千兆网卡(x1)+ 扩展 USB(x1),已经占满所有通道,不能再加万兆网卡或双口网卡。
4.2 Orin NX:灵活且更高速
Gen4意味着同样 x4 通道,带宽是 Nano 的 2 倍(7.88 GB/s 对比 3.94 GB/s)。
Endpoint 模式:可以把 Orin NX 插到 x86 工控机上作为 AI 推理卡(类似 Google Coral),通过 PCIe 与上位机共享内存。
可拆分性:
方案 A:1×4(接 NVMe 高速盘) + 3×1(接三路独立设备:网卡 + USB 扩展 + Coral )
方案 B:2×4(接两块高速 NVMe RAID)
方案 C:Gen4 x8 不拆(接 FPGA 加速卡)
五、实际项目中的 PCIe 选型建议
5.1 只需要单块 NVMe SSD + 自带网口/USB
Orin Nano 完全够用(Gen3 x4 给 SSD,剩余 x1 留作扩展)
5.2 需要万兆网卡(10GbE)或双口千兆
万兆网卡通常需要PCIe Gen3 x4,Nano 的 Gen3 x4 如果给了网卡,就没通道给 SSD 了(必须二选一)。
建议 Orin NX:用 Gen4 x4 接万兆网卡,剩余的 3 条 Gen4 x1 还可以接一块低速 SSD(SATA 转接)或 USB 扩展。
5.3 需要将 Jetson 作为 PCIe 协处理器
必须 Orin NX(支持 Endpoint 模式),Nano 不支持。
5.4 多路视频采集(如 4 路 HDMI 输入卡)
典型 4 路 1080p60 采集卡需要 PCIe Gen2 x4(约 1.6 GB/s)。
Nano 可以用 Gen3 x4 带一张卡,但若同时要 SSD 存储,通道不够。
NX 可以用 Gen4 x4 接采集卡 + 剩下的 x1 接 SSD(虽然慢一点,但也可用)。
六、PCIe 版本演进带来的真实差
| 操作 | Orin Nano (Gen3 x4) | Orin NX (Gen4 x4) |
|---|---|---|
| 顺序读取 NVMe SSD | 约 2.5 GB/s | 约 5.0 GB/s |
| 同时跑 4K 视频解码 + 写入 SSD | 可能丢帧(带宽竞争) | 流畅(带宽充裕) |
| 多路采集卡 + 神经网络推理 | I/O 等待明显 | I/O 与计算基本重叠 |
七、Mermaid 总结:PCIe 与 Jetson 选型
八、一句话总结 PCIe
PCIe 是 Jetson 扩展高速外设的唯一接口。Orin Nano 提供 Gen3 通道,够接一块 SSD 加少量设备;Orin NX 升级到 Gen4 并支持 Endpoint 模式,可以同时接万兆网卡、高速采集卡,甚至化身为一颗 PCIe AI 加速卡。
