1
计算机组成原理课程实验报告
9.5 数据通路实验
姓 名: 曾国江 学 号: 系 别: 计算机工程学院 班 级: 网络工程1班 指导老师: 完成时间: 评语:
得分:
1
曾国江—计算机组成原理实验报告
一、实验类型
本实验类型为验证型+分析型+设计型
2
二、实验目的
1.进一步熟悉计算机的数据通路
2.将双端口通用寄存器堆和双端口存储器模块连接,构成新的数据通路. 3.掌握数字逻辑电路中的一般规律,以及排除故障的一般原则和方法.
4.锻炼分析问题和解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除 故障.
三、实验设备
1、TEC-5实验系统 一台 2、双踪示波器 一台 3、逻辑测试笔 一支
四、实验电路
2
曾国江—计算机组成原理实验报告
数据通路实验电路图如图9.7所示。它是将双端口存储器模块和双端口通用寄存器堆模块连接在一起形成的。存储器的指令端口(右端口)不参与本次实验。通用寄存器堆连接运算器模块,本次实验涉及其中的DRl。
由于双端口存储器是三态输出,因而可以直接连接到DBUS上。此外,DBUS还连接着通用寄存器堆。这样,写入存储器的数据由通用寄存器提供,从RAM中读出的数据也可以放到通用寄存器堆中保存。
本实验的各模块在以前的实验中都已介绍,请参阅前面相关章节。注意实验中的控制信号与模拟它们的开关K0~K15的连接。
3
五、实验任务
1、将实验电路与控制台的有关信号进行连接。
2、用8位数据开关SW7-SW0向RF中的四个通用寄存器分别置入以下数据:RO=0FH,R1=0F0H,R2=55H,R3=0AAH。
3、用8位数据开关向AR送入地址0FH,然后将R0中的数据0FH写入双端口存储器中.用同样的方法,依次将R1,R2,R3中的数据分别置入RAM的0F0H,55H,0AAH单元. 4、分别将RAM的0AAH单元数据写入R0,55H单元数据写入R1,0F0H单元数据写入R2,0FH单元数据写入R3.然后将R0-R3中的数据读出,验证数据的正确性,并记录数据.
六、实验要求
1、做好实验预习,掌握实验电路的数据通路特点和通用寄存器堆的功能特性和使用方法。
2、写出实验报告,内容是: (1)实验目的。
(2)写出详细的实验步骤、记录实验数据及校验结果。 (3)其他值得讨论的问题。
3
曾国江—计算机组成原理实验报告
七、实验步骤和实验结果
实验步骤(一)——向RF中的四个通用寄存器分别置入数据如下数据: R0=OFH, R1=0F0H, R2=55H, R3=0AAH.
首先将DP开关置1,DB开关置0,编程开关打到正常。
控制台的有关信号线路连接如下所示:
数据通路 SW-BUS# LDRi 电平开关 K0 K1 WR0 K2 WR1 K3 RD0 K4 RD1 K5 RS-BUS# LDAR# K6 K7 RS0 K8 4
数据通路 电平开关 RS1 K9 CEL# K10 LR/W# RAM-BUS# LDDR1 ALU-BUS# K11 K12 K13 K14 M GND S0 GND S1 GND
数据通路 电平开关 S2 GND S3 GND Cn# VCC CER# VCC
向RF中的四个通用寄存器分别置入数据R0=OFH, R1=0F0H, R2=55H, R3=0AAH. 控制银角的连线和开关设置如下:
数据通路 SW-BUS# LDRi WR0 WR1 RS-BUS# 电平开关 K0 K1 K2 K3 K6 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 K10 K11 K12 K13 4
K14
曾国江—计算机组成原理实验报告
电平 0 1 0 0 1 1 1 0 1 0 1 5
1、将数据0FH置入到通用寄存器R0中
拨动SW7-SW0开关,设置输入的数据0FH,如下所示:
SW7 0 SW6 0 SW5 0 SW4 0 SW3 1 SW2 1 SW1 1 SW0 1 按QD,数据0FH已经写入到了通用寄存器R0中
同理,将数据0F0H, 55H, 0AAH分别写入到通用寄存器R1、R2、R3中的操作与上述类似,其中开关K2、K3的作用是用来选择RO~R3之中的一个寄存器。
在本实验中,K2=0,K3=0表示选择了寄存器R0,K2=1,K3=0表示选择了寄存器R1,K2=0,K3=1表示选择了寄存器R2,K2=1,K3=1表示选择了寄存器R3,只要改变K2和K3的电平与SW7-SW0开关即可。
实验步骤(二)——用8位数据开关向AR送入地址,然后将数据写入双端口存储器中 1、向地址寄存器AR送入地址0FH,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# 电平开关 电平 K0 0 K1 0 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 0 K10 1 K11 0 K12 1 K13 0 K14 1
拨动SW7-SW0开关,设置输入的地址0FH,如下所示:
SW7 0 SW6 0 SW5 0 SW4 0 SW3 1 SW2 1 SW1 1 SW0 1 按QD,地址0FH将写入到地址寄存器AR中 将数据0FH写入到双端口存储器中
将寄存器R0中的数据0FH写入到双端口存储器RAM中的0FH单元中,拨动数据通路开关
如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 0 K4 0 K5 0 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 0 K12 0 K13 1 5
K14 0 曾国江—计算机组成原理实验报告
按动QD,寄存器R0中的数据0FH已经写入到双端口存储器RAM中的0FH单元中 DBUS显示情况: 0000 1111
2、向地址寄存器AR送入地址0F0H,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# 电平开关 电平 K0 0 K1 0 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 0 K10 1 K11 0 K12 1 K13 0 K14 1 6
拨动SW7-SW0开关,设置输入的地址0F0H,如下所示:
SW7 1 SW6 1 SW5 1 SW4 1 SW3 0 SW2 0 SW1 0 SW0 0 按QD,地址0F0H将写入到地址寄存器AR中
将数据0F0H写入到双端口存储器中
将寄存器R1中的数据0F0H写入到双端口存储器RAM中的0F0H单元中,拨动数据通路开
关如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 0 K4 1 K5 0 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 0 K12 0 K13 1 K14 0 按动QD,寄存器R1中的数据0F0H已经写入到双端口存储器RAM中的0F0H单元中 DBUS显示情况: 1111 0000
3、向地址寄存器AR送入地址55H,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# 电平开关 电平 K0 0 K1 0 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 0 K10 1 K11 0 K12 1 K13 0 K14 1
拨动SW7-SW0开关,设置输入的地址55H,如下所示:
SW7 0
SW6 1 SW5 0 SW4 1 SW3 0 SW2 1 SW1 0 SW0 1 6
曾国江—计算机组成原理实验报告
按QD,地址55H将写入到地址寄存器AR中
将数据55H写入到双端口存储器中
将寄存器R2中的数据55H写入到双端口存储器RAM中的55H单元中,拨动数据通路开 关如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 0 K4 0 K5 1 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 0 K12 0 K13 1 K14 0 7
按动QD,寄存器R2中的数据55H已经写入到双端口存储器RAM中的55H单元中 DBUS显示情况: 0101 0101
4、向地址寄存器AR送入地址0AAH,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# 电平开关 电平 K0 0 K1 0 K6 1
LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 0 K10 1 K11 0 K12 1 K13 0 K14 1
拨动SW7-SW0开关,设置输入的地址0AAH,如下所示:
SW7 1 SW6 0 SW5 1 SW4 0 SW3 1 SW2 0 SW1 1 SW0 0 按QD,地址0AAH将写入到地址寄存器AR中
将数据0AAH写入到双端口存储器中
将寄存器R3中的数据0AAH写入到双端口存储器RAM中的0AAH单元中,拨动数据通路 开关如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 0 K4 1 K5 1 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 0 K12 0 K13 1 K14 0 按动QD,寄存器R3中的数据0AAH已经写入到双端口存储器RAM中的0AAH单元中 DBUS显示情况: 1010 1010
7
曾国江—计算机组成原理实验报告
实验步骤(三)——将双端口存储器RAM中的数据写入到通用寄存器RF中 1、将RAM的0AAH单元数据写入RO
选择AR中的0AAH地址单元,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# 电平开关 电平 K0 0 K1 0 K6 1 K7 0 CEL# RAM-BUS# LDDR1 ALU-BUS# K10 1 K12 1 K13 0 K14 1 8
拨动SW7-SW0开关,设置输入的地址0AAH,如下所示:
SW7 1 SW6 0 SW5 1 SW4 0 SW3 1 SW2 0 SW1 1 SW0 0 按QD
将0AAH单元数据写入R0,拨动数据通路开关如下:
数据通SW-BUS# LDRi RD0 RD1 RS-BUS# LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# 路 电平开关 电平 K0 1 K1 1 K4 0 K5 0 K6 1 K7 1 K10 0 K11 1 K12 0 K13 0 K14 1 按QD,0AAH单元中的数据0AAH已经写入R0中,DBUS显示情况: 1010 1010
2、将RAM的55H单元数据写入R1
选择AR中的55H地址单元,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# 电平开关 电平 K0 0 K1 0 K6 1 K7 0 CEL# RAM-BUS# LDDR1 ALU-BUS# K10 1 K12 1 K13 0 K14 1 拨动SW7-SW0开关,设置输入的地址55H,如下所示:
SW7 0 SW6 1 SW5 0 SW4 1 SW3 0 SW2 1 SW1 0 SW0 1 按QD
8
曾国江—计算机组成原理实验报告
将55H单元数据写入R1,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 1 K2 1 K3 0 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 1 K12 0 K13 0 K14 1 9
按QD,55H单元中的数据55H已经写入R1中,DBUS显示情况: 0101 0101
3、将RAM的0F0H单元数据写入R2
选择AR中的0F0H地址单元,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# 电平开关 电平 K0 0 K1 0 K6 1 K7 0 CEL# RAM-BUS# LDDR1 ALU-BUS# K10 1 K12 1 K13 0 K14 1 拨动SW7-SW0开关,设置输入的地址0F0H,如下所示:
SW7 1 SW6 1 SW5 1 SW4 1 SW3 0 SW2 0 SW1 0 SW0 0 按QD
将0F0H单元数据写入R2,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 1 K2 0 K3 1 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 1 K12 0 K13 0 K14 1 0F0H已经写入R2中,DBUS显示情况: 1111 0000
4、将RAM的0FH单元数据写入R3
选择AR中的0FH地址单元,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# 电平开关 电平 K0 0 K1 0 K6 1 K7 0 CEL# RAM-BUS# LDDR1 ALU-BUS# K10 1 K12 1 K13 0 K14 1 9
曾国江—计算机组成原理实验报告
拨动SW7-SW0开关,设置输入的地址0FH,如下所示:
SW7 0 SW6 0 SW5 0 SW4 0 SW3 1 SW2 1 SW1 1 SW0 1 10
按QD
将0FH单元数据写入R3,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RD0 RD1 RS-BUS# 电平开关 电平 K0 1 K1 1 K2 1 K3 1 K6 1 LDAR# CEL# LR/W# RAM-BUS# LDDR1 ALU-BUS# K7 1 K10 0 K11 1 K12 0 K13 0 K14 1 按QD,0F0H单元中的数据0F0H已经写入R3中,DBUS显示情况: 0000 1111
实验步骤(四)——验证R0~R3中的数据
在理论上,R0=1010 1010, R1=0101 0101, R2=1111 0000 ,R3=0000 1111
查看R0中的数据,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# RS0 RS1 电平开关 电平 K0 1 K1 0 K6 0 K7 1 K8 0 K9 0 CEL# K10 1 RAM-BUS# K12 1 LDDR1 K13 0 ALU-BUS# K14 1 DBUS显示情况: 1010 1010 如下图所示
10
曾国江—计算机组成原理实验报告
11
查看R1中的数据,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# RS0 RS1 电平开关 电平 K0 1 K1 0 K6 0 K7 1 K8 1 K9 0 CEL# K10 1 RAM-BUS# K12 1 LDDR1 K13 0 ALU-BUS# K14 1 DBUS显示情况: 0101 0101 如下图所示
查看R2中的数据,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# RS0 RS1 电平开关 电平 K0 1 K1 0 K6 0 K7 1 K8 0 K9 1 CEL# K10 1 RAM-BUS# K12 1 LDDR1 K13 0 ALU-BUS# K14 1 11
曾国江—计算机组成原理实验报告
DBUS显示情况: 1111 0000 如下图所示
12
查看R3中的数据,拨动数据通路开关如下:
数据通路 SW-BUS# LDRi RS-BUS# LDAR# RS0 RS1 电平开关 电平 K0 1 K1 0 K6 0 K7 1 K8 1 K9 1 CEL# K10 1 RAM-BUS# K12 1 LDDR1 K13 0 ALU-BUS# K14 1 DBUS显示情况: 0000 1111 如下图所示
八、实验分析
在第一次做完实验后,我们开始验证R0~R3中的数据,结果4个寄存器中的数据都与理论上的数据不一样,说明在实验操作过程中,有地方出现错误了。后来,我们将预习报告中的实验过程全部都检查了一遍,结果发现
12
曾国江—计算机组成原理实验报告
有地方出错。当我们开始把数据从寄存器R0~R3一个一个写入双端口存储器时,由于粗心,没有将控制端RS-BUS#关闭,因此在开始把数据从寄存器写入到双端口存储器时,RS-BUS#与RAM-BUS#发送冲突,导致数据不能正确的从存储器写入到寄存器中。后来我们做第二遍实验,把RS-BUS#设置为无效,即使RS-BUS#=1,我们的最后实验验证才正确。
九、实验总结
通过本次实验,我们进一步熟悉计算机的数据通路,同时也锻炼了分析问题与解决问题的能力。在经过三次实验课后,现在我们已经完全能自己看图做实验了,并且对实验电路图中各个控制端口的功能都已经十分熟悉了。
通过三次实验课,我们发现,在电路图的各控制端口旁表上控制开关,不仅能有效的提高实验操作效率,而且还能使我们的思路保持清晰。尤其是在本次实验,从一开始就要将全部控制银角接上,没有清晰的思路,很容易就会犯错误,当然,在实验前,我们都已经将实验步骤事先写好,虽然有些错误,但我们在实验过程中一个一个的将它们改正了过来。
参考文献:计算机硬件基础实验教材(第二版)-清华大学出版社
13
13
因篇幅问题不能全部显示,请点此查看更多更全内容