版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章 ARM微處理器硬件(yn jin)結(jié)構(gòu)計(jì)算機(jī)體系結(jié)構(gòu)分類ARM版本(bnbn)及系列ARM處理器結(jié)構(gòu)存儲(chǔ)系統(tǒng)機(jī)制共八十八頁(yè)計(jì)算機(jī)體系結(jié)構(gòu)分類(fn li) 兩種典型(dinxng)的結(jié)構(gòu) : 馮諾依曼結(jié)構(gòu) 哈佛體系結(jié)構(gòu) 共八十八頁(yè)馮諾依曼結(jié)構(gòu) 馮諾依曼機(jī):將數(shù)據(jù)和指令都存儲(chǔ)在存儲(chǔ)器中的計(jì)算機(jī)。計(jì)算系統(tǒng)由一個(gè)中央處理單元(CPU)和一個(gè)存儲(chǔ)器組成(z chn)。存儲(chǔ)器擁有數(shù)據(jù)和指令,并且可以根據(jù)所給的地址對(duì)它進(jìn)行讀或?qū)憽?共八十八頁(yè)哈佛體系結(jié)構(gòu) 哈佛機(jī):為數(shù)據(jù)和程序提供了各自獨(dú)立的存儲(chǔ)器。程序計(jì)數(shù)器只指向(zh xin)程序存儲(chǔ)器而不指向(zh xin)數(shù)據(jù)存儲(chǔ)器,這樣做的后果是很難在哈
2、佛機(jī)上編寫出一個(gè)自修改的程序 。獨(dú)立的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器為數(shù)字信號(hào)處理提供了較高的性能。 ARM7使用馮諾依曼體系結(jié)構(gòu)。ARM 9使用哈佛體系結(jié)構(gòu)。 共八十八頁(yè)ARM公司簡(jiǎn)介ARM是Advanced RISC Machines的縮寫,它是一家微處理器行業(yè)的知名企業(yè),該企業(yè)設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC (精簡(jiǎn)指令集)處理器。 1985年第一個(gè)ARM原型在英國(guó)(yn u)劍橋誕生。 公司的特點(diǎn)是只設(shè)計(jì)芯片,而不生產(chǎn)。它提供ARM技術(shù)知識(shí)產(chǎn)權(quán)(IP)核,將技術(shù)授權(quán)給世界上許多著名的半導(dǎo)體、軟件和OEM廠商,并提供服務(wù)。共八十八頁(yè)ARM處理器的應(yīng)用(yngyng)到目前為止,基于ARM
3、技術(shù)的微處理器應(yīng)用約占據(jù)了32位嵌入式微處理器75以上的市場(chǎng)份額。全球80%的GSM/3G手機(jī)、99%的CDMA手機(jī)以及絕大多數(shù)PDA產(chǎn)品均采用ARM體系的嵌入式處理器?!罢粕嫌?jì)算”相關(guān)的所有領(lǐng)域皆為其所主宰。主要應(yīng)用:消費(fèi)類電子,無線、圖像(t xin)應(yīng)用開放平臺(tái)、存儲(chǔ)、自動(dòng)化、智能卡、SIM卡等。ARM處理器的三大特點(diǎn):耗電少功能強(qiáng)、16位/32位雙指令集、眾多合作伙伴。將技術(shù)授權(quán)給其它芯片廠商形成各具特色的ARM芯片. . .共八十八頁(yè)各ARM體系結(jié)構(gòu)版本(bnbn) ARM體系結(jié)構(gòu)從最初開發(fā)到現(xiàn)在(xinzi)有了很大的改進(jìn),并仍在完善和發(fā)展。為了清楚地表達(dá)每個(gè)ARM應(yīng)用實(shí)例所使用的
4、指令集,ARM公司定義了6種主要的ARM指令集體系結(jié)構(gòu)版本,以版本號(hào)V1V6表示。共八十八頁(yè)ARM版本(bnbn): V1版架構(gòu) 該版架構(gòu)只在原型機(jī)ARM1出現(xiàn)過,只有26位的尋址空間,沒有用于商業(yè)產(chǎn)品。其基本性能有:基本的數(shù)據(jù)處理指令(無乘法(chngf));基于字節(jié)、半字和字的Load/Store指令;轉(zhuǎn)移指令,包括子程序調(diào)用及鏈接指令;供操作系統(tǒng)使用的軟件中斷指令SWI;尋址空間:64MB(226)。 共八十八頁(yè)ARM版本(bnbn): V2版架構(gòu) 該版架構(gòu)對(duì)V1版進(jìn)行了擴(kuò)展,例如ARM2和ARM3(V2a)架構(gòu),版本2a是版本2的變種,ARM3芯片采用了版本2a。同樣為26位尋址空間,
5、現(xiàn)在已經(jīng)廢棄(fiq)不再使用。V2版架構(gòu)與版本V1相比,增加了以下功能:乘法和乘加指令;支持協(xié)處理器操作指令;快速中斷模式;SWP/SWPB的最基本存儲(chǔ)器與寄存器交換指令;尋址空間:64MB。共八十八頁(yè)ARM版本(bnbn) : V3版架構(gòu) V3版架構(gòu)( 目前已廢棄 )對(duì)ARM體系結(jié)構(gòu)作了較大的改動(dòng):尋址空間增至32位(4GB);當(dāng)前程序狀態(tài)信息從原來的R15寄存器移到當(dāng)前程序狀態(tài)寄存器CPSR中(Current Program Status Register);增加了程序狀態(tài)保存寄存器SPSR(Saved Program Status Register);增加了中止(Abort)和未定義2
6、種處理器模式;增加了MRS/MSR指令(zhlng),以訪問新增的CPSR/SPSR寄存器;增加了從異常處理返回的指令功能。共八十八頁(yè)ARM版本(bnbn) : V4版架構(gòu) 不在為了與以前的版本兼容而支持26位體系結(jié)構(gòu),并明確了哪些指令會(huì)引起未定義指令異常發(fā)生,V4版架構(gòu)在V3版上作了進(jìn)一步擴(kuò)充(kuchng),V4版架構(gòu)是目前應(yīng)用最廣的ARM體系結(jié)構(gòu),ARM7、ARM8、ARM9和StrongARM都采用該架構(gòu)。指令集中增加了以下功能:符號(hào)化和非符號(hào)化半字及符號(hào)化字節(jié)的存/取指令;增加了16位Thumb指令集;完善了軟件中斷SWI指令的功能;處理器系統(tǒng)模式引進(jìn)特權(quán)方式時(shí)使用用戶寄存器操作;把
7、一些未使用的指令空間捕獲為未定義指令。共八十八頁(yè)ARM版本(bnbn) : V5版架構(gòu) V5版架構(gòu)是在V4版基礎(chǔ)上增加了一些新的指令,ARM10和Xscale都采用該版架構(gòu)。 這些新增命令有:帶有鏈接和交換的轉(zhuǎn)移BLX指令;計(jì)數(shù)前導(dǎo)零CLZ指令;BRK中斷指令;增加了數(shù)字信號(hào)處理(xn ho ch l)指令(V5TE版); 為協(xié)處理器增加更多可選擇的指令;改進(jìn)了ARM/Thumb狀態(tài)之間的切換效率;E增強(qiáng)型DSP指令集,包括全部算法操作和16位乘法操作;J支持新的JAVA,提供字節(jié)代碼執(zhí)行的硬件和優(yōu)化軟件加速功能。共八十八頁(yè)ARM版本(bnbn) : V6版架構(gòu) V6版架構(gòu)是2001年發(fā)布的,
8、首先(shuxin)在2002年春季發(fā)布的ARM11處理器中使用。 此架構(gòu)在V5版基礎(chǔ)上增加了以下功能:THUMBTM:35%代碼壓縮;DSP擴(kuò)充:高性能定點(diǎn)DSP功能;JazelleTM:Jova性能優(yōu)化,可提高8倍;Media擴(kuò)充:音/視頻性能優(yōu)化,可提高4倍。共八十八頁(yè)ARM處理器系列(xli)ARM公司開發(fā)了很多系列的ARM處理器核,目前最新的系列已經(jīng)是ARM11。ARM7、ARM9、ARM9E和ARM10為4個(gè)通用處理器系列。每一個(gè)系列提供一套相對(duì)(xingdu)獨(dú)特的性能來滿足不同應(yīng)用領(lǐng)域的需求。ARM7系列ARM9系列ARM9E系列ARM10E系列SecurCore系列Inter
9、的XscaleInter的StrongARM共八十八頁(yè)ARM7微處理器系列(xli) 低功耗的32位RISC處理器,馮諾依曼結(jié)構(gòu)。具有嵌入式ICERT邏輯,調(diào)試開發(fā)方便。3級(jí)流水線結(jié)構(gòu)。代碼密度高,兼容16位的Thumb指令集。對(duì)操作系統(tǒng)的支持廣泛,包括Windows CE、Linux、Palm OS等。指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產(chǎn)品升級(jí)換代。主頻最高可達(dá)130MIPS。主要應(yīng)用領(lǐng)域:工業(yè)控制、Internet設(shè)備(shbi)、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備(shbi)、移動(dòng)電話等多種多媒體和嵌入式應(yīng)用。 共八十八頁(yè)ARM7TDMI微處理器4種類型: ARM
10、7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。注:“ARM核”并不是芯片,ARM核與其它部件如RAM、ROM、片內(nèi)外設(shè)組合在一起(yq)才能構(gòu)成現(xiàn)實(shí)的芯片。支持高密度16位的壓縮Thumb指令集;支持片上調(diào)試Debug ;支持64位乘法(Multiplier) ;嵌入式Embeded-ICE,支持片上斷點(diǎn)和調(diào)試點(diǎn);ARM7TDMI 的可綜合(synthesizable)版本(軟核),對(duì)應(yīng)用工程師來說其編程模型與ARM7TDMI 一致;ARM7 T D M I - S共八十八頁(yè)ARM7TDMI內(nèi)
11、部結(jié)構(gòu)組成:處理器核、用于邊界掃描的TAP控制器、在線仿真器ICE。雙向數(shù)據(jù)總線D31:0被分割成單向輸入和輸出總線,以便于與外部(wib)存儲(chǔ)器兼容。 共八十八頁(yè)ARM7TDMI的模塊和內(nèi)核(ni h)框圖ARM7TDMI模塊地址寄存器寄存器組31*32位寄存器(6個(gè)狀態(tài)寄存器)地址增量器乘法器桶形移位器32位ALU寫數(shù)據(jù)寄存器指令流水線讀數(shù)據(jù)寄存器Thumb指令譯碼器指令譯碼和邏輯控制ADDR31:0CLKCLENCFGBIGENDnIRQnFIQnRESETABORTLOCKWRITESIZE1:0PROT1:0TRANS1:0DBG輸出DBG輸入CP控制CP握手WDATA31:0RDA
12、TA31:0掃描調(diào)試控制A總線B總線ALU總線增量器總線PC總線共八十八頁(yè)ARM7TDMI功能(gngnng)信號(hào)圖共八十八頁(yè)ARM9微處理器系列(xli) ARM9系列微處理器在高性能和低功耗特性方面提供最佳的性能。5級(jí)整數(shù)流水線,哈佛體系結(jié)構(gòu)。支持32位ARM指令集和16位Thumb指令集。全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力。主要應(yīng)用:無線設(shè)備、儀器儀表、安全(nqun)系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)碼照相機(jī)和數(shù)碼攝像機(jī)。3種類型:ARM920T、ARM922T和ARM
13、940T。 共八十八頁(yè)ARM9E微處理器系列(xli) 單一處理器內(nèi)核提供微控制器、DSP、Java應(yīng)用系統(tǒng)的解決方案。支持DSP指令集。5級(jí)整數(shù)流水線,指令執(zhí)行效率更高。支持32位ARM指令集和16位Thumb指令集。支持VFP9浮點(diǎn)處理協(xié)處理器。全性能(xngnng)的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)。MPU支持實(shí)時(shí)操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,主頻最高可達(dá)300MIPS。主要應(yīng)用:下一代無線設(shè)備、數(shù)字消費(fèi)品、成像設(shè)備、工業(yè)控制、存儲(chǔ)設(shè)備和網(wǎng)絡(luò)設(shè)備等領(lǐng)域。3種類型:ARM926EJ-S、ARM946E-S和ARM966E-
14、S。 共八十八頁(yè)ARM10E微處理器系列(xli) 與同等的ARM9比較,在同樣的時(shí)鐘頻率下,性能提高了近50%,功耗極低。支持DSP指令集。6級(jí)整數(shù)流水線,指令(zhlng)執(zhí)行效率更高。支持32位ARM指令集和16位Thumb指令集。支持VFP10浮點(diǎn)處理協(xié)處理器。全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache。主頻最高可達(dá)400MIPS。內(nèi)嵌并行讀/寫操作部件。主要應(yīng)用:下一代無線設(shè)備、數(shù)字消費(fèi)品、成像設(shè)備、工業(yè)控制、通信和信息系統(tǒng)等領(lǐng)域。3種類型:ARM1020E、ARM1022E和ARM1026EJ-S
15、。 共八十八頁(yè)SecurCore微處理器系列(xli) 專為安全需要而設(shè)計(jì),提供(tgng)了完善的32位RISC技術(shù)的安全解決方案。靈活的保護(hù)單元,以確保操作系統(tǒng)和應(yīng)用數(shù)據(jù)的安全。采用軟內(nèi)核技術(shù),防止外部對(duì)其進(jìn)行掃描探測(cè)??杉捎脩糇约旱陌踩匦院推渌麉f(xié)處理器。主要應(yīng)用:對(duì)安全性要求較高的應(yīng)用產(chǎn)品及應(yīng)用系統(tǒng),如電子商務(wù)、電子政務(wù)、電子銀行業(yè)務(wù)、網(wǎng)絡(luò)和認(rèn)證系統(tǒng)等領(lǐng)域。4種類型:SecurCore SC100、SecurCore SC110、SecurCore SC200和SecurCore SC210。 共八十八頁(yè)Xscale處理器 基于(jy)ARMv5TE體系結(jié)構(gòu)的解決方案,是一款全性能、
16、高性價(jià)比、低功耗的處理器。支持16位的Thumb指令和DSP指令集。已使用在數(shù)字移動(dòng)電話、個(gè)人數(shù)字助理和網(wǎng)絡(luò)產(chǎn)品等場(chǎng)合。Xscale處理器是Intel目前主要推廣的一款A(yù)RM微處理器。 共八十八頁(yè)ARM系列(xli)流水線比較 預(yù)取(Fetch)譯碼(Decode)執(zhí)行(Execute)預(yù)?。‵etch)譯碼(Decode)執(zhí)行(Execute)訪存(Memory)寫入(Write)預(yù)?。‵etch)譯碼(Decode)發(fā)送(Issue)預(yù)取(Fetch)預(yù)?。‵etch)執(zhí)行(Execute)訪存(Memory)寫入(Write)譯碼(Decode)發(fā)送(Issue)執(zhí)行(Execute)轉(zhuǎn)
17、換(Snny)訪存(Memory)寫入(Write)ARM7ARM9ARM10ARM11共八十八頁(yè)ARM系列(xli)性能比較 項(xiàng)目ARM7ARM9ARM10ARM11流水線3568典型頻率(MHz)80150260335功耗(mW/MHz)0.060.19(+cache)0.5(+cache)0.4(+cache)性能MIPS*/MHz0.971.11.31.2架構(gòu)馮諾伊曼哈佛哈佛哈佛共八十八頁(yè)ARM系列參數(shù)(cnsh)比較1 ARM系列微處理器核特點(diǎn)ARM7ARM7TDMI:整數(shù)處理核ARM7TDMI 處理器的可綜合版本; ARM720T:帶MMU的處理器核心,支持操作系統(tǒng);ARM7EJ-
18、S:帶有DSP和Jazelle TM 技術(shù),能夠?qū)崿F(xiàn)Java加速功能馮諾伊曼體系結(jié)構(gòu);ARMTDMI是目前應(yīng)用最廣的微處理器核ARM720T帶有MMU和8KB的指令數(shù)據(jù)混合cache;ARM7EJ-執(zhí)行ARMv5TEJ指令,5級(jí)流水線,提供Java加速指令,沒有存儲(chǔ)器保護(hù)。ARM9ARM920T:帶有獨(dú)立的16KB 數(shù)據(jù)和指令Cache;ARM922T:帶有獨(dú)立的8位KB 數(shù)據(jù)和指令Cache;ARM940T包括更小數(shù)據(jù)和指令Cache和一個(gè)MPU基于ARM9TDMI ,帶16位的Thumb指令集,增強(qiáng)代碼密度最多到35%;在0.13m工藝下最高性能可達(dá)到300MIPS(Dhrystone 2
19、.1測(cè)試標(biāo)準(zhǔn));集成了數(shù)據(jù)和指令Chche;32位AMBA總線接口的MMU支持;可在0.18m、 0.15m和0.13m工藝的硅芯片上實(shí)現(xiàn)。共八十八頁(yè)ARM系列參數(shù)(cnsh)比較2 ARM9EARM926EJ-S:Jazelle 技術(shù),有MMU,可配置的數(shù)據(jù)和指令Cache,TCM接口;ARM946E-S:可配置的數(shù)據(jù)和指令Cache及TCM;ARM966E-S:針對(duì)要求高性能和低功耗的可預(yù)測(cè)的指令執(zhí)行時(shí)間的硬實(shí)時(shí)應(yīng)用設(shè)計(jì) ARM968E-S:最小、功耗最小的ARM9E系列處理器,針對(duì)嵌入式實(shí)時(shí)應(yīng)用設(shè)計(jì);ARM9E是針對(duì)微控制器、DSP和Java的單處理器解決方案; ARMJazelle技術(shù)
20、提供 8倍的 Java 加速性能 (ARM926EJ-S) ;5-級(jí)整數(shù)流水線; 在0.13m工藝下最高性能可達(dá)到300MIPS(Dhrystone 2.1測(cè)試標(biāo)準(zhǔn));可選擇的向量浮點(diǎn)單元VFP9 協(xié)處理器指令優(yōu)秀海浮點(diǎn)性能,對(duì)于3D圖形加速和實(shí)時(shí)控制可達(dá)到215MFLOPS。高性能的AHB總線,帶MMU可在0.18m, 0.15m, 0.13m工藝的硅芯片上實(shí)現(xiàn)。 ARM10EARM1020E:帶DSP指令集,在片調(diào)試功能,獨(dú)立的32KB數(shù)據(jù)和指令Cache,MMU支持;ARM1022E:與ARM1020E相同,只是獨(dú)立的數(shù)據(jù)和指令Cache變?yōu)?6KB;ARM1026EJ-S:同時(shí)具有MP
21、U和MMU,可綜合版本; 帶分支預(yù)測(cè)的6級(jí)整數(shù)流水線;在0.13m工藝下最高性能可達(dá)到430MIPS(Dhrystone 2.1測(cè)試標(biāo)準(zhǔn));對(duì)于3D圖形運(yùn)算和實(shí)時(shí)控制采用VFP協(xié)處理器,浮點(diǎn)運(yùn)算性能最高可達(dá)650MFLOPS;雙64位AMBA總線接口和64位內(nèi)部總路線接口;優(yōu)化的緩存結(jié)構(gòu)提高了處理器訪問低速存儲(chǔ)器的性能;可在0.18m, 0.15m, 0.13m工藝的硅芯片上實(shí)現(xiàn)共八十八頁(yè)ARM系列(xli)參數(shù)比較3 ARM11ARM11 MPCore:可綜合的多處理器核,1至4個(gè)處理器可配置;ARM1136J(F)-S:可配置的數(shù)據(jù)和指令Cache,可提供1.9位的MPEG4編碼加速功能;
22、ARM1156T2(F)-S:帶集成浮點(diǎn)協(xié)處理器,帶內(nèi)存保護(hù)單元MPU;ARM1176JZ(F)-S:帶針對(duì)CPU和系統(tǒng)安全架構(gòu)擴(kuò)展的TrustZone技術(shù)。增強(qiáng)的Thumb、Jazelle、DSP擴(kuò)展支持; 帶片上和系統(tǒng)安全TrustZone 技術(shù)支持 ;在0.13m工藝下最高可達(dá)到550MHz;MPCore在0.13m工藝下最高性能可達(dá)到740MIPS(Dhrystone 2.1測(cè)試標(biāo)準(zhǔn));支持多媒體指令SIMD;采用三種電源模式:全速/待命/休眠集成DMA的TCM低功耗、高性能。 SecurCoreSC100:第一個(gè)32位安全處理器;、SC110:在SC100上增加密鑰協(xié)處理器;SC20
23、0:帶Jazelle技術(shù)的高級(jí)安全處理器;SC210:在SC200上增加密鑰協(xié)處理器SecurCore是專門為智能卡、安全I(xiàn)C提供的32位安全處理器, 為電子商務(wù)、銀行、網(wǎng)絡(luò)、移動(dòng)多媒體、公共交通提供安全解決方案;體積小、功耗低,代碼壓縮密度高;為快速增長(zhǎng)的Java卡平臺(tái)提供Java加速功能;共八十八頁(yè)ARM系列參數(shù)(cnsh)比較4 CortexCortex-A:面向應(yīng)用的微處理器,針對(duì)復(fù)雜操作系統(tǒng)和應(yīng)用程序設(shè)計(jì);Cortex-R:針對(duì)實(shí)時(shí)系統(tǒng)的嵌入式處理器;Cortex-M:針對(duì)成本敏感應(yīng)用優(yōu)化的深度嵌入式處理器;2004年發(fā)布,提供增強(qiáng)的媒體和數(shù)字處理能力,增加了系統(tǒng)性能;支持ARM、T
24、humb、Thumb-2指令集;Thumb-2指令集提供了更高的代碼存儲(chǔ)密度,進(jìn)一步降低成本;Intel系列StrongARM:ARMv4體系XScale:ARMv5TE體系,增加MMX指令StrongARM主要應(yīng)用于手持設(shè)備和PDA,5級(jí)流水線,具有獨(dú)立的數(shù)據(jù)和指令Cache,不支持Thumb指令集,目前已停產(chǎn);XScale是目前Intel公司主推的高性能嵌入式處理器,分通用處理器、網(wǎng)絡(luò)處理器和I/O處理器三類。其中通用處理器有PXA25x、PXA26x、PXA27x三個(gè)系列,被廣泛應(yīng)用于智能手機(jī)、PDA領(lǐng)域。共八十八頁(yè)ARM處理器結(jié)構(gòu)(jigu)ARM和Thumb狀態(tài)(zhungti) R
25、ISC技術(shù)流水線技術(shù)超標(biāo)量技術(shù)共八十八頁(yè)ARM和Thumb狀態(tài)(zhungti) V4版以后有:(1)32位ARM指令集(2)16位Thumb指令集,功能(gngnng)是ARM指令集的功能子集。ARM7TDMI核以后,T變種的ARM微處理器有兩種工作狀態(tài):(1)ARM狀態(tài)(2)Thumb狀態(tài)。當(dāng)ARM微處理器執(zhí)行32位的ARM指令集時(shí),工作在ARM狀態(tài);當(dāng)ARM微處理器執(zhí)行16位的Thumb指令集時(shí),工作在Thumb狀態(tài)。 共八十八頁(yè)ARM與Thumb狀態(tài)(zhungti)轉(zhuǎn)換 在程序的執(zhí)行過程中,微處理器可以隨時(shí)在兩種工作狀態(tài)(zhungti)之間切換,并且該轉(zhuǎn)變不影響處理器的工作模式和相
26、應(yīng)寄存器中的內(nèi)容。 進(jìn)入Thumb狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位(位0)為1時(shí),執(zhí)行BX指令。進(jìn)入ARM狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位(位0)為0時(shí),執(zhí)行BX指令。共八十八頁(yè)RISC技術(shù)(jsh)ARM處理器采用加載/存儲(chǔ)(Load/Store)體系結(jié)構(gòu)是典型的RISC處理器,即只有Load/Store的存/取指令可以訪問存儲(chǔ)器,其余指令都不允許進(jìn)行存儲(chǔ)器操作。 RISC體系結(jié)構(gòu)基本特點(diǎn)(tdin):(1)大多數(shù)指令只需要執(zhí)行簡(jiǎn)單和基本的功能,其執(zhí)行過程在一個(gè)機(jī)器周期內(nèi)完成。(2)只保留加載/存儲(chǔ)指令。操作數(shù)由加載/存儲(chǔ)指令從存儲(chǔ)器取出放寄存器內(nèi)操作。(3)芯片邏輯不采用或少采用微碼技術(shù),而采用硬
27、布線邏輯。(4)減少指令數(shù)和尋址方式。 (5)指令格式固定,指令譯碼簡(jiǎn)化。(6)優(yōu)化編譯。共八十八頁(yè)RISC技術(shù)(jsh) ARM體系結(jié)構(gòu)還采用了一些特別的技術(shù):所有的指令都可根據(jù)前面的執(zhí)行結(jié)果決定是否被執(zhí)行,提高了指令的執(zhí)行效率??捎肔oad/Store指令批量傳輸數(shù)據(jù),以提高數(shù)據(jù)的傳輸效率??稍谝粭l數(shù)據(jù)處理指令中同時(shí)完成邏輯處理和移位(y wi)處理。RISC和CISC各有優(yōu)勢(shì),界限并不那么明顯?,F(xiàn)代的CPU往往采用CISC的外圍,內(nèi)部加入了RISC的特性,如超常指令集CPU就是融合了RISC和CISC的優(yōu)勢(shì),成為未來的CPU發(fā)展方向之一。 共八十八頁(yè)流水線技術(shù)(jsh)開發(fā)和設(shè)計(jì)嵌入式系
28、統(tǒng)的過程(guchng)中,CPU的性能是一個(gè)非常重要的考慮因素。流水線技術(shù)是在本質(zhì)上影響程序執(zhí)行速度的因素。由于計(jì)算機(jī)中一條指令的各個(gè)執(zhí)行階段相對(duì)獨(dú)立,因此,現(xiàn)代CPU大多設(shè)計(jì)成流水線型的機(jī)器,在這種類型機(jī)器中幾個(gè)指令可以并行執(zhí)行。采用流水線的重疊技術(shù)大大提高了CPU的運(yùn)行效率。當(dāng)流水線內(nèi)部的信息通暢流動(dòng)時(shí),CPU流水線能夠工作得最好。但實(shí)際應(yīng)用中,指令各執(zhí)行階段的操作時(shí)間長(zhǎng)短不同,有一些指令序列可能會(huì)打斷流水線內(nèi)的信息流,所以有時(shí)流水線操作不十分通暢,會(huì)暫時(shí)降低CPU的執(zhí)行速度。 共八十八頁(yè)ARM的3級(jí)流水線 ARM7架構(gòu)采用(ciyng)了一個(gè)3段的流水線:(1)取指:將指令從內(nèi)存中取出
29、來。(2)譯碼:操作碼和操作數(shù)被譯碼以決定執(zhí)行什么功能。(3)執(zhí)行:執(zhí)行已譯碼的指令。 共八十八頁(yè)多周期ARM指令(zhlng)的3級(jí)流水線操作取指的存儲(chǔ)器訪問和執(zhí)行的數(shù)據(jù)路徑占用都是不可同時(shí)共享的資源,對(duì)于(duy)多周期指令來說,如果指令復(fù)雜以至于不能在單個(gè)時(shí)鐘周期內(nèi)完成執(zhí)行階段,就會(huì)產(chǎn)生流水線阻塞。 共八十八頁(yè)ARM的流水線設(shè)計(jì)(shj)問題(1)縮短程序執(zhí)行時(shí)間(shjin): Tprog:執(zhí)行一個(gè)程序所需時(shí)間;Ninst:執(zhí)行該程序的指令條數(shù);CPI:執(zhí)行每條指令的平均時(shí)鐘周期數(shù);Fclk:處理器的時(shí)鐘頻率。 措施:提高時(shí)鐘頻率fclk(導(dǎo)致流水線的級(jí)數(shù)增加 )。減少每條指令的平均時(shí)
30、鐘周期數(shù)CPI(需要解決流水線的相關(guān)問題 )共八十八頁(yè)ARM的流水線設(shè)計(jì)(shj)問題(2)解決流水線相關(guān):結(jié)構(gòu)相關(guān):某些指令在流水線中重疊執(zhí)行時(shí),產(chǎn)生資源沖突 。 措施:1)采用分離式指令Cache和數(shù)據(jù)Cache。2)ALU中采用單獨(dú)加法器來完成地址計(jì)算。數(shù)據(jù)相關(guān):當(dāng)一條指令需要前面指令的執(zhí)行結(jié)果,而這些指令均在流水線中重疊執(zhí)行時(shí),就可能引起流水線的數(shù)據(jù)相關(guān)。數(shù)據(jù)相關(guān)有“寫后讀”、“寫后寫”和“讀后寫”等。 措施:1)旁路技術(shù)。2)流水線互鎖技術(shù)??刂葡嚓P(guān):當(dāng)流水線遇到(y do)分支指令和其他會(huì)改變PC值的指令時(shí),就會(huì)發(fā)生控制相關(guān)。 措施:1)引入延時(shí)分支。2)盡早計(jì)算出分支轉(zhuǎn)移成功時(shí)的
31、PC值(即分支的目標(biāo)地址)。共八十八頁(yè)ARM的5級(jí)流水線 ARM9和StrongARM架構(gòu)都采用(ciyng)了5級(jí)流水線.增加了I-Cache和D-Cache,把存儲(chǔ)器的取指與數(shù)據(jù)存取分開;增加了數(shù)據(jù)寫回的專門通路和寄存器; 把指令的執(zhí)行過程分割為5部分: 取指-指令譯碼-執(zhí)行-數(shù)據(jù)緩存-寫回 共八十八頁(yè)超標(biāo)量執(zhí)行(zhxng)通過重復(fù)設(shè)置多套指令執(zhí)行部件(bjin),同時(shí)處理并完成多條指令,實(shí)現(xiàn)并行操作,來達(dá)到提高處理速度的目的。所有ARM內(nèi)核,包括流行的ARM7、ARM9和ARM11等,都是單周期指令機(jī)。ARM公司下一代處理器將是每周期能處理多重指令的超標(biāo)量機(jī)。超標(biāo)量處理機(jī):一個(gè)時(shí)鐘周期
32、內(nèi)同時(shí)執(zhí)行多條指令的處理機(jī)。 共八十八頁(yè)超標(biāo)量處理器中的多指令單元(dnyun) 超標(biāo)量與流水線技術(shù)是兼容的,為了能夠在一個(gè)時(shí)鐘周期內(nèi)同時(shí)發(fā)射多條指令,超標(biāo)量處理機(jī)必須有兩條或兩條以上能夠同時(shí)工作的指令流水線。但與此同時(shí),也帶來了多流水線的調(diào)度問題和操作部件的資源沖突問題。 超標(biāo)量處理器在執(zhí)行的過程中必須動(dòng)態(tài)地檢查指令相關(guān)性。如果代碼中有分支指令,必須將分支被執(zhí)行和分支不被執(zhí)行這兩種情況分開考慮。計(jì)算執(zhí)行時(shí)間(shjin)幾乎是不可能的。共八十八頁(yè)存儲(chǔ)系統(tǒng)機(jī)制(jzh) 存儲(chǔ)器就是用來存儲(chǔ)信息的部件,存儲(chǔ)器是嵌入式系統(tǒng)硬件中的重要組成部分(z chn b fn)。設(shè)計(jì)嵌入式系統(tǒng)的存儲(chǔ)器時(shí)需要考
33、慮:是否需要擴(kuò)展;整個(gè)嵌入式系統(tǒng)的存儲(chǔ)器是由片內(nèi)和片外兩部分組成。為了解決速度和內(nèi)存容量的問題,在系統(tǒng)中采用虛擬地址空間和高速緩存來提高內(nèi)存的平均性能。存儲(chǔ)管理單元(MMU)進(jìn)行地址轉(zhuǎn)換,它在一個(gè)小的物理內(nèi)存中提供相對(duì)較大的虛擬存儲(chǔ)空間。 共八十八頁(yè)存儲(chǔ)器部件(bjin)的分類按在系統(tǒng)中的地位分類: (1)主存儲(chǔ)器(Main Memory, 簡(jiǎn)稱(jinchng)內(nèi)存或主存) (2)輔助存儲(chǔ)器(Auxiliary Memory,Secondary Memory,簡(jiǎn)稱輔存或外存) 按存儲(chǔ)介質(zhì)分類:(1)磁存儲(chǔ)器(Magnetic Memory),(2)半導(dǎo)體集成電路存儲(chǔ)器(通常稱為半導(dǎo)體存儲(chǔ)器)
34、,(3)光存儲(chǔ)器(Optical Memory),(4)激光光盤存儲(chǔ)器(Laser Optical Disk)按信息存取方式分類:(1)隨機(jī)存取存儲(chǔ)器RAM(2)只讀存儲(chǔ)器ROM 共八十八頁(yè)存儲(chǔ)器的組織(zzh)和結(jié)構(gòu)嵌入式存儲(chǔ)器一般采用(ciyng)存儲(chǔ)密度較大的存儲(chǔ)器芯片,典型的嵌入式存儲(chǔ)器系統(tǒng)由ROM、RAM、EPROM等組成。共八十八頁(yè)常用(chn yn)的存儲(chǔ)器隨機(jī)存儲(chǔ)器(RAM) (1)靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)(2)動(dòng)態(tài)隨機(jī)存儲(chǔ)器(DRAM) 只讀存儲(chǔ)器(ROM),它在嵌入式系統(tǒng)中非常有用,因?yàn)?yn wi)許多代碼或數(shù)據(jù)不隨時(shí)間改變。 (1)工廠編程的只讀存儲(chǔ)器(2)現(xiàn)場(chǎng)可編程
35、只讀存儲(chǔ)器 共八十八頁(yè)存儲(chǔ)器的性能(xngnng) 大容量、高速度、低價(jià)格是評(píng)價(jià)存儲(chǔ)器性能的三個(gè)主要指標(biāo),也是存儲(chǔ)體系設(shè)計(jì)的主要目標(biāo)。 容量:SwWlm。其中W為存儲(chǔ)體的字長(zhǎng)(單位為位或字節(jié)),l為單個(gè)存儲(chǔ)體的字?jǐn)?shù),m為并行工作的存儲(chǔ)體個(gè)數(shù)。速度:m個(gè)存儲(chǔ)體并行工作時(shí),可達(dá)到的最大頻率寬度(kund)為BmWmTM 。其中TM是連續(xù)起動(dòng)一個(gè)存儲(chǔ)器所必要的時(shí)間間隔,TMTA。Bm是連續(xù)提供數(shù)據(jù)的速率。價(jià)格:具有SM位的存儲(chǔ)器,每位價(jià)格表示為c=CSm。其中C是總價(jià)格。共八十八頁(yè)存儲(chǔ)體系的組成(z chn)單體單字存儲(chǔ)器單體多字存儲(chǔ)器 多體單字交叉(jioch)存取存儲(chǔ)器多體多字交叉存取存儲(chǔ)器并行
36、主存系統(tǒng):能并行讀出多個(gè)CPU字的單體多字和多體單字及多體多字的交叉存取系統(tǒng)。 共八十八頁(yè)存儲(chǔ)體系的形式(xngsh)存儲(chǔ)層次結(jié)構(gòu)的組成原則: 每位價(jià)格從上往下依次減少。 存儲(chǔ)容量(cn ch rn lin)從上往下依次增加。 存取速度從上往下依次減慢。 CPU的訪問頻度從上往下依次減少。 (a)兩級(jí)存儲(chǔ)器層次結(jié)構(gòu) (b)三級(jí)存儲(chǔ)器層次結(jié)構(gòu) 共八十八頁(yè)8051存儲(chǔ)器8051的存儲(chǔ)器在物理結(jié)構(gòu)(jigu)上分程序存儲(chǔ)器(ROM)和數(shù)據(jù)存儲(chǔ)器(RAM),有四個(gè)物理上相互獨(dú)立的存儲(chǔ)空間,即片內(nèi)ROM和片外ROM,片內(nèi)RAM和片外RAM。共八十八頁(yè)8051存儲(chǔ)器結(jié)構(gòu)(jigu) 共八十八頁(yè)8051片內(nèi)
37、RAM單元(dnyun) 低128單元分三個(gè)區(qū)域(qy):工作寄存器、位尋址區(qū)和數(shù)據(jù)緩沖區(qū) 共八十八頁(yè)總線(zn xin)協(xié)議總線(zn xin)是CPU與存儲(chǔ)器和設(shè)備通信的機(jī)制??偩€的一個(gè)主要作用是提供到存儲(chǔ)器的接口。 大部分總線協(xié)議的基本構(gòu)件是四周期握手協(xié)議 。共八十八頁(yè)總線(zn xin)讀寫總線的基本操作是讀和寫。Clock 提供總線組件各部分(b fen)同步。當(dāng)總線讀時(shí),R/W為1。當(dāng)總線寫時(shí),R/W為0。Address是一個(gè)a位信號(hào)束,為訪問提供地址。Data是一個(gè)n位信號(hào)束,它可從CPU得到數(shù)據(jù)或向CPU傳送數(shù)據(jù)。Data ready當(dāng)數(shù)據(jù)束上值合法時(shí)發(fā)信號(hào)。 共八十八頁(yè)總線(
38、zn xin)的時(shí)序圖總線行為以時(shí)序圖說明(shumng)。時(shí)序圖表示總線上的信號(hào)如何隨時(shí)間變化。 共八十八頁(yè)直接內(nèi)存(ni cn)訪問(DMA)多數(shù)情況下,數(shù)據(jù)的傳輸(chun sh)需要CPU的介入。但是,有時(shí)候某些數(shù)據(jù)傳輸類型無須CPU加入。直接存儲(chǔ)器訪問(DMA)是允許讀寫不由CPU控制的總線操作。共八十八頁(yè)系統(tǒng)總線配置(pizh)一個(gè)微處理器系統(tǒng)可能含有多條總線。高速設(shè)備可連到高速總線上,低速設(shè)備連到別的總線上。橋:使總線可以互連的邏輯電路。高速總線通常要更昂貴的電路和連接器,可通過使用較慢、較便宜的總線來降低低速設(shè)備成本。橋允許總線獨(dú)立操作,在I/O操作中可提供某些并行性。橋不僅是
39、高速總線的受控器,而且(r qi)是低速總線的主控器。橋從高速總線上獲取指令而將它們傳到低速總線,它還將結(jié)果從低速總線傳到高速總線上。橋還可以作為兩橋之間的協(xié)議翻譯器。 共八十八頁(yè)ARM存儲(chǔ)(cn ch)數(shù)據(jù)類型六種數(shù)據(jù)類型:(1) 8位有符號(hào)和無符號(hào)字節(jié)。(2)16位有符號(hào)和無符號(hào)半字。(3)32位有符號(hào)和無符號(hào)字。ARM指令都是32位的字,必須以字(4字節(jié))為單位邊界(binji)對(duì)齊。Thumb指令是16位半字,必須以2字節(jié)位單位邊界對(duì)齊。在內(nèi)部,所有ARM操作都是面向32位的操作數(shù);只有數(shù)據(jù)傳送指令支持較短的字節(jié)和半字的數(shù)據(jù)類型。當(dāng)從存儲(chǔ)器調(diào)入一個(gè)字節(jié)和半字時(shí),根據(jù)指令對(duì)數(shù)據(jù)的操作類型
40、,將其無符號(hào)0或有符號(hào)“符號(hào)位”擴(kuò)展為32位,進(jìn)而作為32位數(shù)據(jù)在內(nèi)部進(jìn)行處理。1112342共八十八頁(yè)ARM存儲(chǔ)(cn ch)格式數(shù)據(jù)存儲(chǔ)(cn ch)格式有兩種: (1)大端模式:較高的有效字節(jié)存放在較低的存儲(chǔ)器地址,較低的有效字節(jié)存放在較高的存儲(chǔ)器地址。(2)小端模式:較高的有效字節(jié)存放在較高的存儲(chǔ)器地址,較低的有效字節(jié)存放在較低的存儲(chǔ)器地址。 大端存儲(chǔ)模式 小端存儲(chǔ)模式(缺?。┕舶耸隧?yè)ARM存儲(chǔ)周期 4種基本類型:空閑周期(zhuq)。非順序周期。順序周期。協(xié)處理器寄存器傳送周期。 共八十八頁(yè)ARM總線接口信號(hào)(xnho)分類 ARM7TDMI的總線接口信號(hào)分成4類:時(shí)鐘(shzhn
41、g)和時(shí)鐘(shzhng)控制信號(hào):MCLK、ECLK、nRESET、nWAIT。地址類信號(hào):A31:0、nRW、MAS1:0、nOPC、nTRANS、LOCK、TBIT。存儲(chǔ)器請(qǐng)求信號(hào):nMREQ、SEQ。數(shù)據(jù)時(shí)序信號(hào):D31:0、DIN31:0、DOUT31:0、ABORT、BL3:0。共八十八頁(yè)ARM總線(zn xin)接口可以實(shí)現(xiàn)的總線(zn xin)周期總線周期使用nMREQ和SEQ信號(hào)編碼。4種不同類型的總線周期。N周期:非順序周期,最簡(jiǎn)單的總線周期;存儲(chǔ)控制器必須啟動(dòng)存儲(chǔ)器訪問(fngwn)來滿足這個(gè)請(qǐng)求;該方式存儲(chǔ)系統(tǒng)常需要長(zhǎng)的訪問(fngwn)時(shí)間。S周期:順序周期,實(shí)現(xiàn)總線
42、上的突發(fā)傳送;第一個(gè)周期,地址可與前一個(gè)內(nèi)部周期相同;與非順序訪問相比響應(yīng)更快,訪問時(shí)間更短。I周期:內(nèi)部周期,不要求存儲(chǔ)器訪問;可廣播下一次訪問的地址以便開始譯碼,但存儲(chǔ)控制器不允許進(jìn)行存儲(chǔ)器訪問。C周期:協(xié)處理器寄存器傳遞周期,通過數(shù)據(jù)總線向或從協(xié)處理器傳送數(shù)據(jù);不需存儲(chǔ)周期,存儲(chǔ)控制器不啟動(dòng)事務(wù);傳送期間,存儲(chǔ)系統(tǒng)不允許驅(qū)動(dòng)數(shù)據(jù)總線。 共八十八頁(yè)高速緩存(Cache)的分類(fn li) (1)統(tǒng)一Cache和獨(dú)立的數(shù)據(jù)/程序Cache統(tǒng)一Cache:一個(gè)存儲(chǔ)系統(tǒng)中指令預(yù)取時(shí)使用的Cache和數(shù)據(jù)讀寫時(shí)使用的Cache是同一個(gè)Cache。獨(dú)立的Cache:一個(gè)存儲(chǔ)系統(tǒng)中指令預(yù)取時(shí)使用的C
43、ache和數(shù)據(jù)讀寫時(shí)使用的Cache是各自獨(dú)立的。用于指令預(yù)取的Cache稱為(chn wi)指令Cache。用于數(shù)據(jù)讀寫的Cache稱為數(shù)據(jù)Cache。使用獨(dú)立的數(shù)據(jù)Cache和指令Cache,可以在同一個(gè)時(shí)鐘周期中讀取指令和數(shù)據(jù),而不需要雙端口的Cache。但此時(shí)要注意保證指令和數(shù)據(jù)的一致性。 共八十八頁(yè)高速緩存(Cache)的分類(fn li)(2)寫通Cache和寫回Cache當(dāng)CPU更新了Cache的內(nèi)容時(shí),要將結(jié)果寫回到主存中。寫通法: write-throught,指CPU在執(zhí)行寫操作時(shí),必須把數(shù)據(jù)同時(shí)寫入Cache和主存。寫回法: write-back,指CPU在執(zhí)行寫操作時(shí),
44、被寫的數(shù)據(jù)只寫入Cache,不寫入主存。僅當(dāng)需要(xyo)替換時(shí),才把已經(jīng)修改的Cache塊寫回到主存中。共八十八頁(yè)高速緩存(Cache)的分類(fn li)(3)讀操作分配Cache和寫操作分配Cache當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),可能Cache未命中,這時(shí)根據(jù)Cache執(zhí)行的操作不同。讀操作分配Cache:當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),如果Cache未命中,只是簡(jiǎn)單地將數(shù)據(jù)寫入主存中。主要在數(shù)據(jù)讀取時(shí),才進(jìn)行Cache內(nèi)容預(yù)取。寫操作分配Cache:當(dāng)進(jìn)行數(shù)據(jù)寫操作時(shí),如果Cache未命中,Cache系統(tǒng)(xtng)將會(huì)進(jìn)行Cache內(nèi)容預(yù)取,從主存中將相應(yīng)的塊讀取到Cache中相應(yīng)的位置,并執(zhí)行寫操作,把
45、數(shù)據(jù)寫入到Cache中。對(duì)于寫通類型的Cache,數(shù)據(jù)將會(huì)同時(shí)被寫入到主存中,對(duì)于寫回類型的Cache數(shù)據(jù)將在合適的時(shí)候?qū)懟氐街鞔嬷小?共八十八頁(yè)Cache的工作(gngzu)原理 在Cache存儲(chǔ)系統(tǒng)當(dāng)中,把主存儲(chǔ)器和Cache都劃分成相同(xin tn)大小的塊。主存地址可以由塊號(hào)M和塊內(nèi)地址N兩部分組成。同樣,Cache的地址也由塊號(hào)m和塊內(nèi)地址n組成。 共八十八頁(yè)Cache地址(dzh)映像和變換方式(1)直接映像快,造價(jià)低。但由于映射策略簡(jiǎn)單,所以有一定的局限性。如果訪問頻繁的塊正好被映射到同一個(gè)塊,就不能充分利用高速緩存的好處。(2)組相聯(lián)映像組相聯(lián)映像由組的個(gè)數(shù)來標(biāo)識(shí),每個(gè)組被實(shí)
46、現(xiàn)為一個(gè)(y )直接映射高速緩存。高速緩存請(qǐng)求同時(shí)廣播到所有的組。如果某組中有這個(gè)單元,該高速緩存便報(bào)告命中。比直接映射慢,命中率較高。(3)全相聯(lián)映像主存中任意一個(gè)塊都可以映射到Cache中的任意一個(gè)塊的位置上。不同的ARM有不同大小的高速緩存和組織結(jié)構(gòu)。共八十八頁(yè)Cache的替換算法 (1)輪轉(zhuǎn)法維護(hù)一個(gè)邏輯計(jì)數(shù)器,利用該計(jì)數(shù)器依次選擇將要被替換出去的Cache塊。這種算法容易預(yù)測(cè)最壞情況下Cache的性能。缺點(diǎn):在程序(chngx)發(fā)生很小的變化時(shí),可能造成Cache平均性能急劇的變化。(2)隨機(jī)替換算法通過一個(gè)偽隨機(jī)數(shù)發(fā)生器產(chǎn)生一個(gè)偽隨機(jī)數(shù),用新塊將編號(hào)為該偽隨機(jī)數(shù)的Cache塊替換掉
47、。算法簡(jiǎn)單,易于實(shí)現(xiàn)。沒有考慮程序的局部性特點(diǎn),也沒有利用以前塊地址分布情況,因而效果較差。不易預(yù)測(cè)最壞情況下Cache的性能。 共八十八頁(yè)存儲(chǔ)管理單元(dnyun)MMU 存儲(chǔ)管理單元在CPU和物理內(nèi)存之間進(jìn)行地址轉(zhuǎn)換。由于是將地址從邏輯空間映射到物理空間,因此這個(gè)轉(zhuǎn)換過程一般稱為內(nèi)存映射。在ARM系統(tǒng)中,存儲(chǔ)管理單元MMU主要工作:(1)虛擬存儲(chǔ)空間到物理存儲(chǔ)空間的映射。在ARM中采用了頁(yè)式虛擬存儲(chǔ)管理。(2)存儲(chǔ)器訪問權(quán)限的控制。(3)設(shè)置虛擬存儲(chǔ)空間的緩沖(hunchng)的特性。 共八十八頁(yè)MMU的存儲(chǔ)訪問(fngwn)過程 使能MMU時(shí)存儲(chǔ)訪問(fngwn)過程。C控制位:Cach
48、able,B控制位 :Bufferable共八十八頁(yè)MMU的存儲(chǔ)(cn ch)訪問過程禁止MMU時(shí)存儲(chǔ)訪問過程 。先要確定芯片是否支持cache和write buffer。如果芯片規(guī)定當(dāng)禁止MMU時(shí)禁止cache和write buffer,則存儲(chǔ)訪問將不考慮C和B控制位。如果芯片規(guī)定當(dāng)禁止MMU時(shí)可以使能cache和write buffer,則數(shù)據(jù)訪問時(shí),C=0,B=0;指令讀取時(shí),如果使用分開的TLB,那么C=1,如果使用統(tǒng)一的TLB,那么C=0。存儲(chǔ)訪問不進(jìn)行權(quán)限控制,MMU也不會(huì)產(chǎn)生(chnshng)存儲(chǔ)訪問中止信號(hào)。所有的物理地址和虛擬地址相等,即使用平板存儲(chǔ)模式。共八十八頁(yè)MMU中的
49、地址變換過程(guchng) 通過兩級(jí)頁(yè)表實(shí)現(xiàn)。一級(jí)頁(yè)表:包含以段為單位的地址變換條目,以及指向二級(jí)頁(yè)表的指針。一級(jí)頁(yè)表實(shí)現(xiàn)的地址映射粒度(l d)較大。以段為單位的地址變換過程只需要一級(jí)頁(yè)表。二級(jí)頁(yè)表:包含以大頁(yè)和小頁(yè)為單位的地址變換條目。以頁(yè)為單位的地址變換過程需要二級(jí)頁(yè)表。ARM支持的存儲(chǔ)塊大小有4種:(1)段(Section):大小為1MB的存儲(chǔ)塊。(2)大頁(yè)(Large Pages):大小為64KB的存儲(chǔ)塊。(3)小頁(yè)(Small Pages):大小為4KB的存儲(chǔ)塊。(4)極小頁(yè)(Tiny Pages):大小為1KB的存儲(chǔ)塊。 共八十八頁(yè)一級(jí)頁(yè)表地址變換過程(guchng)CP15的寄存器C2中存放的是內(nèi)存中頁(yè)表的基地址。形成一個(gè)32位的索引值,使用該32位索引值從頁(yè)表中找出相應(yīng)的地址變換條目(tiom)。該條目(tiom)或者包含一個(gè)一級(jí)描述符,或者包含一個(gè)指向二級(jí)頁(yè)表的指針。 共八十八頁(yè)一級(jí)描述符一級(jí)描述符:從頁(yè)表中得到的相應(yīng)地址變換條目。它定義了與
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 玉溪師范學(xué)院《復(fù)變函數(shù)與積分變換》2022-2023學(xué)年第一學(xué)期期末試卷
- 2024年磁卡寬片合作協(xié)議書
- 2024店鋪買賣合同范本2
- 2024工程規(guī)劃設(shè)計(jì)合同
- 鹽城師范學(xué)院《語(yǔ)文學(xué)科教學(xué)知識(shí)與能力實(shí)訓(xùn)教程》2022-2023學(xué)年第一學(xué)期期末試卷
- 鹽城師范學(xué)院《新媒體宣傳策劃》2022-2023學(xué)年第一學(xué)期期末試卷
- 2023年北京市順義初三二模語(yǔ)文試卷及答案
- 2024的租賃合同(測(cè)量?jī)x器)
- 2024單位服務(wù)合同
- 2024合肥國(guó)際應(yīng)用超導(dǎo)中心橫向技術(shù)合同可行性評(píng)估
- 餐飲業(yè)月度收入支出費(fèi)用報(bào)表
- 訴訟材料接收表
- 可隨意編輯【封面+簡(jiǎn)歷+自薦信】淡雅歐美花紋古典求職個(gè)人簡(jiǎn)歷
- 人教版選修《中國(guó)小說欣賞》課件:聊齋志異
- 混凝土結(jié)構(gòu)設(shè)計(jì)原理課程設(shè)計(jì)報(bào)告報(bào)告
- 工程量計(jì)量計(jì)算表模板監(jiān)理
- 財(cái)經(jīng)應(yīng)用文寫作教案
- 2022年中國(guó)鐵路國(guó)際有限公司招考聘用高校畢業(yè)生(同步測(cè)試)模擬卷和答案
- 護(hù)坡、阻滑體、齒墻、混凝土施工工藝
- 干細(xì)胞治療講稿
- 孤獨(dú)癥精品課件
評(píng)論
0/150
提交評(píng)論