<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM存儲(chǔ)器之:存儲(chǔ)管理單元MMU

          ARM存儲(chǔ)器之:存儲(chǔ)管理單元MMU

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

          本文引用地址:http://www.ex-cimer.com/article/257009.htm

          注意

          v6體系結(jié)構(gòu)不包含微頁(yè),如果打算創(chuàng)建一個(gè)很容易移植到以后體系結(jié)構(gòu)的系統(tǒng),則建議在該系統(tǒng)中避免使用1KB微頁(yè)。

          15.5.6域(domain)和存儲(chǔ)器訪問(wèn)權(quán)限

          域指的是一些段、大頁(yè)或者小頁(yè)的集合。編程的中,設(shè)計(jì)者最多可以使用16個(gè)域,每個(gè)域的訪問(wèn)控制特征由CP15中的c3中的兩位控制。

          CP15中的寄存器c3的格式如圖15.34。

          圖15.34CP15寄存器c3編碼格式

          其中,每?jī)蓚€(gè)位控制一個(gè)域的訪問(wèn)控制特性,其編碼及對(duì)應(yīng)的含義如表15.29所示。

          表15.29 域訪問(wèn)控制字段編碼及含義

          控制位編碼

          訪問(wèn)類型

          含義

          0b00

          無(wú)訪問(wèn)權(quán)限

          這時(shí)訪問(wèn)該域?qū)a(chǎn)生訪問(wèn)失效

          0b01

          客戶類型(client)

          根據(jù)頁(yè)表中地址變換頁(yè)表項(xiàng)的域訪問(wèn)權(quán)限控制位決定是否允許特定的存儲(chǔ)訪問(wèn)

          0b10

          保留

          使用該值會(huì)產(chǎn)生不可預(yù)知的結(jié)果

          0b11

          管理者權(quán)限(Manager)

          不考慮頁(yè)表中頁(yè)表項(xiàng)內(nèi)的訪問(wèn)控制權(quán)限位,所以這種情況下不產(chǎn)生訪問(wèn)失效

          綜上所述,有兩種不同的控制來(lái)管理一個(gè)任務(wù)的存儲(chǔ)器訪問(wèn)權(quán)限。

          ·管理者(manager)用于主控(primarycontrol),不考慮每個(gè)段、大頁(yè)和小頁(yè)的訪問(wèn)權(quán)限。

          ·客戶(client)使用頁(yè)表中的訪問(wèn)權(quán)限用于次控(secondarycontrol)。

          當(dāng)多個(gè)段或者頁(yè)從屬于一個(gè)域時(shí),這些段或者頁(yè)的訪問(wèn)權(quán)限可以很容易的由域來(lái)統(tǒng)一控制。存儲(chǔ)器采用這種管理策略將不同的存儲(chǔ)單元“打包”。

          注意

          即使不使用提供的虛擬存儲(chǔ)功能,仍然可以把這些內(nèi)核用作簡(jiǎn)單的存儲(chǔ)保護(hù)單元。首先將虛擬存儲(chǔ)空間直接映射到物理存儲(chǔ)空間,然后為每個(gè)任務(wù)分配一個(gè)不同的域,最后使用這些域來(lái)保護(hù)睡眠任務(wù)(通過(guò)將它們的域訪問(wèn)設(shè)置成不可訪問(wèn))。

          15.5.7與TLB相關(guān)的操作

          (1)清除TLB

          如果操作系統(tǒng)改變了頁(yè)表中的數(shù)據(jù),那么緩存在TLB中的轉(zhuǎn)換數(shù)據(jù)可能就不再有效了。存儲(chǔ)器核有一些CP15命令用于清除TLB,從而使TLB中的數(shù)據(jù)作廢。表15.30是一些可用的命令:清除所有TLB數(shù)據(jù),清除指令TLB,清除數(shù)據(jù)TLB,也可以一次只清除一行TLB數(shù)據(jù)。

          表15.30 清除TLB的CP15命令

          命令

          MCR指令

          Rd的值

          支持的內(nèi)核

          使所有TLB無(wú)效

          MCRp15,0,Rd,c8,c7,0

          0

          720T、920T、ARM922T、ARM926EJ-S、ARM1022E、ARM1026EJ-S、StrongARM、Xscale

          按行使TLB無(wú)效

          MCRp15,0,Rd,c8,c7,1

          要使之無(wú)效的虛擬地址

          ARM720T

          使指令TLB無(wú)效

          MCRp15,0,Rd,c8,c5,0

          要使之無(wú)效的虛擬地址

          ARM920T、ARM922T、ARM926EJ-S、ARM1022E、ARM1026EJ-S、StrongARM、Xscale

          按行使指令TLB無(wú)效

          MCRp15,0,Rd,c8,c5,1

          要使之無(wú)效的虛擬地址

          ARM920T、ARM922T、ARM926EJ-S、ARM1022E、ARM1026EJ-S、StrongARM、Xscale

          使數(shù)據(jù)TLB無(wú)效

          MCRp15,0,Rd,c8,c6,0

          要使之無(wú)效的虛擬地址

          ARM920T、ARM922T、ARM926EJ-S、ARM1022E、ARM1026EJ-S、StrongARM、Xscale

          按行使數(shù)據(jù)TLB無(wú)效

          MCRp15,0,Rd,c8,c6,1

          要使之無(wú)效的虛擬地址

          ARM920T、ARM922T、ARM926EJ-S、ARM1022E、ARM1026EJ-S、StrongARM、Xscale

          存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理




          關(guān)鍵詞: ARM 存儲(chǔ)管理單元 MMU

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();