1、is图1-1 (b) GAL芯片进位控制电路算术逻辑单元 ALU是由两片74LS181构成。74LS181的功能控制条件由 S3、S2、S1、SO、M、Cn决定。高电平工作方式 74LS181的功能、管脚分配和引出端功能符号详见表1-1、图1-2和表1-2。两片74LS273构成两个八位数据暂存器,运算器的输出采用三态门 74LS244。它们的管脚分配和引出端功能符号详见图 1-3和图1-4。74LS181功能表见表1 1,其中符号“ + ”表示逻辑“或”运算,符号“ * ”表示 逻辑“与”运算,符号“ /”表示逻辑“非”运算,符号“加”表示算术加运算,符号减”表示算术减运算。选择M=1逻辑操
2、作M=0 算术操作S3 S2 S1 SOCn=1 (无进位)Cn=0 (有进位)0 0 0 0F=/AF=AF=A 加 10 0 0 1F=/(A+B)F=A+BF=(A+B)加 10 0 1 0F=/A*BF=A+/BF=(A+/B)加 10 0 1 1F=0F=M 1(2 的补)0 1 0 0F=/(A*B)F=A 加 A*/BF=A 加 A*/B 加 10 1 0 1F=/BF=(A+B)加 A*/BF=(A+B)加 A*/B 加 10 1 1 0F=(/A*B+A*/B)F=A减B减1F=A 减 B0 1 1 1F=A*/BF=A*/B 减 11 0 0 0F=/A+BF=A 加 A*
3、BF=A 加 A *B 加 11 0 0 1F=/(/A*B+A*/B)F=A 加 BF=A 力口 B 力口 11 0 1 0F=BF=(A+/B)加 A*BF=(A+/B)加 A*B 加 11 0 1 1F=A*BF=A*B 减 11 1 0 0F=1F=A 加 AF=A加A加11 1 0 1F=(A+B)加 AF=(A+B)加 A 加 11 1 1 0F=(A+/B)加 AF=(A+/B)加 A 加 11 1 1 1F=A 减 1-rqdd qqddqd-c 11223344 NG表1-1 74LS181功能表五、工作原理:运算器的结构框图见图 1-5 :数据总线(D.BU S)算术逻辑单
4、元 ALU是运算器的核心。集成电路 74LS181是4位运算器,两片74LS181以并/串形式构成 8位运算器。它可以对两个八位二进制数进行多种算术或逻辑运算,74LS181有高电平和低电平两种工作方式,高电平方式采用原码输入输出,低 电平方式采用反码输入输出,这里采用高电平方式。三态门74LS244作为输出缓冲器由 ALU-G信号控制,ALU-G为“ 0”时,三态门 开通,此时其输出等于其输入; ALU-G为“1”时,三态门关闭,此时其输出呈高阻。两片74LS273作为两个八位数据暂存器,其控制信号分别为 LDR1和LDR2,当LDR1和LDR2为高电平有效时,在 T4脉冲的前沿,总线上的数
5、据被送入暂存器保存。六、实验内容:验证74LS181运算器的逻辑运算功能和算术运算功能。七、实验步骤:I、单片机键盘操作方式实验注:在进行单片机键盘控制实验时,必须把开关 K4置于“ OFF ”状态,否则系统处于自锁状态,无法进行实验。1.实验连线(键盘实验):实验连线图如图1 - 6所示。(连线时应按如下方法:对于横排座,应使排线插头上的箭头面向自己插在横排座上; 对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。)图1-6 实验一键盘实验连线图2.实验过程:在监控指示灯滚动显示【CLASS SELECt】时按【实验选择】键,显示【 ES-_ _】输入01或1,按【确认】键,监控指示灯显
6、示为【 ES01】,表示准备进入实验一程 序,也可按【取消】键来取消上一步操作,重新输入。再按【确认】键,进入实验一程 序,监控指示灯显示【In St-】,提示输入运算指令,输入两位十六进制数(参考表 1-3和表1- 1),选择执行哪种运算操作。按【确认】键,监控指示灯显示【 Lo=0】,此处Lo相当于表1- 1中的M,默认为“ 0”,进行算术运算,也可以输入“ 1 ”,进行逻辑运算。按【确认】,显示【 Cn=0】,默认为“ 0”,由表1 - 1可见,此时进行带进位 运算,也可输入“ 1 ”,不带进位运算(注:如前面选择为逻辑运算,则 Cn不起作用)。按【确认】,显示【 Ar=1】,不用改变,
7、使用默认值“ 1”,按【确认】,显示【DATA】,提示输入第一个数据,输入十六进制数【 34H】,按【确认】,显示【DATA】,提示输入第二个数据,输入十六进制数【 B6H】,按【确认】键,监控指示灯显示【FINISH】,表示运算结束,可从数据总线显示灯观察运算结果。再按【确认】后监控显示灯显示【ES01】,可执行下一运算操作。运算指令(S3 S2 S1 SO)输入数据(十六进制)00或001或102或203或304或405 或 5 :06或607或708或809或90A或A0B或B0C或C0D或D0E或E0F或F表1-3运算指令关系对照表在给定LT仁34H、LT2=B6H的情况下,改变运算器
8、的功能设置,观察运算器的输 出,填入表中,并和理论值进行比较和验证:LT1LT2S3S2S1S0M=0 (算术运算)M=1 (逻辑运算)Cn=1(无进位)Cn= 0 (有进位)34HB6HF=01 或 1 :F= 03 或 3 F= 105 或 5 107 或 7 109 或 9 10B 或 B 10D 或 D 10E 或 E 1n、开关控制操作方式实验为了避免总线冲突,首先将控制开关电路的 ALU-G和C-G拨到输出高电平“ 1 ”状态(所对应的指示灯亮。本实验中所有控制开关拨动,相应指示灯亮代表高电平“ 1”,指示灯灭代表低电平“ 0”。1.按图1 7接线图接线:连线时应注意:为了使连线统
9、一,对于横排座,应使排线插头上的箭头面向自己插 在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上 。图1 7实验一开关实验接线图2 .通过数据输入电路的拨开关开关向两个数据暂存器中置数:注意:本实验中 ALU -G和C-G不能同时为0,否则造成总线冲突,损坏芯片!故每次实验时应时刻保持只有一路与总线相通。1)置ALU-G = 1:关闭 ALU的三态门U 31(74LS244);再置 C-G=0 :打开数据输入电路的三态门;2)向数据暂存器LT1 (U 27, 74LS273)中置数:(1)设置数据输入电路的数据开关“ D 7D0 ”为要输入的数值,如“ 01010101 ”;(
10、2)置LDR1 = 1:使数据暂存器 LT1 (U 27, 74LS273 )的控制信号有效,置LDR2 = 0:使数据暂存器 LT2 (U 28,74LS273)的控制信号无效;(3 )按一下脉冲源及时序电路的【单脉冲】按钮,给暂存器 LT1 (U 27,74LS273 )送时钟,上升沿有效,把数据存在 LT1中。3)向数据暂存器 LT2 (U 28, 74LS273)中置数:(1 )设置数据输入电路的数据开关“ D 7DO ”为想要输入的数值,如“10101010”;(2 )置LDR1 = 0 :数据暂存器LT1的控制信号无效;置 LDR2 = 1 :使数据暂存 器LT2的控制信号有效。(
11、3) 按一下脉冲源及时序电路的“单脉冲”按钮,给暂存器 LT1 (U 27 ,74LS273 )送时钟,上升沿有效,把数据存在 LT2中。(4) 置LDR1 = 0、LDR2 = 0,使数据暂存器 LT1、LT2的控制信号无效。4 )检验两个数据暂存器 LT1和LT2中的数据是否正确:(1 )置C-G=1,关闭数据输入电路的三态门,然后再置 ALU-G=0,打开 ALU的三态门;(2) 置“ S3S2S1S0M”为“ 11111”,数据总线显示灯显示数据暂存器 LT1中的 数 “ 0101 0101”,表示往暂存器 LT1置数正确;(3) 置“ S3S2S1S0M ”为“ 10101”,数据总线显示灯显示数据暂存器 LT2中 的数 “1010 1010”,表示往暂存器LT2置数正确。3 .验证74LS181的算术和逻辑功能p0 1 0 0Ap 0 0 0:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1