原文:http://www.kaixin001.com/repaste/11007221_7220618944.html###

内容:

目前主要CPU架构有ARM、X86/Atom、MIPS、PowerPC,其中ARM在智能手机上面一枝独秀;
按照指令集来分主要就是精简指令集和复杂指令集两上方面:
ARM/MIPS/PowerPC均是基于精简指令集机器处理器的架构;
X86则是基于复杂指令集的架构,Atom是x86或者是x86指令集的精简版;

ARM系列
ARM架构, 过去称作进阶精简指令集机器(Advanced RISC Machine,更早称作:Acorn RISC Machine),是一个32位精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于行动通讯 领域,符合其主要设计目标为低耗电的特性。
在今日,ARM家族占了所有32位嵌入式处理器75%的比例,使它成为占全世界最多数的32位架构之 一。ARM处理器可以在很多消费性电子产品上看到,从可携式装置(PDA、移动电话、多媒体播放器、掌上型电子游戏,和计算机)到电脑外设(硬盘、桌上型 路由器)甚至在导弹的弹载计算机等军用设施中都有他的存在。在此还有一些基于ARM设计的派生产品,重要产品还包括Marvell的XScale架构和德 州仪器的OMAP系列。
优势:价格低;能耗低;
ARM 授权方式:ARM 公司本身并不靠自有的设计来制造或出售 CPU ,而是将处理器架构授权给有兴趣的厂家。ARM 提供了多样的授权条款,包括售价与散播性等项目。对于授权方来说,ARM 提供了 ARM 内核的整合硬件叙述,包含完整的软件开发工具(编译器、debugger、SDK),以及针对内含 ARM CPU 硅芯片的销售权。对于无晶圆厂的授权方来说,其希望能将 ARM 内核整合到他们自行研发的芯片设计中,通常就仅针对取得一份生产就绪的智财核心技术(IP Core)认证。对这些客户来说,ARM 会释出所选的 ARM 核心的闸极电路图,连同抽象模拟模型和测试程式,以协助设计整合和验证。需求更多的客户,包括整合元件制造商(IDM)和晶圆厂家,就选择可合成的 RTL(暂存器转移层级,如 Verilog)形式来取得处理器的智财权(IP)。借着可整合的 RTL,客户就有能力能进行架构上的最佳化与加强。这个方式能让设计者完成额外的设计目标(如高震荡频率、低能量耗损、指令集延伸等)而不会受限于无法更 动的电路图。虽然 ARM 并不授予授权方再次出售 ARM 架构本身,但授权方可以任意地出售制品(如芯片元件、评估板、完整系统等)。商用晶圆厂是特殊例子,因为他们不仅授予能出售包含 ARM 内核的硅晶成品,对其它客户来讲,他们通常也保留重制 ARM 内核的权利。
生产厂商:TI (德州仪器)/Samsung(三星)/Freescale(飞思卡尔)/Marvell(马维尔)/Nvidia(英伟达)
下面是四核ARM芯片架构图,可以参看:

x86系列/Atom处理器
xx86或80x86是英代尔Intel首先开发制造的一种微处理器体系结构的泛称。
x86架构是重要地可变指令长度的CISC(复杂指令集电脑,Complex Instruction Set Computer)。
Intel Atom(中文:凌动,开发代号:Silverthorne)是Intel的一个超低电压处理器系列。处理器采用45纳米工艺制造,集成4700万个晶体管。L2缓存为512KB,支持SSE3指令集,和VT虚拟化技术(部份型号)。
现 时,Atom处理器系列有6个型号,全部都是属于Z500系列。它们分别是Z500、Z510、Z520、Z530、Z540和Z550。最低端的 Z500内核频率是800MHz,FSB则是400MHz。而最高速的Z550,内核频率则有2.0GHz,FSB则是533MHz。从Z520开始,所 有的处理器都支持超线程技术,但只增加了不到10%的耗电。双内核版本为N系列,依然采用945GC芯片组。双内核版本仍会支持超线程技术,所以系统会显 示出有4个逻辑处理器。这个版本的两个内核并非采用本地设计,只是简单的将两个单内核封装起来。

MIPS系列
MIPS 是世界上很流行的一种RISC处理器。MIPS的意思是“无内部互锁流水级的微处理器”(Microprocessor without interlocked piped stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领 导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算 机系统。
MIPS技术公司是美国著名的芯片设计公司,它采用精简指令系统计算结构(RISC)来设计芯片。和英特尔采用的复杂指令系统计算结构 (CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。MIPS是出现最早的商业RISC 架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。MIPS自己只进行CPU的设计,之后把设计方案授权给客户,使得客户 能够制造出高性能的CPU。
1984年,MIPS计算机公司成立,开始设计RISC处理器;
1986年推出R2000处理器。
1992年,SGI收购了MIPS计算机公司。
1988年推R3000处理器。
1991年推出第一款64位商用微处器R4000;之后又陆续推出R8000(于1994年)、R10000(于1996年)和R12000(于1997年)等型号。
1998年,MIPS脱离SGI,成为MIPS技术公司;随后,MIPS公司的战略发生变化,把重点放在嵌入式系统;1998年-MIPS科技股票在美国纳斯达克股票交易所公开上市。
1999 年,MIPS公司发布MIPS32和MIPS64架构标准,为未来MIPS处理器的开发奠定了基础。新的架构集成了所有原来NIPS指令集,并且增加了许 多更强大的功能。MIPS公司陆续开发了高性能、低功耗的32位处理器内核(core)MIPS324Kc与高性能64位处理器内核MIPS64 5Kc。
2000年,MIPS公司发布了针对MIPS32 4Kc的版本以及64位MIPS 64 20Kc处理器内核。  
2007年8月16日-MIPS科技宣布,中科院计算机研究所的龙芯中央处理器获得其处理器IP的全部专利和总线、指令集授权。
2007年12月20日-MIPS科技宣布,扬智科技已取得其针对先进多媒体所设计的可定制化系统单芯片(SoC)核心“MIPS32 24KEc Pro”授权。

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 处理器有广泛的实现范围,包括从诸如 Power4 那样的高端服务器 CPU 到嵌入式 CPU 市场(任天堂 Gamecube 使用了 PowerPC)。PowerPC 处理器有非常强的嵌入式表现,因为它具有优异的性能、较低的能量损耗以及较低的散热量。除了象串行和以太网控制器那样的集成 I/O,该嵌入式处理器与“台式机”CPU 存在非常显著的区别。

互补型的实时性(Real Time)较好的DSP架构
DSP 是微处理器的一种,这种微处理器具有极高的处理速度.因为应用这类处理器的场合要求具有很高的实时性(Real Time)。比如通过移动电话进行通话,如果处理速度不快就只能等待对方停止说话,这一方才能通话。如果双方同时通话,因为数字信号处理速度不够,就只能 关闭信号连接.在DSP出现之前数字信号处理只能依靠MPU(微处理器)来完成。但MPU较低的处理速度无法满足高速实时的要求。因此,直到70年代,有 人才提出了DSP的理论和算法基础。那时的DSP仅仅停留在教科书上,即便是研制出来的DSP系统也是由分立元件组成的,其应用领域仅局限於军事、航空航 天部门。90年代DSP发展最快,相继出现了第四代和第五代DSP器件。现在的DSP属於第五代产品,它与第四代相比,系统集成度更高,将DSP芯核及外 围元件综合集成在单一芯片上。这种集成度极高的DSP芯片不仅在通信、计算机领域大显身手,而且逐渐渗透到人们日常消费领域。

X86构架大家都比较熟悉了,下面这篇文章主要对ARM进行主要介绍:
首先说Snapdragon和Hummingbird Cortex A8都不是传统意义上的CPU(例如intel的i3,i5和i7),而是System on a Chip,CPU,GPU,通讯解码芯片等各种零件都集中到了一个芯片上,所以更像一个系统.

大多数公司都会从ARM Holdings这个开发ARM结构的公司买来执照,然后根据自己的需求来更改ARM原先的结构, Qualcomm高通的Snapdragon系列(高通称Snapdragon是一个平台),T.I.德州仪器的OMAP系列和Samsung三星的 S5PC系列都是这么做的.不同的是高通买来ARM技术之后并不是更改,而是在ARM的instruction set基础上开发自己的平台.Snapdragon主要使用ARMv7的instruction set,技术结构和ARM的第一个运用ARMv7 instruction set的Cortex A8很相近.德州仪器和三星都是在Cortex A8上更改一些东西,让它更符合自己的需要.这点和显卡很像,nVidia和ATi出一个显卡芯片和公版设计,有些有实力的公司会使用显卡芯片但是加上自 己的设计而不是公版设计. 如果说ARMv7 instruction set是显卡芯片的话,Snapdragon就是显卡公司使用显卡芯片+自己设计的显卡,而Cortex-A8则是使用显卡芯片+公版设计.

Snapdragon平台: 高通的做法无疑更加消耗时间和 金钱,但是这样做的结果使Snapdragon平台有潜力超过Cortex-A8.事实上,Scorpion (Snapdragon的CPU代号)比同样的Cortex-A8要快出5%.高通还集成了GPS芯片,通讯解码芯片(高通就是各种网络格式标准的设定 者)等等. 厂商会很喜欢这种做法,因为他们不需要加入这些必要的硬件,只需要一个Snapdragon就可以解决.这样生产的手机可以拥有更小的体积.

当然三星也不可能就这样认输,他们同样修改了Cortex-A8的逻辑芯片,修改范围在20%之间.三星估计经他们修改的逻辑芯片比公版的Cortex A8减少了20%-25%的逻辑程序去运行一项计算,从而使三星的芯片比公版的快上5-10%.三星称S5PV110 (i9000的CPU)比市面上现有的所有处理器都要快, 很显然是在说Snapdragon.(苹果的iPad和iPhone 4使用的A4芯片是三星生产的S5PC210,和S5PC110只是编号的不同).

Cortex-A9.硬件上专门为45纳米生产和多核处理器进行了优化,效率更高并且更加省电.这和下一代的 Snapdragon QSD8X72一样.ARM估计运算结构优化了25%,1Ghz的A9将比A8快出来很多.Cortex-A9还将支持真正的超限额运算(out-of- order instruction), 现有的Snapdragon部分支持的技术. 德州仪器估计将在2010年末或者2011年早期推出Cortex-A9结构的OMAP4440.

GPU也是越来越重要,很多操作系统例如iPhone OS,Android都使用了GPU绘图的用户界面,这也是包括电脑操作系统在内的大势所趋.Windows Vista/7的Aero界面,苹果的iOS Leopard界面都是使用这种技术.

不过SoC中的GPU.GPU评分有很大的偏见性,不同芯片的差距很有可能被系统不同,内存带宽限制,运行的测试软件等等拉大或者减小.

首先以iPhone 3GS来分析芯片频率和内存带宽对图形运算的影响. iPhone 3GS传言中使用了PowerVR (曾经的一个电脑显卡公司,被nVidia和ATi击败之后改行做游戏机和便携式设备的GPU)的SGX 535.iPhone中也有一个驱动文件叫 做SGX535(当然这不能作为唯一证据). iPhone 3GS的测算中它每秒输出7百万个三角形. 这和更慢的SGX520 @ 200Mhz或者双核的SGX 530 @ 100Mhz的理论数据是一样的. 三星S5PC100 (iPhone 3GS的CPU)文档说该处理器每秒可以输出1千万个三角形. 和SGX 535的理论值2千8百万三角形/每秒相差很远.但是这个理论值需要4.2GB/每秒的内存带宽. iPhone 3GS很有可能使用了32位,单通道LPDDR1内存, 理论上只有1.6GB/每秒的内存带宽,或者38%的SGX 535的需要.而38% * 28Mt/s=10.64Mt/s,和三星的文档不谋而合,这样算来真实的每秒7百万的三角形也很合理.当然这不是3GS就是使用了SGX 535的证明,只是说明加入更强的GPU并不能代表手机真实的图形能力. Moto的里程碑使用的SGX 530也有同样的问题, Moto选择了降频以省电.

回到i9000的问题上.三星称i9000的CPU可以每秒输出9千万个三角形,4倍于2千2百万的Snapdragon.但是我们来分析一下这种说法的 实际性. S5PC110使用了SGX 540芯片,通常的SGX 540 @ 200Mhz只能输出35Mt/s,和90Mt/s相去甚远.所以三星应该是通过超频(SGX 540正常值最高是400Mhz)或者是多核来解决. 根据报道S5PC110的GPU速度在 400Mhz+上来看三星8成是使用了多个SGX 540核心,因为需要超频到600Mhz和报道的400Mhz差太多了,广告效应来说三星肯定会公布显卡芯片的主频是600Mhz. 但是再次回到内存带宽上, Cortex-A8使用LPDDR2内存,但是它同样是单通道,内存带宽被限制到了4.2GB/s, SGX 540在4.2GB/s只能和SGX 535一样输出28Mt/s(但是它的填充率要比535高出很多), 那么输出三星宣称的90Mt/s需要的12.6GB/s内存带宽.只能分析三星只是用了理论数据或者采取了一些其他的方法来达到90Mt/s,究竟能不能 保持90Mt/s的速度还是很有疑问.

高通再次和竞争对手采用不同的技术.2008年高通收购了AMD的便携式芯片部门Imageon, Snapgragon使用了Imageon Z430(更名为Adreno 200,基本数据为输出22Mt/s,填充率133M Pixels/s对比同频率的SGX 535 28Mt/s, 400M Pixels/s和SGX540的35Mt/s, 1000M Pixels/s).新的45纳米QSD 8650使用了Adreno 210,加强了2D动画和Flash的硬件支持. 更新的双核QSD8X72系列将使用Adreno220.虽然有LPDDR2和双通道内存的支持,但是高通和三星一样要不是宣称理论数据(80Mt/s) 或者采用了一些其他的方法.

相比三星和高通不愿意说明自己的处理器图形能力究竟是书面的理论值而实际上不可能做到或者是另有一些作者想不到的技术, 另一大竞争对手德州仪器则很明白的宣布采用LPDDR2内存和双内存通道,芯片组为SGX 540 @ 400Mhz的Cortex-A9 OMAP4440系列将有2倍于现有的OMAP3系列的图形性能.这点还是很可能的,因为SGX540需要的8.5GB/s内存带宽可以通过LPDDR2 和双通道内存达到.

当然在Snapdragon还是65纳米技术的时候三星的45纳米S5PC110无疑需求的电量更小.但是他们两个马上就会被新的Cortex-A9淘 汰. 现下来说,S5PC110/A4无疑是手机处理器最强的,但是当45nm Snapdragon和OMAP4440出现之后它们会丢掉这个称号.

嵌入式cpu架构的更多相关文章

  1. 让你分分钟读懂CPU架构及芯片厂商

    CPU架构是CPU厂商给属于同一系列的CPU产品定的一个规范,主要目的是为了区分 不同类型CPU的重要标示.目前市面上的CPU指令集分类主要分有两大阵营,一个是intel.AMD为首的复杂指令集CPU ...

  2. Android app中的so库和CPU架构

    一.android目前有几种cpu架构? 早期的Android系统几乎只支持ARMv5的CPU架构,目前支持七种CPU架构:ARMv5,ARMv7 (从2010年起),x86 (从2011年起),MI ...

  3. 手机CPU架构体系分类及各大厂商

    手机cpu相关知识,这对于开发Android应用程序适应各个机型有一定的辅助作用 . 手机cpu架构体系分类 指令集可分为复杂指令集(CISC)和精简指令集(RISC)两部分,代表架构分别是x86.A ...

  4. CPU 架构 —— ARM 架构

    linux 系统查看 CPU 架构命令: $ arch armv7l $ uname -m armv7l # -m:--machine # 进一步查看处理器信息 $ cat /proc/cpuinfo ...

  5. CPU架构:CPU架构详细介绍

    1 概述 CPU架构是CPU商给CPU产品定的一个规范,主要目的是为了区分不同类型的CPU.目前市场上的CPU分类主要分有两大阵营,一个是intel.AMD为首的复杂指令集CPU,另一个是以IBM.A ...

  6. MySQL该使用哪种CPU架构服务器?

    1. 摘要 近期,阿里云推出基于 ARM 架构的 RDS MySQL 和 RDS PostgreSQL 实例,现处于邀测阶段,阿里云宣传 ARM 架构的亮点是:在价格下降13%的基础上,平均性能 AR ...

  7. ANDROID开发中注意不同手机CPU架构对SO文件的不同需求。

    如果没有对应于手机的SO文件,那么在调用第三方SDK时,会经常发生莫明其妙的错误.所以了解你调式或开发的目的手机CPU架构是很有必要的.

  8. ios framework 分离与合并多种CPU架构,分离与合并模拟器与真机

    ios  framework 分离与合并多种CPU架构,分离与合并模拟器与真机 如果你所用的framework支持真机和模拟器多种CPU架构,而你需要的是其中的一种或几种,那么可以可以从framewo ...

  9. 几种CPU架构

    原文链接:http://blog.csdn.net/wyzxg/article/details/5027738 这几天在下载RPM包的时候,总会看见x86,x86-64,IA64,i386,i586等 ...

随机推荐

  1. luogu愚人节比赛划水记

    先放链接:愚人节比赛 说好的 不毒瘤 呢?题目都太神奇了吧! 管理员的脑洞orz T1 这个可以说是蒙数据蒙出来的,直接输出"0",AC T2 本机房dalao成功发现" ...

  2. GloVe:另一种Word Embedding方法

    若想深层地理解GloVe和本文,最好了解SVD, word2vec(skip-gram为主)的相关知识.若仅寻求一种新的word embedding方法,可以不必了解以上前置知识. 一言以蔽之,Glo ...

  3. Ukulele 原来你也在这里

  4. Linux rm删除文件未释放空间问题分析

    问题描述: 在自己的虚拟机上做实验时出现空间不足情况,检查发现之前的kafka集群测试日志在几天写了 25G,于是进入 /data/kafka01/logs 目录执行 “rm -rf *” 删除所有测 ...

  5. datetime模块,random模块

    6.10自我总结 1.datetime模块(用于修改日期) import datetime print(datetime.datetime.now(),type(datetime.datetime.n ...

  6. 项目之socket

    客户端socket 客户端套接字完成的任务很统一,发送请求,接收请求结果 可以封装成一个方法 使用的tcp协议存在粘包问题,故需要自定义报头 import json import struct #项目 ...

  7. Lex与Yacc学习(八)之变量和有类型的标记(扩展计算器)

    变量和有类型的标记 下一步扩展计算器来处理具有单个字母名字的变量,因为只有26个字母 (目前只关心小写字母),所以我们能在26个条目的数组(称它为vbltable)中存储变量. 为了使得计算器更加有用 ...

  8. PAT Basic 1025

    1025 反转链表 给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转.例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4:如果K为4,则输出应该为4→3→2 ...

  9. POJ 1160 四边形不等式优化DP Post Office

    d(i, j)表示用i个邮局覆盖前j个村庄所需的最小花费 则有状态转移方程:d(i, j) = min{ d(i-1, k) + w(k+1, j) } 其中w(i, j)的值是可以预处理出来的. 下 ...

  10. vscode python code-runner 中文乱码解决

    https://www.cnblogs.com/zhaoshizi/p/9050768.html 这里我使用的是第二种方法