3.4.3模型及CPU设计方法3
一、组合逻辑控制方式(补充)
总体框架
❶ 输入项:指令IR、状态字PSW、复位、时钟、I/O请求
❷ 输出项: aI, bI, SM, CI, S, CP0-9, EMAR, W, R, ST
输出项是输入项的非线性函数(由控制系统映射)
控制系统包括: (1)时序部件; (2)微命令发生器; (3)二级译码器;
1、时序系统
请详见上个笔记
2、时钟周期(节拍)T
1)时钟周期时间:完成一步操作:
一次从M读出,并经数据通路传送的操作;
或 一次数据通路传送操作;
或 一次向M写入的操作
模型机以访存时间作为一步操作时间。设置一个总线周期的长度等于一个时钟周期,可根据需要扩展。
2)时钟周期数:一个工作周期中的时钟数可变。
数值译码,可产生节拍电位。作为分步操作的时间标志。
3)工作脉冲P
每个时钟周期结束时设置一个脉冲。
例题
3.微命令发生器(了解)
4.二级译码器(了解)
二、微程序控制方式
微程序控制: 由微指令代码(μΙ)预存控制信号,经电路翻译代码后产生控制信号
设计思想:
一条机器指令的执行分为若干步,将每一步操作所需的微命令按照固定格式进行编码,并存储成一条微指令,多条微指令构成一段微程序,这段微程序对应一条机器指令。
机器在执行指令过程中,每一步(时钟周期)取出一条微指令, 经过译码后,产生一组控制信号(微命令),控制各个部件的操作。
控制存储器(Control memory,CM,控存):只读存储器 存储可以经过译码产生控制信号的微程序(经过按照一定规则进行编制)。
微程序控制器设计的基本思想归纳:
(1)时钟周期与微指令周期相同,每个微指令周期执行一条微指令,控制实现一步操作;
(2) 微程序事先存放在控制存储器中, 执行机器指令时再取出, 经译码形成相应的控制信号(微命令)。
(3) 若干微指令组成一段微程序, 解释执行一条机器指令
1.原理、部件与工作过程
→ 微命令由预存储的代码翻译产生
→ 1条机器指令对应多条微指令 代码
(1)时序系统
(2)控制系统的逻辑组成
①控制存储器CM
功能:存放微程序,(CM在CPU内部, 不是主存储器)。
②微指令寄存器uIR
功能:存放现行微指令。
③微地址形成电路
功能:提供两种类型的微地址
微程序入口地址:由机器指令操作码形成。
后续微地址:由微地址字段、现行微地址、运行状态等形成。
④微地址寄存器uAR
功能:存放下一条微指令在CM中的地址(微地址)
⑤微命令译码电路
功能:将微指令进行译码,输出指令所需要的控制信号(微命令)
(3) 微程序工作过程
2. 微指令的编码方式与微地址形成
1.微指令的编码方式
(1) 直接控制法(不译法)
优点:不需译码, 产生微命令的速度快;
缺点: 信息表示的效率太低, 如果一条微指令命令字段有n位, 则只能表示n种微操作。
(2) 最短编码法
对微指令命令字段的所有位(假设n位)进行编码,可产生2n种微操作。
优点:微指令字长最短
缺点:1.译码级数较多, 需要较多的硬件支持
2.译码器一次只能输出一个微操作信号, 所有微操作都只能串行工作, 速度很低。
(实际中很少采用)
(3) 分段直接编译法
一条微指令分为多个微命令字段, 每一字段的不同编码表示不同的微命令, 即微命令由字段编码给出。
优点:1微指令长度比直接控制法短
2. 译码器级数比最短编码法少
3.各字段所表示的微操作可以并行
(4) 分段间接编译法
微命令由本字段编码和其它字段解释共同给出。
2.微地址形成
PS:
不是将所有机器指令所需微操作顺序排列后存入微程序库(CM), 而是将公共操作构成微子程序存入CM, 并在需要执行该操作时, 转入该微子程序、或者形成若干分支。
关于微地址的类型与获得
1.取指令公共入口地址 设计时约定(即硬件设计时设定,0#存储单元)
2.一条机器指令对应的微程序首地址
① 一级功能转移(指令类型) ② 二级功能转移(操作数寻址方式)
3. 后继微指令地址(含顺序、转移、转子执行) ① 增量方式 ② 断定方式
(1) 形成初始地址
1) 取机器指令
所有指令的取指阶段的操作是相同的, 因此将取指所需的所有微操作指令构成一段公共微程序(即微子程序) , 并约定一个公共入口地址(比如从地址0开始)。 取指阶段结束后, 经过指令译码, 再根据指令类型转入不同指令各自对应的微程序段。 如下图所示:
2) 功能转移 (按指令功能转入对应的微程序段)
(2) 后续微地址的形成(增量方式和断定方式)
3、模型机微指令格式
按数据通路各段操作划分字段,同类操作中互斥的微命令放同一字段。(分段直接编译法)
微程序控制方式的优点
(1)用规整的存储逻辑结构代替了不规整的、复杂的硬连接逻辑,结构得到了简化,有利于设计自动化
(2)容易修改和扩展、灵活、通用性强
(3)适合做系列机的控制器
(4)可靠性较高,易于诊断和维护
(5)涉及访存,故速度慢,CPI会变大。
(6)硬件成本高