zoukankan      html  css  js  c++  java
  • S3C2440的存储器映射(27根地址线如何寻找1G的地址)

    原帖:http://blog.csdn.net/ce123/article/details/6882091

    查S3C2440的数据手册可知S3C2440可寻址1G的地址范围,但是S3C2440的地址线只有27根,理论上只能寻址2的27次方等于128M的地址范围。

     

               通过细致的分析可知:S3C2440通过一个BANK来解决了这个问题。S3C2440有8个存储器BANK,引出了8根BANK线(对应nGCS0~ nGCS7),通过这个8根线来选通和关闭不同的存储器,这样S3C2440最多就可以连接8个128M的存储器。对某个BANK地址的访问实际上就是选通该BANK,于是ARM核只要发出一个地址,然后S3C2440的储存控制器把该地址解释成两部分:一部分是BANK地址,一部分是连接到该BANK存储器内部的地址就可以访问了。而作为32位的CPU,理论上可以使用的地址范围可以达到2的32次方等于4G,除去上述的1G地址空间,还有一部分是CPU内部寄存器的地址,剩下的地址空间没有使用。


    图1 S3C2440的存储器映射

    0x4000 0000以后的地址是怎样映射的呢?

    0x4000 0000——0x4000 0FFF            从NOR Flash启动时片内4KB SRAM映射在这个地址范围,而从NAND启动时片内4KB SRAM映射在0x0000 0000地址,则这个地                                                                址范围是保留的。

    0x4000 0FFF——0x4800 0000            保留

    0x4800 0000——0x6000 0000             特殊功能寄存器的地址

    0x6000 0000——0xFFFF FFFF           未用

    具体这些地址是如何映射的,可以参考我写的另一篇博文《对S3C2440特殊功能寄存器地址的深入挖掘》。

  • 相关阅读:
    011-通过网络协议解析网络请求-DNS-ARP-TCPIP
    010-HTTP协议
    009-DNS域名解析系统
    008-ICMP协议(网络控制文协议)
    007-IP报文协议
    007-排序算法-堆排序
    006-排序算法-希尔排序
    007-Linux 查看端口
    005-排序算法-归并排序
    004-排序算法-选择排序
  • 原文地址:https://www.cnblogs.com/pxshin/p/2934460.html
Copyright © 2011-2022 走看看