新闻动态

家具五金 > 新闻动态 > 产品知识 >

为啥arm架构比x86 x64省电?

发布时间:2024-03-02 17:27来源:本站点击:标签: x64 X86 省电 问题 这个 可以 架构 arm 为啥

  ·

  这个问题可以扩展为:为什么arm架构的芯片都那么省电!

  最初的ARM架构被设计成即使是一个相对简单的指令译码器,也能以架构允许的最大速度运行。

  后来的ARM版本有稍微复杂一点的指令解码逻辑,但是每条指令都是一个或两个单词长。

  在x86架构上,指令可以是1字节长,也可以是14字节长。

  在设计最初的x86架构时,指令是按顺序执行的,而且每个指令都需要多个周期才能执行。

  如果执行一条指令需要三个周期,那么找到下一条指令的起始点也需要三个周期。

  另一方面,现在人们很难忍受x86代码运行得那么慢了。

  20年前,你可能会认为复杂的指令解码会限制x86的速度,但事实并非如此。

  x86架构要求英特尔和其他芯片制造商,包括一些相当复杂的转换和缓存逻辑,以便一段代码第一次运行时,就转换成易于解码的形式。

  如果代码再次运行,则可以跳过转换。可纵然是非常快的芯片,这些逻辑也消耗能量。

  相对而言,许多低功耗ARM芯片的前端逻辑要少得多。

  x86有这么缓存转换性能,arm比不上;可是,没有了额外技能加身的x86,比arm要逊色的多。

  在低功耗的应用中,ARM处理器一直是首选,现在仍然是首选。

  比较功耗并不是一件简单的事情。操作系统、RAM大小和类型、闪存和使用的接口等方面需要与处理器的影响分开。

  然而,一般的规则是,ARM在关闭处理器和等待唤醒的模式和可能性方面非常强大。这种空闲模式是指操作系统正在运行,但只等待输入(例如来自鼠标、键盘或应用程序的输入)。

  X86处理器的预期功耗大约为1瓦特。在i.MX6处理器的功耗将是这个数字的一半。

  此外,ARM高端部分得益于少数状态/模式,这些 状态/模式 (states/modes)的功耗低至100mW,而不牺牲合理快速唤醒的可能性。

  低功耗有许多优点。

  手持式和电池供电的产品,将受益于增加电池寿命。做产品设计则可以使用更小的电池。由于需要更小的冷却装置,材料清单、BOM成本和产品尺寸可能会进一步减少。

  天下武功,唯快不破!小而快而全的arm架构普及也得益于其自身设计上的权衡。

  ·

  应用场景和商业目的决定了各自产品的特点:ARM面向移动设备,从来只是设计低功耗处理器;Intel面向桌面和服务器,向来关注点在超高性能。

  

为啥arm架构比x86 x64省电?

  商业目的和芯片的架构设计决定了ARM比x86的处理器,在能耗处理上更优。

  ARM和x86,通常都是指CPU的架构。

  CPU(Central Processing Unit,缩写:CPU),即中央处理器,是计算机(手机也可以理解为计算机)的核心部件,功能主要是解释计算机指令以及处理计算机软件中的数据。1970年以前,中央处理器由多个独立单元构成,后来发展成为由集成电路制造的中央处理器,这些高度收缩的组件就是所谓的微处理器,主要由运算器、控制器、寄存器三部分组成。

  CPU的主要运作原理,不论采用什么架构,都遵循冯·诺伊曼结构设计。程序以一系列数字储存在计算机存储器中,CPU的运作原理可分为四个阶段:提取、解码、执行和写回。

  由于CPU发展经历了太多的阶段,太多的架构(ARM、X86、MIPS、PowerPC等),彼此差距都非常的大,但是从逻辑的角度可以分为两大类:复杂指令集(CISC)和精简指令集(RISC)。

  说起ARM有两个含义:ARM公司和ARM架构处理器,ARM公司是一家英国的公司(已被软银收购),是全球领先的半导体知识产权(IP)提供商——只卖IP,不卖芯片。所以ARM(Advanced RISC Machine)架构处理器是ARM公司设计的处理器及附带的相关技术及软件。

  ARM通常是用于为移动设备构建CPU的体系结构,所以它的特点是性价比高、耗能低。基于ARM(32位)的处理器采用RISC体系结构。大多数指令都很简单,并在一个时钟周期内执行。

  

为啥arm架构比x86 x64省电?

  业务的发展对CPU的处理能力提出了挑战,为了提升性能,CPU的地址空间从32扩展到了64位,这样可以提升性能,用以保存和处理更多的信息。ARM64只是对支持64位处理的ARM体系结构的扩展或发展。

  ARMv8-A于2011年10月发布,代表了ARM体系结构的根本变化。它增加了可选的64位体系结构,苹果公司是第一个在消费类产品(iPhone 5S)中发布ARMv8-A兼容内核(Apple A7)的公司。

  

为啥arm架构比x86 x64省电?

  1978年6月8日,Intel发布了史诗级的CPU处理器8086,由此X86架构传奇正式拉开帷幕。X86架构使用的是CISC复杂指令集。同时8086处理器的大获成功也直接让Intel成为了CPU巨头。使用x86架构制造的处理器通常用于台式机和笔记本电脑。即使是AMD,英特尔的竞争对手,也使用Intel的x86和x64(x86体系结构的64位版本)体系结构来创建其CPU。x86处理器上的指令大多很复杂。因此,它们占用多个CPU周期来执行每个指令。

  虽然处理器的功耗还取决于许多其他因素,例如缓存,总线宽度等,但是ARM处理器总体占优。Intel i7处理器平均发热率为45瓦。基于ARM的片上系统的发热率最大瞬间峰值大约是3瓦,约为Intel i7处理器的1/15。

  以下设计功能使ARM处理器具有比x86处理器更高的性能优势:它们更慢,更小,花费更多的时间在睡眠中,并且没有很多遗留的支持。

  

为啥arm架构比x86 x64省电?

  (1)它们的速度较慢:由于低功率操作通常比性能更重要,因此可以使用低速晶体管,从而改善漏电流并降低最低电压。尽管使用的制造技术落后于现代x86一代或两代,但结果是功耗明显降低。

  (2)它们更小:使用的晶体管更少,部分原因是ARM是精简指令集计算(RISC)架构。这意味着大型操作将以小的,简单的块进行处理,但要付出更多的机器代码。这意味着ARM具有较少的一次性部件,这些部件在不使用时会消耗功率,并且体积更小/成本更低。

  (3)低功耗睡眠模式:ARM处理器采用无时钟的内核设计。处理器通过停止内核直到收到执行某项操作的指令来节省功耗。目前,X86仅支持降低核心频率以在较低电压下运行,并关闭处理器的外围部件。

  (4)指令执行方式:指令集简单,通用,最小限度,并且可能会保持这种状态;扩展指令集是通过与类似内存进行交互的协处理器完成的。

  (5)采用了更多的寄存器:ARM拥有更多的寄存器,还具有加载指令,该指令可以一次将多个值加载到多个寄存器中。同时因为ARM在一条指令中比传统的RISC指令集执行的功能要多得多,从而提供了良好的指令高速缓存命中率,并在提取指令时节省了功率。

  (6)大小核架构:从前的X86传统CPU,如果是四核或者是双核,内部的四个、两个核心都是一模一样的,这样的话,由于一旦软件只能调度一个核心,处于高频工作,但由于架构限制,其余核心也要保持同样的高频率和高电压状态,这样就浪费了大量的能量在做无用功。后来才发展出了异步多核,允许不同核心工作在不同频率上,以此换来更低功耗。

  由于移动设备更加在意功耗,所以ARM采用了更加激进的做法,八个核里面允许有不同Cortex-A架构核心,那就是著名的ARM big LITTLE。这样的大小核设计目的很明确,就是在有限的电池容量中,兼顾性能、续航的需求,因此SoC内部的CPU是采用异构计算,既有高性能大核心,也有低功耗小核心。

  ARM和X86架构孰优孰劣,一直以来纷争不断,X86无法做到ARM的功耗,而ARM也无法做到X86的性能。公平地说,过去英特尔的不断努力,通过推动制造低功率晶体管的新技术的开发以及采用类似RISC的内核设计,已经实现了巨大的效率提升,下一代x86和ARM处理器的功耗差异将越来越小。

  处理器的选择取决于应用程序要求和预期的性能水平。虽然英特尔已经失去了移动市场,但是未来5G的物联网市场呢?我们拭目以待吧。

  以上是我的浅薄之见,欢迎指正,谢谢!

  最好的性能和最低的功耗就犹如鱼和熊掌不能兼得,X86从诞生之初就是为了高性能而诞生的。所以,X86在设计之初就是为了高性能目标,自然省电就放在比较低的位置了。而ARM则是以低功耗为出发点的,自然省电是最重要的。下面看看在CPU设计阶段和功耗相关的有几个要素:

  ①、运行频率(时钟信号)

  时钟信号每变化一次,芯片里面的门电路自然必须加电压做一次0/1切换,同时,需要执行的指令或者I/0操作都可以在这个时钟周期里调入CPU执行。而这一切就需要消耗电能。所以,时钟信号变化越快,不管你有没有指令调入CPU执行,CPU都在高速运转待命。就好比跑车发动机保持高转速待命。这里说的时钟信号变化就是CPU运行频率。所以,设计的运行频率越高,自然功耗越大。

  X86处理器设计之初就是为了高性能,省电只是兼顾。所以,它的最高运行频率都很高。而且每个内核都一样。当然,为了兼顾省电,也设计有动态频率功能。intel的睿频就是这样的功能,它在电脑普通使用时会降低频率省电,在繁忙时时,升高频率使用。但它设计的起点频率就不低,毕竟电脑的不繁忙(普通使用)和手机的不繁忙(待机)是两个概念。

  ARM处理器设计之初就是为了更省电,毕竟嵌入式等设备并不会要求非常高的性能。所以,ARM处理器特意设计了大核、小核共同使用。当设备运行不繁忙时,小核工作,大核心休息。当设备运行繁忙时,大核心和小核心可以一起工作。这样设计可以大大降低功耗。所以就算ARM的大核的运行频率很高,使用到机会却不多。

  ②、模块待机省电

  我们都知道X86处理器在处理乱序执行能力方面远高于ARM处理器。因为,用户使用电脑的操作是非常随机,根本无法预测的。所以,X86芯片在设计时,为了满足这种特性,加强了乱序指令的执行,这就导致了一个耗电问题。这样必须保持处理器的所有子模块都在开启状态,不能随便进入关闭状态来省电。只有当用户按下休眠或者待机键时,才可以让CPU部分子模块进入关闭状态。

  ARM处理器就不同了,嵌入式设备通常功能比较单一。就算是现在功能强大的手机,也只有那么小的屏幕,同一时间段都还是比较简单。所以,ARM没必要为了加强乱序指令处理能力。因为用到它的时候不多。如果玩复杂游戏时需要用到,ARM也考虑到了,就将乱序处理执行的事交给大核处理就行了。这样,就可以做到平时使用很省电了。

  ★在芯片设计时,除了这些考虑,还有浮点运算、单指令多数据等等一系列复杂运算。X86都把它设计到处理器里面了,使得X86处理器的结构变得比较复杂,自然更耗电很多。而ARM则没有,很多复杂的指令都转换成简单指令来处理,因为这些指令在嵌入式设备里用到时间不多。所以,ARM处理器结构比较简单。

  众所周知,制程工艺的纳米数越低,性能越高,功耗越低。目前中高端手机上的ARM处理器都已经到7nm,5nm制程工艺了。而英特尔的X86处理器依然还在14nm、10nm徘徊,功耗自然也比较高。而AMD最新的X86 CPU,已经采用台积电7nm制程,功耗明显就下来很多。当然,前面讲的X86 芯片设计目标是高性能,也使得同样制程,X86芯片依然会更耗电一些。

  ARM处理器一旦设计方向往高性能发展,功耗同样很高,甚至超过英特尔。下面我们看看近期ARM的高性能服务器CPU。

  总之,ARM和X86、X64从设计开始就朝着不同的方向设计的。ARM是朝着低功耗去设计的,X86、X64都是朝着高性能去设计的。所以,ARM的能耗自然就比X86、X64更少,但是,如果ARM也走高性能路线,功耗一样会非常高。看看高通、华为、安晟培 的服务器CPU就知道了。

  感谢阅读!我是数智风,用经验回答问题,欢迎关注评论。

  ·

  什么叫arm架构

  ARM架构过去称作进阶精简指令集机器,是一个32位精简指令集处理器架构,其广泛地使用在许多嵌入式系统设计。ARM处理器非常适用于移动通讯领域,符合其主要设计目标为低耗电的特性。ARM处理器可以在很多消费性电子产品上看到,从可携式装置(PDA、移动电话、多媒体播放器、掌上型电子游戏,和计算机)到电脑外设(硬盘、桌上型路由器)甚至在导弹的弹载计算机等军用设施中都有他的存在。在此还有一些基于ARM设计的派生产品。

  什么叫x86架构

  目前的PC电脑处理器架构绝大多数都是Intel的X86架构,X86架构是微处理器执行的计算机语言指令集,指一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。

  两者之间的差异:

  这就是从一开始设计的时候,ARM是为了低功耗设计的,而X86是为了高性能。也就是相当于ARM是F1赛车,而X86是高铁。你想把ARM做到X86一样的最高速度和拉人多,势必会增加ARM核心复杂度,增加指令集,等加到性能差不多的时候估计体积和功耗两者也差不多了。

  X86架构也憎精简过核心规模,抛弃了部分指令集,一样也做到了功耗5W以下的ATOM系列处理器。这也就是说,X86可以用来做大型服务器主机,而ARM只能做一个小手机系统,运行一些简单的APP,甚至连WIN10这样的系统流畅运行都比较困难,更不用说开多个大型的软件了。所以,F1赛车比高铁轻巧,载人少,所以看起来也很快,相对高铁来说,能量的消费也是非常的少。但它的缺点也就是F1赛车只能载一个人,高铁可以几百人。

  用人来浅显打比方。 全能人才好比x86。普通人arm。

  要培养一个全能人才需要学各种知识上学的费用高( CPU制造复杂)。所以他那工资也高(10000元好比功耗)

  而普通人的工资2000元 好招也好辞退( CPU集成度高电路简单 但每个人都能单独工作效率低)

  完成一件事情。1全能人才=5个普通

  全能人才完成的顺利效率高。

  但使用中cpu不可能一直满负荷工作,x86低功耗模式也要维持一些复杂的电路。arm 只不过简单休眠几个核心就行了。