汇总计算机体系结构总复习 - 图文

更新时间:2024-05-24 22:01:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

按照弗林(Flynn)分类法,计算机系统可以分为4类:SISD计算机、(SIMD计算机)、(MISD计算机)和(MIMD计算机)。

早期冯?诺依曼计算机的主要特点是(程序存储)、(指令驱动)、(集中控制)。 目前向量处理机的系统结构有两种:(存储器-存储器型和寄存器-寄存器型)。 通用计算机基本指令分为5类,它们分别是:(数据传送类,运算类,程序控制类,输入输出类,处理机控制和调试类)。

传统的冯?诺依曼计算机是以控制驱动方式工作,以数据驱动方式工作的典型计算机是(数据流计算机),以需求驱动方式工作的典型计算机是(归约机),以模式匹配驱动方式工作的典型计算机是(人工智能计算机)。

计算机体系结构指的是构成计算机系统主要部件的总体布局、部件的主要性能以及这些部件之间的连接方式。

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

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

兼容机 :由不同公司厂家生产的具有相同系统结构的计算机

模拟 :用软件的方法在一台现有的计算机(称为宿主机)上实现另一台计算机(称为虚拟机)的指令系统。 仿真:用一台现有计算机(称为宿主机)上的微程序去解释实现另一台计算机(称为目标机)的指令系统。

程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。

MIPS: 每秒处理的百万级的机器语言指令数

基准测试程序:用于测试和预测计算机系统的性能,揭示不同结构机器的长处和短处,为用户决定购买或使用那种机器最合适他们的应用要求提供决策。

高速缓冲存储器:高速缓冲存储器是存在于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成,容量比较小但速度比主存高得多,接近于CPU的速度。

虚拟存储器:在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“主存储器”。 快表:利用高速缓冲存储器存放页表的一部分,把存放在高速存储器中的部分页表称“快表”。 程序定位

延迟转移技术 :在转移指令之后插入一条或几条有效的指令。当程序执行时,要等这些插入的指令执行完成之后,才执行转移指令,因此,转移指令好象被延迟执行了,这种技术称为延迟转移技术。 窗口重叠技术

流水线技术 指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术

先行控制技术: 是把缓冲技术和预处理技术相结合。缓冲技术是在工作速度不固定的两个功能部件之间设置缓冲器,用以平滑它们的工作。预处理技术是指预取指令、对指令进行加工以及预取操作数等

动态流水线:指在同一时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能的流水线。它允许在某些段正在实现某种运算时,另一些段却在实现另一种运算。 静态流水线 :指在同一时间内,多功能流水线中的各段只能按同一种功能的连接方式工作的流水线。当流水线要切换到另一种功能时,必须等前面的任务都流出流水线之后,才能改

变连接。

线性流水线:指各段串行连接、没有反馈回路的流水线。数据通过流水线中的各段时,每一个段最多只流过一次

非线性流水线 : 指各段除了有串行的连接外,还有反馈回路的流水线。

流水线的吞吐率 :在单位时间内流水线所完成的任务数量或输出结果的数量。 超标量计算机:在一个时钟周期内CPU可以执行一条以上的指令的计算机

向量的分段开采技术: 当向量的长度大于向量寄存器的长度时,必须把长向量分成长度固定的段。处理长向量的程序结构称为向量循环,这种技术也叫分段开采

1、简述冯.诺依曼计算机的特征 。 答: 冯·诺依曼型计算机的主要特征. 1,采用二进制代替十进制运算 2,存储程序工作方法 3,计算机硬件系统的构成

.诺依曼型计算机的硬件结构及其各部分的功能。包括:控制器、运算器、存储器、输入设备、输出设备。

2、什么是存储系统?

答:存储系统不是简单的存储设备,如磁盘;也不是人们常见的磁盘阵列。简单

的说,网络存储系统是由多个网络智能化的磁盘阵列和存储控制管理系统构成的。如果我们用一个比喻来形容存储系统的话,假设我们把磁盘作为PC,磁盘阵列则相当于我们计算角度上的服务器,我们的存储系统就是高性能的计算机。

3、简述组相联映象规则。

(1)主存与缓存分成相同大小的数据块。

(2)主存和Cache按同样大小划分成组。

(3)主存容量是缓存容量的整数倍,将主存空间按缓冲区的大小分成区,主存中每一区的组数与缓存的组数相同。

(4)当主存的数据调入缓存时,主存与缓存的组号应相等,也就是各区中的某一块只能存入缓存的同组号的空间内,但组内各块地址之间则可以任意存放,即从主存的组到Cache的组之间采用直接映象方式;在两个对应的组内部采用全相联映象方式。

4、引起Cache与主存内容不一致的原因是什么?为了保持Cache的一致性,在单计算机系统中一般采取哪些措施? 答:不一致的原因:

(1) 由于CPU写Cache,没有立即写主存 (2) 由于I/O处理机或I/O设备写主存 采取措施:

(1)全写法,亦称写直达法(WT法—Write through)

方法:在对Cache进行写操作的同时,也对主存该内容进行写入。 (2)写回法(WB法—Write back)

方法:在CPU执行写操作时,只写入Cache,不写入主存

5、影响虚拟存储器命中率的因素有哪些?它们是如何影响的?

(1)页面大小:当页面比较小时,随着页面的增大,命中率明显提高,但当页面增大到一定值时,命中率不再增大,而随着页面的增大而下降。

(2)主存容量:当主存容量增加时,命中率不断提高;当容量增大到一定程度后,命中率的提高就不大了。

(3)页面调度方式:页面的调度都是发生在产生缺页中断时进行,因此在程序刚开始运行时命中率很低,为此可以采用预取式调度法,提高命中率。

6、在指令编码中,缩短地址码的方法很多,请列出三种缩短地址码的方法,并说明理由。 :(1)用间址寻址方式缩短地址码长度(2)用变址寻址方式缩短地址码长度(3)用寄存器简介寻址方式缩短地址码长度

7、什么是指令的重叠解释方式?重叠解释方式有哪三种? 8、试述页式管理虚拟存储器的工作过程 。

页式管理是将主存空间与虚存空间按固定的大小划分成块,每块称为一页。页的大小和划分与程序的逻辑功能无关,由操作系统软件来执行。一般而言,一页的大小应该是512Bit的整数倍,因为辅助磁盘存储的物理块的大小为512Bit。虚页中的页称为虚页,实存中的各页称为实页,各虚页与实页之间按全相联方式映象,也就是虚页中的一页,可以存入主存中的任意一页的位置。当CPU给出所要访问的虚地址后,根据用户号访问基址寄存器,求得用户的页表首地址Pa,然后与虚地址中的虚页号P相加,得到该页的表目,由此表目中得到该页存入主存中的实页号为p,将该页号读出与页内地址组装即可得到主存的实际地址。

典型例题分析与解答

[例1]如有一个经解释实现的计算机,可以按功能划分成4级。每一级为了执行一条指令需要下一级的N条指令解释。若执行第一级的一条指令需K(ns)时间,那么执行第2、3、4级的一条指令各需要用多少时间(ns)?

解:∵第二级的一条指令需第1级的N条指令解释 ∴第二级的一条指令执行时间为NKns; 第三级的一条指令执行时间为N2Kns; 第四级的一条指令执行时间为N3Kns。 [例2]假设将某系统的某一部件的处理速度加快到10倍,但该部件的原处理时间仅为整个运行时间的40%,则采用加快措施后能使整个系统的性能提高多少? 解:由题意可知 fe=0.4, re=10, 根据Amdahl定律

用一台4OMHz处理机执行标准测试程序,它含的混合指令数和相应所需的时钟周期数如下: 指令类型 指令条数 时钟周期数 整数运算 45000 1 数据传送 32000 2 浮点运算 15000 2 控制传送 8000 2 求有效CPI、MIPS速率和程序的执行时间。 解:依题意可知 IN=105条,n=4

[例4]若某机要求有:三地址指令4条,单地址指令192条,零地址指令16条。设指令字长为12位,每个地址码长3位。问能否以扩展操作码为其编码?

[例5]假设一台模型计算机共有10种不同的操作码,如果采用固定长操作码需要4位。已知各种操作码在程序中出现的概率如下表所示,计算采用Huffman编码法的操作码平均长度,并计算固定长操作码和Huffman操作码的信息冗余量(假设最短平均长度H=3.1位)

答:构造Huffman树如下:

[例6]一台模型机的各条指令的频度如下: ADD(加):43% SHR(右移):1% SUB(减):13% CLL(循环左移):2% JOM(按页转移):6% CLA(累加器清0):22% STO(存):5% STP(停机):1% JMP(转移):7%

试设计这9条指令的哈夫曼编码的操作码表示以及2-4等长扩展操作码表示,并计算这两

种表示的平均操作码长度。 答:构造Huffman树如下:

[例7]设某用户虚存共有8页, 主存有4页, 每页大小为1KB. 试根据页表计算出虚地址1023和6800的主存实地址。

解:页号与地址对应关系

[例8]某机主存容量为512KB,Cache的容量为32KB,每块的大小为16个字(或字节)。划出全相联方式主、缓存的地址格式、目录表格式及其容量。 答:全相联映象方式:

主存与缓存分成相同大小的数据块,主存的某 一数据块可以装入缓存的任意一块空间中。 根据已知条件可以求得:

主存块数:512K/16=32K=215; 缓存块数:32K/16=2K=211;

块内地址:16=24

[例9]某机主存容量为512KB,Cache的容量为32KB,每块的大小为16个字(或字节)。划出直接相联方式主、缓存的地址格式、目录表格式及其容量。 答:直接相联映象方式:

主存与缓存分成相同大小的数据块,将主存空间按缓存的容量分成区,主存中某区的一块存入缓存时只能存入缓存中块号相同的位置。 根据已知条件可以求得:

主存区数:512K/32K=16=24;缓存块数:32K/16=2K=211;块内地址:16=24

[例10]主存容量为512KB,Cache的容量为32KB,每块为64个字(或字节),缓存共分128组。划出组相联方式主、缓存的地址格式、目录表格式及其容量。 答:组相联映象方式:

主存与缓存分成相同大小的数据块,主存和Cache按同样大小划分成组,将主存空间按缓存的容量分成区,当主存的数据调入缓存时,主存与缓存的组号应相等,但组内各块地址之间则可以任意存放。 根据已知条件可以求得:

主存区数:512K/32K=16=24;缓存组数:128=27; 缓存块数:32K/64=512=29;组内块数:512/128=4=22 块内地址:64=26

[例11]一个有快表和慢表的页式虚拟存储器,最多有64个用户,每个用户最多要用1024个页面,每页4K字节,主存容量8M字节。

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

(3)快表的字长为多少位?分几个字段?各字段的长度为多少位? (4)慢表的容量是多少个存储字?每个存储字的长度为多少位?

答:用户号:64=26,虚页号:1024=210,页内地址:4K=212,主存页数:8M/4K=211 (1)多用户虚地址:

用户号(6位)+虚页号(10位)+页内地址(12位) 共28位 (2)主存地址:

主存实页号(11位)+页内地址(12位) 共23位

(3)快表字长27位;分3个字段:用户号6位,虚页号10位,实页号11位 (4)慢表容量为2(6+10),每个存储字长为: 主存页号+1=12位。

[例12]为在页式虚拟存储器中,一个程序由P1~P5共5个页面组成。在程序执行过程中依

次访问的页面如下:P2,P3,P2,P1,P5,P2,P4,P5,P3,P2,P5,P2

假设系统分配给这个程序的主存有3个页面,分别采用FIFO、LFU和OPT三种页面替换算法对这3页主存进行调度。

(1) 画出主存页面调入、替换和命中的情况表。 (2) 统计三种页面替换算法的页命中率。 解:三种替换算法的替换过程:

[例13]用一条4段浮点加法器流水线求8个浮点数的和: Z=A+B+C+D+E+F+G+H,求流水线的吞吐率、加速比和效率,其中△t1=△t2=△t3=△t4=△t。

[例14]设有两个向量A,B,各有4个元素,若在如图5-2-16a所示的静态双功能流水线上,计算向量点积:

其中,1→2→3→5组成加法流水线,1→4→5 组成乘法流水线。

又设每个流水线所经过的时间均为△t,而且流水线的输出结果可以直接返回到输入或暂存

于相应的缓冲寄存器中,其延迟时间和功能切换所需的时间都可以忽略不计。请使用合理的算法,能使完成向量点积A*B所用的时间最短,并求出流水线在此期间实际的吞吐率TP和效率E。

解:首先,应选择适合于静态流水线工作的算法。对于本题,应先连续计算al*bl、a2*b2、a3*b3和a4*b4共4次乘法,然后功能切换,按((albl+a2b2)+(a3b3+a4b4))经3次加法来求得最后的结果。按此算法可画出流水线工作时的时空图。如图5-2-16b所示。

由图可见,总共在15个△t的时间内流出7个结果,所以在这段时间里,流水线的实际吞吐率TP为7/15△t。

若不用流水线,由于一次求积需3△t,一次加法需 4 △t,产生上述结果就需要4?3△t+3?4△t=24△t。因此,加速比为S=24△t/(15△t)=1.6。

该流水线的效率可用阴影区面积和全部5个段的总时空图面积之比求得,即

[例15]什么是方体置换?写出方体置换函数的表达式,假设互联网有16个结点,请画出4个方体置换函数(即C0,C1,C2,C3)的输入端与输出端的连接关系。 答:方体置换是实现二进制地址编号中第k位位值不同的输入端输出端之间的连接。其表达式为:

[例16]什么是均匀洗牌置换?写出均匀洗牌置换函数的表达式,假设互联网有16个结点,请画出均匀洗牌置换的输入端与输出端的连接关系。 答:均匀洗牌置换是将输入端分成数目相等的两半,前一半和后一半按序一个隔一个地从头至尾依次与输出端相连,即将输入端二进制地址循环左移一位即得到对应的输出端二进制地址。其函数关系可表示为:

[例17]互连网络例子:编号为0,1……15的16个处理器用单级互连网络连接,当互连函数分别为:

(1)cube 3; (2)PM2+3; (3)shuffle;时第13号处理器各连至哪一个处理器? 答:

(1)cube3=cube3(1101); 第3位取反,得0101 (5号处理器) (2)PM2+3(13)=(j+2^3)mod 16 =(13+8) mod 16=5 (5号处理器)

(3)shuffle(Pn-1Pn-2….P2P1P0)= shuffle(Pn-2….P2P1P0Pn-1) shuffle(1101)=(1011) (11号处理器)

本文来源:https://www.bwwdw.com/article/i3w7.html

Top