zoukankan      html  css  js  c++  java
  • S3C2440的内存情况在NAND FLASH或者NOR FLASH启动的情况下

    1,从NANDFLASH启动时,在ARM上电时,ARM会自动把NANDFLASH前4K的内容拷贝到S3C2440内部SRAM中,同时把SRAM的地址映射到0X00000000。ARM上电后会从SRAM处开始运行。

    2,从NOR FLASH启动时,因为NORFLASH接在bank0。地址映射是0X00000000。所以ARM上电后直接运行NORFLASH里的程序。此时S3C2440内部SRAM地址为0X40000000。

    3,ARM上电启动都是从0X00000000开始运行。但是对于复位程序入口,ResetEntry的值在ARM上电运行时是0X00000000,在JTAG仿真时是0X30000000。这个值很关键,在拷贝程序时会用到。


    硬件上决定开机时从nand flash或nor flash启动,具体配置如下

    则,相应的内存映射如下

    SROM means ROM or SRAM type memory


    关于Figure6-5图,需要做的说明是:

    1,在jz2440开发板,SDRAM接在BANK6,它的起始地址恒定是0x30000000。

    2,图中所示的列图是芯片认为的内存。即可以认为了是芯片内的内存。

    3,对于OM[1:0]=00从nand flash启动nand flash不能统一地址到内存,上电后芯片自动将nand flash的前4k的内容复制到芯片内的前4k内存,然后芯片开始从0x00000000处运行,从0x00000000开始的拷贝过来的这4k内存内容负责将nand flash中的bootloader复制到芯片地址0x30000000处,继续执行的时候,BANK1,BANK2,,处都是没有接SROM的,因此,马上就会执行0x30000000处的代码。整个过程可以这样说,复制到芯片内部的SRAM4K代码将nand flash里的程序,包括bootloader复制到链接地址(链接地址就是SDRAM地址),然后去顺序执行。

    4,对于OM[1:0]=01,10,是从nor flash启动,nor flash接到的是BANK0,它做为了此处的 SROM存在,它的起始地址便是0x00000000,芯片从0地址顺序执行。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    javascript循环结构练习
    个人复习JavaScript重点(总结一)
    第十章汽车租凭系统
    员工执行
    第六章预习
    第五章使用Dictionary替换List<t>实现功能
    第5章体检套餐管理系统
    JAVA面试题
    AJAX
    SSM中的登陆验证码
  • 原文地址:https://www.cnblogs.com/otaku-lip/p/4765008.html
Copyright © 2011-2022 走看看