1. Jetson 平台概览
NVIDIA Jetson 是面向边缘侧部署 AI/视觉/机器人应用的一类嵌入式计算平台,通常以 SoM + 载板或开发者套件的形态出现,并配套 JetPack 形成软硬件一体的开发与部署路径。业界实践中,Jetson 常通过 容器化 来固化依赖环境、简化升级,并结合 DeepStream、TAO 等工具缩短从模型到落地的路径。
本篇重点介绍两条常见 “Nano / NX” 产品线:
-
Jetson Nano:入门级、低功耗、小成本,面向学习、原型验证、轻量推理。
-
Jetson Xavier NX:中端档位,面向更高吞吐/多路视频/更复杂机器人应用。
-
另外补充 Jetson Orin NX / Orin Nano 在“自研载板适配/Bring-up”方面的关键工程要点。
2. Jetson Nano 简介
2.1 定位
Jetson Nano 常被定位为面向 Maker / 学习 / STEM 教育 与轻量化边缘 AI 项目的入门平台:体积小、功耗低,可以运行基础的视觉推理、传感器数据处理与简单机器人项目。
2.2 关键硬件规格
以下为 Jetson Nano 常见规格要点汇总:
| 项目 | 典型规格 |
|---|---|
| CPU | 四核 Arm Cortex-A57(约 1.43 GHz) |
| GPU | 128 核 Maxwell GPU(CUDA cores) |
| 内存 | 4 GB LPDDR4 |
| 存储 | microSD 卡(开发者套件常用;容量可扩展) |
| 相机 | 1× MIPI CSI-2(不同载板/版本可能存在差异) |
| 显示 | HDMI 2.0、DP 1.2 |
| 网络/USB/扩展 | 千兆以太网、USB 3.0×4、40-pin GPIO,常见 I2C/I2S/SPI/UART 等 |
| 供电/功耗 | 5V 供电(开发者套件常见 5–10W 功耗范围) |
| 系统软件 | Ubuntu-based Linux(JetPack) |
注:不同厂商整机/载板、不同 DevKit 版本(如 A02/B01/2GB 等)在 CSI 接口数量、供电方式与外围接口上会有差异。
2.3 Jetson Nano DevKit 常见接口一览
| 类别 | 常见接口 |
|---|---|
| 存储 | microSD(系统盘/数据盘) |
| 网络 | 千兆以太网 |
| USB | USB 3.0×4 |
| 显示 | HDMI、DP |
| 相机 | MIPI CSI-2(不同载板版本数量可能不同) |
| 扩展 | 40-pin GPIO(I2C/I2S/SPI/UART 等常见外设总线) |
3. Jetson Xavier NX 简介
3.1 定位与成本/人群
在常见的产品定位讨论中,Jetson Nano 往往更偏 Maker/教育,而 Xavier NX 更偏 专业/商用 的边缘 AI 模组。也有人用开发者套件价格做直观区分(例如约 99 美元 vs 399 美元 的量级对比,随时间与渠道波动)。
3.2 载板与外设差异
两者开发板尺寸相近,模组外形规格也接近,利于在开发阶段以相同/相近载板做替换测试(需注意具体 Rev/兼容性条件)。在外设与结构上常见差异包括:
-
M.2:Xavier NX DevKit 常见 M.2 Key E + M.2 Key M(Key E 可能预装 Wi-Fi/BT;Key M 可接 NVMe SSD);Nano 载板常见仅 M.2 Key E(不同版本载板差异较大)。
-
散热/供电:Xavier NX DevKit 常见 主动散热、并可能需要 19V 供电;Jetson Nano 常见仅散热片,且可使用 5V 供电方案。
3.2.1 DevKit 外设差异对照表
| 维度 | Jetson Nano DevKit | Jetson Xavier NX DevKit |
|---|---|---|
| M.2 扩展 | 常见 1×Key E | 常见 Key E + Key M(可上 NVMe) |
| 默认散热 | 常见被动散热 | 常见主动散热 |
| 供电 | 常见 5V | 常见 19V |
| CSI 相机接口 | 不同版本可能为 1×或更多 | 常见为 2×(随载板版本) |
3.3 AI 加速架构差异
Xavier NX 的 “AI Performance” 指标常把 NVDLA 的算力一并计入,而 Jetson Nano 等较早成员主要依赖 GPU 做推理加速。工程上,这通常意味着:
-
Xavier NX 可在某些 CNN 推理任务上将部分工作负载下放到 DLA,让 GPU 留给其它任务(如 SLAM、图像处理、渲染等)。
-
基准测试中 “总 FPS” 可能是 GPU + 双 DLA 并行 的汇总结果,需要查看基准脚本对统计口径的定义。
4. 典型开发与部署方式
4.1 基准测试
有基准测试实践指出,Xavier NX 的总吞吐常体现为 GPU 与 DLA 并行的合计结果。
4.2 容器化
在 JetPack 4.4 相关的演示实践中,容器化被用来把服务器侧的容器/编排理念引入边缘设备,从而降低依赖冲突、简化升级与持续开发。示例中也提到:
-
某些演示容器中的 TensorRT 引擎文件可能是面向特定 Jetson 架构预编译的,导致无法在其它型号上直接运行。
-
多容器、多路视频场景中,存储(例如 microSD)可能成为瓶颈;使用 NVMe SSD 往往能改善吞吐稳定性。
4.2.1 部署形态要点
-
应用代码:业务逻辑与模型推理调用
-
容器镜像:固化依赖与运行环境
-
设备运行环境:JetPack + CUDA/cuDNN/TensorRT
-
输入/输出:相机、传感器、网络输入;推理输出、控制指令、告警等
4.3 自定义模型推理
工程实践中常见的结论是:TensorRT 通常需要在目标设备上完成优化与引擎生成,生成的序列化引擎(如 .plan)与硬件架构绑定,在 Xavier NX 上生成的引擎文件通常不能直接在 Jetson Nano 上运行,反之亦然。这对交付与运维意味着:
-
需要为不同目标设备分别生成/发布引擎文件;
-
或采用“在设备上首次构建引擎”的部署流程(需要时间与存储/编译环境保障)。
4.3.1 TensorRT 引擎生成与分发要点
-
训练导出模型:ONNX 或其它可被转换的中间格式
-
选择目标设备:Jetson Nano / Jetson Xavier NX
-
在目标设备上构建引擎:生成对应设备的
.plan -
分发与版本管理:按设备型号/软件栈分别管理引擎产物
5. Jetson Nano DevKit 快速上手要点
常见的 Jetson Nano DevKit 上手流程包含:
-
准备 microSD:通常建议至少 32GB 以满足系统与开发需求。
-
写入系统镜像:下载 SD Card Image,用 Etcher 等工具写入 microSD。
-
首次启动:可分为“接显示器键鼠”或“Headless 无显示”两种方式。无显示模式下,常见要求使用直流电源供电,因为 micro-USB 口可能要用于串口/设备模式通信。
5.1 上手步骤
-
准备 microSD
-
写入系统镜像
-
插卡上电启动
-
初始化方式二选一
-
接显示器/键鼠:按向导完成初始化
-
Headless:通过串口/网络完成初始化
-
-
进入系统后:安装/更新依赖并运行项目
5.2 快速检查清单
| 检查项 | 建议 |
|---|---|
| microSD 容量 | 建议 ≥ 32GB |
| 供电稳定性 | 选择质量较好的电源与线缆,避免欠压导致异常 |
| 存储瓶颈 | 多路视频/多容器时优先考虑更快的存储介质(如 NVMe) |
| 散热 | 负载高时关注温度与降频,必要时增强散热 |
6. 补充:Jetson Orin NX / Orin Nano
当使用 Jetson Orin NX / Orin Nano SoM 搭配 自研载板时,工程工作会从“应用开发”扩展到“平台适配/Bring-up”。公开开发者指南中强调的关键点包括:
6.1 板级组合与命名
-
Orin Nano DevKit 由 P3767 SoM + P3768 载板组成,整套开发者套件常以 P3766 指代;SoM 与载板通常都有 EEPROM 存储板卡 ID。
-
自研载板需要为 module/carrier 组合分配板名(小写字母数字,可含
-/_,不可含空格),并用于文件路径、设备树文件名、以及某些/proc可见信息。
6.2 使用非参考载板时需要调整的内容
在 SoM 更换到非参考载板前,通常需要同步更新/适配:
-
Kernel Device Tree(DT/DTB/DTBO)
-
MB1/MB2 配置
-
ODM data(ODMDATA)
-
刷机/分区与 flashing 配置
6.3 RootFS 与启动脚本
Jetson Linux 可使用标准或定制 rootfs,但需要确保启动框架中关键配置到位,例如 nv.sh / nvfb.sh 等脚本会完成平台相关配置;同时 Xorg/X 库、nvpmodel(功耗/频率)等也会影响系统功能与性能表现。
6.4 Pinmux/GPIO 适配
-
常见流程是从下载中心获取 Orin NX/Nano 的 Pinmux 表格(电子表格),按自研硬件修改后生成
pinmux.dtsi/gpio.dtsi/padvoltage.dtsi,并放入 BSP 指定目录后参与刷机。 -
也支持在调试阶段动态修改 pinmux(需查 TRM、寄存器地址并通过
busybox devmem等工具写寄存器)。 -
GPIO 映射常需结合内核启动日志中 gpiochip 的 base index 以及端口/偏移表计算,或通过 debugfs 查询验证。
6.5 PCIe / USB / UPHY lane 配置
指南列举了 Orin NX/Nano 的 PCIe 控制器能力差异(如 Orin NX 支持更高代际、Orin Nano 相对较低),并强调由于 UPHY lane 在 PCIe/UFS/XUSB 等间共享,自研载板必须按需求选择 lane mapping,并在 ODMDATA 与设备树节点上同步体现。USB 端口的 bring-up 通常需要在 xusb_padctl 与 xhci 节点里正确配置 USB2/USB3 lane、端口 mode、companion 关系与供电等属性。
7. 选型建议
-
Jetson Nano:适合教学/入门、轻量单路视频推理、低功耗原型;对存储与带宽较敏感,复杂多路视频/多容器负载可能受限。
-
Jetson Xavier NX:适合更高吞吐、多路视频、或需要 DLA 分担 CNN 推理、GPU 释放给其它任务的机器人/工业视觉应用;通常需要更强供电与散热设计。
-
Jetson Orin NX / Orin Nano:面向新一代边缘 AI,但若走自研载板路线,Bring-up 是必须投入的工程环节。
7.1 选型对照表
| 维度 | Jetson Nano | Jetson Xavier NX | Jetson Orin NX / Orin Nano |
|---|---|---|---|
| 定位 | 入门/学习/轻量推理 | 中端/更高吞吐/多路视频 | 新一代 NX/Nano 方向 |
| 加速器特征 | 以 GPU 为主 | GPU + DLA(常见) | 依型号不同而变化 |
| 存储与扩展 | 以 microSD 为主(DevKit 常见) | 常见可上 NVMe(DevKit 常见) | 取决于载板设计 |
| 工程投入 | 低(应用为主) | 中(应用 + 性能调优) | 高(自研载板需 Bring-up) |
8. 结语
本文为 Jetson Nano 与 Xavier NX 的入门级概览,并补充了 Orin NX/Nano 在自研载板场景下的 Bring-up 关键事项。实际选型与落地时,建议以目标模型规模、视频路数、实时性要求、功耗/散热条件以及量产载板设计复杂度为主要决策因素。