目录
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
Armadillo,GP32,GP2X(第一颗内核), Tapwave Zodiac(Motorolai. MX1)
ARM922T
8KB/8KB, MMU
ARM940T
4KB/4KB, MPU
GP2X(第二颗内核)
ARM9E
ARMv5TE
ARM946E-S
可变动,tightly coupled memories, MPU
Nintendo DS,NokiaN-GageConexant 802.11 chips
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系列的小型机优势越来越不明显,已经在逐渐退出历史舞台了。
本文同步分享在 博客“连志安的博客”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。