东南大学电工电子实验中心实验报告课程名称:计算机结构与逻辑设计实验第一次实验实验名称:组合逻辑电路院(系):专业:姓名:学号:实验室:实验组别:同组人员:实验时间:2015年10月29日评定成绩:审阅教师:一、实验目的①认识数字集成电路,能识别各种类型的数字器件和封装②掌握小规模组合逻辑和逻辑函数的工程设计方法③掌握常用中规模组合逻辑器件的功能和使用方法④学习查找器件资料,通过器件手册了解器件⑤了解面包板的基本结构、掌握面包板连接电路的基本方法和要求⑥了解实验箱的基本结构,掌握实验箱电源、逻辑开关和LED点平指示的用法⑦学习基本的数字电路的故障检查和排除方法⑧学Mulitisim逻辑化简操作和使用方法⑨学习ISE软件操作和使用方法二、实验原理1.组合逻辑电路:组合逻辑电路又称为门网络,它由若干门电路级联(无反馈)而成,其特点是(忽略门电路的延时):电路某一时刻的输出仅由当时的输入变量取值的组合决定,而与过去的输入取值无关。其一般手工设计的过程为:①分析其逻辑功能②列出真值表③写出逻辑表达式,并进行化简④画出电路的逻辑图2.使用的器件:1)74HC00(四2输入与非门):芯片内部有四个二输入一输出的与非门。2)74HC20(双4输入与非门):芯片内部有两个四输入一输出的与非门。注意,四输入不能有输入端悬空。3)74HC04(六反相器):芯片内部有六个非门,可以将输入信号反相。当然,也可以通过2输入与非门来实现,方法是将其一个输入端信号加高电平。4)74HC151(数据选择器):其功能犹如一个受编码控制的单刀多掷开关,可用在数据采集系统中,选择所需的信号。它有8个与门,各受信号A2、A1、A0的一组组合控制,再将这8个与门的输出端经一个或门输出,是一个与—或电路。5)74HC138(3线-8线译码器):其有三个使能端E1、E2、E3,可将地址段(A0、A1、A2)的二进制编码在Y0至Y7对应的输出端以低电平译出。三、实验内容必做实验:①数值判别电路a)设计一个组合逻辑电路,它接收一位8421BCD码B3B2B1B0,仅当2B3B2B1B07时输出Y才为1(第6周实验课内指导教师验收)b)设计一个组合逻辑电路,它接收4位2进制数B3B2B1B0,仅当2B3B2B1B07时输出Y才为1答:真值表:a.B3B2B1B0Y00000000100010000111010010101101101011101000010010b.B3B2B1B0Y00000000100010000111010010101101101011101000010010101001011011000110101110011110函数表达式:a.00101101XXXX00XXB3B2B1B00001111000011110Y=B2·𝐵1·𝐵0+𝐵2·𝐵1+𝐵2·𝐵0b.0010110100000000B3B2B1B00001111000011110Y=B3·B2·B1·B0+B3·B2·B1+B3·B1·B0电路原理图:a.141312111098123456774HC001413121110981234567141312111098123456774HC041413121110981234567141312111098123456774HC201413121110981234567VccVccGNDGNDGND11B2非B1B0YVccb.141312111098123456774HC201413121110981234567141312111098123456774HC041413121110981234567141312111098123456774HC201413121110981234567VccGNDVccGNDVccGNDY111B3非B2非B1B0静态验证:a.b.数据分析:a.B3B2B1B0Ya测试结果00000暗00010暗00100暗00111亮01001亮01011亮01101亮01110暗10000暗10010暗b.B3B2B1B0Y测试结果00000暗00010暗00100暗00111亮01001亮01011亮01101亮01110暗10000暗10010暗10100暗10110暗11000暗11010暗11100暗11110暗②人类有四种血型:A、B、AB和O型。输血时,输血者与受血者必须符合下图的规定,否则有生命危险,利用数据选择器和最少数量的与非门,完成血型配对任务。(设计方案可参看数字逻辑电路实践教材Page86)答:真值表:输血者受血者G1G0血型R1R0血型00O型00O型01A型01A型10B型10B型11AB型11AB型G1G0R1R0S00001000110010100111010000101101100011111000010010101011011111000110101110011111函数表达式:1111011000100011G1G0R1R00001111000011110降维得:110100100011110G0R1R0电路原理图:123456774HC151812345671234567916151413121110141312111098123456774HC001413121110981234567G11111000VccGNDVccR0R1G2S静态验证:数据分析:G1G0R1R0S测试结果00001亮00011亮00101亮00111亮01000暗01011亮01100暗01111亮10000暗10010暗10101亮10111亮11000暗11010暗11100暗11111亮③控制发电机组的供电控制电路的设计设有三台用电设备A、B、C和两台发电机组X、Y。X机组功率为10kW,Y机组功率为20kW。用电设备A用电量为15kW,设备B用电量为10kW,设备C用电量为5kW,三台用电设备有时同时工作,有时只有其中部分设备工作,甚至均不工作。试设计一个供电控制电路控制发电机组,以达到节电的目的。答:真值表:ABCXY00000001100101001101100011010111011111111.表示运行0表示不运行函数表达式:010100110100011110ABCX=A·B·C+A·B+B·C=m1+m2+m6+m7001011110100011110AY=A+BC=m3+m4+m5+m6+m7电路原理图:123456774HC138812345671234567916151413121110141312111098123456774HC201413121110981234567141312111098123456774HC001413121110981234567YVccGNDGNDVccVccGND1001A0A1A2静态验证:数据分析:ABCXY测试结果00000都不运行00110只X运行01010只X运行01101只Y运行10001只Y运行10101只Y运行11011都运行11111都运行④设计一个保险箱的数字密码锁,该锁有4位密码输入端(A0,A1,A2,A3)和一个开箱钥匙信号输入端(E)。当用钥匙开箱时(E=1),如果输入密码=“1011”,保险箱被打开(Z1=1);如果不符,电路将发生报警信号(Z2=1)。要求使用最少数量的与非门实现电路,检测并记录实验结果。答:真值表:EA0A1A2A3Z1Z20xxxx0010000011000101100100110011011010001101010110110011011101110000111001011101001110111011100011110101111100111111011表示使用0表示不使用函数表达式:Z1=E·A0·A1·A2·A3Z2=Z1电路原理图:141312111098123456774HC201413121110981234567141312111098123456774HC001413121110981234567VccGNDVccGNDA3A1A0A211E1Z2Z1静态验证:数据分析:EA0A1A2A3Z1Z2测试结果0xxxx01警报1000001警报1000101警报1001001警报1001101警报1010001警报1010101警报1011001警报1011101警报1100001警报1100101警报1101001警报1101110开启1110001警报1110101警报1111001警报1111101警报四、实验总结在这次的实验中,我开始真正接触电类专业的一些相关知识,并且亲自动手搭一些电路,也使得我在计逻课上学到的一些数电的基础理论知识能够应用到实践中来,两者相互结合使得我对这部分的知识有了更深的理解。并且这门实验课也极大地培养了我的动手能力,比如如何在实验开始前进行线路的布线,怎么布线比较美观,方便,为之后的查错提供便利。老师也交给了我们在这门实验中遇到错误怎么来自己动手检查出来,如将实验箱中电压表的接地端接到电源的接地端上,另一端就可以直接来测量电路中各个地方的电压来检查是否与自己设计的相同。这查错方法是非常重要的,为之后更复杂的电路的搭建奠定了基础。这次实验中我主要遇到了两个问题:①我在做实验一中的b时,接通电源后,六反相器烧掉了。我检查的方法是用万用表的测量是否接通的功能来测量各个芯片的Vcc与GND端之间是否短路。在测量六反相器的时候,发现是因为六反相器内部短路导致电路的出错。于是换了一个新的六反相器之后问题解决了。②另一个错误是我在其中几个实验都遇到过得问题,就是大多数验证都对,但是其中少数几个的结果总是错误的,解决的方法是用电压表测量各个模块的输出是否都正确,找到错误的模块后,再自习观察自己的线有没有连接错,我的其中一个就是因为线连错导致结果出错。