计算机组成原理学习-实验四 模型机实验(简易版)(详细、人话)

如果需要配套工程资源文件,点击专栏简介联系作者:

计算机组成原理【专栏】

须知

本文仅作学习笔记使用,仅在CSDN网站发布,如果在其他网站发现,均为侵权行为,请举报。作者:小王在努力。

实验要求

 基本要求

  1. 事先在主存中存储操作数和指令
  2. 根据PC来取指令和操作数
  3. 根据操作数进行运算,将结果放入到主存中

 思考问题

  1. 思考计算机CPU内总线与系统总线的关系

  2. 思考中断系统的必要性

实验步骤

 一、理论分析

  1.主要功能部件介绍

    由于本次实验需要的主要功能部分为:主存、CPU运算器部分、PC及自加、IR部分。所以分开来实现:

    主存:主存用两片74LS373分别代表MAR来存储地址信息和MDR用来存储数据信息,用6116来充当主存,来存储数据。

    CPU运算器部分:用3个74LS373来分别保存:操作数1、操作数2和运算器的功能选择数据(S3~S0、M和CN)的信息,由于要实现8位二进制的运算,我们使用的是74LS181来充当运算器,他只能实现两个四位二进制的运算,所以我们采用两个74LS181一起来运算,同时将两个8位操作数,分为高四位和第四位进行运算,然后将运算的结构输出到另一个74LS373锁存器中即可。

    PC及自加:PC寄存器,我们仅用一个74LS373来实现即可,为了实现其自加的功能,我们选取两个74LS181来实现其自加的功能。

    IR指令寄存器:我们使用74LS373来充当即可,将其连接在总线上。

 其中,6116中事先存储以及要存储的数据如下:
| 6116 | 地址 |存放数据 |
|–|–|–|–|–|–|–|
| | 0000 0001 | 1000 0001(指令)|
| | 0000 0010 |0001 0110(CN、M、S) |
| | 0000 0011 | 0000 0000(操作数1 C1)|
| | 0000 0100 | 0000 0110(操作数2 C2)|
| | 0000 0101 |写入结构(C1异或C2的结果) |

  2.实验主要流程

   (1).将PC初值设置为0
   (2).PC自加+1,产生第一条指令的地址
   (3).PC->MAR (3.1)将指令放置指令寄存器中(关于指令的译码等部分,在此处先不涉及)
   (4). PC+=1

   (5). PC->MAR

   (6).用MAR去读6116中的存储的运算器控制参数(CN,M,S3~S0),并将其放入到ALU的寄存器3中

   (7).设置ALU功能参数
   (8).PC+=1
   (9).用PC的地址取操作数1,放入到ALU的寄存器1中
   (10).PC+=1
   (11).用PC 的地址取操作数2,放入到ALU的寄存器2中
   (12).使用ALU计算结果,并将数据保存在锁存器中
   (13).PC+=1
   (14).使用PC的地址,将数据保存在6116中。

 二、实现方法

  1.主要功能部件展示

在这里插入图片描述   主存:
在这里插入图片描述
   CPU运算器部分:
在这里插入图片描述

   PC及自加:
在这里插入图片描述

   IR:
在这里插入图片描述

  2.实验流程

   (1).将事先需要存储的数据存入到6116中,通过给地址、给数据的同时让6116写数据来实现,根据6116的存储数据表来进行存储,下图仅为其中一例。
在这里插入图片描述

   (2).将操作数等信息存储到6116中之后,将PC置为0,然后实现自加功能,选中0000 0001地址中的指令1000 0001,将其放入到IR中。
在这里插入图片描述

在这里插入图片描述

   (3).依次根据PC自加,选出操作数1,操作数2,运算器功能控制信息(CN、M、S3~S0),并将他们分别放入到相应的寄存器中,进行运算。
在这里插入图片描述

   (4).根据PC+1的地址,将运算结果存放至改地址下。
在这里插入图片描述

 三、实验结果分析

 由于本次实验我实现的功能是两个数进行异或运算,我存放的操作数1为:0000 0000,存放的操作数2为:0000
0110,S3~S0:0110,M:1,Cn:X。进行异或运算:
| 功能 | 模式选择M | 功能选择S3~S0|进位CN| 八位输入C1|八位输入C2 |八位输出|进位输出
|–|–|–|–|–|–|–|–|–|–|
| 逻辑异或 | 1 |0110|X|0000 0000 |0000 0110| 0000 0110 |X

 四、思考问题

  1. 系统总线是直接与CPU连接的,有内存或显卡等高速核心设备,而内部总线是通过桥芯片连接系统总路线的,并相对系统总路线速度慢,连接的设备较多。

  2. 中断是指在计算机执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序。待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。它是计算机可以更好更快利用有限的系统资源解决系统响应速度和运行效率的一种控制技术。实时响应,系统调度。

 五、问题及解决办法

 1.问题:在连接LED灯之后果不其然出现问题了,LED输入端电平不确定。
在这里插入图片描述
 解决办法:在其后面接上一个阻止为200欧姆的上拉电阻。
在这里插入图片描述
 问题2:在使用两个ALU进行高位和地位的分别运算时,输出结果错误。

 解决办法:千万、千万、千万要注意区分ALU的地位和高位 以及 接线顺序问题,一失足成千古恨。

 六、结论

  通过本次实验,我将前几次做的实验结合起来,真正了解到了比较系统的计算机存储程序的工作流程,知道了指令和数据之间的关系,以及指令和数据是如何取出和存放的,以及操作数是如何运算的,还有PC在整个过程中起到的作用,同时也使得我对proteus软件的使用更加的流畅。

后话

  1. 首先给大家说一下,博主经常在线,如果有什么问题或者想法,可以在下方评论,我会积极反馈的。
  2. 其次还是要请大家能够多多指出问题,我也会在评论区等候大家!
    在这里插入图片描述 .
  • 41
    点赞
  • 116
    收藏
    觉得还不错? 一键收藏
  • 69
    评论
微程序控制器实验是一种用于教学和研究的实验,旨在让学生和研究人员了解微程序控制器的原理和应用。简单模型是微程序控制器实验中的一种模型,它由微程序控制器、存储器、输入输出接口等组成。 在简单模型中,微程序控制器是整个系统的核心,它负责控制存储器、输入输出接口等设备的工作。微程序控制器的运行过程是通过微指令来实现的,微指令是一种控制信号的集合,用于控制各个设备的工作。 存储器是简单模型中用于存储数据和指令的设备,包括指令存储器和数据存储器。指令存储器用于存储器指令,数据存储器用于存储数据。 输入输出接口是简单模型中用于与外部设备交互的设备,包括输入接口和输出接口。输入接口用于接收外部设备传来的数据,输出接口用于向外部设备发送数据。 在实验中,我们可以通过编写微程序来实现不同的控制功能,例如加减法、乘除法等。通过实验,我们可以深入了解微程序控制器的工作原理和设计方法,为后续的研究和开发奠定基础。 结论:微程序控制器实验是一种很有价值的教学和研究手段,它可以帮助我们深入了解微程序控制器的工作原理和应用,为后续的研究和开发提供基础。简单模型由微程序控制器、存储器、输入输出接口等组成,通过编写微程序来实现不同的控制功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 69
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值