数字逻辑第一次实验报告-模板n 下载本文

数字逻辑实验报告(1)

数字逻辑实验1 一、系列二进制加法器二、小型实验室门禁系设计50% 评语:(包含:预习报告内容、实验过程、实验结果及分析) 总成绩 统设计50% 教师签名 姓 名: 学 号: 班 级: CS 指 导 教 师:

计算机科学与技术学院 2018年 5 月 22 日

1 / 32

《数字电路与逻辑设计》实验报告

数字逻辑实验报告

系列二进制加法器设计预习报告

2 / 32

《数字电路与逻辑设计》实验报告

一、系列二进制加法器设计 1、实验名称

系列二进制加法器设计。

2、实验目的

要求同学采用传统电路的设计方法,对5种二进制加法器进行设计,并利用工具软件,例如,“logisim”软件的虚拟仿真功能来检查电路设计是否达到要求。

通过以上实验的设计、仿真、验证3个训练过程使同学们掌握传统逻辑电路的设计、仿真、调试的方法。

3、实验所用设备

Logisim2.7.1软件一套。

4、实验内容

对已设计的5种二进制加法器,使用logisim软件对它们进行虚拟实验仿真,除逻辑门、触发器外,不能直接使用logisim软件提供的逻辑库元件,具体内容如下。

(1)一位二进制半加器 设计一个一位二进制半加器,电路有两个输入A、B,两个输出S和C。输入A、B分别为被加数、加数,输出S、C为本位和、向高位进位。

(2)一位二进制全加器

设计一个一位二进制全加器,电路有三个输入A、B和Ci,两个输出S和Co。输入A、B和Ci分别为被加数、加数和来自低位的进位,输出S和Co为本位和和向高位的进位。

(3)串行进位的四位二进制并行加法器

用四个一位二进制全加器串联设计一个串行进位的四位二进制并行加法器,电路有九个输入A3、A2、A1、A0、B3、B2、B1、B0和C0,五个输出S3、S2、S1、S0和C4。输入A= A3A2A1A0、B= B3B2B1B0和C0分别为被加数、加数和来自低位的进位,输出S= S3S2S1S0和Co为本位和和向高位的进位。

3 / 32

《数字电路与逻辑设计》实验报告

(4)先行进位的四位二进制并行加法器

利用超前进位的思想设计一个先行进位的四位二进制并行加法器,电路有九个输入A3、A2、A1、A0、B3、B2、B1、B0和C0,五个输出S3、S2、S1、S0和C4。输入A= A3A2A1A0、B= B3B2B1B0和C0分别为被加数、加数和来自低位的进位,输出S= S3S2S1S0和Co为本位和和向高位的进位。

(5)将先行进位的四位二进制并行加法器封装成一个组件并验证它的正确性

将设计好的先行进位的四位二进制并行加法器进行封装,生成一个“私有”库元件并验证它的正确性,以便后续实验使用,封装后的逻辑符号参见图1-1所示。

S1 S0 S3 S2 C4 四位二进制并行加法器 C0 A3 A2 A1 A0 B3 B2 B1 B0

图1-1“私有”的先行进位的四位二进制并行加法器

5、实验方案设计

(1)一位二进制半加器的设计方案

根据题意可以列出真值表:

表1 半加器真值表

由真值表可以写出化简后的输出表达式:

其逻辑电路如下图所示:

4 / 32

《数字电路与逻辑设计》实验报告

图1-2 一位二进制半加器

(2)一位二进制全加器的设计方案

全加器是一个能对两个一位二进制数及来自低位的“进位”进行相加,

产生本位“和”及向高位“进位”的逻辑电路。由此可知,该电路有3个输入变量,2个输出函数。设被加数、加数及来自低位的“进位”分别用 、 及 表示,相加产生的“和”及“进位”用 和 表示。根据二进制加法运算法则可列出全加器的真值表,如表2所示。

表2 全加器真值表

经化简后的输出函数表达式为:

其逻辑电路图如下图所示:

5 / 32

《数字电路与逻辑设计》实验报告

图1-3 一位二进制全加器

(3)串行进位的四位二进制并行加法器的设计方案

利用(2)中的逻辑电路实现串行进位的四位二进制加法器,其高位的“和”依赖与来自低位的进位输入。逻辑电路如下图所示:

图1-4串行进位的四位二进制并行加法器

(4)先行进位的四位二进制并行加法器的设计方案

定义 为进位产生函数,定义 为进位传递函数。将 和 代入全加器的“和”及“进位”输出表达式,可得到:

四位二进制并行加法器各位的进位输出函数表达式分别为:

6 / 32

《数字电路与逻辑设计》实验报告

其逻辑电路图如下图所示:

图1-5先行进位的四位二进制并行加法器

(5)封装先行进位的四位二进制并行加法器电路

对“第4步”完成的电路进行封装,然后对它设计的正确性进行验证。

7 / 32

《数字电路与逻辑设计》实验报告

图1-6 封装后的元件

验证:

(1)当输入A=0001,B=0010,C0 =0时,输出应为S=0011, =0 电路图仿真结果如下:

图1-7 仿真结果

8 / 32

《数字电路与逻辑设计》实验报告

由图可知输出结果与预期相符。

(2)当输入A=1111,B=1111, C0 =0时,输出S=1110, =1

电路仿真结果如下图所示:

由图可知,电路仿真结果与预期相符

图1-8 仿真结果

9 / 32

《数字电路与逻辑设计》实验报告

数字逻辑实验报告

小型实验室门禁系统设计实验报告

10 / 32

《数字电路与逻辑设计》实验报告

二、小型实验室门禁系统设计 1、实验名称

小型实验室门禁系统设计。

2、实验目的

要求同学采用传统电路的设计方法,对一个“设计场景”进行逻辑电路的设计,并利用工具软件,例如,“logisim”软件的虚拟仿真来检查这个小型实验室门禁系统的设计是否达到要求。

通过以上实验的设计、仿真、验证3个训练过程使同学们掌握小型电路系统的设计、仿真、调试方法以及电路模块封装的方法。

3、实验所用设备

Logisim2.7.1软件一套。

4、实验内容

设计场景:某小型保密实验室需要安装一个门禁系统,用于监测、控制和显示该实验室内上班人数,该实验室只有一个门,最多只能容纳15人。假设员工进出实验室都要刷校园卡,并且保证一次刷卡后有且只有一人能进出。实验室空置时人数显示为0,刷卡进入时实验室人数加1,刷卡离开时实验室人数减1。当实验室满员时,还有员工在门外刷卡进入时,门禁系统“不”动作,系统报警提示满员。

使用logisim软件对小型电路进行虚拟实验仿真,除逻辑门、触发器、7段数码显示管外,不能直接使用logisim提供的逻辑元件库,具体要求如下。

(1)设计一个四位二进制可逆计数器电路并进行封装和验证它的正确性 用D触发器设计一个四位二进制可逆计数器,并进行封装。该计数器有一个清零端CLR、一个累加计数脉冲端CPU(输入刷卡进入请求)、一个累减计数脉冲端CPD(输入刷卡离开请求),四个计数输出端QDQCQBQA记录当前实验室人数。

将设计好的4位二进制可逆计数器进行封装,生成一个“私有”库元件,以便后续实验使用,4位二进制可逆计数器逻辑符号参见图2-1所示。

11 / 32

《数字电路与逻辑设计》实验报告

SD SC SB SA CPU CLR 四位二进制可逆计数器 CPD 图2-1 “私有”的一个4位二进制可逆计数器

(2)用实验1中已封装的“先行进位的四位二进制并行加法器”设计一个将实验室内人数转换成8421BCD码的电路

用实验一中已封装的“先行进位的四位二进制并行加法器”和适当的逻辑门将二进制数表示的实验室人数转换成两位十进制数的8421BCD码。

(3)设计7段译码器,并采用“7段数码显示管”显示人数的电路 设计一个7段译码器(参考书的7448芯片),将两位十进制数的8421BCD码表示的实验室人数用“7段数码显示管”显示出来。

该7段译码器有四个输入A3A2A1A0和七个输出abcdefg, A3A2A1A0为8421BCD码,abcdefg为7段数码显示管对应的段。

(4)设计当实验室满员时,门禁“不”动作,系统报警提示满员的电路 当实验室满员时,在累加计数脉冲端CPU输入刷卡进入请求,计数输出端数据保持不变,门禁“不”动作,系统报警提示满员。当实验室空时,逻辑上不会有实验室内累减计数脉冲端CPD输入刷卡离开请求。为防止信号干扰,在计数输出为0时,若CPD端有脉冲,也应使计数输出端数据保持不变,门禁“不”动作,但不用报警。

(5)设计小型实验室门禁系统电路并进行封装和验证它的正确性

设计满足要求的小型实验室门禁系统电路并进行封装,生成一个小型实验室门禁系统芯片,封装后的小型实验室门禁系统逻辑符号参见图2-2所示。

十位:7段数码显示管 个位:7段数码显示管 a b c d e f g a b c d e f g CPU CLR 封装后的门禁系统逻辑符号 报警 CPD 12 / 32

《数字电路与逻辑设计》实验报告

图2-2 封装后的小型实验室门禁系统

5、实验方案设计

(1)设计一个四位二进制可逆计数器电路

在计数器74193的基础上删除与本次实验无关的输入输出变量,将T触发器

接到D。 改为D触发器,将D触发器的

图2-1 一个四位二进制可逆计数器

13 / 32

《数字电路与逻辑设计》实验报告

图2-2 封装示意图

(2)用实验一中已封装的“先行进位的四位二进制并行加法器”设计将实验室内人数转换成8421BCD码的电路

用实验一中已封装的“先行进位的四位二进制并行加法器”设计将实验室内人数转换成8421BCD码的电路,设输入的8421码为DCBA,输出的结果为高位8421的BCD码A7、A6、A5、A4以及低位的A3、A2、A1、A0。

因此只需要设计对输入的4位2进制数值进行判断,若小于10则不变,若大于10,则需要将4位2进制输入与10的补码使用先行进位4位2进制并行加法器相加得到输出A3、A2、A1、A0,而高位的A7、A6、A5一直为0。高位bcd码的低位A4在大于10时为1。

根据题意设输入的8421码为DCBA,则判断大于10的条件为D(B+C)。10的补码可以计算为0110。当输入大于10时,将输入的DCBA与0110用加法器相加可以得到减10的值。

14 / 32

《数字电路与逻辑设计》实验报告

图2-3 一位16进制数转2位8421码

图2-4 封装示意图

15 / 32

《数字电路与逻辑设计》实验报告

(3)设计7段译码器,并采用“7段数码显示管”显示人数的电路 (A)设计一个7段译码器

根据7段译码器的要求可得其真值表如表1所示:

表1 7段译码管真值表

将真值表直接输入到logisim中生成逻辑电路图,如下图所示:

16 / 32

《数字电路与逻辑设计》实验报告

图2-5 7段译码器

17 / 32

《数字电路与逻辑设计》实验报告

图2-6 封装示意图

B)设计用“7段数码显示管”显示人数的逻辑电路

18 / 32

《数字电路与逻辑设计》实验报告

图2-7 用7段数码显示管显示实验室人数的电路

(4)设计当实验室满员时,门禁“不”动作,系统报警提示满员的电路

19 / 32

《数字电路与逻辑设计》实验报告

电路设计要求要采用本次实验1中由4位二进制可逆计数器所封装的“私有”库元件。

为了实现门禁不动作以及报警,可以将4位2进制可逆计数器的结果DCBA分别接入与非门和或门,与非门的结果与输入的CPu相与后接入4位2进制可逆计数器的对应输入端,或门结果与输入的CPd相与后接入4位2进制可逆计数器的对应输入端,实现门禁不动作;将与非门的输出接入非门后,再和CPu接入与门,实现满员后接收到进入脉冲信号时报警提示。

图2-8 报警电路

(5)设计小型实验室门禁系统电路

20 / 32

《数字电路与逻辑设计》实验报告

图2-9 门禁系统电路

21 / 32

《数字电路与逻辑设计》实验报告

图2-10 封装示意图

6、实验结果记录

(1)给出“私有”库元件(采用一个四位二进制可逆计数器进行封装)的测试电路

累加计数脉冲:

22 / 32

《数字电路与逻辑设计》实验报告

图2-11一个四位二进制可逆计数器

累减计数脉冲:

23 / 32

《数字电路与逻辑设计》实验报告

图2-12一个四位二进制可逆计数器

清除:

24 / 32

《数字电路与逻辑设计》实验报告

图2-13一个四位二进制可逆计数器

(2)给出采用实验1中已封装的“先行进位的四位二进制并行加法器”设计的将实验室内人数转换成8421BCD码的电路

显示11:

25 / 32

《数字电路与逻辑设计》实验报告

图2-14二进制数转换成8421BCD码的电路

(3)给出采用“7段数码显示管”显示人数的电路 显示12:

26 / 32

《数字电路与逻辑设计》实验报告

图2-15人数显示的电路

27 / 32

《数字电路与逻辑设计》实验报告

(4)给出当实验室满员时,门禁不动作,系统报警提示满员的电路 当满员时,再接收到累加脉冲时。系统报警提示。如下图所示:

图2-16系统报警电路

28 / 32

《数字电路与逻辑设计》实验报告

(5)给出“私有”库元件(采用小型实验室门禁系统电路进行封装)的测试电路

当接收到一个刷卡进入的脉冲时,累加计数器加一,如下图所示:

图2-17实验室门禁系统电路

当接收到一个刷卡离开脉冲时,累减计数器减一,如下图所示:

29 / 32

《数字电路与逻辑设计》实验报告

图2-18实验室门禁系统电路

当实验室内满员时,再接收到刷卡进入的脉冲,则系统报警提示,如下图所示:

30 / 32

《数字电路与逻辑设计》实验报告

图2-19实验室门禁系统电路

7、实验后的思考

(1)这两次实验的难点你认为在哪些方面? 第一次实验的难点在于实现并行加法计数器,很容易就会掉入陷阱,又做成

31 / 32

《数字电路与逻辑设计》实验报告

串行的加法计数器。

第二次实验的难点在于怎么实现四位二进制可逆计数器。 (2)你是如何解决的?

第一次实验自己在做的时候并没发现做并行加法计数器变成了串行的,检查的时候,在老师的提醒下才发现错误,然后自己再去看书,发现是自己理解错了,并行加法计数器的实现是跟书中等式最右边有关,即输出只与输入有关,与中间的状态无关。

第二次实验的四位二进制可逆计数器是在计数器74193的基础修改的。 (3)意见和建议

这种实验可以锻炼自己的实际操作能力,我觉得多做几次这样的实验很好。

32 / 32