2440启动流程


title: 2440启动流程
tags: ARM
date: 2018-09-10 18:59:53

2440启动流程

NOR启动

  • NOR启动的时候,NOR Flash 自身地址为0,片内RAM为0x4000,0000
  • 程序直接在NOR上读取,运行
  • NOR 能够像内存一样的读取 ,但不能直接写

NAND 启动

  • 片内4KRAM的地址为0x0000,0000,NOR FLASH 不可见
  • 自动复制Nand前4K的程序到片内RAM中运行

堆栈设置

堆栈可以设置在内部sram,也可以设置在片外的sdram

  • 片内sram分为nor启动和nand启动,nor启动设置为0x40000000+4k,nand启动为4k

  • 使用片外sdram的话要先初始化sdram,地址倒是固定的,可以统一设置sp到这个sdram 0x30000000+32M*2=0x34000000

    mark

如何判断

  • 当从NAND启动的时候,其实程序是从片内4K的RAM启动,也就是能读能写了
  • 当从NOR启动的时候,NOR是只读的

FAQ:

  • 单片机上电瞬间是怎样在未编程的情况下将程序从nandflash考入sram的?

    2440 有一个 boot rom 阶段,厂家固化了一段启动代码在片内rom中,这段代码能够简单的操作nandflash,把前4K拷贝到sram

原文地址:https://www.cnblogs.com/zongzi10010/p/10023503.html