新手学习ARM,对片内ram、SDRAM、NOR FLASH和NAND FLASH启动这几个概念的理解

时间:2023-03-08 20:38:27
  1. 片内的ram用来存储启动代码,在2440初始化sdram之前,代码就在片内ram中运行。片内ram装载的是norflash中的内容,即u-boot

  2. uboot放在norflash里,nandflash就存放的操作系统。所以norflash相当于电脑的bios,nanflash才是硬盘。sdram就是内存了

  3. uboot是一级启动代码,即bootloader,用来加载操作系统(nandflash)到sdram并且执行,当然uboot还能格式化nandflash和安装新系统的功能。

追问
哎,新手啊,刚买的板子,刚又遇到一堆问题,还没解决。
再问下哈,我想知道的细一点,就比如说,现在一个ARM板子,我还没有启动电源,那么这个片内ram,和sdram肯定是没有东西的,那么这个时候,nor flash 和 nand flash里面有个啥呢?
还有,我现在启动板子之后,又有啥跑到片内ram里,有啥跑到sdram中呢?嗯,多谢帮助啊,我会加分的撒,能按照顺序给我大概说下,我略微有个印象先
追答
nor flash 和 nand flash里面肯定有程序啊!!ARM启动后,有个自动的逻辑先从norflash开始执行程序(就像51单片机复位后PC=0000H,从这里开始执行程序),norflash是允许片内执行程序的,这个特性你需要了解。执行程序时,就把部分代码复制到内部sram,再跳转到sram执行完成sdram初始化,再将nandflash中的系统复制到sdram并运行,这样就启动了。

具体的启动过程,你可以在网上搜索到的。