嵌入式系統架構發展趨勢及比較分析
嵌入式系統已經廣泛地應用到當今各個領域,與我們的生活息息相關,小到掌上的數字產品,大到汽車、航天飛機。提到嵌入式系統我們很快會聯想到單片機,不錯,MCU是最基礎和常用的嵌入式系統,但是目前像FPGA、ARM、DSP、MIPS等其他嵌入式系統應用越來越廣泛。嵌入式系統與模擬電路或其他功能電路組成的SoC(System on Chip,片上系統)或SiP(System in Package,系統級封裝)在手機、機頂盒等功能復雜的產品上的應用也越來越多。
總的來說,嵌入式系統發展呈現如下特點: ·由8位處理向32位過渡 ·由單核向多核過渡 ·向網絡化功能發展 ·MCU、FPGA、ARM、DSP等齊頭并進 ·嵌入式操作系統呈多元化趨勢所有的嵌入式處理器都是基于一定的架構的,即IP核(Intellectual Property,知識產權),生產處理器的廠家很多,但擁有IP核的屈指可數。有自己的IP核,光靠賣IP核即可坐擁城池。嵌入式系統的架構有專有架構和標準架構之分,在 MCU(微控制器)產品上,像瑞薩(Renesas)、飛思卡爾(Freescale)、NEC都擁有自己得專有IP核,而其他嵌入式處理器都是基于標準架構。
標準的嵌入式系統架構有兩大體系,目前占主要地位的是所謂RISC(Reduced Instruction Set Computer,精簡指令集計算機)處理器。RISC體系的陣營非常廣泛,從ARM、MIPS、PowerPC、ARC、Tensilica等等,都是屬于RISC處理器的范疇。不過這些處理器雖然同樣是屬于RISC體系,但是在指令集設計與處理單元的結構上都各有不同,因此彼此完全不能兼容,在特定平臺上所開發的軟件無法直接為另一硬件平臺所用,而必須經過重新編譯。
其次是CISC(Complex Instruction Set Computer,復雜指令集計算機)處理器體系,我們所熟知的Intel的X86 處理器就屬于CISC體系,CISC體系其實是非常低效率的體系,其指令集結構上背負了太多包袱,貪大求全,導致芯片結構的復雜度被極大的提升。過去被應用在嵌入式系統的X86處理器,多為舊世代的產品,比如說,工業計算機中仍可常見數年前早已退出個人計算機市場的Pentium3處理器。由于此世代的產品效能與功耗比可以說是過去X86體系的甜蜜點,加上已經被市場長久驗證,穩定性高,故常被應用于效能需求不高,但穩定性要求高的應用中,如工控設備等產品。
1、RISC家族之ARM處理器 ARM 公司于1991年成立于英國劍橋,主要出售芯片設計技術的授權。目前,采用ARM技術智能財產(IP)核心的處理器,即我們通常所說的ARM處理器,已遍及工業控制、消費類電子產品、通信系統、網絡系統、無線系統等各類產品市場,基于ARM技術的處理器應用約占據了32位RISC微處理器75%以上的市場,ARM技術不止逐步滲入到我們生活的各個方面,我們甚至可以說,ARM于人類的生活環境中,已經是不可或缺的一環。
目前市面上常見的ARM處理器架構,可分為ARM7、ARM9以及ARM11,新推出的Cortex系列尚在進行開發驗證,市面上還未有相關產品推出。 ARM也是嵌入式處理器中首先推出多核心架構的廠商。ARM 首個多核心架構為ARM11 MPCore,架構于原先的ARM11處理器核心之上。 ARM11核心是發布于2002年10月份,為了進一步提升效能,其管線長度擴展到8階,處理單元則增加為預取、譯碼、發送、轉換/MAC1、執行 /MAC2、內存存取/MAC3和寫入等八個單元,體系上屬于 ARM V6指令集架構。ARM11采用當時最先進的0.13μm制造制程,運行頻率最高可達500到700MHz。如果采用90nm制程,ARM11核心的工作頻率能夠輕松達到1GHz以上—對于嵌入式處理器來說,這顯然是個相當驚人的程度,不過顯然1GHz在ARM11體系中不算是個均衡的設定,因此幾乎沒有廠商推出達到1GHz的ARM11架構處理器。
ARM11的邏輯核心也經過大量的改進,其中最重要的當屬“靜/動態組合轉換的預測功能”。ARM11的執行單元包含一個64位、4種狀態的地址轉換緩沖,它主要用來儲存最近使用過的轉換地址。當采用動態轉換預測機制而無法在尋址緩沖內找到正確的地址時,靜態轉換預測功能就會立刻接替它的位置。在實際測試中,單純采用動態預測的準確率為88%,單純采用靜態預測機制的準確率只有77%,而ARM11的靜/動態預測組合機制可實現92%的高準確率。針對高時脈速度帶來功耗增加的問題,ARM11采用一項名為“IEM (Intelligent Energy Manager)”的智能電源管理技術,該技術可根據任務負荷情況動態調節處理器的電壓,進而有效降低自身的功耗。這一系列改進讓ARM11的功耗效能比得以繼續提高,平均每MHz只需消耗 0.6mW(有快取時為0.8mW)的電力,處理器的最高效能可達到 660 Dhrystone MIPS,遠超過上一代產品。 至于 ARM11 MPCore,其在架構上與ARM11同樣屬于 V6指令體系。根據不同應用的需要,MPCore可以被配置為1-4個處理器的組合方式,根據官方資料,其最高性能約可達到 2600 Dhrystone MIPS的程度。MPCore是標準的同質多核心處理器,組成MPCore的是4個基于 ARM11架構的處理器核心,由于多核心設計的優點是在頻率不變的情況下讓處理器的性能獲得明顯提升,因此可望在多任務應用中擁有良好的表現,這一點很適合未來家庭消費電子的需要。例如,機頂盒在錄制多個頻道電視節目的同時,還可通過互聯網收看數字視頻點播節目、車內導航系統在提供導航功能的同時,仍然有余力可以向后座乘客播放各類視頻碼流等。
2、RISC家族之MIPS處理器 MIPS是美國歷史悠久的RISC處理器體系,其架構的設計,也如美國人的性格一般,相當的大氣且理想化。MIPS 架構起源,可追溯到1980年代,斯坦福大學和伯克利大學同時開始RISC架構處理器的研究。 MIPS公司成立于1984年,隨后在 1986年推出第一款R2000處理器,在1992年時被SGI所并購,但隨著MIPS架構在桌面市場的失守,后來在1998年脫離了SGI,成為 MIPS技術公司,并且在1999年重新制定 公司策略,將市場目標導向嵌入式系統,并且統一旗下處理器架構,區分為 32-bit以及64-bit兩大家族,以技術授權成為主要營利模式。
MIPS除了在手機中應用得比例極小外,其在一般數字消費性、網絡語音、個人娛樂、通訊、與商務應用市場有著相當不錯的成績,不過近年來因為其它IP授權公司的興起,其占有比率稍有衰退。MIPS應用最為廣泛的應屬家庭視聽電器(包含機頂盒)、網通產品以及汽車電子方面。對于MIPS,其核心技術強調的是多執行緒處理能力(Multiple issue,國內也通常稱作多發射核技術,以下以此稱謂)。一般來說,多核心與多發射是兩個并不是互斥的體系,可以彼此結合,然而在嵌入式領域,ARM與 MIPS這兩大處理器IP廠商對這兩個架構的態度不同,造成這兩個架構在嵌入式市場上對抗的結果。
MIPS 的多發射體系為MIPS34K系列,此為32位架構處理器,從架構上來看,其實多發射核技術只是為了盡量避免處理單元閑置浪費而為的折衷手段,就是將處理器中的閑置處理單元,分割出來虛擬為另一個核心,以提高處理單元的利用率。在技術上,為了實現硬件多重處理,多核心與多發射兩者對于軟件最佳化的復雜度方面同樣都比單核心架構來得復雜許多。 34K核心能執行現有的對稱式二路SMP操作系統(OSes)與應用軟件,通過操作系統的主動管理,現有的應用軟件也能善用多發射處理能力。它亦能應用在多個執行線程各自有不同角色的(AMP或非對稱式多重處理)環境下。此外,34K核心能設定一或兩個虛擬處理組件(VPE)以及多至5個線程內容(Thread Content),提供相當高的設計彈性。MIPS的多發射在任務切換時,有多余的硬件緩存器可以記錄執行狀態,避免切換任務時,因為必須重新加載指令,或者是重新執行某部分的工作,造成整個執行線程的延遲。不過即便能夠達到同時執行多個任務的能力,多發射處理器本質上仍然是單核心處理器,在單一執行緒面臨高負載時,其它執行緒的處理時間就有可能會被壓縮,甚至被暫停。而不同執行緒在執行的過程中,諸如內存鎖定、解鎖以及同步等處理過程在多發射體系上也會發生,因此在極端情況下,多發射的性能是明顯比不上原生多核心架構的(以兩個執行緒對兩個核心的比較而言)。不過多發射體系的優點在于硬件效率高,理論上功耗也能有效降低。部分IC設計公司也推出了基于MIPS架構的平行架構多核心,形成兼具多核與多發射的應用架構,相信在未來這種體系將會納入MIPS的原生架構當中,以應付更復雜的應用。
3、RISC家族之PowerPC PowerPC 是一種RISC多發射體系結構。二十世紀九十年代,IBM(國際商用機器公司)、Apple(蘋果公司)和Motorola(摩托羅拉)公司開發 PowerPC芯片成功,并制造出基于PowerPC的多處理器計算機。PowerPC架構的特點是可伸縮性好、方便靈活。第一代PowerPC采用 0.6微米的生產工藝,晶體管的集成度達到單芯片300萬個。Motorola公司將PowerPC內核設計到SOC芯片之中,形成了 Power QUICC(Quad Integrated Communications Controller), Power QUICC II 和 Power QUICC III家族的數十種型號的嵌入式通信處理器。 Motorola的基于PowerPC體系結構的嵌入式處理器芯片有 MPC505、821、850、860、8240、8245、8260、8560等近幾十種產品,其中MPC860是Power QUICC 系列的典型產品,MPC8260是Power QUICC II系列的典型產品,MPC8560是Power QUICC III系列的典型產品。 Power QUICC 系列微處理器一般有三個功能模塊組成,嵌入式PowerPC核(EMPCC), 系統接口單元(SIU)以及通信處理器(CPM)模塊,這三個模塊內部總線都是32位。除此之外Power QUICC中還集成了一個32位的RISC內核。Power PC核主要執行高層代碼,而RISC則處理實際通信的低層通信功能,兩個處理器內核通過高達8K字節的內部雙口RAM相互配合,共同完成MPC854強大的通行控制和處理功能。CPM以RISC控制器為核心構成,除包括一個RISC控制器外,還包括七個串行DMA(SDMA)通道、兩個串行通信控制器(SCC)、一個通用串行總線通道(USB)、兩個串行管理控制器(SMC)、一個I2C接口和一個串行外圍電路(SPI),可以通過靈活的編程方式實現對Ethemet、 USB、T1/E1,ATM等的支持以及對UART, HDLC等多種通信協議的支持。 Power QUICCII 完全可以看作是 Power QUICC的第二代,在靈活性、擴展能力、集成度等方面提供了更高的性能。Power QUICC 11同樣由嵌入式的PowerPC核和通信處理模塊CPM兩部分集成而來。這種雙處理器器的結構由于CPM承接了嵌入式Power PC核的外圍接口任務,所以較傳統結構更加省電。CPM交替支持三個快速串行通信控制器(FCC),二個多通道控制器(MCC),四個串行通信控制器(SCC),二個串行管理控制器(SMC),一個串行外圍接口電路(SPI)和一個12C接口。嵌入式的Power PC核和通信處理模塊(CPM)的融和,以及Power QUICCII的其他功能、性能縮短了技術人員在網絡和通信產品方面的開發周期。 同Power QUICCII相比,Power QUICCIII集成度更高、功能更強大、具有更好的性能提升機制。Power QUICCIII中的CPM較Power QUICCII產品200MHz的CPM的運行速度提升了66%,達到333MHz,同時保持了與早期產品的向后兼容性。這使得客戶能夠最大范圍的延續其現有的軟件投入、簡化未來的系統升級、又極大的節省開發周期。Power QUICCIII通過微代碼具有的可擴展性和增加客戶定制功能的特性,能夠使客戶針對不同應用領域開發出各具特色的產品。這種從Power QUICC II開始就有的微代碼復用功能,已經成為簡化和降低升級成本的主要設計考慮。 PowerPC一般應用在服務器或運算能力強大的專用計算機上,以及游戲機上。
4、RISC家族之ARC 架構與其它RISC處理器技術相較起來,ARC的可調整式(Configurable)架構,為其在變化多端的芯片應用領域中爭得一席之地。其可調整式架構主要著眼于不同的應用,需要有不同的功能表現,固定式的芯片架構或許可以面面俱到,但是在將其設計進入產品之后,某些部分的功能可能完全沒有使用到的機會,即使沒有使用,開發商仍需支付這些〝多余〞部分的成本,形成了浪費。由于制程技術的進步,芯片體積的微縮化,讓半導體廠商可以利用相同尺寸的晶圓切割出更多芯片,通過標準化,則是有助于降低芯片設計流程,單一通用IP所設計出來的處理器即可應用于各種用途,不需要另辟產能來生產特定型號或功能的產品,大量生產也有助于降低單一芯片的成本,而這也是目前嵌入式處理器的共通現象。 在ARC的設計概念中,是追求單一芯片成本的最小化,量體裁衣,這需要在設計階段依靠特定EDA軟件才能做到。
ARC 近期也推出了基于700系列的多媒體應用加速處理器,其中整合了ARC 700通用處理核心,以及高速SIMD處理單元,可以在低時鐘下輕松進行諸如藍光光盤的H.264編譯碼處理,此架構稱為VideoSubsystem,基本上該應用處理器就可以擔任通用運算工作,不過也可以與其它諸如 ARM或 MIPS體系進行連結,以滿足應用程序的兼容性與影音數據流的加速。
5、RISC家族之Tensilica架構 Tensilica公司的 Xtensa 處理器是一個可以自由配置、可以彈性擴張,并可以自動合成的處理器核心。Xtensa 是第一個專為嵌入式單芯片系統而設計的微處理器。為了讓系統設計工程師能夠彈性規劃、執行單芯片系統的各種應用功能,Xtensa 在研發初期就已鎖定成一個可以自由裝組的架構,因此我們也將其架構定義為可調式設計。
Tensilica 公司的主力產品線為Xtensa,該產品可讓系統設計工程師可以挑選所需的單元架構,再加上自創的新指令與硬件執行單元,就可以設計出比其它傳統方式強大數倍的處理器核心。Xtensa 生產器可以針對每一個處理器的特殊組合,自動有效地產生出一套包括操作系統,完善周全的軟件工具。 Xtensa 為一32位處理器,該結構特色是有一套專門為嵌入式系統設計、精簡且效能表現不錯的16與24位指令集。其基本結構擁有80 個 RISC 指令,其中包括 32位 ALU,6個管理特殊功能的緩存器,32或64個普通功能32位緩存器。這些32位緩存器都設有加速運行功能的信道。Xtensa 處理器的指令相當精簡,系統設計師可以以此縮減程序代碼的長度,從而提高指令的密集度并降低功耗。相對于高合成的單芯片系統ASIC而言,能達到有效減低成本。 Xtensa 的指令集構架包括有效的分支指令,例如:經合成的比較 - 分歧循環、零開銷循環和二進制處理,包括漏斗切換和字段抽段操作等。浮點運算單元與向量 DSP 單元是 Xtensa 結構上兩個可以加選的處理單元,可以加強在特定應用的效能表現。
6、CISC家族之X86 X86 處理器應用在嵌入式系統的歷史相當悠久,以Intel為例,其Pentium3時代的處理器與芯片組,至今仍活躍在許多工控電腦產業中。而隨著兩大X86 廠商放棄RISC產品線,并積極規劃移動應用產品,X86進入到消費性電子嵌入式市場就不再只是傳言。當然,X86處理器普遍都還是有功耗過高,且芯片數量龐大的缺點,不適合應用在要求精簡省電的嵌入式架構中,但隨著發展,這一切都有了根本上的改變。 盡管 Pentium4是 Intel相對失敗之作,但Pentium3依舊是市場的最愛,就連Intel本身也舍不得放棄Pentium3的微架構,如今已經經過數次的翻新與修改,即便是最新的4核心產品,依然有Pentium3的影子存在。賣舊式架構產品,對Intel來說,其實不無小補,由于舊架構經過長久驗證,不需重新設計,且在生產上的成本非常低,制程提升還可以進一步拉抬芯片產量,但不止Intel有舊架構產品,AMD其實也運用同樣的手法來經營其 AthlonXP處理器,但是Intel決心要讓對手難以追趕,因此規劃了一系列以移動產品應用為主的嵌入式處理器。 Intel過去在X86產品規劃上,其實幾乎從未接觸過移動通訊應用,即便是雷聲大雨點小的UMPC產品,也都不含移動通訊功能,在這邊我們指的是諸如 3G、3.5G的通訊能力,而當 Intel主推的WiMAX正式被納入3G標準之一,也讓Intel重新考慮該公司的移動應用產品。在最近的技術展示中,即便是最接近手機設計的 MID (Mobile Intel Device)裝置,也都僅定位于移動上網工具,而非行動通訊系統。 但是根據Intel的最新規劃,MID 平臺已經從單純的行動上網,轉而將會跨進現有的BlackBerry (黑莓)及 I-Phone 的相同市場,前者擁有強大的網際網絡通訊能力,而 I- Phone 則是擁有強大的多媒體能力,但是Intel的MID平臺基本上是一部微型X86計算機系統,在功能性可以達到相當全面的地步,且具備了 ARM、MIPS等處理器架構難以滿足的X86軟件兼容資源,導入移動通訊只不過是在目前的硬件規劃基礎上,進行軟件模塊的增加而已。傳統移動通訊產品廠商在相關軟硬件投入的資本非常龐大,是否采用Intel架構還有待觀察,當然,如果像Nokia與Motorola也投入此一架構,在推廣上也將會如虎添翼。 Intel針對移動應用的最新處理器為Stealey,目前該產品線有兩款產品,分別是600MHz的A100與 800MHz的A110,理論上來說,Stealey 只不過是Centrino體系中祖父級Dothan(都是基于Pentium3的架構)處理器的超級精簡兼時鐘降低版,主要是得利于90納米制程,架構技術上并無太多特點,而下一代的Silverthorne則是直接將此Stealey轉以45納米制程,并在架構上加入64位處理能力,算是真正比較有誠意的產品。但是以目前來看,Intel的移動應用平臺其實表現并不出色,過高的功耗與溫度仍然是應用在移動終端上的隱憂,Silverthorne是必要針對此兩點進行變革,否則要應用在MID產品上,只怕又會繼UMPC之后,成為業界另一個叫好不叫座案例。
7、CISC家族之VIA 目前仍存活的X86處理器廠商,除了身為世界第一大半導體廠的Intel以外,其余兩家都活的相當辛苦,尤其以***的 VIA(威盛)為最,該公司在處理器產品線的經營上,向來遭受大廠的打壓, VIA 過去所推出的一系列低功耗處理器,雖然效能偏低,但是其功耗控制能力非常優秀,遠遠超過Intel以及AMD這兩家CPU大廠,如今世界潮流逐漸從效能取向走往綠色環保取向,VIA終于也是媳婦熬成婆,除了在一般低價PC 獲得滿堂彩以外,在UMPC以及嵌入式系統方面,也都能提供相當優秀的解決方案。 VIA 的主流產品線為C7-M處理器,該款處理器共分兩個型號——普通版本及Ultra Low Voltage版本,C7-M普通版本型號擁有 1.5GHz/400MHz FSB、1.6GHz /533MHz FSB、1.867GHz/533MHz FSB及最高速度的 2GHz/533MHz FSB,電壓由1.004V至1.148V,最高功耗由12W至20W,在P-State模式下電壓會下調至0.844V,而功耗則只有5W。 Ultra Low Voltage版本的C7-M處理器,擁有1GHz/400MHz FSB、 1.2GHz/400MHz FSB及1.5GHz/400MHz FSB,ULV版本工作電壓只需要 0.908V至0.956V,最高功耗由5W至7W 左右。而ULV之中還會有一個Super ULV的C7-M 1GHz,型號為C7- M ULV 779,工作電壓可低至0.796V,最高功耗僅有 3.5W。由于這些特點,使其在低價計算機、嵌入式應用領域中,成為不能忽視的第三勢力。
8、CISC家族之AMD AMD 是在主流市場上,唯一能與Inte抗衡的X86處理器廠商,然而在購并ATI之后,其表現只能算差強人意,以目前所規劃的主流產品線而言(包含CPU與 GPU),其實都是處于挨打的狀態。畢竟AMD具有業界最佳的技術均衡性,既有先進的處理器技術,又是GPU技術第二領導者,兼以效能表現相當優秀的主機板芯片產品,以及自有的晶圓廠,雖不及Intel霸氣,仍然占有很大市場份額。 在嵌入式應用方面,其實過去AMD 有向MIPS 授權其IP,開發出Alchemy產品線,算是直接向Intel過去的ARM架構Xscale直接叫陣的一款產品,然而此產品并未擄獲市場眼光,在應用上一向偏弱勢,后來AMD也將之擺脫,開始利用自己的X86處理器來經營嵌入式應用領域。 AMD在嵌入式X86處理器方面的產品線為 Geode,基本上這是一款整合度相當高的SoC產品,但是速度偏低,效能表現不佳,功能也未能比VIA的產品出色,定位相當尷尬。針對移動平臺開發的 X86處理核心,代號為“Botcat”,不過目前信息還不完備,因此只能從時間點推論,該處理器將有可能使用簡化降頻版的K8核心,但推出時間在今年,明顯比對手晚了許多,若要整合K10核心,可能就要等到2009年 之后。 不過AMD購并ATI之后,得以將Fusion 的概念帶給消費者,Fusion算是身兼AMD與ATI二者之長,具備了先進的處理器核心、高效能的繪圖核心,以及I/O控制能力,從低功耗的嵌入式應用,到高功耗的效能級產品,都是Fusion的產品守備范圍內,但Fusion最早要到2009年才會進入市場。
評論
查看更多