1、数字逻辑实验讲义二零零六年八月1前言数字逻辑课程实验是为了加深学生对课堂已学过的数字逻辑电路内容的理解,为学生提供必要的实践机会,以增强其感性认识,培养学生分析、设计、组装和调试数字电路的基本技能,使学生掌握数字逻辑电路及实验方法。随着科学技术的发展,尤其是微电子技术和计算机技术的发展,数字逻辑电路的实验也应不断得到更新、完善和开拓。除了对常规的TTL逻辑器件(如逻辑门、触发器等中小规模集成电路)进行实验外,也要学会可编程器件PLD(如CPLD、FPGA等大规模集成电路)的使用,借助计算机辅助设计软件来进行数字电路设计和功能仿真。这种硬件软化的实验方法具有容易设计、容易修改和容易实现等优点,可
2、有效地提高实验效率,正在逐步地取代前一种纯硬件联接逻辑的实验方法,成为数字逻辑电路实验的重要内容。考核方式实验课的考核方式:根据学生实验报告和实验完成情况给出实验成绩。实验课考核成绩采用百分制记分,实验课成绩占课程总成绩的 20%。2目录实验一、译码器3实验二、译码器的应用(一位全加器)5实验三、优先编码器7实验四、BCD码转换成余3码9实验五、四路数据选择器12实验六、四位多功能寄存器14实验七、110101代码发生器16实验八、节拍电位发生器19实验九、多谐振荡器21实验十、四位全加器23实验十一、七段LED译码器25实验十二、四位二进制/十进制计数器27实验十三、八位左移寄存器29实验十
3、四、先进后出堆3栈31附录1、MDL多功能数字逻辑实验仪介绍34实验一、译码器一、实验目的验证 3-8 译码器的功能。通过实验,学会使用 FD-MDL 多功能数字路逻辑实验仪;学会对集成电路芯片引脚的辨认,学会使用集成电路芯片。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。274LS138 集成电路一块。三、实验原理 74LS138 引脚图74LS138 的 C B A 三个输入变量,有 23 种不同状态,每种状态(即输入值)的译码输出分别用 Y0Y7 表示它们。任何时刻,Y0 Y7 中只有一个信号有4效(低电平有效) ,为“0” ,其余无效,为“1” 。注意:3-8 译码器工作时,
4、按照其功能表,G1 引脚应该接 “1”(高电平) ,G2A 和 G2B 引脚应该接“0” (低电平) 。四、实验内容1与 FD-MDL 的连接 2实验步骤(1)置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 4。(2)KC2 于“运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS2、 LS1、 LS0、LR7 LR0、LE7LE0 的变化,并填入实验记录表。(3)若某一拍时,LE7 LE0 与 LR7LR0 状态不同,则应停下来及时检查线路。(4)单拍运行全部正确后,将 KC2 置于“运行” ,KC1 置于“连续”,连续运行“三-八译码器 ”,此时应自动重复显示节拍
5、 1 至节拍 8 的实验现象。五、实验结果5实验二、译码器的应用(一位全加器)一、实验目的用 74LS138 和 74LS20 设计实现一个一位全加器。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。274LS138、74LS20 集成电路各一块。输入信号 实验结果节拍 LS2 CLS1 BLS0 ALE7 Y7LE6 Y6LE5 Y5LE4 Y4LE3 Y3LE2 Y2LE1 Y1LE0 Y01 0 0 02 0 0 13 0 1 04 0 1 15 1 0 06 1 0 17 1 1 08 1 1 16三、实验原理图中的“进位入 ”Ci-1 指的是低位的进位输出, “进位出 ”Ci
6、 是本位的进位输出。一位全加器真值表及集成电路引脚如下:四、实验内容1与 FD-MDL 的连接2实验步骤(1)置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 2。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS2、 LS1、 LS0、LR1、 LR0、LE1、LE0 的变化,并填入表中。(3)若某一拍时,LE1 、LE0 与 LR1、LR0 的显示不同,则应停下来并检查实验线路。(4)单拍运行全部正确后,将 KC2 置于“运行”,KC1 置于“连续”,连续运行“全加器”,此时应自动重复显示节拍 1 至节拍 8 的实验现象。五、实验结果7输入
7、信号 正确结果 实验结果节拍 LS2 Ci-1LS1 BiLS0 AiLR1 SiLR0 CiLE1 SiLE0 Ci1 0 0 0 0 02 0 0 1 1 03 0 1 0 1 04 0 1 1 0 15 1 0 0 1 06 1 0 1 0 17 1 1 0 0 18 1 1 1 1 1六、实验线路图实验三、优先编码器一、实验目的验证优先编码器74LS148的功能。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。274LS138、74LS148 、74LS04集成电路各一块。三、实验原理8把二进制数经过译码器74LS138进行译码,然后把译码器的输出再作为编码器74LS148的输
8、入,使编码器的输出与二进制数一致。74LS148功能表四、实验内容1与FD-MDL的连接2实验步骤(1)置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 6。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS1、 LS0、 LR5LR0、LE5LE0 的变化,并填入表中。(3)若某一拍时,LE5LE0与LR5LR0的显示不同,则应停下来并检查实验线路。(4)单拍运行全部正确后,将KC2置于“运行”,KC1置于“连续 ”,此时应自动重复显示节拍1至节拍4的实验现象。级联入EI输入7 6 5 4 3 2 1 0输出A2 A1 A0级联出EO GS1
9、 X X X X X X X X 1 1 1 1 11 1 1 1 1 1 1 01 1 1 1 1 1 0 X1 1 1 1 1 0 X X1 1 1 1 0 X X X1 1 1 0 X X X X1 1 0 X X X X X1 0 X X X X X X0 X X X X X X X1 1 11 1 01 0 11 0 00 1 10 1 00 0 10 0 01 01 01 01 01 01 01 01 0000000000 1 1 1 1 1 1 1 1 1 1 1 0 1X1X0译码器 优先编码器X0X11 2 3 4 5 6 7 8Vcc EO GS 3 2 1 0 A074L
10、S1484 5 6 7 EI A2 A1 GND16 15 14 13 12 11 10 9译码器编码器X1 X0 Y3 Y2 Y1 Y0 X1 X0S1 S0 E5 E4 E3 E2 E1 E0MDLLS1 LS0 LR5LR0 LE5LE09五、实验结果输入信号 正确结果 实验结果节拍 LS1 LS0X1 X0LR5LR2Y3 Y0LR1 LR0X1 X0LE5 LE2Y3 Y0 LE1 LE0X1 X012340 00 11 01 10 0 0 10 0 1 00 1 0 01 0 0 00 00 11 01 1六、实验线路图实验四、BCD 码转换成余 3 码一、实验目的首先了解四位全加
11、器74LS83的功能,然后用74LS83设计实现BCD码转换成余3码的电路。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。10274LS83集成电路一块。三、实验原理根据四位全加器74LS83的功能,以及BCD码和余3 码的定义,实现BCD 码转换成余3码。四、实验内容1与FD-MDL的连接十进制 BCD 码B3B2B1B0 余三码E3E2E1E00 0000 00111 0001 01002 0010 01013 0011 01104 0100 01115 0101 10006 0110 10017 0111 10108 1000 10119 1001 1100112实验步骤(1)
12、置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 11。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS4 LS0, LR4LR0,LE4LE0 的变化,并填写在表中。(3)若某一拍时,LE4 LE0 与 LR4LR0 状态不同,则应停下来及时检查线路。(4)单拍运行全部正确后,将KC2置于“运行” ,KC1置于“连续”,连续运行“BCD码余三码转换器”,此时应自动重复显示节拍1到节拍10的实验现象。五、实验结果六、实验线路图输入信号 正确结果 实验结果节拍 十进制 LS3 LS2 LS1 LS0B3 B2 B1 B0 LR3 LR2 LR1
13、 LR0S3 S2 S1 S0 LE3 LE2 LE1 LE0S3 S3 S1 S01 0 0 0 0 0 0 0 1 12 1 0 0 0 1 0 1 0 03 2 0 0 1 0 0 1 0 14 3 0 0 1 1 0 1 1 05 4 0 1 0 0 0 1 1 16 5 0 1 0 1 1 0 0 07 6 0 1 1 0 1 0 0 18 7 0 1 1 1 1 0 1 09 8 1 0 0 0 1 0 1 110 9 1 0 0 1 1 1 0 012实验五、四路数据选择器一、实验目的验证四路数据选择器的功能。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。274LS15
14、3集成电路一块。13三、实验原理四、实验内容1与FD-MDL的连接2实验步骤(1)置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 14。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS6 LS0 和 LR0,LE0 的变化,并填入表中。(3)若某一拍时,LE0 与 LR0 的显示不同,则应停下来并检查实验线路。(4)单拍运行全部正确后,将 KC2 置于“运行” ,KC1 置于“连续”,连续运行“数据选择器 ”,此时应自动重复显示节拍 1 至节拍 8 的实验现象。五、实验结果输入信号 正确结果 实验结果节拍 LS6 LS5 LS4G B AL
15、S3 LS2 LS1 LS0D3 D2 D1 D0LR0YLE0Y真值表选通 选择 输出G B A Y1 X X 00 0 0 Y=D00 0 1 Y=D10 1 0 Y=D20 1 1 Y=D314123456780 0 00 0 00 0 10 0 10 1 00 1 00 1 10 1 10 0 0 11 1 1 00 0 1 01 1 0 10 1 0 01 0 1 11 0 0 00 1 1 110101010实验六、四位多功能寄存器一、实验目的理解和掌握四位多功能寄存器74LS194的功能。通过实验,掌握时序电路与组合电路的区别以及寄存器的特点。二、实验器材设备1FD-MDL 多功
16、能数字路逻辑实验仪。274LS194、74LS04 集成电路各一块。15三、实验原理74LS194是四位移位寄存器,功能如下所示。四、实验内容1与FD-MDL的连接2实验步骤(1)置 KC2 于“ 停止” , 置 KC0 于“序号”,选实验序号 20。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS7 LS0, LR3LR0,LE3LE0 的变化,并填写在表中。(3)若某一拍时,LE3 LE0 与 LR3LR0 状态不同,则应停下来及时检查线路。(4)单拍运行全部正确后,将 KC2 置于“运行” ,KC1 置于“连续”,连续运行“四位多功能寄存器 ”,此时
17、应自动重复显示节拍 1 至节拍 18 的实验现象。16五、实验结果输入信号 正确结果 实验结果节拍 功能 LS7 LS6 LS5 LS4 LS3 LS2 LS1 LS0C1 C0 L R D C B ALR3 LR2 LR1 LR0QD QC QB QALE3 LE2 LE1 LE0QD QC QB QA01置全 0置全 10 0 0 0 0 0 0 00 0 0 0 1 1 1 10 0 0 01 1 1 1移入00 1 0 0 0 0 0 00 1 1 10 0 1 10 0 0 10 0 0 023456789右移 移入10 1 0 1 0 0 0 01 0 0 01 1 0 01 1
18、1 01 1 1 1移入01 0 0 0 0 0 0 01 1 1 01 1 0 01 0 0 00 0 0 01011121314151617左移 移入11 0 1 0 0 0 0 00 0 0 10 0 1 10 1 1 11 1 1 118 保持 1 1 0 0 0 0 0 0 1 1 1 1实验七、110101 代码发生器一、实验目的了解 D 触发器的特点,用 D 触发器和门电路设计一个 110101 代码发生器。通过实验,掌握时序电路的设计方法,学会代码发生器的设计。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。17274LS175、74LS32 、74LS08 、74LS
19、00 集成电路各一块。三、实验原理110101 代码产生器的状态表如下:现态 次态 输出Q3 Q2 Q1 Q3 Q2 Q1 Z0 0 0 0 0 1 10 0 1 0 1 1 10 1 1 0 1 0 00 1 0 1 1 0 11 1 0 1 0 0 01 0 0 0 0 0 1四、实验内容1与FD-MDL的连接182实验步骤(1)置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 25。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS0, LR3LR0,LE3LE0 的变化,并填写在表中。(3)若某一拍时,LE3LE0 与 LR3LR0 状
20、态不同,则应停下来及时检查线路。(4)单拍运行全部正确后,将 KC2 置于“运行” ,KC1 置于“连续”,连续运行“110101 代码发生器 ”,此时应自动重复显示节拍 1 到节拍 6 的实验现象。五、实验结果输入信号 正确结果 实验结果节拍 LS0CLRLR3 LR2 LR1Q3 Q2 Q1LR0ZLE3 LE2 LE1Q3 Q2 Q1LE0Z012345601111110 0 00 0 10 1 10 1 01 1 01 0 00 0 00101011六、实验线路图19实验八、节拍电位发生器一、实验目的用计数器、译码器和门电路,设计节拍电位发生器,使之能循环产生W1W4 四个节拍电位。通
21、过实验,巩固时序电路的设计方法,学会节拍电位发生器的设计。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。20274LS163、74LS138 、74LS04集成电路各一块。三、实验原理用计数器、译码器和门电路,设计节拍电位发生器,使之能循环产生W1W4四个节拍电位。四、实验内容1与FD-MDL的连接2实验步骤(1)置 KC2 于“ 停止” ,置 KC0 于“序号”,选实验序号 24。(2)置 KC2 于“ 运行” ,置 KC1 于“单拍”,然后单拍运行,观察指示灯LS0, LR3LR0,LE3LE0 的变化,并填写在表中。(3)若某一拍时,LE3LE0 与 LR3LR0 状态不同,则
22、应停下来及时检查线路。(4)单拍运行全部正确后,将 KC2 置于“运行” ,KC1 置于“连续”,连续运行,此时应自动重复显示节拍 1 到节拍 4 的实验现象。五、实验结果输入信号 正确结果 实验结果节拍 LS0CLRLR3 LR2 LR1 LR0W4 W3 W2 W1LE3 LE2 LE1 LE0W4 W3 W2 W101234011110 0 0 10 0 1 00 1 0 01 0 0 00 0 0 1六、实验线路图21实验九、多谐振荡器一、实验目的用 74LS04 及电阻、电容构成 RC 环行振荡器;用 5G555 及电阻、电容构成多谐振荡器。通过实验,掌握环行振荡器和多谐振荡器的原理
23、及设计方法,学会示波器的使用。二、实验器材设备221FD-MDL 多功能数字路逻辑实验仪。2示波器一台。374LS04、5G555集成电路各一块;电阻、电容、三极管。三、实验原理12四、实验内容1按图连接构成环形振荡器。(1)R取 180、R*取100、C取820pF 。用示波器观察各点波形并记录下来,并且算出震荡频率。(2)R取 560、R*取100、C取3F 。用示波器观察各点波形并记录下来,并且算出震荡频率。(3)用10K电位器替代 R,R*用一级射极跟随器替代,调节 R,观察波形,算出频率范围。2按图连接构成多谐振荡器。R1取56K 、R2 取1K、C取0.01uf。用示波器观察Vou
24、t、Vc波形并记录下来,并且算出震荡频率。五、实验结果23实验十、四位全加器一、实验目的用 Verilog HDL 硬件描述语言设计四位全加器,在 CPLD 芯片中实现四位全加器。通过实验,掌握 EDA 软件 ispDesignEXPERT 的使用,掌握用 Verilog HDL 硬件描述语言设计逻辑电路的方法。掌握 CPLD 的使用。二、实验器材设备241FD-MDL 多功能数字路逻辑实验仪。2微机一台,WINDOWS XP或WINDOWS 2000操作系统。3Lattice公司的 IspDesignEXPERT8.3版EDA 软件及下载电缆一根。4CPLD芯片 ispLSI 1016一块。
25、三、实验原理用Verilog HDL硬件描述语言在CPLD 芯片中实现四位全加器。求两个四位二进制数的全加和。A3A0、B3B0分别为加数和被加数,SUM0 SUM3 为和,Cout为进位输出。四、实验内容1与FD-MDL的连接2实验步骤用Verilog HDL硬件描述语言设计四位全加器,在微机上的ispDesignEXPERT软件环境中对设计进行编译和功能仿真,通过编译和仿真后,连接微机和实验仪器,将设计下载到CPLD芯片ispLSI 1016中,在CPLD 芯片实现四位全加器。记录仿真波形和实验结果。实验时选用实验序号0。五、源程序代码A0K0 32A1K1 25A2K2 26A3K3 2
26、7B0K4 28B1K5 229B2K6 30B3K7 31SUM06 E0SUM17 E1SUM28 E2SUM39 E30Cout44 E4IspLSI101625六、实验结果实验十一、七段 LED 译码器一、实验目的用 Verilog HDL 硬件描述语言设计七段 LED 译码器,在 CPLD 芯片中实现七段 LED 译码器。通过实验,巩固 EDA 软件 ispDesignEXPERT 的使用。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。262微机一台,WINDOWS XP或WINDOWS 2000操作系统。3Lattice公司的 IspDesignEXPERT8.3版EDA
27、 软件及下载电缆一根。4CPLD芯片 ispLSI 1016一块。三、实验原理用Verilog HDL硬件描述语言在CPLD 芯片中实现七段LED译码器。D3D0为输入代码(00001111) ,输出ah为共阴极LED七段显示器的字形码。四、实验内容1与FD-MDL的连接2实验步骤用Verilog HDL硬件描述语言设计七段LED译码器,在微机上的 ispDesign EXPERT软件环境中对设计进行编译和功能仿真,通过编译和仿真后,连接微机和实验仪器,将设计下载到CPLD芯片ispLSI 1016 中,在CPLD 芯片实现七段LED译码器。记录仿真波形和实验结果。实验时选用实验序号0。五、源
28、程序代码D0K0 32D1K1 25D2K2 26D3K3 27a6 E0b7 E1c8 E2d9 E30e44 E4IspLSI1016f3 E5g4 E6h5 E727六、实验结果实验十二、四位二进制/ 十进制计数器一、实验目的用 Verilog HDL 硬件描述语言设计有异步清 “0”功能的四位二进制/十进制计数器,并在 CPLD 芯片中实现。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。282微机一台,WINDOWS XP或WINDOWS 2000操作系统。3Lattice公司的 IspDesignEXPERT8.3版EDA 软件及下载电缆一根。4CPLD芯片 ispLSI
29、1016一块。三、实验原理用Verilog HDL硬件描述语言在CPLD 芯片中实现有异步清“0”功能的四位二进制/ 十进制计数器。CLK为时钟脉冲,CLR为清0端,OUT0OUT3计数值输出,Cout为进位输出。四、实验内容1与FD-MDL的连接2实验步骤用Verilog HDL硬件描述语言设计有异步清“0”功能的四位二进制/ 十进制计数器,在微机上的isp Design EXPERT软件环境中对设计进行编译和功能仿真,通过编译和仿真后,连接微机和实验仪器,将设计下载到CPLD芯片ispLSI 1016中,在CPLD 芯片实现四位二进制 /十进制计数器。记录仿真波形和实验结果。实验时选用实验序号0。五、源程序代码29六、实验结果实验十三、八位左移寄存器一、实验目的用 Verilog HDL 硬件描述语言设计八位左移寄存器,在 CPLD 芯片中实现八位左移寄存器。二、实验器材设备1FD-MDL 多功能数字路逻辑实验仪。2微机一台,WINDOWS XP或WINDOWS 2000操作系统。3Lattice公司的 IspDesignEXPERT8.3版EDA 软件及下载电缆一根。