資料介紹
16.2 ARMv6增加的系統(tǒng)支持
為了滿足目前無線網(wǎng)絡(luò)、汽車電子和消費(fèi)類電子產(chǎn)品不斷增長的市場需要,ARM公司在ARMv6中引入新的技術(shù)和結(jié)構(gòu)組成,包括增強(qiáng)的DSP支持和對(duì)多處理器環(huán)境的支持。
16.2.1 存儲(chǔ)管理
由于在ARMv6體系結(jié)構(gòu)中引入新的存儲(chǔ)管理機(jī)制,處理器的整體性能得到提高。在新的體系結(jié)構(gòu)中,平均指令預(yù)取和數(shù)據(jù)等待時(shí)間大幅度減少,存取過程中Cache命中率顯著提高。由于存儲(chǔ)機(jī)制的改善,系統(tǒng)整體性能的提高達(dá)到30%。
另外,存儲(chǔ)系統(tǒng)的改善使系統(tǒng)總線(BUS)使用更加合理,從而減少了系統(tǒng)總線使用頻度,降低了系統(tǒng)功耗。
圖16.2顯示了ARMv6體系結(jié)構(gòu)存儲(chǔ)系統(tǒng)示意圖。

圖16.2 ARMv6存儲(chǔ)系統(tǒng)示意圖
1.ARMv6 L1 Cache
ARMv6采用“分層”的存儲(chǔ)管理,存儲(chǔ)層次的最頂層在處理器內(nèi)核中。該存儲(chǔ)器被稱為寄存器文件(register file)。這些寄存器被集成在處理器內(nèi)核中,在系統(tǒng)中提供最快的存儲(chǔ)訪問。
ARMv6體系結(jié)構(gòu)處理器使用物理索引Cache(Physically tagged caches),即地址轉(zhuǎn)換在CPU和Cache之間,這樣就減少了CPU在運(yùn)行大的操作系統(tǒng)時(shí)由于上下文切換而帶來的系統(tǒng)開銷。使用這種物理Cache,可以使CPU的整體性能提高近20%。
為了減少在內(nèi)容轉(zhuǎn)換時(shí),刷新Cache的CPU開銷,ARMv6將L1 Cache構(gòu)建為使用物理尋址的存儲(chǔ)系統(tǒng)。系統(tǒng)中設(shè)有TCM作為物理可尋址的快速訪問內(nèi)存,存在于存儲(chǔ)系統(tǒng)中,作為Cache的補(bǔ)充。無論Cache還是TCM,都可以配置為指令和數(shù)據(jù)分離的Harvard架構(gòu)或指令和數(shù)據(jù)統(tǒng)一的馮·諾依曼架構(gòu)。另外,L1 DMA子系統(tǒng)可以使數(shù)據(jù)在沒有CPU參與的情況下,直接和TCM進(jìn)行數(shù)據(jù)傳輸。
2.頁表格式
在ARMv6體系結(jié)構(gòu)中,頁表格式也發(fā)生了變化。圖16.3顯示了新的一級(jí)頁表格式。

圖16.3 ARMv6頁表格式
協(xié)處理器CP15中的XP-bit可以指定是否使用這種新的頁表格式。如果不設(shè)置該位,則系統(tǒng)繼續(xù)使用ARMv5架構(gòu)的頁表格式。
從圖16.3可以看出,新的頁表格式增加了以下特性:
· XN:從不執(zhí)行位(execute never bit)。
· nG:非全局地址映射位(not Global bit for address matching)。
應(yīng)用程序空間指示ASID(Application Space Identifier)是ARMv6體系中增加的又一關(guān)鍵特性。當(dāng)nG位置位時(shí),地址轉(zhuǎn)換使用虛擬地址和ASID相結(jié)合的方法以減少上下文切換的時(shí)間。同時(shí),應(yīng)用程序空間指示提供了一種任務(wù)可知調(diào)試方法(task-aware debugging)。
有關(guān)ARMv6存儲(chǔ)系統(tǒng)的詳細(xì)內(nèi)容請(qǐng)參閱ARM相關(guān)文檔。
3.增加的頁表基地址寄存器
為了提高地址轉(zhuǎn)換的處理速度,ARMv6體系結(jié)構(gòu)中增加了一個(gè)新的頁表基地址寄存器,以存儲(chǔ)二級(jí)頁表的基地址。CP15同時(shí)支持TTBR0和TTBR1。專門的控制寄存器用來保存用戶設(shè)定的整數(shù)N,N的取值范圍為0~7。當(dāng)N的值不等于0時(shí),0~232-N的地址空間使用TTBR0,而其他空間使用TTBR1進(jìn)行傳輸控制。一級(jí)頁表根據(jù)N取值的不同,占有128bytes~16KB存儲(chǔ)空間。
16.2.2 多處理單元支持
由于片上系統(tǒng)Soc結(jié)構(gòu)的復(fù)雜化,ARM內(nèi)核現(xiàn)在經(jīng)常被用于有多個(gè)處理單元的設(shè)備,這些處理單元競爭使用系統(tǒng)的共享資源。為了滿足多處理單元任務(wù)間同步的需要,Load/Store互斥指令引入到新的ARMv6體系結(jié)構(gòu)中來。新指令包括:
· LDREX:加載互斥指令。
· STREX:存儲(chǔ)互斥指令。
LDREX指令從存儲(chǔ)器中裝載一個(gè)值到寄存器,在處理這個(gè)數(shù)據(jù)時(shí),不會(huì)有任何其他因素改變該值。STREX指令存儲(chǔ)一個(gè)值到寄存器,并返回一個(gè)指示值。
16.2.3 異常處理和中斷
ARMv6體系結(jié)構(gòu)提供了對(duì)向量中斷(vectored Interrupt)的支持。向量中斷控制器(VIC,Vectored Interrupt Controller)由CP15的寄存器1中的VE – bit來控制。當(dāng)向量中斷控制器使能時(shí),該控制器可以向CPU提供發(fā)生中斷的向量。
另外,在ARMv6的體系結(jié)構(gòu)中,程序狀態(tài)寄存器CPSR擴(kuò)展了A位來控制Abort異常。這種機(jī)制類似于程序狀態(tài)寄存器CPSR中I和F bit對(duì)IRQ和FIQ的控制。
操作系統(tǒng)通常在堆棧中保存一次中斷或異常處理的返回狀態(tài)。ARMv6增加了新的指令來提高這類操作的效率。這種操作在中斷/調(diào)度程序驅(qū)動(dòng)系統(tǒng)中,出現(xiàn)的頻率是很高的。這些新增加的指令包括:
· SRS:保存返回狀態(tài)在特定模式的堆棧中。
· RFE:異常返回。
· CPSID/CPSIE:改變處理器狀態(tài),開中斷或關(guān)中斷。
16.2.4 混和大小端支持
AMRv6體系結(jié)構(gòu)中增加了同時(shí)處理大端和小端數(shù)據(jù)的能力。新增加了指令SETEND來設(shè)置一段代碼處理數(shù)據(jù)的字節(jié)排列方式,另外還增加了一些單獨(dú)的處理指令來提高在混和大小端環(huán)境下的處理效率。
指令SETEND的標(biāo)準(zhǔn)格式如下:
SETEND《endian_specifier》
該指令根據(jù)參數(shù)《endian_specifier》的值來改變默認(rèn)的數(shù)據(jù)端格式。
SETEND指令的設(shè)置直接和程序狀態(tài)寄存器CPSR中新增加的E位相對(duì)應(yīng)。E位對(duì)數(shù)據(jù)大小端的控制如圖16.4所示。
為了滿足目前無線網(wǎng)絡(luò)、汽車電子和消費(fèi)類電子產(chǎn)品不斷增長的市場需要,ARM公司在ARMv6中引入新的技術(shù)和結(jié)構(gòu)組成,包括增強(qiáng)的DSP支持和對(duì)多處理器環(huán)境的支持。
16.2.1 存儲(chǔ)管理
由于在ARMv6體系結(jié)構(gòu)中引入新的存儲(chǔ)管理機(jī)制,處理器的整體性能得到提高。在新的體系結(jié)構(gòu)中,平均指令預(yù)取和數(shù)據(jù)等待時(shí)間大幅度減少,存取過程中Cache命中率顯著提高。由于存儲(chǔ)機(jī)制的改善,系統(tǒng)整體性能的提高達(dá)到30%。
另外,存儲(chǔ)系統(tǒng)的改善使系統(tǒng)總線(BUS)使用更加合理,從而減少了系統(tǒng)總線使用頻度,降低了系統(tǒng)功耗。
圖16.2顯示了ARMv6體系結(jié)構(gòu)存儲(chǔ)系統(tǒng)示意圖。

圖16.2 ARMv6存儲(chǔ)系統(tǒng)示意圖
1.ARMv6 L1 Cache
ARMv6采用“分層”的存儲(chǔ)管理,存儲(chǔ)層次的最頂層在處理器內(nèi)核中。該存儲(chǔ)器被稱為寄存器文件(register file)。這些寄存器被集成在處理器內(nèi)核中,在系統(tǒng)中提供最快的存儲(chǔ)訪問。
ARMv6體系結(jié)構(gòu)處理器使用物理索引Cache(Physically tagged caches),即地址轉(zhuǎn)換在CPU和Cache之間,這樣就減少了CPU在運(yùn)行大的操作系統(tǒng)時(shí)由于上下文切換而帶來的系統(tǒng)開銷。使用這種物理Cache,可以使CPU的整體性能提高近20%。
為了減少在內(nèi)容轉(zhuǎn)換時(shí),刷新Cache的CPU開銷,ARMv6將L1 Cache構(gòu)建為使用物理尋址的存儲(chǔ)系統(tǒng)。系統(tǒng)中設(shè)有TCM作為物理可尋址的快速訪問內(nèi)存,存在于存儲(chǔ)系統(tǒng)中,作為Cache的補(bǔ)充。無論Cache還是TCM,都可以配置為指令和數(shù)據(jù)分離的Harvard架構(gòu)或指令和數(shù)據(jù)統(tǒng)一的馮·諾依曼架構(gòu)。另外,L1 DMA子系統(tǒng)可以使數(shù)據(jù)在沒有CPU參與的情況下,直接和TCM進(jìn)行數(shù)據(jù)傳輸。
2.頁表格式
在ARMv6體系結(jié)構(gòu)中,頁表格式也發(fā)生了變化。圖16.3顯示了新的一級(jí)頁表格式。

圖16.3 ARMv6頁表格式
協(xié)處理器CP15中的XP-bit可以指定是否使用這種新的頁表格式。如果不設(shè)置該位,則系統(tǒng)繼續(xù)使用ARMv5架構(gòu)的頁表格式。
從圖16.3可以看出,新的頁表格式增加了以下特性:
· XN:從不執(zhí)行位(execute never bit)。
· nG:非全局地址映射位(not Global bit for address matching)。
應(yīng)用程序空間指示ASID(Application Space Identifier)是ARMv6體系中增加的又一關(guān)鍵特性。當(dāng)nG位置位時(shí),地址轉(zhuǎn)換使用虛擬地址和ASID相結(jié)合的方法以減少上下文切換的時(shí)間。同時(shí),應(yīng)用程序空間指示提供了一種任務(wù)可知調(diào)試方法(task-aware debugging)。
有關(guān)ARMv6存儲(chǔ)系統(tǒng)的詳細(xì)內(nèi)容請(qǐng)參閱ARM相關(guān)文檔。
3.增加的頁表基地址寄存器
為了提高地址轉(zhuǎn)換的處理速度,ARMv6體系結(jié)構(gòu)中增加了一個(gè)新的頁表基地址寄存器,以存儲(chǔ)二級(jí)頁表的基地址。CP15同時(shí)支持TTBR0和TTBR1。專門的控制寄存器用來保存用戶設(shè)定的整數(shù)N,N的取值范圍為0~7。當(dāng)N的值不等于0時(shí),0~232-N的地址空間使用TTBR0,而其他空間使用TTBR1進(jìn)行傳輸控制。一級(jí)頁表根據(jù)N取值的不同,占有128bytes~16KB存儲(chǔ)空間。
16.2.2 多處理單元支持
由于片上系統(tǒng)Soc結(jié)構(gòu)的復(fù)雜化,ARM內(nèi)核現(xiàn)在經(jīng)常被用于有多個(gè)處理單元的設(shè)備,這些處理單元競爭使用系統(tǒng)的共享資源。為了滿足多處理單元任務(wù)間同步的需要,Load/Store互斥指令引入到新的ARMv6體系結(jié)構(gòu)中來。新指令包括:
· LDREX:加載互斥指令。
· STREX:存儲(chǔ)互斥指令。
LDREX指令從存儲(chǔ)器中裝載一個(gè)值到寄存器,在處理這個(gè)數(shù)據(jù)時(shí),不會(huì)有任何其他因素改變該值。STREX指令存儲(chǔ)一個(gè)值到寄存器,并返回一個(gè)指示值。
16.2.3 異常處理和中斷
ARMv6體系結(jié)構(gòu)提供了對(duì)向量中斷(vectored Interrupt)的支持。向量中斷控制器(VIC,Vectored Interrupt Controller)由CP15的寄存器1中的VE – bit來控制。當(dāng)向量中斷控制器使能時(shí),該控制器可以向CPU提供發(fā)生中斷的向量。
另外,在ARMv6的體系結(jié)構(gòu)中,程序狀態(tài)寄存器CPSR擴(kuò)展了A位來控制Abort異常。這種機(jī)制類似于程序狀態(tài)寄存器CPSR中I和F bit對(duì)IRQ和FIQ的控制。
操作系統(tǒng)通常在堆棧中保存一次中斷或異常處理的返回狀態(tài)。ARMv6增加了新的指令來提高這類操作的效率。這種操作在中斷/調(diào)度程序驅(qū)動(dòng)系統(tǒng)中,出現(xiàn)的頻率是很高的。這些新增加的指令包括:
· SRS:保存返回狀態(tài)在特定模式的堆棧中。
· RFE:異常返回。
· CPSID/CPSIE:改變處理器狀態(tài),開中斷或關(guān)中斷。
16.2.4 混和大小端支持
AMRv6體系結(jié)構(gòu)中增加了同時(shí)處理大端和小端數(shù)據(jù)的能力。新增加了指令SETEND來設(shè)置一段代碼處理數(shù)據(jù)的字節(jié)排列方式,另外還增加了一些單獨(dú)的處理指令來提高在混和大小端環(huán)境下的處理效率。
指令SETEND的標(biāo)準(zhǔn)格式如下:
SETEND《endian_specifier》
該指令根據(jù)參數(shù)《endian_specifier》的值來改變默認(rèn)的數(shù)據(jù)端格式。
SETEND指令的設(shè)置直接和程序狀態(tài)寄存器CPSR中新增加的E位相對(duì)應(yīng)。E位對(duì)數(shù)據(jù)大小端的控制如圖16.4所示。
Cache
加入交流群
掃碼添加小助手
加入工程師交流群
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- MegaRAID SAS 3Gb/s操作系統(tǒng)支持列表
- RAM體系結(jié)構(gòu)
- Cortex-M3權(quán)威指南閱讀筆記1
- ARMv7-M架構(gòu)參考手冊電子版下載 0次下載
- ARM v6-M架構(gòu)參考手冊 20次下載
- 面向電子郵件系統(tǒng)支持關(guān)鍵字搜索的代理重加密方案 2次下載
- ARMv7和ARMv7的體系結(jié)構(gòu)參考手冊免費(fèi)下載 30次下載
- 如何使用新型NVM存儲(chǔ)系統(tǒng)支持高并發(fā)訪問提高處理速度 16次下載
- NEON的詳細(xì)資料簡介資料免費(fèi)下載
- TRACE32支持ARMv8架構(gòu) 11次下載
- XP系統(tǒng)支持STC下載的PL-2303HX新版驅(qū)動(dòng) 0次下載
- arm11 指令集 (ARM V6(ARM11)內(nèi)核的指令集
- 新一代ARM微處理器ARM11系列
- ARM 架構(gòu)中TrustZone 安全處理技術(shù)的研究
- WCDMA系統(tǒng)功率控制
- 實(shí)踐JLink 7.62手動(dòng)增加新MCU型號(hào)支持新方法 2.1k次閱讀
- armv8系統(tǒng)的安全概述 1.6k次閱讀
- 解析Armv8.1-M的一些特性 2.2k次閱讀
- STEP 7 5.5使用的地址超出系統(tǒng)支持范圍M T C I/O L 3.2k次閱讀
- Arm推出三款基于Armv9架構(gòu)的全新CPU內(nèi)核 5k次閱讀
- 淺談鴻蒙內(nèi)核源碼的原子操作 1.8k次閱讀
- 關(guān)于鴻蒙系統(tǒng)的列表增加和刪除組件 6.3k次閱讀
- Miracast技術(shù)跨操作系統(tǒng)支持不同設(shè)備間的視頻共享 1.8k次閱讀
- 計(jì)算機(jī)32位系統(tǒng)到底能支持多大內(nèi)存 4w次閱讀
- 基于48MHz Arm? Cortex?-M0+ MCU的微控制器 5.1k次閱讀
- 嵌入式系統(tǒng)內(nèi)存管理機(jī)制詳解 4.9k次閱讀
- Enea OSE可實(shí)現(xiàn)對(duì)Xilinx UltraScale+ MPSoC的支持 3.5k次閱讀
- IMX6 MfgTool燒錄指導(dǎo)手冊 9.3k次閱讀
- ARMv8 通過設(shè)計(jì)簡化軟件移植詳解 2.7k次閱讀
- ARMv8架構(gòu)哪里強(qiáng)?史上最高性能功耗最大可擴(kuò)展性 1.6k次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動(dòng)汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論