设备中LPC2368芯片个例参数问题导致故障的分析

最近公司的设备客户报告在终端客户那里出现了板卡加热不受控,出现了持续加热导致设备一些贵重部件损坏。由于历史上很多现场问题,板卡什么拆到别的地方搭复现平台,基本都是以失败告终,所以出差去现场分析。

过程

客户端排查,原始板卡现场运行可复现(大约0.5~3天可复现一次),复现以后,测量MCU外围信号,没有异常。不断电触发外部复位信号,设备不能恢复,重新上电可以正常工作。

对MCU去掉代码解密,复现后,挂JTAG跟踪,发现MCU处于perfetch abort中断的catch中。测试发现内部SRAM,寄存器均可以正常操作;对比Flash上的代码,没有问题。使用调试器复位,发现在出问题以后,MCU只能短暂正常工作极短的时间,系统初始化部分都结束不了,基本上,也是最后MCU处于perfetch abort状态,偶尔处于data abort状态。考虑对终端客户的影响,客户处替换板卡。

搭建虚拟台子,确定这个故障该板卡是可以在虚拟台子上复现的。复现后,挂JTAG,调试器复位运行表现和在客户机器上表现一致,测试SRAM,寄存器,没有问题。检查ARM内核寄存器,VIC状态,SCB外设状态,管脚配置状态,没有发现问题。将MAM模块的Flash fetch cycle从2改为3,发现MCU可以正常运行了。

结论和进一步确认

结论是这片芯片Flash模块存在问题。参数可能不符合文档的指标。

带板卡回公司,通过调整PLL设定,并取其他板卡做对比,发现这片芯片,Flash在略超过20MHz就会出问题,而其他对比芯片,一般可以工作在25~26MHz,由此可以确定,这片芯片,属于个例问题,参数不达标。

上一篇:MCU KEIL printf函数


下一篇:浅谈视频会议系统的带宽控制!