微程序控制器实验

实验环境

计算机组成原理实验环境

实验目的

  1. 掌握微程序控制器的组成原理和工作过程。
  2. 理解微指令和微程序的概念,理解微指令与指令的区别与联系。
  3. 掌握指令操作码与控制存储器中微程序的对应方法。熟悉根据指令操作码从控制存储器中读出微程序的过程。

实验要求

  1. 做好实验预习,读懂实验电路图,熟悉实验元器件的功能特性和使用方法。
  2. 按照实验内容与步骤的要求,独立思考,认真仔细地完成实验。
  3. 写出实验报告。

实验电路

本实验使用的主要元器件有: 4 位数据锁存器 74LS175,2Kx8 EPROM2716,时序发生器,或门、与门、开关、指示灯等。芯片详细说明请见附录。
       图 8.1 为实验电路图,其中3片EPROM2716构成控制存储器,1片74LS175为微地址寄存器,与74LS175 数据输入引脚相连的输入信号线及6个门电路构成了地址转移逻辑。注意,2716输出信号中带后缀“#”的信号为低电平有效信号,不带后缀“#”的信号为高电平有效信号。为简化电路结构,本实验没有使用微命令寄存器,并且在虚拟实验系统中,将3片EPROM组合为一个虚拟EPROM组件。本实验使用的EPROM和时序发生器一样, 均为虚拟实验系统提供的虚拟组件。

实验电路中涉及的主要控制信号如下:

  1. CE :2716 芯片的片选信号。为 0 时 2716 正常工作,实验中将其接地,恒置为 0 。
  2. OE :2716 读信号。 CE = 0 , OE = 0 时为读操作,实验中将其接地,恒置为 0 。
  3. CLR : 芯片 74LS175 的清零信号,低电平有效。
  4. T1:微地址加载信号,在 T1 的上升沿将微地址锁存到 74LS175 。
  5. IR5 ~IR7 指令操作码的输入信号,这几条信号线本应与指令寄存器的输出引脚相连,但在本实验中,与数据开关相连,指令操作码通过数据开关手动设置。

实验原理

在存储逻辑型计算机中,一条机器指令对应了一个微程序,不同的机器指令对应了不同的微程序,执行一条指令其实就是运行其对应的一个微程序,微程序由微指令组成,是微指令的有序集合。微程序是在设计一台计算机时就预先设计好并且固化在只读存储器中的,以后每当要执行某条指令时,只需找到并运行其对应的微程序。
       控制存储器专门用于存放微程序,在本实验中,控制存储器由 3 片 EPROM2716 组成,为了减少连线的复杂度,虚拟实验系统把三片 EPROM2716 集成到一片芯片上,因此,本实验所用到的是 EPROM2716 x 3 (2Kx24位),其中地址输入引脚为 A10 ~ A0 ,实验中仅用到 A3 ~ A0 ,高 7 位地址线 A4 ~ A10 接地,实际存储容量为 16 x 3 字节。Q0 ~ Q23 这 24 个输出引脚与 24 位的微指令相对应。
       微指令格式如表 8-1 所示,采用全水平型,字长 24 位,其中操作控制字段 19 位,全部采用直接表示法,不使用译码器,每一位表示一个微命令,用于发出全机的操作控制信号;顺序控制字段 5 位,包括后续微地址 μA3 ~ μA0 和判别位 P1 ,用于决定下一条微指令的地址。

       地址转移逻辑电路用于产生下一条微指令的地址,主要由两级与门、或门构成。地址转移逻辑需要用到的数据信号有:后续微地址 μA3 ~ μA0 、判别位 P1 、指令操作码 IR7 ~ IR5 。当判别位 P1 = 0 时,下一条微指令的地址即为后续微地址 μA3 ~ μA0 ;当判别位 P1 = 1 时,下一条微指令的地址由指令操作码 IR7 ~ IR5 决定,一般是将操作码进行简单变换,把变换后的值作为下一条微指令的地址,此地址就是该操作码对应的微程序的入口地址。
       微地址寄存器 74LS175 为控制存储器提供微指令地址。当 CLR = 0 时,微地址寄存器清零,从控制存储器 00H 地址开始执行微程序,地址转移逻辑生成下一条微指令的地址。此后,每当 T1 上升沿到来时,新的微指令地址会打入微地址寄存器,控制存储器随即输出这条微指令,地址转移逻辑继而生成下一条微指令的地址。如果时序信号连续发生,微指令也会按一定的顺序接连输出。
       为了教学简单明了,本实验仅用到四条机器指令: IN (输入)、ADD (加法)、STA (存数)、JMP (无条件转移),操作码分别为 000、001、 010、 011,指令格式如表 8-2 所示。

       上述四条指令的微程序流程设计如图 8.2 所示,其中一个方框就对应一条微指令, 方框右上角的数字为八进制表示的微地址。一个方框也表示一个CPU周期,执行一条微指令需要一个CPU周期。四条指令对应四个微程序,每个微程序包括N条微指令,需要执行N个CPU周期。
       图 8.2 中的每条微指令都按照表 8-1 的格式编写了二进制代码,并预存在控制存储器芯片 EPROM2716 x 3 中。其中部分微指令二进制代码如表 8-3 所示,注意:微地址用八进制表示。




                                                                             图 8.3 控制器虚拟实验电路
(2) 电路预设置:将 EPROM2716 芯片的CE 、OE 、A4、A5 引脚置 0 ,微地址寄存器 74LS175 的 CLR 置 0 ,时序发生器的 Step 置 1 。
(3) 打开电源。此时由于 CLR = 0 ,微地址寄存器清零,给出微程序入口地址 00H,控制存储器随之输出第 00 号微指令。
(4) 将 CLR 设置为 1 ,否则微地址寄存器会一直处于清零状态。
(5) 将 IR7 ~ IR5 均设置为 0 ,思考并回答问题:若此时连续不断地发出时序信号,微程序的执行流程是怎样的?
00->01->02->03->10->02->03->10->02->03
(6) 连续单击 Start 按钮,观察微指令的输出顺序,检验控制存储器输出的微指令是否与表 8-3 中的相符,验证上一步预测的顺序是否正确。
(7) 设置 IR7 ~ IR5 的不同组合,用单步方式分别读出 ADD 、STA 和 JMP 三条指令的微程序,用后续微地址和判别指示灯跟踪微程序执行及转移情况,将表 8-3 中缺少的微程序代码补充完整。

微地址 微指令(对应下面的指示灯,若显示不一样样则没有成功)
04: 000001001001001111100101
05: 000001101010000111000110
06: 100101101100000011100010
07: 000001001000001111101100
14: 000001011000000111000010
15: 000001000000010111100010

(8) 思考并回答问题:若不改变控制器实验电路,IN、ADD、STA 和 JMP 四条指令的微程序在控制存储器中的存放位置是否可以随意安排?有什么限制??为什么?

具体连线步骤




实验验证

电路预设置

将 EPROM2716 芯片的 OE、CE 、A4、A5 引脚置 0 ,微地址寄存器 74LS175 的 CLR 置 0,时序发生器的 Step 置 1 。

打开电源

点击 Start 按钮,此时由于 CLR = 0,微地址寄存器清零,给出微程序入口地址 00H ,控制存储器随之输出第 00 号微指令。

将 CLR 设置为 1 (否则微地址寄存器会一直处于清零状态),点击 Start 按钮。此时显示的是图 8.3 微程序二进制代码表 01 号单元的微指令。

点击 Start 按钮。根据图 8.2 微程序流程图 02 地址,此时显示的是图 8.3 微程序二进制代码表 02 号单元的微指令。

点击 Start 按钮。根据图 8.2 微程序流程图 03 地址,此时显示的是图 8.3 微程序二进制代码表 03 号单元的微指令。

再次 Start 按钮将显示 10 地址,从这开始点击Start将进入00 -> 01 -> 02 -> 03 -> 10 -> 02 -> 03 -> 10 -> 02 -> 03 循环
后面的地址是由操作码决定的,要先改变要更改操作码,
四条机器指令: IN (输入)、ADD (加法)、STA (存数)、JMP (无条件转移),操作码分别为 000、001、 010、 011

001操作码

操作码设置为001,点击 Start 按钮。根据图 8.2 微程序流程图显示 04 地址
点击 Start 按钮,根据图 8.2 微程序流程图显示 05 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 06 地址

点击 Start 按钮,显示 11 再次点击返回到 02 单元

点击 Start 进入 02 -> 03 -> 04 -> 05 -> 06 -> 11 -> 02 循环

010操作码

更改操作码,点击 Start 按钮,根据图 8.2 微程序流程图显示 03 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 12 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 07 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 14 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 02 地址

点击 Start 按钮 进入 02-> 03->12->07->14 循环

011操作码

更改操作码,点击 Start 按钮,根据图 8.2 微程序流程图显示 13 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 15 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 02 地址

点击 Start 按钮,根据图 8.2 微程序流程图显示 03 地址

点击 Start 按钮,进入 02 -> 03 ->13 -> 15 -> 02 循环

思考与分析

  1. 微程序控制器主要由哪些部件组成?各部件的功能是什么?
  2. 本实验中,地址转移逻辑电路是怎样利用判别测试字段(P字段)实现微程序分支的?
  3. 如果把微程序控制器看作一个黑盒子,那么它的输入信号有哪些?这些信号是哪些部件提供给它的?她的输出信号有哪些?这些信号是发送给哪些部件的?

计算机组成原理 微程序控制器实验相关推荐

  1. 计算机组成原理微控制设计实验总结,计算机组成原理微程序控制器实验报告.doc...

    计算机组成原理微程序控制器实验报告.doc 计算机组成原理实验报告三:微程序控制器实验?? 2011-05-06 01:00:09|??分类: 实验报告 |??标签:实验??微程序??字段??微指令? ...

  2. 计算机微程序控制器实验报告,计算机组成原理微程序控制器实验报告

    计算机组成原理实验报告三:微程序控制器实验 2011-05-06 01:00:09| 分类: 实验报告 | 标签:实验 微程序 字段 微指令 信号 |字号大中小 订阅 实验三:微程序控制器实验 一. ...

  3. 控制器设计与仿真 实验计算机组成,计算机组成原理——微程序控制器实验

    (一) 微程序控制器实验 一.实验目的与要求 实验目的:1.掌握时序产生器的原理和具体操作. 2.掌握微程序控制器的功能.组成知识. 3.掌握微程序的编制.写入.观察微程序的运行,学习基本指令的执行流 ...

  4. 计算机组成原理R0bus是什么,计算机组成原理微程序控制器实验

    三.实现方法(含实现思路.程序流程图.实验电路图和源程序列表等) 运行微程序 01 PC→AR PC+1 02 RAM→BUS BUS→IR 10 P(1) IN 10 SW→R0 01 ADD 11 ...

  5. 计算机组成原理实验箱使能开关,计算机组成原理微程序计数器实验报告

    计算机组成原理微程序计数器实验报告 (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 洛阳理工学院实验报告系别计算机与信息工程学院班级学号 ...

  6. 计算机组成原理微控制器实验报告,计算机组成原理实验报告_微控制器.doc

    计算机组成原理实验报告_微控制器 计算机组成原理实验报告 题目: 微程序控制器实验 实验目的: (1) 理解时序产生器的原理,了解时钟和时序信号的波形. (2) 掌握微程序控制器的功能.组成知识. ( ...

  7. 计算机组成原理节拍发生器实验报告,计算机组成原理微程序控制器组成实验课程实验报告书研讨.doc...

    文档介绍: 学生课程实验报告书 13级计算机与信息科学系软件工程专业 130 3班学号 3138907308 姓名王明渊 2014 --2015 学年第2学期实验项目: 微程序控制器组成实验实验时间: ...

  8. 计算机组成原理时序发生器qd,计算机组成原理微程序控制器组成实验课程实验报告书...

    学生课程实验报告书 13 级 计算机与信息科学 系 软件工程 专业 1303 班 学号 3138907308 姓名 王明渊 2014 --2015 学年 第 2 学期 另外它还产生节拍信号W1-W3的 ...

  9. 计算机组成原理里的QD键,计算机组成原理—微程序控制器组成实验.docx

    文档介绍: 3.4 常规型微程序控制器组成实验 一.实验目的 1. 掌握时序发生器的组成原理. 2. 掌握微程序控制器的组成原理. 二.实验电路 1. 时序发生器 本实验所用的时序电路见图3.4.电路 ...

最新文章

  1. php exchange,PHP SDK for digital currency exchange
  2. 获取其他线程的数据用 queue, 多进程Q
  3. C#心得与经验(二)
  4. 软件工程概论课堂作业3
  5. webstorm配置Monokai-Sublime.jar主题
  6. asp.net数据库操作类(不含存储过程)
  7. rpm yum 删除mysql
  8. mysql数据库理论与实战
  9. idea中pom中有些配置为什么不提示_Delegate IDE build/run actions to maven 配置的影响
  10. foobar2000 解决dts播放出现粉色噪音及cd文件名乱码
  11. 根据肠道微生物组重新思考健康饮食
  12. neo4j中心度算法(Centrality algorithm)-3.Closeness Centrality algorithm
  13. U盘文件系统格式快速转换
  14. 网页视频下载mp4格式到本地
  15. svn服务器搭建ip指定,mac 局域网svn服务器搭建
  16. 为什么中国神仙比较负责任?
  17. HashMap的底层原理你真的知道?
  18. [转]数据挖掘十大经典算法
  19. KINOVA公司JACO2、MICO2从安装到开发
  20. 翻译Houdini官方文档:PDG/TOPs介绍

热门文章

  1. Uninformed Students: Student–Teacher Anomaly Detection with Discriminative Latent Embeddings(翻译)
  2. IT领域唯一的国家级证书,积分落户、评职称、抵个税...
  3. 最快速的文件传输软件,解析镭速文件传输软件
  4. 用户画像之概念知识!
  5. android 涂鸦软件demo,涂鸦demo(swift)这是一款涂鸦软件,能够实现对图片的基本操作...
  6. i9 10900K比9900K性能提升了多少?i9-10900K和i9-9900K区别对比评测 更多详情咨询世通兰陵王
  7. Win10系统无法打开桌面的个性化设置、显示设置及任务栏设置等,处理方法及参考链接如下。
  8. Windows 组策略 应用
  9. 起步晚了20年,韩国芯片凭什么打破美日封锁,做到世界第1?
  10. Java中重写父类方法