计算机系统结构

本文详细介绍了计算机系统结构的基础知识,包括计算机系统结构的层次性、定义、组成与实现,以及计算机指令集结构、流水线技术和存储系统。特别讨论了存储层次结构、Cache的工作原理、性能指标和优化策略,如不命中率、平均访存时间和替换算法。此外,还涉及了流水线技术中的吞吐率、瓶颈段和最大吞吐率的概念。

计算机系统结构

第一章:计算机系统结构的基本概念

1.2 计算机系统结构的概念

1.2.1 计算机系统的层次结构

  1. 计算机系统=硬件/固件+软件
  2. 计算机语言从低级向高级发展
  3. 从计算机语言的角度,把计算机系统按功能划分成
    多级层次结构

虚拟机:由软件实现的机器

语言实现的两种基本技术:

  • 翻译:先把N+1级程序全部转换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。
  • 解释:每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。

解释执行比编译后再执行所花的时间多,但占用的存储空间较少。

1.2.2 计算机系统结构的定义

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

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

  2. 按照计算机系统的多级层次结构,不同级程序员所看到的计算机具有不同的属性。

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

  4. Amdahl提出的系统结构

    传统机器语言级程序员所看到的计算机属性。

  5. 广义的系统结构定义:指令集结构、组成、硬件
    (计算机设计的3个方面)

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

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

1.2.3 计算机组成和计算机实现

  1. 计算机系统结构:计算机系统的软、硬件的界面
    即机器语言程序员所看到的传统机器级所具有的
    属性。

  2. 计算机组成:计算机系统结构的逻辑实现

    包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
    着眼于:物理机器级内各事件的排序方式与控制方式、各部件的功能以及各部件之间的联系

  3. 计算机实现:计算机组成的物理实现

    包括处理机、主存等部件的物理结构,器件的集
    成度和速度,模块、插件、底板的划分与连接,
    信号传输,电源、冷却及整机装配技术等。
    着眼于:器件技术(起主导作用)、微组装技术。

  4. 系列机

    同一厂家生产的具有相同系统结构、但具有
    不同组成和实现的一系列不同型号的计算机。

一种体系结构可以有多种组成。

一种组成可以有多种物理实现。

1.2.4 计算机系统结构的分类

常见的计算机系统结构分类法有两种:Flynn分类法、冯氏分类法

  1. 冯氏分类法
    • 用系统的最大并行度对计算机进行分类。
    • 最大并行度:计算机系统在单位时间内能够处理
      的最大的二进制位数。
  2. Flynn分类法
    • 按照指令流和数据流的多倍性进行分类。
    • 指令流:计算机执行的指令序列。
    • 数据流:由指令流调用的数据序列。
    • 多倍性:在系统受限的部件上,同时处于同一执
      行阶段的指令或数据的最大数目。

1.3 定量分析技术

4个定量原理:

  1. 以经常性事件为重点

    • 对经常发生的情况采用优化方法的原则进行选
      择,以得到更多的总体上的改进。
    • 优化是指分配更多的资源、达到更高的性能或
      者分配更多的电能等。
  2. Amdahl定律

    加快某部件执行速度所能获得的系统性能加速
    比,受限于该部件的执行时间占系统中总执行时间
    的百分比。

    系统性能加速比:
    在这里插入图片描述

    • 加速比依赖于两个因素

      可改进比例:在改进前的系统中,可改进部分的执行时间在总的执行时间中所占的比例。
      它总是小于等于1

      例如:一个需运行60秒的程序中有20秒的运算可以加速, 那么这个比例就是20/60。

      部件加速比:可改进部分改进以后性能提高的倍数。它是改进前所需的执行时间与改进后执行时间的比。
      一般情况下部件加速比是大于1的。

      例如:若系统改进后,可改进部分的执行时间是2秒,
      而改进前其执行时间为5秒,则部件加速比为5/2。

      改进后程序的总执行时间

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DW6MWGnJ-1639486688323)(C:\Users\13007\AppData\Roaming\Typora\typora-user-images\image-20211214200741851.png)]

      系统加速比为改进前与改进后总执行时间之比

在这里插入图片描述

  • 例1.1 将计算机系统中某一功能的处理速度提高到原来的20倍,但该功能的处理时间仅占整个系统运行时间的40%,则采用此提高性能的方法后,能使整个系统的性能提高多少?
    解 由题可知,可改进比例 = 40% = 0.4,
    部件加速比 = 20
    根据Amdahl定律可知:
    在这里插入图片描述

    采用此提高性能的方法后,能使整个系统的性能提高到原来的1.613倍。

  • 例1.2 某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的20倍,而系统运行某一程序的整体性能提高到原来的5倍,试计算该程序中浮点操作所占的比例。
    解 由题可知,部件加速比 = 20,系统加速比 = 5
    根据Amdahl定律可知在这里插入图片描述

    由此可得:可改进比例 = 84.2%
    即程序中浮点操作所占的比例为84.2%。

  • Amdahl定律:一种性能改进的递减规则

    • 如果仅仅对计算任务中的一部分做性能改进,则改
      进得越多,所得到的总体性能的提升就越有限。
  • 重要推论:如果只针对整个任务的一部分进行改
    进和优化,那么所获得的加速比不超过
    1/(1-可改进比例)

第二章 计算机指令集结构

2.1 指令集结构的分类

  1. 区别不同指令集结构的主要因素

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

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

    • 堆栈
    • 累加器
    • 通用寄存器组
  3. 将指令集结构分为三种类型

    • 堆栈结构
    • 累加器结构
    • 通用寄存器结构
      根据操作数的来源不同,又可进一步分为:
      • 寄存器-存储器结构(RM结构)
        (操作数可以来自存储器 )
      • 寄存器-寄存器结构(RR结构)
        (所有操作数都是来自通用寄存器组)
        也称为load-store结构,这个名称强调:只有load指令和store指令能够访问存储器。

2.2 寻址方式

2.3 指令集结构的功能设计

  1. 指令集结构的功能设计

    • 确定软、硬件功能分配,即确定哪些基本功能应该由硬件实现,哪些功能由软件实现比较合适。
  2. 在确定哪些基本功能用硬件来实现时,主要考虑3个因素:速度、成本、灵活性

    • 硬件实现的特点
      速度快、成本高、灵活性差
    • 软件实现的特点
      速度慢、价格便宜、灵活性好
  3. 对指令集的基本要求
    完整性、规整性、高效率、兼容性

    • 完整性:在一个有限可用的存储空间内,对于任何可解的问题,编制计算程序时,指令集所提供的指令足够用。
    • 规整性:主要包括对称性和均匀性。
    • 高效率:指指令的执行速度快、使用频度高。
  4. 在设计指令集结构时,有两种截然不同的设计策略。

    (产生了两类不同的计算机系统 )

    • CISC(复杂指令集计算机)

      增强指令功能,把越来越多的功能交由硬件来实现,并且指令的数量也是越来越多。

    • RISC(精简指令集计算机)

      尽可能地把指令集简化,不仅指令的条数少,而且指令的功能也比较简单。

2.4 操作数的类型和大小
2.5 指令格式的设计
2.6 MIPS指令集结构

第三章:流水线技术

3.1 流水线的基本概念

  1. 流水线技术
    • 把一个重复的过程分解为若干个子过程,每个子过程由专门的功能部件来实现。
    • 把多个处理过程在时间上错开,依次通过各功能段,这样,每个子过程就可以与其他的子过程并行进行。
  2. 流水线中的每个子过程及其功能部件称为流水线的级或段,段与段相互连接形成流水线。流水线的段数称为流水线的深度
  3. 流水技术的特点
    • 流水线把一个处理过程分解为若干个子过程(段),每个子过程由一个专门的功能部件来实现。
    • <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值