ARM与X86架构的对决

CISC(复杂指令集计算机)和RISC(精简指令集计算机)是当前CPU的两种架构。它们的区别在于不同的CPU设计理念和方法。早期的CPU全部是CISC架构,它的设计目的是 CISC要用最少的机器语言指令来完成所需的计算任务。RISC和CISC是设计制造微处理器的两种典型技术,虽然它们都是试图在体系结构、操作运行、软件硬件、编译时间和运行时间等诸多因素中做出某种平衡,以求达到高效的目的,但采用的方法不同,因此,在很多方面差异很大.

x86架构采用CISC,而ARM采用RISC。

ARM成立于1991年,是一家出售IP(技术知识产权)的公司,所谓的技术知识产权,就有点像是卖房屋的结构设计图,至于要怎修改,哪边开窗户,以及要怎加盖其它的花园,就看买了设计图的厂商自己决定。

而ARM的架构是采用RISC架构,如同它的名称一样,Advanced RISC Machines,RISC架构在当初的PC架构争霸战虽然败给Intel所主导的x86处理器架构,却默默在另外的领域成长壮大;小从硬盘转速控制、电信基地台的计算、汽车喷射引擎的控制、音响系统、相机引擎,大到电动机具的控制等等,都能够看见采用ARM授权架构处理器的身影。

而有了设计图,当然还要有把设计图实现的厂商,而这些就是ARM架构的授权客户群。包括: 
TI OMAP、Qualcomm Snapdragon、三星的蜂鸟(Hummingbird)、猎户座(Orion)、飞思卡尔(Freescale)的i.MX,或是ST-Ericsson的应用处理器、Freescale、联发科、Telechip、新岸线等。

X86是英特尔Intel首先开发制造的一种微处理器体系结构的泛称,包括Intel8086、80186、80286、80386以及80486以86结尾系列,英特尔统治整个CPU产业链长达数十年。但是,Intel以增加处理器本身复杂度作为代价,去换取更高的性能,但集成的指令集数量越来越多,给硬件带来的负荷也就越来越大,无形中增加了功耗和设计难度。

ARM(Advanced RISC Machines)公司是苹果、Acorn、VLSI、Technology等公司的合资企业。ARM采用将芯片的设计方案授权(licensing)给其他公司生产的模式,在世界范围结成了超过100个的合作伙伴(Partners),将封闭设计的Intel公司变成全民公敌。ARM处理器非常适用于移动通信领域,具有低成本、高性能和低耗电的特性,ARM的高性价比和低耗能在移动市场比英特尔更具优势。

ARM的架构相较于x86有哪些特点?相较于基于CISC的x86架构处理器,由于为了满足电脑产业发展而不断加入指令集,使得处理器日益庞大,但每个指令集用到的频率也越差越大,许多指令到后来已经相当少用,甚至是可以被新的指令所取代。而ARM架构则大幅简化架构,仅保留所需要的指令,可以让整个处理器更为简化,拥有小体积、高效能的特性。

另外,ARM的架构老早就已经作到高密度整合,由于ARM授权的弹性以及核心架构单纯,ARM处理器架构可以很容易与其它专职的特殊核心,像是GPU、多媒体译码核心、基频调制解调器、I/O控制等架构整合,透过SoC(System On a Chip,系统单芯片)的方式,一颗小小的ARM架构应用处理器,完成近年x86架构处理器积极跨足的单芯片设计,并且透过各种不同的核心分工各司其职,ARM架构应用处理器的核心负担相较传统x86处理器低上许多,并且因为早前应用处理器的需求就是以低功耗为重点,即便如今效能不断提升,仍是以保有省电的特性为前提发展。

ARM架构的另一个优点,就是自由性,只要像ARM买下核心授权,就可以与其它IP公司的方案以及这家授权客户本身的优势技术整合,虽同为同一世代的ARM核心架构,即便频率相同,结果也不同。不过这也使得ARM应用处理器光从基本规格是不一定能看出操作效能的,例如同样隶属高通Snapdragon,频率1GHz的第一世代旗舰QSD8x50甚至不敌频率仅800MHz的第二世代MSM7230。

ARM的架构之所以在智能手机以及平板能够迅速窜红,苹果iOS装置可说是大功臣,在苹果之前,智能手机在市场上一直载浮载沉,虽然有着号称智能手机平台市占率第一的Nokia Symbian,以及Windows Mobile、Palm OS、BlackBerry等系统,不过当时的环境在缺乏行动网络为后盾,在线商店的概念也还未发展成型;一直到苹果以iPhone打响新世代智能手机第一炮后,市场才真正体认到智能手机原来可以是这么容易使用。

iPhone的出现也间接带起市场对于ARM架构应用处理器的需求,不过光是苹果也无法带起市场对于ARM处理器的需求,如WM(WP7)手机与Symbian也纷纷加入新一代智能手机战局,但是真正成为关键的,是Google Android宣布参战后,其它手机厂商取得一个相较过去成熟的通用智能手机平台,而各厂商又为了进行产品差异化,开始针对ARM架构应用处理器的效能以及硬件支持要求,使得过去发展缓速的ARM架构一下子热络起来,也让ARM架构一夕之间成为火热话题。

GOOGLE的Android系统和苹果的IPAD、IPHONE推出后,ARM架构的电脑系统(特别是在终端方面应用)受到用户的广泛支持和追捧,ARM+Android成为IT、通信领域最热门的话题,众多芯片厂商纷纷推出具有各种独特应用功能基于ARM结构开发的产品,近期最新形成的“异构概念”更成为电脑今后发展主要方向。在IT行业推崇了20多年的“性价比“概念受到根本的动摇和冲击,“适用的才是最好的”已经被越来越多的用户接受。

我们就ARM架构的系统与X86架构系统的特性进行一个系统分析,方便用户在选择系统时进行理性、合理的比价分析。

一、性能:

X86结构的电脑无论如何都比ARM结构的系统在性能方面要快得多、强得多。X86的CPU随便就是1G以上、双核、四核大行其道,通常使用45nm(甚至更高级)制程的工艺进行生产;而ARM方面:CPU通常是几百兆,最近才出现1G左右的CPU,制程通常使用不到65nm制程的工艺,可以说在性能和生产工艺方面ARM根本不是X86结构系统的对手。

但ARM的优势不在于性能强大而在于效率,ARM采用RISC流水线指令集,在完成综合性工作方面根本就处于劣势,而在一些任务相对固定的应用场合其优势就能发挥得淋漓尽致。

二、扩展能力

X86结构的电脑采用“桥”的方式与扩展设备(如:硬盘、内存等)进行连接,而且x86结构的电脑出现了近30年,其配套扩展的设备种类多、价格也比较便宜,所以x86结构的电脑能很容易进行性能扩展,如增加内存、硬盘等。

ARM结构的电脑是通过专用的数据接口使CPU与数据存储设备进行连接,所以ARM的存储、内存等性能扩展难以进行(一般在产品设计时已经定好其内存及数据存储的容量),所以采用ARM结构的系统,一般不考虑扩展。基本奉行“够用就好”的原则。

三、操作系统的兼容性

X86系统由微软及Intel构建的Wintel联盟一统天下,垄断了个人电脑操作系统近30年,形成巨大的用户群,也深深固化了众多用户的使用习惯,同时x86系统在硬件和软件开发方面已经形成统一的标准,几乎所有x86硬件平台都可以直接使用微软的视窗系统及现在流行的几乎所有工具软件,所以x86系统在兼容性方面具有无可比拟的优势。

ARM系统几乎都采用Linux的操作系统,而且几乎所有的硬件系统都要单独构建自己的系统,与其他系统不能兼容,这也导致其应用软件不能方便移植,这一点一直严重制约了ARM系统的发展和应用。GOOGLE开发了开放式的Android系统后,统一了ARM结构电脑的操作系统,使新推出基于ARM结构的电脑系统有了统一的、开放式的、免费的操作系统,为ARM的发展提供了强大的支持和动力。

四、软件开发的方便性及可使用工具的多样性

X86结构的系统推出已经近30年,在此期间,x86电脑经过飞速发展的黄金时期,用户的应用、软件配套、软件开发工具的配套及兼容等工作,已经到达非常成熟甚至可以说是完美的境界。所以使用X86电脑系统不仅有大量的第三方软件可供选择,也有大量的软件编程工具可以帮助您完成您所希望完成的工作。

Arm结构的电脑系统因为硬件性能的制约、操作系统的精简、以及系统兼容等问题的制约,造成Arm结构的电脑系统不可能像X86电脑系统那样有众多的编程工具和第三方软件可供选择及使用,ARM的编程语言大多采用C和JAVA。

对这一点的比较,更直接的结论是:基于x86结构电脑系统平台开发软件比arm结构系统更容易、更简单、实际成本也更低,同时更容易找到第三方软件(免去自己开发的时间和成本),而且软件移植更容易。

从以上对比分析,给了我们的一个很清晰的感觉,ARM和X86结构的电脑根本就无法对比,ARM根本就不是X86电脑的的对手。是的,如果只考虑上述几个方面的要数,ARM确实无法与X86电脑竞争,甚至连比较的资格都没有。但是近1、2年,ARM的产品在终端应用特别是手持终端应用飞速发展(如:智能手机、平板电脑等),其销售数量已经远远超出x86结构的电脑销售数量,可见ARM是具有其与X86结构电脑不可对比的优势。该优势就是:功耗.

五、功耗

X86电脑因考虑要适应各种应用的需求,其发展思路是:性能+速度。20多年来x86电脑的速度从原来8088的几M发展到现在随便就是几G,而且还是几核,其速度和性能已经提升了千、万倍,技术进步使x86电脑成为大众生活中不可缺少的一部分。但是x86电脑发展的方向和模式,使其功耗一直居高不下,一台电脑随便就是几百瓦,即使是号称低功耗节能的手提电脑或上网本,也有十几、二十多瓦的功耗,这与ARM结构的电脑就无法相比。

ARM的设计及发展思路是:满足某个特殊方面的应用即可,在某一专项领域是最强的,(哪怕在其他方面一无是处),这样Arm以其不是最强的技术,同样也不是很高级制程的制造工艺,生产出性能不是很强的电脑系统,但在某个专业应用方面则是最好的,特别是在众多终端应用,尤其在移动终端应用上占有绝对优势的统治地位,这个原因就是:功耗。

高功耗导致了一系列X86系统无法解决的问题出现:系统的续航能力弱、体积无法缩小、稳定性差、对使用环境要求高等问题。从这里我们可以看到x86系统与ARM系统是在两个完全不同领域方面的应用,他们之间根本不存在替换性,在服务器、工作站以及其他高性能运算等应用方面,是可以不考虑功耗和使用环境等条件时,X86系统占了优绝对优势;但受功耗、环境等条件制约且工作任务固定的情况下ARM就占有很大的优势,在手持式移动终端领域,X86的功耗更使他英雄毫无用武之地。

但在很多的应用终端领域,现正成为两大阵营争夺的重点,ARM阵营努力增加其性能和系统(特别是操作系统)的通用性,蚕食x86系统的部分终端应用市场;X86阵营努力降低功耗保住其市场,同时侵入手持移动终端市场。

我们今天讨论的重点就是在两大阵营都能可以覆盖的终端应用领域进行对比、分析。这类型的应用一定是终端应用,通常有下面几个特征:

  1. 系统的工作性质比较固定(如:POS、ATM、车载电脑系统、多媒体广告播放系统、视频监控系统,以及众多的信息接收、控制系统和专业的工控系统等等);
  2. 应用环境比较恶劣,如:温度变化很大,高温超过40度,低温达零下20度;多尘、潮湿等;
  3. 有一定的应用数量,但数量不是很大。

这部分的应用领域传统上是由X86结构的低功耗工控机(系统)实现的,但近几年ARM系统的飞速发展,特别是Android操作系统出现后,ARM+Android大有取代x86系统占领(低功耗)终端应用领域的趋势。我们在考虑这种应用对比时根据ARM和X86的特性对比主要还考虑以下以及因数:

1、性能:

如果ARM系统的性能能满足应用需求时,建议尽可能可虑采用ARM结构的产品,否则只能考虑X86的产品。注意在这里我们要强调的是:不要讲两个系统的绝对性能进行比较,而是以能否您的应用特点为标准进行分析。

2、应用数量:

如果您的应用数量太少,您可能根本不值得独立开发一套应用系统,但如果您的应用数量达到几百甚至过千时,您是值得考虑自己开发一套新的系统的。因为:Arm的开发成本和制造成本相对比较低,如果有几百个以上终端应用,应该可以分摊掉开发成本。

如果选用X86结构的系统,根本不应该考虑单独开发一套专用系统(因为开发成本太高,可能是ARM的10倍),而是在市场上筛选出最接近您需求的产品,以避免高昂的硬件开发成本,和今后的制造成本(如果批次生产的数量不够,排产成本也会很高)。

3、操作系统

ARM的操作系统通常是单独建立一个自己的Linux系统,且系统与系统间不能兼容,这严重制约了Arm的应用扩展,但Android出现后,系统兼容的屏障正逐步消失,促进了系统以及应用软件的兼容,大大扩大了ARM应用软件的的数量同时扩大了其应用空间。

4、功耗以及功耗延伸的系列问题

ARM的优势是功耗低,其实低功耗还意味着:

1)稳定性高:因为功耗越高电子元器件的稳定性和可靠性越差,对低功耗的产品只要选择好外围元件的品质,系统的稳定性不会有太大问题;

2)散热成本低和可以考虑更小的产品体积:对高功耗的产品不可避免要考虑散热问题,而散热设备(或器件)的存在,有制约了产品的体积,对某些场合的应用构成致命的制约。但ARM的功耗<1W,完全不用考虑散热问题。

3)功耗低对供电电源的要求低:几乎所有电子产品,(在同等条件下)功耗越高对电源的要求越高,电源的成本就越高。

4)功耗低电池的续航时间长,这不作详尽解释。

5)功耗低对抗环境伤害的能力强:低功耗产品因为不用考虑散热,可以将产品密封保护起来,但高功耗产品必须散热,甚至需要风扇帮助散热,这样必然使很多的元件和线路裸露在空气中,被空气中的尘埃、湿气、酸碱物质等腐蚀。

5、软件开发成本问题

Arm的操作系统很小(精简)不可能带很多工具,通常基于Arm的软件大多用C或JAVA开发,其成本会比基于X86系统的高。而且对大多数ARM而言,因其操作系统不一样,软件业不能在两个系统中自由互换使用,但一般来说:用C或JAVA编写的软件只需在ARM平台的操作系统中编译一下就可以移植过去。

但对Android系统开发的软件,只要能在某台Arm设备中运行,就可以在另一台基于同样系统的设备中运行。

6、硬件的开发成本

ARM实际上在CPU芯片中已经整合了几乎所有功能,几乎所有线路按原理图直接拉出就可以了,需要扩展的部分一般不多,所以其开发成本会比较低,通常三五万就可以了。

但X86的外围线路很多,需要相当经验的工程师,而且还有BIOS等设计,所以X86主板的设计费用会比较高,通常要二三十万。

7、硬件的制造及应用成本

无论Arm或X86主板其制造成本都是由元件和加工费构成,通常一片ARM的主板价格与一片X86主板的价格差不多,但ARM是一片可以独立使用的产品,但x86主板通常还要加上:CPU、内存、硬盘甚至还有显卡。

另外X86还要配上一个电源,这个电源比ARM得电源要贵很多。

所以:明显X86在硬件方面的应用成本比ARM高得多。

总结上面对比,X86系统和ARM系统应该是两个完全不同领域的应用,如果功能单一又受到环境制约的应用,如:POS、ATM、多媒体广告机(现已经有ARM+DSP的产品)、车载电脑终端等应用,应该首先考虑ARM方案,ARM方案与X86相比,其功耗和成本占有很大优势。

时间: 2024-09-21 17:21:01

ARM与X86架构的对决的相关文章

CPU架构解析:ARM和x86大比拼

信不信,随便逮住一个人问他知不知道CPU,我想他的答案一定会是肯定的,但是如果你再问他知道ARM和X86架构么?这两者的区别又是什么?绝大多数的人肯定是一脸懵逼.今天小编就带你深入了解CPU的这两大架构:ARM和X86.以后出去装X就靠它了! 重温下CPU是什么鬼 中央处理单元(CPU)主要由运算器.控制器.寄存器三部分组成,从字面意思看运算器就是起着运算的作用,控制器就是负责发出CPU每条指令所需要的信息,寄存器就是保存运算或者指令的一些临时文件,这样可以保证更高的速度. CPU有着处理指令.

嵌入式X86、ARM、MIPS架构对比 arm芯片将成主流?

在纵观市面上包括商显终端在内的主流物联网设备所采用的芯片时,你会发现ARM已经雄霸半壁江山!ARM的合作伙伴们基于ARM的设计向移动和嵌入式市场的出货量已经达500亿片! 591abb8934313.jpg 对比全球最主要的三大架构X86.ARM.MIPS架构分析, ARM芯片会成为物联网行业的主流? 指令集可分为复杂指令集(CISC)和精简指令集(RISC)两部分,代表架构分别是x86.ARM和MIPS.ARM.X86.MIPS这三大架构大家都不陌生, Intel因为普及于台式机和服务器而被人

x86架构能拯救微软Win10 Mobile移动生态吗?

一直以来,关于Windows Phone会支持x86架构处理器的传言没有停息,现在这个传言已经在Win10 Mobile上成为了事实,微软硬件开发中心的一个页面显示Windows 10 Mobile支持x86架构处理器,这一消息也得到了微软一位有关发言人的证实. 作为PC市场的盟友,微软和英特尔在移动领域中的发展都不算顺利.市面上搭载英特尔处理的手机屈指可数,而Windows Phone同样可以说萎靡不振.那么,如果Windows 10 Mobile有了英特尔x86架构处理器的支持后,微软移动生

《Raspberry Pi用户指南》——第1篇 连接树莓派 第1章 初识树莓派 1.1 ARM vs. x86

第1篇 连接树莓派 第1章 初识树莓派 第2章 Linux系统管理 第3章 故障排除 第4章 网络配置 第5章 分区管理 第6章 配置你的树莓派 第1章 初识树莓派 树莓派(Raspberry Pi)主板可以说是个"微型"的奇迹,它和一张信用卡的大小差不多,却拥有非常强的计算能力.在首次利用树莓派开发出令人惊奇的应用前,读者还需要了解一些事情. 1.1 ARM vs. x86 树莓派系统的核心部分使用的是一个称之为Broadcom BCM2835的片上系统(System-on-chip

《Raspberry Pi用户指南》——1.1 ARM vs. x86

1.1 ARM vs. x86 Raspberry Pi用户指南树莓派系统的核心部分使用的是一个称之为Broadcom BCM2835的片上系统(System-on-chip,SoC).这是一种多媒体处理器系统,意味着绝大部分系统组件,包括中央处理单元.图形处理单元以及音频和通信硬件,都可以集成在一块芯片上,并放置于主板中央的一块256MB内存芯片的下面(如图1-1所示). Broadcom BCM2835片上系统和我们平常所使用的普通台式机或笔记本电脑不仅在处理器的设计工艺上有所不同,同时,它

超轻翻转屏!X86架构联想Yoga 11s首曝

半年前,联想推出了IdeaPad Yoga 13正式拉开了超极本2.0的序幕,之后的一段时间里,变形超极本呈现出爆发增长的态势,现如今,各大厂商都在模糊超极本与平板电脑之间的界限,却也有发出了属于自己的声张,每个厂商都有自己对于变形超极本的认知,这一点非常难得,而时隔半年之后,又是联想Yoga,在Yoga 13奠定了江湖地位之后推出的Yoga 11并没有引起太大反响,大家反而把目光头像了Yoga 11s的身上. 联想Yoga 11s和Yoga 11比起来,最大的区别在于硬件架构上,后者使用的AR

英特尔将和中国运营商明年推出首款X86架构手机

8月24日消息,英特尔相关人员今日向媒体透露,英特尔在手机领域和中国运营商正在密切合作,计划推出首款X86架构的手机,推出时间将是明年. 英特尔在手机领域的合作更多的是其MeeGo操作系统的推广.英特尔软件与服务事业部合作伙伴部门应用http://www.aliyun.com/zixun/aggregation/12867.html">技术支持团队经理李眈透露了上述X86架构手机的消息. 和PC.上网本采用X86架构不同,手机一直采用的硬件架构为ARM架构,这和前者能耗较大有一定的关系.

AMD放弃X86架构开发承诺 将开放处理器指令集

北京时间2月6日,据国外媒体报道,日前AMD公司放弃了它对x86构架的开发承诺,宣布了一项新的设计战略,要在未来的AMD芯片中为ARM技术的使用铺平道路. AMD称公司将允许在未来的处理器中集成第三方公司的智慧,作为为消费者量身定做芯片计划的一部分.如果消费者需要包括x86在内的其他架构,AMD将把自己的设计理念与第三方公司结合来满足消费者的需求.新的AMD产品将紧密迎合消费者的需求.虽然声明中没有直接指出将使用ARM技术,但公司对于使用其他指令集架构呈开放态度,包括ARM,MIPS和Power

浅析x86架构中cache的组织结构

cache通常被翻译为高速缓冲存储器(以下简称"高速缓存"),虽然现在cache的含义已经不单单指CPU和主存储器(也就是通常所谓的内存)之间的高速缓存了,但在本文中所谓的cache依旧特指CPU和主存储器之间的高速缓存. 这篇文章诞生的源头是我之前在stackoverflow看到的一个问题: Why is transposing a matrix of 512×512 much slower than transposing a matrix of 513×513 ? 这个问题虽然国