ARM11系列微處理器是ARM公司近年推出的新一代RISC處理器,它是ARM新指令架構(gòu)——ARMv6的第一代設(shè)計(jì)實(shí)現(xiàn)。該系列主要有ARM1136J,ARM1156T2和ARM1176JZ三個(gè)內(nèi)核型號(hào),分別針對(duì)不同應(yīng)用領(lǐng)域。
實(shí)現(xiàn)新一代微處理器的第一步就是訂立一個(gè)新的結(jié)構(gòu)體系。這里所說(shuō)的結(jié)構(gòu)體系只是對(duì)處理器行為進(jìn)行描述,并不包括具體地指定處理器是如何被建造的。結(jié)構(gòu)體系的定義提供了處理器和外界(操作系統(tǒng),應(yīng)用程序和調(diào)試支持)的接口,從細(xì)節(jié)上說(shuō),處理器結(jié)構(gòu)體系定義了指令集、編程模式和最近的存儲(chǔ)器之間的接口。最新的ARM處理器架構(gòu)—ARMv6,發(fā)布于2001年10月,它建立于過(guò)去十年ARM許多成功的結(jié)構(gòu)體系基礎(chǔ)上。同處理器的授權(quán)相似,ARM也向客戶(hù)授權(quán)它的結(jié)構(gòu)體系。比如,Intel的XScale就是基于ARMv5TE的處理器。
ARMv6架構(gòu)是根據(jù)下一代的消費(fèi)類(lèi)電子、無(wú)線設(shè)備、網(wǎng)絡(luò)應(yīng)用和汽車(chē)電子產(chǎn)品等需求而制定的。ARM11的媒體處理能力和低功耗特點(diǎn),特別適用于無(wú)線和消費(fèi)類(lèi)電子產(chǎn)品;其高數(shù)據(jù)吞吐量和高性能的結(jié)合非常適合網(wǎng)絡(luò)處理應(yīng)用;另外,也在實(shí)時(shí)性能和浮點(diǎn)處理等方面ARM11可以滿(mǎn)足汽車(chē)電子應(yīng)用的需求?梢灶A(yù)言,基于AMRv6體系結(jié)構(gòu)的ARM11系列處理器將在上述領(lǐng)域發(fā)揮巨大的作用。
對(duì)于各種無(wú)線移動(dòng)應(yīng)用,毫無(wú)節(jié)制的提供高性能處理器是無(wú)用的。同成本控制類(lèi)似,功耗的控制也是一個(gè)重要因素。ARM11系列處理器展示了在性能上的巨大提升,首先推出350M~500MHz時(shí)鐘頻率的內(nèi)核,在未來(lái)將上升到1GHz時(shí)鐘頻率ARM11處理器在提供高性能的同時(shí),也允許在性能和功耗間做權(quán)衡以滿(mǎn)足某些特殊應(yīng)用。通過(guò)動(dòng)態(tài)調(diào)整時(shí)鐘頻率和供應(yīng)電壓,開(kāi)發(fā)者完全可以控制這兩者的平衡。在0.13um工藝,1.2v條件下,ARM11處理器的功耗可以低至0.4mW/MHz。ARM11處理器同時(shí)提供了可綜合版本和半定制硬核兩種實(shí)現(xiàn)?删C合版本可以讓客戶(hù)根據(jù)自己的半導(dǎo)體工藝開(kāi)發(fā)出各有特色的處理器內(nèi)核,并保持足夠靈活性。ARM實(shí)現(xiàn)的硬核則是為了滿(mǎn)足那些極高性能和速度要求的應(yīng)用,同時(shí)為客戶(hù)節(jié)省實(shí)現(xiàn)的成本和時(shí)間。為了讓客戶(hù)更方便地走完實(shí)現(xiàn)流程,ARM11處理器采用了易于綜合的流水線結(jié)構(gòu),并和常用的綜合工具以及RAM compiler良好結(jié)合,確保了客戶(hù)可以成功并迅速的達(dá)到時(shí)序收斂。目前已有的ARM11處理器在不包含Cache的情況下面積小于2.7mm2,對(duì)于當(dāng)前復(fù)雜的SoC設(shè)計(jì)來(lái)說(shuō),如此小的die size對(duì)芯片成本的降低是極其重要的。ARM11處理器在很多方面為軟件開(kāi)發(fā)者帶來(lái)便利。一方面,它包含了更多的多媒體處理指令來(lái)加速視頻和音頻處理;另一方面,它的新型存儲(chǔ)器系統(tǒng)進(jìn)一步提高了操作系統(tǒng)的性能;此外,還提供了新指令來(lái)加速實(shí)時(shí)性能和中斷的響應(yīng)。再次,目前有很多應(yīng)用要求多處理器的配置(多個(gè)ARM內(nèi)核,或ARM+DSP的組合),ARM11處理器從設(shè)計(jì)伊始就注重更容易地與其他處理器共享數(shù)據(jù),以及從非ARM的處理器上移植軟件。此外,ARM還開(kāi)發(fā)了基于ARM11系列的多處理器系統(tǒng)——MPCORE(由二個(gè)到四個(gè)ARM11內(nèi)核組成)。
ARM11處理器的超強(qiáng)性能是由一系列的架構(gòu)特點(diǎn)所決定的。
ARMv6—決定性能的基礎(chǔ)
ARMv6架構(gòu)決定了可以達(dá)到高性能處理器的基礎(chǔ)。總的來(lái)說(shuō),ARMv6架構(gòu)通過(guò)以下幾點(diǎn)來(lái)增強(qiáng)處理器的性能:
1.多媒體處理擴(kuò)展 使MPEG4編碼/解碼加快一倍
音頻處理加快一倍
2.增強(qiáng)的Cache結(jié)構(gòu)
實(shí)地址Cache4
減少Cache的刷新和重載
減少上下文切換的開(kāi)銷(xiāo)
3.增強(qiáng)的異常和中斷處理 使實(shí)時(shí)任務(wù)的處理更加迅速
4.支持Unaligned和Mixed-endian數(shù)據(jù)訪問(wèn) 使數(shù)據(jù)共享、軟件移植更簡(jiǎn)單,也有利于節(jié)省存儲(chǔ)器空間
對(duì)絕大多數(shù)應(yīng)用來(lái)說(shuō),ARMv6保持了100%的二進(jìn)制向下兼容,使用戶(hù)過(guò)去開(kāi)發(fā)的程序可以進(jìn)一步繼承下去。ARMv6保持了所有過(guò)去架構(gòu)中的T(Thumb指令)和E(DSP指令)擴(kuò)展,使代碼壓縮和DSP處理特點(diǎn)得到延續(xù);為了加速Java代碼執(zhí)行速度的ARM Jazalle技術(shù)也繼續(xù)在ARMv6架構(gòu)中發(fā)揮重要作用。
ARM11處理器是為了有效的提供高性能處理能力而設(shè)計(jì)的。在這里需要強(qiáng)調(diào)的是,ARM并不是不能設(shè)計(jì)出運(yùn)行在更高頻率的處理器,而是,在處理器能提供超高性能的同時(shí),還要保證功耗、面積的有效性。ARM11優(yōu)秀的流水線設(shè)計(jì)是這些功能的重要保證。
ARM11處理器的流水線和以前的ARM內(nèi)核不同,它由8級(jí)流水線組成,比以前的ARM內(nèi)核提高了至少40%的吞吐量。8級(jí)流水線可以使8條指令同時(shí)被執(zhí)行。
從通常的角度說(shuō),過(guò)長(zhǎng)的流水線往往會(huì)削弱指令的執(zhí)行效率。一方面,如果隨后的指令需要用到前面指令的執(zhí)行結(jié)果作為輸入,它就需要等到前面指令執(zhí)行完。ARM11處理器通過(guò)forwarding來(lái)避免這種流水線中的數(shù)據(jù)沖突,它可以讓指令執(zhí)行的結(jié)果快速進(jìn)入到后面指令的流水線中。另一方面,如果指令執(zhí)行的正常順序被打斷(如出現(xiàn)跳轉(zhuǎn)指令),普通流水線處理器往往要付出更大的代價(jià),ARM11通過(guò)實(shí)現(xiàn)跳轉(zhuǎn)預(yù)測(cè)技術(shù)來(lái)保持最佳的流水線效率。這些特殊技術(shù)的使用,使ARM11處理器優(yōu)化到更高的流水線吞吐量的同時(shí),還能保持和5級(jí)流水線(如ARM9處理器中的流水結(jié)構(gòu))一樣的有效性。
跳轉(zhuǎn)指令通常都是條件執(zhí)行的。問(wèn)題在于那些決定是否跳轉(zhuǎn)的條件要在跳轉(zhuǎn)指令被譯碼的后3~4個(gè)周期才能就緒。如果不做特殊處理,跳轉(zhuǎn)指令必須等待,這樣使指令執(zhí)行效率變得讓人難以忍受。跳轉(zhuǎn)預(yù)測(cè)就是用來(lái)幫助解決這種延遲的。ARM11處理器提供兩種技術(shù)來(lái)對(duì)跳轉(zhuǎn)作出預(yù)測(cè)—?jiǎng)討B(tài)預(yù)測(cè)和靜態(tài)預(yù)測(cè)。
動(dòng)態(tài)預(yù)測(cè):在ARM11處理器中包含了64個(gè)4狀態(tài)跳轉(zhuǎn)地址緩存器(4-state branch target address cache)來(lái)保存最近發(fā)生的跳轉(zhuǎn)指令的結(jié)果。通過(guò)對(duì)這些歷史紀(jì)錄的查找,處理器可以預(yù)測(cè)出當(dāng)前的跳轉(zhuǎn)指令是否會(huì)被執(zhí)行。
靜態(tài)預(yù)測(cè):當(dāng)在動(dòng)態(tài)預(yù)測(cè)的緩存器中無(wú)法查到和當(dāng)前指令匹配的記錄,ARM11處理器就從跳轉(zhuǎn)的方式來(lái)判斷是否執(zhí)行。如果是向回跳轉(zhuǎn),大多數(shù)情況是遇到一個(gè)循環(huán),處理器會(huì)假設(shè)這條指令被執(zhí)行。如果是向前跳轉(zhuǎn),處理器會(huì)假設(shè)這條指令不被執(zhí)行。
動(dòng)態(tài)預(yù)測(cè)和靜態(tài)預(yù)測(cè)的組合使ARM11處理器能達(dá)到85%的預(yù)測(cè)正確性,對(duì)于每一個(gè)正確的預(yù)測(cè),給指令執(zhí)行帶來(lái)的是減少5個(gè)時(shí)鐘周期的等待時(shí)間。
在ARM11處理器中,指令和數(shù)據(jù)可以更長(zhǎng)時(shí)間的被保存在Cache中。一方面是由于物理地址Cache的實(shí)現(xiàn),使上下文切換避免了反復(fù)重載Cache,另一方面是由于ARM11的Cache還有很多其它新穎的技術(shù)特點(diǎn)。
如果數(shù)據(jù)的訪問(wèn)引起了CacheMiss,Cache將到存儲(chǔ)器中讀取需要的數(shù)據(jù)。但是ARM11處理器的流水線并不會(huì)停止下來(lái)。只要后面的指令沒(méi)有用到Cache Miss將讀回來(lái)的數(shù)據(jù),ARM11處理器就會(huì)繼續(xù)執(zhí)行下去。即使下一條指令還是存儲(chǔ)器訪問(wèn)指令,只要數(shù)據(jù)存放在Cache中,ARM11也會(huì)允許這條指令被執(zhí)行。只有這條指令又引起一次CacheMiss,處理器才會(huì)停止下來(lái)。在大多數(shù)應(yīng)用中,經(jīng)過(guò)編譯器調(diào)配后,這種情況并不多見(jiàn)。
盡管ARM11是單指令發(fā)射處理器,但是在流水線的后半部分允許了極大程度的并行性。一旦指令被解碼,將根據(jù)操作類(lèi)型發(fā)射到不同的執(zhí)行單元中。ARM11的數(shù)據(jù)通路中包含多個(gè)處理單元,允許ALU操作、乘法操作和存儲(chǔ)器訪問(wèn)操作同時(shí)進(jìn)行。
考慮到不同的指令需要不同的執(zhí)行時(shí)間,當(dāng)三類(lèi)指令先后被發(fā)射到流水線中,它們就可以同時(shí)被執(zhí)行。而且ARM11處理器允許指令的亂續(xù)完成,如果在指令之間沒(méi)有數(shù)據(jù)的相關(guān)性,所有指令都可以不必等待前面的指令完成而結(jié)束自己的執(zhí)行。
在絕大多數(shù)的應(yīng)用中,一個(gè)真正的64位處理器,在功耗面積的成本上還是不經(jīng)濟(jì)的。ARM11處理器展示了一種以32位處理器的成本,提供64位處理器性能的解決方案。ARM11處理中,內(nèi)核和Cache,及協(xié)處理器之間的數(shù)據(jù)通路是64位的。這使處理器可以每周期讀入兩條指令或存放兩個(gè)連續(xù)的數(shù)據(jù),以大大提高數(shù)據(jù)訪問(wèn)和處理的速度。經(jīng)過(guò)評(píng)測(cè),這已經(jīng)和64位處理器的性能相差無(wú)幾。
ARM11處理器將浮點(diǎn)運(yùn)算當(dāng)成一個(gè)可供用戶(hù)選擇的設(shè)計(jì)。用戶(hù)可以在向ARM要求授權(quán)的時(shí)候選擇是否包括浮點(diǎn)處理器的內(nèi)核。在流水線上的重要區(qū)別不僅是為了達(dá)到更高的性能,還是從實(shí)現(xiàn)的角度來(lái)考慮的。所以,ARM11內(nèi)核在運(yùn)行于極高頻率的同時(shí),也能非常容易的被集成在SoC設(shè)計(jì)中。同時(shí),ARM11處理器提供的向上兼容性,使OEM可以放心的選用任何基于ARM的產(chǎn)品。
ARM11處理器是ARMv6架構(gòu)的第一代實(shí)現(xiàn),ARM的合作伙伴可以從不同的方面(功耗、性能或面積)優(yōu)化和實(shí)現(xiàn)差異化的ARM11內(nèi)核,也可以根據(jù)自己特定的工藝技術(shù)來(lái)開(kāi)發(fā)不同的特性。這些ARM11處理器瞄準(zhǔn)的是下一代高端的移動(dòng)無(wú)線,消費(fèi)類(lèi)電子,網(wǎng)絡(luò)和汽車(chē)電子應(yīng)用。而且ARM11內(nèi)核的很多特性使它還能充分適應(yīng)高端嵌入式實(shí)時(shí)應(yīng)用系統(tǒng),如:未來(lái)的網(wǎng)絡(luò)和家庭娛樂(lè)產(chǎn)品。
此外,ARM11的成功還得益于ARM完整的開(kāi)發(fā)環(huán)境和廣泛的IP解決方案,以及不斷擴(kuò)大的ARM開(kāi)發(fā)者和合作伙伴聯(lián)盟。
ARM公司近日公布了四個(gè)新的ARM11系列微處理器內(nèi)核(ARM1156T2-S內(nèi)核、ARM1156T2F-S內(nèi)核ARM1176JZ-S內(nèi)核和ARM11JZF-S內(nèi)核),以及應(yīng)用于ARM1176JZ-S 和ARM11JZF-S內(nèi)核系列的PrimeXsys平臺(tái)、相關(guān)的CoreSight技術(shù)。
ARM1156T2-S和ARM1156T2F-S內(nèi)核都基于ARMv6指令集體系結(jié)構(gòu),將是首批含有ARM Thumb-2內(nèi)核技術(shù)的產(chǎn)品,可令合作伙伴進(jìn)一步減少與存儲(chǔ)系統(tǒng)相關(guān)的生產(chǎn)成本。兩款新內(nèi)核主要用于多種深嵌入式存儲(chǔ)器、汽車(chē)網(wǎng)絡(luò)和成像應(yīng)用產(chǎn)品,提供了更高的CPU性能和吞吐量,并增加了許多特殊功能,可解決新一代裝置的設(shè)計(jì)難題。體系結(jié)構(gòu)中增添的功能包括:對(duì)于汽車(chē)安全系統(tǒng)類(lèi)安全應(yīng)用產(chǎn)品的開(kāi)發(fā)至關(guān)重要的存儲(chǔ)器容錯(cuò)能力。ARM1156T2-S和ARM1156T2F-S內(nèi)核與新的AMBA 3.0 AXI總線標(biāo)準(zhǔn)一致,可滿(mǎn)足高性能系統(tǒng)的大量數(shù)據(jù)存取需求。Thumb-2內(nèi)核技術(shù)結(jié)合了16位、32位指令集體系結(jié)構(gòu),提供更低的功耗、更高的性能、更短的編碼,該技術(shù)提供的軟件技術(shù)方案較現(xiàn)用的ARM技術(shù)方案減少使用26%的存儲(chǔ)空間、較現(xiàn)用的Thumb技術(shù)方案增速25%。
ARM1176JZ-S和ARM1176JZF-S內(nèi)核及PrimeXsys平臺(tái)是首批以ARM TrustZone技術(shù)實(shí)現(xiàn)手持裝置和消費(fèi)電子裝置中公開(kāi)操作系統(tǒng)的超強(qiáng)安全性的產(chǎn)品,同時(shí)也是首次對(duì)可節(jié)約高達(dá)75%處理器功耗的ARM智能能量管理(ARM Intelligent Energy Manager)進(jìn)行一體化支持。ARM1176JZ-S和ARM1176JZF-S內(nèi)核基于ARMv6指令集體系結(jié)構(gòu),主要為服務(wù)供應(yīng)商和運(yùn)營(yíng)商所提供的新一代消費(fèi)電子裝置的電子商務(wù)和安全的網(wǎng)絡(luò)下載提供支持。
CoreSight技術(shù)建于ARM Embedded Trace Macrocell (ETM)實(shí)時(shí)跟蹤模塊中,為完整的片上系統(tǒng)(SoC)設(shè)計(jì)提供最全面的調(diào)試、跟蹤技術(shù)方案,通過(guò)最小端口可獲得全面的系統(tǒng)可見(jiàn)度,并為開(kāi)發(fā)者大大節(jié)約了產(chǎn)品上市時(shí)間。ARM CoreSight技術(shù)提供了最標(biāo)準(zhǔn)的調(diào)試和跟蹤性能,適用于各種內(nèi)核和復(fù)雜外設(shè),可對(duì)核內(nèi)指令和數(shù)據(jù)進(jìn)行追蹤。該技術(shù)為半導(dǎo)體制造商和工具供應(yīng)商建立了可真正協(xié)同工作的系統(tǒng)調(diào)試標(biāo)準(zhǔn),可滿(mǎn)足嵌入式開(kāi)發(fā)者和半導(dǎo)體制造商的各種需求,如以最低的成本來(lái)提供全面的系統(tǒng)可見(jiàn)度,從而降低處理器成本。
ARM公司嵌入式內(nèi)核經(jīng)理Richard Phelan先生說(shuō):"隨著競(jìng)爭(zhēng)的日益激烈,系統(tǒng)開(kāi)發(fā)者必須以低廉的費(fèi)用實(shí)現(xiàn)嵌入式系統(tǒng)的高性能并延長(zhǎng)電池的待機(jī)時(shí)間。ARM1156T2-S和ARM1156T2F-S內(nèi)核在0.13μ工藝下新的操作頻率高達(dá)550MHz,擁有高效的Thumb-2指令集和AMBA 3.0 AXI系統(tǒng)總線,ARM1156T2-S和ARM1156T2F-S內(nèi)核為合作伙伴們提供了所需的知識(shí)產(chǎn)權(quán)(IP),滿(mǎn)足各種新興的嵌入式控制應(yīng)用產(chǎn)品的高性能需求。"
ARM CPU產(chǎn)品經(jīng)理David Cormie先生評(píng)論說(shuō):"為了進(jìn)一步提高新一代消費(fèi)電子裝置和無(wú)線裝置的安全性,運(yùn)營(yíng)商、服務(wù)商和消費(fèi)者的重要數(shù)據(jù)的保護(hù)、隱私保護(hù)需要一個(gè)可信賴(lài)的計(jì)算環(huán)境。ARM1176JZ-S和ARM1176JZF-S內(nèi)核及PrimeXsys平臺(tái)結(jié)合了ARM TrustZone技術(shù),為計(jì)算裝置提供了理想的可信賴(lài)基礎(chǔ)。系統(tǒng)設(shè)計(jì)者首次在芯片核心部分運(yùn)用TrustZone技術(shù)來(lái)解決安全性問(wèn)題。用戶(hù)將擁有更多的下載選擇,運(yùn)營(yíng)商將增加營(yíng)業(yè)額收入,他們都無(wú)需擔(dān)心網(wǎng)絡(luò)的安全問(wèn)題。"
ARM1176JZ-S和ARM1176JZF-S內(nèi)核、PrimeXsys平臺(tái)提供了安全的低功耗設(shè)計(jì),含有AMBA 3.0 AXI,可對(duì)頻率和電壓變化進(jìn)行控制;系統(tǒng)級(jí)TrustZone軟硬件參考設(shè)計(jì)。兩個(gè)新內(nèi)核中集成了ARM Jazelle技術(shù),可加快嵌入式Java執(zhí)行。ARM1176JZF-S內(nèi)核包含一個(gè)浮點(diǎn)協(xié)處理器,極適合用于嵌入式3D圖像應(yīng)用產(chǎn)品。兩個(gè)新內(nèi)核的標(biāo)準(zhǔn)配置中都含有ARM-Synopsys RTL to GDSII參考技術(shù)方案,都是可綜合的,在0.13μ工藝中,最低頻率可達(dá)333-550MHz。PrimeXsys平臺(tái)包含ARM CoreSight?技術(shù),提供了世界領(lǐng)先的調(diào)試和跟蹤技術(shù)方案。
ARM CoreSight技術(shù)可快速地對(duì)不同地軟件進(jìn)行調(diào)試,通過(guò)對(duì)多核和AMBA?總線的情況進(jìn)行同時(shí)跟蹤。此外,同時(shí)對(duì)多核進(jìn)行暫停和調(diào)試,CoreSight技術(shù)可對(duì)AMBA上的存儲(chǔ)器和外設(shè)進(jìn)行調(diào)試,無(wú)需暫停處理器工作,達(dá)到不易做到的實(shí)時(shí)開(kāi)發(fā)。ARM CoreSight技術(shù)擁有更高的壓縮率,為半導(dǎo)體制造商們提供了對(duì)新的更高頻處理器進(jìn)行調(diào)試、跟蹤的技術(shù)方案。使用CoreSight技術(shù),制造商們可通過(guò)減少調(diào)試所需的管腳、減少片上跟蹤緩存所需的芯片面積等手段來(lái)降低生產(chǎn)成本。