S3C6410学习——MemoryMap

S3C6410跟S3C2440不同,S3C6410支持32位物理地址空间并将该地址空间分为2个部分,一部分是“存储空间”,另一部分是“外设空间”。其中主存储空间通过SPINE总线访问,其地址空间为0x0000,0000~0x6FFF,FFFF,主存储空间又分为4个区域——引导镜像区(boot image area),内部存储区(internal memory area),静态存储区(static memory area)和动态存储区(dynamic memory area)。

引导镜像区(boot image area)的地址空间为0x0000,0000~0x07FF,FFFF,但是没有实际的内存映射,引导镜像区映射到内部存储区或者静态存储区的部分区域,并且起始地址固定为0x0000,0000。

内部存储区供boot loader访问内部ROM(internal ROM)和内部SRAM(internal SRAM),也称为Steppingstone。每个内部存储器的起始地址都是固定的。内部ROM的地址空间为0x0800,0000~0x0BFF,FFFF,但是实际的存储空间只有32KB,这一区域是只读的,且当启动方式选择为内部ROM启动时,该区域应该映射到引导镜像区(boot image area)。SRAM的地址空间为0x0C00,0000~0x0FFF,FFFF,但是实际的存储空间只有4KB。

静态存储区的地址空间为0x1000,0000~0x3FFF,FFFF,通过这个区域可以访问SROM,SRAM,NOR Flash,异步NOR接口设备,OneNand Flash和Steppingstone。每个区域对应一个片选,例如,地址空间0x1000,0000~0x17FF,FFFF对应Xm0CSn[0]。每个片选的起始地址是确定的。Nand flash和CF/ATA不能通过静态存储区访问,所以如果Xm0CSn[5:2]对应的任意区域映射到NFCON或CFCON都导致其对应区域的地址空间无法访问。一个特例是当Xm0CSn[2]对应的区域用于NAND Flash时Steppingstone映射到地址空间0x2000,0000~0x27FF,FFFF。

动态存储区的地址空间为0x4000,0000~0x6FFF,FFFF,DMC1有权使用0x5000,0000~0x6FFF,FFFF的地址空间。每个片选的起始地址是可以配置的。

外设空间通过PERI总线访问,并其地址空间为0x7000,0000~0x7FFF,FFFF。所有的特殊功能寄存器都可以通过这个区域访问。如果数据来自NFCON或CFCON,这些数据也通过PERI总线访问。

主存储区的内存分布情况如下:

外设空间分布情况请直接参考手册,以上纯属个人理解的芯片手册,如有疏漏,敬请指出。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值