社区
嵌入开发(WinCE)
帖子详情
疑问:ARM规定了异常向量的复位从0x0
逸萌
2010-12-15 11:04:29
如果整个Nor flash的代码被拷贝到SDRam,程序执行过程中产生异常,会执行Nor flash的异常跳转,而不是执行SDRam里面的SDRam,这样不是很慢吗?
ARM规定了复位0x0是否可以被当成虚地址,通过MMU映射到SDRam呢?
或者如果没有MMU,又怎么办?
或者其它方法?
...全文
199
5
打赏
收藏
疑问:ARM规定了异常向量的复位从0x0
如果整个Nor flash的代码被拷贝到SDRam,程序执行过程中产生异常,会执行Nor flash的异常跳转,而不是执行SDRam里面的SDRam,这样不是很慢吗? ARM规定了复位0x0是否可以被当成虚地址,通过MMU映射到SDRam呢? 或者如果没有MMU,又怎么办? 或者其它方法?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
loongembedded
2010-12-16
打赏
举报
回复
ARM规定了复位0x0是否可以被当成虚地址,通过MMU映射到SDRam呢?
---》有这样的说法吗?在哪里有说明啊,我想看看。
逸萌
2010-12-16
打赏
举报
回复
[Quote=引用 4 楼 paul_chao 的回复:]
引用楼主 mydeardingxiaoli 的回复:
如果整个Nor flash的代码被拷贝到SDRam,程序执行过程中产生异常,会执行Nor flash的异常跳转,而不是执行SDRam里面的SDRam,这样不是很慢吗?
1. 很慢應是不會, 事實上, 你也可以在 NOR Flash 加入跳到 SDRAM 的指令.
2. 你可以打開 ICache, 則 SDRAM/NOR Flash 的執行……
[/Quote]
存在其它方法吗?
paul_chao
2010-12-16
打赏
举报
回复
[Quote=引用楼主 mydeardingxiaoli 的回复:]
如果整个Nor flash的代码被拷贝到SDRam,程序执行过程中产生异常,会执行Nor flash的异常跳转,而不是执行SDRam里面的SDRam,这样不是很慢吗?
1. 很慢應是不會, 事實上, 你也可以在 NOR Flash 加入跳到 SDRAM 的指令.
2. 你可以打開 ICache, 則 SDRAM/NOR Flash 的執行速度可以加快.
ARM规定了复位0x0是否可以被当成虚地址,通过MMU映射到SDRam呢?
3. YES
或者如果没有MMU,又怎么办?
4. 同第 1 點.
或者其它方法?
[/Quote]
Paul, Chao @ Techware
norains
2010-12-16
打赏
举报
回复
"如果整个Nor flash的代码被拷贝到SDRam,程序执行过程中产生异常,会执行Nor flash的异常跳转,而不是执行SDRam里面的SDRam,这样不是很慢吗?"
-->这个情形就要分开讨论了。如果是ARM M3的话,你将所有代码拷贝到SRAM之后,你还要写寄存器,将向量表指向SRAM的向量表地址,否则异常出现跳转的还是NOR的。至于ARM其它系列的话,向量表没研究过,所以这里就不发表讲解了。
当我遇上-你
2010-12-16
打赏
举报
回复
参考http://bbs.21ic.com/icview-149596-1-1.html
详解
ARM
体系结构支持的
异常
包括
复位
、中断、未定义指令等.pdf
当处理器的
复位
电平有效时,产生
复位
异常
,程式跳转到
复位
异常
处执行(
异常
向量
:
0x0
000,0000); 2、未定义指令(优先级6) 当
ARM
处理器或协处理器遇见不能处理的指令时,产生为定义
异常
。可使用...
ARM
异常
处理机制
ARM
异常
处理机制
ARM
处理器支持七种
异常
中断,每种
异常
都有自己的固定
向量
地址,具体包括: 1. **
复位
(Reset)**:地址
0x0
0000000,触发方式为系统启动或硬件
复位
,进入特权模式。 2. **未定义指令(Undefined Instruction)**:...
LPC2119调试说明.pdf
MAMMAP 寄存器用于改变地址从
0x0
0000000 开始的中断
向量
的映射。MAMMAP 的值可以设置为用户 RAM 模式、用户 FLASH 模式或 BOOT 装载程序模式。不同的模式下,中断
向量
的映射地址也不同。 三、PLL 频率计算方法 ...
uboot启动过程分析
0x0
0000000
复位
管理模式
复位
电平有效时,产生
复位
异常
,程序跳转到
复位
处理程序处执行
0x0
0000004 未定义指令 未定义模式 遇到不能处理的指令时,产生未定义指令
异常
0x0
0000008 软件中断 管理模式 执行 SWI 指令...
ARM
异常
异常
向量
地址:
0x0
0000000。
异常
向量
地址:
0x0
0000010。
异常
向量
地址:
0x0
000001C。
异常
向量
地址:
0x0
0000018。
异常
向量
地址:
0x0
000000C。
异常
向量
地址:
0x0
0000008。
异常
向量
地址:
0x0
0000004。
嵌入开发(WinCE)
19,524
社区成员
41,565
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章