1. 文档背景与原始参考资料定位
NXP 官方 GenAVB/TSN Stack FreeRTOS 评估用户手册 8.0 版本覆盖多硬件平台、多软件配置、多测试用例,但文档信息量大,多场景并行描述,初次开发者直接参照原版手册完成调试难度较高。本次参考文档针对手册4.4 章节 i.MX RT1180 TSN 网桥 + 独立终端节点案例做实操拆解,补充截图、配置命令、故障点、修改点,填补原版文档缺失的 gPTP、MAC 地址、VLAN、FDB 数据库配置说明。
i.MX RT1180 是 NXP 双核异构 MCU,Cortex‑M7 高性能内核搭配 Cortex‑M33 安全内核,双内核硬件以太网控制器,是面向工业实时以太网 TSN 的主流硬件载体。GenAVB/TSN Stack 为 FreeRTOS 环境下的 AVB/TSN 协议栈,支持时间感知调度、gPTP 时间同步、VLAN、FDB 转发数据库等 TSN 核心能力。
原始用例目标:两块 i.MX RT1180 EVK,一块作为 Controller 独立 TSN 端点,一块作为 IO Device 独立 TSN 端点,完成 TSN 网桥调度、时间同步、调度流量传输、时间触发发送验证。
资料获取:在 i.MX RT1180 上运行 GenAVBTSN Stack FreeRTOS 评估用例的分步指南
2. 测试场景定义:TSN Network Only with TSN Bridge and Standalone Endpoint
本用例属于纯 TSN 网络场景,不引入外部交换机,两块 EVK 板卡同时承担 TSN 网桥功能 + TSN 终端节点功能。
- Controller 设备:TSN 控制器端点,负责业务周期调度、时间触发发送;
- IO Device 设备:TSN 从设备端点,接收调度周期流量,完成 IO 侧业务模拟;
- 双板卡内部集成 TSN 网桥,实现 VLAN 隔离、FDB 转发、QBV 时间感知门控调度;
- 核心验证对象:gPTP 全局时间同步、QBV 调度流量、时间特定发送(Time‑Specific Departure)、VLAN/FDB 二层转发。
场景的典型映射:工业现场总线中控制器‑远程 IO 设备的实时通信模型。
3. 硬件与软件基础资源盘点
3.1 硬件清单
| 硬件 | 数量 | 用途 |
|---|---|---|
| i.MX RT1180 EVK 评估板 | 2 块 | Controller、IO Device 节点 |
| PC(串口终端 MobaXterm) | 1 台 | 日志查看、Shell 命令配置 TSN 参数 |
| USB 线缆 | ≥2 根 / 板 | 调试供电、固件下载、串口输出 |
| 网线 | ≥3 根 | TSN 以太网物理链路 |
硬件关键配置点:Boot 开关 SW5 [1‑4]、J1 跳帽、JP7 跳帽,分别控制下载模式、供电、双内核串口枚举。
3.2 软件栈版本
- GenAVB_TSN‑rtos‑apps version 8.0
- MCUXpresso SDK 26.3.0,推荐 VS Code + MCUXpresso for VS Code 开发环境
- FreeRTOS 操作系统,跑在 M7、M33 双核上
- 编译产物:CM33、CM7 分别输出
.bin、.elf镜像文件。
4. 评估流程全链路总览
整体流程分为 5 大阶段:
- 环境准备:硬件就位,IDE+SDK 环境部署;
- 固件编译构建:修改 CM7 内核 Kconfig 配置文件,分别选择 CM33:
release_no_enetc0,CM7:release_enetc0编译;VS Code 存在工作空间工程导入冲突,需要移除工程再导入另一核; - 固件烧录:配置板卡为串行下载模式,烧录 CM33、CM7 双内核 bin 镜像,切换回 QSPI 启动模式;
- 硬件状态校验:确认 LED 运行状态、双内核串口输出、物理网线接线;
- TSN 业务配置与验证:串口 Shell 输入指令,配置角色、周期、MAC 地址、gPTP、VLAN、FDB、QBV 门控、时间触发发送,复位设备验证 TSN 业务运行。
原版官方手册缺失 MAC 地址、gPTP、VLAN/FDB 配置步骤,是绝大多数开发者调不通的根因。
5. 该评估用例的工程价值与边界约束
工程价值
- 快速验证 i.MX RT1180 双核硬件与 GenAVB/TSN 协议栈兼容性;
- 在无外部 TSN 交换机条件下,板载内置 TSN 网桥完成整套 TSN 业务闭环;
- 复现工业控制场景下控制器‑远程 IO 的周期实时通信;
- 可直接基于该评估用例做二次开发,迁移到客户自定义硬件。
边界约束
- 这是评估 Demo,不等同量产工程,Kconfig 需要手动修改,非默认开箱即用;
- VS Code IDE 存在工程导入 BUG,需要手动移除工程切换内核;
- 两块 EVK 全部作为独立端点,不对接第三方 TSN 交换机;
- 业务周期固定 250000ns,评估版本参数固化,量产需要重新调参;
- 仅 FreeRTOS 平台,不支持 Linux 系统。
6. 落地前需要厘清的关键风险点
- 双内核镜像烧录顺序、启动模式切换错误,会直接导致板卡不启动,LED 无闪烁;
- JP7 跳帽未移除,无法同时枚举 CM33、CM7 两个内核串口,看不到完整日志;
- 遗漏 MAC 地址、gPTP 优先级、VLAN、FDB 转发表配置,TSN 流量无法收发;
- Shell 必须按下 Insert 键停止日志打印,才可以输入配置命令,否则命令无法生效;
- Kconfig 配置遗漏,编译会出现驱动组件缺失,编译报错或者运行异常。
174