【问题标题】:About Sdram software :Self-refresh mode关于 Sdram 软件:自刷新模式
【发布时间】:2010-05-28 06:05:04
【问题描述】:

对于电源管理,我们必须将系统置于深度睡眠(系统睡眠)模式,为此我们必须将 SDRAM 置于自刷新模式。 谁能告诉将 SDARM 设置为自刷新模式的步骤。

我尝试了 SDRAM 配置寄存器,我发现 SDRAM 确实进入了自刷新模式[我们探测了 SD clk out] 但是系统在某些情况下在休眠时崩溃。

【问题讨论】:

  • 阅读(并理解)SDRAM 控制器和 SDRAM 本身的数据表。它是特定于部分的,您没有提供该信息(我怀疑这样的问题会被允许存在,除非您能清楚地表明它是一个软件开发问题)。

标签: embedded


【解决方案1】:

SDRAM 芯片的数据表应指定将芯片放入自刷新的确切顺序(可能在 JEDEC 规范中)。您是否探查了所有进入 SDRAM 芯片的控制信号?验证芯片是否真的被告知进入自刷新模式。

如果芯片没有正确地进行自我刷新,那么你的“进入睡眠”代码就有问题。

之后,请确保您在处理器到达恢复向量时退出正确自刷新(使用范围验证它)。您可能缺少一些重新初始化步骤。

如果以上都得到了正确处理,那么你崩溃的原因不同。某些设备可能丢失了一些您没有保留的上下文。电源排序可能是另一个原因(某些设备仍处于断电状态)。

【讨论】:

  • 感谢 msemack,我已经探查了 SDRAM 的所有控制信号,这真的很有帮助。
【解决方案2】:

首先,您需要阅读 SDRAM 和 CPU 上的规范,了解系统在进入和退出睡眠时的行为方式。这个问题没有任何通用的遮阳篷。没有足够的信息。但通常 CPU 中的延迟和计时信息是一个很好的提示。例如增加延迟,再试一次。

【讨论】:

  • 我已经通过了规范并遵循了相同的程序。然而,当退出自我刷新模式时,我们看到了崩溃。
猜你喜欢
  • 1970-01-01
  • 2017-05-26
  • 1970-01-01
  • 1970-01-01
  • 2022-06-17
  • 2013-03-24
  • 1970-01-01
  • 2021-09-15
  • 1970-01-01
相关资源
最近更新 更多