1、第六章 中央处理器6.3控制器的设计 控制器是计算机的核心部件,能够产生一系列的控制信号,控制其他单元部件工作,完成指令的功能。根据控制信号产生的方式不同,控制器可分为组合逻辑控制器、阵列逻辑控制器和微程序控制器。6.3.1组合逻辑控制器组合逻辑控制器 组合逻辑控制器的基本原理是依据指令代码、时序信号和各种状态信息,采用组合逻辑门电路产生控制信号。控制信号是时钟信号和指令信号的逻辑组合。这种控制器完全是门电路和触发器构成的复杂组合电路,靠硬件实现指令功能。组合逻辑控制器设计时,一般根据指令执行周期流程,编制指令的操作时间表和控制信号表,然后进行逻辑组合,设计出各个控制信号的逻辑线路,连接成一个
2、逻辑网络。6.3.1组合逻辑控制器组合逻辑控制器 组合逻辑控制器的结构如图6-2所示。6.3.1组合逻辑控制器组合逻辑控制器 时钟和环形脉冲发生器,用于产生时序节拍信号Ti,每一步只有一条信号线有效。指令寄存器IR的指令送入指令译码部件,进行译码,生成表示不同指令的信号INSi,每一条表示一种指令。在简单计算机中,任一时刻只执行一条指令,所以在该时刻,译码器输出的信号也只有一条有效。编码器由大量的门电路构成,输出的控制信号是输入的节拍信号Ti、指令信号INSi的逻辑函数。编码器输出端即计算机中的各种控制信号Ci。6.3.1组合逻辑控制器组合逻辑控制器 组合逻辑控制器的设计步骤如下:(1)根据每
3、条指令的功能,确定每条指令的执行步骤。(2)列出指令各个机器周期所需要的控制信号(3)写出每个控制信号的逻辑表达式(4)根据逻辑表达式画出逻辑电路。6.3.1组合逻辑控制器组合逻辑控制器 例6-7图6-1所示结构计算机,若只有ADD R1,R2和MOV R1,R2两条指令。写出该机控制信号的逻辑表达式。6.3.1组合逻辑控制器组合逻辑控制器 解:(1)根据指令的功能,写出每个机器周期所需的控制信号。ADD R1,R2指令每个机器周期的控制信号步骤为:T1:PCout,MARin,MARout,RM,MDRin T2:MDRout,IRin,PC+1 T3:R1out,Yin T4:R2out,
4、Yout,+,Zin T5:Zout,R1inMOV R1,R2指令每个机器周期的控制信号步骤为:T1:PCout,MARin,MARout,RM,MDRin T2:MDRout,IRin,PC+1 T3:R2out,R1in6.3.1组合逻辑控制器组合逻辑控制器(2)根据指令流程和时序,写出每个控制信号的逻辑表达式。设指令ADD R1,R2经指令译码后,在INS1上产生有效信号。设MOV R2,R1指令经指令译码后,在INS2上产生有效信号。下面画出编码器输入和输出的真值表,如表6-1。6.3.1组合逻辑控制器组合逻辑控制器6.3.1组合逻辑控制器组合逻辑控制器 根据真值表,可以写出各控制信号的逻辑表达式。如 PCout=INS1T1+INS2T1 R2out=INS1T4+INS2T3 R1in=INS1T5+INS2T3 6.3.1组合逻辑控制器组合逻辑控制器(3)对逻辑表达式进行化简和优化后,可以设计出相应的逻辑电路。如PCout信号和R2out的逻辑电路图如图6-3。