场景
11V感知典型场景,前视独占CPE0,既front sensor-CIM0-online-ISP0-online-PYM0通路配置,在实车运行时,偶现前视拿不到帧的情况,出错日志如下:
分析过程
初步分析
出错通路:front sensor-CIM0-online-ISP0-online-PYM0(直连独占模式);
复现概率:偶现==》暂时排除配置异常导致的问题;
错误类型:PYM硬件报size error,代表PYM接收的数据量与配置的尺寸不匹配,报错机制N+1,既N帧出错,N+1帧FS阶段上报;
结果:鉴于通路是直连模式,排除用户配置异常的情况下,如果后级出现尺寸异常,那么前级也会出现尺寸异常,翻看日志,未曾发现前级CIM/ISP有任何报错的情况,排除前级数据量异常的情况;
进一步分析
查看第一次异常的日志:
Status 0x2003代表PYM timeout/frame start/frame done 3个中断同时响应了;
frame start/frame done同时响应代表当前系统环境下CPU负载比较,存在中断响应delay的情况;
结论
关键日志
再继续往上翻日志,有对应的PYM warning日志:
出现该日志代表输出buffer不够了,进而关闭PYM输出,超过一定时间(200ms)未有空闲的buffer,同样会引起PYM上报timeout;
PYM timeout代表PYM一定时间内(200ms)未下DDR导致的超时报错;出现该错误时会执行异常恢复操作,从而导致当前帧接收异常,进而导致下一帧开始报size error;因此最先引发的错误是hw timeout,需要探测hw timeout的根因;
PYM timeout分析
sw frame timeout:长时间没有buffer导致的timeout,处理方式是仅报warning日志;
hw frame timeout:非因buffer导致的timeout,大概率是硬件hang住导致的timeout,处理方式是上报warning日志的同时,进行异常恢复;

结合上述信息,大致可以推测出,CPU负载高导致的中断delay响应,导致sw/hw frame timeout判定异常,进而导致不应该执行异常恢复的场景,执行了异常恢复,最终导致连续上报size error错误,恢复不了;