目錄
1、ARM
ARM處理器是英國Acorn有限公司設計的低功耗成本的第一款RISC微處理器。全稱爲Advanced RISC Machine。ARM處理器本身是32位設計,但也配備16位指令集,一般來講比等價32位代碼節省達35%,卻能保留32位系統的所有優勢。
ARM處理器的三大特點是:耗電少功能強、16位/32位雙指令集和合作夥伴衆多。
1、體積小、低功耗、低成本、高性能;
2、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;
3、大量使用寄存器,指令執行速度更快;
4、大多數數據操作都在寄存器中完成;
5、尋址方式靈活簡單,執行效率高;
6、指令長度固定。
1.1 ARM歷史
1978年12月5日,物理學家赫爾曼·豪澤(Hermann Hauser)和工程師Chris Curry,在英國劍橋創辦了CPU公司(Cambridge Processing Unit),主要業務是爲當地市場供應電子設備。1979年,CPU公司改名爲Acorn公司。
起初,Acorn公司打算使用摩托羅拉公司的16位芯片,但是發現這種芯片太慢也太貴。"一臺售價500英鎊的機器,不可能使用價格100英鎊的CPU!"他們轉而向Intel公司索要80286芯片的設計資料,但是遭到拒絕,於是被迫自行研發。
1985年,Roger Wilson和Steve Furber設計了他們自己的第一代32位、6M Hz的處理器,
用它做出了一臺RISC指令集的計算機,簡稱ARM(Acorn RISC Machine)。這就是ARM這個名字的由來。
RISC的全稱是"精簡指令集計算機"(reduced instruction set computer),它支持的指令比較簡單,所以功耗小、價格便宜,特別適合移動設備。早期使用ARM芯片的典型設備,就是蘋果公司的牛頓PDA。
20世紀80年代後期,ARM很快開發成Acorn的臺式機產品,形成英國的計算機教育基礎。
1990年11月27日,Acorn公司正式改組爲ARM計算機公司。蘋果公司出資150萬英鎊,芯片廠商VLSI出資25萬英鎊,Acorn本身則以150萬英鎊的知識產權和12名工程師入股。公司的辦公地點非常簡陋,就是一個穀倉。
20世紀90年代,ARM 32位嵌入式RISC(Reduced lnstruction Set Computer)處理器擴展到世界範圍,佔據了低功耗、低成本和高性能的嵌入式系統應用領域的領先地位。ARM公司既不生產芯片也不銷售芯片,它只出售芯片技術授權。
1.2 ARM內核系列
ARM7系列 ARM9系列 ARM9E系列 ARM10E系列
SecurCore系列 Intel的StrongARM ARM11系列 Intel的Xscale
其中,ARM7、ARM9、ARM9E和ARM10爲4個通用處理器系列,每一個系列提供一套相對獨特的性能來滿足不同應用領域的需求。SecurCore系列專門爲安全要求較高的應用而設計。
Axxia 4500通信處理器基於採用28納米工藝的ARM 4核Cortex-A15處理器,並搭載ARM全新CoreLink CCN-504高速緩存一致性互連技術,實現安全低功耗和最佳性能。
ARM公司在經典處理器ARM11以後的產品改用Cortex命名,並分成A、R和M三類,旨在爲各種不同的市場提供服務。
ARM內核
家族 |
架構 |
內核 |
特色 |
高速緩存 (I/D)/MMU |
常規 MIPS於 MHz |
應用 |
ARM1 |
ARMv1 |
ARM1 |
無 |
|||
ARM2 |
ARMv2 |
ARM2 |
Architecture 2 加入了MUL(乘法)指令 |
無 |
4 MIPS @ 8MHz |
Acorn Archimedes,Chessmachine |
ARMv2a |
ARM250 |
Integrated (完整的)MEMC (MMU),圖像與IO處理器。Architecture 2a 加入了SWP和SWPB(置換)指令。 | 無,MEMC1a | 7 MIPS@ 12MHz | Acorn Archimedes | |
ARM3 |
ARMv2a |
ARM2a |
首次在ARM架構上使用處理器高速緩存 |
均爲4K |
12 MIPS @ 25MHz |
Acorn Archimedes |
ARM6 |
ARMv3 |
ARM610 |
v3 架構首創支援尋址32位的內存(針對26位) |
均爲4K |
28 MIPS @ 33MHz |
Acorn Risc PC 600,Apple Newton |
ARM7TDMI |
ARMv4T |
ARM7TDMI(-S) |
三級流水線 |
無 |
15 MIPS @ 16.8 MHz |
Game Boy Advance,Nintendo DS,iPod |
ARM710T |
均爲8KB, MMU |
36 MIPS @ 40 MHz |
Acorn Risc PC 700,Psion 5 series,Apple eMate 300 |
|||
ARM720T |
均爲8KB, MMU |
60 MIPS @ 59.8 MHz |
Zipit |
|||
ARM740T |
MPU |
|||||
ARMv5TEJ |
ARM7EJ-S |
Jazelle DBX |
無 |
|||
ARM9TDMI |
ARMv4T |
ARM9TDMI |
五級流水線 |
無 |
||
ARM920T |
16KB/16KB, MMU |
200 MIPS @ 180 MHz |
||||
ARM922T |
8KB/8KB, MMU |
|||||
ARM940T |
4KB/4KB, MPU |
GP2X(第二顆內核) |
||||
ARM9E |
ARMv5TE |
ARM946E-S |
可變動,tightly coupled memories, MPU |
|||
ARM966E-S |
無高速緩存,TCMs |
ST Micro STR91xF,包含Ethernet [2] |
||||
ARM968E-S |
無高速緩存,TCMs |
|||||
ARMv5TEJ |
ARM926EJ-S |
Jazelle DBX |
可變動,TCMs, MMU |
220 MIPS @ 200 MHz |
移動電話:Sony Ericsson(K, W系列),Siemens和 Benq(x65 系列和新版的) |
|
ARMv5TE |
ARM996HS |
無振盪器處理器 |
無高速緩存,TCMs, MPU |
|||
ARM10E |
ARMv5TE |
ARM1020E |
(VFP),六級流水線 |
32KB/32KB, MMU |
||
ARM1022E |
(VFP) |
16KB/16KB, MMU |
||||
ARMv5TE |
ARM1026EJ-S |
Jazelle DBX |
可變動,MMU or MPU |
|||
ARMv5TE |
80200/IOP310/IOP315 |
I/O處理器 |
||||
80219 |
400/600MHz |
ThecusN2100 |
||||
IOP321 |
600 BogoMips600 MHz |
Iyonix |
||||
IOP33x |
||||||
IOP34x |
1-2核,RAID加速器 |
32K/32K L1, 512K L2, MMU |
||||
PXA210/PXA250 |
應用處理器,七級流水線 |
ZaurusSL-5600 |
||||
PXA255 |
32KB/32KB, MMU |
400 BogoMips@400 MHz |
Gumstix,Palm TungstenE2 |
|||
PXA26x |
可達 400 MHz |
|||||
PXA27x |
800 MIPS 624 MHz |
HTCUniversal, ZaurusSL-C1000,3000,3100,3200, Dell Aximx30, x50,和 x51 系列 |
||||
PXA800(E)F |
||||||
Monahans |
1000 MIPS 1.25 GHz |
|||||
PXA900 |
Blackberry 8700, Blackberry Pearl (8100) |
|||||
IXC1100 |
Control Plane Processor |
|||||
IXP2400/IXP2800 |
||||||
IXP2850 |
||||||
IXP2325/IXP2350 |
||||||
IXP42x |
NSLU2 |
|||||
IXP460/IXP465 |
||||||
ARM11 |
ARMv6 |
ARM1136J(F)-S |
SIMD, Jazelle DBX, (VFP),八級流水線 |
可變動,MMU |
從 350 MHz 到1 GHz | |
ARMv6T2 |
ARM1156T2(F)-S |
SIMD, Thumb-2, (VFP),九級流水線 |
可變動,MPU |
|||
ARMv6KZ |
ARM1176JZ(F)-S |
SIMD, Jazelle DBX, (VFP) |
可變動,MMU+TrustZone |
|||
ARMv6K |
ARM11 MPCore |
1-4覈對稱多處理器,SIMD, Jazelle DBX, (VFP) |
可變動,MMU |
|||
Cortex |
ARMv7-A |
Cortex-A8 |
Application profile, VFP, NEON, Jazelle RCT, Thumb-2, 13-stage pipeline |
可變動 (L1+L2), MMU+TrustZone |
up to 2000(2.0 DMIPS/MHz 從600 MHz到超過1 GHz的速度) |
Texas Instruments OMAP3 |
ARMv7-R |
Cortex-R4(F) |
Embedded profile, (FPU) |
可變動高速緩存,MMU可選配 |
600 DMIPS |
Broadcomis a user |
|
ARMv7-M |
Cortex-M3 |
Microcontroller profile |
無高速緩存,(MPU) |
120 DMIPS @ 100MHz |
Luminary Micro[3]微控制器家族 |
2、MIPS
MIPS架構(英語:MIPS architecture,爲Microprocessor without interlocked piped stages architecture的縮寫,亦爲Millions of Instructions Per Second的雙關語),是一種採取精簡指令集(RISC)的處理器架構,1981年出現,由MIPS科技公司開發並授權,廣泛被使用在許多電子產品、網絡設備、個人娛樂裝置與商業裝置上。最早的MIPS架構是32位,最新的版本已經變成64位。
應用範圍
MIPS32® 和 MIPS64®指令集架構,可以無縫兼容,便於客戶從舊代到新代的移植,同時能夠保護現有軟件的投資。
特定應用擴展(Application Specific Extension,ASE),可提升特定類型應用的性能,其包括:
業界標準MIPS32® 和 MIPS64®架構的MIPS® DSP ASE信號處理擴展,能夠提升客戶SoC的媒體性能。
SmartMIPS® ASE,可在智能卡及其它安全數據應用中實現前所未有的安全性。
MIPS16e™ 代碼壓縮 ASE,能減少多達40%的存儲器使用量。
MIPS-3D® ASE,可在數字娛樂和多媒體產品中實現高性能三維圖像處理的一種具成本效益的解決方案。
發展歷史
1981年,斯坦福大學教授約翰·軒尼詩領導他的團隊,實作出第一個MIPS架構的處理器。他們原始的想法是通過指令管線化來增加CPU運算的速度。
1984年,約翰·軒尼詩教授離開斯坦福大學,創立MIPS科技公司。於1985年,設計出R2000芯片,1988年,將其改進爲R3000芯片。
2002年,中國科學院計算所開始研發龍芯處理器,採用MIPS架構,但未經MIPS公司的授權,遭到侵權的控告。
2009年,中國科學院與MIPS公司達成和解,得到正式授權。
3、PowerPC
PowerPC是1991年,Apple、IBM、Motorola組成的AIM聯盟所發展出的微處理器架構。PowerPC是整個AIM平臺的一部分,並且是到目前爲止唯一的一部分。PowerPC 的歷史可以追溯到早在1990年隨RISC System/6000一起被介紹的IBM POWER架構。該設計是從早期的RISC架構(比如IBM 801)與MIPS架構的處理器得到靈感的。
三巨頭
1991年七月由蘋果電腦、IBM、摩托羅拉三家公司,聯合發表共組PowerPC聯盟的聲明。聲明中強調聯盟的目標是:
1 IBM與蘋果電腦將致力發展,一套完全以物件導向技術的開放系統軟件標準。
2 IBM與蘋果電腦計劃要合作,進一步整合麥金塔(Macintosh),使其成爲主/從結構之環境。
3蘋果電腦將調整未來IBM RS/6000POWER結構,稱爲PowerPC之單芯片,以用於未來蘋果電腦的麥金塔個人電腦系統。
4 IBM及蘋果電腦計劃合作,創造一個廣大工業發展的獨立標準軟件環境的證照。
5 通過摩托羅拉將協助聯盟,建立軟硬件結合的標準。
這個意欲打破由英特爾所壟斷個人電腦市場的決定,立刻在華爾街股市引起相當的震盪。因爲聯盟的三大發起公司,英文名稱是APPLE、IBM、MOTOROLA,因此也有人稱做AMI PowerPC聯盟。
就個人電腦的市場佔有率來看,INTEL已佔了全球百分之九十以上的市場。軟硬雙雄掌握電腦軟硬件的核心,真是不可一世。PowerPC聯盟要想進行仰攻,並不是一件容易的事。因此,他們從硬件結構、系統整合、操作系統進行全面規劃,希望能以RISC的CPU、支援多種操作系統等嶄新技術,重建新的電腦規範。
聯盟的信心來自於,是軟件推動着電腦工業前進,而決定軟件未來的發展,就是物件導向技術。而該電腦工業得以發展無憂的關鍵因素,則是開放標準。而這兩大武器,聯盟都已齊備。
4、X86架構
X86架構(The X86 architecture)是微處理器執行的計算機語言指令集,指一個intel通用計算機系列的標準編號縮寫,也標識一套通用的計算機指令集合。
X86歷史
1978年6月8日,Intel發佈了新款16位微處理器“8086”,也同時開創了一個新時代:x86架構誕生了。
x86指的是特定微處理器執行的一些計算機語言指令集,定義了芯片的基本使用規則,一如今天的x64、IA64等。
事實上,8086處理器發佈之初並沒有獲得太多關注,開始也沒有被大範圍採用,但它在PC業界的地位怎麼形容都不爲過,這就是因爲它帶來了x86。它不僅成就了Intel如日中天的地位,也成爲了一種業界標準,即使是在當今強大的多核心處理器上也能看到x86的身影。
在30年的發展史中,x86家族不斷壯大,從桌面轉戰筆記本、服務器、超級計算機、編寫設備,期間還挫敗或者限制了很多競爭對手的發展,讓不少處理器廠商及其架構技術成爲歷史名字,即使有些封閉發展的也難以爲繼,比如蘋果就已經放棄PowerPC了。
當然,我們不能忘了x86-64和EM64T的鬥爭。2003年,AMD推出了業界首款64位處理器Athlon 64,也帶來了x86-64,即x86指令集的64位擴展超集,具備向下兼容的特點。當時Intel也在推行64位技術,但其IA64架構並不兼容x86,只是用在服務器處理器Itanium上。爲了和AMD展開競爭,Intel也在2004年推出了自己的64位版x86,也就是EM64T。
5、PowerPC架構相比於ARM的優勢
powerpc芯片憑藉其出色的性能和高度整合和技術先進特性在網絡通信應用,工業控制應用,家用數字化,網絡存儲領域,軍工領域,電力系統控制等都具有非常廣泛的應用。
由於PowerPC相對ARM器件來說價格稍貴,另外ARM開發工具盜版到處都是,所以在中國目前來說PowerPC不是很普及.但在一些歐美國家應用很廣泛的。個人覺得PowerPC相對ARM優勢有下面幾點說明:
1、整合度高以及技術先進性,現在Freescale PowerPC 處理器集成USB,PCI,DDR控制器,SATA控制器,千兆網口控制器,CAN控制器,RapidIO以及PCI_Express控制器,IEEE1588通信協議,支持各種通信協議CPM協處理器 ,DMA,SPI,I2C.UART等,客戶無須設計複雜的外圍電路,減少設計複雜程度以及物料使用,ARM這點比不上。
2、芯片可選範圍大,性能高,升級容易,從50M-1.7G都有處理器,而且POwerPC將向多核處理器發展,如已經推出集成雙e500 coreMPC8572,MIPS性能高達6897,ARM我看頻率是1G的都沒有,ARM 大概是 1.1 MIPS/MHz,Power Architecture 是大於2.0MIPS/MHz,所以PowerPC在高端嵌入式應用,佔有很大比例,ARM這點比不上 。
3、開發難度方面,其實PowerPC處理器開發難度並不是很高,只不過因爲開發的人少,所以中文資料相對較少,另外開發工具也不象ARM那麼多盜版的,所以總有些人抱怨PowerPC處理器開發難度大,如Freescale都免費給客戶提供Datasheet,設計詳細文檔給用戶,而且最底層驅動,Freesclae都已經開發好.你可以在他們論壇上提問,或者發郵件給技術支持,他們很快都能回覆的, 相信以後用的人會越來越多。
4、價格方面,總有人抱怨說PowerPC處理器價格貴,相對ARM來說,同樣頻率的,可能會貴點,但是如果是MIPS/MHz性能比較以及整合的外圍電路來說,PowerPC還是有一定優勢的,Freescale也意識到這個問題,所以推出了向工作頻率低點的MPC8313,MPO8323等低價格處理器,另外如coldfire也推出低價格處理器,隨着Freescale後面產品繼續推出,PowerPC處理器價格會越來越便宜。
5、PowerPC 的結構尤其在功耗方面的束縛可能導致其在嵌入式領域沒有如ARM那樣大的伸縮性。
二者定位不同:ARM面向的低端消費類市場,拼的是功耗;PowerPC面向的是中高端市場,比的是性能,好像還沒看到誰的手機是PowerPC的,也沒有看到誰家企業級以上的交換機是用ARM做的。PowerPC在嵌入式領域的應用是在中高端的,不在消費領域,比如企業級以上的交換機,大機架上剷平,對功耗應該是考慮次要的,這類產品都是由單獨的AC/DC的電源,而且機箱中一般都有風扇。所以功耗應該不是問題。ARM都是面向消費電子的。
ARM在消費電子領域的優勢非常明顯,如此流行的原因我認爲有三個方面:價格便宜、配套IP完備、集成使用方便。
至於性能和低功耗方面,ARM要弱於PowerPC。Power系列的芯片主要用於交換機、網絡處理器、及sony的遊戲機等應用上,這類的應用場合對處理器的性能要求非常強烈,ARM難以勝任 ARM和MIPS在消費領域存在着競爭,MIPS陣營的產品在功耗和麪積上具有優勢,但MIPS提供的開發工具不如ARM便捷。
6、Powerpc架構與X86架構的區別
power和intel x86對比,要看怎麼比了。首先,在高端服務器領域,power的大規模SMP系統性能(目前最高的power795可以配置256個4GHz處理核心)即使8路E7 v2頂配 120個核心也是難以望其項背的,當然低端入門級領域intel在同等價格的前提下性能有很大優勢也是事實(企業級市場intel產品線的價格還是很宜人的)。
其次,power系統在硬件層面的可靠性、可用性、可維護性(業界俗稱RAS)方面明顯強於x86系統,intel只提供處理器,整機需要廠商自己去設計,中小廠商基本靠intel的公版方案做白牌裝機商,只有大品牌(比如IBM HP之類)纔有自己的獨道設計,x86的雜牌軍和IBM從芯片開始設計的整機方案無法相比。第三,power機器一般運行AIX系統居多,少數linux系統;x86基本運行win和linux系統。
AIX在系統穩定性、軟件方案集成度(例如HA軟件、備份軟件、集羣文件系統等等)、廠商技術支持能力強於開放平臺。第四,商用IT系統的用戶選用什麼平臺主要看軟件需求,有些要求7*24不能宕機不能丟數據的關鍵性應用在操作系統選擇方面有很大的侷限性(例如銀行、電信等等),這些領域x86想獲得機會,需要依靠應用軟件移植和win/linux這類開放OS可靠性大幅提升纔有可能完成,無論哪一個都不是容易做到的。
power和sparc、安騰是UNIX界的三駕馬車,共同支撐起絕大部分企業的關鍵性應用平臺,xeon從低端起家,逐漸向中端蠶食,高端市場目前還無力企及。軟件層面,unix平臺的縮水和win/linux的進取是不可逆轉的趨勢。power和x86的對比,單純對比芯片本身意義不大,也和普通消費者沒有直接關係。
硬件體系
從處理能力來說,單Hz的處理能力x86已經超過了Power系列,這是毋庸置疑的。但是Power有其明顯的優點。它採用了標準的SMP結構,也就是說對於內存來說所有CPU訪問的速度都是一致的,而x86採用了NUMA結構,這就是說CPU和內存是分區的,每個CPU訪問自己的這部分內存特別快,但是如果需要訪問其它部分那就要走QPI總線(現在已經在不斷改進了),這也客觀上造成了隨着CPU數量的增多,處理能力的增長Power系列的線性程度遠好於x86(這也是爲什麼很少會用4路以上的x86服務器)。而且作爲小型機,封閉系統,其設計更加完整緊湊,綜合起來性能強於x86。
軟件體系
硬件體系是自己的,操作系統也是自己的(AIX等),所以整合起來Power系列的整體穩定性要強於x86服務器,而且運維也方便(特別是對於一些外圍硬件,如果使用IBM更加容易用),抗壓能力也強(小型機90%的CPU佔用率,運行幾個星期可能都OK,x86幾天就估計出問題了)但是Power系列的小型機的價格太高了,而且已經趕不上技術的變化了,由於Google的崛起,雲計算的興盛,現在的分佈式系統的成熟度越來越高,系統已經越來越不依賴幾臺小型機來提供穩定可靠性,而是通過集羣來提供,性能也能夠通過分佈式的處理來解決。
所以x86的使用越來越廣泛,而最新的一些低成本但是能夠帶來高效能的新技術都在x86體系下得到應用(x86市場佔有率高,也開放),而Power系列由於其封閉的特性,反而難以得到應用,所以Power系列的小型機優勢越來越不明顯,已經在逐漸退出歷史舞臺了。