1、22 题一 11.计算机系统结构的层次结构由高到低分别为应用语言机器级,高级语言机器级,汇编语言机器级,操作系统机器级,传统机器语言机器级,微程序机器级 12.计算机系统弗林(Flynn)分类法,把计算机系统分成单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令单数据流和多指令多数据流四大类。 13.透明指的是客观存在的事物或属性从某个角度看不到,它带来的好处是简化某级的设计,带来的不利是无法控制。 22.数据结构和数据表示之间是什么关系?确定和引入数据表示的基本原则是什么? 数据表示是能由硬件直接识别和引用的数据类型。数据结构反映各种数据元素或信息单元之间的结
2、构关系。数据结构要通过软件映象变换成机器所具有的各种数据表示实现,所以数据表示是数据结构的组成元素。(2分)不同的数据表示可为数据结构的实现提供不同的支持,表现在实现效率和方便性不同。数据表示和数据结构是软件、硬件的交界面。(2分) 除基本数据表示不可少外,高级数据表示的确定和引入遵循以下原则: (1)看系统的效率有否提高,是否减少了实现时间和存储空间。 (2)看引入这种数据表示后,其通用性和利用率是否高。 15.引入数据表示的两条基本原则是:一看系统的效率有否提高;二看数据表示的通用性和利用率是否高。 13.计算机组成指的是计算机系统结构的逻辑实现,包括机器级内的数据
3、流和控制流的组成及逻辑设计等。计算机实现指的是计算机组成的物理实现,。 21、软件和硬件在什么意义上是等效的?在什么意义上是不等效的? 逻辑上等效,性能、价格、实现难易程度上不一样。 22.说明翻译和解释的区别和联系. 区别:翻译是整个程序转换,解释是低级机器的一串语句仿真高级机器的一条语句。联系:都是高级机器程序在低级机器上执行的必须步骤。 19.计算机系统结构也称计算机体系结构,指的是传统机器级的系统结构。它是软件和硬件/固件的交界面,是机器语言汇编语言程序设计者或编译程序设计者看到的机器物理系统的抽象。(是指计算机系统的软、硬件的界面,即机器语言程序员所看到的传统机器级所具有的
4、属性) 19.一种浮点数有1位符号位,阶码为7位移码,尾数8位与符号位一起采用原码的规格化表示,基数为2,该浮点数可表示的最大数为 (1-2^-8)2^63 ,可表示的最小数为 2^-65 。 20、一台模拟机共有7条指令,有8个通用寄存器和两个变址寄存器。若要求设计8位长的寄存器-寄存器型指令3条,16位长的寄存器-存储器型变长指令4条,变址范围为-127~127,请设计指令格式,并给出指令各字段的长度。 根据指令格式,8位R-R型指令,操作码占2位,两个通用寄存器编号字段各占3位,允许8个通用寄存器。 16位R-M型指令,操作码占4位,地址码字段占8位,一个
5、通用寄存器编号字段占3位,变址寄存器编号仅1位,允许2个变址寄存器。 21、某处理机的指令字长为16位,有二地址指令、单地址指令和零地址指令3类,每个地址指令的长度均为6位。 (1)如果二地址指令有15条,单地址指令和零地址指令的条数基本相等,那么,单地址指令和零地址指令各是多少条?为3类指令分配操作码(2)如果指令系统要求这3类指令条数的比例为1:9:9,那么,这3类指令各有多少条?为3类指令分配操作码 (1)双地址指令:0000~1110 15条 (2)单地址指令:1111000000~1111111110 63条 (3)零地址指令:1111111111000000~111
6、1111111111110 64条 问答: 2.1 指令集结构设计所涉及的内容有哪些? 指令集功能设计 主要有RISC和CISC两种技术发展方向 寻址方式的设计 设置寻址方式可以通过对基准程序进行测试设计,查看各种寻址方式的使用频率,根据使用频率设置必要地寻址方式 寻址方式的表示 可以将寻址方式编码于操作码中,也可以将寻址方式作为一个单独的字段来表示 操作数表示和操作数类型 可选择浮点型数据类型、整型数据类型、字符型、十进制数据类型等 指令格式的设计 有变长编码格式、定长编码格式和混合编码格式3种 23.
7、何谓指令格式的优化?简要列举包括操作码和地址码两部分的指令格式优化可采用的各种途径和思路。 指令格式的优化指如何用最短位数表示指令的操作信息和地址信息,使程序中指令的平均字长最短。 ①操作码的优化 采用Huffman编码和扩展操作码编码。 ②对地址码的优化: 采用多种寻址方式; 采用0、1、2、3等多种地址制; 在同种地址制内再采用多种地址形式,如寄存器-寄存器型、寄存器-主存型、主存-主存型等; 在维持指令字在存储器内按整数边界存储的前提下,使用多种不同的指令字长度。 18.CISC的中文意义是复杂指令计算机,RIS
8、C的中文意义是精简指令计算机。 19、GCC的 –g 编译参数有什么含义 生成调试信息。GNU 调试器可利用该信息。 20、objdump的 –S 参数有什么含义; 尽可能反汇编源代码 21、程序中的条件语句编译为了哪些机器指令; 程序中的循环语句编译为了哪些机器指令; 22、GDB的file,run,next,break,print,list,disassemble命令各有什么含义。 file :加载文件 run:运行程序 next命令(缩写l)可以加载下一条代码 list命令(缩写l)可以列出代码 break命令来设置断点, 在调试程序时,当程序被停住时,可以使用
9、print命令(缩写为p),或是同义命令inspect来查看当前程序的运行数据 disassemble命令用于反汇编,它可被用来查看当前执行时的源代码的机器码,其实际上只是把目前内存中的指令dump出来 23.简要比较CISC机器和RISC机器各自的结构特点,它们分别存在哪些不足和问题?为什么说今后的发展应是CISC和RISC的结合? CISC结构特点:机器指令系统庞大复杂。 RISC结构特点:机器指令系统简单,规模小,复杂度低。 CISC的问题: (1)指令系统庞大,一般200条以上; (2)指令操作繁杂,执行速度很低; (3)
10、难以优化生成高效机器语言程序,编译也太长,太复杂; (4)由于指令系统庞大,指令的使用频度不高,降低系统性能价格比,增加设计人员负担。 RISC的问题; (1)由于指令少,在原CISC上一条指令完成的功能现在需多条RISC指令才能完成,加重汇编语言程序设计负担,增加了机器语言程序长度,加大指令信息流量。 (2)对浮点运算和虚拟存储支持不很强。 (3)RISC编译程序比CISC难写。 由于RISC和CISC各有优缺点,在设计时,应向着两者结合,取长补短方向发展。 8.看下述程序段:( C ) k: R5=R2 k+1:
11、 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.以上都不对 1.开发并行的途径有( D ),资源重复和资源共享。 A、多计算机系统 B、多道分时 C、分布式处理系统 D、时间重叠 18.“一次重叠”解释时,第K+1条指令需等K条指令执行后才能形成,称此时发生了“指令相关”。若第K条指令的结果数地址与第K+1条指令的源数地址一样时,
12、称发生了“先写后读相关”。 24.为提高流水线效率可采用哪两种主要途径来克服速度瓶颈? 为提高流水线效率可采用瓶颈段再细分(2分)和瓶颈段并联(3分)两种主要途径来克服速度瓶颈。 21.简要解释提高计算机系统并行性的三个技术途径。 (1)时间重叠:引入时间因素,是让多个处理过程在时间上相互错开,轮流使用同一套设备的各个部分,以加快硬件周转来赢得速度。 (2)资源重复,是引入空间因素,通过重复设置硬件资源来提高性能。 (3)资源共享,是用软件方法让多个用户按一定时间顺序轮流使用同一套资源来提高其利用率,相应也就提高了系统的性能。 10.在计算机系统设计中,比较好的方法是(D )。
13、 A、从上向下设计 B、从下向上设计 C、从两头向中间设计 D、从中间开始向上、向下设计 22.假设将某系统的某一部件的处理速度加快到10倍,但该部件的原处理时间仅为整个运行时间的40%,则采用加快措施后能使整个系统的性能提高多少? Sp=To/Tn=1/((1-Fe)+Fe/Se)=1/(0.6+0.4/10)=1.5625 26、如有一浮点乘法流水线如图(a)所示,其乘积可直接返回输入端或暂存于缓冲寄存器中,画出实现A*B*C*D的时空图及输入端的变化,并求出该流水线的吞吐率和效率;当流水线改为图(b)形式时,求其实现同一计算时该流水线的吞吐率及效率。
14、 流27、假设一台模型计算机共有7种不同的操作码,如果采用固定长操作码需要3位。已知各种操作码在程序中出现的概率如下表,计算采用全Huffman编码法的操作码平均长度,并计算固定长操作码和Huffman操作码的信息冗余量。若将全Huffman编码改为2-4等长扩展编码法,求操作码最短平均长度和信息冗余量 指令序号 I1 I2 I3 I4 I5 I6 I7 出现概率 0.45 0.3 0.15 0.05 0.03 0.01 0.01 固定长操作码: 哈夫曼树: 等长扩展编码: 28、用一条5个功能段的浮点加法器流水线计
15、算F=,每个功能段的延迟时间均相等,流水线的输出端和输入端之间有直接数据通路,而且设置有足够的缓冲寄存器。要求用尽可能短的时间完成计算,画出流水线时空图,并计算流水线的实际吞吐率、加速比和效率。 直接执行微指令的是(C) 汇编程序 b.编译程序 c.硬件 d.微指令程序 软件和硬件在( B )意义上是等效的。 A. 系统结构 B.功能 C. 性能 D. 价格 实现汇编语言源程序变换成机器语言目标程序是由( D ) A.编译程序解释 B.编译程序翻译 C.汇编程序解释 D.汇编程序翻译 3.按照计算机系统层次结构,算术运算
16、逻辑运算和移位等指令应属于( A )级机器语言。 A. 传统机器语言机器 B.操作系统机器 C. 汇编语言机器 D.高级语言机器 4.对汇编语言程序员,下列( A )不是透明的。 A. 中断字寄存器 B.乘法器 C. 移位器 D.指令缓冲器 将计算机系统中某一功能的处理速度提高到原来的20倍,但该功能的处理时间仅占整个系统运行时间的40%,则采用此提高性能的方法后,能使整个系统的性能提高多少? 假设该处理原来所需时间为T,由于该功能的处理使用时间占整个系统运行时间的40%,所以,其他的处理时间为1.5T。该功能的处理速度被提高到2
17、0倍后,则其所需时间为0.05T,因此,系统的性能大致提高到(T+1.5T)/(0.05T+1.5T)=2.5T/1.55T=1.61倍。 例如:400Mhz的处理器运行一个包含200万条指令的程序,该程序由四中指令组成: 1、算术和逻辑指令 ,CPI=1,指令百分比0.6 2、cache命中的取数/存数 CPI=2,百分比0.18 3、分支 ,CPI=4,百分比0.12 4、cache失效的存储器访问 CPI=8,百分比0.1 当由单一处理器执行该程序时,其平均CPI=0.6+(2×0.18)+(4×0.12)+(8×0.1)=2.24,相应的MIPS速度=f/(CPI*10^
18、6)=(400×10^6)/(2.24×10^6)≈178。 6.在采用基准测试程序来测试评价机器的性能时,下列方法按照评价准确性递增的顺序排列是( D )。 (1)实际的应用程序方法 (2)核心程序方法 (3)玩具基准测试程序(小测试程序) (4)综合基准测试程序 A.(1)(2)(3)(4) B.(2)(3)(4)(1) C.(3)(4)(1)(2) D.(4)(3)(2)(1) 1、假设各种分支指令数占所有指令数的百分比如下 条件分支 20%(其中60%是分支成功的) 跳转和调用 5% 现有一条段数为4的流水线,无条件分在在第2个时钟周期结束时就被解析出来
19、而条件分支要到第3个时钟周期结束时就被解析出来。第1个流水段是完全独立于指令类型的,即所有类型的指令都必须经过第一段流水段的处理。请问在没有任何控制相关的情况下,该流水线相对于存在上述控制相关情况下得加速比是多少? 解:没有控制相关时流水线的平均CPI=1 存在控制相关时:由于无条件分支在第二个时钟周期结束时就被解析出来,而条件分支 要到第3个时钟周期结束时才能被解析出来。所以: (1)若使用排空流水线的策略,则对于条件分支,有两个额外的stall,对无条件分支,有一个额外的stall: CPI = 1+20%*2+5%*1 = 1.45 加速比S=CPI/1 = 1.45 (2)若
20、使用预测分支成功策略,则对于不成功的条件分支,有两个额外的stall,对无条件分支和成功的条件分支,有一个额外的stall 1: CPI = 1+20%*(60%*1+40%*2) +5%*1 = 1.33 加速比S=CPI/1 = 1.33 (3)若使用预测分支失败策略,则对于成功的条件分支,有两个额外的stall;对无条件分支,有一个额外的stall;对不成功的条件分支,其目标地址已经由PC 值给出,不必等待,所以无延迟: CPI = 1+20%*(60%*2 + 40%*0) +5%*1 = 1.29 加速比S=CPI/1 = 1.29 2、MIPS流水线上运行如下代码序列
21、 LOOP:LW R1,0(R2) DADDIU R1,R1,#1 SW R1,0(R2) DADDIU R2,R2,#4 DSUB R4,R3,R2 BNEZ R4,LOOP 已知,在整个代码序列的执行过程中,所有的存储器访问都是命中的,并且在1个时钟周期中对同一寄存器的写操作和读操作可以通过分别把它们安排在前半个周期和后半个周期来实现 (1)在没有任何其他定向(或旁路)硬件的支持下,请画出该指令序列执行的流水线时空图 (2)假设该
22、流水线有正常的定向路径,假设采用预测分支失败的策略处理分支指令,且所有的存储器访问都命中Cache。请画出该指令序列执行的流水线时空图 (3)假设该流水线有正常的定向路径和一个单周期延迟分支,请对该循环中的指令进行调度,你可以重新组织指令的顺序,也可以修改指令的操作数,但是注意不能增加指令的条数。请画出该指令序列执行的流水线时空图 3、有A、B、、C、D4个存储器操作数,要求完成(A*B)+(C+D)的运算,原来的程序如下: LOAD R1,M(A) LOAD R2,M(B) MUL R5,R1,R2 LOAD R3,M(C) LOAD R4,M(D) ADD
23、 R2,R3,R4 ADD R2,R2,R5 现采用静态指令调度方法,写出该程序调度后的指令序列 I1 LOAD R1 ,M(A) I2 LOAD R2 ,M(B) I3 LOAD R3 ,M(C) I4 LOAD R4 ,M(D) I5 MUL R5 ,R1 ,R2 I6 ADD R2 ,R3 ,R4 I7 ADD R2 ,R2 ,R5 4、假设想用100个处理器达到80的加速比,
24、求原计算程序中串行部分最多可占多大的比例? 5、现有16个处理器,编号分别为0,1,。。。,15,用一个N=16的互连网络互连。处理器i的输出通道连接互连网络的输入端i,处理器i的输入通道互连互连网络的输出端i。当该互连网络实现的互连函数分别为: Cube3,PM2+3,PM2-0,均匀洗牌时,分别给出与第13号机器所连接的处理器号。 6、云计算的基本原理是通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将更与互联网相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。 7、当今互联网用户的需求是什么? --
25、题二--------------------------------- 名词解释: 1、SIMD与MIMD SIMD:单指令多数据流计算机 MIMD:多指令多数据流计算机 2、RISC与CISC CISC:复杂指令系统计算机,它是指按照进一步增强原有指令的功能以及设置更为复杂的新指令取代原先有软件子程序完成的功能,实现软件功能的硬化途径设计成CPU的计算机。 RISC:精简指令系统计算机,它是指通过减少指令总数和简化指令功能来降低硬件设计的复杂度,来提高指令执行速度的途径设计成CPU的计算机 3、从
26、以下有关RISC的描述中,选择正确的描述(D) A、为了实现兼容,各公司新设计的RISC计算机,是从原来的CISC系统的指令系统中挑选一部分实现的。 B、早期的计算机比较简单,采用RISC技术后,计算机的体系结构又恢复了早期的情况 C、RISC的主要目标是减少指令数,因此允许以增加每条指令的功能的方法来减少指令系统所包含的指令数 D、以上说法都不对 4、Linux系统命令time给出的用户时间,系统时间,实际时间分别是什么含义; user表示time后的命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和。 sys表示time后的命令执行完成花费的系统CPU时间,即命令
27、在核心态中执行时间总和。 real表示time后的命令实际使用时间(real time),即是从command命令开始执行到运行终止的消耗的总时间。 5、clock()和gettimeofday()函数获取的CPU时间和总时间是什么含义; gettimeofday: 有点类似于time, 获取当前相对于 Epoch 所经过的 秒数+微秒数。 clock: 返回当前进程消耗的CPU时间。 6、实验中各种方法获得的计时相关数值分别是什么精度,相互之间有什么关系? 4、简要比较CISC和RISC机器各自的结构特点,它们分别存在哪些不足和问题,为什么说今后的发展应该是CISC和
28、RISC的结合? 结构特性 CISC RISC 指令系统规模与指令格式 指令系统庞大,指令格式可变 指令系统小,指令格式固定,大部分以寄存器为基础 寻址方式 12-24种 限制在3-5种 通用寄存器与高速缓存设计 通用寄存器8-24个,基本上使用合一的指令与数据高速缓存 基本上使用分开的数据与指令高速缓存,通用寄存器个数多(32-192) 时钟频率与CPI 钟频较低,CPI一般为2-15 钟频较高,CPI<1.5 CPU控制 大多数使用控制存储器(ROM)实现微指令控制,但现在也有使用硬连线控制 大多数不用控制存储器而用硬连线控制 通过上表可以看出,CIS
29、C具有指令数量多,单条指令执行周期长等缺点;而RISC则具有不便于用户程序的开发等缺点,因此二者结合才是未来的发展方向。 1、 在下列常用术语后面,写出相应的中文名称 VLSI (Very Large Scale Integration) 超大规模集成电路 MPP 大规模并行处理器 RISC 精简指令系统计算机 DMA 直接存储器访问 2、 下列体系结构中,最适合多个任务并行执行的体系结构是( D) A、流水线的向量机结构 B、堆栈处理结构 C、共享存储多处理机结构 D、分布存储多计算机结构 6、名词解释 (1)WAR相关 即Write After Read(
30、读后写),写入数据一方试图在读数据一方读出数据之前,就进行写入,这样就可能造成读数据方读出的值是写入数据一方新写入的值(实际要读出的是原来的值),从而发生错误。 (4)MIPS 每秒执行百万条指令数,是用来描述计算机整体性能的。 3、 从用户的观点看,评价计算机系统性能的综合参数是:(B) A、指令系统 B、吞吐率 C、主存容量 D、主频率 7、主频为16MHZ的微处理机,平均每条指令的执行时间为两个机器周期,每个机器周期由两个时钟脉冲组成,则存储器“零等待”时,机器运行速度为(4)MIPS。 MIPS=f/(CPI*10^6)=16/(2*2)=4 若两个机器周期有一个访
31、问存储周期,需要插入两个时钟的等待时间,则机器运行速度为(2.67)MIPS。 8、假如我们有一个需要运行100秒的标准程序,其中有90秒是CPU时间,剩下的是I/O占用的时间。如果在以后的5年中,CPU速度每年可以提高50%且I/O时间保持不变,那么5年后我们的程序需要耗费多少时间。 9、如果采用如下图所示的双输入端的加-乘双功能的静态流水线,其每个功能段的经过时间均为一拍Δt,在加法时按1→2→3→5连接,乘法时按1→4→5连接,流水线的输出可以直接送到其输入端或存入缓冲器,不计其间的传送延迟,操作数可以连续提供。 对向量A=(a1,a2,a3,a4),B=(b1,b 2,b
32、 3,b 4),采用上述流水线完成点积A·B= ,则完成任务所需要的最小拍数是多少?并画出此时的流水线的时空图,计算此流水线的吞吐率,加速比和效率。 1 4 2 3 5 1、设指令由取指、分析、执行 3 个子部件完成,每个子部件的工作周期均为△t,采 用常规标量单流水线处理机。若连续执行 10 条指令, 则共需时间 ( C )△t。 (3)A. 8 B. 10 C. 12 D. 14 (K+(n-1)) △t=3+9 2、某计算机的时钟频率为 400MHz,测试该计算机的程序使用 4 种类型的指令。每种 指令的数量及所需指令时钟数(CPI)如下表所示, 则该计
33、算机的指令平均时钟数为(1.93) ; 该计算机的运算速度约为 (207.3) MIPS。 指令类型 指令数目(条) 每条指令需时钟数 1 160000 1 2 30000 2 3 24000 4 4 16000 8 6、系统响应时间和作业吞吐量是衡量计算机系统性能的重要指标。对于一个持续处理 业务的系统而言, (B) ,表明其性能越好。 A. 响应时间越短,作业吞吐量越小 B. 响应时间越短,作业吞吐量越大
34、 C. 响应时间越长,作业吞吐量越大 D. 响应时间不会影响作业吞吐量 7、若每一条指令都可以分解为取指、分析和执行三步 。已知取指时间t 取指=4△t,分 析时间t 分析=3△t,执行时间t 执行=5△t。如果按串行方式执行完100 条指令需要 (C) △ t。如果按照流水线方式执行,执行完100 条指令需要 (B) △t。 (4)A. 1190 B. 1195 C. 1200 D. 1205 (5)A. 504 B. 507 C. 508 D. 510 (4△t+3△t+5△t)+(n-1)5△t 11、假定我们正在考虑两种条件转移指令的设计方法,这两种方法如下:
35、 CPU A——先道过一条比较指令设置条件码A,再用一条分支指令检测条件码; CPU B——比较操作包含在分支指令中。 在两种CPU中,条件转移指令都需要两个时钟周期,所有其他指令都需要一个时钟周期。在CPU A中,全部指令的20%是条件转移指令,因为每次条件转移都需要一次比较,所以比较指令约占所有指令的20%。因为CPU A不需要在转移中包含分支,所以它的时钟频率是CPU B的1.25倍。哪一种CPU更快?如果CPU.A的时钟频率只是CPU B的1.1倍,结果又是多少? 12、某计算机系统采用浮点运算部件后使浮点运算速度提高到原来的20倍, 个程序的整
36、体性能提高到原来的5倍,试计算该程序中浮点操作所占的比例。 Fe=16/19 14、一个4段线性流水线,各段执行时间不等,求流水线最大吞吐率和连续输入n 个任务的实际吞吐率。 15、设有两个向量A、B,各有四个元素,要在如图所示的静态双功能流水线上计算向量点积。在该双功能流水线中,S1→S2→S3→S5组成加法流水线,S1→S4→S5组成乘法流水线。设每个流水段所经过的时间为Δt,而且流水线的输出结果可以直接返回到输入或暂存于相应的缓冲寄存器中,其延迟时间和功能切换时间忽略不计。求出流水线完成此运算工作期间的实际吞吐率TP和
37、效率η。 17、并行访问存储器最大的问题就是访问冲突大,下面不属于并行访问存储器的缺点的是:(D) A、取指令冲突 B、读操作数冲突 C、写数据冲突 D、译码冲突 24、造成Cache的不一致性的因素有哪些? 造成Cache与主存的不一致的原因: (1) 由于CPU写Cache,没有立即写主存(写回法) (2) 由于IO处理机或IO设备写主存 说明:Cache的内容是主存内容的一部分,是主存的一个小的副本,内容应该与主存保持一致。由于(1)CPU改写了Cache,没有立即写主存;(2)I/O处理机或I/O设备改写了主存,而Cache的内容没
38、有更新,造成Cache的内容与主存内容不一致, 25、请列举Cache的更新算法,并比较其优缺点。 (1)写直达法,写通过法,WT(Write-through) CPU的数据写入Cache时,同时也写入主存 (2) 写回法,抵触修改法,WB(Write-Back) CPU的数据只写入Cache,不写入主存,仅当替换时,才把修改过的Cache块写回主存 写回法与写直达法的优缺点比较: (1)可靠性,写直达法优于写回法。 写直达法能够始终保证Cache是主存的副本。 如果Cache发生错误,可以从主存得到纠正。 (2)与主存
39、的通信量,写回法少于写直达法。 对于写回法: 大多数操作只需要写Cache,不需要写主存; 当发生块失效时,可能要写一个块到主存; 即使是读操作,也可能要写一个块到主存。 对于写直达法: 每次写操作,必须写、且只写一个字到主存。 实际上: 写直达法的写次数很多、每次只写一个字; 写回法是的写次数很少、每次要写一个块 (3)控制的复杂性, 写直达法比写回法简单。 对于写回法: 要为每块设置一个修改位,而且要对修改位进行管理; 为了保证Cache的正确性,通常要采用比较复杂的校验方式或校正方式。 对于写直达法:
40、 不需要设置修改位; 只需要采用简单的奇偶校验即可。由于Cache始终是主存的副本,Cache一旦有错误可以从主存得到纠正。 (4)硬件实现的代价, 写回法要比写直达法好。 对于写直达法: 为了缩短写Cache流水段的时间,通常要设置一个小容量的高速寄存器堆(后行写数缓冲站),每个存储单元要有数据、地址和控制状态等3部分组成。 每次写主存时,首先把写主存的数据和地址写到高速寄存器堆中。 每次读主存时,要首先判断所读数据是否在这个高速寄存器堆中。 写回法不需要设置高速缓冲寄存器堆。 28、请解释流水线技术时间和空间并行性。 空间并行性:设置多个
41、独立的操作部件,并使这些部件并行工作 时间并行性:分时使用同一个部件的不同部分 29用一条4段浮点加法器流水线求8个浮点数的和:Z=A+B+C+D+E+F+G+H 解: Z=[(A+B)+(C+D)]+[(E+F)+(G+H)] 30、一条4段流水线,每段执行时间为1ns,求该流水线执行100条指令最大效率为:(C) E=100*4*t/4(4+99)t A.100% B.96.2% C.97.1% D.388% 假设一条指令的执行过程可以分为“取指令”、“分析”和“执行”三段,每一段的执行时间均为,连续执行n条指令所需要花费的最短时间约为(B)(假
42、设仅有“取指令”和“分析”可重叠并假设n足够大):(K+(N-1)) A. B. C. D. 11. MISD是指(C) A.单指令流单数据流 B.单指令流多数据流 C.多指令流单数据流 D.多指令流多数据流 29. 星形网络的网络直径和链路数分别为(C)和(A)。 A.N-1 B.N/2 C.2 D.N(N-1)/2 1、设有一个15000条指令的程序在一台时钟速率为25MHz的线性流水线处理机上执行。假设该指令流水线有5段,且每个时钟周期发射一条指令。忽略由于转移指令和无序执行造成的损失。 1).用该流水线执行这一程序,并用流过延迟与其相等的一个等效
43、非流水线处理机执行同一程序,将两者加以比较,并计算其加速因子。 2).该流水线处理机的效率和吞吐率是多少? 2、在某个程序中,简单指令占80%,复杂指令占20%,在CISC机中简单指令执行需4个机器周期,复杂指令需要8个机器周期。在RISC机中简单指令执行需要1个周期,而复杂指令需要通过一串指令来实现,假定每条复杂指令平均需要14条简单指令。若该程序中需要执行的总的指令数为1,000,000, 一个机器周期时间是100ns,那么: 1).RISC机需执行的指令数多少? 2),CISC和RISC机的CPU时间分别是多少? 3),RISC机对CISC机的加速比为多少? (1)1
44、0000000*0.8+10000000*0.2*14=3600000 (2)(10000000*0.8*4*100*10^-9)+( 10000000*0.2*8*100*10^-9)=0.48s (10000000*0.8*1*100*10^-9)+( 10000000*0.2*14*100*10^-9)=0.36s (3)0.48/0.36=1.33 已知四个程序在三台计算机上的执行时间(s,秒)如下: 程序 执行时间(s,秒) 计算机A 计算机B 计算机C 程序1 1 10 20 程序2 1000 100 20 程序3 500 1000
45、 50 程序4 100 800 100 假设四个程序中每一个都有50,000,000条指令要执行。 1)计算这三台计算机中每台机器上每个程序的MIPS速率。根据这些速率值,你能否得出有关三台计算机相对性能的明确结论? 2)给出一种统计的方法(比如求均值)来估计三台计算机的相对性能,说明理由。 3、定义: 计算机系统结构 :软硬件的界面,即机器语言程序员所看到的传统机器级所具有的属性 静态流水线 :在同一段时间内,多功能流水线中的各个功能段只能按照一种固定的方式连接,实现一种固定的功能。 动态流水线 :在同一时间或者不同时间内,流水线的各段可以进行不同的链接,通
46、过不同的方式实现不同的功能。 网络直径:互联网络任意两节点之间的路径最大值 4、软件和硬件在(B)意义上是等效的。 A.系统结构 B.功能 C.性能 D.价格 14. 计算机系统设计人员的技术挑战主要来自哪几个方面? 来自系统结构、技术工具、应用、软件和经济。 23. 从执行程序的角度看,并行性等级从低到高可分为哪几级? 从执行程序的角度来看,并行性等级从低到高可分为: (1)指令内部并行:单条指令中各微操作之间的并行; (2)指令级并行:并行执行两条或两条以上的指令; (3)线程级并行:并行执行两个或两个以上的线程,通常是以一个进程内派生的多个线程为调度单位; (4)任务级或过程级并行:并行执行两个或两个以上的过程或任务(程序段),以子程序或进程为调度单元; (5)作业或程序级并行:并行执行两个或两个以上的作业或程序。






