ARMv7的Cortex系列微處理器技術(shù)特點(diǎn)
摘要 ARMv7是目前ARM處理器體系結(jié)構(gòu)的最高版本。本文介紹了基于ARMv7的最新ARM微處理器Cortex系列,描述了該系列處理器的技術(shù)細(xì)節(jié),同時(shí)重點(diǎn)論述了Cortex-R、Cortex-A、Cortex-M系列處理器的技術(shù)特點(diǎn)。最后,對不同系列處理器的應(yīng)用領(lǐng)域作了進(jìn)一步的闡述。
本文引用地址:http://butianyuan.cn/article/79977.htm關(guān)鍵詞 ARMv7 體系結(jié)構(gòu) Cortex-M Cortex-R Cortex-A
引 言
隨著嵌入式技術(shù)應(yīng)用領(lǐng)域的不斷擴(kuò)展,對嵌入式系統(tǒng)的要求越來越高,而作為嵌入式系統(tǒng)核心的微處理器也面臨日益嚴(yán)竣的挑戰(zhàn)。ARM公司從成立以來,一直以知識(shí)產(chǎn)權(quán)(IP,Intelligence Property)提供者的身份出售知識(shí)產(chǎn)權(quán),在32位RISC CPU開發(fā)領(lǐng)域中不斷取得突破,其設(shè)計(jì)的微處理器結(jié)構(gòu)已經(jīng)從v3發(fā)展到現(xiàn)在的v7。Cortex系列處理器是基于ARMv7架構(gòu)的,分為Cortcx-M、Cortex-R和Cortex-A三類。ARM系列微處理器的核心及體系結(jié)構(gòu)如表l所列。
1 ARM Correx處理器技術(shù)特點(diǎn)
ARMv7架構(gòu)是在ARMv6架構(gòu)的基礎(chǔ)上誕生的。該架構(gòu)采用了Thumb-2技術(shù),它是在ARM的Thumb代碼壓縮技術(shù)的基礎(chǔ)上發(fā)展起來的,并且保持了對現(xiàn)存ARM解決方案的完整的代碼兼容性。Thumb-2技術(shù)比純32位代碼少使用31%的內(nèi)存,減小了系統(tǒng)開銷,同時(shí)能夠提供比已有的基于Thumb技術(shù)的解決方案高出38%的性能。ARMv7架構(gòu)還采用丁NEON技術(shù),將DSP和媒體處理能力提高了近4倍。并支持改良的浮點(diǎn)運(yùn)算,滿足下一代3D圖形、游戲物理應(yīng)用以及傳統(tǒng)嵌入式控制應(yīng)用的需求。此外,ARMv7還支持改良的運(yùn)行環(huán)境,以迎合不斷增加的JIT(Just In Time)和DAC(DynamicAdaptlve Compilation)技術(shù)的使用。
在與早期的ARM處理器軟件兼容性方而,ARMv7架構(gòu)在設(shè)計(jì)時(shí)充分考慮到了。ARM Cortex-M系列支持Thumb-2指令集(Thumb指令集的擴(kuò)展集),可以執(zhí)行所有已存的為早期處理器編寫的代碼。通過一個(gè)前向的轉(zhuǎn)換方式,為ARM Cortex-M系列處理器所寫的用戶代碼可以與ARM Cortex-R系列微處理器完全兼容。ARMCortex-M系列系統(tǒng)代碼(如實(shí)時(shí)操作系統(tǒng))可以很容易地移植到基于ARMCortex-R系列的系統(tǒng)上。ARMCortex-A和Cortex-R系列處理器還支持ARM 32位指令集,向后完全兼容早期的ARM處理器,包括從1995年發(fā)布的ARM7TDMI處理器到2002年發(fā)布的ARMll處理器系列。圖1為v5~v7架構(gòu)的處理器技術(shù)比較。由于應(yīng)用領(lǐng)域的不同,基于v7架構(gòu)的Cortex處理器系列所采用的技術(shù)也不相同。
在命名方式上,基于ARMv7架構(gòu)的ARM處理器已經(jīng)不再延用過去的數(shù)字命名方式,而是冠以Cortex的代呼。基于v7A的稱為“Cortex-A系州”,基于v7R的稱為“Cortex-R系列”,基于v7M的稱為“Cortex-M3”。
2 ARM CorteX-M3處理器技術(shù)特點(diǎn)
ARM Cortex-M3處理器是為存儲(chǔ)器和處理器的尺寸對產(chǎn)品成本影響極大的各種應(yīng)用專門開發(fā)沒計(jì)的,其結(jié)構(gòu)如圖2所示。它整合了多種技術(shù),減少使用內(nèi)存,并在極小的RISC內(nèi)核上提供低功耗和高性能,可實(shí)現(xiàn)由以往的代碼向32位微控制器的快速移植。ARM Cortex-M3處理器是使用最少門數(shù)的ARM CPU,相對于過去的設(shè)計(jì)大大減小了芯片面積,可減小裝置的體積或采用更低成本的工藝進(jìn)行生產(chǎn),僅33000門的內(nèi)核性能可達(dá)l,2DMIPS/MHz。此外,基本系統(tǒng)外設(shè)還具備高度集成化特點(diǎn),集成了許多緊耦合系統(tǒng)外設(shè),合理利用了芯片空間,使系統(tǒng)滿足下一代產(chǎn)品的控制需求。
ARM Cortex-M3處理器結(jié)合了執(zhí)行Thumb-2指令的32位哈佛微體系結(jié)構(gòu)和系統(tǒng)外設(shè),包括Nested Vectored Interrupt Controller和Arbiter總線。該技術(shù)方案在測試和實(shí)例應(yīng)用中表現(xiàn)出較高的性能:在臺(tái)機(jī)電180 nm工藝下,芯片性能達(dá)1.2 DMIPS/MHz,時(shí)鐘頻率高達(dá)l00 MHz。Cortex-M3處理器還實(shí)現(xiàn)了Tail-Chaining中斷技術(shù)。該技術(shù)是一項(xiàng)完全基于硬件的中斷處理技術(shù),最多可減少12個(gè)時(shí)鐘周期數(shù),在實(shí)際應(yīng)用中可減少70%中斷;推出了新的單線調(diào)試技術(shù),避免使用多引腳進(jìn)行JTAG調(diào)試,并全面支持RealVicw編譯器和RealView調(diào)試產(chǎn)品。Realview工具向設(shè)計(jì)者提供模擬、創(chuàng)建虛擬模型、編譯軟件、調(diào)試、驗(yàn)證和測試基于ARMv7架構(gòu)的系統(tǒng)等功能。
為微控制器應(yīng)用而開發(fā)的Cortex-M3擁有以下性能:
◇實(shí)現(xiàn)單周期Flash應(yīng)用最優(yōu)化;
◇準(zhǔn)確快速地中斷處理。永不超過12周期,僅6周期tail-chaining(末尾連鎖);
◇有低功耗時(shí)鐘門控(Clock Gating)的3種睡眠模式;
◇單周期乘法和乘法累加指令;
◇ARM Thumb-2混合的16/32位固有指令集,無模式轉(zhuǎn)換;
◇包括數(shù)據(jù)觀察點(diǎn)和Flash補(bǔ)丁在內(nèi)的高級調(diào)試功能;
◇原子位操作,在一個(gè)單一指令中讀取/修改/編寫;
◇1.25DMIPS/MHz(與0.9DMIPS/MHz的ARM7和1.1DMIPS/MHz的ARM9相比)。
3 ARM Cortex-R處理器技術(shù)特點(diǎn)
ARM Cortex-R系列處理器目前包括ARM CortexR4和ARM Cortex-R4F兩個(gè)型號(hào),主要適用于實(shí)時(shí)系統(tǒng)的嵌入式處理器。
3.1 ARM Cortex-R4處理器技術(shù)特點(diǎn)
Cortex-R4處理器結(jié)構(gòu)如圖3所示。該處理器支持手機(jī)、硬盤、打印機(jī)及汽車電子設(shè)計(jì),能協(xié)助新一代嵌入式產(chǎn)品快速執(zhí)行各種復(fù)雜的控制算法與實(shí)時(shí)工作的運(yùn)算;可通過內(nèi)存保護(hù)單元(MPU,Memory Protection Unit)、高速緩存以及緊密耦合內(nèi)存(TCM,Tightly Coupled Mennory)讓處理器針對各種不同的嵌入式應(yīng)用進(jìn)行最佳化調(diào)整,且不影響基本的ARM指令集兼容性。這種設(shè)計(jì)能夠在延用原有程序代碼的情況下,降低系統(tǒng)的成本與復(fù)雜度,同時(shí)其緊密耦合內(nèi)存功能也能提供更小的規(guī)格及更高效率的整合,并帶來快速的響應(yīng)時(shí)聞。
Cortex-R4處理器采用ARMv7體系結(jié)構(gòu),讓它能與現(xiàn)有的程序維持完全的回溯兼容性,能支持現(xiàn)今建立在全球各地?cái)?shù)十億的系統(tǒng);并已針對Thumb-2指令進(jìn)行最佳化設(shè)計(jì)。此項(xiàng)特性帶來很多的利益,其中包括:更低的時(shí)鐘速度所帶來的省電效益;更高的性能將各種多功能特色帶入移動(dòng)電話與汽車產(chǎn)品的設(shè)計(jì);更復(fù)雜的算法支持更高性能的數(shù)碼影像與內(nèi)建硬盤的系統(tǒng)。運(yùn)用Thumb-2指令集,加上RealView開發(fā)套件,使芯片內(nèi)部存儲(chǔ)器的容量最多得以降低30%,大幅降低系統(tǒng)成本,其速度比在ARM9tt6E-S處理器所使用的Thumb指令集高出40%。由于存儲(chǔ)器在芯片中的占用空間愈來愈多,因此這項(xiàng)設(shè)計(jì)將大幅節(jié)省芯片容量,讓芯片制造商運(yùn)用這款處理器開發(fā)各種SoC(System on a Chip)器件。
相比于前幾代的處理器,Cortex-R4處理器高效率的設(shè)計(jì)方案,使其能以更低的時(shí)鐘達(dá)到更高的性能;經(jīng)過最佳化設(shè)計(jì)的Artisan Mctro內(nèi)存,則進(jìn)一步降低嵌入式系統(tǒng)的體積與成本。處理器搭載一個(gè)先進(jìn)的微架構(gòu),具備雙指令發(fā)送功能,采用90nm工藝并搭配Artisan Advantage程序庫的組件,底面積不到lmm2,耗電最低于0.27mW/MHz,并能提供超過600 DMIPS的性能。
Cortex-R4處理器在各種安全應(yīng)用上加入容錯(cuò)功能和內(nèi)存保護(hù)機(jī)制,支持最新版OSEK實(shí)時(shí)操作系統(tǒng);支持RealView Develop系列軟件開發(fā)工具、RealView Create系列ESL工具與模塊,以及Core Sight除錯(cuò)與追蹤技術(shù),協(xié)助設(shè)計(jì)者迅速開發(fā)各種嵌入式系統(tǒng)。
3.2 ARM Correx-R4F處理器技術(shù)特點(diǎn)
Cortex-R4F處理器結(jié)構(gòu)如圖4所示。該處理器擁有針對汽車市場而開發(fā)的各項(xiàng)先進(jìn)功能,包括自動(dòng)除錯(cuò)功能、可相互連結(jié)的錯(cuò)誤偵測機(jī)制,以及可選擇優(yōu)化的浮點(diǎn)運(yùn)算單元(FPU,F(xiàn)loating-Point Unit)。ECC技術(shù)能監(jiān)控內(nèi)存存取作業(yè),偵測并校正各種錯(cuò)誤。當(dāng)發(fā)生內(nèi)存錯(cuò)誤時(shí),ECC邏輯除通報(bào)錯(cuò)誤并停止系統(tǒng)運(yùn)作外,還會(huì)加以校正。它還擁有Cortex-R4系列的各項(xiàng)先進(jìn)功能,能夠透過高效能內(nèi)存保護(hù)單元、高速緩存,以及緊密耦合內(nèi)存,使處理器能針對各種不同的應(yīng)用進(jìn)行最佳化調(diào)整;同時(shí)將傳統(tǒng)處理器中的錯(cuò)誤偵測功能延伸至整個(gè)SoC中,系統(tǒng)會(huì)不斷地掃描先前偵錯(cuò)的資料,以提升系統(tǒng)的可靠度?;趯Π踩阅艿闹匾?,Cortex-R4F處理器特別搭載了高分辨率內(nèi)存保護(hù)機(jī)制,能嚴(yán)密控制獨(dú)立的軟件作業(yè)。
Cortex-R4F處理器中執(zhí)行浮點(diǎn)運(yùn)算的FPU,提供勝過固定小數(shù)點(diǎn)操作數(shù)的動(dòng)態(tài)范圍及精準(zhǔn)度。該FPU與ARM其他處理器核心之間的FPU均維持同溯兼容性,并針對各種汽車應(yīng)用常見的單精度處理作業(yè)進(jìn)行優(yōu)化。使用單倍精度格式,而非雙倍精度的數(shù)值資料,不僅能將數(shù)據(jù)處理速度提升至2倍,更能維持必要的精度以提高SoC設(shè)計(jì)的效率。
Conex-R4F處理器采用一套具備雙指令發(fā)送功能的先進(jìn)微架構(gòu),透過ARM Artisan Advantage程序庫中針對90nm工藝的優(yōu)化,達(dá)到超過800 DMIPS的性能水準(zhǔn)。Levcl 1內(nèi)存松散的時(shí)序設(shè)計(jì),使組件能使用高密度、低功耗的RAM,使在總成本中占有高比重的內(nèi)存,能像處理器邏輯一樣擁有節(jié)省空間的優(yōu)勢。在90 nm工藝下,占用空間不到1 mm2,且耗電量不到0.27 mW/MHz,有效地協(xié)助系統(tǒng)開發(fā)者降低成本與功耗。該處理器采用ARMv7ISA架構(gòu),能與已被全球數(shù)十億臺(tái)系統(tǒng)所采用的ARM程序代碼維持回溯兼容性,并針對Thumab-2指令集進(jìn)行最優(yōu)化設(shè)計(jì)。運(yùn)用ThLtmb-2指令,搭配ARM RealView開發(fā)套件,使芯片內(nèi)部存儲(chǔ)器的容量最大能縮減30%,大幅降低系統(tǒng)成本。此外,相較于內(nèi)建在ARM946E-S處理器的舊版Thumb指令集,新技術(shù)能夠提高40%的工作效能。
4 ARM Cortex-A8處理器技術(shù)特點(diǎn)
ARM Cortex-A8處理器是一款適用于復(fù)雜操作系統(tǒng)及用戶應(yīng)用的應(yīng)用處理器,其結(jié)構(gòu)如圖5所示。支持智能能源管理(IEM,Inte11igent Energy Manger)技術(shù)的ARM Artisan庫以及先進(jìn)的泄漏控制技術(shù),使得Cortex-A8處理器實(shí)現(xiàn)了非凡的速度和功耗效率。在65nm工藝下,ARM Conex-A8處理器的功耗不到300mw,能夠提供高性能和低功耗。它第一次為低費(fèi)用、高容量的產(chǎn)品帶來了臺(tái)式機(jī)級別的性能。
Conex-A8處理器是第一款基于下一代ARMv7架構(gòu)的應(yīng)用處理器,使用了能夠帶來更高性能、更低功耗和更高代碼密度的Thumb-2技術(shù)。它首次采用了強(qiáng)大的NEON信號(hào)處理擴(kuò)展集,為H.264和MP3等媒體編解碼提供加速。Cortex-A8的解決方案還包括Jazelle-RCTJava加速技術(shù),對實(shí)時(shí)(JTT)和動(dòng)態(tài)調(diào)整編譯(DAC)提供最優(yōu)化,同時(shí)減少內(nèi)存占用空間高達(dá)3倍。該處理器配置了先進(jìn)的超標(biāo)量體系結(jié)構(gòu)流水線,能夠同時(shí)執(zhí)行多條指令,并且提供超過2.ODMIPS/MHz的性能。處理器集成了一個(gè)可調(diào)尺寸的二級高速緩沖存儲(chǔ)器,能夠同高速的16KB或者32KB一級高速緩沖存儲(chǔ)器一起工作,從而達(dá)到最快的讀取速度和最大的吞吐量。新處理器還配置了用于安全交易和數(shù)宇版權(quán)管理的Trust Zone技術(shù),以及實(shí)現(xiàn)低功耗管理的IEM功能。
Cortex-A8處理器使用了先進(jìn)的分支預(yù)測技術(shù),并且具有專用的NEON整型和浮點(diǎn)型流水線進(jìn)行媒體和信號(hào)處理。在使用小于4mm2的硅片及低功耗的65 nm工藝的情況下,Cortex-A8處理器的運(yùn)行頻率將高于600MHz(不包括NEON追蹤技術(shù)和二級高速緩沖存儲(chǔ)器)。在高性能的90nm和65nm 工藝下,Cortex-A8處理器運(yùn)行頻率最高可達(dá)1GHz,能夠滿足高性能消費(fèi)產(chǎn)品設(shè)計(jì)的需要。
結(jié)語
這些新的ARM Conex處理器系列都是基于ARMv7架構(gòu)的產(chǎn)品,從尺寸和性能方面來看,既有少于33 000個(gè)門電路的ARM Cortex-M系列,也有高性能的ARMCortex-A系列。其中,ARM Cortex-A系列是針對日益增長的,運(yùn)行包括Linux、Windows CE和Symhian操作系統(tǒng)在內(nèi)的消費(fèi)者娛樂和無線產(chǎn)品設(shè)計(jì)的;ARM Cortex-R系列針對的是需要運(yùn)行實(shí)時(shí)操作系統(tǒng)來進(jìn)行控制應(yīng)用的系統(tǒng),包括汽車電子、網(wǎng)絡(luò)和影像系統(tǒng);ARM Cortex-M系列則是為那些對開發(fā)費(fèi)用非常敏感同時(shí)對性能要求不斷增加的嵌入式應(yīng)用(如微控制器、汽車車身控制系統(tǒng)和各種大型家電)所設(shè)計(jì)的。隨著在各種不同領(lǐng)域應(yīng)用需求的增加,微處理器市場也在趨于多樣化。為了適應(yīng)市場的發(fā)展變化,基于ARMv7架構(gòu)的ARM處理器系列將不斷拓展自己的應(yīng)用領(lǐng)域。
評論