第四节 微程序控制器原理
3.4.1 微程序控制的基本思想
1,若干微命令编制成一条微指令,控制实现一步操作;
2,若干微指令组成一段微程序,解释执行一条机器指令;
3,微程序事先存放在控制存储器中,执行机器指令时再取出。
若干微命令编制成 一条微指令,控制实现一步操作 ;
若干微指令组成 一段微程序,解释执行 一条机器指令 ;
3.4.2 组成原理
1.主要部件
( 1)控制存储器 CM
功能:
微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
存放微程序 。
CM属于 CPU,不属于主存储器。
( 2)微指令寄存器 μIR
功能:
微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
存放现行微指令 。
微命令字段,提供一步操作所需的微命令。
微地址字段,指明后续微地址的形成方式。提供微地址的给定部分。
(微操作控制字段 )
(顺序控制字段 )
( 3)微地址形成电路功能:
微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
提供两类微地址 。
微程序入口地址,由机器指令 操作码 形成。
后续微地址,由 微地址字段,现行微地址,运行状态 等形成。
2.工作过程
( 1)取机器指令
CM 取指 微指令 μIR 微命令字段 译码器 微命令 主存机器指令IR
微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
取指微指令
( 2)转微程序入口
IR 操作码 微地址形成电路 入口 μAR
微命令字段
CM首条微指令
( 3)执行首条微指令
μIR
μIR 译码器微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
取指微指令微命令 操作部件
( 4)取后续微指令微地址字段现行微地址运行状态微地址形成电路后续微地址 μAR
CM后续微指令μIR
微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
( 5)执行后续微指令同( 3)
微地址形成电路
IR
PSW
PC 微地址寄存器
μAR 控制存储器 CM
译码器微命令序列微命令字段 微地址字段 μIR
( 6)返回微程序执行完,返回 CM (存放 取指微指令 的固定单元 )。
3.4.3 微指令格式和编码方法
1.格式分类
( 1)垂直型微指令优点:
一条微指令定义并执行几种并行的基本操作。
微指令短、简单、规整,便于编写微程序。
缺点,微程序长,执行速度慢;工作效率低。
( 2)水平型微指令一条微指令定义并执行一种基本操作。
优点:
缺点,微指令长,编写微程序较麻烦。
微程序短,执行速度快。
( 3)混合型微指令微指令不长,便于编写;微程序不长,执行速度加快。
在垂直型的基础上增加一些不太复杂的并行操作。
例,长城 203微指令
AI BI ZO AOP MOP KK ST
3 3 3 3 4 4 4
运算器输入控制运算器输出控制操作类型控制访 M、
I/O
控制常数 辅助操作
2.编码方法
( 1)直接控制法例,某微指令微命令按位给出。
不需译码,产生微命令的速度快;
信息的表示效率低。
C0 R W
1 1 1
C0= 0 进位初值为 0
1 进位初值为 1 R=
0 不读
1 读
0 不写
1 写W=
微指令中通常只有个别位采用直接控制法。
( 2)分段直接编译法例,对加法器输入端进行控制。
微命令由字段编码直接给出。
000 不发命令微指令中设置 AI字段,控制加法器的输入选择。
加法器
A B
R,C
D,E
R,C
D,FAI
3
010 C A
100 F B…
001 R A
011 D B?
微命令分组原则:
同类操作中 互斥 的微命令放同一字段。
不能同时出现操作唯一;
加法器 A输入端的控制命令放
AI字段,B输入端的控制命令放 BI字段。
加法器
A B
R,C
D,E
R,C
D,F
000 不发命令
010 C A
100 E A
001 R A
011 D A
AI BI
3 3
000 不发命令
010 C B
100 F B
001 R B
011 D B
AI,BI:
一条微指令能同时提供若干微命令,便于组织各种操作。
编码较简单;
( 3)分段间接编译法例,
微命令由本字段编码和其他字段解释共同给出。
C =C A
1) 设置解释位或解释字段解释位
1 A为某类命令
0 A为常数
2) 分类编译按功能类型将微指令分类,分别安排各类微指令格式和字段编码,并设置区分标志。
( 4)其他编码方法
1) 微指令译码与机器指令译码复合控制例,机器指令寄存器号 寄存器传 A
微指令译码器 译码器
001 R A
R1
A门例,
2) 微地址参与解释
004
微地址指令操作码
1.微程序入口地址的形成微指令取指标志变址标志011
3.4.4 微地址形成方式微程序入口功能转移
( 1)一级功能转移各操作码的位置、位数固定,一次转换成功。
入口地址 =页号,操作码例,
机器指令 1
0F(8位 )
入口地址 =000FH
CM
机器指令 2
10(8位 )
入口地址 =0010H
000F
0010
无条件转 微地址 1
微地址 1
微程序 1
无条件转 微地址 2
微地址 2 微程序 2
功能转移功能转移
0页
( 2)二级功能转移各类指令操作码的位置、位数不固定,
分类转:
需两次转换。
指令类型标志 区分指令类型功能转,指令操作码 区分操作类型
( 3)用可编程逻辑阵列 PLA实现功能转移入口地址 1
PLA
IR
入口地址 2
2.后续微地址的形成
( 1)增量方式以顺序执行为主,辅以各种常规转移方式。
顺序,现行微地址 +1。
跳步,现行微地址 +2。
无条件转移,现行微指令给出转移微地址。
CM
A
A+1
A+2
B
B
条件转移,现行微指令给出转移微地址和转移条件。
转移条件 C
C (条件满足 )
(条件不满足 )
转微子程序,现行微指令给出微子程序入口。
D
D 微子程序返回微主程序,现行微指令给出寄存器号。
A+1R
R
微指令给定后续微地址高位部分
( 2)断定方式由直接给定和测试断定相结合形成微地址。
给定部分 断定条件指明后续微地址低位部分的形成方式例,微指令 D(给定) A(条件)
2位位数可变微地址 10位,约定:
A=
01
10
微地址低 4位为操作码,D给定高 位;
微地址低 3位为机器指令目的寻址方式微地址低 3位为机器指令源寻址方式
6
7
11
编码,D给定高 位;
编码,D给定高 位。7
16路分支
8路分支
8路分支同步控制,用统一微指令周期控制各条微指令执行。
P
3.4.5 微程序时序安排微指令周期微指令打入 μIR
二级时序:
控制数据通路操作结果打入目的地,
读取后续微指令后续微地址打入 μAR
时钟周期
3.4.6 微程序控制方式优缺点及应用
1.优点
( 1)设计规整,设计效率高;
( 2)易于修改、扩展指令系统功能;
( 3)结构规整、简洁,可靠性高;
( 4)性价比高。
2.缺点
( 1)速度慢访存频繁转移较多
( 2)执行效率不高
3.应用范围用于速度要求不高、功能较复杂的机器中。
特别适用于系列机未充分发挥数据通路本身具有的并行能力