3. CAN FD物理层特性

CAN FD(CAN with Flexible Data-rate)物理层继承了经典CAN的差分信号机制,但在位时间结构、采样点配置以及总线拓扑约束上提出了更严格的要求。物理层是CAN FD协议栈的基石,任何电平偏差、采样点偏移或终端匹配不当,都会直接导致位错误、CRC错误甚至总线离线。本章围绕显性/隐性电平判定、位时间参数分解、采样点设置方法、总线拓扑与终端电阻要求五个核心维度展开,并结合ISO 11898-2:2016与CiA 601-3规范,给出可落地的测试方法与工程判断准则。

CAN FD 物理层一致性测试关键链路 CAN FD 收发器 TJA1145 / TJA1044 差分电平判定 显性 Vdiff ≥ 1.2V / 隐性 ≤ 0.5V 位时间参数 SYNC+PROP+PS1+PS2 采样点设置 推荐 75%~85% 终端电阻 60Ω CANH-CANL 各 30Ω + 4.7nF 总线拓扑 直线型 / 最大 40m 示波器 / 差分探头 500MHz, 1GSa/s CANoe / 一致性测试仪 采样点扫描 / 位时间分析 可编程负载 / 终端匹配 0~100Ω 连续可调 一致性测试流程 电平阈值验证 位时间测量 采样点扫描 终端电阻测试 拓扑验证

3.1 显性/隐性电平判定与测试方法

核心原理

CAN FD总线采用差分电压传输,两条总线导线CANH和CANL之间的电压差(Vdiff = VCANH - VCANL)决定总线状态。显性状态(Dominant)对应逻辑"0",隐性状态(Recessive)对应逻辑"1"。ISO 11898-2:2016规定:显性电平下,Vdiff应大于1.2V(典型值2.0V);隐性电平下,Vdiff应小于0.5V(典型值0V)。收发器内部通过比较器对差分信号进行判定,其阈值通常设定在0.7V~0.9V之间,但一致性测试要求更严格的边界。

在CAN FD高速数据阶段(Data Phase),位时间缩短至数百纳秒,电平切换速率加快,此时对收发器的压摆率(Slew Rate)和对称性提出更高要求。测试时需分别测量显性输出电平(Vdiff_dom)、隐性输出电平(Vdiff_rec)、显性输入阈值(Vdiff_dom_in)和隐性输入阈值(Vdiff_rec_in),确保收发器在-40°C~+125°C全温度范围内满足规范。

判断方法与操作流程

  1. 测试准备:使用500MHz以上带宽示波器,搭配1:1差分探头(如Tektronix TDP1500),探头地线长度不超过5cm,避免引入共模噪声。
  2. 静态电平测量:将DUT(待测设备)接入测试网络,发送显性位和隐性位各持续1ms以上,在示波器上读取Vdiff稳定值。
  3. 动态切换测量:发送0x55(交替位模式)数据帧,测量显性到隐性、隐性到显性的转换时间(Tr/Tf),要求Tr/Tf在显性位时间的5%~20%范围内。
  4. 共模电压验证:测量VCANH和VCANL对地的共模电压Vcm,要求Vcm在1.5V~3.5V范围内(典型值2.5V)。
参数符号最小值典型值最大值单位
显性差分输出Vdiff_dom1.22.03.0V
隐性差分输出Vdiff_rec-0.500.5V
显性输入阈值Vdiff_dom_in0.8—1.2V
隐性输入阈值Vdiff_rec_in0.4—0.8V
共模电压Vcm1.52.53.5V
常见误区:部分工程师仅测量静态电平而忽略动态切换特性。在CAN FD 2Mbps以上速率时,压摆率不足会导致位时间边缘变缓,采样点处电平尚未稳定,引发位错误。务必在最高数据速率下进行动态测试。

3.2 位时间参数分解与同步机制

核心原理

CAN FD的位时间(Bit Time)由四个段组成:同步段(Sync_Seg)、传播段(Prop_Seg)、相位缓冲段1(PS1)和相位缓冲段2(PS2)。同步段固定为1个时间量子(Tq),用于同步总线上的所有节点;传播段用于补偿信号在总线上的传播延迟和收发器内部延迟;PS1和PS2用于补偿振荡器漂移,并配合重同步机制调整采样点位置。

在CAN FD中,位时间分为仲裁阶段(Arbitration Phase)和数据阶段(Data Phase)两套独立配置。仲裁阶段位时间通常为1μs(1Mbps),数据阶段可缩短至125ns(8Mbps)甚至更短。数据阶段的位时间配置必须满足:Prop_Seg + PS1 ≥ 2 × (总线传播延迟 + 收发器延迟),否则采样点会落在不稳定的电平区域。

位时间参数计算流程

已知条件:
- 总线长度 L = 10m,信号传播速度 v = 5ns/m(双绞线)
- 收发器环路延迟 T_loop = 200ns(典型值)
- 振荡器容差 Δf = ±0.3%(CAN FD数据阶段要求)

计算步骤:
1. 总线传播延迟 T_bus = 2 × L × v = 2 × 10 × 5 = 100ns
2. 总延迟 T_total = T_bus + T_loop = 100 + 200 = 300ns
3. 选择数据阶段位时间 T_bit = 250ns(4Mbps)
4. 时间量子 Tq = T_bit / 20 = 12.5ns(假设20个Tq)
5. Sync_Seg = 1 × Tq = 12.5ns
6. Prop_Seg = ceil(T_total / Tq) = ceil(300/12.5) = 24 Tq → 超过位时间,需调整
7. 重新选择 T_bit = 500ns(2Mbps),Tq = 25ns
8. Prop_Seg = ceil(300/25) = 12 Tq,PS1 = 4 Tq,PS2 = 3 Tq
9. 采样点 = (1 + 12 + 4) / 20 = 85%

案例拆解:位时间配置不当导致通信失败

背景:某车载网关项目,CAN FD数据阶段配置为5Mbps,总线长度约5m,使用NXP TJA1145收发器。实测发现,当总线温度升高至85°C时,出现间歇性CRC错误。

分析过程:通过CANoe的位时间分析功能,发现采样点实际位置偏移至78%(配置值为80%)。进一步测量收发器环路延迟,在高温下从200ns增加至260ns,导致传播段余量不足。

解决方案:将数据阶段位时间从200ns(5Mbps)调整为250ns(4Mbps),重新计算Prop_Seg=14 Tq,PS1=3 Tq,PS2=2 Tq,采样点=80%。同时将振荡器从20MHz更换为40MHz温补晶振(TCXO),频率容差从±0.3%提升至±0.1%。

结果:在-40°C~+125°C温度循环测试中,连续运行72小时无错误帧。代价是数据速率降低20%,但换取了全温度范围的可靠性。

经验总结:位时间配置必须预留温度漂移余量。建议在常温下将采样点设置在80%~85%,并验证在极限温度下采样点偏移不超过±3%。使用TCXO或带温度补偿的晶振可显著降低频率漂移。

3.3 采样点设置与一致性测试

核心原理

采样点是接收器对总线电平进行采样的时刻,通常位于位时间的75%~85%处。采样点设置过前(<70%),可能采样到前一位的残余电平;设置过后(>90%),可能来不及完成电平稳定。CAN FD数据阶段位时间短,采样点精度要求更高,推荐设置在80%±2%范围内。

采样点由PS1和PS2的比值决定:采样点 = (Sync_Seg + Prop_Seg + PS1) / (Sync_Seg + Prop_Seg + PS1 + PS2)。通过调整PS1和PS2的Tq数量,可以精确控制采样点位置。同时,CAN FD支持三次采样模式(采样点前后各增加一次采样),用于抑制总线上的毛刺干扰,但会引入额外延迟,需谨慎使用。

采样点扫描测试方法

  1. 使用CANoe或CANscope的采样点扫描功能,从60%到95%以1%步进扫描。
  2. 在每个采样点位置发送1000帧测试报文,统计错误帧数量。
  3. 绘制"采样点-错误率"曲线,确定无错误区间(通常为75%~88%)。
  4. 选择无错误区间的中心点作为最终采样点配置。
采样点位置错误率(%)判定备注
65%12.5不合格采样过早,电平未稳定
70%0.8边缘接近下限
75%0合格进入稳定区间
80%0最优推荐位置
85%0合格仍可接受
90%2.3不合格采样过晚,接近下一位
工程要点:采样点设置不仅影响本节点接收,还影响整个网络的同步裕度。同一网络中所有节点的采样点应尽量一致(偏差不超过±2%),否则会导致位填充错误和同步丢失。建议在ECU软件中开放采样点配置参数,便于产线适配。

3.4 总线拓扑与终端电阻要求

核心原理

CAN FD总线采用直线型(总线型)拓扑,所有节点通过短支线(Stub)连接到主干线。ISO 11898-2规定:主干线两端必须各接一个120Ω终端电阻(等效并联60Ω),用于匹配传输线阻抗,防止信号反射。终端电阻的精度要求为±1%,且应直接连接在CANH和CANL之间,避免通过连接器或线束引入额外阻抗。

在CAN FD高速数据阶段,信号反射对位错误的影响更为显著。当支线长度超过0.3m时,反射信号会在采样点处叠加,导致电平误判。因此,CAN FD网络对拓扑结构提出更严格要求:支线总长度应小于0.3m,节点间距应大于0.1m,主干线长度不超过40m(在2Mbps以上速率时建议不超过20m)。

终端电阻测试与拓扑验证

终端电阻测试步骤:
1. 断开DUT电源,确保总线无源
2. 使用万用表测量CANH与CANL之间的电阻
3. 正常值应为60Ω(两个120Ω并联)
4. 若测量值为120Ω,说明一端终端缺失
5. 若测量值为0Ω,说明总线短路
6. 若测量值为无穷大,说明总线断路

TDR(时域反射计)测试:
- 在总线一端注入阶跃信号,观察反射波形
- 反射系数 ρ = (Z_L - Z_0) / (Z_L + Z_0)
- 理想终端:无反射(ρ = 0)
- 开路终端:正反射(ρ = +1)
- 短路终端:负反射(ρ = -1)

案例拆解:终端电阻缺失导致高速通信失败

背景:某新能源车型BMS(电池管理系统)与VCU(整车控制器)之间采用CAN FD通信,数据阶段速率4Mbps。整车下线检测时发现,约5%的车辆在BMS唤醒后出现通信超时。

初始现象:CANoe监控显示,BMS发送的报文在VCU端CRC错误率高达8%,且错误集中在数据阶段的前4个字节。

分析过程:使用TDR测试发现,BMS端终端电阻正常(60Ω),但VCU端终端电阻为120Ω(仅一个电阻)。进一步检查发现,VCU的终端电阻焊接在PCB背面,部分批次存在虚焊。反射信号在数据阶段位时间(250ns)内往返传播,导致采样点处电平叠加。

操作步骤:① 对所有VCU进行X-ray检测,筛选虚焊批次;② 将终端电阻从1206封装改为2512封装,提高焊接可靠性;③ 在VCU连接器端增加0Ω电阻作为备用终端焊盘,便于产线返修。

结果:更换后,通信错误率降至0%,整车下线合格率恢复至99.9%。代价是单板成本增加0.3元,但避免了售后返修的高额费用。

风险提示:在CAN FD网络中,严禁使用"菊花链"或"星型"拓扑。星型拓扑的中心节点会形成阻抗不连续点,产生严重反射。若必须使用星型拓扑,需使用CAN中继器或集线器设备,且每个分支独立配置终端电阻。

3.5 物理层一致性测试综合流程

测试环境搭建

完整的CAN FD物理层一致性测试需要以下设备:① 500MHz以上带宽示波器(推荐1GHz);② 差分探头(带宽≥500MHz);③ CANoe或CANscope一致性测试软件;④ 可编程直流电源(模拟12V/24V车载电源);⑤ 温度试验箱(-40°C~+125°C);⑥ 可编程终端电阻箱(0~100Ω,步进1Ω)。

测试执行顺序

  1. 静态参数测试:测量显性/隐性电平、共模电压、输入阈值。
  2. 动态参数测试:测量压摆率、对称性、位时间精度。
  3. 采样点扫描:确定最优采样点位置及容差范围。
  4. 终端电阻验证:测量终端电阻值、TDR反射系数。
  5. 拓扑合规检查:测量支线长度、节点间距、主干线长度。
  6. 温度循环测试:在-40°C、25°C、85°C、125°C四个温度点重复上述测试。
测试项目测试条件合格判据测试设备
显性输出电平VCC=12V, RL=60Ω1.2V ≤ Vdiff ≤ 3.0V示波器+差分探头
隐性输出电平VCC=12V, RL=60Ω|Vdiff| ≤ 0.5V示波器+差分探头
压摆率数据阶段2MbpsTr/Tf ≤ 位时间×20%示波器
采样点扫描60%~95%无错误区间≥10%CANoe
终端电阻断电测量60Ω ± 1%万用表/TDR
共模电压正常通信1.5V ≤ Vcm ≤ 3.5V示波器
总结复盘:CAN FD物理层一致性测试的核心目标是确保不同供应商的ECU在同一网络中能够可靠通信。电平判定是基础,位时间参数是精度,采样点设置是鲁棒性,终端电阻是完整性,拓扑结构是全局约束。建议在项目开发阶段就建立物理层测试规范,并在每次硬件改版后执行回归测试。对于量产车型,应抽取每批次至少3个样本进行全项测试,确保工艺一致性。