ARM920T 中断向量表基地址怎么转移?

[复制链接]
5164|5
 楼主| 飞翔天空 发表于 2008-10-31 15:50 | 显示全部楼层 |阅读模式
RT&nbsp;:&nbsp;<br />&nbsp;&nbsp;&nbsp;有些人说在&nbsp;0x00000000&nbsp;里放跳转语句&nbsp;,&nbsp;有的说通过&nbsp;MMU&nbsp;转换;<br />&lt&lt&nbsp;ARM&nbsp;Software&nbsp;Development&nbsp;Tool&nbsp;Kit&nbsp;v2.50&nbsp;User&nbsp;Guid&nbsp;&nbsp;&gt&gt&nbsp;上是说:<br />For&nbsp;example,&nbsp;on&nbsp;reset,&nbsp;an&nbsp;aliased&nbsp;copy&nbsp;of&nbsp;ROM&nbsp;is&nbsp;present&nbsp;at&nbsp;0x0,&nbsp;but&nbsp;RAM&nbsp;is&nbsp;remapped&nbsp;<br />to&nbsp;zero&nbsp;when&nbsp;code&nbsp;writes&nbsp;to&nbsp;the&nbsp;RPS&nbsp;REMAP&nbsp;register.&nbsp;<br /><br />它提到的&nbsp;remap&nbsp;又是怎么做到的&nbsp;?<br /><br />;<br />以前是用过一片叫&nbsp;AES32000&nbsp;的非&nbsp;ARM&nbsp;芯片,&nbsp;它的协处理器有个寄存器可以直接设向量表的首地址,&nbsp;不知道&nbsp;ARM&nbsp;有没有类似功能,&nbsp;所以查了一下它的协处理器,&nbsp;发现&nbsp;R1-Control&nbsp;Register&nbsp;有这个:<br />13&nbsp;V&nbsp;bit&nbsp;Base&nbsp;location&nbsp;of&nbsp;exception<br />registers<br />0&nbsp;=&nbsp;Low&nbsp;addresses&nbsp;=&nbsp;0x00000000.<br />1&nbsp;=&nbsp;High&nbsp;addresses&nbsp;=&nbsp;0xFFFF0000.<br /><br />这个做什么用的&nbsp;?&nbsp;0xFFFF0000&nbsp;好像又上不了&nbsp;SDRAM&nbsp;&nbsp;?<br /><br /><br /><br /><br /><br /><br /><br />---&nbsp;我是希望有个方法能直接映射到内存空间,&nbsp;这样不但灵活,&nbsp;运行效率显然也比从&nbsp;0&nbsp;地址&nbsp;跳转来的快
usecoolful 发表于 2008-11-5 11:48 | 显示全部楼层

查看CP15寄存器的相关信息

ARM的CPU,&nbsp;MMU作为一个协处理器存在.&nbsp;根据不同的系列有不同搭配.&nbsp;需要查询DATASHEET才可知道是否有MMU.&nbsp;如果有的话,&nbsp;一定是编号为15的协处理器.&nbsp;可以提供32BIT共4G的地址空间.<br /><br />
icecut 发表于 2008-11-5 13:07 | 显示全部楼层

2410没有remap

用mmu映射一下
playlinus 发表于 2008-11-5 14:51 | 显示全部楼层

楼上讲的MMU映射具体怎么实现呢 ?

以2410为例子,能否发些用于remap的源<br />代码上来&nbsp;?
 楼主| 飞翔天空 发表于 2008-11-6 18:02 | 显示全部楼层

o

谢谢&nbsp;icecut&nbsp;;&nbsp;你居然知道我在弄&nbsp;2410&nbsp;:&nbsp;&gt<br />明白了,&nbsp;原来&nbsp;Remap&nbsp;功能不是每个&nbsp;ARM&nbsp;都有的功能<br />
playlinus 发表于 2008-11-7 16:56 | 显示全部楼层

用MAP和FIELD等指令建立二级中断向量表

用LDR&nbsp;PC&nbsp;SDRAM_ADDRESS指令跳转入SDRAM运行即可&nbsp;...
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

22

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部