本节会使用简化版的x86-64的处理器——Y86-64进行学习

Y86-64的寄存器以及指令定义

15个寄存器进行编号(4位表示寄存器)

用0xF填充表示没有用寄存器的数

数据传送指令

整数操作指令

跳转指令

其他指令

指令示例

指令状态码(异常)

寄存器的电路描述

指令的执行

包括6个阶段(取址,译码,执行,访存,写回,更新PC)

取址阶段

指令实际长度为2-10byte

译码阶段(从寄存器读数据)


执行阶段

主要是ALU负责操作数运算,地址偏移运算,栈指针(入栈出栈)计算

访存阶段

既可以从内存读出数据,也可以从内存中写入数据

写回阶段(将结果写回寄存器文件)

此处不同于译码阶段的读寄存器文件,此处是写

更新PC

获取下一条指令的地址,不是指令内容
valP的值等于valP+当前指令的长度

一些例子

  • 1.减法指令

  • 2.数据传送指令(irmovq)

  • 3.数据传送指令(rrmoveq)

  • 4.push指令

  • 5.跳转指令

流水线

流水实现:在每个阶段后面插入寄存器暂存每个阶段的结果
流水线在各个阶段的转移靠的是时钟信号,每120ps,信号从0到1,流水线开始下一阶段的计算
如图所示(指令1,2,3流水执行,共分为A,B,C三个阶段)
239s时时钟信号未到,A阶段后的寄存器还保留指令1的A阶段的结果,指令1执行B,指令2在执行A

流水线的硬件结构

【合集】CSAPP-深入理解计算机系统

不同指令的流水线

数据冒险

因为数据相关产生的数据读写错误

数据冒险解决方法1:气泡+暂停

数据冒险解决方法2:数据转发(添加旁路转接数据)

数据冒险解决方法3:数据转发+气泡

控制冒险

常发生于跳转指令和ret指令
如图,ret必须在访存之后(从栈中读取返回值)才能获得下一条指令的地址

跳转指令必须在执行阶段才能知道是否跳转

控制冒险解决方法:气泡

  1. ret插入气泡


3. jump指令分支预测(预设定跳转或者不跳转),分支错误使用气泡撤回

CSAPP-处理器体系架构相关推荐

  1. Linux Arch目录下处理器体系架构介绍

    alpha 处理器 Alpha 处理器最早由美国DEC 公司设计制造,在Compaq (康柏)公司收购DEC 之后,Alpha 处理器继续得到发展,并且应用于许多高档的Compaq 服务器上,HP ( ...

  2. Linux——Linux驱动之基本理论常识总结(什么是Linux驱动?Linux驱动需要掌握哪些?ARM处理体系架构及前世今生)

     [系列专栏]:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! <QT开发实战> <嵌入式通用开发实战> <从0到1学习嵌入式Linux开发> 目录 0 ...

  3. 智源研究院发布“智能体系架构与芯片”重大研究方向,打造通用智能处理器,突破“算法共性特征”难题...

    9 月 18 日上午,北京智源人工智能研究院(以下简称"智源研究院")在北大科技园举行"智能体系架构与芯片"重大研究方向发布会,智源研究院院长黄铁军以及北京人工 ...

  4. 嵌入式处理器的体系架构与内核详解

    嵌入式处理器的体系架构与内核详解 当我们谈及嵌入式处理器的体系架构时,一般都是想到Intel的X86架构和ARM公司的ARM架构.X86架构和ARM架构最大的不同点就是使用的指令集不同,前者使用的CI ...

  5. 论坛报名 | 智能体系架构与芯片的下一个十年

    与6位图灵奖得主和100多位专家 共同探讨人工智能的下一个十年 长按图片或点击阅读原文,内行盛会,首次免费注册 2020年6月21-24日,第二届北京智源大会(官网:https://2020.baai ...

  6. 开启报名 | AI芯片体系架构和软件专题报告会2020

    近年来,专用的人工智能芯片为人工智能应用提供了强大的算力.面对日新月异的人工智能应用,人工智能芯片的体系架构,系统软件,安全成为计算机体系结构和系统软件的热点研究问题.为了推进国内在该领域的发展,由北 ...

  7. 中国“芯”的突破攻略——智源大会“智能体系架构与芯片”论坛发布

    报名请点击「阅读原文」 北京·国家会议中心 2019年10月31日-11月1日 www.baai.ac.cn/2019 BAAI 北京智源大会倒计时:8天 智能体系架构与芯片专题论坛 本次大会&quo ...

  8. 智源重大研究方向“智能体系架构与芯片”发布会(活动报名)

    活动详情 智能时代的飞速发展迫切需要新的物质载体,即智能计算系统,而智能计算体系结构和芯片是探索智能计算系统的学科方向. 智源研究院"智能体系架构与芯片"重大研究方向将从方法.芯片 ...

  9. 专家谈计算机体系架构研究获“图灵奖”

    来源:科学网   作者:王佳雯 韩扬眉 近日,有着"计算机界的诺贝尔奖"之称的"图灵奖"揭开面纱.国际计算机协会宣布,美国科学家约翰·轩尼诗和大卫·帕特森获得2 ...

  10. 计算机模型与体系架构的发展——从图灵机到云计算机1

    按照图灵(Alan Turing)给出的计算机模型,计算机是由一个有限状态读写头和一个存储器构成.有限状态读写头从一个初始状态开始,对存储器上的(输入)数据进行读或写操作,经过有限步操作之后停机,此时 ...

最新文章

  1. 数据库高可用性——SQL Server 2005数据库复制简单图解
  2. 【C/C++多线程编程之八】pthread条件变量
  3. 二叉树构建及双向链表
  4. ZigBee,ZStack
  5. php 查找数组相同元素,查找数组中重复的元素
  6. Creative media发表了Flash memory player「ZEN Mozaic」的存储增量模式
  7. 【知识总结】多项式全家桶(一)(NTT、加减乘除和求逆)
  8. matlab自带四旋翼算例asbQuadcopter使用心得
  9. 多线程执行sql报错处理
  10. MySQL 5.7.18的安装及主从复制(主从同步)
  11. 计算机课后感400字,观后感400字
  12. 原神的天空岛服务器位置,原神天空岛服和世界树服数据互通吗
  13. 3D 目标检测综述梳理图解
  14. 【阿里云生活物联网架构师专题 ④】如何在天猫精灵IOT开放平台二次开发智能设备的 H5控制面板;
  15. gif动图怎么制作?怎么截取视频做成gif动图?
  16. java服务端监控平台设计
  17. 大流量下订单号生成方法
  18. 机械硬盘的工作原理详细解析,以及机械硬盘和固态硬盘的优缺点对比
  19. 单片机:数字电压表TLC2543 C程序代码
  20. 分销的概念、本质、模式

热门文章

  1. 京东11.11:京东中间件如何支撑起每一场大促
  2. springboot版本的微信授权
  3. 2021前端react面试题汇总
  4. 1-20的两个数把和告诉A,积告诉B,A说不知道是多少,B也说不知道,这时A说我知道了,B接着说我也知道了,问这两个数是多少?
  5. 无线网络优化工程师出差吗?
  6. hypermill后处理构造器安装_UG10.0后处理构造器如何打开?ug10.0后处理无法使用怎么办?...
  7. 分享几款嵌入式软件测试工具
  8. WPF ListBox控件
  9. 【ES入门】使用 apifox 测试elastic search遇到的问题
  10. chrome Android 65,谷歌发布Chrome 65稳定版(附下载地址)