Arm凭啥成为移动芯片霸主?什么是指令集体系结构?

每当您想到移动计算硬件时,Arm就有可能成为第一个想到的公司,或者应该是。尽管从历史上看,英特尔一直被公认为是芯片制造领域的领导者-直到今天仍然如此-多年来,Arm逐渐步入了一个利基市场,最终达到了一个拐点,在那里,计算设备不再需要更快,但他们需要更加高效和便携。


Arm凭啥成为移动芯片霸主?什么是指令集体系结构?_软件科技_业界新闻


几乎所有主要的发布都建立在其架构之上,这就是为什么Arm在移动处理器市场上占据主导地位。我们正在谈论在嵌入式应用程序,生物识别系统,智能电视,iPhone,笔记本电脑和平板电脑上使用的数十亿芯片。但是,为什么会这样呢?为什么像x86之类的其他体系结构无法发挥作用呢?在本文中,我们将为您提供Arm的概念,它的起源以及为什么它如此流行的技术概述。


首先要注意的是,Arm实际上并没有制造处理器。取而代之的是,他们设计CPU的体系结构,并将这些设计授权给其他公司,例如将其纳入其处理器的高通公司或三星公司。由于它们都使用通用标准,因此在Qualcomm Snapdragon处理器上运行的代码也将在Samsung Exynos处理器上运行。


什么是ISA(指令集体系结构)?


每个计算机芯片都需要一个ISA才能起作用,而这正是Arm所代表的。要详细了解CPU在内部的工作方式,必须阅读我们的CPU设计系列。解释Arm的第一步是了解ISA的确切含义。


它不是像高速缓存或内核那样的物理组件,而是定义了处理器各个方面的工作方式。这包括诸如芯片可以处理哪种类型的指令,应该如何格式化输入和输出数据,处理器如何与RAM交互等等。另一种思考的方式是,ISA是一组规范,而CPU是这些规范的实现。这是CPU如何工作的蓝图。


例如,ISA使用64位模型指定每条数据的大小,而最现代的数据则由ISA指定。虽然所有处理器都执行读取指令,执行这些指令并根据结果更新其状态的三个基本功能,但不同的ISA可能会进一步分解这些步骤。诸如x86之类的复杂ISA通常会将此过程分为数十个较小的操作,以提高吞吐量。ISA还指定了其他任务,例如条件指令的分支预测和预取将来的数据。


除了定义处理器的微体系结构之外,ISA还可以指定一组可以处理的指令。指令是CPU在每个周期执行的内容,由编译器产生。指令的类型很多,例如存储器读/写,算术运算,分支/跳转运算等等。一个示例可能是“将内存地址1的内容添加到内存地址2的内容并将结果存储在内存地址3中”。


每个指令的长度通常为32或64位,并具有多个字段。最重要的是操作码,它告诉处理器它是哪种特定类型的指令。一旦处理器知道下一步要执行的指令类型,它将获取该操作所需的相关数据。数据的位置和类型将在操作码的另一部分给出。这是一些指向Arm和x86操作码列表的链接。


    RISC与CISC  


既然我们对ISA是什么和做什么有了一个基本的了解,让我们开始研究什么使Arm特别。最重要的功能是Arm是RISC(精简指令集计算)体系结构,而x86是CISC(复杂指令集计算)体系结构。这是处理器设计的两个主要范例,各有千秋。


使用RISC架构,每条指令直接指定CPU要执行的动作,并且它们是相对基本的。另一方面,CISC体系结构中的指令更复杂,并且为CPU指定了更广泛的概念。这意味着CISC CPU通常会将每个指令进一步细分为一系列微操作。CISC体系结构可以将更多细节编码为一条指令,从而可以大大提高性能。例如,根据数据类型和其他计算参数,RISC体系结构可能仅包含一个或两个“添加”指令,而CISC体系结构可能具有20个指令。RISC和CISC之间的更详细比较可以在此处找到。


Arm凭啥成为移动芯片霸主?什么是指令集体系结构?_软件科技_业界新闻


另一种看待它的方法是将其与盖房子进行比较。使用RISC系统,您只有一个基本的锤子和锯子,而使用CISC系统,则有许多不同类型的锤子,锯子,钻子等等。使用类似CISC的系统的构建者将能够完成更多的工作,因为他们的工具更加专业和强大。RISC构建器仍然可以完成工作,但是会花费更长的时间,因为他们的工具更加基础且功能更弱。


您现在可能会想:“如果CISC系统功能强大得多,为什么会有人使用RISC系统?” 性能并不是唯一要考虑的问题。我们的CISC建设者必须雇用大量额外的人力,因为每种工具都需要专门的技能。这意味着工作现场要复杂得多,需要大量的计划和组织。由于所有这些工具可能使用不同类型的材料,因此管理所有这些工具的成本也高得多。我们的RISC朋友不必担心,因为他们的基本工具可以处理任何事情。


房屋设计师可以选择如何建造房屋。他们可以为我们的RISC构建器创建简单的计划,也可以为我们的CISC构建器创建更复杂的计划。起始思路和最终产品将相同,但中间的工作将有所不同。在此示例中,家庭设计师等效于编译器。它以程序员(家庭设计师)产生的输入代码(家庭图纸)为输入,并根据偏好的样式输出一组指令(建筑计划)。这使程序员可以为Arm CPU和x86 CPU编译相同的程序,即使指令的结果列表有很大的不同。


    我们需要更少的功耗  


让我们再次回到Arm。如果您一直在胡思乱想,那么您可能会猜出是什么使Arm如此吸引移动系统设计人员。这里的关键是效率。在嵌入式或移动方案中,效率远比性能重要。在电池技术得到改善之前,热量和功耗将仍然是设计移动产品时的主要限制因素。这就是为什么我们在手机中不会使用与台式机一样的处理器的原因。当然,它们比移动芯片快几个数量级,但如果在手机中使用这类处理器,您的手机就会变得太烫而无法握持,并且电池只能使用几分钟。高端台式机x86 CPU可能在负载下消耗200瓦,而移动处理器将在2到3瓦。


您当然可以制造功率较低的x86 CPU,但CISC范例最适合功能更强大的芯片。这就是为什么您不经常在台式机中看到Arm芯片或在电话中看到x86芯片的原因。他们不是为此而设计的。为什么Arm能够实现如此高的能效?一切都归结为它的RISC设计和体系结构的复杂性。由于不需要处理多种类型的指令,因此内部体系结构也可以更加简单。管理RISC处理器的开销也更少。


这些都直接转化为节能。更简单的设计意味着更多的晶体管可以直接为性能做出贡献,而不是被用来管理架构的其他部分。与给定的x86芯片相比,给定的Arm芯片不能处理那么多类型的指令,也不能像给定的x86芯片那样快速地处理指令,但这可以弥补这一点。


    Arm带来的另一个关键功能  


Arm带来的另一个关键功能是big.LITTLE异构计算体系结构。这种类型的设计在同一芯片上具有两个配套处理器。一个将是一个低功耗内核,而另一个将是一个功能更强大的内核。该芯片将分析系统利用率,以确定激活哪个内核。在其他情况下,如果编译器知道即将执行计算密集型任务,则可以告诉芯片启动功能更强大的内核。


如果设备处于空闲状态或仅在运行基本计算,则低功耗(LITTLE)内核将打开,而功能更强大的(big)内核将关闭。Arm表示,这可以节省多达75%的功率。尽管传统的台式机CPU在负载较小的情况下肯定会降低其功耗,但某些部件永远都不会关闭。由于Arm具有完全关闭内核的能力,因此它明显胜过竞争对手。


处理器设计始终是过程中每个步骤的一系列权衡。Arm全力投入RISC架构,并且获得了丰厚的回报。早在2010年,他们在手机处理器上就拥有95%的市场份额。随着其他公司试图进入该市场,这一数字略有下降,但是仍然没有可以与之匹敌的对手。


    授权和广泛使用  


Arm的业务授权方法是其市场主导地位的另一个原因。在物理上构建芯片非常困难且昂贵,因此Arm不会这样做。这使他们的产品更加灵活和可定制。


根据使用情况,被授权方可以选择所需的功能,然后让Arm为他们选择最佳的芯片类型。客户还可以设计自己的专有芯片,并仅实现某些Arm指令集。该高科技公司的名单使用Arm的架构是太大,不适合这里,但仅举几例:苹果,NVIDIA,三星,AMD,博通,富士通,亚马逊,华为和高通都采用Arm技术的一些能力。


Arm凭啥成为移动芯片霸主?什么是指令集体系结构?_软件科技_业界新闻


除了为智能手机(掌上电脑)供电外,Microsoft还在推动其Surface和其他轻型设备的体系结构。一年多以前,我们对Arm上的Windows 10进行了完整的评论,尽管这一努力尚未使OS达到终点,但此后我们看到了诸如Surface Pro X之类的更新更好的计划。长期以来,一直有传言称苹果将MacOS引入Arm,以便我们可以拥有与手机一样高效的笔记本电脑。


即使在数据中心中,多年来,Arm的承诺主要还是关于节电-当您谈论成千上万的服务器时,这是一个关键因素。但是,最近他们在大型计算设备上获得了更多采用,这些设备旨在提供比Intel和AMD现有解决方案更强大的性能。坦白说,这不是很多人期望的那么快发生的事情。


Arm凭啥成为移动芯片霸主?什么是指令集体系结构?_软件科技_业界新闻


Arm还建立了可以在其体系结构上运行的大型补充知识产权(IP)生态系统。这包括加速器,编码器/解码器和媒体处理器之类的东西,客户都可以购买授权权以在其产品中使用。


Arm还是绝大多数IoT设备的首选架构。亚马逊的Echo和Google Home Mini均在Arm Cortex处理器上运行。它们已成为事实上的标准,在设计移动电子产品时,您确实有理由不使用Arm处理器。


    可以将所有这些整合到一个芯片中吗?  


除了其中央ISA业务部门之外,Arm还扩展到了片上系统(SoC)空间。随着空间和功耗要求越来越严格,移动计算市场已转向更加集成的设计方法。CPU和SoC有许多相似之处,但是SoC实际上是下一代移动计算。


片上系统将许多不同的组件组合到一个芯片上,以提高效率。想象一下将整个台式机主板缩小为一个芯片,这就是SoC。它通常具有CPU,图形处理器,内存,外围控制器,电源管理,网络和一些加速器。在采用这种设计之前,系统需要为每个功能使用一块单独的芯片。芯片之间的通信速度可能比同一芯片上的内部连接慢10到100倍,并且消耗的功率多10到100倍。这就是移动市场如此强烈地接受这一概念的原因。


Arm凭啥成为移动芯片霸主?什么是指令集体系结构?_软件科技_业界新闻


    基于Arm的Qualcomm SoC包含了许多功能  


显然,SoC不适用于每种类型的系统。您看不到台式机或带有SoC的主流笔记本电脑,因为在单个芯片中可以装载多少东西是有限制的。您不可能将整个离散GPU的功能,足够数量的RAM和所有必需的互连都安装在单个芯片上。就像RISC范例一样,SoC非常适合低功耗设计,而不适用于高性能设计。


到目前为止,您已经对为什么Arm在移动处理器市场中如此占主导地位的原因有了了解。他们的RISC ISA模型允许他们将计划授权给芯片制造商。通过使用RISC模型,它们可以使性能的功率效率最大化。在移动计算方面,他们是大师。


ARM处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微处理器。全称为Advanced RISC Machine。ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。ARM的Jazelle技术使Java加速得到比基于软件的Java虚拟机(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。CPU功能上增加DSP指令集提供增强的16位和32位算术运算能力,提高了性能和灵活性。ARM还提供两个前沿特性来辅助带深嵌入处理器的高集成SoC器件的调试,它们是嵌入式ICE-RT逻辑和嵌入式跟踪宏核(ETMS)系列。


67
134
0
95

相关资讯

  1. 1、Win7电脑如何设置自动开机?Win7电脑设置自动开机的方法4925
  2. 2、迅捷CAD编辑器怎么插入单个图块?迅捷CAD编辑器插入单个图块的方法3615
  3. 3、Win10纯净版删除文件时没有确认怎么办?2905
  4. 4、虾米音乐个人动态如何发布?虾米音乐动态发布方法2374
  5. 5、第一弹现在怎么搜资源?一个步骤轻松搞定2267
  6. 6、QQ空间如何屏蔽好友动态?QQ空间屏蔽好友动态的方法4386
  7. 7、怎么在招财狗app中获得vip在招财狗app中获得vip的方法1720
  8. 8、Win7系统英雄联盟无限重新连接怎么办?2970
  9. 9、如何使用返利网购买物品?返利网购买物品的方法370
  10. 10、WPS文档中怎么添加水印?WPS文档添加水印的方法1263
全部评论(0)
我也有话说
0
收藏
点赞
顶部