计组实验报告4.docx
- 文档编号:14630199
- 上传时间:2023-06-25
- 格式:DOCX
- 页数:21
- 大小:270.24KB
计组实验报告4.docx
《计组实验报告4.docx》由会员分享,可在线阅读,更多相关《计组实验报告4.docx(21页珍藏版)》请在冰点文库上搜索。
计组实验报告4
《计算机组成原理》实验报告
实验名称运算器实验、通用寄存器实验、移位寄存器实验
实验一运算器实验
一、实验目的
1.掌握简单运算器的数据传输方式。
2.验证运算器功能发生器(74LS181)及进位控制的功能组合。
二、实验要求
完成不带进位及带进位算术运算实验、逻辑运算实验,了解算术逻辑运算单元的运用。
三、实验原理
图1-1-1运算器电原理
实验中所用的运算器通路如图7-1-1所示,其中运算器有两片74LS181以并/串形式构成8位字的ALU。
运算器的输出经过一个三态门(74LS245)以8芯扁平线方式和数据总线相连,运算器的2个数据输入端分别由两个锁存器(74LS273)锁存,锁存器的输入亦以8芯扁平线方式与数据总线相连,数据开关(INPUTDEVICE)用来给出参与运算的数据,经一三态门(74LS245)以8芯扁平线方式与数据总线相连,数据显示灯(BUSUNIT)已和数据总线相连,用来娴熟数据总线内容。
图1-1-1中T2、T4为时序电路产生的节拍脉冲信号,通过连接时序启停单元时钟信号来获得,剩余均为电平控制信号。
进行试验时,首先按动位于本实验装置右中侧的复位按钮使系统进入初始待令状态,在LED显示器闪动位出现“P.”的状态下,按【增址】命令键使LED显示器自左向右第四位切换到提示符“L”,表示本装置已进入手动单元实验状态,在该状态下按动【单步】命令键,即可获得实验中所需的单脉冲信号,而LDDR1,LDDR2,ALU-B、SW-B、S3、S2、S1、S0、CN、M各电平控制信号用位于LED显示器上方的26位二进制开关来模拟,均为高电平有效。
四、实验连线
图1-1-2
按上图所示,连接实验电路:
控制线于控制信号“
”连接:
用双头实验导线连接上图中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号以作内部连接)。
五、实验系统工作状态设定
在闪动的“P.”状态下按动命令键,使LED显示器自左向右第四位显示提示符“L”,表示本装置已进入手动单元实验状态。
在“L”状态下,如下图所示系统用位于实验系统“”二进制开关单元26只拨动开关模拟与微控制器相对应的控制信号。
用手动加载正逻辑控制电平(即高电平信号“H”)和按【单步】命令键产生的单周期4拍时序启停信号T1、T2、T3、T4的方法实现和完成个单元实验所需的控制信号操作。
六、实验内容及结果分析
(一).算术运算实验
(1)写操作(置数操作)
拨动二进制数据开关向DR1和DR2寄存器置数,具体操作步骤如下:
(2)读操作(运算寄存器内容送总线)
首先关闭数据输入三态控制端(SW-B=0),存储器控制端CE保持为0,令LDDR1=0,LDDR2=0,然后打开ALU输出三态门(CBA=010),置M,S0,S1,S2,S3为11111,再按【单步】键,数据总线单元显示DR1的内容。
把M,S0,S1,S2,S3置为10101,再按【单步】键,数据总线单元显示DR,2的内容。
(3)算术运算(不带进位加)
置CBA=010,CN,M,S0,S1,S2,S3状态为101001,按【单步】键,此时数据总线单元应显示00001100(0CH)。
结果分析:
(1)当SW-B=1时,三态门打开。
使得LDDR1=1,LDDR2=0,按单步建,此时,数据开关设置的二进制数01100101以(65H)存入DR1中,数据开关重新设置二进制数10100111,使得LDDRQ=0,LDDR2=1,按单步建,此时,设置的数以(A7)写入DR2寄存器中,完成了写操作。
(2)当SW-B=0时,数据输入关闭;M=1时为逻辑运算,S0,S1,S2,S3状态为1111时,F=DR1。
M=1,S0,S1,S2,S3置为10101,F=DR2。
(3)M=0时为算数运算;CN=1时为不带进位加;S0,S1,S2,S3状态为1001时,F=DR1+DR2=01100101+10100111=0CH
(二)进位控制实验
进位控制运算器的实验原理如图所示,其中181的进位位进入71LS74锁存器D端,该端的状态锁存受AR和T4信号控制,其中AR为进位位允许信号,高电平有效;T4为时序脉冲信号,当AR=1时在T4节拍将本次运算的进位结果锁存到进位锁存器中,实现带进位控制实验。
(1)进位位清零操作
在“L”状态下,按动【复位】按钮,进位标志灯CY“灭”,实现对进位位的清零操作。
(当进位标志灯“亮”时,表示CY=1)。
(2)用二进制数据开关向DR1和DR2寄存器置数
首先关闭ALU输出三态门(CBA=000)、CE=0,开启输入三态门(SW-B=1),设置数据开关,向DR1中存入01010101(55H),向DR2中存入10101010(AAH)。
操作步骤如下:
(3)验证带进位运算的进位锁存功能
关闭数据输出三态门(SW-B=0)、CE=0、使CBA=000,AR=1,置CN,M,,SO,S1,S2,S3的状态为101001,按【单步】键,此时数据总线单元显示的数据为DR1加DR2,若进位标志灯CY“亮”,表示有进位;反之无进位。
结果分析:
(1)在“L”状态下,按动【复位】按钮,结果进位标志灯CY显示灯“灭”,表示没有进位。
(2)SW-B=1,设置数据开关,,此时,分别在DR1、DR2中写入数据(55H)和(AAH)。
(3分别在DR1、DR2中写入数据(55H)和(AAH)相加得到(FFH),即01010101+10101010=11111111,结果应该是没有进位的,CY显示灯为“灭”。
【在本次实验中,我们为了验证相加后会有进位也就是试验使得CY显示灯“亮”,重新设置了两个二进制数00000001和11111111,分别写入DR1和DR2,进行验证,结果显示CY灯“亮”,有进位】)
(三)逻辑运算实验
(1)写操作(置数操作)
拨动二进制数据开关向DR1和DR2寄存器置数,具体操作步骤如下:
(2)读操作(运算寄存器内容送总线)
首先关闭数据输入三态门控制端(SW-B=0),存储控制端CE保持为0,令LDDR1=0,LDDR2=0,然后打开ALU输出三态门(CBA=010),置M,S0,S1,S2,S3为11111,再按【单步】键,数据总线单元显示DR1的内容,若把M,S0,S1,S2,S3置为10101,再按【单步】键,数据总线单元显示DR2的内容。
(3)逻辑或非运算
逻辑或非运算的方法是置CBA=000,M,S0,S1,S2,S3状态为11000,按【单步】键,此时数据总线单元应显示00011000(18H)。
结果分析:
(1)拨动二进制数据开关向DR1和DR2寄存器置数,并将01100101和10100111分别写入DR1,DR2中。
(2)M=1,S0、S1、S2、S3分别为1111,此时,DR1中显示(65H);M=1,S0、S1、S2、S3分别为0101,此时,DR2中显示(A7H)。
(3)将01100101和10100111按位或非运算得到00011000,此时,数据总线单元显示(18H)。
七、实验思考
验证74LS181的算术逻辑运算:
在给定DR1=65、DR2=A7的情况下,改变运算器的功能设置,按【单步】建,观察运算器的输出,填入下页表格中,并和理论分析进行验证、比较。
DR1
DR2
S3S2S1S0
M=0(算术运算)
M=1(逻辑运算)
Cn=1(无进位)
Cn=0(有进位)
65
A7
0000
F=(65)
F=(66)
F=(9A)
65
A7
0001
F=(E7)
F=(E8)
F=(18)
65
A7
0010
F=(7D)
F=(7E)
F=(82)
65
A7
0011
F=(FF)
F=(00)
F=(00)
65
A7
0100
F=(A5)
F=(A6)
F=(DA)
65
A7
0101
F=(27)
F=(28)
F=(58)
65
A7
0110
F=(BD)
F=(BE)
F=(C2)
65
A7
0111
F=(3F)
F=(40)
F=(4D)
65
A7
1000
F=(8A)
F=(8B)
F=(BF)
65
A7
1001
F=(0C)
F=(0D)
F=(3D)
65
A7
1010
F=(A2)
F=(A3)
F=(A7)
65
A7
1011
F=(24)
F=(25)
F=(25)
65
A7
1100
F=(CA)
F=(CB)
F=(FF)
65
A7
1101
F=(4C)
F=(4D)
F=(7D)
65
A7
1110
F=(E2)
F=(E3)
F=(E7)
65
A7
1111
F=(64)
F=(65)
F=(65)
图1-1-3
分析:
74LS181逻辑功能表
方式
M=1
逻辑运算
M=0算术运算
S0S1S2S3
CN=1(无进位)
CN=0(有进位)
0000
F=/A
F=A
F=A加1
1000
F=/(A+B)
F=A+B
F=(A+B)加1
0100
F=/AB
F=A+/B
F=(A+/B)加1
1100
F=0
F=减1(2的补)
F=0
0010
F=/(AB)
F=A加A/B
F=A加A加1
1010
F=/B
F=(A+B)加A/B
F=(A+B)加A/B加1
0110
F=A
B
F=A减B减1
F=A减B
1110
F=A/B
F=A/B减1
F=A/B
0001
F=/A+B
F=A加AB
F=A加AB加1
1001
F=/(A
B
F=A加B
F=A加B加1
0101
F=B
F=(A+/B)加AB
F=(A+/B)加AB加11
1101
F=AB
F=AB减1
F=AB
0011
F=1
F=A加A
F=A加A加1
1011
F=A+/B
F=(A+B)加A
F=(A+B)加A加1
0111
F=A+B
F=(A+/B)加A
F=(A+/B)加A加1
1111
F=A
F=A减1
F=A
图1-1-4
(1)当M=1时,为逻辑运算。
其运算规律完全按照74LS181的逻辑功能表运算。
结果一致。
例如:
当S0S1S2S3=1000时,
M=1时,F=/(A+B)=/(01100101+10100111)=00011000=(18H);
M=0时,Cn=1(无进位),F=(A+B)=11100111=(E7);
Cn=0(有进位),F=(A+B)加1=(E8H)。
(2)当M=0时,为算术运算。
M=0,CN=1时,总比M=0,CN=0时的结果大1;M=0时,随着S0、S1、S2、S3依次增加1,F是一个周期为16的运算,。
八、实验总结
(1)不断的在实验中摸索,了解了某些运算单元的功能,并能进行简单的应用。
(2)实验中会有疑问,所以在进位加法时多做了一个试验,验证了有进位时,CY显示灯会“亮”。
没有进位时,灯会“灭”。
(3)在“验证带进位运算的进位锁存功能”实验中,发现除要求的开关外,其余均为0,因为在实验过程中,沿用上一次的开关设置(即0,1),使得结果发生了改变。
(4)【单步】命令键,就是给的脉冲信号,就是改变和实验的口令。
【复位】键和【返回】键相当于重新开始。
实验都为手动实验,所以在一开始就应按【增址】键,使得LED显示灯自左向右第四位为提示符“L”。
前两位一直保持“DY”。
数据开关中的现实数据以拨动的数据为准。
(5)实验是对理论的进一步熟悉、了解和掌握,实验过程中提高了动手能力,也增加了对实验及对本课程的兴趣。
为下一步更好,更深入的学习打好基础。
实验二通用寄存器实验
一、实验目的
1.熟悉通用寄存器概念。
2.熟悉通用寄存器的组成和硬件电路。
二、实验要求
完成3个通用寄存器的数据写入与读出。
三、实验原理
图2-1-1通用寄存器单元电路
C
B
A
选择
1
0
0
R0-B
1
0
1
R1-B
1
1
0
R2-B
图2-1-2通用寄存器单元选通真值表
试验中所用的通用寄存器数据通路如上图所示。
由三片8位字长的74LS374组成R0,R1,R2寄存器组成。
三个寄存器的输出接口用以8芯片BUS总线接口,而三个寄存器的输出接口用一8芯片扁平连线连至BUS总线接口。
图中R0-B,R1-B,R2-B经CBA二进制控制开关译码产生数据输出选通信号。
LDR0,LDR1,LDR2为数据写入允许信号,有二进制控制开关模拟,均为高电平有效;T4信号为寄存器数据写入脉冲,上升沿有效。
在手动试验状态(即“L”状态)每按动一次【单步】键,产生一次T4信号。
四、实验连线
图2-1-3
按上图所示,连接实验电路:
控制线与控制信号“
”连接:
用双头实验导线连接上图中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号以作内部连接)
五.实验内容及结果分析
(一)通用寄存器的写入
拨动二进制数据开关向R0和R1寄存器置数,具体操作步骤如下:
结果分析:
数据开关拨动的值为00000001,在寄存器单元中,R0=(01H);数据开关拨动的值为10000000,在寄存器单元中,R1=(80H)。
此时,数据存入R0、R1中。
(二)通用寄存器的读出
关闭数据输入三态门(SW-B=0),存储器控制端CE=0,令LDR0=0,LDR1=0,LDR2=0,分别打开通用寄存器,R0,R1,,R2输出控制位,置CBA=100时,按【单步】键,数据总线单元显示R0中的数据01H;置CBA=101时,按【单步】键。
数据总线单元显示R1中的数据80H;置CBA=110时,按【单步】键,数据总线单元显示R2中的数据(随机)。
结果分析:
CBA=100,时,按【单步建】,数据总线上显示为(01H),CBA=101时,按【单步建】,数据总线上显示和R1一样的数(80H)。
六.实验总结
(1)通用寄存器R0、R1、R2,分别对应不同的CBA,置CBA=100时,按【单步】键,数据总线单元显示R0中的数据;置CBA=101时,按【单步】键。
数据总线单元显示R1中的数据;置CBA=110时,按【单步】键,数据总线单元显示R2中的数据。
(2)写入数据时,SW-B=1,其余均为0;读出数据时。
设置CBA,其余均为0.【单步建】是脉冲信号。
(3)通过实验熟悉了通用寄存器的概念,了解了通用寄存器的组成和硬件电路。
基本上,达到了实验的目的。
实验三移位寄存器实验
一、实验目的
1.了解移位寄存器的硬件电路,验证移位控制与寄存的组合功能。
2.利用寄存器进行数据传输。
二、实验要求
实现寄存移位操作,了解通用寄存器的运用。
三、实验原理
图3-1-1
上图所示,使用了一片74LS299作为移位发生器,其中8位输入/输出端以8芯扁平线连接形式和总线接口连接。
299-B信号控制使能端(0有效),T4为时序节拍脉冲,实验时按【单步】键产生。
由S0,S1,M控制信号设置其运行状态,其控制特性表如下:
299-B
S1
S2
M
功能
0
0
0
任意
保持
0
1
0
0
循环右移
0
1
0
1
带进位循环右移
0
0
1
0
循环左移
0
0
1
1
带进位循环左移
任意
1
1
任意
装数
图3-1-2
四、实验连线
图3-1-3
按上图所示,连接实验电路:
控制线于控制信号“
”连接:
用双头实验导线连接上图中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号以作内部连接)。
五.实验内容及结果分析
(一)移位寄存器置数
首先置CBA=000,然后按下面所列流程图操作:
拨动二进制数据开关向R0寄存器置数,具体操作步骤如下:
结果分析:
SW-B=1,S0=1,S1=1,按【单步建】,此时,已将数据开关上的数写入移位寄存器中,根据表7-2-1,
当CBA=011(299-B=0),SW-B=0,CE=0时,
令S1=0,S0=0,M任意时,数据保持,F=65H;
令S1=1,S0=0,M=0时,数据循环右移,F=B2H;
令S1=1,S0=0,M=1时,数据带进位循环右移,F=59H;
令S0=0,S1=1,M=0时,数据循环左移,F=B2H;
令S0=0,S1=1,M=1时,数据带进位循环左移,F=64H。
(二)寄存器移位
首先置CBA=011(299-B=0),SW-B=0,CE=0,然后参照表7-2-1改变S0,S1,M的状态,按动【单步】键观察移位结果。
结果分析:
当SW-B=0,CBA=011,S0=0,S1=0时,令LDR0=1,按【单步】键后可将移位结果保存到R0中。
(四)移位结果的读出
置CBA=100,SW-B=0,CE=0,按【单步】键,数据总线单元显示寄存器的内容,该内容应与移位寄存器的内容一致。
结果分析:
当SW-B=0,CBA=100,CE=0时,数据总线上显示R0的值
六.实验总结
(1)实验中,了解移位寄存器的硬件电路,验证移位控制与寄存的组合功能。
利用寄存器进行数据传输。
(2)在“寄存器移位”实验中,理解了循环右/左移,带进位循环右/左移。
在这个实验中,由于在带进位循环左移之后,又马虎的进行了一次左移,导致实验结果错误,最终,在老师的提醒下,找到了原因。
(3)寄存与读出,均为简单的操作,有数据总线来传达读出的数据。
(4)在以上所有的实验中,只是简单的了解,实验只是验证的过程,并没有对其原理有深刻的体会,是课后的学习不到位,需要改进,但确实学习到了不同的知识,也挺有很多乐趣。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 报告