1、基本原理

控制器的核心功能是完成指令的自动执行,而指令的自动执行有赖于各功能部件之间的数据通路的建立,而数据通路的建立,有赖于控制器生成控制信号的序列,所以,从宏观上看,控制器可以看作为一个能够产生固定的时序控制信号的逻辑电路。

这个逻辑电路的输入是指令译码信号,每一条指令都会产生一个译码输出,另一个输入是时钟信号,还有就是指令执行时的一些反馈信号,

输出就是各功能部件所需要的微操作控制信号序列,

控制器架构是什么 控制器结构设计_控制器架构是什么

 

 

2、单总线结构CPU

控制器架构是什么 控制器结构设计_控制器架构是什么_02

 

 

3、单总线结构CPU指令周期

控制器架构是什么 控制器结构设计_机器周期_03

 

 

在设计硬布线控制器的时候有两种思路,第一种是所有的指令执行可能是定长的指令周期,在这种方法里,我们应该取所有指令里面最慢的那条指令进行同步,在这里因为load指令所需要的时间最长,所以我们用load指令的8个时钟周期进行同步,它需要两个机器周期分别完成取指令和执行指令(这里假设一个机器周期为4个时钟周期)

第二种方法就是用边长指令周期的方法,更加灵活。

首先来看定长指令周期的设计过程:

要设计定长指令周期,我们需要首先构建它的时序产生器,也就是生成传统的三级时序的这样一个时序产生器,由三级时序产生器里面非常重要的一个基础的时钟,就是节拍脉冲,由节拍脉冲生成具体的状态周期电位,状态周期电位包括取指令周期单位和执行指令周期单位,这个电位信号标识对应当前指令处于哪一个周期,我们还要有节拍电位,

三级时序指的就是,节拍脉冲、状态周期电位、节拍电位。

控制器架构是什么 控制器结构设计_状态机_04

 

 

5、时序产生器状态机

控制器架构是什么 控制器结构设计_状态机_05

 

 

6、硬布线控制器基本架构

控制器架构是什么 控制器结构设计_指令周期_06

 

7、单总线cpu控制信号生成

控制器架构是什么 控制器结构设计_状态机_07

 

 

 

8、固定指令周期硬布线控制器设计过程

1、设计三级时序产生器:所有指令固定机器周期数,节拍数

2、列出所有机器指令的指令周期流程图,明确每个节拍的控制信号,

3、找出产生同一微操作控制信号的条件

4、写处各微操作控制信号的布尔表达式

控制器架构是什么 控制器结构设计_控制器架构是什么_08

 

 

5、化简各表达式

6、利用组合逻辑电路实现。

 

变长指令周期的硬布线控制器设计

控制器架构是什么 控制器结构设计_指令周期_09

 

 

在指令执行过程中,状态的切换除了与时钟有关系以外,还跟指令的译码信号有关系,我们将所有指令在执行的不同阶段,都用一个状态唯一的标识,比如上表中,将指令分节拍表示成了16个状态来表示,我们用一个四位的状态机来表示指令执行的不同的状态,这样的话,指令执行过程中,所有的信号只与对应的状态有关,所以有了状态机以后,对应的最终的控制信号,只与状态机的现态有关。

2、现代时序系统

控制器架构是什么 控制器结构设计_状态机_10

 

 

3、指令执行状态转换图

控制器架构是什么 控制器结构设计_指令周期_11

 

 

4、有限状态真值表

控制器架构是什么 控制器结构设计_机器周期_12

 

 

5、可变周期硬布线控制器设计步骤

1、列出所有机器指令的指令周期流程图,明确每个节拍的控制信号

2、绘制指令执行状态转换图

3、根据状态转换图构建状态机真值表,实现有限状态机组合逻辑

4、实现控制器组合逻辑电路

控制器架构是什么 控制器结构设计_机器周期_13

 

 

6、传统时序与现代时序对比

控制器架构是什么 控制器结构设计_控制器架构是什么_14