x86或将逐渐被ARM替代

 x86概述

 
X86是由Intel推出的一种复杂指令集,用于控制芯片的运行的程序,现在X86已经广泛运用到了家用PC(机箱+xx主板+xx电源+xx处理器+(光驱选装)的领域。
  
x86架构于1978年推出的Intel 8086中央处理器中首度出现,它是从Intel 8008处理器中发展而来的,而8008则是发展自Intel 4004的。8086在三年后为IBM PC所选用,之后x86便成为了个人计算机的标准平台,成为了历来最成功的CPU架构。
  
x86架构是重要地可变指令长度的CISC(复杂指令集计算机,Complex InstrucTIon Set Computer)。字组(word, 4字节)长度的存储器访问允许不对齐存储器地址,字组是以低位字节在前的顺序储存在存储器中。向前兼容性一直都是在x86架构的发展背后一股驱动力量(设计的需要决定了这项因素而常常导致批评,尤其是来自对手处理器的拥护者和理论界,他们对于一个被广泛认为是是落后设计的架构的持续成功感到不解)。但在较新的微架构中,x86处理器会把x86指令转换为更像RISC的微指令再予执行,从而获得可与RISC比拟的超标量性能,而仍然保持向前兼容。x86架构的处理器一共有四种执行模式,分别是真实模式,保护模式,系统管理模式以及虚拟V86模式。
 
ARM处理器是Acorn计算机有限公司面向低预算市场设计的第一款RISC微处理器。更早称作Acorn RISC Machine。ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。
 
ARM架构
  
下图所示的是ARM构架图。它由32位ALU、若干个32位通用寄存器以及状态寄存器、32&TImes;8位乘法器、32&TImes;32位桶形移位寄存器、指令译码以及控制逻辑、指令流水线和数据/地址寄存器组成。
x86或将逐渐被ARM替代
1.ALU:它有两个操作数锁存器、加法器、逻辑功能、结果以及零检测逻辑构成。
  
2.桶形移位寄存器:ARM采用了32&TImes;32位的桶形移位寄存器,这样可以使在左移/右移n位、环移n位和算术右移n位等都可以一次完成。
  
3.高速乘法器:乘法器一般采用“加一移位”的方法来实现乘法。ARM为了提高运算速度,则采用两位乘法的方法,根据乘数的2位来实现“加一移位”运算;ARM高速乘法器采用32&TImes;8位的结构,这样,可以降低集成度(其相应芯片面积不到并行乘法器的1/3)。
  
4.浮点部件:浮点部件是作为选件供ARM构架使用。FPA10浮点加速器是作为协处理方式与ARM相连,并通过协处理指令的解释来执行。
  
5.控制器:ARM的控制器采用的是硬接线的可编程逻辑阵列PLA。
  
6.寄存器
  
除了用户模式之外的其他6种处理器模式称为特权模式(PrivilegedModes)。在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切换。其中,除系统模式外,其他5种特权模式又称为异常模式。
  
处理器模式可以通过软件控制进行切换,也可以通过外部中断或异常处理过程进行切换。大多数的用户程序运行在用户模式下,这时,应用程序不能够访问一些受操作系统保护的系统资源,应用程序也不能直接进行处理器模式的切换。当需要进行处理器模式的切换时,应用程序可以产生异常处理,在异常处理过程中进行模式的切换。这种体系结构可以使操作系统控制整个系统的资源。
  
当应用程序发生异常中断时,处理器进入相应的异常模式。在每一种异常模式中都有一组寄存器,供相应的异常处理程序使用,这样就可以保证在进入异常模式时,用户模式下的寄存器(保证了程序运行状态)不被破坏。
  
系统模式并不是通过异常过程进入的,它和用户模式具有完全一样的寄存器。但是系统模式属于特权模式,可以访问所有的系统资源,也可以直接进行处理器模式的切换。它主要供操作系统任务使用。通常操作系统的任务需要访问所有的系统资源,同时该任务仍然使用用户模式下的寄存器组,而不是使用异常模式下相应的寄存器组,这样可以保证当异常中断发生时任务状态不被破坏。
  
X86架构与ARM架构区别
  
1、性能
  
X86架构的工业电脑比ARM架构的工业电脑在性能方面要快得多、强得多。ARM的优势在于效率,ARM采用RISC流水线指令集,在完成综合性工作处于劣势,而在任务相对固定的应用场合其优势就能发挥得淋漓尽致。
  
2、扩展能力
  
X86架构的工业电脑采用“桥”的方式与扩展设备(如硬盘、内存等)进行连接,且X86架构的工业电脑能很容易进行性能扩展,如增加内存、硬盘等。
  
ARM架构的工业电脑是通过专用的数据接口使CPU与数据存储设备进行连接,所以ARM的存储、内存等性能扩展难以进行(一般在产品设计时已经定好其内存及数据存储的容量),所以采用ARM架构的工业电脑,一般不考虑扩展。
  
3、操作系统的兼容性
  
几乎所有X86硬件平台都可以直接使用微软的视窗系统及现在流行的几乎所有工具软件,所以X86系统在兼容性方面具有无可比拟的优势。
  
ARM几乎都采用Linux的操作系统,而且几乎所有的硬件系统都要单独构建自己的系统,与其他系统不能兼容,这也导致其应用软件不能方便移植,也制约了ARM的发展和应用。Android系统开发后,统一了ARM架构电脑的操作系统,使新推出基于ARM架构的电脑系统有了统一的、开放式的、免费的操作系统,为ARM的发展提供了强大的支持和动力。
  
4、软件开发的方便性及可使用工具的多样性
  
在软件开发方面, X86架构比ARM架构更容易、更简单、实际成本也更低,同时更容易找到第三方软件(免去自己开发的时间和成本),而且软件移植更容易。
  
5、功耗
  
在服务器、工作站以及其他高性能运算等应用方面,不考虑功耗和使用环境等条件,X86占了优绝对优势;但受功耗、环境等条件制约且工作任务固定的情况下ARM就占有很大的优势。
  
医疗设备逐渐从X86转到ARM平台主要原因是什么
  
医疗器械开发中,ARM替换x86很多场合不是性能问题,而是驱动软件支持问题,其中标准A4纸打印机即是最大的拦路虎之一,而致远电子ARM9、Cortex-A8、Cortex-A9核心板、工控板全线支持USB接口A4纸打印机,拔除拦路虎。
  
ARM与x86在性能、功耗、价格、体积等方面各有所长,2011年之前,公众对于ARM与x86比较主要集中在各自优劣势的分析上。而2011年之后,舆论则开始习惯用“战争”来形容ARM与x86两个阵营的关系。
x86或将逐渐被ARM替代
自“战争”打响以来,ARM向x86传统应用领域的扩张正逐步深入,而x86向ARM应用领域的渗透却收效甚微(基于x86阵营主力Intel的盈利模式,有网友评论:这不是一个技术问题,而是一个商业问题)。
  
在工业与医疗领域,低端电子产品多采用ARM核的微控制器,高端应用则属于x86的传统势力范围(如ATM、PIS、医疗影像系统、生化分析、血液分析)。x86对于ARM的优势,在诸多应用场合依靠的是配套厂商在软件、驱动上的支持(如常规的USB接口打印机),而在性能、功耗、成本、软件设计复杂度上皆可由ARM取代。
  
以医疗行业中大型生化分析仪、大型血液分析仪、健康管理一体机等为例,A4纸打印机为标准配件,但基本所有打印机厂商仅支持Windows系统驱动或桌面linux系统驱动,对运行于ARM处理器上WinCE系统或嵌入式linux系统均不支持,仅打印机一项即限制了医疗器械厂家使用ARM处理器开发这几类产品的意愿。
x86或将逐渐被ARM替代