计算机系统结构复习题
参考书目:《计算机体系结构》,张晨曦等编著,高等教育出版社。
第一章:
基本概念:层次结构、计算机体系结构的概念、透明性、计算机组成和计算机实现技术、翻译和解释技术、系列机概念、兼容性、程序的局部性原理。矚慫润厲钐瘗睞枥庑赖賃軔朧碍鳝绢懣硯涛镕頃赎巯驂雞虯从躜鞯烧。
1.1 对于一台400MHz计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如表所示。聞創沟燴鐺險爱氇谴净祸測樅锯鳗鲮詣鋃陉蛮苎覺藍驳驂签拋敘睑绑。
指令类型
指令执行数量
平均时钟周期数
整数
45000
1
数据传送
75000
2
浮点
8000
4
分支
1500
2
求该计算机的有效CPI、MIPS(即计算机每秒执行的百万条指令数)和程序执行时间。
1.2 假设在某程序的执行过程中,浮点操作时间占整个执行时间的10%,现希望对浮点操作加速,则
(1) 设对浮点操作的加速比为Sf。画出程序总加速比SP和Sf之间的关系曲线。
(2)程序的最大加速比可达多少?
1.3 计算机系统中有3个部件可以改进方法,这3个部件的部件加速比如下:
部件加速比1=30
部件加速比2=20
部件加速比3=10
如果部件1和部件2的可改进比例均为30%,那么当部件3 可改进比例为多少时,系统加速比才可以达到10?残骛楼諍锩瀨濟溆塹籟婭骒東戇鳖納们怿碩洒強缦骟飴顢歡窃緞駔蚂。
如果3个部件的可改进比例分别为30%、30%和20%,3个部件同时改进,那么系统中不可加速部分的执行时间在总执行时间中占的比例是多少?酽锕极額閉镇桧猪訣锥顧荭钯詢鳕驄粪讳鱸况閫硯浈颡閿审詔頃緯贾。
如果相对某个测试程序3个部件的可改进比例分别为20%、20%和70%,要达到最好改进效果,仅对一个部件改进时,要选择哪个部件?如果允许改进两个部件,又如何选择?彈贸摄尔霁毙攬砖卤庑诒尔肤亿鳔简闷鼋缔鋃耧泞蹤頓鍥義锥柽鳗铟。
第二章:
基本概念:CISC计算机指令集、RISC计算机指令集、 DLX指令集。
2.1 指令集结构设计所涉及的内容有哪些?
2.2简述 CISC指令集结构功能设计的主要目标。从当前的计算机技术观点来看,CISC指令集结构的计算机有什么缺点?謀荞抟箧飆鐸怼类蒋薔點鉍杂篓鳐驱數硯侖葒屜懣勻雏鉚預齒贡缢颔。
2.3简述RISC指令集结构设计的原则。
2.4现有如下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.在循环的两次迭代之间不将任何数保存在寄存器中.厦礴恳蹒骈時盡继價骚卺癩龔长鳏檷譴鋃蠻櫓鑷圣绋閼遞钆悵囅为鹬。
请写出该C语言源程序的DLX实现代码.
该程序段共执行了多少条指令?
程序对存储器中的数据访问了多少次?
DLX代码的大小是多少?
2.5 参考习题2.4,现假设i的值和数组变量的地址在程序运行过程中,只要有可能就一直保存在寄存器中.茕桢广鳓鯡选块网羈泪镀齐鈞摟鳎饗则怿唤倀缀倉長闱踐識着純榮詠。
(1)请写出该C语言源程序的DLX实现代码.
(2)该程序段共执行了多少条指令?
(3)程序对存储器中的数据访问了多少次?
(4)DLX代码的大小是多少?
第三章:
基本概念:流水线、时空图、单功能流水线与多功能流水线、静态流水线和动态流水线、部件级、处理机级和处理机间流水、标量流水处理机和向量流水、线性流水线和非线性流水线、 结构相关、数据相关、控制相关、写后读相关、写后写相关、读后写相关、 DLX的基本流水线。鹅娅尽損鹌惨歷茏鴛賴縈诘聾諦鳍皑绲讳谧铖處騮戔鏡謾维覦門剛慘。
3.1简述流水线技术的特点.
3.2请画出DLX基本流水线,并简述其工作原理.
3.3解决流水线结构相关的方法有哪些?
3.4降低流水线分支损失的方法有哪些?
3.5有一指令流水线如图3.5所示
4321 入 出
4
3
2
1
50ns50ns100ns200ns
图3.5
求连续输入10条指令,该流水线的实际吞吐率和效率.
该流水线的“瓶颈”在哪一段?请采取三种不同的措施消除此“瓶颈”.对于你所给出的3种新的流水线,仍计算连续输入10条指令时,其实际吞吐率和效率.籟丛妈羥为贍偾蛏练淨槠挞曉养鳌顿顾鼋徹脸鋪闳讧锷詔濾铩择觎測。
3.6 流水线有m段,各段的处理时间分别是ti(i=1,2,…,m),现有n 个任务需要完成 ,且每个任务均需流水线各段实现,请计算:預頌圣鉉儐歲龈讶骅籴買闥龅绌鳆現檳硯遙枨纾釕鴨鋃蠟总鴯询喽箋。
(1)流水线完成这n个任务所需要的时间.
(2)和