取指周期:
PC-->MAR;现行指令地址--->MRA 1--->R;命令存储器读
M(MAR)--->MDR;现行指令从存储器中读至MDR MDR--->IR;现行指令--->IR
OP(IR)--->CU;指令的操作码--->CU译码 (PC)+1--->PC;形成下一条指令的地址 中断周期:
T0: 0--->MAR; 硬件关中断 T1: PC-->MDR 1--->W
T2: MDR--->M(MAR) 向量地址--->PC 间址周期:
T0: Ad(IR)--->MAR 1--->R T1: M(MAR)-->MDR T2: MDR--->Ad(IR)
3、请描述单重和多重中断的服务流程。
单中断指令设置在最后“中断返回”之前,意味着在整个中断服务处理过程中,不能再响应其他中断源的请求。
多重中断:开中断指令设置在“保护现场”之后,意味着保护现场之后,若有更高级别的中断请求,CPU也可以响应,即再次中断现行的服务程序,转至新的中断服务程序。 两者的不同在于“开中断”的设置时间不同 4、请画出指令周期的流程图。
一个完整的指令周期应包括取指、间址、执行和中断四个子周期,由于间址周期和中断周期不一定包含在每个指令周期内,故图用菱形框判断一个完整的指令周期应包括取指、间址、执行和中断四个子周期,由于间址周期和中断周期不一定包含在每个指令周期内,故图用菱形框判断
5、请写出下图取指周期和执行周期的微操作和控制信号。作业10.22
三、计算题
1、某机采用微程序控制方式,微指令字长24位,采用水平型字段直接编码控制方式和断定方式(下一条微指令的地址由下址字段提供)。共有微命令30个,构成4个互斥类,各包含5个、8个、14个和3个微命令,外部条件共3个。 请 1)控制存储器的容量应该为?
2)设计出微指令的具体格式? (参看例题10.5和10.6) 解:(1)控制存储器的容量为:
2^(24-3-4-4-2-3) x 24位=2^8 x 24位=256 x 24位 (2)微指令的格式如下:
2、假设指令流水线分取指(FI)、译码(ID)、执行(EX)、写回(WR)4个过程。共有10条指令连续输入此流水线。 1)画出指令的周期流程。 2)画出非流水时空图。 3)画出流水线时空图。
4)假设时钟周期为100ns,求流水线的实际吞吐率。 5)求该流水处理器的加速比。(参看例题8.1)
3、在一个8级中断系统中,硬件中断响应从高到低的顺序为1→2→3→4→5→6→7→8,设置中断屏蔽寄存器后,中断的处理顺序变为1→5→8→3→2→4→6→7。 1)应该如何设置屏蔽码?(参看作业8.25或者8.26)
2)如果CPU在执行一个应用程序中有5、6、7三级中断同时到达,中断请求8在中断6没有处理完以前到达,在处理8的时候请求2又到达CPU,试画出CPU响应这些中断的顺序示意图。(参看作业8.27和8.28) 3、习题8.11
今有四条流水线,分别完成取指(IF)、译码并取数(ID)、执行(EX)、写结果(WR)4个步骤。假设完成各步骤操作时间依次为90ns,90ns,60ns,45ns。 (1)流水线的时钟周期应取何值?
流水操作周期为max(90,90,60,45)=90ns
(2)若相邻的指令发生了数据相关,那么第2条指令安排推迟多少时间才能不发生错误?答:若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么在第1条指令“送结果”步骤完成后,第2条指令的“取数”步骤才能开始,也就是说,第2条指令要推迟两个操作周期,即180ns才能进行。
(3)若相邻的两指令发生了数据相关,为了不推迟第2条指令的执行,可采取什么措施?
答:如果在硬件设计上加以改进,采用定向传送的技术,则只要第1条指令完成“运算”的步骤,第2条指令就可以“取数”了,因此至少需推迟90ns。
4、设某计算机的CPU主频为8MHZ,每个机器周期平均含2个时钟周期,每条指令的指令周期平均有2.5个机器周期,设问该机的平均指令执行周期为多少MIPS?若CPU主频不变,但每个机器周期平均含4个时钟周期,每条指令的指令周期平均有5个机器周期,则该机的平均指令执行速度又是MIPS?
解:根据CPU主频先求出时钟周期为:1/8MHz=0.125x10-6=125ns
由每个机器周期平均含2个时钟周期,得出:机器周期=125nsx2=250ns 由每条指令的指令周期平均有2.5个机器周期, 得出:平均指令周期=250nsx2.5=625ns=0.625μs 则该机的平均指令执行周期为:1/0.625μs=1.6MIPS
当CPU主频不变时,改变参数后:机器周期=125nsx4=500ns=0.5μs 平均指令周期=0.5μsx5=2.5μs 平均指令执行速度=1/2.5μs=0.4MIPS
所以得出的结论是:当主频相同的两个机器,执行速度不一定一样。
指令流水线
1、机器指令
2、操作数类型和操作类型
3、寻址方式 说明:有效地址的概念、数据寻址和指令寻址、常见的寻址方式 4、指令格式 说明:指令的基本格式、定长操作码指令格式、扩展操作码指令格式。RISC 和CISC
一、 选择题
1.一条指令中包含的信息有( )
A.操作码、控制码; B.操作码、向量地址; C.操作码、信息码。 D.操作码、地址码。 2、指令采用不同寻址方式的目的是( )
A、可减低编程难度 B、可降低指令的译码难度 C、缩短指令字长,扩大寻址空间,提高编程灵活性 D、以上均不正确
3、 一地址指令中,为完成两个数的算术运算,除地址码指明的一个操作数外,另一个数常采用()。
A、直接寻址 B、立即寻址 C、隐含寻址 D、以上都有可能 4、二地址指令中,操作数的物理位置可以安排在( )
Ⅰ两个主存单元 Ⅱ 两个寄存器 Ⅲ 一个主存单元和一个寄存器
A、Ⅰ和Ⅱ B、Ⅱ和Ⅲ C、Ⅰ和Ⅲ D、Ⅰ和Ⅱ及Ⅲ 5、四地址指令OPA1A2A3的功能为(A1)OP(A2)→(A3),且A4给出下一条指令地址,假设A1、A2、A3、A4都为主存储器地址,则完成下述指令需要访存()次。
A、2 B、3 C、4 D、5
6、某指令系统有200条指令,对操作码采用固定长度二进制编码时,最少需要()位。 A、4 B、8 C、16 D、32
7、某寄存器采用16位单字长指令,采用定长操作码,地址码为5位,现定义60条二地址指令,则单地址指令最多有()条。
A、4 B、32 C、128 D、256 8、指令寄存器的位数取决于( )。
A.存储器的容量; B.指令字长; C.机器字长; D.存储字长。 9、有效地址是指()
A、操作数的真实地址 B、指令地址码字段给出的地址 C、程序计数器 D、以上均不正确
10、直接寻址的无条件转移指令的功能是将指令中的地址码送人( ) A、程序计数器(PC) B、累加器(ACC) C、指令寄存器(IR) D、地址寄存器(MAR) 11、操作数采用直接寻址,操作数的位置( ) A、通用寄存器 B、堆栈 C、主存单元 D、指令本身 12、执行操作的数据不可能来自()
A、寄存器 B、指令本身 C、控制存储器 D、存储器 13、寄存器间接寻址方式中,操作数在()中。 A、通用寄存器 B、堆栈 C、主存单元 D、指令本身
14、在指令的相对寻址方式中,其相对的基准地址是()
A、基准寄存器 B、変址寄存器 C、堆栈指示器 D、程序计数器 15、基址寻址方式中,操作数的有效地址是()
A、基址寄存器内容加上形式地址(位移量) B、程序计数器内容加上形式地址; C、变址寄存器内容加上形式地址 D、寄存器内容加上形式地址。 16、设変址寄存器为X,形式地址为D,则指令中操作数的地址为() A、EA=(X)+D B、EA=(X)+(D) C、EA=X+D D、EA=((X)+D)
17、直接、间接、立即3种寻址方式中指令的执行速度,由快到慢的排序是() A、直接、间接、立即 B、直接、立即、间接 C、立即、直接、间接 D、立即、间接、直接 18、下列不同类型的指令中,执行时间最长的是( ) A、RR型 B、SS型 C、RS型 D、不能确定,需要有指令格式决定 19.程序控制类指令的功能是( )。 A、进行主存和CPU 之间的数据传送 B、进行CPU 和设备之间的数据传送; C、改变程序执行的顺序 D、一定是自动+1。 20.变址寻址和基址寻址的有效地址形成方式类似,但是()。 A.变址寄存器的内容在程序执行过程中是不可变的;
B.在程序执行过程中,变址寄存器和基址寄存器和内容都可变的;
C.在程序执行过程中,基址寄存器的内容不可变,变址寄存器中的内容可变; D.变址寄存器的内容在程序执行过程中是可变的。 20、下列关于CISC/RISC的叙述中,错误的是() A、RISC机器指令比CISC机器指令简单 B、RISC中通用寄存器比CISC多 C、RISC的寻址方式比CISC少
D、CISC比RISC的机器能更好的支持高级语言。
21、假设相对寻址的转移指令占两个字节,第一个字节为操作码,第二个字节为位移量(用补码表示),每当CPU从存储器取出一个字节是,即自动完成(PC)+1→PC。若当前指令地址为3008H,要求转移到300FH,则该转移指令第二个字节的内容应为();若当前指令