当前位置:网站首页>Arm V7 coprocessor
Arm V7 coprocessor
2022-06-25 12:12:00 【xiaozhiwise】
/*
* 2012/3/29 10:47 qing
*/
Coprocessor
1.CP14 Debug the communication channel coprocessor
2.CP15 System control coprocessor
He uses coprocessor instructions MCR and MRC Provide specific registers to configure and control caches、MMU、 Protection system 、 Configure clock mode ( stay
bootloader Clock initialization uses )
|31 28|27 24| 23 21| 20 |19 16|15 12|11 8|7 5|4 | 3 0 |
---------------------------------------------------------------------------
| cond | 1110 | 0 0 0 | 0 | CRn | Rd | cp_num | opcode_2| 1 | CRm |
---------------------------------------------------------------------------
mcr {<cond>} p15, 0, <Rd>, <CRn>, <CRm>{, <opcode_2>}
<opcode_1> For ever 0b000, Not for 0 when , The result of the operation is unpredictable .
<Rd> As a source register ARM register , Its value will be transferred to the coprocessor register of . Not for PC.
<CRn> The coprocessor registers as the destination register , May be C0, C1...C15.
<CRm> Additional destination register or source operand register , It is used to distinguish different physical registers with the same number .
When no additional information is required in the instruction , take C0 Designated as <CRm>, Otherwise, the result of the instruction operation cannot be predicted .
<opcode_2> Provide additional information , Used to distinguish different physical deposits of a number . When no additional information is specified in the instruction ,
Omit <opcode_2> Or specify it as 0, Otherwise, the result of instruction operation is unpredictable .
cond It's a condition code ,bit20 yes L position ,
If L=1 It means Load, Read from the outside CPU Nuclear , That is to say MRC Instructions ,
If L=0 It means Store, That is to say MCR Instructions .[11:8] These four bits are the coprocessor number ,CP15 The number is 15, So it is 4 individual 1.
CRn yes CP15 Register number ,Rd yes CPU Core register number , Each account 4 position .
about CP15 Coprocessor , Regulations opcod1 Should be 0,opcode2 and CRm Is an option of the instruction , The meaning depends on different registers .
CP15 Register in : P180 <<arm_struc_prog>>
-----------------------------------------------------------------------------
Register number | Basic function | stay MMU The role of | stay PU The role of
-----------------------------------------------------------------------------
0 ID code ( read-only ) ID Coding and cache type
1 Control bits (W/R) Various control bits
2 Storage protection and control Address translation table base address Cachability Control bit of
3 Storage protection and control Domain access control bit Bufferablity Control bits
4 Storage protection and control Retain Retain
5 Storage protection and control Memory failure status Access control bit
6 Storage protection and control Memory failure address Protection zone control
7 Cache and write cache Cache and write cache control
8 Storage protection and control TLB control Retain
9 Cache and write cache Cache lock
10 Storage protection and control TLB lock Retain
11 Retain
12 Retain
13 Process identifier
14 Retain
15 It varies from design to design
C0:
register 0,ID Encoding register
This is a device for returning ID Encoded read-only register
You can use the opcode2 Set to except 1 Other than to access CP15 Of ID Encoding register R0(CRm At this time, it should be set to 0). for example :
MRC p15,0,Rd,c0,c0,0 ; return ID Register value
register 0, Cache type register
This is a read-only register , It contains information about the architecture and size of the cache , This allows the operating system to determine how to perform tasks such as cleaning up the cache
And locking the cache . all ARMv4T This register is included in cached processors of versions and later , Allow manufacturers of real-time operating systems to produce
A trial version of their operating system .
You can use the opcode_2 Set to 1 To visit CP15 Cache type register for R0. Such as :
MRC p15,0,Rd,c0,c0,1 ; Returns details about the cache
C1: P186
1. prohibit / Can make MMU And other storage system related functions .
2. Configure the storage system and ARM How the relevant parts of the processor work .
read :
mrc p15, 0, r0, c1, 0, 0
Write
mcr p15, 0, r0, c1, 0, 0
边栏推荐
- Which securities company's account is better and safer to open
- Use of JSP sessionscope domain
- Actual combat summary of Youpin e-commerce 3.0 micro Service Mall project
- Network related encapsulation introduced by webrtc native M96 basic base module
- Kotlin学习笔记
- 客从何处来
- 15、wpf之button样式小记
- Use PHP script to view the opened extensions
- How to open an account for trading futures Shanghai nickel products online
- 实现领域驱动设计 - 使用ABP框架 - 系列文章汇总
猜你喜欢

Explain factor analysis in simple terms, with case teaching (full)

How to use ARIMA model for prediction?

【数据中台】数据中台的OneID是个什么鬼,主数据它不香吗?

Windows11 MySQL service is missing

devsecops与devops的理解与建设

一套自动化无纸办公系统(OA+审批流)源码:带数据字典

VFP uses Kodak controls to control the scanner to solve the problem that the volume of exported files is too large

Oracle Spatial creating spatial tables

Dark horse shopping mall ---8 Microservice gateway and JWT token

ROS notes (06) - definition and use of topic messages
随机推荐
Web project development process
Old ou, a fox friend, has had a headache all day. The VFP format is always wrong when it is converted to JSON format. It is actually caused by disordered code
VFP develops a official account to receive coupons, and users will jump to various target pages after registration, and a set of standard processes will be sent to you
R语言caTools包进行数据划分、scale函数进行数据缩放、e1071包的naiveBayes函数构建朴素贝叶斯模型
刷入Magisk通用方法
2022年首期Techo Day腾讯技术开放日将于6月28日线上举办
ROS notes (06) - definition and use of topic messages
【OceanBase】OceanBase简介及其与MySQL的比较
Cesium editing faces
2020最新最全IT学习线路
黑马畅购商城---3.商品管理
设置图片的透明度从左到右渐变
什么是Flink?Flink能用来做什么?
R语言dplyr包summarise_at函数计算dataframe数据中多个数据列(通过向量指定)的计数个数、均值和中位数、在每个函数内部指定na.rm参数、通过list指定函数列表
使用php脚本查看已开启的扩展
Develop two modes of BS mode verification code with VFP to make your website more secure
20、wpf之MVVM命令绑定
The cloud native data lake has passed the evaluation and certification of the ICT Institute with its storage, computing, data management and other capabilities
优品购电商3.0微服务商城项目实战小结
Thingpanel publie le client mobile IOT (Multi - images)