This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28335上电异常,晶振不起振,程序不运行。

现象描述:

公司有款产品使用了TI的TMS320F28335芯片,该产品在当前生产批次中出现部分装置在上电过程中,DSP运行不起来,等待一段时间后能够正常启动(几秒到几十秒)。

硬件情况:

硬件采用核心板加基板加电源板的方式,电源板输出5V和24V到基板,核心板上使用了TI的双通道LDO电源芯片TPS767D318为DSP提供1.8V和3.3V两组电压,基板上通过1颗M7二极管将5V降压到4.3V左右输入到核心板上输出为3.3VLDO通道的前端,通过2颗M7加1颗肖特基二极管将5V降压到3V左右输入到核心板上输出为1.8V的LDO通道前端。

相关测试:

1.测试板载5V和DSP供电的3.3V、1.8V电压均正常,没有出现电压波动和跳变的现象。

2.由于板上使用了一颗TI的外部看门狗芯片TPS3305-1.8(喂狗信号由DSP输出),测试发现当装置上电不正常运行时,DSP没有输出该喂狗信号给看门狗芯片,同时看门狗产生复位信号不断复位DSP。

3.当出现上电不正常运行时,查看了DSP外部30MHz晶振的振荡波形,发现晶振没有起振。

测试到这里我认为算是找到了事发原因,于是围绕晶振为什么没起振这一问题来展开思考和验证测试。

1.查看了DSP外部30MHZ晶振使用的匹配电容值为24pF,DSP手册中建议使用负载电容值为12pF的外部晶振,按照手册中公式计算出来的外部匹配电容值就是24pF,我查询了板上所用的这颗30MHz晶振,清单上没有参数描述和品牌,无法确定其负载电容值。

2.查看了TI的DSP DEMO板,DSP使用的外部晶振同样为30MHz,外部匹配电容值为33pF,于是想从匹配电容下手测试,分别更换了18pF、28pF、34pF几组匹配电容,测试发现同样会出现前面所述的现象,同样是晶振不能起来,需要等几次复位过程后才能起来。

3.后来又经过了一些不断测试,包括1.8V和3.3V上电时序与手册描述不一致,某些管脚手册说要接地的管脚把它接地等,但是都还是一样会出现异常现象。

4.将基板输入到DSP核心板且经过二极管降压的4.3V和3V直接短接到5V,装置上电不正常运行的情况改善较为明细,但还是会偶尔出现异常现象。

5.将DSP核心板与基板断开,通过飞线方式,先加电源,在依次添加其它信号到DSP核心板上,发现当把基板上DSP JTAG仿真插座的TRST信号引到DSP核心板后,就会出现前面所述的异常现象。查看DSP手册描述,TRST管脚内部下拉,让其浮空或接地时DSP工作在正常模式,当工作在JTAG仿真模式时,加1颗2.2K左右的下拉电阻。于是在该管脚上加了一颗3K的下拉电阻,经测试后发现装置上电时不再发生异常现象。

疑问:

1.是不是基板上经过二极管降压后的4.3V和3V电压在上电瞬态过程中干扰较大,干扰了DSP的TRST管脚?因为不经过二极管降压而是直接短接到5V后,异常现象改善明显。于是又使用外部线性稳压电源直接给基板提供5V和24V,测试后发现仍然有异常现象发生。

2.由于基板上的DSP JTAG插座靠近电源板一侧,电源板上有一个ACDC模块和一个DCDC电源模块,会不会是电源模块的开关噪声干扰了DSP的TRST引脚状态?于是将电源模板从机箱内取出,放到装置外一段距离处,通过飞线将电源引到基板上。经测试,一样会发生前面所述的异常现象,只是DSP恢复运行的时间变短了。

3.从上面2点疑问来看,是不是电源传导干扰和空间电池辐射干扰同时存在且影响了TRST管脚在上电过程中的状态?使用示波器测量TRST信号,发现挂上示波器后现象很难复现,因为探头挂上后本身有个阻容性负载,估计得用隔离探讨才行。

4.如果就是因为TRST管脚在上电过程中被干扰了,会什么会导致DSP外部晶振不起振,运行不起来勒?

希望TI厂家技术人员能够指点迷津,非常感谢。

  • 1、“二极管降压后的4.3V和3V”是用在什么地方的?芯片本身应该只用到3.3V和1.8V。如果TRST管脚受干扰的话是有可能会造成芯片上电异常的,因为这个脚是控制芯片boot模式的

    2、“JTAG插座靠近电源板一侧”,这点应该要避免。另外模、数分离也会改善电源质量。关于JTAG,你的JTAG是板载还是外接?理论上,如果JTAG的输出口到芯片的距离要求比较严格,超过6cm的话就需要考虑加一个缓冲器。即这段距离越短越好。

    3、理论上TRST引脚跟晶振是没有关联的,甚至晶振能不能起振与芯片本身也应该无关,不起振确实挺奇怪。附件有一份硬件设计指南,你可以参考一下里面的一些硬件设计检测一下。

    4666.硬件设计指南.pdf

  • 1.MCU等启动上电瞬间应该是电流最大的时候,需要确认二极管等是否会造成电流太小;
    2.比较重要的管脚必须做好强制的上下拉处理,避免状态不定;
    3.建议将晶体换为晶振试试,晶振供电上电保证启动,然后将时钟管脚送入到IN,这样就保证时钟有了;
    4.个人觉得还是时钟问题的可能性较大,过一会就跑起来,说明有一个缓慢变化的过程,类似于充电。