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