一、小引
1、微程序控制基本思想
把操作控制信号编制成微指令,存放到只读存储器(控制存储器)里,运行时从控存中取出这些微指令,从而产生所需的各种操作控制信号
2、技术
微程序设计技术是用软件方法来设计硬件的技术

二、微程序控制原理
1、微命令和微操作
(1)、微命令
控制部件通过控制线向执行部件发出的各种控制命令
(2)、微操作
执行部件接收微命令后进行的操作
微操作在执行部件中是最小、最基本的操作
(3)、微命令和微操作是一一对应的
①、微命令是微操作的控制信号,微操作是微命令的操作过程
②、微操作:控制门电位信号的变化、寄存器输入端的控制、ALU的基本执行过程等
(4)、微操作分为相容和互斥两种
①、相容
能够同时或在同一个CPU周期并形执行的微操作
②、互斥
不能同时或不能在同一个CPU周期内并行执行的微操作
③、例

(+、-、M)、(4、6、8)、(5、7、9)在同一个CPU周期中只能选择一个,是互斥的
(1、2、3)可以同时进行,是相容的;(4、6、8)和(5、7、9)彼此之间的操作也是相容的
2、微指令和微程序
(1)、微指令
在一个CPU周期中,一组实现一定操作功能的微命令的组合
①、在同一CPU周期内并行或并发执行的微命令的组合
②、微指令存储在控制器的控制存储器中
③、微地址:存放微指令的控制存储器的单元地址
(2)、微程序
一系列微指令的有序集合

(3)、微指令格式
例:

①、控制操作
又称微操作码,用以发出控制信号
圆点表示一个微命令
某一位为1表示发出微命令,为0表示不发出
微命令信号的时间控制需要和T脉冲做与操作

②、顺序控制
用以决定产生下一条微指令的地址
P1P2:判断测试标志
P1P2均为0:使用直接地址
P1P2中有1:要进行P1或P2测试,根据测试结果直接修改微地址
后四位:下一条微指令的微地址
3、微程序控制原理框图
主要由控制存储器、微指令寄存器、地址转移逻辑组成

(1)、控制存储器CM
①、一种只读存储器,存放指令系统的微程序
②、CM的字长就是微指令字的长度,存储容量取决于微程序的数量
③、微指令周期:读出一条微指令并执行该微指令的时间总和
(2)、微指令寄存器μIR
①、存放由控制存储器读出的一条微指令
②、由微地址寄存器μAR和微命令寄存器组成
微地址寄存器:决定将要访问的下一条微指令的地址
微命令寄存器:保存一条微指令的操作控制字段和判别测试字段的信息
(3)、地址转移逻辑
承担自动完成修改微地址的任务
一般情况:微指令直接给出下一条微指令的地址(微地址字段)
程序出现分支:通过-判别测试字段P和执行部件的反馈信息,形成新的微地址
4、微程序控制器的工作过程
(1)、执行取址操作
由一段取址微程序来完成,从主存中取出机器指令存入IR
(2)、IR中OP字段通过地址转移逻辑产生出该机器指令所对应的微程序的入口地址,并送入微地址寄存器
(3)、从CM中逐条取出微指令并执行,每条微指令都能自动产生下一条微指令的地址
(4)、微程序的最后一条微指令执行完毕后,其下一条微指令地址又回到取址微程序的入口地址,从而继续第(1)步

三、微程序举例

1、目标
完成BCD码加法运算,代码:b=b+a
2、汇编
指令:ADDB R2 R1
共耗费3-4个CPU周期
①、取址1个CPU周期
②、执行2-3个CPU周期
3、微程序流程图

4、第一条微指令:取址
微命令:LDIR、PC+1、LDAR
P1:译码测试

5、第二条微指令:R1+R2→R2
微命令:R1→X、R2→Y、+、LDR2

6、第三条微指令:R2+R3→R2
微命令:R2→X、R3→Y、+、LDR2
P2:判断测试

7、第四条微指令:R2-R3→R2
微命令:R2→X、R3→Y、-、LDR2

8、微程序存放示意图

9、机器指令与微指令关系
①、一条机器指令对应一个微程序
②、一个微程序由若干条微指令组成
③、一个微指令包含多个微命令
④、机器指令、程序、地址与内存储器有关
⑤、微指令、微程序、微地址和控制存储器有关
⑥、每一个CPU周期对应一条微指令

四、微程序设计技术
1、设计微指令目标
①、有利于缩短微指令的长度
②、有利于减小控制存储器的容量
③、有利于提高微程序的执行速度
④、有利于对微指令的修改
⑤、有利于提高微程序设计的灵活性
2、微命令编码
对微指令中的操作控制字段采用的表示方法
(1)、直接表示法
操作控制字段中的每一位表示一个微命令

优点:结构简单、并行性强、操作速度快
缺点:微指令字太长,导致CM容量较大
微命令为N个,则操作控制字段就要有N位;另外,在N个微命令中,有许多是互斥的,不允许并行操作,使信息的利用率下降
(2)、编码表示法
把一组相斥的微命令组成一个小组,然后通过小组译码器对每一个小组信号进行译码,译码输出作为操作控制信号

优点:用较少的二进制信息位表示较多的微命令信号,使微命令指令字缩短
缺点:增加了译码电路,使微指令的执行速度减慢
(3)、混合编码法
直接表示法与字段编码法混合使用,以便能综合考虑指令字长、灵活性、执行微程序速度等方面的要求
3、微地址的形成方法
(1)、计算器方式
①、顺序执行时
后继微地址=当前微地址+增量
②、非顺序执行(分支)时
通过转移方式,使现行微指令执行后,转去执行指定后继微地址的下一条微指令
③、特点
微指令的顺序控制字段较短,微地址产生机构简单
多路并行转移功能较弱,速度较慢,灵活性较差
(2)、多路转移方式
一条微指令具有多个转移分支的能力称为多路转移
①、顺序执行时
后继微地址直接由顺序控制字段给出
②、非顺序执行(分支)时
按顺序控制字段的"判别方式"标志和"状态条件"信息来产生一个微地址
通过触发器置位端
③、特点
能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度较快
转移地址逻辑需要用组合逻辑方法设计
3、微指令格式
水平型微地址、垂直型微地址
(1)、水平型微地址
一次能定义并执行多个并行操作微命令的微指令,一般格式:

微指令的控制字段直接给出并行操作微命令
(2)、垂直型微地址
微指令中设置微操作码字段,采用微操作码编译法由微操作码规定微指令的功能
每条微指令的功能简单,因此,实现一条机器指令的微程序要比水平型微指令编写的微程序长得多
采用较长的微程序结构去换取较短的微指令结构
①、寄存器-寄存器传送型微指令

②、运算控制型微指令

③、访问主存微指令

④、条件转移微指令

(3)、比较
①、水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则较差
②、水平型微指令执行一指令的时间短,垂直型微指令执行时间长
③、由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点。垂直型微指令相反
④、水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,比较容易掌握
4、动态微程序设计
1、静态微程序设计
对应于一台计算机的机器指令只有一组微程序,这一组微程序设计好之后,一般无需改变而且也不好改变
2、动态微程序设计
采用EPROM时,可以通过改变微指令和微程序来改变机器的指令系统
微指令和微程序可以根据需要加以改变,所以可以在一台机器上实现不同类型的指令系统,这种技术又称仿真其他机器指令系统

中央处理器——微程序相关推荐

  1. 计组之中央处理器:6、微指令格式设计、微程序控制单元的设计

    6.微指令格式设计.微程序控制单元的设计 微指令格式设计 思维导图 解决的问题 微指令的格式的分类 微指令的编码方式 微指令的地址形成方式 微程序控制单元的设计 思维导图 微程序控制单元的设计步骤 微 ...

  2. (计算机组成原理)第五章中央处理器-第四节4:微程序控制单元设计

    文章目录 一:微程序控制单元设计步骤 第一步:分析每个阶段的微操作序列 第二步:写出对应机器指令的微操作命令及节拍安排 第三步:确定微指令格式 第四步:编写微指令码点 二:微程序设计分类 (1)静态微 ...

  3. 8 计算机组成原理第五章 中央处理器 控制器 硬布线控制器 微程序控制器

    文章目录 1 控制器的功能和工作原理 1.1 控制器的结构和功能 1.2 控制单元的输入和输出 1.2.1 控制单元输入 1.2.2 控制单元输出 2 硬布线控制器 2.1 CPU的控制方式 2.2 ...

  4. 计组之中央处理器:5、微程序控制器(组成、原理、概念对比)

    5.微程序控制器 思维导图 微程序控制器的设计思路 微程序控制器的基本结构 微程序控制器的工作原理 概念对比 程序与微程序 指令与微指令 主存储器与控制器存储器 IR和uIR(MDR和CMDR) PC ...

  5. (计算机组成原理)第五章中央处理器-第四节2:微程序控制器基本原理

    文章目录 一:微程序控制器的设计思路 二:微程序控制器的基本结构 (1)微程序控制器基本组成 (2)微程序控制器工作过程 三:微程序控制器的工作原理 硬布线控制器,就是用纯硬件实现的控制器,电路非常复 ...

  6. 计组高分笔记:【05】中央处理器 「CPU细节 | 取指周期 | 间址周期 | 执行周期 | 中断周期 | 数据通路 | 硬布线控制器 | 微程序控制器 | 指令流水线 | LOAD | STORE」

    文章目录 1. CPU的功能和基本结构 1.1 CPU的组成 1.1.1 运算器的基本组成 1.2.2 控制器的基本组成 1.2.3 CPU的总图 2. 指令执行过程 2.1 指令周期 2.2 指令的 ...

  7. 中央处理器 —— 硬布线控制器和微程序控制器

    一.控制器的结构和功能 运算器是组合逻辑电路(输入),控制器是时序逻辑电路(输入+状态) 控制器是计算机系统的指挥中心,控制器的主要功能有: 从主存中取出一条指令,并指出下一条指令在主存中的位置. 对 ...

  8. 计算机组成原理-中央处理器(CPU基本结构及功能、指令执行、数据通路、硬布线控制器、微程序控制器、指令流水线)

    目录

  9. 基本概念学习(8003)---CPU中央处理器

    中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit).它的功能主要是解释计算机指令以 ...

最新文章

  1. 教你如何更优惠的购买阿里云服务器?
  2. win7如何创建快速访问服务器快捷方式?
  3. Servlet线程安全
  4. java学习笔记(4)
  5. 远程连接spark_spark内部原理篇之计算引擎和调度管理
  6. Java内部具有原子更新的动态热交换环境
  7. Java面向对象---重写(Override)与重载(Overload)
  8. 计算机专业线性代数教学大纲,《线性代数》课程教学大纲
  9. jvm原理、启动时间、与编译器操作系统关系
  10. LeetCode 300. 最长上升子序列(动态规划)
  11. Visual Studio 2013 (CV版)编译错误【error C4996: 'sprintf': This function or variable may be unsafe. 】的解决方案
  12. 第二阶段团队站立会议02
  13. Strategy Analytics:全球移动SaaS市场规模2021年将达到379亿美元
  14. Java数据类型转换(从低精度到高精度排序)
  15. 懒人精灵新版图色工具介绍
  16. 从返利网站看如何经营用户
  17. 菜狗杯Misc迅疾响应wp
  18. Android 选择图片、上传图片之PictureSelector
  19. Python——玩转Word自动化
  20. 路由器设置成交换机步骤

热门文章

  1. 疯狂的程序员81:丁骨牛排
  2. R WinBugs network meta analysis
  3. 整理大厂高频核心前端面试题,五万多字,面试必考
  4. 一个纯技术程序员的求职心酸历程
  5. Win10多用户同时远程桌面,并各自操作互不干扰
  6. AppInventor之数据库、MQTT及导出Excel表格
  7. HTML+CSS期末大作业:电影网站设计——猫眼电影(9页)
  8. 基于STM8的数字温度计设计
  9. Apache Flink 1.14.4 on yarn ha环境搭建
  10. GIT 报错:Branch ‘master‘ set up to track remote branch ‘master‘ from ‘origin‘