嵌入式系統(tǒng)應(yīng)用與開發(fā)第二章ARM架構(gòu)_第1頁
嵌入式系統(tǒng)應(yīng)用與開發(fā)第二章ARM架構(gòu)_第2頁
嵌入式系統(tǒng)應(yīng)用與開發(fā)第二章ARM架構(gòu)_第3頁
嵌入式系統(tǒng)應(yīng)用與開發(fā)第二章ARM架構(gòu)_第4頁
嵌入式系統(tǒng)應(yīng)用與開發(fā)第二章ARM架構(gòu)_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第二章ARM體系構(gòu)造ARM公司是嵌入式RISC處置器的知識產(chǎn)權(quán)IP供應(yīng)商,它為ARM架構(gòu)處置器提供了ARM處置器內(nèi)核(如ARM7TDMI、ARM9TDMI、ARM10TDMI等)和ARM處置器核(ARM710T/720T/740T、ARM920T/922T/940T、ARM926E/966E及ARM1020E等)。2.1ARM架構(gòu)的開展ARM公司(AdvancedRISCMachinesLimited)正式成立于1990年。目前,ARM架構(gòu)處置器已在高性能、低功耗、低本錢的嵌入式運用領(lǐng)域占據(jù)領(lǐng)先位置,已占有75%左右的市場。ARM架構(gòu)自誕生至今,曾經(jīng)發(fā)生了很大的演化,至今已定義5種不同的版本:1.V1版架構(gòu)該版架構(gòu)只在原型機(jī)ARM1出現(xiàn)過,其根本性能:·根本的數(shù)據(jù)處置指令(無乘法)·字節(jié)、半字和字的LOAD/STORE指令·轉(zhuǎn)移指令,包括子程序調(diào)用及鏈接指令·軟件中斷指令·尋址空間:64M字節(jié)(226)2.V2版架構(gòu)該版架構(gòu)對V1版進(jìn)展了擴(kuò)展,如ARM2與ARM3(V2a版)架構(gòu),添加了以下功能:·乘法和乘加指令·支持協(xié)處置器操作指令·快速中斷方式·SWP/SWPB的最根本存儲器與存放器交換指令·尋址空間:64M字節(jié)3.V3版架構(gòu)V3版架構(gòu)對ARM體系構(gòu)造作為較大的改動,把尋址空間增至32位(4G字節(jié)),添加了當(dāng)前程序形狀存放器CPSR(CurrentProgramStatusRegister)和程序形狀保管存放器SPSR(SavedProgramStatusRegister)以便于異常(Exception)的處置。添加了中止(Abort)和未定義二種處置器方式。ARM6就采用該版架構(gòu)。指令集變化如下:·添加了MRS/MSR指令,以訪問新增的CPSR/SPSR存放器·添加了從異常處置前往的指令功能。4.V4版架構(gòu)V4版架構(gòu)是目前運用最廣的ARM體系構(gòu)造,對V3版架構(gòu)進(jìn)展了進(jìn)一步擴(kuò)展,有的還引進(jìn)了16位的Thumb指令集,使ARM運用更加靈敏。ARM7、ARM8、ARM9和StrongARM都采用該版架構(gòu)。指令集中添加了以下功能:·符號化和非符號化半字及符號化字節(jié)的存/取指令·添加了16位Thumb指令集·完善了軟件中斷SWI指令的功能·處置器系統(tǒng)方式引進(jìn)特權(quán)方式時運用用戶存放器操作·把一些未運用的指令空間捕獲為未定義指令5.V5版架構(gòu)這是最近推出ARM架構(gòu),在V4版根本上添加了一些新的指令,ARM10和XScale都采用該版架構(gòu),這些新增指令有:·帶有鏈接和交換的轉(zhuǎn)移BLX指令·計數(shù)前導(dǎo)零CLZ指令·BRK中斷指令·添加了信號處置指令(V5TE版)·為協(xié)處置器添加更多可選擇的指令2.2ARM架構(gòu)的特點RISC(ReducedInstructionSetComputer)型處置器構(gòu)造盡量減少復(fù)雜功能指令每條指令在單機(jī)器周期內(nèi)執(zhí)行每條指令都是32bit,具有多種操作功能訪問存儲空間指令采用LOAD/STORE構(gòu)造采用cache來提高存/取速度多存放器構(gòu)造小知識:RISC體系構(gòu)造傳統(tǒng)的CISC〔ComplexInstructionSetComputer,復(fù)雜指令集計算機(jī)〕構(gòu)造越來越復(fù)雜。在CISC指令集的各種指令中,其運用頻率卻相差懸殊,大約有20%的指令會被反復(fù)運用,占整個程序代碼的80%。而余下的80%的指令卻不經(jīng)常運用,在程序設(shè)計中只占20%,顯然,這種構(gòu)造是不太合理的。指令類型運用指令運用頻度數(shù)據(jù)傳送類43%轉(zhuǎn)/跳控制類23%算術(shù)運算類15%比較類13%邏輯運算類5%其他1%表2.1典型指令運用頻度小知識:RISC體系構(gòu)造〔續(xù)二〕1979年美國加州大學(xué)伯克利分校提出了RISC〔ReducedInstructionSetComputer,精簡指令集計算機(jī)〕的概念,RISC并非只是簡單地去減少指令,而是把著眼點放在了如何使計算機(jī)的構(gòu)造更加簡單合理地提高運算速度上。RISC構(gòu)造優(yōu)先選取運用頻最高的簡單指令,防止復(fù)雜指令;將指令長度固定,指令格式和尋地方式種類減少;以控制邏輯為主,不用或少用微碼控制等措施來到達(dá)上述目的。小知識:RISC體系構(gòu)造〔續(xù)三〕RISC體系構(gòu)造應(yīng)具有如下特點:采用固定長度的指令格式,指令歸整、簡單、根本尋址方式有2~3種。運用單周期指令,便于流水線操作執(zhí)行。大量運用存放器,數(shù)據(jù)處置指令只對存放器進(jìn)展操作,只需加載/存儲指令可以訪問存儲器,以提高指令的執(zhí)行效率。現(xiàn)代的CPU往往采用CISC的外圍,內(nèi)部參與了RISC的特性,如超長指令集CPU就是交融了RISC和CISC的優(yōu)勢,成為未來的CPU開展方向之一。小知識:RISC體系構(gòu)造〔續(xù)四〕2.Thumb指令集由于RISC型處置器的指令功能相對比較弱,ARM為了彌補(bǔ)此缺乏,在新型ARM架構(gòu)〔V4T版以上〕定義了16位的Thumb指令集。Thumb指令集比通常的8位和16位CISC/RISC處置器具有更好的代碼密度,而芯片面積只添加6%??梢允钩绦虼鎯ζ鞲有 humb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節(jié)省30%~40%以上的存儲空間,同時具備32位代碼的一切優(yōu)點。3.多處置器形狀方式ARM可以支持用戶、快中斷、中斷、管理、中止、系統(tǒng)和未定義等七種處置器方式,除了用戶方式外,其他的均為特權(quán)方式。這也是ARM的特征之一,可以大大提高ARM處置器的效率。表2.2ARMversion4processormodes4.嵌入式在線仿真調(diào)試ARM架構(gòu)的處置器芯片都嵌入了在線仿真ICE—RT邏輯,便于經(jīng)過了JTAG來仿真調(diào)試ARM架構(gòu)芯片。另外,在處置器核中還可以嵌入跟蹤宏單元ETM〔EmbeddedTraceMacrocell〕,用于監(jiān)控內(nèi)部總線,實時跟蹤指令和數(shù)據(jù)的執(zhí)行。5.靈敏和方便的接口ARM架構(gòu)具有協(xié)處置器接口,允許接16個協(xié)處置器。ARM處置器核還具有片上總線OCB的AMBA。AMBA定義了三組總線:先進(jìn)高性能總線AHB、先進(jìn)系統(tǒng)總線ASB和先進(jìn)外圍總線APB。經(jīng)過AMBA來方便擴(kuò)展各種處置器及I/O,可以把DSP、其他處置器和I/O〔如VART、定時器和接口等〕都集成在一塊芯片中。6.低電壓低功耗的設(shè)計ARM架構(gòu)的設(shè)計采用了以下一些措施:降低電源電壓,可任務(wù)在3.0V以下。減少門的翻轉(zhuǎn)次數(shù),當(dāng)某個功能電路不需求時制止門翻轉(zhuǎn)。減少門的數(shù)目,即降低芯片的集成度。降低時鐘頻率2.3ARM的分類ARM微處置器目前包括下面幾個系列,以及其它廠商基于ARM體系構(gòu)造的處置器,

-ARM7系列

-ARM9系列

-ARM9E系列

-ARM10E系列

-SecurCore系列

-Intel的Xscale

-Intel的StrongARM1.ARM7微處置器系列ARM7系列微處置器為低功耗的32位RISC處置器,最適宜用于對價位和功耗要求較高的消費類運用。ARM7微處置器系列特點:具有嵌入式ICE-RT邏輯,調(diào)試開發(fā)方便。極低的功耗,適宜對功耗要求較高的運用。可以提供0.9MIPS/MHz的三級流水線構(gòu)造。代碼密度高并兼容16位的Thumb指令集。對操作系統(tǒng)的支持廣泛,包括WindowsCE、Linux、PalmOS等。指令系統(tǒng)與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產(chǎn)品晉級換代。主頻最高可達(dá)130MIPS,高速的運算處置才干能勝任絕大多數(shù)的復(fù)雜運用。ARM7系列微處置器的主要運用領(lǐng)域為:工業(yè)控制、Internet設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、挪動等多種多媒體和嵌入式運用。

ARM7系列微處置器包括如下幾種類型的核:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。其中ARM7TMDI是目前運用最廣泛的32位嵌入式RISC處置器,屬低端ARM處置器核。內(nèi)核后綴TDMI的根本含義為:

T:支持16為緊縮指令集Thumb;

D:支持片上Debug;

M:內(nèi)嵌硬件乘法器〔Multiplier〕

I:嵌入式ICE,支持片上斷點和調(diào)試點;處置器后綴的含義S:可綜合的軟核SoftcoreE:具有DSP的功能J:Jazeller,允許直接執(zhí)行Java字節(jié)碼2.ARM9微處置器系列ARM9系列微處置器在高性能和低功耗特性方面提供最正確的性能。具有以下特點:5級整數(shù)流水線,指令執(zhí)行效率更高。提供1.1MIPS/MHz的哈佛構(gòu)造。支持32位ARM指令集和16位Thumb指令集。支持32位的高速AMBA總線接口。全性能的MMU,支持WindowsCE、Linux、PalmOS等多種主流嵌入式操作系統(tǒng)。MPU支持實時操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處置才干。ARM9系列微處置器主要運用于無線設(shè)備、儀器儀表、平安系統(tǒng)、機(jī)頂盒、高端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等。

ARM9系列微處置器包含ARM920T、ARM922T和ARM940T三種類型,以適用于不同的運用場所。3.ARM9E微處置器系列ARM9E系列微處置器為可綜合處置器,運用單一的處置器內(nèi)核提供了微控制器、DSP、Java運用系統(tǒng)的處理方案,極大的減少了芯片的面積和系統(tǒng)的復(fù)雜程度。ARM9E系列微處置器提供了加強(qiáng)的DSP處置才干,很適宜于那些需求同時運用DSP和微控制器的運用場所。

ARM9系列微處置器主要運用于下一代無線設(shè)備、數(shù)字消費品、成像設(shè)備、工業(yè)控制、存儲設(shè)備和網(wǎng)絡(luò)設(shè)備等領(lǐng)域。ARM9E系列微處置器包含ARM926EJ-S、ARM946E-S和ARM966E-S三種類型。ARM9E系列微處置器的主要特點如下:支持DSP指令集,適宜于需求高速數(shù)字信號處置的場所。5級整數(shù)流水線,指令執(zhí)行效率更高。支持32位ARM指令集和16位Thumb指令集。支持32位的高速AMBA總線接口

支持VFP9浮點處置協(xié)處置器。全性能的MMU,支持WindowsCE、Linux、PalmOS等多種主流嵌入式操作系統(tǒng)。MPU支持實時操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處置才干。主頻最高可達(dá)300MIPS。4.ARM10E微處置器系列ARM10E系列具有高性能、低功耗的特點,由于采用了新的體系構(gòu)造,與同等的ARM9器件相比較,在同樣的時鐘頻率下,性能提高了近50%,同時,ARM10E系列微處置器采用了兩種先進(jìn)的節(jié)能方式,使其功耗極低。

ARM10E系列微處置器主要運用于下一代無線設(shè)備、數(shù)字消費品、成像設(shè)備、工業(yè)控制、通訊和信息系統(tǒng)等領(lǐng)域。包含ARM1020E、ARM1022E和ARM1026EJ-S三種類型。

ARM10E系列微處置器的主要特點如下:支持DSP指令集,適宜于需求高速數(shù)字信號處置的場所。6級整數(shù)流水線,指令執(zhí)行效率更高。支持32位ARM指令集和16位Thumb指令集。支持32位的高速AMBA總線接口。支持VFP10浮點處置協(xié)處置器。全性能的MMU,支持WindowsCE、Linux、PalmOS等多種主流嵌入式操作系統(tǒng)。支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處置才干主頻最高可達(dá)400MIPS。內(nèi)嵌并行讀/寫操作部件。2.4ARM架構(gòu)ARM架構(gòu)由32位ALU、31個32位通用存放器及6位形狀存放器、32×8位乘法器、32×32位桶形移位存放器、指令譯碼及控制邏輯、指令流水線和數(shù)據(jù)/地址存放器組成。圖2.1ARM架構(gòu)圖1.ALU算術(shù)邏輯運算單元ALU是處置器中心的中心處置部分,實現(xiàn)對數(shù)據(jù)進(jìn)展運算處置。由二個操作數(shù)鎖存器、加法器、邏輯功能、結(jié)果及零檢測邏輯構(gòu)成。圖2.2ALU邏輯框圖2.Barrelshifter桶形移位存放器為了減少移位的延遲時間,ARM采用了32×32位的桶形移位存放器。這樣,可以使左移/右移n位、環(huán)移n位和算術(shù)右移n位等都可以一次完成。圖2.34×4位桶形移位存放器表示圖3.Multiplicator高速乘法器ARM的高速乘法器采用32×8位的構(gòu)造,這樣,可以降低集成度,〔其相應(yīng)芯片面積不到并行乘法器的1/3〕,完成32×32位乘法也只需5個時鐘周期。圖2.4高速乘法器邏輯框圖4.FloatPoint浮點部件浮點部件是作為選件為ARM架構(gòu)選用,F(xiàn)PA10浮點加速器是作為協(xié)處置器方式與ARM相連,并經(jīng)過協(xié)處置器指令的解釋來執(zhí)行。浮點的LOAD/STORE指令運用頻度要到達(dá)67%,故FPA10內(nèi)部也采用LOAD/STORE構(gòu)造,有八個80位浮點存放器組,指令執(zhí)行也采用流水線構(gòu)造。圖2.5FPA10浮點加速器內(nèi)部構(gòu)造框圖5.Controller控制器ARM的控制器采用硬接線的可編程邏輯陣列PLA,其輸入端14根,輸出40根,分散控制LOAD/STORE多路、乘法器、協(xié)處置器以及地址、存放器、ALU和移位器的控制。新型的ARM采用了二塊PLA,一塊小的快速PLA,用來產(chǎn)生與時間相關(guān)的輸出;一塊大的慢速PLA用來產(chǎn)生其他輸出。圖2.6ARM控制邏輯構(gòu)造圖6.Registers存放器ARM處置器共有37個存放器,被分為假設(shè)干個組〔BANK〕,這些存放器包括:通用存放器包括程序計數(shù)器〔PC指針〕,共31個,均為32位的存放器。分為:i.R0-R7:與一切處置器方式無關(guān)的存放器,可以用作任何用途。ii.R8-R14:與處置器方式有關(guān)的存放器,在不同的方式下,對應(yīng)到不同的物理存放器。其中R13又叫做sp,普通用于堆棧指針。R14又叫做lr,普通用于保管前往地址。這兩個存放器在每種異常方式下都對應(yīng)到不同的物理存放器上,例如lr_irq、lr_svc、lr_fiq等。iii.R15:又叫做程序計數(shù)器,即pc,一切的方式下都運用同一個pc。b)形狀存放器用以標(biāo)識CPU的任務(wù)形狀及程序的運轉(zhuǎn)形狀。共6個,均為32位。CPSR:當(dāng)前程序形狀存放器(CurrentProgramStatusRegister),一切的方式下都運用同一個CPSR。SPSR:保管程序形狀存放器(SavedProgramStatusRegister)。每種異常方式下都有本人的SPSR,一共有5種SPSR,即SPSR_irq、SPSR_fiq、SPSR_svc、SPSR_abt、SPSR_und。usr和sys態(tài)下沒有SPSR。條件碼標(biāo)識N:負(fù)數(shù)標(biāo)識Z:結(jié)果為零標(biāo)識C:進(jìn)位位標(biāo)識V:溢出標(biāo)識*Q:DSP的溢出/飽和〔選用〕控制位I:IRQ中斷制止位F:FIQ快中斷制止位T:Thumb位M[4:0]:處置器任務(wù)方式ARM處置器又有7種不同的處置器方式,在每一種處置器方式下均有一組相應(yīng)的存放器與之對應(yīng)。即在恣意一種處置器方式下,可訪問的存放器包括15個通用存放器〔R0~R14〕、一至二個形狀存放器和程序計數(shù)器。在一切的存放器中,有些是在7種處置器方式下共用的同一個物理存放器,而有些存放器那么是在不同的處置器方式下有不同的物理存放器。2.5ARM流水線構(gòu)造LaundryExampleAnn,Brian,Cathy,Dave

eachhaveoneloadofclothes

towash,dry,andfoldWashertakes30minutesDryertakes40minutes“Folder〞takes20minutesABCDSequentialLaundrySequentiallaundrytakes6hoursfor4loadsIftheylearnedpipelining,howlongwouldlaundrytake?ABCD3040203040203040203040206PM7891011MidnightTaskOrderTimePipelinedLaundry:StartworkASAPPipelinedlaundrytakes3.5hoursfor4loadsABCD6PM7891011MidnightTaskOrderTime304040404020Pipeliningdoesn’thelplatencyofsingletask,ithelpsthroughputofentireworkloadPipelineratelimitedbyslowestpipelinestageMultipletasksoperatingsimultaneouslyusingdifferentresourcesPotentialspeedup=NumberpipestagesUnbalancedlengthsofpipestagesreducesspeedupTimeto“fill〞pipelineandtimeto“drain〞itreducesspeedupStallforDependences計算機(jī)中的一條指令的執(zhí)行可以分假設(shè)干個階段:1.取指,從存儲器中取出指令〔fetch〕2.譯碼,指令譯碼〔dec〕3.取操作數(shù),假定操作數(shù)從存放器組中取〔reg〕4.執(zhí)行運算〔ALU〕5.存儲器訪問,操作數(shù)與存儲器有關(guān)〔mem〕6.結(jié)果寫回存放器〔res〕圖2.8指令執(zhí)行流水線圖2.9流水線的停頓圖2.10流水線的轉(zhuǎn)移指令的情況1.ARM三級流水線構(gòu)造ARM7架構(gòu)采用了三級流水線,分為取指,譯碼和執(zhí)行。圖2.11ARM單周期三級流水線圖2.12ARM多周期三級流水線2.ARM五級流水線構(gòu)造三級流水線阻塞主要產(chǎn)生在存儲器訪問和數(shù)據(jù)通路的占用上。因此ARM9及StrongARM架構(gòu)都采用了五級流水線。把存儲器的

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論