您的位置:首页 > 其它

ARM三星44B0存储管理探秘

2008-01-21 15:51 260 查看
2007-12-24 13:56:14





ARM三星44B0存储管理探秘
初学ARM7TDMI,正好实验室有三星44b0的试验板一块,看了几天44b0的数据手册和用户手册,看的晕乎乎的,最主要的是对其存储管理不了解,因为三星44b0把存储器分了8块,也就是8个bank,从bank0到bank7,每个bank支持最大32M,总共支持256M存储空间。
实际上我的试验板有2Mflash存储器,64M的SDRAM,那么我的存储器的是怎么分布的呢?试验板带的资料也没有细说,但从其调试手册上看其调试地址是从0x0c00_0000开始的,为什么从0x0c00_0000开始呢?64M的SDRAM的地址空间是从哪里开始到哪里结束呢?2M的FLASH的地址空间从哪里开始呢?一团迷雾。
后来对着板子看了半天研究了它的原理图和三星44b0的数据手册,认为64M的SDRAM正好是Bank6和bank7的存储容量,而且调试的时候是把程序下载到SDRAM中开始的,并不是从FLASH开始,所以44B0的SDRAM的地址是从0x0c00_0000到0x0fff_ffff.
那么Flash的又从哪里开始呢?因为ARM运行,必须从0x0000_0000的ROM地址开始,所以2M的Flash是放在bank0里面的。这样就完全解释了上面遇到的疑问,在网上搜索了半天,从点点滴滴的资料了证明了我的判断。
理解存储器分布后我的感觉恍然明朗起来,对44B0有了一个总体的了解,也有了初步认识。
一点认识,希望ARM爱好者们赐教和讨论:)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: