共2条
1/1 1 跳转至页
arm arm里的重新映射什么含义,为什么一定要映射呢?

问
ARM里的重新映射什么含义,为什么一定要映射呢?
答 1:
没说一定要重新映射吧?由于启动时是从ROM启动的,而启动后如果将中断入口映射到RAM,则执行速度会加快
答 2:
我理解的映射就是跳转,原单词是map,不知道怎么翻译过来就是映射重新映射就是跳一次后,再跳一次.
为什么要这样,我估计是有三种target方式:debugInRAM,debugInFlash,release 答 3: 三种target方式:debugInRAM,debugInFlash,release我想这可不是原因。
映射是使芯片应用更灵活,在不同场合下更好的发挥它的优势的原因吧!
答 4: 没说一定要。呵呵看了很多遍书,总有些不明白,在51中没有映射的概念,中断产生后PC直接跳到中断向量地址执行相应的中断ISR。但在ARM中就不太明白了,它将ROM中的中断向量列表复制到RAM中,那中断产生时,PC跳到RAM中去查找中断向量表是吗?每个中断向量都只放了一条跳转语句,那从RAM中和从ROM中提取这一条指令会有多少的时间优势呀? 答 5: RAM会比ROM快很多的。不映射时,中断入口在ROM中,发生中断时,从ROM中取代码运行。
而映射后,中断入口在RAM中,并且将中断服务跳转的代码复制到了这个位置,当中断发生时,从RAM中取代码运行,速度加快了很多。 答 6: 主要是为了兼容其他平台吧书上都这么说,我觉地和速度没有太大的联系 答 7: 再来除了RAM比ROM快使用存储器映射外,书中还提到了将中断向量列表复制到RAM中然后再映射到0x00000000-0x0000003F可以动态的更改中断向量列表。我想是因为试验做的不够,遇到的实际问题还很少,因为现在只是在做书中的例子,还没有做过实际应用的开发,在什么情况下需要动态的更改它呢? 答 8: 动态改的话就可以利用它,来使用不同的中断处理程序嘛如果入口地址在ROM中,则固定死了,如果不同的时候,需要不同的处理,则需要使用判断语句来选择处理程序。
而如果在RAM中,换个中断服务程序就很容易了嘛,只要在入口地址中,把跳转指令一改就行了。
to simple1423:映射跟跳转可相差远了。
========================================================
simple1423 发表于 2006-2-20 12:21 Philips ARM ←返回版面
我理解的映射就是跳转,原单词是map,不知道怎么翻译过来就是映射
重新映射就是跳一次后,再跳一次.
答 9: 找到答案了全文下载http://www.21icsearch.com/buzi/upimage/upfile/20053101735010.pdf 答 10: 学到了不少东西,谢谢brm00及各位 答 11: 我认为是不是由于cpu产生的虚拟地址要在存储器上实质的反应产生物理地址所以要映射吧 我认为一定要啊 请指点阿 答 12: 重映射是不是 为了在不同模式下可以访问听一个地方 所以要重映射把 请指点
为什么要这样,我估计是有三种target方式:debugInRAM,debugInFlash,release 答 3: 三种target方式:debugInRAM,debugInFlash,release我想这可不是原因。
映射是使芯片应用更灵活,在不同场合下更好的发挥它的优势的原因吧!
答 4: 没说一定要。呵呵看了很多遍书,总有些不明白,在51中没有映射的概念,中断产生后PC直接跳到中断向量地址执行相应的中断ISR。但在ARM中就不太明白了,它将ROM中的中断向量列表复制到RAM中,那中断产生时,PC跳到RAM中去查找中断向量表是吗?每个中断向量都只放了一条跳转语句,那从RAM中和从ROM中提取这一条指令会有多少的时间优势呀? 答 5: RAM会比ROM快很多的。不映射时,中断入口在ROM中,发生中断时,从ROM中取代码运行。
而映射后,中断入口在RAM中,并且将中断服务跳转的代码复制到了这个位置,当中断发生时,从RAM中取代码运行,速度加快了很多。 答 6: 主要是为了兼容其他平台吧书上都这么说,我觉地和速度没有太大的联系 答 7: 再来除了RAM比ROM快使用存储器映射外,书中还提到了将中断向量列表复制到RAM中然后再映射到0x00000000-0x0000003F可以动态的更改中断向量列表。我想是因为试验做的不够,遇到的实际问题还很少,因为现在只是在做书中的例子,还没有做过实际应用的开发,在什么情况下需要动态的更改它呢? 答 8: 动态改的话就可以利用它,来使用不同的中断处理程序嘛如果入口地址在ROM中,则固定死了,如果不同的时候,需要不同的处理,则需要使用判断语句来选择处理程序。
而如果在RAM中,换个中断服务程序就很容易了嘛,只要在入口地址中,把跳转指令一改就行了。
to simple1423:映射跟跳转可相差远了。
========================================================
simple1423 发表于 2006-2-20 12:21 Philips ARM ←返回版面
我理解的映射就是跳转,原单词是map,不知道怎么翻译过来就是映射
重新映射就是跳一次后,再跳一次.
答 9: 找到答案了全文下载http://www.21icsearch.com/buzi/upimage/upfile/20053101735010.pdf 答 10: 学到了不少东西,谢谢brm00及各位 答 11: 我认为是不是由于cpu产生的虚拟地址要在存储器上实质的反应产生物理地址所以要映射吧 我认为一定要啊 请指点阿 答 12: 重映射是不是 为了在不同模式下可以访问听一个地方 所以要重映射把 请指点
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
分享一种检测按键状态的方法被打赏20分 | |
周末总结一下,STM32C0系列的开发经验被打赏50分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下定时器配置被打赏20分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下PWM配置被打赏20分 | |
【Cortex-M】Systick Timer使用被打赏10分 | |
分享汽车防盗系统的组成与分类(一)被打赏5分 | |
VOFA+波形显示+JYD-31蓝牙发送和解析不定长数据被打赏10分 | |
【换取手持数字示波器】-STM32F4PWM控制LED灯管亮度被打赏22分 | |
【换取手持数字示波器】STM32F4驱动RPR-0521RS照度、接近一体型传感器被打赏23分 | |
宏定义和const关键字定义被打赏5分 |