3. 车载以太网基础与S32G以太网子系统
车载以太网并不是把办公室里的千兆以太网直接搬进车里。车内线束要短、要轻、要抗干扰,还要满足车规温度与EMC要求,因此物理层被重新设计。理解S32G的以太网子系统,必须先把物理层编码、MAC与PHY的分工、PFE的报文处理架构、帧的收发路径、VLAN优先级以及TSN的时间语义串成一条线。
100BASE-T1与1000BASE-T1:单对双绞线上的全双工
传统100BASE-TX使用两对双绞线,一对收、一对发,采用4B/5B加MLT-3编码,速率100 Mbps。车载以太网100BASE-T1(IEEE 802.3bw)把它压缩到一对非屏蔽双绞线上,通过回声消除实现全双工:本端发送的信号会叠加到接收端,PHY内部用自适应滤波器估计并减去自己发出的回声,从而分离出对端信号。其线路编码为PAM3,符号率约66.67 MBd,配合4B/3B等处理达到100 Mbps。
1000BASE-T1(IEEE 802.3bp)同样使用单对双绞线,但速率提升到1 Gbps,采用PAM3、符号率约750 MBd,并引入更复杂的均衡与回波抵消。它对信道带宽、回波损耗和连接器一致性要求更高,线束长度通常限制在约15 m(具体取决于信道规格与线缆类型)。工程上要关注:链路是否支持所需速率、PHY是否支持主从时钟角色自动协商、以及是否满足OPEN Alliance相关测试规范。
MAC与PHY接口:RGMII、SGMII与MDIO
MAC负责数据链路层的成帧、CRC校验、地址过滤与流控;PHY负责物理层编码、驱动与链路状态。两者之间需要标准接口。S32G的PFE侧常用RGMII连接外部千兆PHY,RGMII用4位数据在时钟上下沿采样,实现1000 Mbps;也可用SGMII以串行方式连接,减少引脚数。管理通道使用MDIO/MDC,通过寄存器读写PHY的BMCR、BMSR、自协商通告等,读取链路状态、速率与双工模式。
一个典型配置示例(示意,非实测):PFE的EMAC0通过RGMII连接外部1000BASE-T1 PHY,PHY地址为0x03,MDIO时钟约2.5 MHz。上电后先读BMSR确认链路,再写BMCR设置自协商与主从模式,最后读PHY特定状态寄存器确认已建立1 Gbps全双工链路。若读回速率为100 Mbps,应检查线缆信道与主从配置是否匹配。
PFE架构:从总线到报文引擎
S32G的PFE(Packet Forwarding Engine)是硬件加速的以太网转发子系统,内部包含多个EMAC、分类器、转发引擎与DMA。报文从PHY进入EMAC后,由DMA写入系统内存的缓冲区,分类器根据VLAN、目的MAC、端口等字段决定转发、丢弃或上送CPU。PFE可在线速下完成二层桥接与部分三层处理,减轻A核与M核负担。理解PFE的关键是分清“数据面”和“控制面”:数据面由硬件流水线完成,控制面由CPU通过寄存器与描述符配置。
以太网帧收发路径
接收方向:PHY把线路上的PAM3符号恢复为比特流,完成对齐与解码后通过RGMII送给EMAC;EMAC检查前导码、SFD,剥离后计算CRC并与帧尾FCS比对,同时按目的MAC和VLAN过滤;合格帧由DMA按描述符写入内存缓冲区,分类器再决定转发端口或上送CPU。发送方向相反:CPU或转发引擎准备好缓冲区,填写发送描述符,DMA把数据搬入EMAC的发送FIFO,EMAC插入前导码、SFD并计算FCS,最后经RGMII交给PHY编码发出。
调试时最直接的观察点是端口统计寄存器:收包数、CRC错误数、溢出丢弃数、发送冲突数。若收包数增长但CRC错误同步增长,通常是线缆或PHY均衡问题;若溢出丢弃增长,说明DMA或CPU处理跟不上,需要检查描述符环深度与中断合并设置。
VLAN与优先级
802.1Q在源MAC之后插入4字节Tag,其中12位VID标识VLAN,3位PCP表示优先级(0~7,7最高),1位DEI。交换机或PFE根据PCP把帧映射到不同发送队列,实现优先级调度。例如把VID 100、PCP 5分配给音视频流,VID 200、PCP 2分配给诊断报文,控制报文用PCP 7。配置时要保证同一VLAN内成员端口一致,并明确Trunk口与Access口的Tag处理方式:Access口通常去Tag转发,Trunk口保留Tag。
TSN基础
TSN不是单一协议,而是一组IEEE 802.1标准。802.1AS负责全网时间同步,让各节点共享同一时间基准;802.1Qbv通过时间感知门控,在预定时间窗口只允许特定队列发送,从而给出确定性时延;802.1Qav用信用整形平滑突发流量。对S32G网关而言,TSN能力依赖PFE与外部PHY的硬件时间戳支持,配置时需要把门控列表、周期与队列映射对齐到实际流量模型。若时间同步偏差过大,Qbv窗口就会错位,确定性也就无从谈起。