计算机组成原理5
- 格式:doc
- 大小:41.00 KB
- 文档页数:3
计算机组成原理姓名:[填空题]*1.指令系统中采用不同寻址方式的目的主要是()。
[单选题]A.实现存储程序和程序控制B.缩短指令长度,扩大寻址空间,提高编程灵活性(正确答案)C.可以直接访问外存D.提供扩展操作码的可能并降低指令译码难度2、立即寻址是指()o [单选题I*A.指令中直接给出操作数地址B.指令中直接给出操作数(正确答案)C.指令中间接给出操作数D.指令中间接给出操作数地址3、直接寻址是指()o [单选题]*A.指令中直接给出操作数地址(正确答案)B.指令中直接给出操作数C.指令中间接给出操作数D.指令中间接给出操作数地址4、间接寻址是指()o [单选题]*A.指令中直接给出操作数地址B.指令中直接给出操作数C.指令中间接给出操作数D.指令中间接给出操作数地址 15、变址寻址方式中,操作数的有效地址等于()o [单选题]*A.基址寄存器内容加上形式地址(位移量)B.堆栈指示器内容加上形式地址C.变址寄存器内容加上形式地址(正确答案)D.程序计数器内容加上形式地址6、基址寻址方式中,操作数的有效地址等于()o [单选题]*A.基址寄存器内容加上形式地址(偏移量)(正确答案)B.堆栈指示器内容加上形式地址C.变址寄存器内容加上形式地址D.程序计数器内容加上形式地址7、定点数补码加法具有两个特点:一是符号位();二是相加后最高位上的进位要舍去。
[单选题]*A.与数值位分别进行运算B.与数值位一起参与运算1正确答案)C.要舍去D.表示溢出8、长度相同但格式不同的2种浮点数,假设前者阶码长、尾数短,后者阶码短、尾数长,其他规定均相同,则它们可表示的数的范围和精度为()o [单选题]*A.两者可表示的数的范围和精度相同B.前者可表示的数的范围大但精度低(正确答案)C.后者可表示的数的范围大且精度高D.前者可表示的数的范围大且精度高9、在定点二进制运算器中,减法运算一般通过()来实现。
[单选题]*A.原码运算的二进制减法器B.补码运算的二进制减法器C.补码运算的十进制加法器D.补码运算的二进制加法器(正确答案)10、在机器数()中,零的表示形式是唯一的。
国开电大计算机组成原理形考任务5参考
答案
答案】:读出信息、写入信息、清除信息、转移信息
1.在以下设备中,CPU的寄存器具有最快的存取速度。
2.对于容量为1K×8位的SRAM芯片,最少需要引出20根线,包括电源和接地线。
3.Cache被添加到主存和CPU之间,其目的是解决两者之间的速度不匹配问题。
4.RAM芯片串联的目的是增加存储单元数量和存储器字长。
5.主存储器的特点是容量小、速度快、成本高。
6.虚拟存储器的目的是为用户提供比主存更大的逻辑编程空间。
7.静态存储器、动态存储器和高速缓存存储器在停电后会丢失存储的信息。
8.对主存储器的基本操作包括读出信息、写入信息、清除信息和转移信息。
第5章习题参考答案1.请在括号内填入适当答案;在CPU 中:1保存当前正在执行的指令的寄存器是 IR ; 2保存当前正在执行的指令地址的寄存器是 AR3算术逻辑运算结果通常放在 DR 和 通用寄存器 ;2.参见图的数据通路;画出存数指令“STO Rl,R2”的指令周期流程图,其含义是将寄存器Rl 的内容传送至R2为地址的主存单元中;标出各微操作信号序列; 解:STO R1, R2的指令流程图及微操作信号序列如下:3.参见图的数据通路,画出取数指令“LAD R3,R0”的指令周期流程图,其含义是将R3为地址主存单元的内容取至寄存器R2中,标出各微操作控制信号序列; 解:LAD R3, R0的指令流程图及为操作信号序列如下:4.假设主脉冲源频率为10MHz,要求产生5个等间隔的节拍脉冲,试画出时序产生器的逻辑图; 解: 5.如果在一个CPU 周期中要产生3个节拍脉冲;T l =200ns,T 2=400ns,T 3=200ns,试画出时序产生器逻辑图;解:取节拍脉冲T l 、T 2、T 3的宽度为时钟周期或者是时钟周期的倍数即可;所以取时钟源提供的时钟周期为200ns,即,其频率为5MHz.;由于要输出3个节拍脉冲信号,而T 3的宽度为2个时钟周期,也就是一个节拍电位的时间是4个时钟周期,所以除了C 4外,还需要3个触发器——C l 、C 2、C 3;并令211C C T *=;321C C T *=;313C C T =,由此可画出逻辑电路图如下:6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的;已知微指令长度为32位,请估算控制存储器容量; 解:80条指令,平均每条指令由4条微指令组成,其中有一条公用微指令,所以总微指令条数为80 4-1+1=241条微指令,每条微指令32位,所以控存容量为:24132位7.某ALU 器件是用模式控制码M S 3 S 2 S 1 C 来控制执行不同的算术运算和逻辑操作;下表列出各条指令所要求的模式控制码,其中y 为二进制变量,φ为0或l 任选;2,S l ,C 的逻辑表达式;由表可列如下逻辑方程 M=GS 3=H+D+FS 2=A+B+D+H+E+F+G S 1=A+B+F+G C=H+D+Ey+Fy8.某机有8条微指令I1—I8,每条微指令所包含的微命令控制信号如下表所示;a—j分别对应10种不同性质的微命令信号;假设一条微指令的控制字段仅限为8位,请安10位控制字段,现控制字段仅限于8位,那么,为了压缩控制字段的长度,必须设法把一个微指令周期中的互斥性微命令组合在一个小组中,进行分组译码;经分析,e,f,h和b,i,j、或d,i,j和e,f,h、或g,b,j和i,f,h均是不可能同时出现的互斥信号,所以可将其通过2:4译码后输出三个微命令信号00表示该组所有的微命令均无效,而其余四个微命令信号用直接表示方式;因此可用下面的格式安排控制字段;e f h b i je f h d i jf h i bg j9μA8 = P1·IR6·T4μA7 = P1·IR5·T4μA6 = P2·C·T4其中μA8—μA6为微地址寄存器相应位,P1和P2为判别标志,C为进位标志,IR5和IR6为指令寄存器的相应位,T4为时钟周期信号;说明上述逻辑表达式的含义,画出微地址转移逻辑图;解:μA5=P3·IR5·T4μA4=P3·IR4·T4μA3=P1·IR3·T4μA2=P1·IR2·T4μA1=P1·IR1·T4μA0=P1·IR·T4+P2·C·T4用触发器强置端低有效修改,前5个表达式用“与非”门实现,最后1个用“与或非”门实现μA2、μA1、μA触发器的微地址转移逻辑图如下:其他略10.某计算机有如下部件,ALU,移位器,主存M,主存数据寄存器MDR,主存地址寄存器MAR,指令寄存器IR,通用寄存器R0R3,暂存器C和D;1请将各逻辑部件组成一个数据通路,并标明数据流动方向;2画出“ADD R1,R2”指令的指令周期流程图;解:1 设该系统为单总线结构,暂存器C和D用于ALU的输入端数据暂存,移位器作为ALU输出端的缓冲器,可对ALU的运算结果进行附加操作,则数据通路可设计如下:2 根据上面的数据通路,可画出“ADD R1,R2”设R1为目的寄存器的指令周期流程图如下:11.已知某机采用微程序控制方式,控存容量为51248位;微程序可在整个控存中实现转移,控制微程序转移的条件共4个,微指令采用水平型格式,后继微指令地址采用断定方式;请问;1微指令的三个字段分别应为多少位2画出对应这种微指令格式的微程序控制器逻辑框图;解:1 因为容量为51248位,所以下址字段需用9位,控制微程序转移的条件有4个,所以判别测试字段需4位或3位译码,因此操作控制字段的位数48-9-4=35位或48-9-3=36位2微程序控制器逻辑框图参见教材图12.今有4级流水线,分别完成取指、指令译码并取数、运算、送结果四步操作;今假设完成各步 操作的时间依次为100ns,100ns,80ns,50ns;请问; 1流水线的操作周期应设计为多少2若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么第2条指令要推迟多少时间进行3如果在硬件设计上加以改进,至少需推迟多少时间 答:1 流水操作周期为max100,100,80,50=100ns2若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么在第1条指令“送结果”步骤完成后,第2条指令的“取数”步骤才能开始,也就是说,第2条指令要推迟两个操作周期,即200ns 才能进行;3 如果在硬件设计上加以改进,采用定向传送的技术,则只要第1条指令完成“运算”的步骤,第2条指令就可以“取数”了,因此至少需推迟100ns;13.指令流水线有取指IF 、译码ID 、执行EX 、访存MEM 、写回寄存器堆WB 五个过程段,共有20条指令连续输入此流水线;1画出流水处理的时空图,假设时钟周期为100ns;2求流水线的实际吞吐率单位时间里执行完毕的指令数; 3求流水线的加速比; 解:1 流水处理的空图如下,其中每个流水操作周期为100ns :空间S I 1 I 2 I 15 I 16 I 17 I 18 I 19 I 20WB MEM EXIDIF123456192021222324时间T2 流水线的实际吞吐量:执行20条指令共用5+119=24个流水周期,共2400ns,所以实际吞吐率为:3 流水线的加速比为:设流水线操作周期为τ,则n指令串行经过k个过程段的时间为nkτ;而n条指令经过可并行的k段流水线时所需的时间为k+n-1τ;故20条指令经过5个过程段的加速比为:14.用时空图法证明流水计算机比非流水计算机具有更高的吞吐率;解:设流水计算机的指令流水线分为4个过程段:IF、ID、EX、WB,则流水计算机的时空图如下:空间S I1I2I3I4I5WBEXIDIF12345678时间T 非流水计算机的时空图:空间S I1I2WB EX ID IF1 2 3 4 5 6 7 8 时间T由图中可以看出,同样的8个操作周期内,流水计算机执行完了5条指令,而非流水计算机只执行完了2条指令;由此,可看出流水计算机比非流水计算机具有更高的吞吐率; 15.用定量描述法证明流水计算机比非流水计算机具有更高的吞吐率; 证明:设流水计算机具有k 级流水线,每个操作周期的时间为,执行n 条指令的时间为:()τ⨯-+=1n k T ;吞吐率为:()τ⨯-+=11n k nH而非流水计算机,执行n 条指令的时间为:τ⨯⨯=k n T ;吞吐率为:τ⨯⨯=k n nH 2当n=1时,21H H =;当n>1时,21H H >,即:流水计算机具有更高的吞吐率;16.判断以下三组指令中各存在哪种类型的数据相关 1 I 1 LAD R1,A ; MA →R1,MA 是存储器单元 I 2 ADD R2,Rl ; R2+R1→R2 2 I 1 ADD R3,R4 ; R3+R4→R3 I 2 MUL R4,R5 ; R4R5→R43 I 1 LAD R6,B ; MB →R6,MB 是存储器单元I 2 MUL R6,R7 ; R6 R7→R6 解:1 I 1的运算结果应该先写入R 1,然后再在I 2中读取R 1的内容作为操作数,所以是发生RAW “写后读”相关2 WAR3 RAW 和WAW 两种相关17.参考图所示的超标量流水线结构模型,现有如下6条指令序列: I 1 LAD R1,B ; MB →R1,MB 是存储器单元 I 2 SUB R2,Rl ; R2-R1→R2 I 3 MUL R3,R4 ; R3R4→R3 I 4 ADD R4,R5 ; R4+R5→R4I 5 LAD R6,A ; MA →R6,MA 是存储器单元 I 6 ADD R6,R7 ; R6+R7→R6请画出:1按序发射按序完成各段推进情况图; 2按序发射按序完成的流水线时空图; 解:(1) 按序发射按序完成各段推进情况图如下仍设F 、D 段要求成对输入;F 、D 、W 段只需1个周期;加需要2个周期;乘需要3个周期;存/取数需要1个周期;执行部件内部有定向传送,结果生成即可使用:取指段译码段执行段取/存加法器乘法器写回段1234567891011时钟I1I2超标量流水线的时空图。
CPU 组成与机器指令执行实验
一、实验目的
(1)将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机;(2)用微程序控制器控制模型机数据通路;
(3)通过CPU 运行九条机器指令(排除中断指令)组成的简单程序,掌握机器指令与微指令的关系,牢固建立计算机的整机概念。
二、实验电路
本次实验用到前面四个实验中的所有电路,包括运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等,将几个模块组合成为一台简单计算机。
因此,在基本实验中,这是最复杂的一个实验,也是最能得到收获的一个实验。
在前面的实验中,实验者本身作为“控制器”,完成数据通路的控制。
而在本次实验中,数据通路的控制将由微程序控制器来完成。
CPU 从内存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。
三、实验要求
(1)对机器指令系统组成的简单程序进行译码。
将下表的程序按指令格式手工汇编成十六进制机器代码,此项任务应在预习时完成。
完成表1.
(2)按照下面框图,参考前面实验的电路图完成连线,控制器是控制部件,数据通路(包括上面各模块)是执行部件,时序产生器是时序部件。
连线包括控制台、时序部分、数据通路和微程序控制器之间的连接。
其中,为把操作数传送给通用寄存器组 RF,数据通路上的RS1、RS0、RD1、RD0 应分别与IR3 至IR0 连接,WR1、WR0 也应接到IR1、IR0 上。
开关控制
控制台时序发生器
时序信号
开关控制指示灯信号控制信号时序信号
控制信号
微程序控制器数据通路
指令代码、条件信号
图13 模型计算机连线示意图
(3)将上述任务(1)中的程序机器代码用控制台操作存入内存中,并根据程序的需要,用数码开关SW7—SW0 设置通用寄存器R2、R3 及内存相关单元的数据。
注意:由于设置通用寄存器时会破坏内存单元的数据,因此一般应先设置寄存器的数据,再设置内存数据。
(4)用单拍(DP)方式执行一遍程序,列表记录通用寄存器堆RF 中四个寄存器的数据,以及由STA 指令存入RAM 中的数据(程序结束后从RAM 的相应单元中读出),与理论分析值作对比。
单拍方式执行时注意观察微地址指示灯、IR/DBUS 指示灯、AR2/AR1 指示灯和判断字段指示灯的值,以跟踪程序中取指令和执行指令的详细过程(可观察到每一条微指令)。
(5)以单指(DZ)方式重新执行程序一遍,注意观察 IR/DBUS 指示灯、AR2/AR1
指示灯的值(可观察到每一条机器指令)。
执行结束后,记录 RF 中四个寄存器的数据,以及由 STA 指令存入RAM 中的数据,与理论分析值作对比。
注意:单指方式执行程序时,四个通用寄存器和RAM 中的原始数据与第一遍执行程序的结果有关。
(6)以连续方式(DB、DP、DZ 都设为0)再次执行程序。
这种情况相当于计算机正常运行程序。
由于程序中有停机指令STP,程序执行到该指令时自动停机。
执行结束后,记录 RF 中四个寄存器的数据,以及由STA 指令存入RAM 中的数据,与理论分析值作对比。
同理,程序执行前的原始数据与第二遍执行结果有关。
四、实验步骤和实验结果
(1)对机器指令系统组成的简单程序进行译码。
地址指令机器代码
00H LDA R0,[R2] 58H
01H LDA R1,[R3] 5DH
02H ADD R0,R1 0HH
03H JC +5 95H
04H ND R2,R3 3EH
05H SUB R3,R2 1BH
06H STA R3,[R2] 4BH
07H MUL R0,R1 24H
08H STP 60H
09H JMP [R1] 84H
2.接线
(1)将跳线开关J1短接,时许发生器的输入TJ1接控制存储器的输出TJ。
控制器的输入C接运算器ALU的C。
控制器的输入IR7、IR6、IR5、IR4依次接指令寄存器IR7、IR6、IR5、IR4。
共六条线。
(2)控制器的输出LDIR(CER)、LDPC(LDR4)、PC_ADD、PC_INC、M4、LDIAR、LDAR1(LDAR2)、 AR1_INC、M3、LDER、IAR_BUS#、SW_BUS#、RS_BUS#、ALU_BUS、CEL#、LRW、WRD、LDDR1(LDDR2)、 M1(M2)、S2、S1、S0 依次与数据通路的对应信号连接。
共27 条线。
(3)指令寄存器IR 的输出IR0 接双端口寄存器堆的RD0、WR0,IR1 接RD1、WR1,IR2 接RS0, IR3 接RS1。
共6 条线。
合上电源。
按CLR#按钮,使实验系统处于初始状态。
3、存程序机器代码,设置通用寄存器R2、R3 及内存相关单元的数据。
a.设置通用寄存器R2、R3 的值。
本操作中,我们从00 地址开始存10 个机器代码:58H,5DH,04H,95H,3EH,1BH,4BH, 24H,60H,84H。
在60H 存入24H,用于给R0 置初值;在61H 存入
试验系统处于连续运行试验系统处于KLD工作方
CLR#
式SWCSWBSWA
000011按下复位
b.
请先按照以上两表完成以下功能:
1、00H=>AR1
2、58H=>地址00H
3、5H=>地址01H
4、04H=>地址02H
5、95H=>地址03H
6、3EH=>地址04H
7、1BH=>地址05H
8、4BH=>地址06H
9、24H=>地址07H 10、60H=>地址08H 11、34H=>地址09H 12、60H=>地址AR1 13、24H=>地址60H 14、83H=>地址61H
4、用单排的方式执行一遍程序,列表记录通用寄存器堆RF中四个寄存器的数据。
以集资STR指令存入RAM中的数据(程序结束后从RAM的响应单元中读出),单拍方式执行时注意观察微地址指示灯、1R/DBUS指示灯、AR1/AR2指示灯和判断字段指示灯的值,以更总程序中出指令和执行指令的详细过程(可观察一条微指
5、一旦指令执行程序一遍,注意观察1R/DBUS指示灯、AR1/AR2指示灯的值(可观察一条机器指令)。
执行结束后,记录RF中四个寄存器的数据。
以集资STR 指令存入RAM中的数据,与理论分析值作对比。
注意:单指方式执行程序后,四个通用寄存器和RAM中原始数据余地以便执行结果有关。
6、以连续方式在执行程序。
这种情况相当与计算机正常运行程序。
由于程序中有停机指令STP,程序执行到该指令时自动停机。
执行结束后,记录RF中四个寄存器的数据,以集资STR指令存入RAM中的数据,与理论分析值作对比。
同理,程序执行前的原始数据与第二遍执行有关。
五、实验总结
通过本次试验,我了解了计算机的基本模型,并通过微程序控制它。
同时也掌握了机器指令与微指令的关系,建立起了计算机的整体概念。
基本上完成了实验要求,达到了实验目的。
在实验过程中,接线工作量大,经常因信号线接错而控制出错,影响实验结果。