首页 > 其他分享 >计算机组成原理:控制器实验

计算机组成原理:控制器实验

时间:2023-05-21 23:48:22浏览次数:33  
标签:控制器 R0 计算机 0000 微程序 实验 原理 机器指令 OUT

实验名称: 4 控制器实验

实验目的

  1. 掌握微程序控制器的组成原理。
  2. 掌握微程序的编制、写入,观察微程序的运行过程。
  3. 基于数据通路图,掌握微程序控制器的工作原理。
  4. 基于微程序流程图,掌握微程序控制器的工作原理。
  5. 基于信号时序图,掌握微程序控制器的工作原理。
  6. 掌握一个简单CPU的组成原理。
  7. 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。

实验设备

PC机一台,TDX-CMX实验系统一套。

注意:编辑报告时,文字和图片不能在同一行。保存报告时请检查格式。

实验预习

一、4.1预习题

1、阅读实验指导书,然后回答问题。

(1) 微指令字长共 24 位,控制位顺序如表 4-1-1:

其中 MA5…MA0 为 6 位的(微地址),A、B、C 为三个(译码字段),分别由三个控制位译码出多位。C 字段中的 P<1>为(测试字位)。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的(微地址入口),从而实现完成对指令的识别,并实现微程序的分支。

(2)本实验安排了四条机器指令,分别为 ADD(0000 0000)、IN(00 10 0000)、 OUT(0011 0000)和 HLT(0101 0000)。括号中为各指令的二进制代码,指令格式如下,请补充说明部分。

助记符  机器指令码   说明

IN         0010 0000 (IN -> R0)

ADD     0000 0000 (R0 + R0 -> R0)

OUT     0011 0000 (R0 -> OUT)

HLT      0101 0000 (停机)


实验中机器指令由(CON单元的二进制开关)手动给出,其余单元的控制信号均由(微程序控制器)自动产生。

(4)将全部微程序按微指令格式变成二进制微代码,请对照表4-1-2,结合四条机器指令,回答问题。

写出连续执行四条机器指令(IN-ADD-OUT-HLT)程序的每条微指令的下地址执行顺序

000000→000001→(110000)→(000100)→(000101)

→000001→(110010)→000001→(110011)→000001→

(110101)

二、4.2预习题

  (1)实验4-2在4-1微程序控制器实验的基础上增加了三个部件,一是(PC),另一个是(AR),还有就是 (MEM),因而在微指令中应增加相应的控制位,其微指令格式如表4-2-1所示:

 

简述微指令与4-1中微指令控制位有哪些不同?

答:

A字段中增加了 LOAD LDAR控制位

B字段中增加了PC_B控制位

C字段中增加了LDPC控制位

  (2)设计一段机器程序,要求从 IN 单元读入一个数据,存于 R0,将 R0 和自身相加,结果存于R0,再将 R0 的值送 OUT 单元显示。

根据要求可以得到如下程序,地址和内容均为二进制数,补充程序说明

地 址              内 容           助记符               说明

00000000 00100000       START: IN R0 (从 IN 单元读入数据送 R0)

00000001 00000000        ADD R0,R0   (R0 和自身相加, 结果送 R0)

00000010 00110000        OUT R0         (R0 的值送 OUT单元显示)

00000011 11100000        JMP START   (跳转至 00H 地址)

00000100 00000000                              (地址)

00000101 01010000        HLT                (停机)

  (3)对照实验指导书二进制微代码表,结合上述机器程序(IN→ADD→OUT→JM P→HLT),写出执行机器程序时微指令下地址的变化情况(自行填写)

( 000000 -> 000001 -> {000011 -> 110010 ->000001 -> 000011 -> 110000 -> 000100- >000101

-> 000001 -> 000011 -> 110011 -> 000001-> 000011 -> 111100 -> 011101 -> 000001}->循环)

实验步骤

(一)本机运行

1、按照实验指导书的步骤完成操作,并在实验结果与分析中填写4.1程序运行过程表和4.2程序运行过程表。

  4.1表:通过IN单元输入的值为(23H),运行结束后,通过OUT单元输出的值为(46H)

  4.2表:通过IN单元输入的值为(23H),运行结束后,通过OUT单元输出的值为(46H)

(二)

  (1)观测数据通路图

打开 TDX-CMX 软件,在菜单上选择【实验】-【微控器实验】,打开本实验的数据通路图, 也可以通过工具栏上的下拉框打开数据通路图。

操作方法同本机运行,仔细观察每条机器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行指令的根基。

按本机运行的顺序给出数据和指令,观察最后的运算结果是否正确。

  (2)观测微程序流图

打开数据通路图后,点击“【调试】—【微程序流图】”,打开微程序流程图,操作方法同本机运行,跟踪显示每条机器指令的执行过程。

(三)观测信号时序图

点击打开选择观察信号窗口,或者选择联机软件的“【调试】—【时序观测窗】”,选择想要观察的信号,点击确定。

实验结果及分析

注意:以下两张表均存在设计缺失!

实验思考题

4.1 机器指令30H(即OUT指令)执行时,观察寄存器R0中的数据何时送入OU T单元?受哪些信号影响?

答:

在OUT指令的R0->OUT微指令中

T3 IOW R0_B信号

4.2 指导书给出的程序中,跳转到了START,即地址00,程序将循环执行前四条指令,那么能否实现停机操作?试通过改写程序代码完成停机(将机器指令列出即可,不需要实现)。

答:

不能停机

JMP地址改为 0000_0101 即停机的地址

00000011 11100000 ; JMP START 跳转至 05H 地址

00000100 00000101 ;

实验总结

了解了微程序控制器的组成原理。观察了微程序的运行过程。了解了微程序控制器的工作原理。

了解了微程序控制器的工作原理。了解了微程序控制器的工作原理

 

标签:控制器,R0,计算机,0000,微程序,实验,原理,机器指令,OUT
From: https://www.cnblogs.com/Az1r/p/17418491.html

相关文章

  • 计算机组成原理:运算器实验
    实验名称:1.1基本运算器实验实验目的了解运算器的组成结构。基于数据通路图,观测并分析运算器的工作原理。基于信号时序图,观测并分析运算器的工作原理。实验设备PC机一台,TDX-CMX实验系统一套。实验预习学习使用TDX-CMX实验台,然后回答下列问题。实验台上“时序与......
  • 计算机组成原理:阵列乘法器设计实验
    实验名称:1.2阵列乘法器设计实验实验目的了解运算器的组成结构。基于数据通路图,观测并分析运算器的工作原理。基于信号时序图,观测并分析运算器的工作原理。实验设备PC机一台,TDX-CMX实验系统一套。实验预习画出4*4阵列乘法器原理图,分析延迟与哪些因素有关。答:(上传图片......
  • 计算机组成原理:存储器实验
    实验名称:2存储器实验实验目的掌握静态随机存储器RAM工作特性及数据的读写方法。基于信号时序图,了解读写静态随机存储器的原理。掌握Cache的原理及其设计方法。熟悉FPGA应用设计及EDA软件的使用。实验设备PC机一台,TDX-CMX实验系统一套。实验预习静态随机存储器实验1......
  • 计算机组成原理:系统总线与总线接口实验
    实验名称:3.系统总线与总线接口实验实验目的理解总线的概念及其特性。掌握控制总线的功能和应用。理解总线的功能和和典型工作流程。掌握在总线上协调ALU和外设交换数据的方法。实验设备PC机一台,TDX-CMX实验系统一套。实验预习1、阅读实验指导书,然后回答问题。本实......
  • RocketMQ事务消息原理
    一、RocketMQ事务消息原理:        RocketMQ在4.3版本之后实现了完整的事务消息,基于MQ的分布式事务方案,本质上是对本地消息表的一个封装,整体流程与本地消息表一致,唯一不同的就是将本地消息表存在了MQ内部,而不是业务数据库,事务消息解决的是生产端的消息发送与本地事务执行......
  • 对$nextTick的理解,及其实现原理
    1.对$nextTick的理解:VUE中数据变化后,是异步更新DOM的,如果想数据变化后,操作dom,这个时候获取到的是没有变化的值eg:<divclass="msg">{{msg}}</div>mounted(){this.msg='我是测试文字'console.log(document.querySelector('.msg'......
  • 【计算机视觉1】----- 图像增强算法(对比度增强、直方图均衡化)
    直方图均衡化直方图修正(HistogramEqualization)是一种常见的图像增强技术,它通过重新分布图像像素的灰度值来增强图像的对比度和亮度。直方图修正的基本思想是将图像的灰度值范围映射到一个更广泛的范围,从而使图像的灰度级分布更加均匀。注意,在运行代码之前,请确保已安装并配置了Ope......
  • 计算机网络--Ch6.应用层(一)
    一.网络应用模型1.应用层概述应用层对应用程序的通信提供服务。应用层协议定义:应用进程交换的报文类型,请求还是响应?各种报文类型的语法,如报文中的各个字段及其详细描述。字段的语义,即包含在字段中的信息的含义。进程何时、如何发送报文,以及对报文进行响应的规则。1.1客户/服务......
  • Android 热补丁之 Tinker 原理解析
    阅读本文大概需要1分钟。哈,一晃好几天没更文了,然后后台又一大堆读者给我留言,说没有我的文章,感觉生活都没有动力了,对于这样的读者,我只能说:你肯定单身吧?主要是上周五开始就出去旅游了,跟着老板一起出去嗨了一把。所以一直没更新,但是,我是不会忘记你们的,这不,刚回归就给大家带来一篇干......
  • 聊聊Mybatis的实现原理
    使用示例平时我们使用的一般是集成了Spring或是SpringBoot的Mybatis,封装了一层,看源码不直接;如下,看看原生的Mybatis使用示例示例解析通过代码可以清晰地看出,MyBatis的操作主要分为两大阶段:第一阶段:MyBatis初始化阶段。该阶段用来完成MyBatis运行环境的准备工作,读取配置并初......