启动加载器加载到板上。在每次重新启动期间,在不同的地方启动时,电路板会卡住

时间:2014-08-03 11:54:27

标签: linux u-boot

我在基于基于ARM9的SoC(来自micrel的KSZ9692PBI)的定制板中刷了u-boot和linux。主板有8MB NOR闪存,64MB DDR。我面临以下问题

  1. 75%的时间u-boot正在成功加载并启动linux,但是Linux启动有时会在启动时挂起,而其他情况则会挂起。

  2. 25%的时间u-boot本身挂在不同的地方。

  3. DDR频率200MHZ,CPU为250MHz。

    我认为董事会中没有松散的联系。

    请帮我解决问题

2 个答案:

答案 0 :(得分:1)

即使我们不确定这是OP的问题,但我还是决定将我的评论提升为更好的保留答案。

我使用的是ARM9 SOC和DDR3芯片的定制主板。它是从制造商的参考电路板原理图中列出的,我最初使用与参考板相同的存储器控​​制器配置运行它。大多数电路板工作正常,但有些电路板显示出与您所看到的相似的症状。

在调试期间,我们注意到即使DDR芯片触摸不热,使用冷冻喷雾冷却它们也会使电路板正常工作。只要DDR保持冷却,电路板就会无限期运行mtest,甚至启动进入Linux并继续运行。如果我们允许芯片回暖,电路板就会挂起。

我们的硬件人员认为必须是时序,而且散热正在改变芯片时序,足以使内存控制器配置正常工作。我们联系了我们的供应商(Marvell),他们提供了一个工具,该工具贯穿JTAG吊舱,使定时集中并提供适当的控制器配置。

这解决了所有故障板的问题。

答案 1 :(得分:0)

将DDR频率更改为166解决了问题......这绝对是200 MHz时的问题......