關(guān)于ARM9中的協(xié)處理器CP15及MCR/MRC指令
訪問CP15寄存器的指令
本文引用地址:http://m.butianyuan.cn/article/201611/317532.htmMCRARM寄存器到協(xié)處理器寄存器的數(shù)據(jù)傳送
MRC協(xié)處理器寄存器到ARM寄存器的數(shù)據(jù)傳送
MCR指令和MRC指令只能在處理器模式為系統(tǒng)模式時執(zhí)行,在用戶模式下執(zhí)行MCR指令和MRC指令將會觸發(fā)未定義指令的異常中斷。
MCR指令
MCR指令將ARM處理器的寄存器中的數(shù)據(jù)傳送到協(xié)處理器寄存器中。如果協(xié)處理器不能成功地執(zhí)行該操作,將產(chǎn)生未定義的指令異常中斷。
指令語法格式
MCR{ ,< opcode_1>, MCR{ 其中, < opcode_1>為協(xié)處理器將執(zhí)行的操作的操作碼。對于CP15協(xié)處理器來說,< opcode_1>永遠(yuǎn)為0b000,當(dāng)< opcode_1>不為0b000時,該指令操作結(jié)果不可預(yù)知。 Function Data instruction Invalidate TLB(s) SBZ MCR p15,0,Rd,c8,c7,0 Invalidate I TLB SBZ MCR p15,0,Rd,c8,c5,0 Invalidate I TLB single entry (using MVA) MVA format MCR p15,0,Rd,c8,c5,1 Invalidate D TLB SBZ MCR p15,0,Rd,c8,c6,0 Invalidate D TLB single entry (using MVA) MVA format MCR p15,0,Rd,c8,c6,1
評論