计算机体系结构期末快速复习

文章目录

  • 前言
  • CPI,MIPS(大题1)
  • 加速比(大题2)
  • 流水线(大题3)
  • CRAY-1向量机(大题4)
  • Tomasulo算法(大题5)
  • 概念简答题
    • 计算机系统结构的经典定义
    • 什么是透明性
    • 计算机系统结构分类法
    • 计算机系统结构概念的实质
    • Amdahl定律
    • 冯诺依曼结构的主要特点
    • 什么事向上(下)兼容和向前(后)兼容
    • 并行性
      • 从处理数据角度,并行性等级从低到高
      • 从执行程序的角度,并行性等级从低到高
      • 提高并行性的途径
    • CPU中用来存储操作数的存储单元的主要类型
    • 指令集结构分为哪三种类型
    • 在确定哪些基本功能用硬件来实现时,主要考虑哪三个因素
    • 对指令集的基本要求
    • 流水线
      • 通过时间和排空时间是什么
      • 流水线的分类
        • 按照流水线所完成的功能分类
        • 按照同一时间内各段之间的连接方式对多功能流水线做进一步的分类
        • 按照流水的级别分类
        • 按流水线是否有反馈回路分类
        • 按任务流入和流出的顺序是否相同分类
      • 一个经典的五段流水线
      • 相关有哪三种类型
      • 流水线冲突有哪些

前言

楼主今天下午考计算机体系结构,所以快速复习顺便写了一下,里面有自己看过的比较好视频推荐,建议先看目录是否切合学校的考纲,祝各位考试不挂科~

CPI,MIPS(大题1)

CPI = (每个指令的执行数量 * 每个指令的平均时钟周期数)/ 全部指令的数量

MIPS = 主频 / (CPI * 10^6)

加速比(大题2)

加速比 = 总执行时间(改进前)/ 总执行时间(改进后)
= 1/((1 - 可改进比例) + 可改进比例/部件加速比)
= 1 / ((1 - 各部件可改进比例之和) + 各部件 可改进比例/部件加速 之和)

流水线(大题3)

推荐视频:https://www.bilibili.com/video/BV1g34y167Nu/?spm_id_from=333.999.0.0

  1. 画流水线:
  2. 求吞吐率 加速比 效率
  3. 消除瓶颈 : 重复设置部件 、 细分瓶颈段

CRAY-1向量机(大题4)

推荐视频:https://www.bilibili.com/video/BV1iY411g7HJ?p=18&vd_source=133ab656b1083da8fddee466829de2ad 40分钟
启动访存 1 拍 ,送加 1拍,送乘1 拍,写入1拍,其他访存,浮点加,浮点乘,看题目要求几拍

Tomasulo算法(大题5)

推荐视频;https://www.bilibili.com/video/BV1Cr4y1H7gA/?spm_id_from=333.999.0.0 40分钟

概念简答题

计算机系统结构的经典定义

程序员所看到的计算机属性,即概念性结构功能特性

什么是透明性

在计算机技术中,把本来存在事物或属性,但从某种角度看又好像不存在的概念称为透明性

计算机系统结构分类法

  • Flynn分类法: SISD(单指令流单数据流),SIMD(单指令流多数据流),MISD(多指令流单数据流),MIMD(多指令流多数据流)
  • 冯氏分类法

PS:如何记忆:S是single 单 M是many 多

计算机系统结构概念的实质

确定计算机系统中软硬件实现的界面,界面之上是软件实现的功能,界面之下是硬件和固件实现的功能

Amdahl定律

加速比 = 总执行时间(改进前)/ 总执行时间(改进后)
= 1/((1 - 可改进比例) + 可改进比例/部件加速比)
= 1 / ((1 - 各部件可改进比例之和) + 各部件 可改进比例/部件加速 之和)

冯诺依曼结构的主要特点

重要!

  1. 运算器为中心
  2. 在存储器中,指令和数据同等对待
  3. 存储器是按地址访问,按顺序线性编址的一维结构,每个单元的位数是固定
  4. 指令的执行是序的
  5. 指令由操作码地址码组成
  6. 指令和数据均以二进制编码表示,采用二进制运算

什么事向上(下)兼容和向前(后)兼容

  • 向上(下)兼容:按某档机器编址的程序,不加修改就能运行于比他高(低)档的机器
  • 向前(后兼容):按某个时期投入市场的某种型号机器编址的程序,不加修改就能运行于在他之间(后)投入市场的机器

并行性

从处理数据角度,并行性等级从低到高

  • 字串位串
  • 字串位并
  • 字并位串
  • 字并位并(全并行)

从执行程序的角度,并行性等级从低到高

  • 指令内部并行
  • 指令级并行
  • 线程级并行
  • 任务级或过程级并行
  • 作业级或程序级并行

提高并行性的途径

  • 时间重叠
  • 资源重复
  • 资源共享

CPU中用来存储操作数的存储单元的主要类型

堆栈,累加器,通用寄存器组

指令集结构分为哪三种类型

堆栈结构,累加器结构,通用寄存器结构(又分为RM(寄存器-存储器)结构,RR(寄存器-寄存器)结构)

在确定哪些基本功能用硬件来实现时,主要考虑哪三个因素

速度,成本,灵活性

对指令集的基本要求

完整性,规整性,高效率,兼容性

流水线

通过时间和排空时间是什么

  • 通过时间:第一个任务从进入流水线到流出结果所需的时间
  • 排空时间:最后一个任务从进入流水线到流出结果所需的时间

流水线的分类

按照流水线所完成的功能分类

单功能流水线 和 多功能流水线

按照同一时间内各段之间的连接方式对多功能流水线做进一步的分类

静态流水线 和 动态流水线

按照流水的级别分类

部件级,处理机级,处理机间流水线

按流水线是否有反馈回路分类

线性流水线,非线性流水线

按任务流入和流出的顺序是否相同分类

顺序流水线,乱序流水线

一个经典的五段流水线

重要
取指令周期(IF) 指令译码/读寄存器周期(ID) 执行/有效地址计算周期(EX) 存储器访问/分支完成周期(MEM) 写回周期(WB)

相关有哪三种类型

数据相关,名相关,控制相关
名相关又分为(反相关,输出相关)

流水线冲突有哪些

结构冲突,数据冲突,控制冲突

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/18495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入分析 Android Activity (二)

文章目录 深入分析 Android Activity (二)1. Activity 的启动模式(Launch Modes)1.1 标准模式(standard)1.2 单顶模式(singleTop)1.3 单任务模式(singleTask)1.4 单实例模式&#xf…

利用边缘计算网关的工业设备数据采集方案探讨-天拓四方

随着工业4.0时代的到来,工业设备数据采集成为了实现智能制造、提升生产效率的关键环节。传统的数据采集方案往往依赖于中心化的数据处理方式,但这种方式在面对海量数据、实时性要求高的工业场景时,往往显得力不从心。因此,利用边缘…

CSS实现一个雨滴滑落效果

使用纯CSS来实现一个真实的雨滴滑落效果可能会有些挑战,因为CSS主要关注于静态样式和简单的动画效果。然而,你可以使用CSS动画和keyframes来模拟一个雨滴滑落的简化效果。 以下是一个基本的示例,展示如何使用CSS来模拟雨滴从顶部滑落到底部的…

AI学习指南数学工具篇-MATLAB中的凸优化工具

AI学习指南数学工具篇-MATLAB中的凸优化工具 在人工智能领域,凸优化是一个非常重要的数学工具,它在机器学习、深度学习、数据分析等领域都有着广泛的应用。而MATLAB作为一款强大的数学工具软件,提供了丰富的凸优化工具和函数,为用…

二叉树的链式结构(二叉树)与顺序结构(堆)---数据结构

一、树的概念与结构 1、树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。我们常把它叫做树,是因为它看起来像一棵倒挂的树,它的根是朝上的,而叶是朝下的。 下面…

给我一个用断言结果执行下一步的例子

在使用 pytest 和 Selenium 进行自动化测试时,通常我们会根据断言的结果来决定测试流程的走向。如果断言失败,测试通常会停止执行后续的步骤,因为失败意味着被测系统没有按照预期工作。然而,有时候我们可能需要在断言失败后执行特…

每日复盘-20240528

今日重点关注: 20240528 六日涨幅最大: ------1--------300956--------- 英力股份 五日涨幅最大: ------1--------301361--------- 众智科技 四日涨幅最大: ------1--------301361--------- 众智科技 三日涨幅最大: ------1--------301361--------- 众智科技 二日涨…

前端编程语言——JS背景知识、JS基础语法、算数运算符和关系运算符(1)

0、前言: JS全称是JavaScript,是一种脚本语言,诞生于1995年,JS是由ECMAScript(包含js语法)、BOM(Brower Oject Model,和浏览器相关操作)、DOM(Document Obje…

ubuntu设置中文输入法教程

在 Ubuntu 上设置中文输入法可以通过以下步骤来完成。我们将以安装和配置 fcitx 输入法框架及其中文输入法插件 fcitx-sunpinyin 为例。 ### 步骤一:安装 fcitx 和中文输入法插件 1. **更新软件包列表** 打开终端并运行以下命令来更新软件包列表: …

浅谈—“文件映射”

目录 文件映射头文件&#xff1a; 核心函数 port flags 文件映射头文件&#xff1a; #include<sys/mman.h> 核心函数 void *mmap(void *addr,size_t length, int port,int flags,int fd, off_t offset ); int munmap(void *addr,size_t length);// 对比free&#x…

联邦和反射器实验

拓扑图 一.实验要求 1.AS1存在两个环回&#xff0c;一个地址为192.168.1.0/24&#xff0c;该地址不能在任何协议中宣告 AS3存在两个环回&#xff0c;一个地址为192.168.2.0/24&#xff0c;该地址不能在任何协议中宣告 AS1还有一个环回地址为10.1.1.0/24&#xff…

PyTorch训练关键点

1.背景 在网上找了一些资料用来训练关键点&#xff0c;一般都是人脸或者车牌关键点训练&#xff0c;或者是联合检测一起训练。很少有是单独基于轻量级网络训练单独关键点模型的工程&#xff0c;本文简单介绍一种简单方法和代码。 2.代码模块 &#xff08;1&#xff09;网络结…

[C][动态内存分配][柔性数组]详细讲解

目录 1.动态内存函数的介绍1.malloc2.free2.calloc4.realloc 2.常见的动态内存错误3.C/C程序的内存开辟4.柔性数组1.是什么&#xff1f;2.柔性数组的特点3.柔性数组的使用4.柔性数组的优势 1.动态内存函数的介绍 1.malloc 函数原型&#xff1a;void* malloc(size_t size)功能…

iOS马甲包, AB面,H5跳转包,开发上架

什么是马甲包 马甲包一般是主APP的分身或者克隆&#xff0c;也或者说是穿着马甲的一个APP&#xff0c;脱掉马甲&#xff0c;APP将呈现另一种样式&#xff0c;也就是常说的AB面APP。 1. 马甲包、AB面、白包、h5跳转包 2.苹果开发者 3.TG&#xff1a;APPYKJ 4.喂心&#xff1…

【AI算法岗面试八股面经【超全整理】——概率论】

AI算法岗面试八股面经【超全整理】 概率论信息论机器学习CVNLP 目录 1、古典概型、几何概型2、条件概率、全概率公式、贝叶斯公式3、先验概率、后验概率4、离散型随机变量的常见分布5、连续型随机变量的常见分别6、数学期望、方差7、协方差、相关系数8、独立、互斥、不相关9.大…

【PB案例学习笔记】-11动画显示窗口

写在前面 这是PB案例学习笔记系列文章的第11篇&#xff0c;该系列文章适合具有一定PB基础的读者。 通过一个个由浅入深的编程实战案例学习&#xff0c;提高编程技巧&#xff0c;以保证小伙伴们能应付公司的各种开发需求。 文章中设计到的源码&#xff0c;小凡都上传到了gite…

ESP32 - Micropython ESP-IDF 双线教程 WIFI (2)

ESP32 - Micropython ESP-IDF 双线教程 WIFI ESP32 - IDF WIFI转换为ESP32-IDF的示例代码main/main.c 代码解释 ESP32 - IDF WIFI 转换为ESP32-IDF的示例代码 以下是使用ESP-IDF&#xff08;Espressif IoT Development Framework&#xff09;编写的连接到Wi-Fi网络的示例代码…

颈源性头痛症状及表

颈源性头痛一般表现为&#xff0c;就是说从枕后一直颞侧&#xff0c;到太阳穴附近&#xff0c;这个是枕小的一个疼痛&#xff0c;还有一部分人从枕后&#xff0c;沿着一个弧线&#xff08;如下图&#xff09;的轨迹到了前额&#xff0c;到我们前额&#xff0c;这样一个疼痛&…

Bitbucket的原理及应用详解(一)

本系列文章简介&#xff1a; 在数字化和全球化的今天&#xff0c;软件开发和项目管理已经成为企业成功的关键因素之一。随着团队规模的扩大和项目的复杂化&#xff0c;如何高效地协同开发、管理代码和确保代码质量成为了开发者和管理者面临的重要挑战。Bitbucket作为一款功能强…

深入解析线程上下文切换:掌握线程上下文切换的核心原理

1. 进程与线程的基本概念 1.1 进程与线程的区别 在操作系统中&#xff0c;进程和线程是两个基本的概念&#xff0c;它们共同构成了程序的执行环境。了解它们的区别是理解线程上下文切换的基础。 进程&#xff1a;进程是程序的一次执行实例。它是操作系统资源分配的基本单位。…