解读《深入理解计算机系统(CSAPP)》第4章处理器体系结构

简介: 本章讲解指令集架构(ISA),在处理器行为(指令计划及其编码)和如何实现处理器之间提供了一层抽象。不同指令组织都遵循5个阶段,由SEQ处理器其中每个时钟周期执行一条指令,就会通过5个阶段(取值 -> 译码 -> 执行-> 防存 -> 回写)。流水线化通过让不同阶段并行操作,改进了系统吞吐量,在任意给定的一个时刻,多条指令被不同的阶段处理。

image.png

前言:📫 作者简介:小明java问道之路,专注于研究计算机底层,就职于金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的设计和架构📫
🏆 Java领域优质创作者、阿里云专家博主、华为云享专家🏆
🔥 如果此文还不错的话,还请👍关注点赞收藏三连支持👍一下博主哦

本文导读

本文导读:第04章开篇第一句话就是:现代微处理器可以称得上是人类创造出的最复杂的系统之一。RISC (精简指令集) vs CISC(复杂指令集)这两个东西是isa指令集的知识点,如今很多RISC风格的处理器为了加入很多新的特性,正在变得越来越像CISC,而反过来CISC风格的处理器(比如x86)在具体实现的时候又转换成了类似RISC的微指令,因此两者的界限越来越模糊了,本质上都是“取其精华,去其糟粕”,或者说是某种程度的折中。

不推荐大家阅读原书第4章,原因:Y86-64 不是一个商业可用的指令集架构,意味着你学了之后基本上没有实用价值,另外,Y86-64 的设计并不优雅,不是特别值得学习。推荐学习RISC-V指令集,因为它是开放的指令集架构,发展迅猛,未来可期,如果你已经有了良好的基础(比如学习过MIPS),阿里、华为、西数、NVIDIA、SiFive、高通等各大公司都在争相布局,我国大力支持看好RISC-V

重点解读:

一、处理器的设计

处理器的设计步骤:一、分析指令,推导出数据通路需求;二、为所需的数据通路选择合适的组件;三、连接各个组件建立数据通路;四、分析指令的实现,以确定控制信号;五、集成控制信号,形成完整的控制逻辑

二、单周期处理器设计

单周期处理器设计:数据通路 + 实现控制逻辑  (本质 = 组合逻辑电路 + 时序逻辑电路)以下是简单的RISC-V单周期处理器的设计(MIPS也类似)来自P&H Book

image.png

三、流水线设计

现代处理器借鉴了汽车生产的流水线技术,使得指令能够并行执行(ILP)

下图是SEQ+的硬件结构,同上述处理器原理类似,笔者理解为类似于各种微服务系统,通过MQ通信。

image.png

下图为PIPE的流水线化最终实现:

image.png

小结

本章讲解指令集体系结构(ISA),在处理器行为(指令计划及其编码)和如何实现处理器之间提供了一层抽象。ISA提供程序执行的一种顺序说明,也就是一条指令完成,另一条才开始。

不同指令组织都遵循5个阶段,由SEQ处理器其中每个时钟周期执行一条指令,就会通过5个阶段(取值 -> 译码 -> 执行-> 防存 -> 回写)。

流水线化通过让不同阶段并行操作,改进了系统吞吐量,在任意给定的一个时刻,多条指令被不同的阶段处理。

相关文章
|
11天前
|
缓存 Linux Shell
Linux进程解析(冯诺依曼体系结构,操作系统,进程初步解析)
Linux进程解析(冯诺依曼体系结构,操作系统,进程初步解析)
58 1
|
9天前
|
存储
计算机组成原理(7)----CPU内部单总线数据通路
计算机组成原理(7)----CPU内部单总线数据通路
26 0
|
11天前
|
存储 安全 数据处理
【计算机系统组成原理】操作系统处理器深入介绍
【计算机系统组成原理】操作系统处理器深入介绍
|
5月前
|
Linux Shell
Linux进程理解(冯诺依曼体系结构,操作系统,进程概念和基本操作)(下)
Linux进程理解(冯诺依曼体系结构,操作系统,进程概念和基本操作)
91 14
|
5月前
|
存储 Linux Windows
Linux进程理解(冯诺依曼体系结构,操作系统,进程概念和基本操作)(上)
Linux进程理解(冯诺依曼体系结构,操作系统,进程概念和基本操作)
90 10
|
7月前
|
存储 安全 Linux
冯诺依曼体系结构与进程概念理解
冯诺依曼体系结构与进程概念理解
43 0
|
10月前
|
缓存
【软考学习4】计算机构成——CPU 结构、Flynn 分类法、CISC和RISC
【软考学习4】计算机构成——CPU 结构、Flynn 分类法、CISC和RISC
153 0
|
11月前
|
存储 安全 Linux
冯诺依曼,操作系统以及进程概念
冯诺依曼,操作系统以及进程概念
冯诺依曼,操作系统以及进程概念
同济大学系统结构 实验一:MIPS指令系统和MIPS体系结构-1
实验目的 1. 了解和熟悉指令级模拟器。 2. 熟练掌握MIPSsim模拟器的操作和使用方法。 3. 熟悉MIPS指令系统及其特点,加深对MIPS指令操作语义的理解。 4. 熟悉MIPS体系结构。
705 0
同济大学系统结构 实验一:MIPS指令系统和MIPS体系结构-2
同济大学系统结构 实验一:MIPS指令系统和MIPS体系结构-2
455 0