用示波器做逻辑分析,和用数字逻辑分析仪,难度不在一个量级。数字逻辑分析仪在采集端就用硬件比较器把波形判成 0/1,判决一旦落地,后面只是在数字域里做位流解析;而示波器交给我们的是一串模拟采样点,阈值、迟滞、差分判决,以及 CAN 这种没有时钟线的总线上最要命的位定时恢复,全部得在软件里自己完成。判决只要有一位落错位置,得到的不是"稍有偏差的结果",而是一条完全错误的位流。
CAN FD 把这件事的代价放大到了极限:一帧解得对不对,不是靠人去核对,而是由帧内的 CRC 当场裁决,校验通过才算解对,不通过整帧作废。这就意味着从 SOF 到 CRC 场的每一位都必须全对,没有中间状态:解码器不是在大致还原总线内容,而是在接受一场零容错的校验。