计算机组成原理实验箱教程,计算机组成原理实验(实验箱)

41528d3028836879cd698677c3999917.gif计算机组成原理实验(实验箱)

1 1. A,W 寄存器实验 实验要求:利用 CPTH 实验仪上的 K16K23 开关做为 DBUS 的数据,其它开关做为 控制信号,将数据写入寄存器,这些寄存器包括累加器 A,工作寄存器 W,数据寄存器组 R0R3,地址寄存器 MAR,堆栈寄存器 ST ,输出寄存器 OUT 。实验目的:了解模型机中各种寄存器结构、工作原理及其控制方法。实验电路:寄存器的作用是用于保存数据的,因为我们的模型机是 8 位的,因此在本 模型机中大部寄存器是 8 位的,标志位寄存器(Cy, Z)是二位的。 CPTH 用 74HC574 来构成寄存器。74HC574 的功能如下: 1. 在 CLK 的上升沿将输入端的数据打入到 8 个触发器中 2. 当 OC = 1 时触发器的输出被关闭,当 OC=0 时触发器的输出数据74HC574 工作波形图2 寄存器 A 原理图 寄存器 W 原理图 寄存器 A,W 写工作波形图 连接线表:3 系统清零和手动状态设定:K23-K16 开关置零,按[RST]钮,按[TV/ME]键三次,进入 “Hand“手动状态。 在后面实验中实验模式为手动的操作方法不再详述. 将 55H 写入 A 寄存器 二进制开关 K23-K16 用于 DBUS[7:0]的数据输入,置数据 55H 置控制信号为: 按住 STEP 脉冲键,CK 由高变低,这时寄存器 A 的黄色选择指示灯亮,表明选择 A 寄存器。放开 STEP 键,CK 由低变高,产生一个上升沿,数据 55H 被写入 A 寄存器。 将 66H 写入 W 寄存器 二进制开关 K23-K16 用于 DBUS[7:0]的数据输入,置数据 66H 置控制信号为: 按住 STEP 脉冲键,CK 由高变低,这时寄存器 W 的黄色选择指示灯亮,表明选择 W 寄存器。放开 STEP 键,CK 由低变高,产生一个上升沿,数据 66H 被写入 W 寄存器。 注意观察:1.数据是在放开 STEP 键后改变的,也就是 CK 的上升沿数据被打入。2.WEN ,AEN 为高时,即使 CK 有上升沿,寄存器的数据也不会改变。42. 运算器实验 实验要求:利用 CPTH 实验仪的 K16K23 开关做为 DBUS 数据,其它开关做为控制 信号,将数据写累加器 A 和工作寄存器 W,并用开关控制 ALU 的运算方式,实现运算器 的功能。 实验目的:了解模型机中算术、逻辑运算单元的控制方法。 实验电路:CPTH 中的运算器由一片 CPLD 实现,有 8 种运算,通过 S2 ,S1,S0 来 选择,运算数据由寄存器 A 及寄存器 W 给出,运算结果输出到直通门 D 。 连接线表将 55H 写入 A 寄存器 二进制开关 K23-K16 用于 DBUS[7:0]的数据输入,置数据 55H置控制信号为:按住 STEP 脉冲键,CK 由高变低,这时寄存器 A 的黄色选择指示灯亮,表明选择 A5 寄存器。放开 STEP 键,CK 由低变高,产生一个上升沿,数据 55H 被写入 A 寄存器。 将 33H 写入 W 寄存器 二进制开关 K23-K16 用于 DBUS[7:0]的数据输入,置数据 33H 置控制信号为: 按住 STEP 脉冲键,CK 由高变低,这时寄存器 W 的黄色选择指示灯亮,表明选择 W 寄存器。放开 STEP 键,CK 由低变高,产生一个上升沿,数据 33H 被写入 W 寄存器。 置下表的控制信号,检验运算器的运算结果 注意观察:运算器在加上控制信号及数据(A,W)后,立刻给出结果,不须时钟。63. 数据输出实验/移位门实验 实验要求:利用 CPTH 实验仪的开关做为控制信号,将指定寄存器的内容读到数据总 线 DBUS 上。 实验目的:1、了解模型机中多寄存器接数据总线的实现原理。2、了解运算器中移位功能的实现方法。 实验电路:CPTH 中有 7 个寄存器可以向数据总线输出数据,但在某一特定时刻只能 有一个寄存器输出数据,由 X2 ,X1 ,X0 决定那一个寄存器输出数据。数据输出选择器原理图连接线表7 置下表的控制信号,检验输出结果84. 数据运算实验(加/ 减/ 与/或) 1.在 CPTH 软件中的源程序窗口输入下列程序2.将程序另存为 EX2.ASM ,将程序汇编成机器码,调试窗口会显示出程序地址、机 器码、反汇编指令。3.按快捷图标的 F7,执行“单微指令运行”功能,观察执行每条微指令时,寄存器 的输入/输出状态,各控制信号的状态,PC 及 uPC 如何工作。(见“EX2.ASM 程序跟踪结 果”详细介绍) 4.在了解数据运算的原理,可以加上一些数据传输指令给累加器 A 或寄存器 R?赋值, 再运算,并观察运算结果。 EX2.ASM 程序跟踪结果 程序的开始执行一条取指的微指令,读入程序第一条指令。 ADDC A,R1:本指令为三个状态周期。在 T2 状态,由上次取指操作取出的指令码 为 21H,由 IREN 存入指令寄存器 IR ,最低两位为 01(二进制),选择寄存器 R1,指令码由 于 IREN 打入 uPC 时,忽略掉指令的最低两位,而将 uPC 的最低两位置成 00,uPC 的值为 20H,访问微程序存储器的 20H 单元,读出微指令值为 0FFF7EFH ,有效位为 RRD 及 WEN,就是将 R1 内容送到工作寄存器 W ,uPC 加 1 取出下条微指令在 T1 状态,读出的9 微指令值为 0FFFE94H,有效位为 FEN 和 AEN,FEN 完成的操作是将标志位存入标志寄 存器 F(ALU 内部),X2X1X0 选择“ALU 直通”到数据总线 DBUS,S2S1S0 选择的运算操 作为“带进位的加法运算” ,AEN 将 DBUS 上的数据存入累加器 A 。在 T0 状态,取出下 条将要执行的指令。 SUB A ,@R1:本指令有四个状态周期。在 T3 状态,上次取出的指令码为 35H ,最 低两位用于寻址 R1 寄存器,uPC 的最低两位置 0,来访问 uM 的 34H 单元的微指令,读出 值为 0FF77FFH,将 R1 的值存入 MAR。在 T2 状态,微指令为 0D7BFEFH,表示用 MAR 做为地址从 EM 中读出数据送到 DBUS 再存到 W 中。在 T1 状态微指令为 0FFFE91H ,表 示 ALU 做“减运算” ,其结果直通到 DBUS,再存入中,同时保存标志位。T0 状态为取指 操作。 AND A,#55: 本指令为三个状态周期。在 T2 状态,微指令值为 0C7FFEFH ,表示 以 PC 做为地址,从 EM 中读出数据送到 DBUS ,再将 DBUS 数据存 W 中。在 T1 状态, 微指令为 0FFFE93H,表示 A 和 W 做“逻辑与”运算,结果直通到 DBUS,再存入 A 中, 并保存标志位。 OR A,02:本指令有四个状态周期。在 T3 状态,微指令为 0C77FFFH,表示以 PC 做为地 址,从 EM 中读出数据送到 DBUS,并存 MAR 中。在 T2 状态,微指令为 0D7BFEFH,表 示以 MAR 做为地址,从 EM 中读出数据送到 DB

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值