1. AURIX车载通信系统概述

AURIX是英飞凌面向汽车电子控制单元(ECU)设计的多核微控制器家族,其典型代表如TC3xx系列,普遍集成多颗TriCore CPU核、锁步核、硬件安全模块(HSM)、丰富的CAN/FlexRay/以太网外设以及DMA与中断路由单元。在整车电子电气架构中,AURIX通常承担“域控制器”或“区域控制器”的核心角色:向下连接传感器、执行器与子ECU,向上通过车载以太网接入中央计算平台或网关。理解AURIX在车载网络中的位置,是后续CAN与以太网开发的前提。

一、AURIX在车载网络中的角色定位

从通信视角看,AURIX内部并非单一总线控制器,而是由多个独立通信外设构成的“通信枢纽”。以TC3xx为例,其典型资源包括:

  • MultiCAN+模块:最多支持4个CAN节点,每个节点可独立配置波特率与报文对象(Message Object),支持标准帧与扩展帧,常用于动力、底盘、车身等CAN网络。
  • CAN FD能力:部分型号支持CAN FD,数据段速率可达2 Mbit/s甚至5 Mbit/s,仲裁段仍保持500 kbit/s,用于刷写与大数据量传输。
  • Gigabit Ethernet MAC:集成1路或多路千兆以太网MAC,配合外部PHY实现100BASE-T1或1000BASE-T1车载以太网,用于域间骨干通信。
  • HSM与安全通信:HSM可独立处理SecOC(Secure Onboard Communication)的MAC计算与密钥管理,减轻主核负担。

因此,AURIX在拓扑中往往同时扮演“CAN节点集合”和“以太网端点”两种角色,并通过内部总线(如SRI、SPB)与DMA完成数据搬运。开发时首先要明确:哪些报文走CAN,哪些走以太网,以及两者之间是否需要网关转发。

二、CAN与以太网典型拓扑

在典型的域集中式架构中,CAN与以太网呈现分层拓扑。CAN侧通常为线性总线,两端各接120 Ω终端电阻,节点以短支线接入;以太网侧则为点对点或交换式星型拓扑,通过车载以太网交换机连接各域控制器。AURIX常位于“域控制器”位置:其CAN节点连接本域内的子ECU,其以太网MAC连接中央网关或交换机。

下图给出一个简化的混合拓扑示意,重点表达AURIX同时接入CAN总线与以太网骨干的关系,以及网关转发路径。

AURIX 域控制器:CAN 与车载以太网混合拓扑 中央网关 / 计算平台 1000BASE-T1 交换机 车载以太网骨干(100/1000BASE-T1) AURIX 域控 A CAN0 + ETH MAC 动力/底盘域 AURIX 域控 B CAN1 + ETH MAC 车身/舒适域 AURIX 域控 C CAN2 + ETH MAC 智能座舱域 CAN / CAN FD 总线(500 kbit/s 仲裁段) 120Ω 120Ω 电机控制器 CAN 节点 电池管理 BMS CAN 节点 车身控制器 CAN 节点 网关子节点 CAN 节点 车载以太网(点对点/交换式) CAN/CAN FD 线性总线 AURIX 域控制器

图中可见,AURIX域控A/B/C各自通过CAN节点连接本域子ECU,同时通过以太网MAC接入中央交换机。若域控A需要将电机转速报文转发给座舱域,则路径为:CAN0接收→AURIX内部DMA搬运→以太网MAC发送→交换机→域控C以太网接收→CAN2发送。这一“CAN→以太网→CAN”的转发链是网关开发的核心场景。

三、开发流程与工具链总览

AURIX通信开发通常遵循“硬件确认→底层驱动→协议栈→应用集成→测试验证”的推进顺序,但各阶段并非严格串行。实际项目中,工具链的选型往往在硬件设计阶段就已确定。

硬件与引脚确认:首先依据原理图确认CAN收发器(如TLE9251)与以太网PHY(如88Q2112)的连接关系,包括TX/RX、SPI配置接口、复位与中断引脚。AURIX的CAN引脚需映射到具体Port,以太网MAC则通过RGMII或RMII连接PHY。

底层驱动配置:使用英飞凌AURIX Development Studio或Tasking编译器建立工程,通过iLLD(底层驱动库)配置CAN节点波特率、报文对象、中断;以太网侧配置MAC地址、DMA描述符、PHY寄存器。以下为CAN节点初始化的关键参数示例:

/* 示例:CAN0 节点初始化关键参数(基于 iLLD 风格) */
CAN_NODE_CONFIG nodeConfig;
nodeConfig.baudrate      = 500000;   /* 仲裁段 500 kbit/s */
nodeConfig.samplePoint   = 0.875;    /* 采样点 87.5% */
nodeConfig.syncJumpWidth = 4;        /* SJW = 4 Tq */
nodeConfig.loopBack      = FALSE;
nodeConfig.rxPin         = &IfxCan_RxPin_P20_7;
nodeConfig.txPin         = &IfxCan_TxPin_P20_8;
/* 报文对象:接收 ID 0x123,标准帧,8 字节 */

协议栈与中间件:CAN侧通常使用Vector CANbedded或开源CANopen/自定义协议;以太网侧则涉及TCP/IP、SOME/IP、DoIP或TSN。AURIX的HSM可承担SecOC的MAC计算,需在HSM固件中预置密钥并配置新鲜度值管理。

测试与验证:常用工具包括Vector CANoe(CAN/CAN FD仿真与残余总线仿真)、VN5640以太网接口卡、Wireshark(以太网报文抓取)、Trace32(AURIX调试与变量观测)。验证时先确认单节点通信正常,再逐步接入网关转发与端到端时延测试。

实践提示:初次调试CAN时,建议先将节点配置为回环模式(loopBack=TRUE),用示波器观察TX引脚波形,确认波特率与采样点正确后再接入真实总线。以太网调试则先用PHY回环确认MAC与PHY链路,再接入交换机。

四、关键参数与判断依据

在通信系统开发中,以下参数直接决定通信是否可靠,需在设计和测试阶段重点关注:

参数典型值/范围判断依据
CAN仲裁段波特率500 kbit/s与总线其他节点一致,示波器位宽约2 μs
CAN采样点75%~87.5%所有节点采样点偏差不超过±2%
CAN终端电阻120 Ω×2断电测量总线电阻约60 Ω
以太网链路速率100/1000 Mbit/sPHY寄存器BMSR显示Link Up且速率匹配
SecOC新鲜度同步窗口内接收方MAC校验通过且新鲜度值在允许窗口

这些参数并非孤立存在。例如,CAN采样点设置不当会导致高波特率下位采样错误,表现为偶发CRC错误或ACK错误;以太网PHY的Master/Slave配置错误则会导致链路无法建立。开发时应先确保物理层与数据链路层参数正确,再向上排查协议与应用层问题。

综上,AURIX车载通信系统的开发本质上是“多总线协同”的工程:理解AURIX在拓扑中的双重角色,掌握CAN与以太网各自的参数约束,并借助成熟工具链完成配置、转发与验证,才能构建稳定可靠的车载通信系统。