版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
嵌入式系統(tǒng)設(shè)計與實例開發(fā)第三章基于ARM的處理器體系結(jié)構(gòu)嵌入式系統(tǒng)設(shè)計與實例開發(fā)1主要內(nèi)容3.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)3.1.2ARM工作狀態(tài)3.1.3ARM微處理器的寄存器組織3.1.4ARM微處理器的指令結(jié)構(gòu)3.2ARM9處理器簡介3.2.1與ARM7處理器的比較3.2.2OMAP5912處理器簡介
主要內(nèi)容3.1ARM體系結(jié)構(gòu)2ARM簡介ARM即AdvancedRISCMachines的縮寫。1985年4月26日,第一個ARM原型在英國劍橋的Acorn計算機(jī)有限公司誕生,由美國加州SanJoseVLSI技術(shù)公司制造。20世紀(jì)80年代后期,ARM很快開發(fā)成Acorn的臺式機(jī)產(chǎn)品,形成英國的計算機(jī)教育基礎(chǔ)。1990年成立了AdvancedRISCMachinesLimited。ARM簡介ARM即AdvancedRISCMachine3ARM簡介20世紀(jì)90年代,ARM32位嵌人式RISC(ReducedInstructionSetComputer)處理器擴(kuò)展到世界范圍,占據(jù)了低功耗、低成本和高性能的嵌入式系統(tǒng)應(yīng)用領(lǐng)域的領(lǐng)先地位。32位RISC處理器受到青睞,領(lǐng)先的是ARM嵌入式微處理器系列。ARM公司雖然只成立10多年,但在1999年因移動電話火爆市場,其32位RISC處理器占市場份額超過了50%,2001年初,ARM公司的32位RISC處理器市場占有率超過了75%。ARM簡介20世紀(jì)90年代,ARM32位嵌人式RISC(Re4ARM簡介ARM公司是知識產(chǎn)權(quán)供應(yīng)商,是設(shè)計公司。由合作伙伴公司來生產(chǎn)各具特色的芯片。ARM公司商業(yè)模式的強(qiáng)大之處在于其價格合理,全世界范圍有超過100個合作伙伴--包括半導(dǎo)體工業(yè)的著名公司。ARM公司專注于設(shè)計,其內(nèi)核耗電少、成本低、功能強(qiáng),特有16/32位雙指令集。ARM已成為移動通信、手持計算、多媒體數(shù)字消費等嵌入式解決方案的RISC標(biāo)準(zhǔn)。ARM簡介ARM公司是知識產(chǎn)權(quán)供應(yīng)商,是設(shè)計公司。由合作伙伴53.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)1.RISC設(shè)計思想傳統(tǒng)的復(fù)雜指令集計算機(jī)(ComplexInstructionSetComputer,CISC)結(jié)構(gòu)有其固有的缺點,即隨著計算機(jī)技術(shù)的發(fā)展而不斷引入新的復(fù)雜的指令集,為支持這些新增的指令,計算機(jī)的體系結(jié)構(gòu)會越來越復(fù)雜。3.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)63.1.1ARM微處理器結(jié)構(gòu)1.RISC設(shè)計思想1979年美國加州大學(xué)伯克利分校提出了RISC的概念。RISC并非只是簡單地去減少指令。RISC是一種設(shè)計思想,其目標(biāo)是設(shè)計出一套能在高時鐘頻率下單周期執(zhí)行、簡單而有效的指令集。RISC的設(shè)計重點在于降低由硬件執(zhí)行的指令的復(fù)雜度,因為軟件比硬件容易提供更大的靈活性和更高的智能。因此,RICS設(shè)計對編譯器有更高的要求。3.1.1ARM微處理器結(jié)構(gòu)1.RISC設(shè)計思想73.1.1ARM微處理器結(jié)構(gòu)CISC與RISC的不同3.1.1ARM微處理器結(jié)構(gòu)CISC與RISC的不同8RISC和CISC之間的主要區(qū)別指標(biāo)RISCCISC指令集一個周期執(zhí)行一條指令,通過簡單指令的組合實現(xiàn)復(fù)雜操作;指令長度固定指令長度不固定,執(zhí)行需要多個周期流水線流水線每周期前進(jìn)一步指令的執(zhí)行需要調(diào)用微代碼的一個微程序寄存器更多通用寄存器用于特定目的的專用寄存器Load/Store結(jié)構(gòu)獨立的Load和Store指令完成數(shù)據(jù)在寄存器和外部存儲器之間的傳輸處理器能夠直接處理存儲器中的數(shù)據(jù)RISC和CISC之間的主要區(qū)別指標(biāo)RISCCISC指9RISC的4個設(shè)計準(zhǔn)則(1)指令集RISC處理器減少了指令種類。RISC的指令種類只提供簡單的操作,使一個周期就可以執(zhí)行一條指令。編譯器或者程序員通過幾條簡單指令的組合來實現(xiàn)一個復(fù)雜的操作(如除法操作)。RISC采用定長指令集,每條指令的長度都是固定的,允許流水線在當(dāng)前指令譯碼階段去取其下一條指令;而在CISC處理器中,指令長度通常不固定,執(zhí)行也需要多個周期。RISC的4個設(shè)計準(zhǔn)則(1)指令集10RISC的4個設(shè)計準(zhǔn)則(2)流水線指令的處理過程被拆分成幾個更小的、能夠被流水線并行執(zhí)行的單元。在理想情況下,流水線每周期前進(jìn)一步,可獲得最高的吞吐率;而CISC指令的執(zhí)行需要調(diào)用微代碼的一個微程序。RISC的4個設(shè)計準(zhǔn)則(2)流水線11RISC的4個設(shè)計準(zhǔn)則(3)寄存器RISC處理器擁有更多的通用寄存器。每個寄存器都可存放數(shù)據(jù)或地址。寄存器可為所有的數(shù)據(jù)操作提供快速的局部存儲訪問;而CISC處理器都是用于特定目的的專用寄存器。
RISC的4個設(shè)計準(zhǔn)則(3)寄存器12RISC的4個設(shè)計準(zhǔn)則(4)Load/Store結(jié)構(gòu)處理器只處理寄存器中的數(shù)據(jù)。獨立的load和store指令用來完成數(shù)據(jù)在寄存器和外部存儲器之間的傳送。因為訪問存儲器很耗時,所以把存儲器訪問和數(shù)據(jù)處理分開。這樣有一個好處,就是可反復(fù)地使用保存在寄存器中的數(shù)據(jù),而避免多次訪問存儲器,從而達(dá)到提高程序執(zhí)行性能的目的。RISC的4個設(shè)計準(zhǔn)則(4)Load/Store結(jié)構(gòu)133.1.1ARM微處理器結(jié)構(gòu)2.ARM設(shè)計思想為了使ARM指令集能夠更好地滿足嵌入式應(yīng)用的需要,ARM指令集和單純的RISC定義有以下幾個方面的不同:一些特定的指令周期數(shù)可變內(nèi)嵌桶形移位器產(chǎn)生了更為復(fù)雜的指令Thumb16位指令集條件執(zhí)行3.1.1ARM微處理器結(jié)構(gòu)2.ARM設(shè)計思想143.1.1ARM微處理器結(jié)構(gòu)3.ARM微處理器系列分類及ARM體系的變種當(dāng)前應(yīng)用較為廣泛的ARM微處理器核有ARM7、ARM9、ARM9E、ARM10E產(chǎn)品系列,每個系列都提供了一套特定的性能來滿足設(shè)計者對功耗、性能和體積的需求。在ARM體系中增加的某些特定功能稱為ARM體系的某種變種(variant)。3.1.1ARM微處理器結(jié)構(gòu)3.ARM微處理器系列分類及15ARM體系的變種(1)Thumb指令集(T變種)Thumb指令集是將ARM指令集的一個子集重新編碼而形成的一個指令集。ARM指令長度為32位,Thumb指令長度為16位。與ARM指令集相比,Thumb指令集具有一定的局限性,即完成相同的操作,Thumb指令通常需要更多的指令。因此,在對系統(tǒng)運行時間要求苛刻的應(yīng)用場合,ARM指令集更為適合。Thumb指令集沒有包含進(jìn)行異常處理時需要的一些指令,所以在異常中斷的低級處理時,還是需要使用ARM指令。這種限制決定了Thumb指令需要和ARM指令配合使用。ARM體系的變種(1)Thumb指令集(T變種)16ARM體系的變種(2)長乘法指令(M變種)M變種增加了兩條用于進(jìn)行長乘法操作的ARM指令:其中一條指令用于實現(xiàn)32位整數(shù)乘以32位整數(shù),生成64位整數(shù)的長乘法操作,另一條指令用于實現(xiàn)32位整數(shù)乘以32位整數(shù),然后再加上32位整數(shù),生成64位整數(shù)的長乘加操作。在需要這種長乘法的應(yīng)用場合,使用M變種比較合適。然而,在有些應(yīng)用場合中,乘法操作的性能并不重要,在系統(tǒng)實現(xiàn)時就不適合增加M變種的功能。ARM體系的變種(2)長乘法指令(M變種)17ARM體系的變種(3)增強(qiáng)型DSP指令(E變種)E變種包含了一些附加的指令,這些指令用于增強(qiáng)處理器對一些典型DSP算法的處理性能,主要包括:幾條新的實現(xiàn)16位數(shù)據(jù)乘法和乘加操作的指令,實現(xiàn)飽和的帶符號數(shù)的加減法操作的指令。所謂飽和的帶符號數(shù)的加減法操作是在加減法操作溢出時,結(jié)果并不進(jìn)行卷繞(wrappingaround),而是使用最大的正數(shù)或最小的負(fù)數(shù)來表示。進(jìn)行雙字?jǐn)?shù)據(jù)操作的指令,包括雙字讀取指令LDRD、雙字寫入指令STRD和協(xié)處理器的寄存器傳輸指令MCRR/MRRC、Cache預(yù)取指令PLD。ARM體系的變種(3)增強(qiáng)型DSP指令(E變種)18ARM體系的變種(4)Java加速器Jazelle(J變種)ARM的Jazelle技術(shù)將Java的優(yōu)勢和先進(jìn)的32位RISC芯片完美地結(jié)合在一起。Jazelle技術(shù)提供了Java加速功能,可以得到比普通Java虛擬機(jī)高得多的性能。與普通的Java虛擬機(jī)相比,Jazelle使Java代碼運行速度提高了3倍,而功耗降低了80%。Jazelle技術(shù)使得程序員可以在一個單獨的處理器上同時運行Java應(yīng)用程序、已經(jīng)建立好的操作系統(tǒng)、中間件以及其他應(yīng)用程序。與使用協(xié)處理器和雙處理器相比,使用單獨的處理器可以在提供高性能的同時,保證低功耗和低成本。ARM體系的變種(4)Java加速器Jazelle(J變種)19ARM體系的變種(5)ARM媒體功能擴(kuò)展(SIMD變種)ARM媒體功能擴(kuò)展為嵌入式應(yīng)用系統(tǒng)提供了高性能的音頻/視頻處理技術(shù)。這就要求處理器能夠提供很強(qiáng)的數(shù)字信號處理能力,同時還必須保持低功耗,以延長電池的使用時間。ARM的SIMD媒體功能擴(kuò)展為這些應(yīng)用需求提供了解決方案。SIMD變種的主要特點是:可以同時進(jìn)行兩個16位操作數(shù)或者4個8位操作數(shù)的運算,提供了小數(shù)算術(shù)運算,用戶可以定義飽和運算的模式,兩套16位操作數(shù)的乘加/乘減運算,32位乘以32位的小數(shù)MAC,同時8位/16位選擇操作。ARM體系的變種(5)ARM媒體功能擴(kuò)展(SIMD變種)203.1.1ARM微處理器結(jié)構(gòu)4.ARM體系結(jié)構(gòu)的命名規(guī)則ARM產(chǎn)品通常以ARM[x][y][z][T][D][M][I][E][J][F][-S]形式出現(xiàn)。后綴變量含義x系統(tǒng),如ARM7、ARM9y存儲管理/保護(hù)單元zCacheTThumb16位譯碼器(T變種)DJTAG調(diào)試器M長乘法指令(M變種)I嵌入式跟蹤宏單元E增強(qiáng)型DSP指令(E變種)JJava加速器Jazelle(J變種)F向量浮點單元S可綜合版本3.1.1ARM微處理器結(jié)構(gòu)4.ARM體系結(jié)構(gòu)的命名規(guī)則21ARM體系結(jié)構(gòu)命名規(guī)則附加要點ARM7TDMI之后的所有ARM內(nèi)核,即使“ARM”標(biāo)志后沒有包含“TDMI”字符,也都默認(rèn)包含了TDMI的功能特性;JTAG是由IEEE1149.1標(biāo)準(zhǔn)測試訪問端口和邊界掃描結(jié)構(gòu)來描述的,是ARM用來發(fā)送和接收處理器內(nèi)核與測試儀器之間調(diào)試信息的一系列協(xié)議;嵌入式ICE宏單元是建立在處理器內(nèi)部用來設(shè)置斷點和觀察點的調(diào)試硬件;可綜合,意味著處理器內(nèi)核是以源代碼形式提供的。這種源代碼形式可被編譯成一種易于EDA工具使用的形式。ARM體系結(jié)構(gòu)命名規(guī)則附加要點ARM7TDMI之后的所有AR223.1.1ARM微處理器結(jié)構(gòu)5.ARM微處理器系列ARM微處理器目前包括下面幾個系列,以及其它廠商基于ARM體系結(jié)構(gòu)的處理器,除了具有ARM體系結(jié)構(gòu)的共同特點以外,每一個系列的ARM微處理器都有各自的特點和應(yīng)用領(lǐng)域。ARM7系列ARM9系列ARM9E系列ARM10E系列ARM11系列SecurCore系列Inter的XscaleInter的StrongARM3.1.1ARM微處理器結(jié)構(gòu)5.ARM微處理器系列23ARM微處理器系列(1)ARM7微處理器系列ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同一條總線。內(nèi)核有一條3級流水線,執(zhí)行ARMv4指令集。ARM7系列微處理器主要用于對功耗和成本要求比較苛刻的消費類產(chǎn)品。其最高主頻可達(dá)130MIPS。ARM7系列微處理器的主要應(yīng)用領(lǐng)域為:工業(yè)控制、Internet設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、移動電話等多種多媒體和嵌入式應(yīng)用。ARM微處理器系列(1)ARM7微處理器系列24ARM微處理器系列ARM7微處理器系列具有如下特點:具有嵌入式ICE-RT邏輯,調(diào)試開發(fā)方便;極低的功耗,適合對功耗要求較高的應(yīng)用;能夠提供0.9MIPS/MHz的三級流水線結(jié)構(gòu);代碼密度高并兼容16位的Thumb指令集;對操作系統(tǒng)的支持廣泛,包括WindowsCE、Linux、PalmOS等;指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產(chǎn)品升級換代;主頻最高可達(dá)130MIPS,高速的運算處理能力能勝任絕大多數(shù)的復(fù)雜應(yīng)用。ARM微處理器系列ARM7微處理器系列具有如下特點:25ARM微處理器系列(2)ARM9微處理器系列ARM9系列采用5級指令流水線,能夠運行在比ARM7更高的時鐘頻率上,改善了處理器的整體性能。ARM9的存儲器系統(tǒng)根據(jù)哈佛體系結(jié)構(gòu)重新設(shè)計,區(qū)分了數(shù)據(jù)總線和指令總線。ARM9系列的第一個處理器是ARM920T,包含獨立的數(shù)據(jù)指令Cache和MMU。該處理器能夠被用在要求有虛擬存儲器支持的操作系統(tǒng)上。ARM9系列微處理器主要應(yīng)用于無線設(shè)備、儀器儀表、安全系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等。ARM微處理器系列(2)ARM9微處理器系列26ARM微處理器系列(3)ARM9E微處理器系列ARM9E系列微處理器是ARM9內(nèi)核帶有E變種的一個可綜合版本,使用單一的處理器內(nèi)核提供了微控制器、DSP、Java應(yīng)用系統(tǒng)的解決方案,極大地減少了芯片的面積和系統(tǒng)的復(fù)雜程度。ARM9E系列微處理器提供了增強(qiáng)的DSP處理能力,很適合于那些需要同時使用DSP和微控制器的應(yīng)用場合。ARM9E系列微處理器包含ARM926EJ-S、ARM946E-S和ARM966E-S三種類型。ARM微處理器系列(3)ARM9E微處理器系列27ARM微處理器系列(4)ARM10E微處理器系列ARM10E系列微處理器具有高性能、低功耗的特點,由于采用了新的體系結(jié)構(gòu),采用6級整數(shù)流水線,與同等的ARM9器件相比較,在同樣的時鐘頻率下,性能提高了近50%。同時,ARM10E系列微處理器采用了兩種先進(jìn)的節(jié)能方式,使其功耗極低,且提供了64位的Load/Store體系,支持包括向量操作的、滿足IEEE754的浮點運算協(xié)處理器,系統(tǒng)集成更加方便。ARM微處理器系列(4)ARM10E微處理器系列28ARM微處理器系列(5)ARM11微處理器系列ARM1136J-S發(fā)布于2003年,是針對高性能和高能效應(yīng)而設(shè)計的。ARM1136J-S是第一個執(zhí)行ARMv6架構(gòu)指令的處理器。它集成了一條具有獨立的Load/Store和算術(shù)流水線的8級流水線。ARMv6指令包含了針對媒體處理的單指令流多數(shù)據(jù)流擴(kuò)展,采用特殊的設(shè)計改善視頻處理能力。ARM微處理器系列(5)ARM11微處理器系列29ARM微處理器系列(6)SecurCore微處理器系列SecurCore系列微處理器專為安全需要而設(shè)計,提供了完善的32位RISC技術(shù)的安全解決方案,SecurCore系列微處理器除了具有ARM體系結(jié)構(gòu)的低功耗、高性能的特點外,還具有其獨特的優(yōu)勢,即提供了對安全解決方案的支持。SecurCore系列微處理器除了具有ARM體系結(jié)構(gòu)各種主要特點外,還在系統(tǒng)安全方面具有如下的特點:帶有靈活的保護(hù)單元,以確保操作系統(tǒng)和應(yīng)用數(shù)據(jù)的安全。采用軟內(nèi)核技術(shù),防止外部對其進(jìn)行掃描探測??杉捎脩糇约旱陌踩匦院推渌麉f(xié)處理器。
ARM微處理器系列(6)SecurCore微處理器系列30ARM微處理器系列(7)StrongARM微處理器系列IntelStrongARMSA-1100處理器是采用ARM體系結(jié)構(gòu)高度集成的32位RISC微處理器。它融合了Inter公司的設(shè)計和處理技術(shù)以及ARM體系結(jié)構(gòu)的電源效率,采用在軟件上兼容ARMv4體系結(jié)構(gòu)、同時采用具有Intel技術(shù)優(yōu)點的體系結(jié)構(gòu)。IntelStrongARM處理器是便攜式通訊產(chǎn)品和消費類電子產(chǎn)品的理想選擇,已成功應(yīng)用于多家公司的掌上電腦系列產(chǎn)品。ARM微處理器系列(7)StrongARM微處理器系列31ARM微處理器系列(8)Xscale處理器Xscale處理器是基于ARMv5TE體系結(jié)構(gòu)的解決方案,是一款全性能、高性價比、低功耗的處理器。它支持16位的Thumb指令和DSP指令集,已使用在數(shù)字移動電話、個人數(shù)字助理和網(wǎng)絡(luò)產(chǎn)品等場合。Xscale處理器是Intel目前主要推廣的一款A(yù)RM微處理器。ARM微處理器系列(8)Xscale處理器323.1ARM體系結(jié)構(gòu)3.1.2ARM工作狀態(tài)從編程的角度看,ARM微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:第一種為ARM狀態(tài),此時處理器執(zhí)行32位的、字對齊的ARM指令;第二種為Thumb狀態(tài),此時處理器執(zhí)行16位的、半字對齊的Thumb指令。3.1ARM體系結(jié)構(gòu)3.1.2ARM工作狀態(tài)333.1ARM體系結(jié)構(gòu)3.1.3ARM微處理器的寄存器組織ARM處理器共有37個寄存器,被分為若干個組(BANK),這些寄存器包括:31個通用寄存器,包括程序計數(shù)器(PC指針),均為32位的寄存器。6個狀態(tài)寄存器,用以標(biāo)識CPU的工作狀態(tài)及程序的運行狀態(tài),均為32位,目前只使用了其中的一部分。3.1ARM體系結(jié)構(gòu)3.1.3ARM微處理器的寄存器組織343.1ARM體系結(jié)構(gòu)3.1.4ARM微處理器的指令結(jié)構(gòu)ARM微處理器在較新的體系結(jié)構(gòu)中支持兩種指令集:ARM指令集和Thumb指令集。其中,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節(jié)省30%~40%以上的存儲空間,同時具備32位代碼的所有優(yōu)點。3.1ARM體系結(jié)構(gòu)3.1.4ARM微處理器的指令結(jié)構(gòu)35主要內(nèi)容3.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)3.1.2ARM工作狀態(tài)3.1.3ARM微處理器的寄存器組織3.1.4ARM微處理器的指令結(jié)構(gòu)3.2ARM9處理器簡介3.2.1與ARM7處理器的比較3.2.2OMAP5912處理器簡介主要內(nèi)容3.1ARM體系結(jié)構(gòu)363.2ARM9處理器簡介ARM9系列處理器是ARM公司設(shè)計的主流嵌入式處理器,主要包括ARM9TDMI和ARM9E-S等系列。以手機(jī)應(yīng)用為例,2G手機(jī)只需提供語音及簡單的文字短信功能,而2.5G和3G手機(jī)除了提供這兩項功能外,還必須提供各種其他的應(yīng)用功能。主要包括:(1)無線網(wǎng)絡(luò)設(shè)備:手機(jī)上網(wǎng)、電子郵件及其他定位服務(wù)等功能;(2)PDA功能:含有用戶操作系統(tǒng)(WindowsCE、SymbianOS、Linux等)及其他功能;(3)高性能功能:音頻播放器、視頻電話、手機(jī)游戲等。3.2ARM9處理器簡介ARM9系列處理器是ARM公司設(shè)計373.2ARM9處理器簡介3.2.1與ARM7處理器比較ARM7提供了非常好的性能-功耗比,它包含了Thumb指令集快速乘法指令和ICE調(diào)試技術(shù)的內(nèi)核。ARM9處理器通過全新的設(shè)計,采用了更多的晶體管,能夠達(dá)到兩倍以上于ARM7處理器的處理能力。ARM7內(nèi)核是0.9MIPS/MHz的三級流水線和馮·諾伊曼結(jié)構(gòu),而ARM9內(nèi)核是5級流水線,提供1.1MIPS/MHz的哈佛結(jié)構(gòu)。
3.2ARM9處理器簡介3.2.1與ARM7處理器比較383.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同一條總線。ARM9內(nèi)核根據(jù)哈佛體系結(jié)構(gòu)重新設(shè)計,區(qū)分了數(shù)據(jù)總線和指令總線。(1)馮·諾伊曼結(jié)構(gòu)3.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同393.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同(2)哈佛結(jié)構(gòu)哈佛結(jié)構(gòu)的特點是使用兩個獨立的存儲器模塊,分別存儲指令和數(shù)據(jù)。3.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同403.2.1與ARM7處理器比較在典型情況下,完成一條指令需要3個步驟,即:取指令、指令譯碼和執(zhí)行指令。馮·諾伊曼結(jié)構(gòu)處理器指令流的定時關(guān)系示意圖3.2.1與ARM7處理器比較在典型情況下,完成一條指令需413.2.1與ARM7處理器比較如果采用哈佛結(jié)構(gòu)處理以上同樣的3條存取數(shù)指令,由于取指令和存取數(shù)據(jù)分別經(jīng)由不同的存儲空間和不同的總線,使得各條指令可以重疊執(zhí)行,這樣,也就克服了數(shù)據(jù)流傳輸?shù)钠款i,提高了運算速度。哈佛結(jié)構(gòu)處理器指令流的定時關(guān)系示意圖3.2.1與ARM7處理器比較如果采用哈佛結(jié)構(gòu)處理以上同樣423.2.1與ARM7處理器比較2.時鐘頻率的提高ARM7處理器采用3級流水線,在執(zhí)行級完成了多個操作,包括從寄存器讀取操作數(shù),傳給移位寄存器,傳給算術(shù)邏輯單元ALU,把運算結(jié)果寫回寄存器。ARM7TDMI和ARM7TDMI-S流水線3.2.1與ARM7處理器比較2.時鐘頻率的提高ARM7433.2.1與ARM7處理器比較2.時鐘頻率的提高ARM9采用5級流水線,ARM9TDMI和ARM9E-S兩種設(shè)計基本一樣,除了ARM9E-S內(nèi)核實現(xiàn)了一個更復(fù)雜的乘加單元,以支持ARMv5TE架構(gòu)新引入的DSP增強(qiáng)指令集。采用哈佛架構(gòu)避免了數(shù)據(jù)訪問和取指令對單總線的使用沖突。ARM9TDMI流水線3.2.1與ARM7處理器比較2.時鐘頻率的提高ARM9443.2.1與ARM7處理器比較3.指令周期的改進(jìn)(1)存儲器讀寫指令Load/Store導(dǎo)致Load/Store指令時鐘數(shù)目減少的兩個微處理器架構(gòu)設(shè)計上的根本差別:ARM9內(nèi)核采用哈佛架構(gòu),有獨立的指令和數(shù)據(jù)存儲器接口,允許CPU在取指令的同時讀寫數(shù)據(jù)。而ARM7內(nèi)核則只有一個存儲器接口,取指令或數(shù)據(jù)訪問都得經(jīng)由此接口。ARM9內(nèi)核的5級流水線設(shè)計引入了獨立的“存儲器(Memory)”和“寫回(WriteBack)”兩級流水線,分別用于存儲器讀寫和把結(jié)果寫回寄存器組。3.2.1與ARM7處理器比較3.指令周期的改進(jìn)453.2.1與ARM7處理器比較3.指令周期的改進(jìn)(2)互鎖技術(shù)(interlocks)當(dāng)某一條指令需要的源數(shù)據(jù)由于前面的指令仍未執(zhí)行完而不可用時,流水線就會發(fā)生互鎖。互鎖發(fā)生時,在硬件上將暫停該指令的執(zhí)行,直到需要的數(shù)據(jù)準(zhǔn)備好為止。有了互鎖機(jī)制,ARM9得以與以前ARM處理器保持二進(jìn)制代碼級別的兼容。在許多情況下,編譯器或者代碼編寫者可以通過改變指令的順序或者別的一些技巧來減少互鎖周期數(shù)。3.2.1與ARM7處理器比較3.指令周期的改進(jìn)463.2.1與ARM7處理器比較3.指令周期的改進(jìn)(3)分支指令A(yù)RM9和ARM7的分支指令周期是相同的。ARM9TDMI和ARM9E-S不支持分支預(yù)測。在這些處理器上,跳轉(zhuǎn)的開銷相對不那么重要。實現(xiàn)分支預(yù)測增加了邏輯開銷,導(dǎo)致芯片尺寸增大,卻不會帶來顯著的性能提升。分支指令A(yù)RM7TDMI和ARM7TDMI-SARM9TDMI和ARM9E-SBranchTaken(passesitsconditioncodecheck)33BranchTaken(failsitsconditioncodecheck)113.2.1與ARM7處理器比較3.指令周期的改進(jìn)分支指令473.2ARM9處理器簡介3.2.2OMAP5912處理器介紹1.開放式多媒體應(yīng)用平臺OMAPTI于1999年5月推出OMAP架構(gòu),OMAP處理器家族目前主要有三大系列。OMAP平臺具有可擴(kuò)展、靈活而開放的構(gòu)架,長期以來一直以最佳性能和極低功耗而著稱。使用該平臺設(shè)計的2.5G和3G手機(jī)可以實現(xiàn)多種應(yīng)用,如語言處理、視頻流、電視會議、高保真音頻、定位服務(wù)、安全性、游戲、移動商務(wù)、個人管理等多媒體應(yīng)用。3.2ARM9處理器簡介3.2.2OMAP5912處理器48OMAP處理器家族OMAP處理器家族493.2ARM9處理器簡介3.2.2OMAP5912處理器介紹2.OMAP5912處理器OMAP5912處理器是OMAP1510系列的一個分支,是由TI應(yīng)用最為廣泛的TMS320C55XDSP內(nèi)核與低功耗、高性能的ARM926EJ-S微處理器組成的雙核應(yīng)用處理器,這兩個內(nèi)核通過一種專用的處理器內(nèi)部通信機(jī)制相連接。C55x系列可提供對低功耗應(yīng)用的實時多媒體處理的支持;ARM926可滿足控制和接口方面的處理需要?;陔p核結(jié)構(gòu),OMAP5912具有極強(qiáng)的運算能力和極低的功耗。3.2ARM9處理器簡介3.2.2OMAP5912處理器50OMAP5912內(nèi)部功能框圖OMAP5912內(nèi)部功能框圖513.2ARM9處理器簡介3.2.2OMAP5912處理器介紹3.常用的OMAP5912開發(fā)工具(1)OMAP5912StarterKit(OSK)(2)MU-Q-VGALCDModuleforOMAP5912(3)AcceleratorProgramforOMAP5912(4)RAPIDDEVELOPMENTKIT(RDK)(5)PortableDataTerminalReferenceDesign(6)ExpansionConnectorForOmap5912osk(7)CameraModule(CMQ模塊)(8)Mistral-Q-VGALCDModule(QVLM板)
3.2ARM9處理器簡介3.2.2OMAP5912處理器52本章小結(jié)ARM內(nèi)核采用精簡指令集計算機(jī)(ReducedInstructionSetComputer,RISC)體系結(jié)構(gòu)。ARM體系結(jié)構(gòu)的簡化設(shè)計思想不僅體現(xiàn)在了指令集的設(shè)計上,在其體系結(jié)構(gòu)的其它方面也體現(xiàn)了出來。這些增強(qiáng)的特性使得ARM處理器成為當(dāng)今最通用的32位嵌入式處理器內(nèi)核之一。我們將在ARM體系中增加的某些特定功能稱為ARM體系的某種變種(variant),ARM體系中常見的變種形式有:T變種、M變種、E變種、J變種和SIMD變種。本章小結(jié)ARM內(nèi)核采用精簡指令集計算機(jī)(ReducedIn53本章小結(jié)ARM處理器核已經(jīng)有6個系列產(chǎn)品:ARM7,ARM9,ARM9E,ARM10E,SecurCore以及最新的ARM11系列。進(jìn)一步的產(chǎn)品來自于合作伙伴,例如:IntelXScale微體系結(jié)構(gòu)和StrongARM產(chǎn)品。從編程的角度看,ARM微處理器有ARM和Thumb兩種工作狀態(tài),并可在兩種狀態(tài)之間切換;ARM處理器共有37個寄存器,其中包括31個通用寄存器和6個狀態(tài)寄存器;ARM微處理器在較新的體系結(jié)構(gòu)中支持兩種指令集:ARM指令集和Thumb指令集。本章小結(jié)ARM處理器核已經(jīng)有6個系列產(chǎn)品:ARM7,ARM954本章小結(jié)ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同一條總線,ARM9內(nèi)核采用哈佛體系結(jié)構(gòu),區(qū)分了數(shù)據(jù)總線和指令總線。與ARM7相比,ARM9處理器在流水線級數(shù)和指令結(jié)構(gòu)上進(jìn)行了改進(jìn),使得ARM9比ARM7有大約30%的性能提升。OMAP5912處理器是由TI應(yīng)用最為廣泛的TMS320C55XDSP內(nèi)核與低功耗、高性能的ARM926EJ-S微處理器組成的雙核應(yīng)用處理器,這兩個內(nèi)核通過一種專用的處理器內(nèi)部通信機(jī)制相連接?;陔p核結(jié)構(gòu),OMAP5912具有極強(qiáng)的運算能力和極低的功耗,一方面,產(chǎn)品性能高、省電;另一方面,同其它OMAP處理器一樣,采用開放式、易于開發(fā)的軟件設(shè)施,支持廣泛的操作系統(tǒng)。本章小結(jié)ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同55嵌入式系統(tǒng)設(shè)計與實例開發(fā)第三章基于ARM的處理器體系結(jié)構(gòu)嵌入式系統(tǒng)設(shè)計與實例開發(fā)56主要內(nèi)容3.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)3.1.2ARM工作狀態(tài)3.1.3ARM微處理器的寄存器組織3.1.4ARM微處理器的指令結(jié)構(gòu)3.2ARM9處理器簡介3.2.1與ARM7處理器的比較3.2.2OMAP5912處理器簡介
主要內(nèi)容3.1ARM體系結(jié)構(gòu)57ARM簡介ARM即AdvancedRISCMachines的縮寫。1985年4月26日,第一個ARM原型在英國劍橋的Acorn計算機(jī)有限公司誕生,由美國加州SanJoseVLSI技術(shù)公司制造。20世紀(jì)80年代后期,ARM很快開發(fā)成Acorn的臺式機(jī)產(chǎn)品,形成英國的計算機(jī)教育基礎(chǔ)。1990年成立了AdvancedRISCMachinesLimited。ARM簡介ARM即AdvancedRISCMachine58ARM簡介20世紀(jì)90年代,ARM32位嵌人式RISC(ReducedInstructionSetComputer)處理器擴(kuò)展到世界范圍,占據(jù)了低功耗、低成本和高性能的嵌入式系統(tǒng)應(yīng)用領(lǐng)域的領(lǐng)先地位。32位RISC處理器受到青睞,領(lǐng)先的是ARM嵌入式微處理器系列。ARM公司雖然只成立10多年,但在1999年因移動電話火爆市場,其32位RISC處理器占市場份額超過了50%,2001年初,ARM公司的32位RISC處理器市場占有率超過了75%。ARM簡介20世紀(jì)90年代,ARM32位嵌人式RISC(Re59ARM簡介ARM公司是知識產(chǎn)權(quán)供應(yīng)商,是設(shè)計公司。由合作伙伴公司來生產(chǎn)各具特色的芯片。ARM公司商業(yè)模式的強(qiáng)大之處在于其價格合理,全世界范圍有超過100個合作伙伴--包括半導(dǎo)體工業(yè)的著名公司。ARM公司專注于設(shè)計,其內(nèi)核耗電少、成本低、功能強(qiáng),特有16/32位雙指令集。ARM已成為移動通信、手持計算、多媒體數(shù)字消費等嵌入式解決方案的RISC標(biāo)準(zhǔn)。ARM簡介ARM公司是知識產(chǎn)權(quán)供應(yīng)商,是設(shè)計公司。由合作伙伴603.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)1.RISC設(shè)計思想傳統(tǒng)的復(fù)雜指令集計算機(jī)(ComplexInstructionSetComputer,CISC)結(jié)構(gòu)有其固有的缺點,即隨著計算機(jī)技術(shù)的發(fā)展而不斷引入新的復(fù)雜的指令集,為支持這些新增的指令,計算機(jī)的體系結(jié)構(gòu)會越來越復(fù)雜。3.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)613.1.1ARM微處理器結(jié)構(gòu)1.RISC設(shè)計思想1979年美國加州大學(xué)伯克利分校提出了RISC的概念。RISC并非只是簡單地去減少指令。RISC是一種設(shè)計思想,其目標(biāo)是設(shè)計出一套能在高時鐘頻率下單周期執(zhí)行、簡單而有效的指令集。RISC的設(shè)計重點在于降低由硬件執(zhí)行的指令的復(fù)雜度,因為軟件比硬件容易提供更大的靈活性和更高的智能。因此,RICS設(shè)計對編譯器有更高的要求。3.1.1ARM微處理器結(jié)構(gòu)1.RISC設(shè)計思想623.1.1ARM微處理器結(jié)構(gòu)CISC與RISC的不同3.1.1ARM微處理器結(jié)構(gòu)CISC與RISC的不同63RISC和CISC之間的主要區(qū)別指標(biāo)RISCCISC指令集一個周期執(zhí)行一條指令,通過簡單指令的組合實現(xiàn)復(fù)雜操作;指令長度固定指令長度不固定,執(zhí)行需要多個周期流水線流水線每周期前進(jìn)一步指令的執(zhí)行需要調(diào)用微代碼的一個微程序寄存器更多通用寄存器用于特定目的的專用寄存器Load/Store結(jié)構(gòu)獨立的Load和Store指令完成數(shù)據(jù)在寄存器和外部存儲器之間的傳輸處理器能夠直接處理存儲器中的數(shù)據(jù)RISC和CISC之間的主要區(qū)別指標(biāo)RISCCISC指64RISC的4個設(shè)計準(zhǔn)則(1)指令集RISC處理器減少了指令種類。RISC的指令種類只提供簡單的操作,使一個周期就可以執(zhí)行一條指令。編譯器或者程序員通過幾條簡單指令的組合來實現(xiàn)一個復(fù)雜的操作(如除法操作)。RISC采用定長指令集,每條指令的長度都是固定的,允許流水線在當(dāng)前指令譯碼階段去取其下一條指令;而在CISC處理器中,指令長度通常不固定,執(zhí)行也需要多個周期。RISC的4個設(shè)計準(zhǔn)則(1)指令集65RISC的4個設(shè)計準(zhǔn)則(2)流水線指令的處理過程被拆分成幾個更小的、能夠被流水線并行執(zhí)行的單元。在理想情況下,流水線每周期前進(jìn)一步,可獲得最高的吞吐率;而CISC指令的執(zhí)行需要調(diào)用微代碼的一個微程序。RISC的4個設(shè)計準(zhǔn)則(2)流水線66RISC的4個設(shè)計準(zhǔn)則(3)寄存器RISC處理器擁有更多的通用寄存器。每個寄存器都可存放數(shù)據(jù)或地址。寄存器可為所有的數(shù)據(jù)操作提供快速的局部存儲訪問;而CISC處理器都是用于特定目的的專用寄存器。
RISC的4個設(shè)計準(zhǔn)則(3)寄存器67RISC的4個設(shè)計準(zhǔn)則(4)Load/Store結(jié)構(gòu)處理器只處理寄存器中的數(shù)據(jù)。獨立的load和store指令用來完成數(shù)據(jù)在寄存器和外部存儲器之間的傳送。因為訪問存儲器很耗時,所以把存儲器訪問和數(shù)據(jù)處理分開。這樣有一個好處,就是可反復(fù)地使用保存在寄存器中的數(shù)據(jù),而避免多次訪問存儲器,從而達(dá)到提高程序執(zhí)行性能的目的。RISC的4個設(shè)計準(zhǔn)則(4)Load/Store結(jié)構(gòu)683.1.1ARM微處理器結(jié)構(gòu)2.ARM設(shè)計思想為了使ARM指令集能夠更好地滿足嵌入式應(yīng)用的需要,ARM指令集和單純的RISC定義有以下幾個方面的不同:一些特定的指令周期數(shù)可變內(nèi)嵌桶形移位器產(chǎn)生了更為復(fù)雜的指令Thumb16位指令集條件執(zhí)行3.1.1ARM微處理器結(jié)構(gòu)2.ARM設(shè)計思想693.1.1ARM微處理器結(jié)構(gòu)3.ARM微處理器系列分類及ARM體系的變種當(dāng)前應(yīng)用較為廣泛的ARM微處理器核有ARM7、ARM9、ARM9E、ARM10E產(chǎn)品系列,每個系列都提供了一套特定的性能來滿足設(shè)計者對功耗、性能和體積的需求。在ARM體系中增加的某些特定功能稱為ARM體系的某種變種(variant)。3.1.1ARM微處理器結(jié)構(gòu)3.ARM微處理器系列分類及70ARM體系的變種(1)Thumb指令集(T變種)Thumb指令集是將ARM指令集的一個子集重新編碼而形成的一個指令集。ARM指令長度為32位,Thumb指令長度為16位。與ARM指令集相比,Thumb指令集具有一定的局限性,即完成相同的操作,Thumb指令通常需要更多的指令。因此,在對系統(tǒng)運行時間要求苛刻的應(yīng)用場合,ARM指令集更為適合。Thumb指令集沒有包含進(jìn)行異常處理時需要的一些指令,所以在異常中斷的低級處理時,還是需要使用ARM指令。這種限制決定了Thumb指令需要和ARM指令配合使用。ARM體系的變種(1)Thumb指令集(T變種)71ARM體系的變種(2)長乘法指令(M變種)M變種增加了兩條用于進(jìn)行長乘法操作的ARM指令:其中一條指令用于實現(xiàn)32位整數(shù)乘以32位整數(shù),生成64位整數(shù)的長乘法操作,另一條指令用于實現(xiàn)32位整數(shù)乘以32位整數(shù),然后再加上32位整數(shù),生成64位整數(shù)的長乘加操作。在需要這種長乘法的應(yīng)用場合,使用M變種比較合適。然而,在有些應(yīng)用場合中,乘法操作的性能并不重要,在系統(tǒng)實現(xiàn)時就不適合增加M變種的功能。ARM體系的變種(2)長乘法指令(M變種)72ARM體系的變種(3)增強(qiáng)型DSP指令(E變種)E變種包含了一些附加的指令,這些指令用于增強(qiáng)處理器對一些典型DSP算法的處理性能,主要包括:幾條新的實現(xiàn)16位數(shù)據(jù)乘法和乘加操作的指令,實現(xiàn)飽和的帶符號數(shù)的加減法操作的指令。所謂飽和的帶符號數(shù)的加減法操作是在加減法操作溢出時,結(jié)果并不進(jìn)行卷繞(wrappingaround),而是使用最大的正數(shù)或最小的負(fù)數(shù)來表示。進(jìn)行雙字?jǐn)?shù)據(jù)操作的指令,包括雙字讀取指令LDRD、雙字寫入指令STRD和協(xié)處理器的寄存器傳輸指令MCRR/MRRC、Cache預(yù)取指令PLD。ARM體系的變種(3)增強(qiáng)型DSP指令(E變種)73ARM體系的變種(4)Java加速器Jazelle(J變種)ARM的Jazelle技術(shù)將Java的優(yōu)勢和先進(jìn)的32位RISC芯片完美地結(jié)合在一起。Jazelle技術(shù)提供了Java加速功能,可以得到比普通Java虛擬機(jī)高得多的性能。與普通的Java虛擬機(jī)相比,Jazelle使Java代碼運行速度提高了3倍,而功耗降低了80%。Jazelle技術(shù)使得程序員可以在一個單獨的處理器上同時運行Java應(yīng)用程序、已經(jīng)建立好的操作系統(tǒng)、中間件以及其他應(yīng)用程序。與使用協(xié)處理器和雙處理器相比,使用單獨的處理器可以在提供高性能的同時,保證低功耗和低成本。ARM體系的變種(4)Java加速器Jazelle(J變種)74ARM體系的變種(5)ARM媒體功能擴(kuò)展(SIMD變種)ARM媒體功能擴(kuò)展為嵌入式應(yīng)用系統(tǒng)提供了高性能的音頻/視頻處理技術(shù)。這就要求處理器能夠提供很強(qiáng)的數(shù)字信號處理能力,同時還必須保持低功耗,以延長電池的使用時間。ARM的SIMD媒體功能擴(kuò)展為這些應(yīng)用需求提供了解決方案。SIMD變種的主要特點是:可以同時進(jìn)行兩個16位操作數(shù)或者4個8位操作數(shù)的運算,提供了小數(shù)算術(shù)運算,用戶可以定義飽和運算的模式,兩套16位操作數(shù)的乘加/乘減運算,32位乘以32位的小數(shù)MAC,同時8位/16位選擇操作。ARM體系的變種(5)ARM媒體功能擴(kuò)展(SIMD變種)753.1.1ARM微處理器結(jié)構(gòu)4.ARM體系結(jié)構(gòu)的命名規(guī)則ARM產(chǎn)品通常以ARM[x][y][z][T][D][M][I][E][J][F][-S]形式出現(xiàn)。后綴變量含義x系統(tǒng),如ARM7、ARM9y存儲管理/保護(hù)單元zCacheTThumb16位譯碼器(T變種)DJTAG調(diào)試器M長乘法指令(M變種)I嵌入式跟蹤宏單元E增強(qiáng)型DSP指令(E變種)JJava加速器Jazelle(J變種)F向量浮點單元S可綜合版本3.1.1ARM微處理器結(jié)構(gòu)4.ARM體系結(jié)構(gòu)的命名規(guī)則76ARM體系結(jié)構(gòu)命名規(guī)則附加要點ARM7TDMI之后的所有ARM內(nèi)核,即使“ARM”標(biāo)志后沒有包含“TDMI”字符,也都默認(rèn)包含了TDMI的功能特性;JTAG是由IEEE1149.1標(biāo)準(zhǔn)測試訪問端口和邊界掃描結(jié)構(gòu)來描述的,是ARM用來發(fā)送和接收處理器內(nèi)核與測試儀器之間調(diào)試信息的一系列協(xié)議;嵌入式ICE宏單元是建立在處理器內(nèi)部用來設(shè)置斷點和觀察點的調(diào)試硬件;可綜合,意味著處理器內(nèi)核是以源代碼形式提供的。這種源代碼形式可被編譯成一種易于EDA工具使用的形式。ARM體系結(jié)構(gòu)命名規(guī)則附加要點ARM7TDMI之后的所有AR773.1.1ARM微處理器結(jié)構(gòu)5.ARM微處理器系列ARM微處理器目前包括下面幾個系列,以及其它廠商基于ARM體系結(jié)構(gòu)的處理器,除了具有ARM體系結(jié)構(gòu)的共同特點以外,每一個系列的ARM微處理器都有各自的特點和應(yīng)用領(lǐng)域。ARM7系列ARM9系列ARM9E系列ARM10E系列ARM11系列SecurCore系列Inter的XscaleInter的StrongARM3.1.1ARM微處理器結(jié)構(gòu)5.ARM微處理器系列78ARM微處理器系列(1)ARM7微處理器系列ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同一條總線。內(nèi)核有一條3級流水線,執(zhí)行ARMv4指令集。ARM7系列微處理器主要用于對功耗和成本要求比較苛刻的消費類產(chǎn)品。其最高主頻可達(dá)130MIPS。ARM7系列微處理器的主要應(yīng)用領(lǐng)域為:工業(yè)控制、Internet設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、移動電話等多種多媒體和嵌入式應(yīng)用。ARM微處理器系列(1)ARM7微處理器系列79ARM微處理器系列ARM7微處理器系列具有如下特點:具有嵌入式ICE-RT邏輯,調(diào)試開發(fā)方便;極低的功耗,適合對功耗要求較高的應(yīng)用;能夠提供0.9MIPS/MHz的三級流水線結(jié)構(gòu);代碼密度高并兼容16位的Thumb指令集;對操作系統(tǒng)的支持廣泛,包括WindowsCE、Linux、PalmOS等;指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產(chǎn)品升級換代;主頻最高可達(dá)130MIPS,高速的運算處理能力能勝任絕大多數(shù)的復(fù)雜應(yīng)用。ARM微處理器系列ARM7微處理器系列具有如下特點:80ARM微處理器系列(2)ARM9微處理器系列ARM9系列采用5級指令流水線,能夠運行在比ARM7更高的時鐘頻率上,改善了處理器的整體性能。ARM9的存儲器系統(tǒng)根據(jù)哈佛體系結(jié)構(gòu)重新設(shè)計,區(qū)分了數(shù)據(jù)總線和指令總線。ARM9系列的第一個處理器是ARM920T,包含獨立的數(shù)據(jù)指令Cache和MMU。該處理器能夠被用在要求有虛擬存儲器支持的操作系統(tǒng)上。ARM9系列微處理器主要應(yīng)用于無線設(shè)備、儀器儀表、安全系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等。ARM微處理器系列(2)ARM9微處理器系列81ARM微處理器系列(3)ARM9E微處理器系列ARM9E系列微處理器是ARM9內(nèi)核帶有E變種的一個可綜合版本,使用單一的處理器內(nèi)核提供了微控制器、DSP、Java應(yīng)用系統(tǒng)的解決方案,極大地減少了芯片的面積和系統(tǒng)的復(fù)雜程度。ARM9E系列微處理器提供了增強(qiáng)的DSP處理能力,很適合于那些需要同時使用DSP和微控制器的應(yīng)用場合。ARM9E系列微處理器包含ARM926EJ-S、ARM946E-S和ARM966E-S三種類型。ARM微處理器系列(3)ARM9E微處理器系列82ARM微處理器系列(4)ARM10E微處理器系列ARM10E系列微處理器具有高性能、低功耗的特點,由于采用了新的體系結(jié)構(gòu),采用6級整數(shù)流水線,與同等的ARM9器件相比較,在同樣的時鐘頻率下,性能提高了近50%。同時,ARM10E系列微處理器采用了兩種先進(jìn)的節(jié)能方式,使其功耗極低,且提供了64位的Load/Store體系,支持包括向量操作的、滿足IEEE754的浮點運算協(xié)處理器,系統(tǒng)集成更加方便。ARM微處理器系列(4)ARM10E微處理器系列83ARM微處理器系列(5)ARM11微處理器系列ARM1136J-S發(fā)布于2003年,是針對高性能和高能效應(yīng)而設(shè)計的。ARM1136J-S是第一個執(zhí)行ARMv6架構(gòu)指令的處理器。它集成了一條具有獨立的Load/Store和算術(shù)流水線的8級流水線。ARMv6指令包含了針對媒體處理的單指令流多數(shù)據(jù)流擴(kuò)展,采用特殊的設(shè)計改善視頻處理能力。ARM微處理器系列(5)ARM11微處理器系列84ARM微處理器系列(6)SecurCore微處理器系列SecurCore系列微處理器專為安全需要而設(shè)計,提供了完善的32位RISC技術(shù)的安全解決方案,SecurCore系列微處理器除了具有ARM體系結(jié)構(gòu)的低功耗、高性能的特點外,還具有其獨特的優(yōu)勢,即提供了對安全解決方案的支持。SecurCore系列微處理器除了具有ARM體系結(jié)構(gòu)各種主要特點外,還在系統(tǒng)安全方面具有如下的特點:帶有靈活的保護(hù)單元,以確保操作系統(tǒng)和應(yīng)用數(shù)據(jù)的安全。采用軟內(nèi)核技術(shù),防止外部對其進(jìn)行掃描探測。可集成用戶自己的安全特性和其他協(xié)處理器。
ARM微處理器系列(6)SecurCore微處理器系列85ARM微處理器系列(7)StrongARM微處理器系列IntelStrongARMSA-1100處理器是采用ARM體系結(jié)構(gòu)高度集成的32位RISC微處理器。它融合了Inter公司的設(shè)計和處理技術(shù)以及ARM體系結(jié)構(gòu)的電源效率,采用在軟件上兼容ARMv4體系結(jié)構(gòu)、同時采用具有Intel技術(shù)優(yōu)點的體系結(jié)構(gòu)。IntelStrongARM處理器是便攜式通訊產(chǎn)品和消費類電子產(chǎn)品的理想選擇,已成功應(yīng)用于多家公司的掌上電腦系列產(chǎn)品。ARM微處理器系列(7)StrongARM微處理器系列86ARM微處理器系列(8)Xscale處理器Xscale處理器是基于ARMv5TE體系結(jié)構(gòu)的解決方案,是一款全性能、高性價比、低功耗的處理器。它支持16位的Thumb指令和DSP指令集,已使用在數(shù)字移動電話、個人數(shù)字助理和網(wǎng)絡(luò)產(chǎn)品等場合。Xscale處理器是Intel目前主要推廣的一款A(yù)RM微處理器。ARM微處理器系列(8)Xscale處理器873.1ARM體系結(jié)構(gòu)3.1.2ARM工作狀態(tài)從編程的角度看,ARM微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:第一種為ARM狀態(tài),此時處理器執(zhí)行32位的、字對齊的ARM指令;第二種為Thumb狀態(tài),此時處理器執(zhí)行16位的、半字對齊的Thumb指令。3.1ARM體系結(jié)構(gòu)3.1.2ARM工作狀態(tài)883.1ARM體系結(jié)構(gòu)3.1.3ARM微處理器的寄存器組織ARM處理器共有37個寄存器,被分為若干個組(BANK),這些寄存器包括:31個通用寄存器,包括程序計數(shù)器(PC指針),均為32位的寄存器。6個狀態(tài)寄存器,用以標(biāo)識CPU的工作狀態(tài)及程序的運行狀態(tài),均為32位,目前只使用了其中的一部分。3.1ARM體系結(jié)構(gòu)3.1.3ARM微處理器的寄存器組織893.1ARM體系結(jié)構(gòu)3.1.4ARM微處理器的指令結(jié)構(gòu)ARM微處理器在較新的體系結(jié)構(gòu)中支持兩種指令集:ARM指令集和Thumb指令集。其中,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節(jié)省30%~40%以上的存儲空間,同時具備32位代碼的所有優(yōu)點。3.1ARM體系結(jié)構(gòu)3.1.4ARM微處理器的指令結(jié)構(gòu)90主要內(nèi)容3.1ARM體系結(jié)構(gòu)3.1.1ARM微處理器結(jié)構(gòu)3.1.2ARM工作狀態(tài)3.1.3ARM微處理器的寄存器組織3.1.4ARM微處理器的指令結(jié)構(gòu)3.2ARM9處理器簡介3.2.1與ARM7處理器的比較3.2.2OMAP5912處理器簡介主要內(nèi)容3.1ARM體系結(jié)構(gòu)913.2ARM9處理器簡介ARM9系列處理器是ARM公司設(shè)計的主流嵌入式處理器,主要包括ARM9TDMI和ARM9E-S等系列。以手機(jī)應(yīng)用為例,2G手機(jī)只需提供語音及簡單的文字短信功能,而2.5G和3G手機(jī)除了提供這兩項功能外,還必須提供各種其他的應(yīng)用功能。主要包括:(1)無線網(wǎng)絡(luò)設(shè)備:手機(jī)上網(wǎng)、電子郵件及其他定位服務(wù)等功能;(2)PDA功能:含有用戶操作系統(tǒng)(WindowsCE、SymbianOS、Linux等)及其他功能;(3)高性能功能:音頻播放器、視頻電話、手機(jī)游戲等。3.2ARM9處理器簡介ARM9系列處理器是ARM公司設(shè)計923.2ARM9處理器簡介3.2.1與ARM7處理器比較ARM7提供了非常好的性能-功耗比,它包含了Thumb指令集快速乘法指令和ICE調(diào)試技術(shù)的內(nèi)核。ARM9處理器通過全新的設(shè)計,采用了更多的晶體管,能夠達(dá)到兩倍以上于ARM7處理器的處理能力。ARM7內(nèi)核是0.9MIPS/MHz的三級流水線和馮·諾伊曼結(jié)構(gòu),而ARM9內(nèi)核是5級流水線,提供1.1MIPS/MHz的哈佛結(jié)構(gòu)。
3.2ARM9處理器簡介3.2.1與ARM7處理器比較933.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同ARM7內(nèi)核采用馮·諾伊曼體系結(jié)構(gòu),數(shù)據(jù)和指令使用同一條總線。ARM9內(nèi)核根據(jù)哈佛體系結(jié)構(gòu)重新設(shè)計,區(qū)分了數(shù)據(jù)總線和指令總線。(1)馮·諾伊曼結(jié)構(gòu)3.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同943.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同(2)哈佛結(jié)構(gòu)哈佛結(jié)構(gòu)的特點是使用兩個獨立的存儲器模塊,分別存儲指令和數(shù)據(jù)。3.2.1與ARM7處理器比較1.體系結(jié)構(gòu)不同953.2.1與ARM7處理器比較在典型情況下,完成一條指令需要3個步驟,即:取指令、指令譯碼和執(zhí)行指令。馮·諾伊曼結(jié)構(gòu)處理器指令流的定時關(guān)系示意圖3.2.1與ARM7處理器比較在典型情況下,完成一條指令需963.2.1與ARM7處理器比較如果采用哈佛結(jié)構(gòu)處理以上同樣的3條存取數(shù)指令,由于取指令和存取數(shù)據(jù)分別經(jīng)由不同的存儲空間和不同的總線,使得各條指令可以重疊執(zhí)行,這樣,也就克服了數(shù)據(jù)流傳輸?shù)钠款i,提高了運算速度。哈佛結(jié)構(gòu)處理器指令流的定時關(guān)系示意圖3.2.1與ARM7處理器比較如果采用哈佛結(jié)構(gòu)處理以上同樣973.2.1與ARM7處理器比較2.時鐘頻率的提高ARM7處理器采用3級流水線,在執(zhí)行級完成了多個操作,包括從寄存器讀取操作數(shù),傳給移位寄存器,傳給算術(shù)邏輯單元ALU,把運算結(jié)果寫回寄存器。ARM7TDMI和ARM7TDMI-S流水線3.2.1與ARM7處理器比較2.時鐘頻率的提高ARM7983.2.1與ARM7處理器比較2.時鐘頻率的提高ARM9采用5級流水線,ARM9TDMI和ARM9E-S兩種設(shè)計基本一樣,除了ARM9E-S內(nèi)核實現(xiàn)了一個更復(fù)雜的乘加單元,以支持ARMv5TE架構(gòu)新引入的DSP增強(qiáng)指令集。采用哈佛架構(gòu)避免了數(shù)據(jù)訪問和取指令對單總線的使用沖突。ARM9TDMI流水線3.2.1與ARM7處理器比較2.時鐘頻率的提高ARM9993.2.1與ARM7處理器比較3.指令周期的改進(jìn)(1)存儲器讀寫指令Load/Store導(dǎo)致Load/Store指令時鐘數(shù)目減少的兩個微處理器架構(gòu)設(shè)計上的根本差別:ARM9內(nèi)核采用哈佛架構(gòu),有獨立的指令和數(shù)據(jù)存儲器接口,允許CPU在取指令的同時讀寫數(shù)據(jù)。而ARM7內(nèi)核則只有一個存儲器接口,取指令或數(shù)據(jù)訪問都得經(jīng)由此接口。ARM9內(nèi)核的5級流水線設(shè)計引入了獨立的“存儲器(Memory)”和“寫回(WriteBack)”兩級流水線,分別用于存儲器讀寫和把結(jié)果寫回寄存器組。3.2.1與ARM7處理器比較3.指令周期的改進(jìn)1003.2.1與ARM7處理器比較3.指令周期的改進(jìn)(2)互鎖技術(shù)(i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 應(yīng)急消防演練領(lǐng)導(dǎo)講話稿(6篇)
- 開學(xué)典禮活動總結(jié)范文15篇
- 愚人節(jié)文案(匯編15篇)
- 收銀培訓(xùn)資料
- 中國電動汽車充電站行業(yè)政策、市場規(guī)模及投資前景研究報告(智研咨詢發(fā)布)
- 肝升肺降湯治療慢性腎衰竭升降失?;颊叩呐R床療效觀察
- 組合式長周期光纖光柵傳感器及其特性研究
- 二零二五年度家政服務(wù)與家庭寵物養(yǎng)護(hù)合同3篇
- 二零二五年度城市消防管網(wǎng)消火栓安裝施工協(xié)議3篇
- 無人機(jī)分群的任務(wù)分配與拓?fù)淇刂萍夹g(shù)研究
- 蛋糕店服務(wù)員勞動合同
- 土地買賣合同參考模板
- 2025高考數(shù)學(xué)二輪復(fù)習(xí)-專題一-微專題10-同構(gòu)函數(shù)問題-專項訓(xùn)練【含答案】
- 新能源行業(yè)市場分析報告
- 2025年天津市政建設(shè)集團(tuán)招聘筆試參考題庫含答案解析
- 2024-2030年中國烘焙食品行業(yè)運營效益及營銷前景預(yù)測報告
- 巖土工程勘察.課件
- 60歲以上務(wù)工免責(zé)協(xié)議書
- 康復(fù)醫(yī)院患者隱私保護(hù)管理制度
- 2022年7月2日江蘇事業(yè)單位統(tǒng)考《綜合知識和能力素質(zhì)》(管理崗)
- 沈陽理工大學(xué)《數(shù)》2022-2023學(xué)年第一學(xué)期期末試卷
評論
0/150
提交評論