北邮大二下数电实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

北邮大二下数电实验报告

北京邮电大学数字电路与逻辑设计实验

学院:

班级:

姓名:

学号:

班内序号:

实验一

一、实验名称

Quartus II 原理图输出法设计

(一)半加器

二、实验任务要求

用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图形模块单元。

三、设计思路和过程

◎设计思路

半加器电路是指对两个输入数据位进行加法,输出一个结果位和进位,不产生进位输入的加法器电路,是实现两个一位二进制数的加法运算电路。

数据输入:被加数AI、加数BI

数据输出:半加和SO、进位CO

◎ 设计过程

(1)列出真值表

输入输出

AI BI SO CO

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

*表中两个输入是加数AI和BI,输出有一个是和SO,另一个是进位CO。 (2)根据真值表写出输出逻辑表达式

该电路有两个输出端,属于多输出组合数字电路,电路的逻辑表达式如

下:SO,AI,BICO,AI,BI,。所以,可以用一个两输入异或门和一个两输入与门实现。

◎实验原理图

四、仿真波形图及分析

根据仿真波形对比半加器真值表,可以确定电路实现了半加器的功能。但我们也可以发现输出SO出现了静态功能冒险,要消除该冒险可以加入相应的选通脉冲。

(二)全加器

二、实验任务要求

用实验内容1中生成的半加器模块和逻辑门设计实现一个全加器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号。

三、设计思路和过程

◎设计思路

全加器与半加器的区别在于全加器有一个低进位CI,从外部特性来看,它是一个三输入两输出的器件。

◎设计过程

(1)全加器的真值表如下

输入输出

AI BI CI SO CO

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

*其中AI为被加数,BI为加数,CI为相邻低位来的进位数。输出本位和为SO,向相邻高位进位数为CO。

(2)根据真值表写出逻辑表达式:

SO,AI,BI,CI, CO,(AI,BI),CI,AI,BI

根据逻辑表达式,可以知道只要在半加器的基础上再加入一个异或门、一个两输入与门和两输入或门即可实现全加器。

◎实验原理图

四、仿真波形图及分析

根据仿真波形对比全加器真值表,可以确定电路实现了全加器的功能。

(三)3线—8线译码器

二、实验任务要求

8线译码器(74LS138)和逻辑门设计实现函数用3线—

F,CBA,CBA,CBA,CBA,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。

三、设计思路和过程

◎设计思路

74LS138是一个3线—8线的译码器,其输出为低电平有效,使能端G1为高电平有效,G2、G3为低电平有效,当其中一个为高电平,输出端全部为1。在中规模集成电路中译码器的几种型号里,74LS138使用最广泛。

要实现的函数用最小项表示如下:

F(C,B,A)=?m(0,2,4,7) 只要将相应输出用一个四输入与非门实现即可。

◎注意

(1)74LS138的输出是低电平有效,故实现逻辑功能时,输出端不可接或门及或非门(因为每次仅一个为低电平,其余皆为高电平);

(2)74LS138与前面不同的是,其有使能端,故使能端必须加以处理,否则无法实现需要的逻辑功能。

◎实验原理图

四、仿真波形图及分析

当且仅当ABC输入为000、010、100、111时,F=1;可知电路实现了函数。F,CBA,CBA,CBA,CBA

实验二

一、实验名称

VHDL组合逻辑电路设计

(一)奇校验器

二、实验任务要求

用VHDL语言设计实现一个4位二进制奇校验器,输入奇数个‘1’时,输出为‘1’,否则输出为‘0’,仿真实现验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。

三、设计思路和过程

输入元素:a3,a2,a1,a0

输出元素:b

输入输出

a3 a2 a1 a0 b

0 0 0 0 0

0 0 0 1 1

0 0 1 0 1

0 0 1 1 0

0 1 0 0 1

0 1 0 1 0

0 1 1 0 0

0 1 1 1 1

1 0 0 0 1

1 0 0 1 0

1 0 1 0 0

1 0 1 1 1

1 1 0 0 0

1 1 0 1 1

1 1 1 0 1

1 1 1 1 0

四、VHDL程序

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; ENTITY hy_check IS PORT(

a: IN STD_LOGIC_VECTOR (3 downto 0);

b: OUT STD_LOGIC

);

end hy_check;

ARCHITECTURE hy_arch OF hy_check IS

BEGIN

PROCESS(a)

BEGIN

CASE a IS

WHEN"0000" => b <='0';

WHEN"0001" => b <='1';

WHEN"0010" => b <='1';

WHEN"0011" => b <='0';

WHEN"0100" => b <='1';

WHEN"0101" => b <='0';

WHEN"0110" => b <='0';

WHEN"0111" => b <='1';

WHEN"1000" => b <='1';

WHEN"1001" => b <='0';

相关文档
最新文档