计算机组成原理——微程序控制器
(截图来自MOOC平台华中科技大学计算机组成原理课程)
硬布线控制器存在一些缺陷:逻辑设计比较繁杂,而且每当需要新增或删除指令时,都需要对整个系统进行变更。因此,人们发明了微程序控制器。
硬布线控制器的一条指令中有多个时钟周期,每个时钟周期对应一个状态,而一个状态对应一组并发控制信号。
而微程序的思想是将并发信号事先存储为微指令,而一条指令就对应多条微指令,那么每一个状态就相当于是并发信号所在的存储器地址。
微程序是一种软硬结合的思想,可以避免复杂的逻辑设计。
下面以单总线结构的CPU为例来说明微程序控制器的设计步骤。
微指令分为操作控制字段和顺序控制字段两部分;
操作控制字段中的每一位对应的是一个控制信号,就是微命令,哪一位写1,说明给出了该位对应的操作信号;
顺序控制字段中的P1、P2是判别位,如果为0吓一跳微指令的地址就从顺序控制字段的下址字段获取。如果不为0,说明这一段微程序已经执行完,需要执行下一个微程序的第一条微指令。
如图所示,不同的指令会对应不同的微程序,每一段微程序中微指令的数量也是不同的;
而微指令中的操作控制字段的每一位都可以称为微命令。
执行指令时,首先从IR中取出指令操作码,在不同的状态条件下,经过地址转移组合逻辑获得微程序的入口地址;
微程序入口地址在判别字段的判别下,获得下一条微指令的地址。如果判别字为0,那么下址字段就是下一条指令的地址,如果为1说明需要跳转,去执行新的微程序;
微地址写入微地址寄存器,该寄存器在初始时为0,所以0号地址为取值微程序的入口,然后顺序执行取值微程序,直到判别字为1时发生跳转。根据时钟周期,将微地址写入控制存储器,对应的微指令就被选中,其中的微操作控制字段生成操作控制信号到达对应的控制点,而顺序控制字段继续配合生成下一个微地址。
(创作不易,请点赞收藏哦~)
计算机组成原理——微程序控制器相关推荐
- 计算机组成原理微控制设计实验总结,计算机组成原理微程序控制器实验报告.doc...
计算机组成原理微程序控制器实验报告.doc 计算机组成原理实验报告三:微程序控制器实验?? 2011-05-06 01:00:09|??分类: 实验报告 |??标签:实验??微程序??字段??微指令? ...
- 计算机微程序控制器实验报告,计算机组成原理微程序控制器实验报告
计算机组成原理实验报告三:微程序控制器实验 2011-05-06 01:00:09| 分类: 实验报告 | 标签:实验 微程序 字段 微指令 信号 |字号大中小 订阅 实验三:微程序控制器实验 一. ...
- 计算机组成原理 微程序控制器实验
微程序控制器实验 实验环境 计算机组成原理实验环境 实验目的 掌握微程序控制器的组成原理和工作过程. 理解微指令和微程序的概念,理解微指令与指令的区别与联系. 掌握指令操作码与控制存储器中微程序的对应 ...
- 计算机组成原理节拍发生器实验报告,计算机组成原理微程序控制器组成实验课程实验报告书研讨.doc...
文档介绍: 学生课程实验报告书 13级计算机与信息科学系软件工程专业 130 3班学号 3138907308 姓名王明渊 2014 --2015 学年第2学期实验项目: 微程序控制器组成实验实验时间: ...
- 计算机组成原理时序发生器qd,计算机组成原理微程序控制器组成实验课程实验报告书...
学生课程实验报告书 13 级 计算机与信息科学 系 软件工程 专业 1303 班 学号 3138907308 姓名 王明渊 2014 --2015 学年 第 2 学期 另外它还产生节拍信号W1-W3的 ...
- 计算机组成原理里的QD键,计算机组成原理—微程序控制器组成实验.docx
文档介绍: 3.4 常规型微程序控制器组成实验 一.实验目的 1. 掌握时序发生器的组成原理. 2. 掌握微程序控制器的组成原理. 二.实验电路 1. 时序发生器 本实验所用的时序电路见图3.4.电路 ...
- 控制器设计与仿真 实验计算机组成,计算机组成原理——微程序控制器实验
(一) 微程序控制器实验 一.实验目的与要求 实验目的:1.掌握时序产生器的原理和具体操作. 2.掌握微程序控制器的功能.组成知识. 3.掌握微程序的编制.写入.观察微程序的运行,学习基本指令的执行流 ...
- 计算机组成原理时序发生器qd,计算机组成原理—微程序控制器组成实验
实验报告 对时序发生器TJ输入引脚的连接要慎重,当不需要暂停微程序的运行时,将它接地:如果需要的话,将它与微程序控制器的输出微命令TJ相连.QD(启动)是单脉冲信号,在GAL中用时钟MF对它进行了同步 ...
- 计算机组成原理R0bus是什么,计算机组成原理微程序控制器实验
三.实现方法(含实现思路.程序流程图.实验电路图和源程序列表等) 运行微程序 01 PC→AR PC+1 02 RAM→BUS BUS→IR 10 P(1) IN 10 SW→R0 01 ADD 11 ...
最新文章
- 用S60操作系统SDK开发NOKIA手机应用程序(4)- 界面层框架及一些特性
- java的源代码文件扩展名_【单选题】Java 的源代码文件具有( )的扩展名 (5.0分)
A. .c B. .class C...
- c++ map用法_Pandas数据处理三板斧——map、apply、applymap详解
- 计算机小技巧7,大神也未必知道的7个电脑小技巧,你会吗?
- Leetcode 565. Array Nesting
- 【移动端html5】 android video播放进度精确控制
- Netbeans、Eclipse中查看JDK源码
- scala基础之提取器extractor
- 日料美食海鲜精品海报PSD分层模板,美味势不可挡
- Handler基本概念
- 致25岁一无是处的你
- matlab是一门什么语言,为什么有些程序员认为MATLAB不是一门语言?
- java.time.duration_java.time.Duration
- 决胜B端(一)概述篇-走进B端
- U3D手游《苍穹变》性能优化经验谈
- 如何通过经纬度粗略计算地球两点之间的距离?直接上代码
- python学习笔记1-环境安装
- 习题2.9 编写程序,由键盘输入20个整数,分别炸出其中的最大正整数、最小正整数、最大负整数、最小负整数
- linux双显卡配置_linux双显卡解决方案
- 【算法学习笔记】74. 枚举 状态压缩 填充方案 SJTU OJ 1391 畅畅的牙签袋(改)...
热门文章
- 线程经典实例——吃苹果问题
- Java的自动装箱与拆箱详细分析
- Parse 教程:网络后台基础
- 帕萨特加载模式启用怎么解除_关闭帕萨特自动启停功能的方法
- Look Into Person数据集的错误!!
- 【单片机学习之旅】(1-2)stm32F407存储器及总线架构
- Daily record-August
- JAVA PrinterJob 指定打印机
- 不用任何软件,批量转化图片格式png转jpg,bat脚本实现
- window gcc编译器备忘录[Makefile语法说明][make clean指令错误(process_begin: CreateProcess()failed.]