[CSAPP][深入理解计算机][04]处理器体系架构

本文详细介绍了计算机处理器的指令系统结构,包括Y86-64的顺序实现和流水线设计。内容涵盖数字电路、处理器设计、流水线的通用原理和数据冒险、控制冒险的处理。通过五级流水线硬件结构的分析,揭示了如何解决数据依赖和控制依赖问题,以提高处理器效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

视频教程:b站九曲阑干【合集】CSAPP

指令系统结构

  1. 指令系统结构是处理器设计人员设计好的软件和硬件之间的通信接口,主要包括指令、寄存器定义、条件码、程序计数器、状态码几种概念。

数字电路与处理器设计

  1. 寄存器用寄存器文件来描述,包括输入输出端口,可写信号、地址、时钟、复位信号等,用硬件描述语言verilog/VHDL编写。
  2. 数字电路具体来说是由CMOS中的N管和P管组合实现的,首先通过组合实现逻辑门电路,然后搭起来实现选择、存储、加减等高级功能。
  3. 由于非门、与非门、或非门的实现比较高效,所以其他逻辑都是由这三个组合实现的。
  4. 组合逻辑电路无状态,时序逻辑电路有状态。
  5. verilog语言要用硬件的思路(真实世界)来设计,是并行的,而C语言是串行的(模拟世界)。

Y86-64的顺序实现

  1. 指令的实现一般需要六个阶段:取指、译码、执行、访存、写回、更新PC(程序计数器)。
  2. 取指要判断寄存器。
  3. 译码阶段就是读寄存器文件。
  4. 执行阶段是ALU的活。
  5. 访存是对内存进行读写。
  6. 写回就是写寄存器文件。
  7. 更新PC就是更新下一条指令地址。
  8. ALU的活包括算术逻辑计算、计算内存有效地址、push/pop功能。

Y86-64处理器硬件结构

  1. 一条指令最多10个字节,所以一次要取10个字节,然后判断完整的一条指令是啥。
  2. 寄存器支持两个读端口和两个输出端口。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值