指令集与架构

 

复杂指令集与精简指令集正则表达式

两种主要的计算机处理器体系结构:算法

CISC(Complex Instruction Set Computer,复杂指令集计算机)数据库

RISC(Reduced Instruction Set Computer,精简指令集计算机)api

CISC(复杂指令集)
即 冯·诺依曼结构(普林斯顿结构),指令与数据存储在同一存储器中;
采用CISC结构的处理器,指令线与数据线分时复用;
程序指令存储地址与数据存储地址指向同一个存储器的不一样物理位置,则程序指令和数据的宽度相同;
取指令与取数据不能同时进行,速度受限;
Intel 805一、Motorola MC68xxx、Atmel AT89缓存

通俗理解:咱们要命令一我的吃饭,那么咱们应该怎么命令呢?咱们能够直接对他下达“吃饭”的命令,也能够命令他“先拿勺子,而后舀起一勺饭,而后张嘴,而后送到嘴里,最后咽下去”。从这里能够看到,对于命令别人作事这样一件事情,不一样的人有不一样的理解,有人认为,若是我首先给接受命令的人以足够的训练,让他掌握各类复杂技能(即在硬件中实现对应的复杂功能),那么之后就能够用很是简单的命令让他去作很复杂的事情——好比只要说一句“吃饭”,他就会吃饭。安全

RISC(精简指令集)
即 哈佛结构,指令与数据存储于两个不一样的存储空间;
程序存储器与数据存储器相互独立,独立编址,独立访问;
分离的程序总线与数据总线在一个机器周期中,可同时得到指令字和操做数,提升执行效率;
取指令和取数据同时进行,且通常指令线宽与数据线,可包含更多的处理信息;
Motorola/IBM PowerPC、Atmel AVR、Microchip PIC、ARM性能优化

通俗理解:有人认为这样吃饭整套流程会让事情变的太复杂,毕竟接受命令的人要作的事情很复杂,若是你这时候想让他吃菜怎么办?难道继续训练他吃菜的方法?咱们为何不能够把事情分为许多很是基本的步骤,这样只须要接受命令的人懂得不多的基本技能,就能够完成一样的工做,无非是下达命令的人稍微累一点——好比如今我要他吃菜,只须要把刚刚吃饭命令里的“舀起一勺饭”改为“舀起一勺菜”。服务器

基于CISC的体系架构:网络

目前咱们所遇到的CPU体系架构按照名称主要分为两大类:IA和x86,在这两类下又分别划分有32位和64位。按照这样的分类,就出现了四种体系架构名称:IA-32,IA-64,X86-32,X86-64。多线程

x86:x86是Intel公司首先研发的一种CPU体系架构,这种体系架构也常被称为80×86。该系列最先的处理器即为16位的Intel 8086。因为Intel早年对于这个系列的处理器都是以80开头并以86结尾,好比Intel 808六、8018六、80286及80386等,所以用x86或者80×86表示该体系架构,其中“x”即为英文字母x。值得注意的是,x86表明一类处理器的体系架构,并不特指Intel公司的处理器,好比AMD公司也生产遵循x86架构的处理器。另外,x86体系架构包含16位、32位和64位。

x86-32:表示32位的x86体系架构,该系列也被称为IA-32或i386,甚至直接使用x86来表明这种体系架构。该架构的第一款CPU为Intel 80386,它彻底取代了16位x86架构的CPU。

x86-64:表示64位的x86体系架构。该架构由AMD公司首推,所以AMD将其称为AMD64。Intel随后也推出了64位的x86架构,将其称为Intel64。因为这两个64位的架构几乎相同,所以许多其余厂商使用不偏袒任何厂商的称呼x86-64来表示对这两个架构的兼容。该架构有时也被称为x86_64或x64,某些厂商也用AMD64或amd64同时表示Intel64和AMD64。

IA-32:表示英特尔32位元架构,英文全称为Intel Architecture 32-bit.它与x86-32表示同一种体系架构,只不过Intel现现在将x86-32称为IA-32。

IA-64:表示Intel与惠普合做开发的一种崭新的64位体系架构,它与x86架构不兼容。所以,IA-64与上面提到的x86-64或x64表明的含义不一样。

基于RISC的体系架构:

ARM架构:

ARM在1990年成立,当初的名字是“Advanced RISC Machines Ltd.,”,从命名就能够看出是基于RISC设计的架构。ARM架构过去称做进阶精简指令集机器(Advanced RISC Machine,更早称做:Acorn RISC Machine),是一个精简指令集(RISC)处理器架构,其普遍地使用在许多嵌入式系统设计。因为节能的特色,ARM处理器很是适用于移动通信领域,符合其主要设计目标为低耗电的特性。在今日,ARM家族占了全部32位嵌入式处理器75%的比例,使它成为占全世界最多数的32位架构之一。

Thumb指令集:Thumb指令能够看作是ARM指令压缩形式的子集,它具备16为的代码密度。Thumb不是一个完整的体系结构,不能期望处理程序只执行Thumb指令而不支持ARM指令集。所以,Thumb指令只须要支持通用功能,必要时,可借助完善的ARM指令集,例如:全部异常自动进入ARM状态。

ARM指令集:ARM指令集是指计算机ARM操做指令系统。ARM指令集是基于精简指令集计算机(RISC)设计的,其指令集的译码机制相对比较简单,ARMv7-A具备32bit的ARM指令集和16/32bit的Thumb/Thumb-2指令集,ARM指令集的优势是执行效率高但不足之处也很明显,就是代码密度相对低一些。而做为ARM指令集子集的Thumb指令集,代码密度相对比ARM指令高,并且坚持了ARM一向的性能优但也有一个致命的缺点就是效率低;正所谓鱼和熊掌不可兼得,这也是数字逻辑电路设计所谓的时间和空间的问题;而Thumb-2指令集多为32bit的指令,对于上述的ARM指令和Thumb指令作了一个折中,代码执行效率和密度都相对比较适中。几乎全部的ARM指令均可以条件执行,而另外二者仅有部分才具有此功能,三种指令都可相互调用,并且指令之间状态切换开销很小,几乎能够忽略。

ARM架构与处理器:

ARM核对应的时间表:

 ARM内核与架构通俗理解:

ARM内核:从ARM七、ARM9到Cortex-A七、A八、A九、A十二、A15再到Cortex-A5三、A57等,总之不一样版本 ARM 有不一样的想法。好比为高速度设计的Cortex A八、A9都是ARMv7a 架构;Cortex M三、M4是ARMv7m架构;前者是内核,后者是指令集的架构。ARM的架构都是基于RISC指令集而架构的,而其内核只是实现这一指令集的硬件架构的基础,Thumb-2指令集架构(ISA)的子集,包含全部基本的16位 和32位Thumb-2指令,哈佛处理器架构在加载/存储数据的同时可以执行指令取指,带分支预测的三级流水线等。比如你盖房子,刚开始由于水平低流行盖平房,这就是一种架构(V5T),而后这种平房架构你能够设计出一款独立卫生间的款式, 这叫ARM7内核。 而后其余人(芯片设计公司)想盖房子的就买你这个图纸去盖,接着过一段时间,有人以为光独立卫生间还不够啊, 我还想有个小院子! 好吧,那ARM就知足大家的要求,出个带小院子的款式(ARM9)。又过了好久, 这种平房的架构就随着大伙的需求一直改啊改啊,后来通过ARM研究发现: 如今大伙盖房子的能力duang duang直升啊(包括工艺、设计能力、时钟主频),只盖这种平房施展不开啊! 好吧,ARM为了避免让这帮设计的人闲着,就推出一种二三层楼房的样式, 这由于跟平房设计结构彻底不同嘛, 那就叫一种新的架构(ARMv6),一样这种楼房样式ARM也为你们准备了带游泳池的和带车库的款式(ARM11),好吧继续改啊改啊, 改到后来你们已经开始有能力盖十层以上的大楼了。 ARM一如既往地出了新的款式(ARMv7架构), 这时ARM以为之前名字都太土鳖了, 什么ARM五、 ARM六、 ARM7—又难听又难记, 我要取个看起来牛逼的名字, 咱至少也算个能设计摩天大楼的主儿了, 因而后面的内核都叫Cortex。更名只是一部分, 随着这个架构出来后, ARM发现之前用我们图纸盖出的楼也就作个民宅, 民宅图个啥? 实惠嘛(功耗低)。 如今不同了,如今咱的图纸盖得楼不只能够作民宅,还能够作军事基地、 还能够作高档写字楼, 之前这些高级功能的楼房但是只有小英(英特尔)才能设计出来的啊!为了知足这些不一样的需求, ARM把这个架构设计出来的款式分红3个系列(M系列、R系列、A系列)。M系列是为民宅设计的, 由于老百姓图实惠嘛, 这种设计就设计个十层左右(功耗低); R系列是为军事基地设计的, 这种楼设计的也不高— 十层左右吧, 可是关键是要对特殊状况要有快速反应的能力(中断快); 最后A系列是给商业大佬用的, 那固然是要高端大气上档次, 就是要性能高,各类LED灯灯光秀啊都给我上。

MIPS架构:

无内部互锁流水级的微处理器(Microprocessor without interlocked piped stages architecture),在1981年由MIPS科技公司开发并受权,普遍被使用在许多电子产品、网络设备、我的娱乐装置与商业装置上。最先的MIPS架构是32位,最新的版本已经变成64位。它的基本特色是:包含大量的寄存器、指令数和字符\可视的管道延时时隙。这些特性使MIPS架构可以提供最高的每平方毫米性能和当今SoC设计中最低的能耗。

32位架构:

MIPS32®架构刷新了32位嵌入式处理器的性能标准。它是MIPS科技公司下一代高性能MIPS-Based™处理器SoC发展蓝图的基础,并向上兼容MIPS64®64位架构。MIPS架构拥有强大的指令集、从32位到64位的可扩展性、普遍的软件开发工具以及众多MIPS科技公司受权厂商的支持,是领先的嵌入式架构。MIPS32架构是之前的MIPS I™ 和 MIPS II™指令集架构(ISA)的扩展集,整合了专门用于嵌入式应用的功能强大的新指令,以及以往只在64位R4000™ 和 R5000® MIPS®处理器中能见到的已经验证的存储器管理和特权模式控制机制。经过整合强大的新功能、标准化特权模式指令以及支持前代ISA,MIPS32架构为将来全部基于32位MIPS的开发提供了一个坚实的高性能基础。

64位架构:

MIPS64®架构刷新了64位MIPS-Based™嵌入式处理器的性能标准。它表明着下一代高性能MIPS®处理器的基础,并兼容MIPS32®32位架构。MIPS架构拥有强大的指令集、从32位到64位的可扩展性、普遍可得到的软件开发工具以及众多MIPS科技公司受权厂商的支持,是领先的嵌入式架构。MIPS64架构是之前的MIPS IV™ 和 MIPS V™指令集架构(ISA)的扩展集,整合了专门用于嵌入式应用的功能强大的新指令,以及以往在R4000® 和 R5000® MIPS处理器中执行的已经验证的存储器管理和特权模式控制机制。经过整合强大的新功能、标准化特权模式指令、支持前代ISA,以及提供从MIPS32架构升级的路径,MIPS64架构为将来基于MIPS处理器的开发提供了一个坚实的高性能基础。

微型架构:

microMIPS™是一种在单个统一的指令集架构中集成了16位和32位优化指令的高性能代码压缩技术。它支持MIPS32® 和MIPS64® Release 2架构,整合了可变长度从新编码MIPS指令集和新增的代码量优化16位和32位指令,可提供高性能和高代码密度。microMIPS是一个完整的ISA,既能单独工做,也能与原有的MIPS32兼容指令解码器共同工做,容许程序混合16位和32位代码,无需模式切换。microMIPS的程序代码量较小,所以可得到更好的缓存利用率和更小的取指带宽(fetch bandwidth),从而有助于提高性能,下降功耗。microMIPS包含全部MIPS ASE指令,支持CorExtend™/UDI接口。并且,针对microMIPS软件及系统开发,MIPS科技公司与第三方合做伙伴生态系统提供有一套全面完善的软硬件工具支持。新推出的M14K™和 M14Kc™是首先执行 microMIPS的处理器内核。

MIPS架构演进图:

PowerPC架构:

 PowerPC 是一种精简指令集(RISC)架构的中央处理器(CPU),其基本的设计源自IBM(国际商用机器公司)的IBM PowerPC 601 微处理器POWER(Performance Optimized With Enhanced RISC;《IBM Connect 电子报》2007年8月号译为“加强RISC性能优化”)架构。二十世纪九十年代,IBM(国际商用机器公司)、Apple(苹果公司)和Motorola(摩托罗拉)公司开发PowerPC芯片成功,并制造出基于PowerPC的多处理器计算机。PowerPC架构的特色是可伸缩性好、方便灵活。

PowerPC 体系结构分为三个级别(或者说是“book”)。经过对体系结构以这种方式进行划分,为实现能够选择价格/性能比平衡的复杂性级别留出了空间,同时还保持了实现间的代码兼容性。

Book I. 用户指令集体系结构定义了通用于全部 PowerPC 实现的用户指令和寄存器的基本集合。这些是非特权指令,为大多数程序所用。

Book II. 虚拟环境体系结构定义了常规应用软件要求以外的附加的用户级功能,好比高速缓存管理、原子操做和用户级计时器支持。虽然这些操做也是非特权的,可是程序一般仍是经过操做系统调用来访问这些函数。

Book III. 操做环境体系结构定义了操做系统级须要和使用的操做。其中包括用于内存管理、异常向量处理、特权寄存器访问、特权计时器访问的函数。Book III 中详细说明了对各类系统服务和功能的直接硬件支持。

从最初的 PowerPC 体系结构的开发开始,就根据特定的市场需求而发生分支。当前,PowerPC 体系结构家族树有两个活跃的分支,分别是 PowerPC AS体系结构和 PowerPC Book E体系结构。

PowerPC AS 体系结构是 IBM 为了知足它的 eServer pSeries UNIX 和 Linux 服务器产品家族及它的 eServer iSeries 企业服务器产品家族的具体须要而定义的。

PowerPC Book E 体系结构,也被称为 Book E,是 IBM 和 Motorola 为知足嵌入式市场的特定需求而合做推出的。PowerPC AS 所采用的原始 PowerPC 体系结构与 Book E 所采用的扩展之间的主要区别大部分集中于 Book III 区域中。

PowerPC家族谱系详解:

目前,主流的PowerPC处理器制造商有IBM、Freescale™ Semiconductor(原摩托罗拉半导体部)、AMCC、LSI等。其中以IBM和Freescale的PowerPC处理器最为流行。本文就以这两家公司的PowerPC处理器为基础,展开讲述PowerPC家族。

IBM的PowerPC家族:IBM目前共有3个主要的PowerPC处理系列:Power、Power PC和CELL。POWER,POWER PC中间,还有一个Star系列。

POWER系列处理器:POWER系列CPU从1990开始生产、装备到RS/6000(即RISC System/6000)UNIX工做站和服务器上,如今被称为eServer™ pSeries®服务器(最新的名称是POWER System p系列),主要的型号有POWER 1,POWER 2™,POWER 3™,POWER 4™,POWER 4+,以及目前的POWER 5,POWER 5+和刚刚推出的POWER 6处理器。
最先的801是POWER系列处理器的前身,它的设计很是简单,为了实现全部的指令都能在一个时钟周期内完成,所以缺少浮点运算和并行处理能力,POWER架构为了解决这个问题,或者说超越801的限制,增长到了100多条指令,成为一种很“复杂”的精简指令集CPU。
1.POWER 1 
发布于1990年,每一个芯片大约封装了80万个晶体管。
与当时其余的处理器不一样,POWER 1进行了功能分区,这种设计方案使POWER 1具备很是好的扩展能力,它有单独的浮点寄存器,能够适用于从低端UNIX工做站到高端UNIX服务器各类环境。最先的POWER 1是安装在同一母板上的几个芯片的组合,不过很快就集成到一个芯片中,成为单芯片设计,总计拥有超过一百万个晶体管的RISC处理器(RSC,RISC Single Chip,即单芯片的RISC处理器)。POWER 1最成功的应用是被用于火星探路者宇宙飞船上。
2.POWER 2 
发布于1993年,每一个芯片封装了一千五百万个晶体管。
POWER 2增长了第二个浮点单元处理(floating-point unit,FPU)和更多的缓存。被称为P2SC(Power 2 Scalable Chip)的超级芯片使用CMOS-6S技术,用一个芯片实现了POWER2 8个内核的架构(从这里你能够看到其实在1993年IBM就已经开始了多核芯片的设计,其实若是囊括大型机,在20世纪80年代,就有了多核的概念),就是使用这种处理器的32个节点的DEEP BLUE(深蓝)超级计算机,在1997年打败了国际象棋冠军卡斯帕罗夫。
3.POWER 3
发布于1998年,每一个芯片封装了一千五百万个晶体管。
这是IBM第一款64位对称多处理器结构(SMP),与原有的POWER指令集彻底兼容,也兼容Power PC指令集,主要用于科学计算,从航空设计、生物制药数据分析到天气预测。它具备一个数据预取引擎,非阻塞的内置数据缓存和双浮点处理单元。POWER 3-II采用与POWER 3相同的设计,在制造芯片时使用了铜导线技术,在几乎相同的价格制形成本下,提升了一倍的性能。
4.POWER 4
发布于2001年,每一个芯片封装了一亿七千四百万个晶体管。
这是一款达到GHz主频的处理器,0.18微米铜导线,硅绝缘技术。它具备POWER 3的所有特性,包括与Power PC指令集兼容,但它又是全新的设计,每一个处理器包含两个64位1GHz+ Power PC内核,这是业界第一款批量生产的单芯片双核设计,又被称为单芯片对称多处理设计(multicore design on a single die,SMP on a chip,或者system on a chip),每一个处理器能够同时执行200条指令。POWER 4架构能够制造IBM Regatta(即p690)大型服务器,也被用来设计Power PC 970处理器(在苹果公司被称为Apple G5)。POWER 4+™(又被称为POWER 4-II)是POWER 4主频升级的提升版。POWER 4 CPU支持了分区技术,能够将芯片切分红多个单元,运行不一样的操做系统。
5.POWER 5 ™
2004年发布,与POWER 3和POWER 4相似,POWER 5同时使用了POWER和Power PC架构,利用了更快的片内通讯技术、芯片多处理技术、同时多线程技术(simultaneous multithreading,SMT,一个物理CPU内核能够模拟两个逻辑CPU,若是两个线程的工做内容相差较大,则使用SMT技术性能最高能够达到单个CPU方式执行的1.5~1.7倍),比POWER 4性能提升了4倍。POWER 5的高端服务器代号为“骑兵队”(“Squadrons”,IBM但愿此CPU能如同骑士马队冲锋同样横扫UNIX服务器市场,结果彷佛应验了设计者的指望)。在POWER 5上支持了微分区(Advanced Virtualization)的功能,能够将一个处理器内核虚拟切分红多个处理器,供操做系统使用,最小的分配粒度为0.1个CPU,共享使用粒度是1/100个CPU。在2006年,IBM推出了主频提升,封装变化的POWER 5,被称为POWER 5+,最高主频为2.2GHz。
6.POWER 6 ™
在2007年5月发布,目前最高主频4.7GHz,最高明年将有超过5GHz主频的版本。片内集成度约为7亿5千万个晶体管。POWER 6将一些总线控制和CPU内核之间的数据通道集成进单一芯片,与POWER 5相比,增长了更多的CPU内核间通讯机制和Cache。POWER 6比较有特色的技术是能够直接支持10进制数字处理,这是计算机史上的一次回归,咱们从十进制转到二进制以便于计算机处理,而现在,计算机芯片设计已经足够先进,让咱们能够再也不去适应机器,而是让机器适应咱们的需求。
POWER 6其余的技术包括双核,128KB的L1 Cache(数据、指令各64KB),8条两阶流水线支持在一个时钟周期完成两组32位读或一组64位写操做;两个内核各有4MB“半共享”的L2 Cache,虽然它被一个内核占据,但另外一个内核也能够快速访问它;另外32MB的L3 Cache可被两个内核经过80GB/s的带宽访问;POWER 6还经过ViVA-2(VirtualVector Architecture)技术提升了向量处理性能;支持最多1024个虚拟分区也是POWER 6的新特色(POWER 5最多支持256个分区)。POWER 6特有的10进制运算寄存器、指令可使它在计算时不会产生2-10进制转换偏差,同时也提升了运算速度。POWER 6包括一些额外的电路去支持Mainframe的指令,开始了整合z系列的实践,而POWER 6L则是“简化”版的芯片,下降了主频,能够用于刀片服务器。
在生产POWER 6的同时,POWER 7也处于紧张开发阶段,预计2012年面世。

Star系列处理器:是Power PC架构的另外一种技术实现,与POWER系列很是相似。因为此系列的各类CPU代号都有Star或者用某一颗星的名字来命名,所以被称为Star系列。

1.RS64 
1997年发布,代号为“Apache”。
这一系列使用Power PC处理器设计,继承了大量POWER架构的特色,但为了商业运算进行了特别优化,与POWER 3相比,其中包括指令分支预测、浮点意外处理、硬件预取等功能被取消,而取而代之的是整形计算意外处理、复杂的片内/片外缓存算法、更大的缓存容量。 RS64的设计能够支持64位处理,在2000年发布的RS64 IV中采用了硬件多线程技术,单台服务器最多能够扩展到24颗CPU,消耗的功耗也很是少,每一个处理器只有15瓦。此款CPU开始用于AS/400(即后来的iSeries),从RS 64 II起,才用于RS/6000(pSeries)。
这种设计使得RS64芯片比较适用于在线交易(On-Line Transaction Processing,OLTP)、企业资源计划系统(Enterprise Resource Planning,ERP),以及其余大型、混合的多功能、数据库访问、多用户、多进程的业务。不过在实际使用的过程当中,发现其计算速度稍有欠缺,多是 RS64 CPU的主频都很低,典型的几款服务器主频只有100MHz左右,对于商业智能(Business Intelligence,BI)和科学计算一类的应用,性能不佳。
2.RS64 II
1998年发布,代号为:“Northstar”(北方之星)。
该CPU拥有8MB L2 Cache,256位的数据总线,262MHz主频。装配此款CPU的服务器能够支持最多三个CPU板,每一个CPU板装载4路CPU,这样可使RS/6000服务器具备4路、8路、12路的SMP结构。
3.RS64 III
1999年发布,代号为:“Pulsar”(脉冲星)。
第一款使用硅绝缘的RS64芯片,经过6个CPU 卡能够实现24路SMP结构。因为此款CPU主频提升到450MHz,使用优化的指令分支预取技术避免了跳转惩罚(或只须要额外1个时钟周期),5级流水线等技术,CPU处理性能大幅度提升。IBM用此款服务器装配了RS/6000的80系列(H80,M80,S80服务器)。
4.RS64 IV
2001发布,代号为:Istar,SStar
第一款支持硬件多线程的商用处理器,比之前同系列的CPU更快,更小。600-750MHz的主频,硬件多线程技术(HMT)使得此CPU具备不错的市场表现。另外每一个CPU仅消耗15W的功率也使得用此CPU装配的服务器无需特别的电源、散热系统。

因为市场对于商业和计算环境的混合需求,使得IBM从新整合了POWER系列和Power PC系列处理器,最终设计了POWER 4处理器。Star系列也最后完成了历史使命。

Power PC系列:是从POWER架构发展出来的一个分支,最先在1993年发布,用于从单板机、电池电源管理到超级计算机和Mainframe主机。Power PC最先登上主角的地位是从做为Power Macintosh 6100的CPU开始的。

众所周知,Power PC开始与苹果、摩托罗拉和IBM联盟(被称为AIM联盟),是源自于POWER架构的设计,但进行了大量的改动。例如,Power PC是open-endian设计,即同时支持大尾段(big-endian)和小尾段(little-endian)内存模式,而POWER 是大尾段设计;Power PC但愿提供更强的浮点处理能力和多线程处理能力。因此这两种类型的CPU并无太大的差异,Power PC保留了绝大部分POWER指令,许多应用只要从新编译,就能够分别在两个平台上运行。
当IBM和摩托罗拉分别本身设计芯片的时候,依然遵循统一的标准。在2000年,你们使用的是Book E spec,这个设计实现使Power PC能更专一于嵌入式处理系统,例如网络、存储和家用设施的处理器。
除了兼容以外,Power PC的架构的另外一个亮点是开放,它公开了指令集,容许任何厂商设计Power PC的兼容处理器、Power PC的一些软件的源代码也能够下载到,Power PC的内核也很是小,能够在同一芯片上安置许多其余的辅助电路,例如缓存、协处理器,大大增长了芯片的灵活性。
IBM四条服务器产品线中有两条都与Power PC架构有关,另外苹果公司的台式机和服务器、任天堂的GameCube,IBM本身的蓝色基因超级计算机都使用了PowerPC芯片。
今天,Power PC家族有三条产品线,分别是嵌入式的Power PC 400系列,Power PC 700和Power PC 900系列。从历史上看,还有一款Power PC 600系列最值得关注,由于它具备很是好的性能。

1.Power PC 600系列
Power PC 601是Power PC 600系列中的第一款,它综合了POWER和Power PC架构的特色,而且尽可能保持与POWER 1和随后的其余Power PC芯片的兼容性(即便是同一系列的芯片,也存在兼容性问题),甚至与摩托罗拉的88110兼容。苹果公司用Power PC 601在1994年制造了Power Mac 6100,66 MHz CPU主频。此系列下一个芯片是603,低端、低功耗的处理器,大量使用在汽车上。与Power PC 603®同日登场的还有PowerPC 604®,是更强大的处理器,随之的是“增强版”的603e和604e。在此以后,第一款64位Power PC——Power PC 620®在1995年被发布。
2.Power PC 700系列
在1998年,出现了Power PC 740和Power PC 750,与604e很是相像,甚至一些人说600/700两个系列根本就是一回事。Power PC 750是第一款铜导线处理器,苹果公司用它生产了G3,但很快就被G4所取代,使用的是摩托罗拉7400。在2002年发布的32位的Power PC 750FX曾经震惊业界,由于它是第一款达到1GHz主频的处理器,IBM在2003年紧跟着推出了750GX,集成了1MB片上二级缓存,也是1GHz 主频,大约7瓦功耗。
3.Power PC 900系列
64位的Power PC 970,其实是单处理器内核的POWER 4,能够同时执行200条指令,最高达到2 GHz以上的主频,而仅仅消耗十数瓦的电力。低功耗使它被大量用于笔记本电脑和手持设备上,还有一些高密度的存储、服务器(例如刀片中心)也在使用它。 64位处理能力,单指令多数据流设计使它更适合于多媒体、图形处理。苹果公司的台式机、Xserve服务器,以及其余一些图形、网络设备,都在使用这款处理器。例如苹果Xserve G5就使用了Power PC 970FX,也是第一款同时使用了应变硅、硅绝缘两项技术的芯片。
4.Power PC 400 系列
这一款芯片主要用于嵌入式系统,但Power PC灵活的架构使它能够被用于从机顶盒这样的小设备到蓝色基因超级计算机。在产品线的一端,Power PC 405EP在200MHz主频仅消耗1瓦的电力,而铜导线的Power PC 440在800 MHz主频能够提供同类型嵌入式芯片中最高的性能。这款芯片也有许多旁支,例如利用Power PC 440GX的双Gigabit Ethernet和TCP/IP加速功能能够下降网络应用程序50%以上的负载。围绕Power PC 400内核,有许多具体实现,用于建造蓝色基因超级计算机的处理芯片就是包含了两个Power PC 440处理器内核和两个浮点处理内核。
Power PC 400系列被IBM转让给AMCC,发展成为PowerPC 405 Family、PowerPC 440 Family、PowerPC 460 Family 3大系列。

Freescale PowerPC系列

Freescale公司提供了数量众多的含集成化外设的PowerPC处理器,目前在网络设备市场取得了很是可观的成功。目前Freescale公司已经调整其PowerPC产品策略,将其划分红3个主要市场:网络设备、汽车电子(MPC5xx系列)和工业控制。

Freescale PowerPC在通信领域的成功,极可能要归功于PowerQUICC,这也是IBM的PowerPC和Freescale 的PowerPC的最重要的区别。1993年,摩托罗拉半导体事业部(飞思卡尔半导体前身)在充分理解通讯系统应用的基础上,生产了第一颗包含QUICC(Quad Integrated Communications Controller)的芯片--MC68360。此时,QUICC其实是一颗独立的处理器。1994年,摩托罗拉半导体事业部的工程师开始把MC68360的QUICC和PowerPC内核结合,将集成了QUICC的PowerPC处理器称为PowerQUICC,并将其中的QUICC处理模块称为CPM。

1995年,MPC860芯片面市,标志着一个通讯处理器时代的开始。这颗芯片实现了做为控制中心的PowerPC处理器和做为数据处理中心的CPM的分离,采用了数据通路和控制通路分开的思想。

此后PowerQUICC系列芯片也一路升级,从PowerQUICC I到PowerQUICC II,再到PowerQUICC III和PowerQUICC II pro。目前,Freescale 将CPM升级为QE(QUICC Engine)。

伴随PowerQUICC的升级,Freescale  PowerPC内核也在升级。

603内核系列:MPC850、MPC860、MPC87五、MPC885等,目前是最低端的Freescale PowerPC处理器。这类PowerPC处理器没有包含SDRAM接口,用户必须使用MPC860提供的UPM(USER Programmable Machines)配置成SDRAM接口。603内核配合PowerQUICC I。

603E内核系列:MPC8250、MPC8260、MPC8272等。从PowerPC内核的角度看,603到603E的升级不大,主要是MMU上,此外包含了SDRAM控制器。603E内核配合PowerQUICC II。

E300内核系列:MPC834九、MPC834七、MPC8360等。E300系列与603E系列结构基本一致,在处理器内核上的修改很少。QE最早在MPC8360上实现,此外支持DDR SDRAM接口。E300内核配合PowerQUICC II pro。

E500内核系列:包括MPC8540、MPC8560、MPC8548等。E500内核共有V1 、V2两个版本。V1版本和V2版本的最大区别在于MMU。基于E500内核的PowerPC处理器是Freescale高端处理器的发展方向。E500内核和603E有很大的不一样,只有指令系统是兼容的,其余内核组件都不相同。E500内核支持DDR SDRAM,RapidIO和千兆以太网接口。E500内核配合PowerQUICC III。

E600内核系列:也称为G4,包括MPC7410,MPC7447,MPC7448,MPC8641等。与IBM的Power 700系列的最大不一样在于G4系列支持AltiVec结构。这类处理器也是Apple用于MAC机的芯片。

E700内核系列:支持64位的PowerPC结构,开发中(最新消息不明,怀疑被放弃).

飞思卡尔 QorIQ通讯平台是飞思卡尔的 PowerQUICC通讯处理器的下一代演进产品,包含一个或者更多个核,一共有5个不一样的产品平台。按照功能和性能,分为 P1, P2, P3, P4 和P5,同老的PowerPC产品保持软件兼容,例如PowerQUICC平台。

QorIQ 商标和P一、P二、P4产品家族在2008年6月被公布,P3和P5平台的细节还没有公开。全部的QorIQ处理器基于 e500 or e5500 核心。P10xx 和 P20xx 系列基于e500v2 核心,P340xx 和P40xx 系列基于 e500mc 核心,P50xx 则基于e5500 核心。

P1系列:被设计用于网关、以太网交换机、无线局域网接入点和通用控制目的。P1系列属于入门级,运行在400到800MHz,用于替代PowerQUICC II Pro 和PowerQUICC III平台。P1系列封装成689个引脚,同P2系列兼容。P1011 -包含一个800MHze500核心,256 kB L2 cache,4个SerDes lanes,3个吉比特以太网控制器,以及一个用于老实电话的时分复用引擎(TDM engine) 。P1020 –包含2个800 MHz e500 核心,256 kB shared L2 cache, 4个SerDes lanes,3个吉比特以太网控制器,一个 TDM engine.

P2系列:设计用于网络、电信、军工的普遍应用。能运行在-40 到 125 °C,特别适合苛刻条件下的应用。P2系列属于中端产品,运行在800Mhz到1.2GHz,用于替代PowerQUICC II Pro 和PowerQUICC III平台。P2010 – 包含1个 1.2 GHz 核心,P2020 – 包含2个 1.2 GHz 核心, shared L2 cache

P3系列:设计属于中端产品,用于交换机和路由器。P3系列提供了一个多核平台,支持4个e500mc核心,每一个核心频率能达到1.5 GHz。P3系列拥有1.3 GHz 64-bit DDR3内存控制器,18个SerDes lanes,以及用于数据包操做和调度、正则表达式、RAID、安全、加密和RapidIO的硬件加速器。P3系列的多个核心可以运行在对称模式和非对称模式,意味着多个核心能够一块儿或者非别引导运行操做系统。
P3041 - 4个1.5 GHz 核心,每一个核心128 kB L2 cache ,1个1.3 GHz 64-bit DDR3 内存控制器,45纳米技术和仅有12w的功率。

P4系列:属于高端产品,用于核心网或者企业级交换机、路由器。提供极限多核平台,支持8个e500mc核心 ,每个核达到1.5 GHz。P4080 –包含8个e500mc核心,每一个核心有32/32kB instruction/data L1 caches以及1个a 128 kB L2 cache。包含2个1 MB L3 caches,每个链接到64-bit DDR2/DDR3 内存控制器。

P5系列:P5系列基于高性能64-bit e5500 核心,频率提升到2.5 GHz 。2010年6月介绍,可能2010年末可有样片,2011年可批量生产。P5010 - 一个e5500 2.2 GHz核心, 1 MB L3 cache, 1个DDR3 controller,45 nm 工艺,功率30W.P5020 - 两个e5500 2.2 GHz核心, 2个1 MB L3 caches, 2个DDR3 controllers, 45 nm 工艺,功率30W.

PowerPC部分转载自:https://blog.csdn.net/gao5528/article/details/6664599

相关文章
相关标签/搜索