计算机体系结构期末试卷试题7
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机系统结构
姓名:学号:
一、填空题(20分,每空2分)
1.数据流机采用(),执行的操作序列取决于输入数据的可用性;归约机则采用(),执行的操作序列取决于对数据的要求,对数据的需求又来源于函数式程序设计语言对表达式的归纳。
2.设计I/O系统的三个标准是()、()和()。
3.单机和多机并行性发展的技术途径有()、()和()。
4.与重叠机器一样,流水机器在遇到()指令,尤其是()指令时,效率也会显著下降。
二、简答题(20分,每题10分)
1.在进行计算机系统设计时,一个设计者应该考虑哪些因素对设计的影响?
2.请简述I/O系统设计的步骤。
三、(共60分)现有如下C语言源代码:
for (i=0;i<100,i++)
{ A[i]=B[i]+C;}
其中,A和B是两个32位整数的数组,C和i均是32位整数。假设所有数据的值及其地址均保存在存储器中,A和B的起始地址分别是0和5000,C和i的地址分别是1500和2000。
1.现假设在程序运行过程中,只要有可能就将i的值和数组变量的地址一直保存在寄存器中,请写出该C语言源程序的MIPS实现代码。MIPS代码的大小是多少?
2.假设上述MIPS代码在MIPS流水线上(有正常的定向路径、分支指令在译码段被解析出来,所有存储器访问全部Cache命中)执行,请以最快执行方式调度该MIPS指令序列。注意:可以改变操作数,但不能改变操作码和指令条数。计算调度后的MIPS代码序列执行所需的时钟周期数,以及对于上述标准MIPS流水线执行的加速比。
3.请写出该MIPS代码的存储器数据访问地址流(十进制表示)。
4.在前面“3”中的实现中,均是假设存储器访问全部Cache命中,且Cache命中访问时间为1个时钟周期。现假设MIPS流水线没有Cache,所有存储器访问均需50个时钟周期(失效损失),请问“3”中调度后的MIPS指令序列在该MIPS(没有Cache)上执行需要多少个时钟周期数。
5.现假设为MIPS流水线设置一个大小为400 B的一级Cache,Cache块的大小为200 B,
采用全相联映射策略和写回策略,Cache的命中时间为1个时钟周期,失效损失为50个时钟周期,失效时每次预取一个块,预取一个块的时间为50个时钟周期,请计算该Cache的失效率,以及现在“3”中调度后的MIPS指令序列在MIPS上执行需要多少个时钟周期数。