计算机系统结构期末复习

名词解释

程序访问局部性

时间局部性是指最近被访问过的数据很可能再次被访问

空间局部性是指最近被访问过的存储空间的附近空间可能会被访问

计算机体系结构

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

窗口重叠技术

为了能更简单、更直接地实现过程与过程之间的参数传递,大多数 R I S C RISC RISC 机器的 C P U CPU CPU 中都设置有数量较大的寄存器组,让每个过程使用一个有限数量的寄存器窗口,并让各个过程的寄存器窗口部分重叠,这就是窗口重叠技术

透明性

对本来是存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性

在一个计算机系统中,低层机器的属性对高层机器的程序员往往是透明的,如传统机器级的概念性结构和功能特性,对高级语言程序员来说是透明的

存储系统

存储系统是指计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统

并行交叉访问

每个模块各自以等同的方式与 C P U CPU CPU 传递信息,既能并行工作,又能交叉工作

相联存储器

相联存储器是一种不根据地址而是根据存储内容来进行存取的存储器,可以实现快速地查找快表

地址映像

指某一数据在主存中的地址与缓存中的对应关系

流水线

将一个重复的时序过程,分解成为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其它子过程同时执行

吞吐率

单位时间内通过某通信信道或某个节点成功交付数据的平均速率

超级标量机

超级标量机能同时对若干条指令进行译码,将可以并行执行的指令送往不同的执行部件,在程序运行期间,由硬件来完成指令调度

并行处理机

并行处理器指可以一次可处理多个运算的处理器

多处理机

多处理机是具有多个处理机的计算机,能够大大提高计算机的处理速度

多Cache一致性

多处理机中,当共享数据进入 C a c h e Cache Cache,就可能出现多个处理器的 C a c h e Cache Cache 中都有同一存储器块的副本,要保证多个副本数据是一致的

互联网络

一种由开关元件按照一定的拓扑结构和控制方式构成的网络,用来实现计算机系统中结点之间的相互连接。在拓扑上,互连网络是输入结点到输出结点之间的一组互连或映象。

多级互联网

多级互联网络是由大量的基本交换模块按照特定的拓扑结构相互连接构成,形成一个更大规模的能够进行信元交换的交换网络

Omega网

O m e g a Omega Omega 网络是一种多级混洗交换网络,每一级包含一个无条件混洗拓扑线路和一列可控的二元交换开关

立方体多级网

采用交换互连单级网络串接起来形成的网络

虫蚀寻径

把包进一步分成更小的片,与结点相连的硬件寻径器中有片缓冲区,消息从源结点传送到目的结点要经过一系列寻径器

DMA传送方式

直接内存访问,是一种不经过 C P U CPU CPU 而直接从内存存取数据的数据交换模式

I/O接口

l / O l/O l/O 接口是主机与被控对象进行信息交换的纽带。主机通过 I / O I/O I/O 接口与外部设备进行数据交换

多核

多核指在一枚处理器中集成两个或多个完整的计算引擎

选择题

  1. 指令系统的指令编码方法,下列哪个不是( D

    A. 正交法 B. 整体法 C. 混合法 D. 精简法

  2. 对数据描述符的说法,下列哪项不正确(D

    A. 数据描述符是用来描述复杂的数据结构的,如向量、数组、记录等。

    B. 描述符专用来描述所要访问一组数据的属性,包括整个数据块的地址长度及其它信息,它和数据字分开存储。

    C. 在描述一个数据块时,描述符的“长度”字段指明块内的元素个数,“地址”字段指明首元素的地址。

    D. 一个描述符不可以应用于一个数据块内所有的元素。

  3. 下列说法不正确的是(D

    A. 编址方式指对各种存储设备进行编码的方法,主要内容包括编址单位、零地址空间个数、并行存储器编址技术、输入输出设备的非线性编址技术;

    B. 字编址方式是最简单、最容易实现的一种。每个编址单位与设备的访问单位一致,每取完一条指令,程序计数器加 1 1 1,每从主存储器中读完一个数据,地址计算器加 1 1 1

    C. 为了提供对非数值运算的支持,往往使用字节编址或位编址技术;

    D. 计算机中需要进行编址的设备主要有通用寄存器、主存储器、输入输出设备。由于三种设备采用的寻址技术有较大区别,不可以对它们进行统一编址。

  4. 下列有关高速缓冲存储器的说法不正确的是(D

    A. 目前所有主流处理器都具有一级缓存和二级缓存,少数高端的还集成了三级缓存;

    B. 一级缓存可分为一级指令缓存和一级数据缓存;

    C. 二级缓存相当于是一级缓存的缓冲器;

    D. 无论是二级缓存、三级缓存还是内存都不能存储处理器操作的原始指令,这些指令只能存储在 C P U CPU CPU 的一级数据缓存中

  5. 计算机系统结构的外特性是指( C )所看到的外特性。

    A. 应用程序员 B. 高级语言程序员 C. 机器语言程序员或编译程序编写者 D. 包括以上各级程序员

  6. 计算机系统的描述: T C R A Y − 1 = 1 , 12 ∗ 8 , 64 ∗ ( 1 − 14 ) T{CRAY-1}={1,12*8,64*(1-14)} TCRAY1=112864(114),说明该系统流水段为( D ) 。

    A. 12 B. 8 C. 64 D. 1-14

  7. 计算机系统设计任务之一,在满足功能要求基础上,进行设计优化,优化的主要衡量指标是( B )。

    A. 硬件简化程度 B. 编程开销 C. 降低成本 D. 性能价格比

  8. 用软件方法可在一台现有的计算机(甲)上实现另一台计算机(乙)的指令系统,通常把乙机称为( B )。

    A.宿主机 B. 虚拟机 C. 目标机 D. 系统机

  9. 统计计算机性能测试结果有多种方法,其中( C )最接近 C P U CPU CPU 的实际性能。

    A. 算术性能平均值 B. 几何性能平均值 C. 调和性能平均值 D. 峰值性能指标

  10. 在设计指令系统时应注意:指令中各个不同含义的字段之间,在编码时应互相独立、互不相关。即( A )原则:

    A. 正交性 B. 规整性 C. 对称性 D. 可扩充性

  11. 采用先行控制技术需增设一些缓冲部件,这些缓冲部件的深度之间存在的关系是( A )。

    A. D指缓 ≥ \ge D操作数 ≥ \ge D读栈 ≥ \ge D写栈

    B. D操作数 ≥ \ge D指缓 ≥ \ge D读栈 ≥ \ge D写栈

    C. D读栈 ≥ \ge D写栈 ≥ \ge D指缓 ≥ \ge D操作数

    D. D读栈 ≥ \ge D写栈 ≥ \ge D操作数 ≥ \ge D指缓

  12. 用动态再定位形成访存物理地址的方法是在( B )时进行的。

    A.程序装入 B.程序执行 C. 程序编译 D. 程序连接

  13. C a c h e Cache Cache 存储器地址映象算法中,( C )所需硬件最少。

    A. 段相联映象法 B. 组相联映象法 C. 直接映象法 D. 全相联映象法

  14. 特别适合于打印机等低速设备的总线数据宽度为( D )。

    A. 可变长块 B. 定长块 C. 单字加定长块 D. 单字(或单字节)

  15. 中断系统采用( C )性能最佳。

    A. 全硬件实现 B. 全软件实现 C. 软硬结合 D. 并行结构

  16. 如果快表采用堆栈替换算法,则( A ),其命中率越高。

    A. 快表容量大 B. 快表查找速度快 C. 快表用全硬件实现 D. 快表用软硬结合实现

  17. 主存保护的存储区域保护方法中,下列哪个不是(D

    A. 界限寄存器保护方式 B. 键保护方式 C. 环保护方式 D. 段表保护

  18. 当互联函数用来实现处理机之间数据变换时,互联函数也反映了网络输入数组与输出数组对应的排列关系。下列哪种不是互联函数的表示方法(D

    A. 输入输出对应表示法 B. 循环表示法 C. 函数表示法 D. 碟式置换

  19. 通道的种类说法中不对的是(D

    A. 字节多路通道 B. 选择通道 C. 数组多路通道 D. 块多路通道

  20. M i p s Mips Mips 的说法中,哪项是不对的(D

    A. M I P S MIPS MIPS 是世界上流行的一种 C I S C CISC CISC 处理器,其意思是“无内部互锁流水级的微处理器”,其机制是尽量从软件角度避免流水线中的数据相关问题。

    B. M I P S MIPS MIPS 是出现最早的商业 R I S C RISC RISC 架构芯片之一。

    C. M I P S MIPS MIPS 体系结构家族经历了最初的 M I P S   I MIPS\ I MIPS I M I P S   V MIPS\ V MIPS V 几个时代,在实现方式上有一些不同。

    D.$ MIPS$ 中,其内存操作只能加载/存储经过数据类型转换后按地址对齐的数据。

  21. 在其它部件性能保持不变的情况下,对 C P U CPU CPU 性能的不断改进并没有获得期望的结果,这主要是受到了(A)的影响。

    A. Amdahl定律 B. 流水线 C. 指令集 D. 体系结构

  22. 若某 C P U CPU CPU 只有一个存储器,采用 D L X DLX DLX 流水线并执行如下的程序段,

    ①SD (R1),R2

    ②LD R3,(R1)

    ③ADD 0(R1)

    ④SUB R3,R1;

    则该程序段中指令①和指令④的关系属于(A) 。

    A 数据相关 B 名相关 C 控制相关 D 结构相关

  23. 冯∙诺依曼计算机的基本原理是(D

    A. 程序外接 B. 逻辑连接 C. 数据内置 D. 程序存储

  24. 在计算机系统设计中,比较好的方法是(D

    A. 从上向下设计 B. 从下向上设计 C. 从两头向中间设计 D. 从中间开始向上,向下设计

  25. I L L I A C ILLIAC ILLIAC 是一种(C

    A. 流水线处理机 B. 指令重叠处理机 C. 阵列处理机 D. 多处理机

  26. 能实现作业、任务级并行的异构型多处理机属(C

    A. MISD B.SIMD C.MIMD D.SISD

  27. 非线性流水线是指(B

    A. 一次运算中使用流水线中多个功能段

    B. 一次运算中要多次使用流水线中的某些功能段

    C. 流水线中的某些功能段在各次运算中的作用不同

    D. 流水线中的各个功能段在各种运算中有不同的组合

  28. C a c h e Cache Cache 存储器常用的地址映像方式是(D

    A. 全相联映象 B. 页表法映象 C. 组相联映象 D. 段页表映象

  29. 磁盘外部设备适合于连接(A

    A. 数组多路通道或选择通道 B. 字节多路通道或选择通道

    C. 数组多路通道或字节通道 D. 任意一种通道

  30. 用循环表示 PM2-1 的互连函数,应该是(A

    A. (6 4 2 0)(7 5 3 1) B. (0 2 4 6)(1 3 5 7)

    C. (0 1 2 3 4 5 6 7) D. (7 6 5 4 3 2 1 0)

  31. 在共享主存的多处理机中,为减少访主存冲突,采用的方式一般是(A

    A. 并行多体交叉主存系统 B. 虚拟存储器 C. 共享 Cache 存储器 D. 用高速单体主存储器

  32. 以下叙述中,错误的是(B)

    A. 采用分布式存储器以 M I M D MIMD MIMD 方式工作的多机系统将成为并行机发展的主流趋向

    B. 系列机具有相同系统结构,兼容机具有不同系统结构

    C. “先读后写”数据相关只会出现在异步流动流水线中

    D. 归约机系统结构采取的是种滞后求值策略

判断题

  1. 无论采用什么方法,只要消除流水线的瓶颈段,就能提高流水线的吞吐率和效率。(F )
  2. C a c h e Cache Cache 组相联映象的块冲突概率比直接映象的高。(F
  3. 程序的空间局部性指程序即将用到的信息很可能就是目前正在使用的信息。(F
  4. C P U CPU CPU 性能公式中指令条数(IC)与指令集格式和编译器有关。(T)
  5. 机群是一种价格低廉、易于构建、可扩缩性极强的并行计算机系统。(T
  6. 松耦合多处理机适合做粗粒度的并行计算,处理的作业分割成若干相对独立的任务。(T
  7. 从根本上来看,多处理机实现的是更高一级的作业或任务间的并行,是开发并行中的并发性。(T
  8. 阵列处理机主要是针对向量、数组处理实现向量指令操作级的并行,是开发并行性中的同时性。(T
  9. 单级互联网只能实现有限几种基本连接,并不能实现任意处理器之间的互联。(T)
  10. SMP也就是对称型多处理机。(T
  11. 共享存储型多处理机有三种模型:均匀存储器存取( U M A UMA UMA)模型、非均匀存储器存取( N U M A NUMA NUMA)模型、只用高速缓存的存储器结构( C O M A COMA COMA)模型。(T
  12. 计算机三级存储系统是指高速缓冲存储器、主存储器、辅助存储器。(T
  13. 指令集结构中采用多种寻址方式可能会增加实现的复杂度和使用这些寻址方式的指令的CPI。(T
  14. 机群是一种价格低廉、易于构建、可扩缩性极强的并行计算机系统。(T
  15. n n n 维超立方体单级互联网络中的节点数为 n n n。(T
  16. 指令集结构中采用多种寻址方式可能会增加实现的复杂度和使用这些寻址方式的指令的 C P I CPI CPI。(T
  17. 在多处理机的互连网络中,交叉开关网络属于动态互连网络。(T
  18. 组相联或直接映象 C a c h e Cache Cache 中才可能存在冲突失效。(T)
  19. 要使线性流水线的实际吞吐率接近于理想的最大吞吐率,应将子过程数分得越多越好。(F

简答题

  1. R I S C RISC RISC 结构设计原则是什么?

    ① 使用频度很高的指令

    ② 大大减少寻址方式

    ③ 所有指令在一个机器周期内完成

    ④ 扩大通用寄存器个数

    ⑤ 采用硬联控制实现

    ⑥ 通过精简指令和优化设计编译程序,以简单有效的方式支持高级语言

  2. 简述 R I S C RISC RISC 技术的特点?

    从指令系统结构上看, R I S C RISC RISC 体系结构一般具有如下特点:

    (1) 精简指令系统。可以通过对过去大量的机器语言程序进行指令使用频度的统计,来选 取其中常用的基本指令,并根据对操作系统、高级语言和应用环境等的支持增设一些最常用的指令;

    (2) 减少指令系统可采用的寻址方式种类,一般限制在 2 2 2 3 3 3 种;

    (3) 在指令的功能、格式和编码设计上尽可能地简化和规整,让所有指令尽可能等长;

    (4) 单机器周期指令,即大多数的指令都可以在一个机器周期内完成,并且允许处理器在同一时间内执行一系列的指令。

  3. C I S C CISC CISC 设计风格的主要特点

    (1) 指令系统复杂;

    (2) 绝大多数指令需要多个机器周期方可执行完毕;

    (3) 各种指令都可访问存储器;

    (4) 采用微程序控制;

    (5) 有专用寄存器;

    (6) 难以用优化编译器生成高效的目标代码程序。

  4. 在三级存储体系中, C a c h e − Cache- Cache主存和主存-辅存这两个存储层次有何区别和相同之处。

    区别

    (1) 侧重点不同

    C a c h e Cache Cache 主要解决主存与 C P U CPU CPU 的速度差异问题;而就性能价格比的提高而言,辅存主要是解决存储容量问题,另外还包括存储管理、主存分配和存储保护等方面。

    (2) 数据通路不同

    C P U CPU CPU C a c h e Cache Cache 和主存之间均有直接访问通路, C a c h e Cache Cache 不命中时可直接访问主存;而辅存与 C P U CPU CPU 之间不存在直接的数据通路,当主存不命中时只能通过调页解决, C P U CPU CPU 最终还是要访问主存。

    (3) 透明性不同

    C a c h e Cache Cache 的管理完全由硬件完成,对系统程序员和应用程序员均透明;而辅存管理由软件(操作系统)和硬件共同完成,由于软件的介入,辅存对实现存储管理的系统程序员不透明,而只对应用程序员透明。

    (4) 未命中时的损失不同

    由于主存的存取时间是 C a c h e Cache Cache 的存取时间的 5~10 倍,而主存的存取速度通常比辅存的存取速度快上千倍,故主存未命中时系统的性能损失要远大于 C a c h e Cache Cache 未命中时的损失。

    相同之处

    (1) 出发点相同

    二者都是为了提高存储系统的性能价格比而构造的分层存储体系,都力图使存储系统的性能接近高速存储器,而价格和容量接近低速存储器。

    (2) 原理相同

    都是利用了程序运行时的局部性原理把最近常用的信息块从相对慢速而大容量的存储器调入相对高速而小容量的存储器。

  5. 简述线性流水线和非线性流水线的调度方法。

    线性流水线的调度非常简单,可以在每一个时钟周期向流水线输入一个新任务,为了避免流水线发生冲突,一般采用延迟输入新任务的方法

    非线性流水线调度的任务是要找出一个最小的循环周期,按照这周期向流水线输入新任务,流水线的各个流水段都不会发生冲突,而且流水线的吞吐率和效率最高

  6. 简述流水线三种冲突(资源、数据、控制相关)的概念和处理方法。

    当指令在重叠执行过程中,不同指令争用同一功能部件产生资源冲突时产生资源相关

    • 前一指令访存时,使后一 条相关指令(以及其后续指令)暂停一个时钟周期
    • 单独设置数据存储器和指令存储器,使两项操作各自在不同的存储器中进行

    指令在流水线中重叠执行时,当后继指令需要用到前面的指令产生的结果时发生数据相关

    • 通过编译器对数据相关的指令编译优化的方法,调整指令顺序来解决数据相关
    • 采用数据旁路技术
    • 把遇到数据相关的指令及其后续指令都暂停一至几个时钟周期,直到数据相关问题消失后再继续执行

    当流水线遇到转移指令和其他改变 P C PC PC 值的指令而造成断流时,会引起控制相关

    • 对转移指令进行分支预测,尽早生成转移目标地址
    • 预取转移成功和不成功两个控制流方向上的目标指令
    • 加快和提前形成条件码
    • 提高转移方向的猜准率
  7. 并行处理机的特点

    1. 速度快,特别适于高速数值计算
    2. S I M D SIMD SIMD 依靠的是资源重复,而不是时间重叠
    3. 依赖于互连网络和并行算法
    4. 需要有一台高性能的标量处理机
    5. S I M D SIMD SIMD 基本上是一台向量处理专用计算机
  8. 根据主存中存储体的个数以及 C P U CPU CPU 访问主存一次所能读出的信息的位数,可以将主存系统分成哪几类,解释其各自内容并说明是否具有并行性。

    1. 字串位串

      每次只对一个字的一位进行处理。这是最基本的串行处理方式,不存在并行性

    2. 字串位并

      同时对一个字的全部位进行处理,不同字之间是串行的。已开始出现并行性

    3. 字并位串

      同时对许多字的同一位进行处理,这种方式具有较高的并行性

    4. 全并行

      同时对许多字的全部位或部分位进行处理,这是最高一级的并行

  9. 什么是通道流量,以及三种类型的通道的流量。

    通道流量是通道在数据传送期内,单位时间内能够传送的最大数据量,一般用字节个数来表示

    • 字节多路通道每选择一台设备只传送一个字节
    • 数组多路通道每选择一台设备 可传送完 K K K 个字节。 如果要传送 N N N 个字节, 就得分 N / K N/K N/K 次传送才行, 每次传送都要选一次设备
    • 选择通道 每选择一台设备就把 N N N 个字节全部传送完
  10. 简要叙述模拟和仿真的异同点。

    模拟和仿真能在结构不同的机器之间实现机器语言程序的移植。

    模拟是用机器语言程序解释另一机器的机器指令实现软件移植的方法。模拟方法在机器指令系统差异比较大时,会使程序运行速度严重下降。

    仿真是用微程序直接解释另一机器的机器指令实现软件移植的方法。仿真可以提高被移植软件运行速度,但机器结构差异较大时,很难实现。

    区别是模拟用机器语言解释,其解释程序在主存中;仿真用微程序解释,其解释程序在控制存储器中。

  11. 标志符数据表示与描述符数据表示有何区别?描述符数据表示与向量数据表示对向量数据结构所提供的支持有什么不同?

    标志符数据表示与描述符数据表示的差别是标志符与每个数据相连,合存于同一存储单元,描述单个数据的类型特性;描述符是与数据分开存放,用于描述向量、数组等成块数据的特征。
    描述符数据表示为向量、数组的的实现提供了支持,有利于简化高级语言程序编译中的代码生成,可以比变址法更快地形成数据元素的地址。但描述符数据表示并不支持向量、数组数据结构的高效实现。而在有向量、数组数据表示的向量处理机上,用一条向量、数组指令流水或同时对整个向量、数组高速处理。这些比起用与向量、阵列无关的机器语言和数据表示串行实现要高效的多。

  12. 什么是多处理机的一致性?给出解决一致性的监听协议和目录协议的工作原理。

    (1) 对多个处理器维护一致性的协议称为 C a c h e Cache Cache 一致性协议。

    (2) 目录协议的工作原理

    采用一个集中的数据结构——目录。对于存储器中的每一个可以调入 C a c h e Cache Cache 的数据块,在目录中设置一条目录项,用于记录该块的状态以及哪些 C a c h e Cache Cache 中有副本等相关信息。目录协议根据该项目中的信息以及当前要进行的访问操作,依次对相应的 C a c h e Cache Cache 发送控制消息,并完成对目录项信息的修改。此外,还要向请求处理器发送响应信息。

    (3) 监听协议的工作原理

    每个 C a c h e Cache Cache 除了包含物理存储器中块的数据拷贝之外,也保存着各个块的共享状态信息。 C a c h e Cache Cache 通常连在共享存储器的总线上,当某个 C a c h e Cache Cache 需要访问存储器时,它会把请求放到总线上广播出去,其他各个 C a c h e Cache Cache 控制器通过监听总线来判断它们是否有总线上请求的数据块。如果有,就进行相应的操作。

  13. 简要叙述“阿姆达尔定律”的内容和含义。

    “阿姆达尔定律”是指系统中对某一部件采用某种更快执行方式所能获得的系统性能改进程度,取决于这种执行方式被使用的频率,或所占总执行时间的比例。

  14. 提高计算机系统并行性的技术途径有哪三个 ?简要解释并各举一例。

    有时间重叠、资源重复、资源共享等三个途径。

    • 时间重叠是让多个处理过程在实践上相互错开,轮流使用统一硬件设备的各个处理部分,以加快执行速度的方法。如流水线处理机 C R A Y − 1 CRAY-1 CRAY1
    • 资源重复是通过重复设置硬件资源来提高性能。如阵列处理机 I L L I A C − Ⅳ ILLIAC-Ⅳ ILLIAC
    • 资源共享是利用软件方法让多个用户共享同一套资源,来提高资源利用率和系统性能的。如多道程序分时系统、多处理机、分布处理系统、计算机网等。

应用题

  1. 若有一静态多功能流水线分为 6 6 6 段,如下图所示,其中乘法流水线由 1 、 2 、 3 、 6 1、2、3、6 1236 段组成,加法流水线由 1 、 4 、 5 、 6 1、4、5、6 1456 段组成。使用流水线时,要等某种功能(如加法)操作都处理完毕后才能转换成另一种功能(如乘法)。

    若要计算 A ∗ B = ( a 1 + b 1 ) ∗ ( a 2 + b 2 ) ∗ ( a 3 + b 3 ) A*B= (a1+b1)*(a2+b2)*(a3+b3) AB=(a1+b1)(a2+b2)(a3+b3)

    image-20221120161403280

    (1) 在上述流水方式下,完成 A ∗ B A*B AB 需多少时间?画出时空图并计算此流水线的使用效率和吞吐率。

    A ∗ B A*B AB 式子中,小括号内为加法,根据题目规定,要等某种功能处理完毕后才可以切换功能,所以流水线会先完成加法。

    同时由于两次乘法计算中,后一次依赖于前一次的结果,因此不能并行操作

    image-20221120162529369
    ∴ 完 成 A ∗ B 需 要 19 τ 效 率 E = n 个 任 务 占 用 的 时 空 区 总 时 空 区 = ( 3 + 3 + 3 + 6 + 3 + 2 + 3 + 2 ) τ 6 ∗ 19 τ = 25 114 吞 吐 率 T p = 总 任 务 数 完 成 所 有 任 务 的 时 间 = 5 19 τ \therefore 完成A*B需要19\tau\\ 效率E=\dfrac{n个任务占用的时空区}{总时空区}=\dfrac{(3+3+3+6+3+2+3+2)\tau}{6*19\tau}=\dfrac{25}{114}\\ 吞吐率T_p=\dfrac{总任务数}{完成所有任务的时间}=\dfrac{5}{19\tau} AB19τE=n=619τ(3+3+3+6+3+2+3+2)τ=11425Tp==19τ5
    (2)与顺序运算方式相比,加速比为多少?
    加 速 比 S p = T 非 流 水 T 流 水 = 25 τ 19 τ = 25 19 加速比S_p=\dfrac{T_{非流水}}{T_{流水}}=\dfrac{25\tau}{19\tau}=\dfrac{25}{19} Sp=TT=19τ25τ=1925

  2. 假设在一个采用组相联映象方式的 C a c h e Cache Cache 中,主存由 B 0 ~ B 7 B0~B7 B0B7 8 8 8 块组成, C a c h e Cache Cache 2 2 2 组,每组 2 2 2 块,每块的大小为 16 16 16 个字节,采用 L F U LFU LFU 块替换算法。在一个程序执行过程中依次访问这个 C a c h e Cache Cache 的块地址流如下

    6 , 2 , 4 , 1 , 4 , 6 , 3 , 0 , 4 , 5 , 7 , 3 6,2,4,1,4,6,3,0,4,5,7,3 624146304573

    (1) 写出主存地址的格式,并标出各字段的长度。

    按字节编址, 16 B 16B 16B 对应 16 16 16 个地址,所以块内地址长度 4 b i t 4bit 4bit

    组号与组内块号都是 2 2 2,所以其地址长度为 1 b i t 1bit 1bit

    主存共 8 8 8 块,共要 3 b i t 3bit 3bit 进行指向,被组号与组内块号占去后只剩下 1 b i t 1bit 1bit 空间

    主存地址格式如下👇

    image-20221120165058474

    (2) 写出 C a c h e Cache Cache 地址的格式,并标出各字段的长度。

    C a c h e Cache Cache 地址格式与主存类似,不过其没有区号,如下👇

    image-20221120165157472

    (3) 写出主存与 C a c h e Cache Cache 之间各个块的映象对应关系。

    主存的组到 C a c h e Cache Cache 的组之间是直接映像;对应组的块之间是全相联映像

    即主存块 0 , 1 , 4 , 5 0,1,4,5 0145 只能装入 C a c h e Cache Cache 0 , 1 0,1 01 的任意位置上

    主存块 2 , 3 , 6 , 7 2,3,6,7 2367 只能装入 C a c h e Cache Cache 2 , 3 2,3 23 的任意位置上

    image-20221120165738132

    (4) 如果 C a c h e Cache Cache 的各个块号为 C 0 、 C 1 、 C 2 C0、C1、C2 C0C1C2 C 3 C3 C3,列出程序执行过程中 C a c h e Cache Cache 的块地址流情况。

    访问Cache时与区号无关,只需考虑组号与组内地址,在此题中仅与块号后两位相关

    image-20221120171920543

    (5)采用 L R U LRU LRU 替换算法,计算 C a c h e Cache Cache 的块命中率。

    L R U LRU LRU 为最近最久未使用算法,调度过程如下所示👇

    image-20221120172148754 $$ Cache命中率=\dfrac{命中次数}{总操作次数}=\dfrac{4}{12}=\dfrac{1}{3} $$
  3. 有一台模型机,有以下十种不同的指令,使用频率表示如下

    T1: 20% T2: 12% T3:11% T4: 15% T5: 8%

    T6:3% T7:2% T8:18% T9:10% T10:1%

    image-20221120183559310

    (1) 上图为哈夫曼编码图,求其平均长度及其表示
    到 叶 子 结 点 的 深 度 即 为 指 令 编 码 代 价 长 度 , 接 着 乘 上 使 用 频 率 再 求 和 即 为 指 令 平 均 长 度 2 ∗ 0.2 + 3 ∗ ( 0.1 + 0.11 + 0.12 + 0.15 + 0.18 ) + 4 ∗ 0.08 + 5 ∗ 0.03 + 6 ∗ ( 0.01 + 0.02 ) = 3.03 各 指 令 的 编 码 表 示 如 下 👇 : T 1 : 00             T 2 : 110             T 3 : 010             T 4 : 101             T 5 : 1110 T 6 : 1110             T 7 : 111110             T 8 : 100             T 9 : 011             T 10 : 111111 到叶子结点的深度即为指令编码代价长度,接着乘上使用频率再求和即为指令平均长度\\ 2*0.2+3*(0.1+0.11+0.12+0.15+0.18)+4*0.08+5*0.03+6*(0.01+0.02)=3.03\\ 各指令的编码表示如下👇:\\ T1:00\ \ \ \ \ \ \ \ \ \ \ T2:110\ \ \ \ \ \ \ \ \ \ \ T3:010\ \ \ \ \ \ \ \ \ \ \ T4:101\ \ \ \ \ \ \ \ \ \ \ T5:1110\\ T6:1110\ \ \ \ \ \ \ \ \ \ \ T7:111110\ \ \ \ \ \ \ \ \ \ \ T8:100\ \ \ \ \ \ \ \ \ \ \ T9:011\ \ \ \ \ \ \ \ \ \ \ T10:111111\\ 使20.2+3(0.1+0.11+0.12+0.15+0.18)+40.08+50.03+6(0.01+0.02)=3.03👇T1:00           T2:110           T3:010           T4:101           T5:1110T6:1110           T7:111110           T8:100           T9:011           T10:111111
    (2) 若用定长操作码表示至少需要多少位

    总共有十条指令,因此定长操作码至少需要 4 4 4

    (3) 用扩展操作码(只有两位)可以有多种方式表示,要求平均长度不能大于3.2,给出最合理的编码方式,并求出平均编码长度?
    总 共 有 10 个 指 令 , 长 度 为 3 的 编 码 总 共 可 以 表 示 8 个 指 令 将 8 个 指 令 中 后 两 个 编 码 110 , 111 空 出 来 , 使 其 扩 展 为 长 度 为 4 的 编 码 : 1101 , 1100 , 1110 , 1111 ∴ 此 时 长 度 为 4 的 编 码 有 4 个 , 长 度 为 3 的 编 码 有 6 个 , 正 好 十 个 编 码 此 时 平 均 长 度 = 3 ∗ ( 10 + 11 + 12 + 15 + 18 + 20 ) % + 4 ∗ ( 1 + 2 + 3 + 8 ) % = 3.14 < 3.2 符 合 题 目 要 求 总共有10个指令,长度为3的编码总共可以表示8个指令\\ 将8个指令中后两个编码110,111空出来,使其扩展为长度为4的编码:1101,1100,1110,1111\\ \therefore 此时长度为4的编码有4个,长度为3的编码有6个,正好十个编码\\ 此时平均长度=3*(10+11+12+15+18+20)\%+4*(1+2+3+8)\% =3.14<3.2\\ 符合题目要求 10388110111使41101,1100,1110,11114436=310+11+12+15+18+20%+4(1+2+3+8)%=3.14<3.2

  4. 四段流水线, △ t 1 = △ t 3 = △ t 4 = △ t , △ t 2 = 3 △ t △t1=△t3=△t4=△t,△t2=3△t t1=t3=t4=tt2=3t,计算 4 4 4 个任务、 10 10 10 个任务时 吞 吐 率 T P , 效 率 η 、 加 速 比 S P 吞吐率T_P,效率η、加速比S_P TPηSP

    image-20221120193455414 image-20221204213212967 image-20221120194314194 image-20221204213306121
  5. 假设机器的时钟周期为 10 n s 10ns 10ns C a c h e Cache Cache 失效时的访存时间为 20 20 20 个时钟周期, C a c h e Cache Cache 的访问时间为一个时钟周期。

    (1) 设失效率为 0.05 0.05 0.05,忽略写操作时的其它延迟,求机器的平均访存时间。
    C a c h e 成 功 时 只 用 1 个 时 钟 周 期 , 失 效 时 需 要 20 个 时 钟 周 期 ∴ t = 0.95 ∗ 1 ∗ 10 + 0.05 ∗ 20 ∗ 10 = 19.5   ( n s ) Cache成功时只用1个时钟周期,失效时需要20个时钟周期\\ \therefore t=0.95*1*10+0.05*20*10=19.5\ (ns) Cache120t=0.95110+0.052010=19.5 (ns)
    (2) 假设通过增加 C a c h e Cache Cache 容量一倍而使失效率降低到 0.03 0.03 0.03,但使得 C a c h e Cache Cache 命中时的访问时间增加到了 1.2 1.2 1.2 时钟周期(即 12 n s 12ns 12ns ),指出这样的改动设计是否合适?
    t = 0.97 ∗ 1 ∗ 10 ∗ 1.2 + 0.03 ∗ 20 ∗ 10 = 17.64 ( n s ) < 19.5 ( n s ) ∴ 改 动 合 理 , 降 低 了 平 均 访 存 时 间 t=0.97*1*10*1.2+0.03*20*10=17.64(ns)<19.5(ns)\\ \therefore 改动合理,降低了平均访存时间 t=0.971101.2+0.032010=17.64(ns)<19.5(ns)访
    (3) 如果时钟周期取决于 C a c h e Cache Cache 的访问时间(也就是用延长时钟周期的方法),上述改动设计是否合适?
    时 钟 周 期 取 决 于 C a c h e 访 问 时 间 , 即 以 C a c h e 的 访 问 时 间 来 作 为 时 钟 周 期 , 一 个 周 期 变 为 12 n s t = 0.97 ∗ 1 ∗ 10 ∗ 1.2 + 0.03 ∗ 20 ∗ 10 ∗ 1.2 = 18.84 ( n s ) < 19.5 ( n s ) ∴ 改 动 依 旧 合 理 , 降 低 了 平 均 访 存 时 间 时钟周期取决于Cache访问时间,即以Cache的访问时间来作为时钟周期,一个周期变为12ns\\ t=0.97*1*10*1.2+0.03*20*10*1.2=18.84(ns)<19.5(ns)\\ \therefore 改动依旧合理,降低了平均访存时间 Cache访Cache访12nst=0.971101.2+0.0320101.2=18.84(ns)<19.5(ns)访

  6. 已知某单功能非线性流水线的预约表如下图,要求:

    image-20221120200612965

    (1) 列出禁止表 F F F 和冲突向量 C C C

    对于预约表的每一行的任何一对“X”,用它们所在的列号相减,列出各种可能的差值,将其放入初始为空的集合 F F F 中,最后得到的就是禁止表 F F F

    此处 F = { 4 } F=\{4\} F={4}

    根据禁止表可以写出初始冲突向量 C C C ,其为一个 N N N 位二进制串, N N N 取决于 F F F 中最大的数,其中每一位的取值规则如下:

image-20221121163151255

此处 C = { 1000 } C=\{1000\} C={1000}

(2) 画出该流水线状态图,确定其最小平均延迟以及此时的调度方案?当按此流水调度方案共输入8个任务时,则其实际吞吐率为多少?

流水线的状态图需要通过初始冲突向量 C C C 得到

设当前冲突向量位 C k C_k Ck j j j 是允许的的时间间隔, j j j 不能取禁止表 F F F 中的数,状态转移图中任何一个闭合回路就是一个方案

image-20221120223155692

由此我们可以画出各冲突向量之间的状态转移图

image-20221120202637138

调度方案即数闭合回路,平均延迟即调度方案中的平均数,如下👇

image-20221120203450140 image-20221204213353162
  1. 有一指令流水线如下所示

    image-20221120205756304

    (1) 求连续输入 10 10 10 条指令,该流水线的实际吞吐率和效率

    image-20221120211012735
    ∴ 吞 吐 率 = 10 2200   n s = 1 220   n s 效 率 E = 50 ∗ ( 10 + 10 ) + 100 ∗ 10 + 200 ∗ 10 2200 ∗ 4 = 5 11 \therefore 吞吐率=\dfrac{10}{2200\ ns}=\dfrac{1}{220\ ns}\\ 效率E=\dfrac{50*(10+10)+100*10+200*10}{2200*4}=\dfrac{5}{11} =2200 ns10=220 ns1E=2200450(10+10)+10010+20010=115
    (2) 该流水线的“瓶颈”在哪一段?请采取两种不同的措施消除此“瓶颈”。对于你所给出的两种新的流水线,连续输入 10 10 10 条指令时,其实际吞吐率和效率各是多少?

    瓶颈在于 3 , 4 3,4 34 两段,可以将其升级为八级流水线,即 3 3 3 分为两段, 4 4 4 分为 4 4 4

    image-20221120212535121 image-20221204213747108

    第二种方法不想看,快写🤮了,有余力再说

  2. 用一个 N = 8 N=8 N=8 的三级 O m e g a Omega Omega 网络连接 8 8 8 个处理机(P0~P7), 8 8 8 个处理机的输出端分别依序连接 O m e g a Omega Omega 网络的 8 8 8 个输入端0~7 8 8 8 个处理机的输入端分别依序连接 O m e g a Omega Omega 网络的 8 8 8 个输出端0~7。如果处理机 P 6 P6 P6 要把数据播送给处理机P0~P4,处理机 P 3 P3 P3 要把数据播送给处理机P5~P7,那么, O m e g a Omega Omega 网络能否同时为它们的播送要求实现连接?画出实现播送的 O m e g a Omega Omega 网络的开关状态图。
    在 处 理 器 N = 8 的 3 级 O m e g a 网 络 中 , 每 级 的 交 换 开 关 数 = N 2 = 4 整 个 网 络 开 关 数 为 4 ∗ 3 = 12 , 每 级 进 行 一 次 S h u f f l e 函 数 【 二 进 制 循 环 左 移 】 计 算 每 个 交 换 开 关 都 有 上 播 、 下 播 、 直 送 、 交 叉 四 种 状 态 如 果 没 有 开 关 状 态 和 开 关 输 出 端 争 用 冲 突 , 就 可 以 使 用 播 送 连 接 在处理器N=8的3级Omega网络中,每级的交换开关数=\dfrac{N}{2}=4\\ 整个网络开关数为4*3=12,每级进行一次Shuffle函数【二进制循环左移】计算\\ 每个交换开关都有上播、下播、直送、交叉四种状态\\ 如果没有开关状态和开关输出端争用冲突,就可以使用播送连接 N=83Omega=2N=443=12Shuffle使
    image-20221120215047116
    ∴ C , E , H , L 下 播 , I , J 上 播 , K 直 连 , D , F 交 叉 \therefore C,E,H,L下播,I,J上播,K直连,D,F交叉\\ C,E,H,LI,JKD,F

  3. 下图是写操作流水化的硬件结构,试说明采用该技术的原因及其工作特点

    img

    每个写操作过程分为两个阶段完成,第一阶段进行标识比较,并把标识和数据存入延迟写缓冲器中,第二阶段再进行写入,这两个阶段按流水方式工作。这样,当前的写标识比较就可以和上一个写的数据写入并行起来,实现每个时钟周期完成一个写操作

  4. 一个具有 32 32 32 台处理机的系统,对远程存储器访问时间是 2000 n s 2000ns 2000ns。除了通信以外,假设计算中的访问均命中局部存储器。当发出一个远程请求时,本地处理机挂起。处理机的时钟周期时间是 10 n s 10ns 10ns,假设指令基本的 C P I CPI CPI 1.0 1.0 1.0(设所有访存均命中 C a c h e Cache Cache )。对于下述两种情况:

    (1) 没有远程访问;

    (2) 0.5 % 0.5\% 0.5% 的指令需要远程访问。

    试问前者比后者快多少?
    已 知 远 程 访 问 率 p = 0.5 % , 远 程 访 问 时 间 t = 2000 n s , 时 钟 周 期 T = 10 n s C P I = 1 即 指 每 条 指 令 在 没 有 远 程 访 问 的 情 况 下 需 要 1 个 时 钟 周 期 完 成 若 有 远 程 访 问 则 在 此 基 础 上 加 上 远 程 访 问 的 开 销 远 程 访 问 开 销 C = t T = 2000 n s 10 n s = 200 ( 个 时 钟 周 期 ) C P I 2 = C P I 1 + p ∗ C = 1.0 + 0.005 ∗ 200 = 2 ∴ C P I 2 C P I 1 = 2 1 = 2 , 即 前 者 是 后 者 的 两 倍 已知远程访问率 p = 0.5\%,远程访问时间 t = 2000ns,时钟周期 T = 10ns\\ CPI=1即指每条指令在没有远程访问的情况下需要1个时钟周期完成\\ 若有远程访问则在此基础上加上远程访问的开销\\ 远程访问开销 C = \dfrac{t}{T} = \dfrac{2000ns}{10ns} = 200(个时钟周期)\\ CPI_2=CPI_1+p*C=1.0+0.005*200=2\\ \therefore \dfrac{CPI_2}{CPI_1}=\dfrac{2}{1}=2,即前者是后者的两倍 访p=0.5%访t=2000nsT=10nsCPI=1访1访访访C=Tt=10ns2000ns=200()CPI2=CPI1+pC=1.0+0.005200=2CPI1CPI2=12=2
    🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏
    若需要PDF文件便于打印复习可在评论区留言

  • 5
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
计算机系统结构大学期末复习资料题库含答案 1.看下述程序段:( C ) k: R5=R2 k+1: R0=R1×R4 k+2: R2=R5+1 k+3: R4=R0×R3 k+4: R3=R4-1 K+5: …… k和k+2之间发生的是什么数据相关 I. 先写后读相关 II.写-写相关 III. 先读后写相关 A.只有I B.只有I、II C.只有I、III D.以上都不对 2.开发并行的途径有( D ),资源重复和资源共享。 A、多计算机系统 B、多道分时 C、分布式处理系统 D、时间重叠 3.在计算机系统设计中,比较好的方法是(D )。 A、从上向下设计 B、从下向上设计 C、从两头向中间设计 D、从中间开始向上、向下设计 4.执行微指令的是(C) a.汇编程序 b.编译程序 c.硬件 d.微指令程序 5. 软件和硬件在(B)意义上是等效的。 A. 系统结构 B.功能 C. 性能 D. 价格 6. 实现汇编语言源程序变换成机器语言目标程序是由(D ) A.编译程序解释 B.编译程序翻译 C.汇编程序解释 D.汇编程序翻译 7. 按照计算机系统层次结构,算术运算、逻辑运算和移位等指令应属于(A)级机器语言。 A. 传统机器语言机器 B.操作系统机器 C. 汇编语言机器 D.高级语言机器 8.对汇编语言程序员,下列(A)不是透明的。 A. 中断字寄存器 B.乘法器 C. 移位器 D.指令缓冲器 9.在采用基准测试程序来测试评价机器的性能时,下列方法按照评价准确性递增的顺序排列是(B )。(1)实际的应用程序方法 (2)核心程序方法 (3)玩具基准测试程序(小测试程序) (4)综合基准测试程序 A.(1)(2)(3)(4) B.(2)(3)(4)(1) C.(3)(4)(1)(2) D.(4)(3)(2)(1) 10. 下列体系结构中,最适合多个任务并行执行的体系结构是( D) A、流水线的向量机结构 B、堆栈处理结构 C、共享存储多处理机结构 D、分布存储多计算机结构 11. 从用户的观点看,评价计算机系统性能的综合参数是( B ): A、指令系统 B、吞吐率 C、主存容量 D、主频率 12. 设指令由取指、分析、执行 3 个子部件完成,每个子部件的工作周期均为△t,采用常规标量单流水线处理机。若连续执行 10 条指令, 则共需时间 ( C )△t。 A.8 B.10 C. 12 D. 14 13. 系统响应时间和作业吞吐量是衡量计算机系统性能的重要指标。对于一个持续处理 业务的系统而言, ( C ) ,表明其性能越好。 A. 响应时间越短,作业吞吐量越小 B. 响应时间越短,作业吞吐量越大 C. 响应时间越长,作业吞吐量越大 D. 响应时间不会影响作业吞吐量 14. 若每一条指令都可以分解为取指、分析和执行三步。已知取指时间t 取指=4△t,分 析时间t 分析=3△t,执行时间t 执行=5△t。如果按串行方式执行完100 条指令需要( C )△t。 A. 1190 B. 1195 C. 1200 D. 1205 15. 如果按照流水线方式执行,执行完100 条指令需要 (B)△t。 A. 504 B. 507 C. 508 D. 510 16. 并行访问存储器最大的问题就是访问冲突大,下面不属于并行访问存储器的缺点的是:( D ) A、取指令冲突 B、读操作数冲突 C、写数据冲突 D、译码冲突 17. 一条4段流水线,每段执行时间为1ns,求该流水线执行100条指令最大效率为(C) A.100% B.96.2% C.97.1% D.388% 18. 假设一条指令的执行过程可以分为“取指令”、“分析”和“执行”三段,每一段的执行时间均为 ,连续执行n条指令所需要花费的最短时间约为(B)(假设仅有“取指令”和“分析”可重叠并假设n足够大): A. B. C. D. 19. MISD是指(C) A.单指令流单数据流 B.单指令流多数据流 C.多指令流单数据流 D.多指令流多数据流 20. 星形网络的网络直径和链路数分别为(A)和(D)。 A.N-1 B.N/2 C.2 D.N(N-1)/2 21. 软件和硬件在(B)意义上是等效的。 A.系统结构 B.功能 C.性能 D.价格

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值