ARM如何从SD卡启动?

时间:2014-05-09 22:31:54

标签: arm boot bootloader system-on-chip

我对串行闪存设备的现代系统启动概念感到有些迷茫。在裸机上编程了大量简单的微控制器,从8位PIC到32位Power架构(总是通过重新编程正常的总线可寻址闪存),我想知道现代SoC如何从串行设备启动。我没有在网上找到太多,因为每个系统似乎都依赖于SD卡编程工具和辅助引导程序的组合,两者都很少得到关注。

1 个答案:

答案 0 :(得分:5)

'如何'是一个基于掩码PROM的主引导加载程序烘焙到SoC。除了初始化SD卡接口以及可能具有非常保守的时序的某些SDRAM之外,它不需要做很多事情(尽管有些设备在此时使用嵌入式SRAM)。

然后枚举卡接口,从找到的第一张卡中读取FAT,然后将辅助引导加载程序复制到SRAM或SDRAM中并执行它。

通常存在一些限制,例如辅助引导加载程序是卡上的第一个文件,并且分配的锁是连续的。

此时许多系统都会加载另一个启动加载程序,这是启动操作系统的启动加载程序。