大家好,最近调试自己的k7+6678的板子,出现了一个奇怪的问题。电路板掉电放置半个小时以上,再上电,会出现dsp网口起不来的问题。这种情况时,片子其他功能是正常的,网口寄存器显示也link上了。每次出现网口起不来的情况时,板子掉电再立马上电,或者过几分钟上电,网口都可以起来。6678的程序在开发板上每次都可以起来,没出现过问题。请大家给一点调试的思路,或者可能出问题的点。不胜感激。(另:板子长时间不上电,然后再加电的时候,FPGA挂仿真器在线跑3次,dsp网口可以起来,fpga加载一次程序相当于是给DSP一次复位)
Shine:
建议先检查一下PHY那边的电路,PHY的时钟。
DSP这边拉长一下复位信号试试,还有供电电源稳定性和上下电顺序是否满足手册要求?CVDD没有接成固定电压吧?
,
user5801771:
感谢您的回复。CVDD硬件接的固定1.1V的电压。DSP供电由两片4644提供,时钟由CDCE时钟管理芯片提供,主频100M,PA 100M,SGMII 250M。电路板起不来的时候,打过时钟,都是正常的。
,
Shine:
CVDD不要接成固定电压试试,由于每个C6678的核电压存在差异,所以从功耗,芯片稳定性以及寿命角度来讲为保证芯片能可靠运行,Keystone 系列芯片必须要使用SmartReflex设计电路。请参考下面的硬件设计文档。
2.2.1.1 SmartReflex
www.ti.com/…/sprabi2d.pdf
,
user5801771:
感谢您的回复。由于硬件在设计时是按照固定电压设计的,并没有预留智能调节的电路,所以现在没法改了。昨天我在调试时,发现如果先加载官方的GE程序,进行网口1的内部SERDES回环,然后在ccs5.5上进行系统复位,再加载我自己的网口工程,网口就可以正常ping通。所以我觉得会不会是我的工程对网口的初始化程序不严谨,导致电路板第一次上电起不来。请问该怎么调试去定位到底是哪一块有问题,导致的网口不通。我自己的工程是根据MCSDK里面的helloword修改的。请您多指导。感谢!
,
Shine:
您的意思是GE程序在您的板子上每次都能正常运行?那您比对一下自己的工程是否和GE程序的网口初始化一样?
,
user6027759:
请问问题是否解决,我也遇到类似的问题
,
user5801771:
你好,请问你们的问题解决了吗?这个问题困扰我一年多了,一直没有解决。请不吝赐教,感谢!
,
user5801771:
您好,抱歉现在才回复您。网口不通的问题一直没解决。后来又做了一块电路板,核电改为智能供电,但是网口还是起不来。查看寄存器发现DSP和phy芯片没有LINK成功。电路板网口常温的时候起不来,温度高一点可以起来(拿热风枪吹电路板)。我在论坛上看到有部分人和我遇到了一样的问题,但是没有看到最后大家是怎么解决的。现在我比较疑惑的是DSP和phy连接不上,会是哪些原因导致的?phy的寄存器我都读出来比对过,没有异常。dsp这边的SERDES回环也没有问题。这个问题好难查,请您指教!
,
user5801771:
您好,抱歉现在才回复您。网口不通的问题一直没解决。后来又做了一块电路板,核电改为智能供电,但是网口还是起不来。查看寄存器发现DSP和phy芯片没有LINK成功。电路板网口常温的时候起不来,温度高一点可以起来(拿热风枪吹电路板)。我在论坛上看到有部分人和我遇到了一样的问题,但是没有看到最后大家是怎么解决的。现在我比较疑惑的是DSP和phy连接不上,会是哪些原因导致的?phy的寄存器我都读出来比对过,没有异常。dsp这边的SERDES回环也没有问题。这个问题好难查,请您指教!