(截图来自MOOC平台华中科技大学计算机组成原理课程)

微指令的设计应当要遵循如下的原则。

根据以上原则,我们发现水平微指令的长度太长,控存容量大,如何去压缩微指令的长度?

途中给出了三条解决思路,我们一一分析。

1.编码表示

在微指令的操作控制字段,有很多字位是相斥的,即在给出一个控制信号的同时,其他的控制信号都无法给出。如上图中的前七个out输出控制信号,以及最后三个运算控制信号。

呢么我们可以考虑将这些互斥的命令用编码方式表示,7个out字位可以用一个3位编码表示,一共8种状态,剩下的1个状态表示不给出任何控制信号。3个运算字位同样可以用2位编码表示。

这样一条微指令即可以缩短5位。

2.去掉下址字段

将下址字段去掉,改用一个自加器,每当前一条指令执行完,地址就+1,顺序执行下一条指令。

3.垂直型微指令

由水平型微指令的编码表可可以看到,表中置1的位是很少的,这说明水平型微指令的编码效率是很低的。

根据单总线CPU架构的数据通路,我们可以将其分为以下三类:

寄存器传输,即操作数由源寄存器到目标寄存器,而寄存器的个数为8,可用3位编码表示,将这类指令命名为MOV;

运算类型,如INC类型是没有操作数的,而ADD只需要给出源寄存器的编号即可;

访存类型,给出是读还是写命令即可,用Mem表示。

除上所述,因为没有了判别字,我们需要Branch指令来表示顺序控制。

LOAD指令的垂直型微指令格式如下:

原本T1节拍中的一条水平微指令,需要用两条垂直微指令来实现。

MOV AR,PC 将(PC)送入AR;

MOV X,PC 将(PC)送入X。

T2节拍,通过LOAD微指令去读内存。

T3节拍,将(Z)送入PC。

T4节拍,将(DR)送入IR,同时执行跳转指令Branch P1,即P1置1。

…………

如此我们发现,垂直型微指令在使用时所需的数量大于水平型微指令,但相较于各种情况而言,整体所需要的控存还是比较小的。

垂直型微指令的问题在于原本可以同时给出的控制信号无法并行给出,并且还需要增加额外的逻辑。虽然其节省了容量,但在硬件大幅度降价的今天,垂直型微指令已经被淘汰。

(创作不易,请点赞收藏~)

计算机组成原理——微指令格式相关推荐

  1. 编写微指令 计算机组成,计算机组成原理微指令实验报告.doc

    西北工业大学<计算机组成原理实验报告> 计算机组成原理实验报告 时间: 2012.11.26 地点: 实验大楼4楼北 成绩: 班级: xxxxxx 学号: xxxxxx 姓名: xx 班级 ...

  2. 编写微指令 计算机组成,计算机组成原理微指令实验报告

    计算机组成原理实验报告 时间: 2012.11.26 地点: 实验大楼4楼北 成绩: 班级: 学号: 姓名:班级: xxxxxx 学号: xxxxxxx 姓名: xx 题目: 微程序控制器实验 一. ...

  3. 计算机组成原理 微指令编码_计算机组成原理(指令)

    图片来源于网络 大家有没有想过这样的问题!计算机是如何运行的?为什么它能执行我们需要的操作?其实这和指令息息相关. 计算机的工作的过程也是指令执行的过程 操作系统是程序的合集 程序由一组指令组成: 指 ...

  4. 计算机组成与原理如何书写DEC微指令,计算机组成原理课程设计16位机微程序控制器指令系统设计与实现.doc...

    计算机组成原理课程设计16位机微程序控制器指令系统设计与实现 一.设计题目 16位机微程序控制器指令系统的设计与实现 二.设计目的 通过看懂教学计算机组合逻辑控制器中已经设计好并正常运行的几条基本指令 ...

  5. 计算机组成原理 或的微指令,微指令

    去年带了一次了,但是因为是网上授课,印象不深 今年回归线下面对面了 随手记录一下 首先要出题,每4个人一个任务书 任务书里有6个指令 IN ADD LDA STA CLR COM JMO SUB HA ...

  6. 考前自学系列·计算机组成原理·微程序微指令微命令微操作

    你要知道这些 一.术语 程序:计算机能识别和运行的指令 指令:指挥计算机工作的指示和命令(编程语言编写的语句) 机器指令:指令编译后的结果(编程语言转换为机器语言) 微指令:机器指令根据一个个操作细分 ...

  7. 简述机器指令与微指令之间的关系_《计算机组成原理》试卷B与参考答案

    考 生 信 息 栏 系 专 业 级 班 级 姓 名 学 号 装 订 线 XXXX 学院试卷 2010 - 2011 学年 第 2 学期 课程名称 计算机组成原理 试卷 卷别 A B  专业 级 班级 ...

  8. 计算机组成原理实验写出下列微指令编码,计算机组成原理实验三.doc

    计算机组成原理实验三.doc (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 上海大学 计算机学院评分<计算机组成原理实验> ...

  9. 计算机组成原理实验所用的指令,计算机组成原理实验报告-控制器及微指令系统的操作与运用...

    计算机组成原理实验报告-控制器及微指令系统的操作与运用 (13页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.9 积分 成绩:实 验 报 告课程名称 ...

最新文章

  1. 两种高性能I/O设计模式(Reactor/Proactor)的比较
  2. QlikSense移动端使用攻略
  3. sql datetime比较大小_SQL做题小技巧
  4. 单选按钮步骤流程向导 js_创建令人愉快的按钮的6个步骤
  5. lunix 安装python3
  6. 求java简单计算器源代码_java简单计算器源代码
  7. Strus2第一次课:dom4j操作xml
  8. threadlocal的set()方法中的内存回收
  9. mysql binlog更新记录缺失_记一次mysql数据库binlog丢失引起的故障
  10. 天梯—谁先倒(C语言)
  11. bzoj 3625(CF 438E)The Child and Binary Tree——多项式开方
  12. 关于spring+springMVC+myBatis的一些基础配置以及整合
  13. 对服务器端接口的调用,自己手写了一个脚本,但返回信息的中文总是乱码(这个方法很不错,重要的是解决思路,寻找手写脚本与录制脚本 生成目录文件的区别)...
  14. DSP控制的电力线通信模拟前端接口设计
  15. input onchange事件不触发 oninput onpropertychange onchange 实时监听
  16. Libfetion在Ubuntu下的中文输出了局
  17. 访问V$LOCK视图oracle11g出现性能问题
  18. PS带框的对号怎么打
  19. Flink 1.12.2 源码浅析 : Transformation 浅析
  20. 搭建直播平台源码用到的云技术到底是什么

热门文章

  1. C# 导出excel文件的6种办法
  2. C语言的取反操作(15)
  3. 捡到的苹果6plus怎么解id要多少钱
  4. Linux数据库管理——day10——分库分表、数据库硬件优化
  5. 【阅读】Variational Adversarial Active Learning
  6. 【镜像取证篇】DD和E01镜像格式区别(简)
  7. EtherNet IP以太网IO接口工业读写器|读卡器CK-FR12-E01性能与PLC组网攻略
  8. Windows/Linux 系统纯净镜像分享【来自I Tell You】
  9. 设置liunx服务器编码,中文乱码问题
  10. rasp agent_Rasp Pi上的Perf机器学习