控制单元习题存档

Posted on 2022-05-30 22:04  Capterlliar  阅读(74)  评论(0编辑  收藏  举报

教材:计算机组成原理(第二版) 唐朔飞编著  高等教育出版社

第九章  控制单元的功能

0.缩写

PC:程序计数器,当前欲执行指令地址

M:主存

MAR:主存地址寄存器

MDR:主存数据寄存器

IR:指令寄存器,正在执行指的令

ALU:算术逻辑运算单元

CU:控制单元

SP:堆栈指针

寄存器一般加括号

Ad(IR):IR中的地址码

OP(IR):IR中的操作码

1.非总线微操作

取指周期:

PC->MAR  

1->R  

M(MAR)->MDR  

MDR->IR

OP(IR)->CU

(PC)+1->PC

间址周期:

Ad(IR)->MAR

1->R

M(MAR)->MDR

MDR->Ad(IR)

 

执行周期:

LDA(取数)

Ad(IR)->MAR

1->R

M(MAR)->MDR

MDR->?

 

STA(存数)

Ad(IR)->MAR

1->W

?->MDR

MDR->M(MAR)

 

JMP X

Ad(IR)->PC

带总线的过总线的时候加个bus,加减操作注意ALU连的位置,算之前先给它送过去。
间址时可能会有@R1,@mem,再多寻几次址就好。

2.多级时序系统

指令周期->机器周期->时钟周期

例:主频8MHz,每个机器周期平均包含2个时钟周期,每条指令平均有2.5个机器周期。

求:平均指令执行速度为多少MIPS

解:时钟周期:1/8=0.125μs,机器周期:0.125*2=0.25μs,指令周期:0.25*2.5=0.625μs,平均指令执行速度:1/0.625=1.6MIPS

第十章  控制单元的设计

1.微操作的节拍安排

1)先后顺序不可改变

2)对象不同的放一个节拍

3)占时间不长的也可以塞一个节拍

取指周期:

T0:PC->MAR,1->R  

T1:M(MAR)->MDR,(PC)+1->PC 

T2:MDR->IR,OP(IR)->CU

间址周期:

T0:Ad(IR)->MAR,1->R

T1:M(MAR)->MDR

T2:MDR->Ad(IR)

 

执行周期:

LDA(取数)

T0:Ad(IR)->MAR,1->R

T1:M(MAR)->MDR

T2:MDR->?

 

STA(存数)

T0:Ad(IR)->MAR,1->W

T1:?->MDR

T2:MDR->M(MAR)

 

JMP X

 

 

T0:Ad(IR)->PC

中断操作

T0:SP->MAR,1->R

T1:M(MAR)->MDR

T2:MDR->PC,(SP)+1->SP

 

 

     

 2.微程序设计

计组老师三连:诸葛孔明,锦囊妙计,探囊取物

微程序->微指令->微操作

若某机有35条机器指令,则对应38个微程序(取指、间址、中断)

微指令格式:操作控制字段+下地址(下一个指令的地址)

微指令编码:

1)直接编码:一位对应一个操作

2)字段直接编码:分成好多段,每一段编码类似于001-111(000表示什么都不干),对应一组互斥的微操作

3)字段间接编码:不是重点

微程序设计步骤:

1)微操作节拍安排

2)微指令编码

微程序控制器节拍安排:每个后面加Ad(CMDR)->CMAR,取址最后为OP(IR)->微地址形成部件->CMAR

判断用几条微命令:互斥的能写几条

例1:直接编码,22个微命令,5个互斥外部条件,128×32位控制器

解:5个外部条件花费3位,32-22-3=7,下地址为7位。

例2:5个相斥类微命令组,分别包含4、7、8、12、24个微命令,可判定外部条件2个,微指令字长30位。

解:4  7  8  12  24  2

       3  3  4   4   5         2  剩下9

       存储器容量30×512(29)