天嵌 ARM开发社区

 找回密码
 注册
查看: 3004|回复: 8

arm协处理器

[复制链接]
﹖诲ザ 发表于 2012-6-3 22:25:56 | 显示全部楼层 |阅读模式
mov r0, #0
  mcr  p15, 0, r0, c7, c7, 0 /* flush v3/v4 cache */
  mcr  p15, 0, r0, c8, c7, 0 /* flush v4 TLB */
arm协处理器mcr 中的0表示啥意思啊?可以换为别的说行不行啊?
这是uboot中的stage1部分的内容
guoke25 发表于 2012-6-4 08:09:13 | 显示全部楼层
mcr  p15, 0, r0, c7, c7, 0
这条指令是指要求p15协处理器用C7寄存器来执行0类型的操作,其中操作数是0.
前面的0是操作数,后面的0是类型。这是一条表示特定功能的指令,上面的操作数都是特定的,意思是清除指令和数据的cache。这条指令可以从ARM920T Technical Reference Manual中查到
同样的,mcr  p15, 0, r0, c8, c7, 0 也是一条特定的指令,表示清除TLB表。TLB表是用来进行地址转换的。
回复

使用道具 举报

guoke25 发表于 2012-6-4 08:15:26 | 显示全部楼层
R0存放的是处理的结果
回复

使用道具 举报

guoke25 发表于 2012-6-4 08:19:51 | 显示全部楼层
CP15协处理器一共有16个寄存器,每个寄存器都定义了不同的功能,当你对C7进行写操作的时候会产生cache的操作,当你对C8进行写操作的时候会产生TLB的操作
回复

使用道具 举报

 楼主| ﹖诲ザ 发表于 2012-6-4 15:29:55 | 显示全部楼层
guoke25 发表于 2012-6-4 08:09
mcr  p15, 0, r0, c7, c7, 0
这条指令是指要求p15协处理器用C7寄存器来执行0类型的操作,其中操作数是0.
...

你好··我想问一下··在哪可以看到每个操作数具体代表的意思??
回复

使用道具 举报

guoke25 发表于 2012-6-4 15:38:25 | 显示全部楼层
﹖诲ザ 发表于 2012-6-4 15:29
你好··我想问一下··在哪可以看到每个操作数具体代表的意思??

ARM920T Technical Reference Manual
回复

使用道具 举报

guoke25 发表于 2012-6-4 15:48:02 | 显示全部楼层
目前ARM920T Technical Reference Manual还没找到中文版的
回复

使用道具 举报

 楼主| ﹖诲ザ 发表于 2012-6-4 17:50:01 | 显示全部楼层
guoke25 发表于 2012-6-4 15:48
目前ARM920T Technical Reference Manual还没找到中文版的

哦哦,谢谢大师提点
回复

使用道具 举报

guoke25 发表于 2012-6-4 17:54:05 | 显示全部楼层
﹖诲ザ 发表于 2012-6-4 17:50
哦哦,谢谢大师提点

不客气,大师可不敢当:)
回复

使用道具 举报

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

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-6-19 05:32 , Processed in 2.044732 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表