新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM存儲(chǔ)器之:協(xié)處理器CP15

ARM存儲(chǔ)器之:協(xié)處理器CP15

作者: 時(shí)間:2013-09-30 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://2s4d.com/article/257013.htm

15.1.2中的寄存器

表15.1給出了主要寄存器的功能和作用。

表15.1 寄存器

寄存器編號(hào)

基本作用

特殊用途

0

ID編號(hào)(只讀)

ID和Cache類型

1

控制位

各種控制位

2

保護(hù)和控制

MMU:地址轉(zhuǎn)換表基地址

PU:Cache屬性設(shè)置

3

內(nèi)存保護(hù)和控制

MMU:域訪問控制

PU:寫緩存控制

4

內(nèi)存保護(hù)和控制

保留

5

內(nèi)存保護(hù)和控制

MMU:錯(cuò)誤狀態(tài)

PU:訪問權(quán)限控制

6

內(nèi)存保護(hù)和控制

MMU:錯(cuò)誤狀態(tài)

PU:保護(hù)區(qū)域控制

7

Cache和寫緩存

Cache和寫緩存控制

8

內(nèi)存保護(hù)和控制

MMU:TLB控制

PU:保留

9

Cache和寫緩存

Cache鎖定

續(xù)表

寄存器編號(hào)

基本作用

特殊用途

10

內(nèi)存保護(hù)和控制

MMU:TLB鎖定

PU:保留

11

保留

保留

12

保留

保留

13

進(jìn)程ID

進(jìn)程ID

14

保留

保留

15

芯片生產(chǎn)廠商定義

芯片生產(chǎn)廠商定義

15.1.3寄存器c0

寄存器c0包含的是本身或芯片生產(chǎn)廠商的一些標(biāo)識(shí)信息。當(dāng)使用MRC指令讀c0寄存器時(shí),根據(jù)第二個(gè)操作碼opcode2的不同,讀出的標(biāo)識(shí)符也是不同的。操作碼與標(biāo)識(shí)符的對(duì)應(yīng)關(guān)系如表15.2所示。寄存器c0是只讀寄存器,當(dāng)用MCR指令對(duì)其進(jìn)行寫操作時(shí),指令的執(zhí)行結(jié)果不可預(yù)知。

表15.2 操作碼和標(biāo)識(shí)符的對(duì)應(yīng)關(guān)系

操作碼opcode2

對(duì)應(yīng)的標(biāo)識(shí)符寄存器

0b000

主標(biāo)識(shí)符寄存器

0b001

Cache類型寄存器

其他

保留

在操作碼opcode2的取值中,主標(biāo)識(shí)符(opcode2=0)是強(qiáng)制定義的,其他標(biāo)識(shí)符由芯片的生產(chǎn)廠商定義。如果操作碼opcode2指定的值未定義,指令將返回主標(biāo)識(shí)符。其他標(biāo)識(shí)符的值應(yīng)與主標(biāo)識(shí)符的值不同,可以由軟件編程來實(shí)現(xiàn),同時(shí)讀取主標(biāo)識(shí)符和其他標(biāo)識(shí)符,并將兩者的值進(jìn)行比較。如果兩個(gè)標(biāo)識(shí)符值相同,說明未定義該標(biāo)識(shí)符;如果兩個(gè)標(biāo)識(shí)符值不同,說明定義了該標(biāo)識(shí)符,并且得到該標(biāo)識(shí)符的值。

(1)主標(biāo)識(shí)符寄存器

當(dāng)指令對(duì)CP15進(jìn)行操作,并且操作碼opcode=2時(shí),處理器的主標(biāo)識(shí)符將被讀出。從主標(biāo)識(shí)符中,可以確定體系結(jié)構(gòu)的版本型號(hào)。同時(shí)也可以參考由芯片生產(chǎn)廠商定義的其他標(biāo)識(shí)符,來獲得更詳細(xì)的信息。

在主標(biāo)識(shí)信息中,bit[15:12]區(qū)分了不同的處理器版本:

·如果bit[15:12]為0x0,說明處理器是7之前的處理器;

·如果bit[15:12]為0x7,說明處理器為ARM7處理器;

·如果bit[15:12]為其他值,說明處理器為ARM7之后的處理器。

對(duì)于ARM7之后的處理器,其標(biāo)識(shí)符的編碼格式如圖15.2所示。

其中各部分的編碼含義說明如下。

bit[3:0]:包含生產(chǎn)廠商定義的處理器版本型號(hào)。

bit[15:4]:生產(chǎn)廠商定義的產(chǎn)品主編號(hào),可能的取值為0x0~0x7。

bit[19:16]:ARM體系的版本號(hào),可能的取值如表15.3(其他值由ARM公司保留將來使用)所示。

圖15.2ARM7之后處理器標(biāo)識(shí)符編碼

表15.3 bit[19:16]與ARM版本號(hào)

可能的取值

版本號(hào)

0x1

ARM體系版本4

0x2

ARM體系版本4T

0x3

ARM體系版本5

0x4

ARM體系版本5T

0x5

ARM體系版本5TE



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉