普通用户的电脑,基本是英特尔和AMD的CPU,这些CPU基本都是基于X86架构的。而手机,平板,路由器,手表的CPU,基本都是ARM指令集架构的。
英特尔的X86属于复杂指令集,ARM则属于精简指令集。精简指令集主要是一些常用的指令,比如前后左右,而复杂指令集,除了前后左右,还有跳舞,翻滚等。我们想要玩具机器人跳舞的时候,复杂指令集的机器人只需要执行跳舞这一条指令就好。而精简指令集的机器人,并没有跳舞这个指令,所以只能执行多条常用的指令来完成跳舞,如执行多条前前,后后,左左,右右的指令。
指令集架构就像CPU和机器人的灵魂一样,有了灵魂,机器人才会跳舞,CPU才会处理数据。
有了指令集架构以后。第二步需要把CPU的加减乘除,玩具机器人的前后左右这些指令,都给实现出来,这个时候,当机器人想要执行往前这个指令,我们需要通过设计来完成,使玩具机器人向前走上一步。 。是搞个马达和齿轮呢?还是搞个什么东西?当我们把这些设计出来后,形成一份图纸,也就是我们常说的微架构。
微架构设计影响着CPU核心可以达到的最高频率、核心在一定频率下能执行的运算量、一定工艺水平下核心的能耗水平等等。
此外,不同微架构执行各类程序的偏向也不同。。例如90年代末期Intel的P6微架构就在浮点类程序上表现优异,但在整数类应用中不如同频下的对手。
常见的代号如Hasrtex-A15等都是微架构的称号。注意微架构与指令集是两个概念:指令集是CPU选择的语言,而微架构是具体的实现。
虽然很多CPU使用的是相同的指令集,但是因为设计思路和定位的不同,在性能上也会有所差异,比如说手机的骁龙865,麒麟980,它是集成了很多东西在上面,除了CPU,还有GPU,ISP,基带等。
【This chapter is finished reading】