当C=0;Z=0时候各个指令执行的过程及各微指令的执行情况
DW_instructt Sel_memdata Mem_Write c_z_j_flag lj_instruct Change_c Change_z op_code2 op_code1 op_code0 微指令A4 N_μA3 N_μA2 N_μA1 N_μA0 N_μR0 PC_inc P2 P1 P0 的十六进制(6位) R9 R8 R7 R6 R5 R4 R3 R2 R1 指令 IR[15..12] t2 t1 A15A14 DRWr uAddr [4..0] 开关或指示灯 SD3~SD0 A12~A8 00000 00000 10000 10000 00000 00000 10001 10001 00000 00000 10010 10010 A4 A3 A2 A1 A0 R15 R14 R13 R12 R11 ld_IR R10 复位 ADD DR,SR 0000 INC DR SUB DR,SR 0001 0010 01 10 01 10 01 10 01 10 01 10 01 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000930 000930 038000 038000 000930 000930 039000 039000 000930 000930 03A000 03A000 DEC DR 0011 01 10 01 10 01 10 01 10 01 10 01 10 01 10 01 10 01 10 01 00000 00000 10011 10011 00000 00000 10100 10100 00000 00000 10101 10101 00000 00000 10110 10110 00000 00000 10111 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000930 000930 03B000 03B000 000930 000930 02C000 02C000 000930 000930 02D000 02D000 000930 000930 02E000 02E000 000930 000930 027000 AND DR,SR 0100 OR DR,SR NOT DR 0101 0110 MOV DR,SR 0111 JMP ADR JNC ADR JNZ ADR MVRD DR,DATA LDR DR,SR 1000 1001 1010 1100 1101 10 01 10 01 10 01 10 01 10 01 10 01 10 01 10 01 10 01 10 10111 00000 00000 11000 11000 00000 00000 11001 11001 00000 00000 11010 11010 00000 00000 11100 11100 00000 00000 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 027000 000930 000930 107200 107200 000930 000930 007040 007040 000930 000930 007080 007080 000930 000930 167100 167100 000930 000930 STR SR,DR
1110 01 10 01 10 01 10 11101 11101 00000 00000 11110 11110 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 067000 067000 000930 000930 087000 087000 思考题
比较在实验CPU中组合逻辑控制器和微程序控制器的特点;
答:组合逻辑控制器和微程序控制器,两种控制器各有长处和短处。组合逻辑控制器设计麻烦,结构复杂,一旦设计完成,就不能再修改或扩充,但它的速度快。微程序控制器设计方便,结构简单,修改或扩充都方便,修改一条机器指令的功能,只需重编所对应的微程序;要增加一条机器指令,只需在控制存储器中增加一段微程序,但是,它是通过执行一段微程。具体对比如下:组合逻辑控制器又称硬布线控制器,由逻辑电路构成,完全靠硬件来实现指令的功能。
组合逻辑控制器的基本组成(1)指令寄存器用来存放正在执行的指令。指令分成两部分:操作码和地址码。操作码用来指示指令的操作性质,如加法、减法等;地址码给出本条指令的操作数地址或形成操作数地址的有关信息(这时通过地址形成电路来形成操作数地址)。(2)操作码译码器用:来对指令的操作码进行译码,产生相应的控制电平,完成分析指令的功能。(3)时序电路:用来产生时间标志信号。(4)指令计数器:用来形成下一条要执行的指令的地址。
微程序控制的基本思路微程序控制(简称微码控制)的基本思路是:用微指令产生微操作命令,用若干条微指令组成一段微程序实现一条机器指令的功能(为了加以区别,将前面所讲的指令称为机器指令)。设机器指令M执行时需要三个阶段,每个阶段需要发出如下命令:阶段一发送K1、K8命令,阶段二发送K0、K2、K3、K4命令,阶段三发送K9命令。当将第一条微指令送到微指令寄存器时,微指令寄存器的K1和K8为1,即发出K1和K8命令,该微指令指出下一条微指令地址为00101,从中取出第二条微指令,送到微指令寄存器时将发出K0、K2、K3、K4命令,接下来是取第三条微指令,发K9命令。微程序控制器的组成1)控制存储器(contmlMemory)用来存放各机器指令对应的微程序。(2)微指令的宽度直接决定了微程序控制器的宽度。为了简化控制存储器,可采取一些措施来缩短微指令的宽度。如采用字段译码法一级分段译码。
怎样才能让微程序自己跑起来,不用我们人工一个一个地输入IR指令呢?
答:组合逻辑控制器和微程序控制器,两种控制器各有长处和短处。组合逻辑控制器设计麻烦,结构复杂,一旦设计完成,就不能再
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机组织与结构实验报告 CQUPT(3)在线全文阅读。
相关推荐: