0.3.3 CPU指令集和微架构

CPU主要参数

  • 指令集架构
  • 内核架构(微架构)
  • 主频
  • 核心数
  • 缓存容量
  • 功耗/能效比

指令集架构

  • 指令集是一个指令集合,而指令指的是处理器进行操作(加·减·乘·除·读·写…)的最小单元。
  • 指令集架构有时被简称为"架构"或者“处理器架构”。可以将指令集架构理解成一个抽象层,该抽象层是硬件与软件的接口。软件开发人员通过接口调用CPU硬件的功能,CPU硬件设计人员则必须将接口的所有功能在CPU硬件上实现。
  • 指令集架构是区分不同CPU的主要标准。Intel和AMD两家生产的CPU有所不同,但他们支持的都死x86/x86-64指令集架构,都被成为x86架构的CPU。

CPU微架构

虽然AMD和Intel生产的CPU都成为x86架构的CPU,但它们的硬件内部实现方式是有差别的,就算是同一家的CPU,不同年代的产品其硬件的内部实现方式也有明显的差别。这种硬件实现方式的差别便是CPU微架构的区别。

指令集分类

主要分类方式:按照指令集架构的复杂度划分为复杂指令集和精简指令集。

其他分类方式:按照架构的位数可分为8位、16位、32位、64位架构。

更多参考,网文:计算机组成原理笔记-指令集 - 知乎

复杂指令集(CISC)

CISC:Complex Instruction Set Conputer

CISC特点:

  • 一条指令就可以让CPU完成复杂的操作(负责的指令需要数个时钟周期,这就造成了性能下降。为了优化性能加入了流水线和分支预测。)
  • 指令数量多(每一条指令都要有对应的硬件为其实现功能),硬件复杂,常用的指令只占所有指令的一小部分(硬件资源的复用率低,功耗高),硬件也十分的复杂。
  • 目前仍使用CISC的x86(x86-64)指令集

CISC的发展:

  • 1971年,Intel发布世界上第一款商用CPU,仅支持45条指令。
  • 1976年,x86指令集架构首次使用。
  • 1976到2023这十四多年间,x86指令集架构已从16位升级到了64位(x86-64),指令数也增加到了数千条。x86CPU的内核微架构也发生了翻天覆地的变化,从原始简单形态进化出了缓存、流水线、分支预测、多核…,硬件内晶体管数量也从几千个增加到几百亿个!

总结:x86指令集架构为了兼容性保留那些已经过时的指令而十分臃肿,同样的支持这些过时指令的x86CPU硬件中也必然需要为了兼容过去指令而设计的硬件,使得CPU的设计难度增加,性能提升受限。

Wintel联盟
1980年代Windows和Intel结成商业联盟,淘汰其他硬件和系统厂商,垄断PC市场,在几十年中取得了丰厚的利润。

x86CPU历史背景

  • 1971年,Intel发布第一款商用4位CPU Intel 4004:10微米工艺集成了2300个晶体,主频108K,指令数量仅45条,每秒能够运行5万次指令。(售价$200,现在几块钱的单片机每秒能够运行数百万条命令)
  • 1972年,Intel推出了第一款商用 8位处理器 Intel 8008:10微米工艺集成了3500个晶体管。购买并使用了Datapoint公司开发的指令集,后来这个指令集发展为x86指令集。(第一款x86处理器)
  • 1976年,Intel发布第一款商用16位处理器 Intel 8086,首次采用x86架构,之后x86便成为了个人计算机的标准平台,成为了历来最成功的CPU架构。
  • 1985年,Intel发布第一款商用32位处理器 Intel 80386。Linux最先便是在386平台完成的。
  • 1999-2003,2019年AMD公布了兼容x86的64位架构AMD64,期间Intel的64位架构计划因为内政原因未能成功落地,2003 Intel几乎将AMD64照搬过去改名为Intel64,由于这两个架构近乎是一个东西又被统称为x86-64架构。

64位CPU指CPU一次可以读取数据的最大量为64bit,也称为【机器字长】。

精简指令集(RISC)

RISC:Reduced Instruction Set Computer

RISC特点:

  • 支持的指令数量比精简,每条指令只完成一个基础操作,单个指令运行时间都很短。通过多条指令组合来完成复杂操作。(优点:指令和硬件复用率高,因为不需要为一些冷门的功能专门设计指令和硬件。缺点:通用指令组合的效果没有专用指令的性能高,如果x86有单独的指令和专门的硬件完成这个功能。)
  • 多用于移动设备或者低功耗设备:手机、平板、手表、路由器、电视机、车载系统、广告屏等。

历史背景

  • 因为CISC系处理器结构复杂,设计难度大,结构复用率低。1981年,Hennessy带领团队研发出第一个MIPS(RISC阵营)架构处理器。
  • 1987年,最成功的早期商业RISC系统之一Sun公司的SPARC正式发布。
  • 1992年,DEC公司专为高端台式机、工作站和服务器设计的微处理器架构Alpha问世……
  • 1986年,几乎与ARM首款正式商用处理器ARM 2出现的同时,MIPS推出商用处理器R2000。至1988年,MIPS首款在市场上流行起来的产品R3000处理器横空出世。这款处理器销量迅速超过百万颗,不少公司的消费电子产品都用到了R3000,如索尼的PS、思科的路由器和SGI超级计算机等。美国首家电脑公司DEC、爱普生、日本电器等知名企业也都是MIPS的客户。其后续推出的R3000A更是创造了销量过亿的记录。
  • 1996年,MIPS推出R10000处理器,作为RISC阵营的旗舰之一,该处理器投放市场时被认为是世界上最快的CPU。彼时,已在CISC阵营中拔得头筹的英特尔产品与之相比都有所不如。MIPS产品性能强势若此。根据MIPS科技公司的统计,1997年以MIPS架构为基础的CPU出货量为4800万,占RISC CPU总市场份额的49%。
  • 1997年,ARM不在生产芯片转而出售架构使用授权。
  • 1998年,MIPS日渐西落。
  • 2011年,龙芯中科公司独立购买了MIPS架构授权。
  • 2012年底,MIPS被ARM和Imagination瓜分收购。

比较两种指令集

下图仅做示意,数据并不严瑾。
在这里插入图片描述

更多参考,网文:

深度解读ARM新架构:大核进取、小核摆烂?
MIPS指令集简史:从CISC、RISC之争,到闭源、开源分歧
处理器架构与指令集 - 知乎
分不清ARM和X86架构,别跟我说你懂CPU! - 知乎
硬核科普:CPU中那些指令集都有什么用? - 哔哩哔哩

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值