来的,不说同时研发有没有这个必要,实力上不允许啊。
那什么是指令集架构呢?cu执行计算任务时都需要遵从一定的规范,程序在被执行前都需要先翻译为cu可以理解的语言。这种规范或语言就是指令集。
比如我们要造一款cu,或者比喻一个玩具遥控机器人,在造这个玩具机器人之前,我们肯定要先构思,计划一下,这个遥控机器人到底有哪些功能?比如往前,往后,往左,往右,这个就是所说的指令。
因为cu是负责计算的,它的指令则是加减乘除等等,然后还有一些硬件的基本信息,如数据的类型,接口的信息等。这个就是指令集架构。
普通用户的电脑,基本是英特尔和ad的cu,这些cu基本都是基于x86架构的。而手机,平板,路由器,手表的cu,基本都是ar指令集架构的。
英特尔的x86属于复杂指令集,ar则属于精简指令集。精简指令集主要是一些常用的指令,比如前后左右,而复杂指令集,除了前后左右,还有跳舞,翻滚等。
我们想要玩具机器人跳舞的时候,复杂指令集的机器人只需要执行跳舞这一条指令就好。而精简指令集的机器人,并没有跳舞这个指令,所以只能执行多条常用的指令来完成跳舞,如执行多条前前,后后,左左,右右的指令。
指令集架构就像cu和机器人的灵魂一样,有了灵魂,机器人才会跳舞,cu才会处理数据。
有了指令集架构以后,第二步需要把cu的加减乘除,玩具机器人的前后左右这些指令,都给实现出来,这个时候,当机器人想要执行往前这个指令,我们需要通过设计来完成,使玩具机器人向前走上一步,是搞个马达和齿轮呢?还是搞个什么东西?当我们把这些设计出来后,形成一份图纸,也就是我们常说的微架构。
微架构设计影响着cu核心可以达到的最高频率、核心在一定频率下能执行的运算量、一定工艺水平下核心的能耗水平等等。
此外,不同微架构执行各类程序的偏向也不同,例如90年代末期tel的6微架构就在浮点类程序上表现优异,但在整数类应用中不如同频下的对手。
常见的代号如haswell、rtex-a15等都是微架构的称号。注意微架构与指令集是两个概念:指令集是cu选择的语言,而微架构是具体的实现。
虽然很多cu使用的是相同的指令集,但是因为设计思路和定位的不同,在性能上也会有所差异,比如说手机的骁龙865,麒麟980,它是集成了很多东西在上面,除了cu,还有gu,is,基带等。</div>笔趣阁读书免费小说阅读_www.biqugedu.com
『加入书签,方便阅读』