5.4.3控制器设计 微程序控制器 微指令的设计

1.微指令的格式

相容性微命令:可以并行完成的微命令。
互斥性微命令:不允许并行完成的微命令。

1.1水平型微指令

一条微指令能定义多个可并行的微命令。

1.1.1基本格式

在这里插入图片描述

优点:微程序短,执行速度快;
缺点:微指令长,编写微程序较麻烦。

1.2垂直型微指令

一条微指令只能定义一个微命令,由微操作码字段规定具体功能

1.2.1基本格式

在这里插入图片描述
优点:微指令短、简单、规整,便于编写微程序;
缺点:微程序长,执行速度慢,工作效率低。

1.3混合型微指令

在垂直型的基础上增加一些不太复杂的并行操作。

优点:微指令较短,仍便于编写;微程序也不长,执行速度加快。

2.微指令的编码方式

2.1水平型微指令

2.1.1直接编码(直接控制)方式

在微指令的操作控制字段中,每一位代表一个微操作命令
某位为“1”表示该控制信号有效
在这里插入图片描述
比如我们想进行取址操作,将(PC)→MAR和1→R的操作控制置为1就行
优点:简单、直观,执行速度快,操作并行性好。
缺点:微指令字长过长,n个微命令就要求微指令的操作字段有n位,造成控存容量极大。

2.1.2字段直接编码方式

将微指令的控制字段分成若干“段”,每段经译码后发出控制信号微命令字段分段的原则:
①互斥性微命令分在同一段内,相容性微命令分在不同段内。
②每个小段中包含的信息位不能太多,否则将增加译码线路的复杂性和译码时间。
一般每个小段还要留出一个状态,表示本字段不发出任何微命令。因此,当某字段的长度为3位时,最多只能表示7个互斥的微命令,通常用000表示不操作。
在这里插入图片描述
优点:可以缩短微指令字长 。
缺点:要通过译码电路后再发出微命令,因此比直接编码方式慢 。

2.1.2.1例子

某计算机的控制器采用微程序控制方式,微指令中的操作控制字段采用字段直接编码法,共有33个微命令,构成5个互斥类,分别包含7、3、12、5和6个微命令,则操作控制字段至少有多少位?

第1个互斥类有7个微命令,要留出1个状态表示不操作,所以需要表示8种不同的状态,故需要3个二进制位。以此类推,后面4个互斥类各需要表示4、13、6、7种不同的状态,分别对应2、4、3、3个二进制位。故操作控制字段的总位数为3+2+4+3+3 = 15 位

若采用直接编码方式,则控制字段需要33位。

2.1.3字段间接编码方式

一个字段的某些微命令需由另一个字段中的某些微命令来解释,由于不是靠字段直接译码发出的微命令,故称为字段间接编码,又称隐式编码。
在这里插入图片描述
优点:可进一步缩短微指令字长。
缺点:削弱了微指令的并行控制能力,故通常作为字段直接编码方式的一种辅助手段。

3.微指令的地址形成方式

3.1 微指令的下地址字段指出

微指令格式中设置一个下地址字段,由微指令的下地址字段直接指出后继微指令的地址,这种方式又称为断定方式。

3.1.1例题

在这里插入图片描述

3.2根据机器指令的操作码形成

当机器指令取至指令寄存器后,微指令的地址由操作码经微地址形成部件形成。

3.3增量计数器法

类似 ( CMAR ) + 1→ CMAR

3.4分支转移

转移方式:指明判别条件;转移地址:指明转移成功后的去向。
在这里插入图片描述

3.5通过测试网络

在这里插入图片描述
即5.4.2中的顺序逻辑

3.6 由硬件产生微程序入口地址

第一条微指令地址 由专门硬件产生(用专门的硬件记录取指周期微程序首地址)
中断周期由硬件产生 中断周期微程序首地址(用专门的硬件记录)

  • 10
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值