ARM920T協(xié)處理器CP15

發(fā)布時(shí)間:2011-3-28 14:00    發(fā)布者:techshare
關(guān)鍵詞: ARM920T , CP15 , 協(xié)處理器
ARM920T處理器包含了ARM9TDMI內核,ARM9TDMI實(shí)現了ARM architecture v4T。








ARM920T處理器包含兩個(gè)協(xié)處理器:

CP14。用于調試

CP15。系統控制協(xié)處理器,提供附加的寄存器用來(lái)配置和控制cache,MMU,保護系統,時(shí)鐘模式,和ARM920T其他的系統選項,如大小端操作。你可以使用MCR,MRC訪(fǎng)問(wèn)定義在CP15中的寄存器。

CP15定義了16個(gè)寄存器,寄存器的映射圖如下:







注:寄存器位置0可以訪(fǎng)問(wèn)兩個(gè)寄存器,通過(guò)opcode_2的值來(lái)確定。

ARM920T存在3個(gè)地址。











只能在特權模式下使用MCR和MRC指令訪(fǎng)問(wèn)CP15。這些指令的格式是:

MCR/MRC{cond} P15,,Rd,CRn,CRm,

指令CDP,LDC,STC和非特權模式的MRC,MCR指令操作CP15會(huì )導致未定義指令異常。MRC和MCR指令的CRn域指定了要訪(fǎng)問(wèn)的協(xié)處理寄存器。opcode_1,和CRm域應該是0,除非值被指定用來(lái)選擇需要的操作。

Register 0,ID code register

可以通過(guò)讀CP15 register 0,opcode_2域設置成除了1的任何值(在讀的時(shí)候CRm應該為0)。

如:

MRC p15,0,Rd,c0,c0,0;return ID register







cache type register 0

包含cache的大小和體系結構的信息?梢酝ㄟ^(guò)設置域為1,讀CP15 register 0來(lái)訪(fǎng)問(wèn)cache type register。例如:

MRC p15,0,Rd,c0,c0,1;returns cache details







Dsize和Isize域格式一樣:















Register1,control register

這個(gè)寄存器包含了ARM920T的控制位。

MRC p15,0,Rd,c1,c0,0 ;read control register

MCR p15,0,Rd,c1,c0,0;write control register

















Register 2,translation table base(TTB)register

這個(gè)是頁(yè)表基址寄存器。







使用下面的指令訪(fǎng)問(wèn)TTB:

MRC p15,0,Rd,c2,c0,0;read TTB register

MCR p15,0,Rd,c2,c0,0;write TTB register

Register 3,domain access control register

這個(gè)是讀寫(xiě)域訪(fǎng)問(wèn)控制寄存器。

















MRC p15,0,Rd,c3,c0,0;read domain 15:0 access permissions

MCR p15,0,Rd,c3,c0,0;write domain 15:0 access permissions

Register 4,reserved

Register 5,fault status registers

Register 6,fault address registers

Register 7,cache operations register







Register 8,TLB operations register

用來(lái)管理Translation Lookaside Buffers(TLBs),指令TLB和數據TLB。







Register 9,cache lockdown register

opcode_2=0x0 訪(fǎng)問(wèn)的是Dcache

opcode_2=0x1 訪(fǎng)問(wèn)的是 Icache









Regiter 10,TLB lockdown register

opcode_2=0x0 訪(fǎng)問(wèn)的是D TLB

opcode_2=0x1 訪(fǎng)問(wèn)的是 I TLB







Register 11,12,and 14,reserved

Register 13,FCSE PID register

是快速上下文切換擴展寄存器。








MRC p15,0,Rd,c13,c0,0;read FCSE_PID

MCR p15,0,Rd,c13,c0,0; write FCSE_PID

ARM9TDMI發(fā)出的地址在0~32MB范圍內的被CP15的register 13轉換。地址A變成A+(FCSE_PID×32MB)。FCSE_PID是一個(gè)7位的域,能夠使128×32MB的進(jìn)程被映射。









Register 15,test configuration register


作者:李萬(wàn)鵬
本文地址:http://selenalain.com/thread-60205-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页