实验报告一、实验名称运算器实验—算术逻辑运算实验二、实验目的1、了解运算器的组成原理。2、掌握运算器的工作原理。3、掌握简单运算器的数据传送通路。4、验证运算功能发生器(74LS181)的组合功能。三、实验设备TDN-CM++计算机组成原理教学实验系统一套,导线若干。四、实验原理实验中所用的运算器数据通路如图1-1所示。其中两片74LSl81以串行方式构成8位字长的ALU,ALU的输出经过一个三态门(74LS245)和数据总线相连。三态门由ALU-R控制,控制运算器运算的结果能否送往总线,低电平有效。为实现双操作数的运算,ALU的两个数据输入端分别由二个锁存器DR1、DR2(由74LS273实现)锁存数据。要将数据总线上的数据锁存到DRl、DR2中,锁存器的控制端LDDR1和DDR2必须为高电平,同时由T4脉冲到来。数据开关(“INPUTDEVICE)用来给出参与运算的数据,经过三态(74LS245)后送入数据总线,三态门由SW—B控制,低电平有效。数据显示灯(“BUSUNIT)已和数据总线相连,用来显示数据总线上的内容。图中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号外,其它均为电平信号。由于实验电路中的时序信号均已连至“W/RUNIT”的相应时序信号引出端,因此,在进行实验时,只需将“W/RUNIT的T4接至“STATEUNIT”的微动开关KK2的输入端,按动微动开关,即可获得实验所需的单脉冲。ALU运算所需的电平控制信号S3、S2、S1、S0、Cn、M、LDDRl、LDDR2、ALU-B、SW-B均由“SWITCHUNIT”中的二进制数据开关来模拟,其中Cn、ALU—B、SW一B为低电平有效LDDR1、LDDR2为高电平有效。对单总线数据通路,需要分时共享总线,每一时刻只能由一组数据送往总线。五、实验内容1.输入数据通过三态门74LS245后送往数据总线,在数据显示灯和数码显示管LED上显示。2.向DRl(或DR2)中置数,经ALU直传后,经过三态245送入数据总线,在数据显示灯和数码显示管LED上显示3.将输入DRl和DR2中的两个数进行算术逻辑运算,验证AlU的功能,结果在数据显示灯和数码显示管LED上显示。六、实验步骤1、输入数据通过三态门74LS245后经过数据总线在数据显示灯和数码显示管LED上直接显示(1)按下图连接实验线路,仔细查线无误后,接通电源。(2)用二进制数码开关输入数据65H,观察总线数据显示灯和LED灯的变化。设置:○1SW-B=1;○2从输入开关输入:01100101;○3打开三态门SW-B=0;○4数据在数码管上显示:LED-B=0,发W/R脉冲。(3)观察实验结果。2.向DRl(或DR2)中置数,经ALU直传后,经过三态245送入数据总线,在数据显示灯和数码显示管LED上显示。(1)重新连接电路,仔细检查无误之后,接通电源。(2)向DR1和DR2寄存器中置入数据65H和A7H。流程为:1)、用输入开关向寄存器DR1置数。○1使SWITCHUNIT单元中的开关SW-B=1;○2从输入开关输入:01100101(数据显示:灯亮为0,灯不亮为1。下同);○3使开关SW-B=0;○4设置LDDR1=1、LDDR2=0。○5将数据打入DR1[按KK2发F4脉冲],将总线上得数据在数码管上显示:LED-B=0。2)、用输入开关向寄存器DR2置数.。○1使SWITCHUNIT单元中的开关SW-B=1;○2从输入开关输入:10100111;○3使开关SW-B=0;○4设置LDDR1=0、LDDR2=1。○5将数据打入DR2[按KK2发F4脉冲],将总线上得数据在数码管上显示:LED-B=0。(3)、检验输入DR1和DR2寄存器中的数据是否正确。1、关闭三态门:SW-B=1,关闭暂存器的输入:LDDR1=0、LDDR2=0。2、打开ALU输出三态门:ALU-B=0,设置运算器直传形式S3S2S1S0M为11111。3、将总线上的数据在数码管上显示:LED-B=0,发W/R脉冲。4、观察结果(即DR1中的数据)。数据开关(01100101)寄存器DR1(01100101)打开三态门寄存器DR2(10100111)数据开关(10100111)打开三态门5、再次关闭三态门:SW-B=1。打开ALU输出三态门:ALU-B=0。6、设置运算器直传形式S3S2S1S0M为10101。7、将总线上的数据在数码管上显示:LED-B=0,发W/R脉冲。8、观察结果(即DR2中的数据)。3、将输入DR1和DR2中的两个数进行算术逻辑运算,验证ALU的功能,结果在数据显示灯和数码显示管LED上显示。(1)、保持中数据不变,若不知道中是否有数据,可按实验步骤2中得(3)去检查。(2)通过“SWITCHUNIT”改变开关S3,S2,S1,S0,Cn,M的值,可将两数进行不同的运算。例如:设置S3S2S1S0CnM=10010,运算器进行加法运算,设置S3S2S1S0CnM=01100,运算器进行减法运算。最后根据运算结果填写下表:DR1DR2S3S2S1S0M=0(算术运算)M=1(逻辑运算)Cn=1无进位Cn=0有进位656565A7A7A70000000100100011010001010110011110001001101010111100110111101111F=(65)F=(E7)F=(7D)F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=(66)F=(E8)F=(7E)F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=(9A)F=(18)F=(82)F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()F=()七、实验结果1、在实验步骤1第(3)步观察到的结果是亮、暗、暗、亮、亮、暗、亮、暗,即运算器最后存储的数据是01100101,即LED显示为65;2、在实验步骤2第(3)步观察到的结果是亮、暗、暗、亮、亮、暗、亮、暗,即运算器最后存储的数据是01100101,即LED显示为65;3、在实验步骤2第(3)步观察到的结果是暗、亮、暗、亮、亮、暗、暗、暗,即运算器最后存储的数据是10100111,即LED显示为A7;4、步骤3中的运算结果如下:DR1DR2S3S2S1S0M=0(算术运算)M=1(逻辑运算)Cn=1无进位Cn=0有进位656565A7A7A70000000100100011010001010110011110001001101010111100110111101111F=(65)F=(E7)F=(7D)F=(FF)F=(A5)F=(27)F=(BD)F=(3F)F=(8A)F=(0C)F=(4C)F=(24)F=(CA)F=(4C)F=(E2)F=(64)F=(66)F=(E8)F=(7E)F=(00)F=(A6)F=(28)F=(BE)F=(40)F=(8B)F=(0D)F=(AD)F=(25)F=(CB)F=(4D)F=(E3)F=(65)F=(9A)F=(18)F=(82)F=(00)F=(dA)F=(58)F=(C2)F=(4D)F=(BF)F=(3D)F=(7D)F=(25)F=(FF)F=(7D)F=(E7)F=(65)八、小结通过这次实验,我明白了要很好的完成实验首先一定要注意线路的连接,需要对应的要一一对应。我掌握了算术逻辑运算器单元ALU(74LS181)的工作原理,并熟悉了怎样输入输出数据和验算由74LS181等组合逻辑思电路的运算功能发生器运算功能等实验步骤和要求。