【发布时间】:2022-01-14 22:29:51
【问题描述】:
我一直在研究引导加载程序,并且大多数来源都有解释说 ROM 代码在大多数芯片上,告诉芯片上电后去哪里,然后 ROM 代码加载一小块将代码写入 SRAM。
我的问题是 DRAM 需要控制器才能运行,但为什么 SRAM 不需要?谁控制 SRAM?或者它是如何被控制的? 另外,在系统完成 SRAM 并且事情耗尽 DRAM 之后会发生什么?
我还不知道这是否有意义,但最好能从u-boot和Linux的角度回答。
【问题讨论】:
-
这个问题不是更适合electronics.stackexchange.com吗?
-
@Codo 不,这更多是关于软件和一般理论,而不是基于硬件的问题。
-
不,这真的不是一个软件问题,它完全是关于硬件如何工作的。从问题的措辞和当前的答案中都可以清楚地看到这一点。这显然是题外话——即使它很有趣。 SRAM 是静态的,因此不需要刷新控制。它有一个更简单的接口和时间;设置地址总线,时钟输出使能,读取数据总线。我不明白为什么 uboot 或 Linux 是相关的。一个足够大以运行 Linux 的 SRAM 将非常昂贵且相当缓慢。 SDRAM 密度高、价格便宜且速度快。
标签: embedded embedded-linux bootloader u-boot