关于ARM处理器Remap的理解 (抄的)

2016-01-29 18:34 3 1 收藏

关于ARM处理器Remap的理解 (抄的),关于ARM处理器Remap的理解 (抄的)

【 tulaoshi.com - Linux 】

0.什么是Remap 我的理解是:在ROM从0x0用几句指令引导系统之后,把RAM映射到0x0就是Remap。 1.Remap的作用 当ARM处理器上电或者Reset之后,处理器从0x0取指。因此,必须保证系统上电时,0x0处有指令可以执行。所以,上电的时候,0x0地址处必定是ROM或者Flash(NOR)。 但是,为了加快启动的速度,也方便可以更改异常向量表,加快中断响应速度,往往把异常向量表映射到更快、更宽(32bit/16bit)的RAM中。但是异常向量表的开始地址是由ARM架构决定的,必须位于0x0处,因此,必须把RAM映射到0x0。 2.Remap的配置 Remap的实现和ARM处理器的实现相关。 1)如果处理器有专门的寄存器可以完成Remap。那么Remap是通过Remap寄存器的相应bit置1完成的。如Atmel AT91xx 2)如果处理器没有专门的寄存器,但是memory的bank控制寄存器可以用来配置bank的起始地址,那么只要把RAM的起始地址编程为0x0,也可以完成remap。如samsung s3c4510 3)如果上面两种机制都没有,那么Remap就不要做了。因为处理器实现决定了SDRAM对应的bank地址是不能改变的。如Samsung S3c2410. 3.Remap配置前后要做的工作 Remap前后,不同之处就是RAM的位置变了。为了达到Remap的目的,就是加快启动的速度和异常处理速度,一定要初始化异常堆栈和建立异常向量表的。 4.如果象2410那样不能Remap的话怎么办? 2410不是不能Remap吗?为了加快启动速度,可以这样做 1)使用它的NAND boot模式。为什么NAND boot会比较快,那是因为2410里面有块小石头——“SteppingStone”,一块4KB SRAM,它是映射在0x0的。启动程序会自动被copy到这个石头里面。自然异常向量的入口放到这个地方,一样可以达到比NOR boot快的启动、异常响应速度。 2)如果你对NOR Boot情有独衷,那么你只好把你的异常向量的入口copy到SDRAM里面,实现所谓的High Vector 我个人认为,如果中断向量放在rom中的0x0位置,就用不着remap,但是无法再更改中断向量,如果放在ram或其他的存储器中,那么就应该用的remap,因为在系统复位后,对系统环境的初始化是从中断向量中的中断reset开始的,而系统运行必须是从rom的0x0开始的,因此应该利用remap把放中断向量的初始地址映射到rom的0x0处,以使程序进行正确的初始化.这样既可以初始化,有可以使程序运行的快一些,因为毕竟rom的速度是比较慢的. 以上是个人理解,如有错误请大家指正!!!

来源:https://www.tulaoshi.com/n/20160129/1506366.html

延伸阅读
标签: 电脑入门
组装电脑的朋友一般都必须对电脑硬件有一定的认识,必须要了解其均衡性,元件之间搭配的均衡性以及硬件的性能,处理器是电脑爱好者都非常关心的,那么什么样的处理器才是不错的处理器(CPU)呢?一般我们主要看的处理器的参数就可以知道大概在当前处理器属于哪个档次了,今天就来与大家详细介绍处理器CPU的参数。 1.主频 主频也叫时钟频率,单位...
引言 bootloader是用来完成系统启动和系统软件加载工作的程序。它是底层硬件和上层应用软件之间的一个中间件软件,完成处理器和周边电路正常运行所要的初始化工作;可以屏蔽底层硬件的差异,使上层应用软件的编写和移植更加方便;不仅具有类似PC机上常用的BIOS(Basic Input Output System,基本输入、输出系统监控程序)功能,而且还可具有...
标签: 生活常识
食物垃圾处理器:(Food waste processor)是安装于家庭厨房洗菜盆的排水口处的厨房电器。因为其可方便地将菜头菜尾、剩菜剩饭等食物性厨余垃圾粉碎后排入下水道,能即时、方便、快捷清洁厨房,避免了食物垃圾因储存而滋生病菌、蚊虫和异味,解决下水道容易堵塞等问题而广受欢迎。 上图为食品废物处理器的安装效果图。 ...
标签: PS PS教程
本文由 中国 PS飞翔原创,转载须保留此信息 上次写的http://bbs.jcwcn.com/viewthread.php?tid=29388&extra=page=1帖子有些朋友看得不是太明白,其实也不愿大家,因为那天太困了又加上偶是学电子的,天天和电路板、二极管三极管打交道,所以语言表达能力都退化了:(今天我把我认为的通道混合器的原理、应用等和大家讨论一下。错了也不...
iPhone6sPlus处理器版本如何鉴别?   iPhone6sPlus处理器版本如何鉴别?iPhone6sPlus的A9处理器有两个版本,一个出自台积电,而另外一个是三星,那么如何辨别呢?接下来,就随图老师小编一起来学习以下这篇教程吧! 1)打开【Safari浏览器】,输入http://demo。hiraku。tw/CPUIdentifier/进入,接着点击【Install】,再点击【安装...

经验教程

388

收藏

38
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部