7218|8

80

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

谁能解释下mrc p15,0,r0,c1,c0,0?把我搞死了 [复制链接]

谁能解释下mrc p15,0,r0,c1,c0,0?把我搞死了

最新回复

3.9.1 Enabling the MMU To enable the MMU: 1. Program the TTB and domain access control registers. 2. Program level 1 and level 2 page tables as required. 3. Enable the MMU by setting bit 0 in the control register. You must take care if the translated address differs from the untranslated address because several instructions following the enabling of the MMU might have been prefetched with the MMU off (using physical = VA - flat translation). In this case, enabling the MMU can be considered as a branch with delayed execution. A similar situation occurs when the MMU is disabled. Consider the following code sequence: MRC p15,0,R1,C1,C0,0 ; Read control register ORR R1, #0x1 MCR p15,0,R1,C1,C0,0  ; Enable MMUS Fetch Flat Fetch Flat Fetch Translated You can enable the ICache and DCache simultaneously with the MMU using a single MCR instruction.复制代码  详情 回复 发表于 2008-10-13 09:15
点赞 关注

回复
举报

68

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
arm9的一个协处理器指令。。。。
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
mrc是协处理器命令。用于读取协处理器中的寄存器的数据到ARM处理器的寄存器里面。这句话的意思应该是读协处理器中的寄存器数据到ARM处理器的r0里面。应该是ARM访问MMU,一般cp15就是MMU。
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

4
 
[转帖]{cond} p#,,Rd,cn,cm{,}
MRC 从协处理器移到ARM7寄存器(L=1)
MCR 从ARM7寄存器移到协处理器(L=0)
{cond} 两个字符的条件代码
p# 被请求得协处理器的惟一标识苻
计算一个常量并放到CP Opc域
Rd 是一个表达式计算ARM7有效寄存器序号
cn 和cm 是计算有效协处理器寄存器CRn CRm序号
计算一个常量,并放到CP域
4.13.6 举例
MRC 2,5,R3,c5,c6 ;请求协处理器2 执行操作5 ,操作数为c5和c6,
; 传送结果到R3 (单次32位字)
MCR 6,0,R4,c6 ; 请求协处理器6执行操作0,操作数为R4
;结果送到c6
来自ARM7 数据手册
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

5
 
谁能解释下mrc p15,0,r0,c1,c0,0?把我搞死了
将协处理器p15的寄存器中的数据传送到ARM处理器的寄存器r0中,其中1是协处理器操作码1,0是协处理器操作码2,c1存放第一个操作数的协处理器寄存器,c0存放第二个操作数的协处理器寄存器

 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

6
 
读取控制寄存器,这包括 MMU,cache,writebuffer 的打开与关闭.
读出修改后再用 mcr p15,0,r0,c1,c0,0 写回去.
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

7
 
支持搂主,收藏
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

8
 
我也想了解,谢谢LZ.
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

9
 
  1. 3.9.1 Enabling the MMU
  2. To enable the MMU:
  3. 1. Program the TTB and domain access control registers.
  4. 2. Program level 1 and level 2 page tables as required.
  5. 3. Enable the MMU by setting bit 0 in the control register.
  6. You must take care if the translated address differs from the untranslated address
  7. because several instructions following the enabling of the MMU might have been
  8. prefetched with the MMU off (using physical = VA - flat translation).
  9. In this case, enabling the MMU can be considered as a branch with delayed execution.
  10. A similar situation occurs when the MMU is disabled. Consider the following code
  11. sequence:
  12. MRC p15,0,R1,C1,C0,0 ; Read control register
  13. ORR R1, #0x1
  14. MCR p15,0,R1,C1,C0,0  ; Enable MMUS
  15. Fetch Flat
  16. Fetch Flat
  17. Fetch Translated
  18. You can enable the ICache and DCache simultaneously with the MMU using a single
  19. MCR instruction.
复制代码
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表