地址映射问题

 

存储器地址和处理器地址

        在讲地址映射问题前,先讲述下地址空间。这边有两个概念必须理解,首先是处理器地址空间,然后是存储器地址空间,这两个是不一样的概念。这边处理器地址空间,任何处理器地址的编址都是一个地址对应一个字节,一个字节8位。对于arm来说,1G的地址空间,每个地址对应了1个字节,而存储器地址则不同,存储器的一个地址不一定代表1字节。此处我们举个例子,对于32位宽的SDRAM,16Kb大小,那么编址从0到4095,每个地址代表了4字节,所以我们必须清楚的分清处理器地址和存储器地址的区别。

 

中断重映射

         中断重映射目的是什么呢?这边举u-boot中的例子。U-boot是处理器上电后运行的一段程序,其中要使用中断,那这个中断必须要保存好,不能因为下载应用程序而损坏了u-boot的中断向量表,而我们知道处理器要读取7个异常向量都是从0地址开始的地方去读取,这边0地址是从处理器方开来的,它只管发出地址,接着等待数据返回,正因为这个特点,我们才能将flash,ram,rom等映射到0地址去,这样我们就能够实现同一个地址却可以读到不同的内容,从而实现u-boot和应用程序的向量表不同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值