一.名词解释
- 虚拟机:指通过软件模拟具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系统
- 系统加速比:同一个任务在系统改进前花费总时间和在系统改进后花费总时间的比率
- Amdahl定律:计算计算机系统中某个部件改进后能获得多少总性能提高的定律
- 系列机:由同一厂家生产的具有相同的系统结构,但是具有不同组成和实现的一系列不同型号的计算机
- 模拟:指用软件的方法在一台现有的计算机上实现另外一台计算机的指令集
- 仿真:指用一台现有计算机的微程序取解释实现另外一个计算机的指令集
- 并行性:指计算机系统在同一时刻或同一时间间隔内进行多种运算或操作
- RISC:精简指令集
- 寻址方式:指令集结构如何确定要访问的数据的地址
- 数据表示:指计算机硬件能够直接识别,指令集可以直接调用的数据类型
- 单功能流水线:只能完成一种固定功能的流水线
- 多功能流水线:各段可以进行不同连接以实现不同功能的流水线
- 静态流水线:同一时间段内,只能进行一种功能的流水线
- 动态流水线:同一时间段内,可以进行多种功能的流水线
- 顺序流水线:输入端任务流入的顺序和输出端任务流出的顺序相同的流水线
- 乱序流水线:输入端任务流入的顺序和输出端任务流出的顺序不同的流水线
- 流水线吞吐率:单位时间内流水线完成任务的数量
- 流水线加速比:完成同样一批任务,使用流水线花费的时间和不使用流水线花费的时间之比
- 流水线的效率:流水线中设备的实际使用时间和整个运行时间的比值
- 数据相关:此次运算需要前一次运算的结果作为数据、
- 名相关:两个操作使用了相同的寄存器或者存储器
- 控制相关:根据分支指令的执行结果确定后面程序的运行
- 反相关:名相关的一种,指令i读的名和指令j写的名相同,简称i读j写
- 结构冲突:硬件资源不足引起的冲突
- 数据冲突:当指令在流水线中重叠执行时,因需要晕倒前面的指令的执行结果引起的冲突
- 控制冲突:流水线遇到的分支指令或者其他会改变pc值的指令所引起的冲突
- 定向技术:把计算结果从产生位置直接放到需要的位置
- 多级存储层次:采用多种存储器技术的存储器结构
- 命中时间:cpu访问存储系统时,找到所需数据花费的时间
- 不命中率:cpu访问存储系统时,没有找到所需数据的比率
- 不命中开销:cpu访问存储系统时,没有找到所需数据花费的时间
- 全相连映像:主存中的任意一块对应Cache中的任意一个位置
- 直接映像:主存中的任意一块对应Cache中的唯一一个位置
- 组相连映像:主存中的任意一块对应Cache中的一组位置
- 写直达法:写入cache之后,直接写入下一级存储器
- 写回法:只写入caceh中,只有该块被替换时,才写入下一级存储器
- 强制性不命中:第一次访问时,Cache中没有该程序的任何数据而产生的不命中
- 容量不命中:因为Cache容量限制导致某些块被替换出去之后又再次访问该块而放到不到的不命中
- 冲突不命中:被替换出去的块又要访问而产生的不命中(不是因为Caceh容量)
- 2:1Caceh经验规则:大小为N的直接映像Cache的失效率约等于大小为N/2的两路组相连Cache的失效率
- 相连度:
- 牺牲Cache:指在Cache和其下一级存储器的数据通路上的一个全相连的小Cache
- 系统响应时间:指计算机对用户的请求做出反映的时间
- 可靠性:规定条件下完成预定功能的能力
- 可用性:考察某个时间,系统正常运行的概率期望
- RAID:独立冗余磁盘阵列
- 互连网络:一种由开关元件按照一定的拓扑结构和控制方式构成的网络
- 互连函数:表示输入端号和输出端号连接关系的函数
- 网络规模:网络中结点个数
- 网络直径:网络中任意两点间的最大距离
- 静态互连网络:各结点间有固定连接通路且在运行中不能改变的网络
- 动态互连网络:由交换开关构成可以按照程序的要求动态改变连接状态的网络
- 集中式共享多处理机:多个处理器共享一个存储器的多处理机系统
- 分布式共享多处理机:多个处理器共享多个存储器的多处理机系统
- 多Caceh一致性:多个Cache中的同一个数据要求保持一致的特性
- 写作废协议:通知其他保留该数据副本的Cache作废副本数据的协议
- 写更新协议:通知其他暴力该数据副本的Cache更新该副本数据的协议
二.简答题
什么是软件兼容?软件兼容有几种?其中哪一种是软件兼容的根本特征?
同一个软件可以不加修改地运行于系统结构相同的各档机器上,而且它们所获得的结果一样,差别只在于运行时间的不同。
软件兼容分为向上兼容、向下兼容、向前兼容和向后兼容。其中向后兼容是软件兼容的根本特征。
试以系列机为例,说明计算机系统结构、计算机组成和计算机实现三者之间的关系。
计算机组成是计算机系统结构的逻辑实现;计算机实现是计算机组成的物理实现。
一种系统结构可以有多种组成;一种组成可以有多种实现。同一系列机中各种型号的机器具有相同的系统结构,但采用不同的组成和实现技术,因而具有不同的性能和价格。
计算机系统结构设计和分析中最经常使用的三条基本原则是什么?
大概率事件优先原则。对于大概率事件(最常见的事件),赋予它优先的处理权和资源使用权,以获得全局的最优结果。
Amdahl定律。加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。
程序的局部性原理。程序在执行时所访问地址的分布不是随机的,而是相对地簇聚。
根据Amdahl定律,系统加速比由哪两个因素决定?
系统加速比依赖于两个因素:
可改进比例:可改进部分在原系统计算时间中所占的比例。
部件加速比:可改进部分改进以后的性能提高。
计算机系统中提高并行性的技术途径有哪三种?
时间重叠。多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
资源重复。通过重复设置资源,尤其是硬件资源,大幅度提高计算机系统的性能。
资源共享。这是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。
从当前的计算机技术观点来看,CISC结构有什么缺点?
指令系统庞大,指令功能复杂,指令寻址方式多,指令格式多
绝大多数指令需要多个机器周期完成
各种指令都可以访问存储器
采用微程序控制
有专用寄存器,少量
难以用优化编译技术生成高效的目标代码程序
RISC的设计原则是什么?
使用频度很高的指令
大大减少寻址方式
所有指令在一个机器周期内完成
扩大通用寄存器个数
采用硬联控制实现
通过精简指令和优化设计编译程序,以简单有效的方式支持高级语言
MIPS采用哪几种寻址方式?
全相连映像(主存中的任意一块可以放在Cache中的任何位置)
缺点;查找复杂,代价高,速度慢
优点:Cache空间利用率高,块冲突概率低,Caceh的失效率低
直接映像:(主存中的任意一块都只对应Cache中的唯一一个位置)
缺点:Cache空间利用率低,块冲突概率高,Cache失效率高
优点:查找简单,快速
组相连映像(主存中的任意一块对应Cache中的一组位置)
直接映像和全相连映像折中的办法
流水技术有哪些特点?
流水线把一个处理过程分解为若干个子过程,每个子过程由一个专门的功能部件来实现。因此,流水线实际上是把一个大的处理功能部件分解为多个独立的功能部件,并依靠它们的并行工作来提高吞吐率。
流水线中各段的时间应尽可能相等,否则将引起流水线堵塞和断流。
流水线每一个功能部件的前面都要有一个缓冲寄存器,称为流水寄存器。
流水技术适合于大量重复的时序过程,只有在输入端不断地提供任务,才能充分发挥流水线的效率。
流水线需要有通过时间和排空时间。在这两个时间段中,流水线都不是满负荷工作。
在5段流水线中,一条指令的执行需要几个时钟周期?它们分别是什么?
一条指令的执行需要5个时钟周期。它们分别是:
取指令周期(IF)、
指令译码/读寄存器周期(ID)、
执行/有效地址计算周期(EX)、
存储器/分支完成周期(MEM)、
写回周期(WB)。
评价流水线的性能指标是什么?
吞吐率:指在单位时间内流水线所完成的任务数或输出结果的数量。
流水线的加速比:指m段流水线的速度与等功能的非流水线的速度之比。
效率:指流水线的设备利用率。
什么叫相关?流水线中有哪几种相关?
相关是指两条指令之间存在某种依赖关系。确定程序中指令之间存在什么样的相关,对于充分发挥流水线的效率有重要的意义。
相关有3种类型,分别是数据相关(也称真数据相关)、名相关、控制相关。
单级存储器的主要矛盾是什么?通常采取什么方法来解决?
主要矛盾:
速度越快,每位价格就越高。
容量越大,每位价格就越低。
容量越大,速度越慢。
采取多级存储层次方法来解决。
在存储层次中应解决哪四个问题?
映像规则:当把一个块调入高一层存储器时,可以放到哪些位置上。
查找算法:当所要访问的块在高一层存储器中时,如何找到该块。
替换算法:当发生失效时,应替换哪一块。
写策略:当进行写访问时,应进行哪些操作。
地址映像方法有哪几种?它们各有什么优缺点?
全相联映像。实现查找的机制复杂,代价高,速度慢。Cache空间的利用率较高,块冲突概率较低,因而Cache的失效率也低。
直接映像。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而Cache的失效率也高。
组相联映像。组相联是直接映像和全相联的一种折中。
写策略主要有哪两种?它们各有什么优点?
写直达法:易于实现,而且下一级存储器中的数据总是最新的。
写回法:速度快,写操作能以Cache存储器的速度进行。而且对于同一单元的多个写最后只需一次写回下一级存储器,有些“写”只到达Cache,不到达主存,因而所使用的存储器频带较低。
伪相联的基本思想是什么?
伪相联既能获得多路组相联Cache的低失效率又能保持直接映像Cache的命中速度。
采用二级Cache的基本思想是什么?
通过在原有Cache和存储器之间增加另一级Cache,构成两级Cache。把第一级Cache做得足够小,使其速度和快速CPU的时钟周期相匹配,而把第二级Cache做得足够大,使它能捕获更多本来需要到主存去的访问,从而降低实际失效开销。
采用容量小且结构简单的Cache有什么好处?
可以有效提高Cache的访问速度,因为硬件越简单速度就越快,小容量Cache可以实现快速标识检测,对减少命中时间有益
Cache足够小,可以与处理权做在同一芯片上,以避免因芯片外访问而增加时间开销
保持Cache简单结构可采用直接映像Cache,直接映像Cache的主要优点就是可以让标识检测和数据传送重叠进行,这样可以有效减少命中时间
“虚拟索引+物理标识” Cache的基本思想是什么?
直接用虚地址中的页内位移(页内位移在虚拟地址的转换中保持不变),作为访问Cache的索引,但标识确实物理地址,Cpu发出访存请求后,在进行虚地址转换的同时,可并行进行标识的读取,在完成地址变换后,再把得到的物理地址和标识进行比较
在分布式存储器结构的机器中,将存储器分布到各结点有什么好处?
如果大多数的访问是针对本结点的局部存储器,则可降低对存储器和互连网络的带宽要求
对局部存储器的访问延迟低,分布式存储器结构的主要缺点就是处理器之间的通信较为复杂,且各处理器之间访问延迟大