标题: ARM -- 用于系统存储管理的协处理器CP15 [打印本页] 作者: mytomorrow 时间: 2019-8-29 10:40 标题: ARM -- 用于系统存储管理的协处理器CP15 用于系统存储管理的协处理器CP15 . C" L. w. q$ y- g3 a) v; o, f: c' E2 i$ d
MCR{cond} coproc,opcode1,Rd,CRn,CRm,opcode2 , U# B+ @$ e, i6 u% j$ vMRC {cond} coproc,opcode1,Rd,CRn,CRm,opcode2 ! }4 `8 {8 H2 x. M" j5 Z% b# ocoproc 指令操作的协处理器名.标准名为pn,n,为0~15 + {; p* a5 A+ S L; f" s- t
opcode1 协处理器的特定操作码. 对于CP15寄存器来说,opcode1永远为0,不为0时,操作结果不可预知$ c. k r* I6 c3 d% D' ]! y1 n% B' @
CRd 作为目标寄存器的协处理器寄存器. % x& l6 Z0 i: f* f1 oCRn 存放第1个操作数的协处理器寄存器. ]. j1 p; d! f8 G, W0 ^* uCRm 存放第2个操作数的协处理器寄存器. (用来区分同一个编号的不同物理寄存器,当不需要提供附加信息时,指定为C0) & v5 v# M, h! k$ H: Q! `' Z! T- I* Aopcode2 可选的协处理器特定操作码. (用来区分同一个编号的不同物理寄存器,当不需要提供附加信息时,指定为0)# a, L: h2 x1 ?+ i& ?1 I
* g7 P* R; F+ {0 T- ?* a在基于ARM的嵌入式系统中,存储系统通常是通过系统控制协处理器CP15完成的。- ^/ s/ a3 D3 r0 A
CP15可以包含16个32位的寄存器,其编号为0-15。实际上对于某些编号的寄存器可能对应有多个物理寄存器。在指令中指定特定的标志位来区分这些物理寄存器。有些类似于ARM寄存器中,处于不同的处理器模式时,ARM某些寄存器可能不同。4 n @& e! R. \# H4 B4 u a