【上海大学数字逻辑实验报告】二、组合电路(一)

一、 实验目的

  1. 熟悉TTL异或门构成逻辑电路的基本方式;
  2. 熟悉组合电路的分析方法,测试组合逻辑电路的功能;
  3. 掌握构造半加器和全加器的逻辑测试;
  4. 学习使用可编程逻辑器件的开发工具 Quartus II设计电路。

二、 实验原理

  1. 异或门是数字逻辑中实现逻辑异或的逻辑门,其功能是若两个输入的电平相异,则输出高电平;若输入的两个电平相同,则输出为低电平。
  2. TTL异或门的输入输出电压关系:
输入输出
ABY
0V0V0V
0V5V5V
5V0V5V
5V5V0V
  1. 半加器是对两个一位二进制数进行相加,产生“和”与“进位”。其逻辑表达式为:
    在这里插入图片描述
    根据半加器的逻辑表达式可知,半加器可用一个异或门和两个与非门组成。
  2. 全加器是将两个一位二进制数及来自低位的进位进行相加,产生“和”与“进位”。其逻辑表达式为:
    在这里插入图片描述
    根据全加器的逻辑表达式可知,全加器可用两个异或门和三个与非门组成。

三、实验内容

实验任务一:异或门逻辑功能测试

(1) 实验步骤
  1. 将74LS86的输入引脚1A连接到K1,1B连接到K2,输出引脚连接到数码管LED6,接电接地后的示意图如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  1. 拨动开关,观察数码管的变化,填入异或门的输入与输出状态记录表。
(2) 实验现象
  1. 当两个输入引脚的电平相同时,异或门的输出为逻辑低电平(0)。
  2. 当两个输入引脚的电平不同时,异或门的输出为逻辑高电平(1)。
(3) 数据记录、分析与处理

异或门的输入输出状态记录表

输入A输入B输出Y
000
011
101
110
(4) 实验结论

异或门的输出只有在两个输入的电平不同时才输出高电平,否则输出低电平。

实验任务二:使用分立元件的异或门和与非门分别构成半加器和全加器,并进行测试

(1) 实验步骤

a) 构成半加器

  1. 将K3、K4分别对应连接到74LS86和74LS00的输入引脚1B、1A;
  2. 将74LS00的输出引脚1Y同时连接到74LS00的输入引脚2A、2B,而后将74LS00的输出引脚2Y连接到LED6;
  3. 将74LS86的输出引脚1Y连接LED5。
  4. 接地接电后的示意图如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  1. 拨动开关,观察数码管的变化,填入半加器的输入与输出状态记录表。

b) 构成全加器

  1. 将K2、K3、K4分别对应连接到74LS86和74LS00的输入引脚2B、1B、1A
  2. 将74LS00的输出引脚1Y、2Y、4Y分别连接到74LS00的输入引脚4B、4A、LED5;
  3. 将74LS86的输出引脚1Y连接到74LS00的输入引脚2A同时连接到74LS86的输入引脚2A,而后将74LS86的输出引脚2Y连接到LED6。
  4. 接地接电后的示意图如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  1. 拨动开关,观察数码管的变化,填入一位全加器的输入与输出状态记录表。
(2) 实验现象

a) 半加器

  1. 当输入K3、K4都为逻辑低电平(0)时,LED5和LED6都不亮;
  2. 当输入K3、K4有一个为逻辑高电平(1)时,LED5会亮而LED6不亮;
  3. 当输入K3、K4都为逻辑高电平(1)时,LED5和LED6都亮。

b) 全加器

  1. 当输入K2为逻辑低电平(0),拨动K3、K4开关,发现LED5和LED6的亮灭情况和半加器一致;
  2. 当输入K2为逻辑高电平(1)时,拨动K3、K4开关,发现当K3、K4都为逻辑低电平(0)时,发现LED6会亮而LED5不亮;当K3、K4逻辑电平相反时,发现LED6不亮而LED5会亮;当K3、K4都为逻辑高电平(1)时,发现LED6和LED5都会亮。
(3) 数据记录、分析与处理

半加器的输入输出状态记录表:

输入输出
K4K3LED6LED5
0000
0101
1001
1110

全加器的输入输出状态记录表:

输入输出
K2K3K4LED6LED5
00000
00110
01010
01101
10010
10101
11001
11111

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

(4) 实验结论

a) 半加器可实现两个一位二进制数相加,输出一个结果位和进位。

b) 一位全加器可以处理低位进位,并输出本位加法进位。

实验任务三:使用Quartus II设计二位全加器

(1) 实验步骤
  1. 用Quartus II设计出如下电路:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  1. 编译通过后进行波形仿真,验证二位全加器逻辑功能:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  1. 仿真通过后,参照原理图定义引脚。
  2. 生成编程并将文件下载到FPGA。
  3. 用开关和发光二极管测试FPGA的功能。
  4. 记录测试结果。

(1) 数据记录、分析与处理

二位全机器的输入输出状态记录表

A1A0B1B0CS0S1
0000000
0001001
0010001
0011100
0100010
0101011
0110011
0111110
1000010
1001011
1010011
1011110
1100001
1101100
1110100
1111101
(2) 实验结论

通过使用Quartus II设计工具,我们成功地设计并测试了一个二位全加器电路。该电路的功能包括正确计算两个二位二进制数的和,并产生相应的进位信号。实验结果表明,电路在各种输入条件下都表现出良好的性能,符合预期行为。

四、建议和体会

  1. 在进行实验时,应先确认74LS00、74LS86的功能完好,而后仔细检查芯片的引脚连接,确保连接正确,以避免电路故障。
  2. 实验中要确保安全,特别是在使用电源和连接线时,避免短路和电击风险。
  3. 这个实验有助于加深对异或门和电路设计的理解,同时也提供了一个实际的编程和模拟测试经验。为了更好地理解电路的运作,我们可以尝试设计更复杂的电路或改进现有的设计。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/201349.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于单片机智能电子密码锁设计

**单片机设计介绍,基于单片机智能电子密码锁设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的智能电子密码锁设计是一种利用单片机(如Arduino、Raspberry Pi等)和相关电子元件来…

纹理烘焙:原理及实现

纹理烘焙是计算机图形学中常见的技术,用于将着色器的细节传输到纹理中。 如果你的着色器计算量很大,但会产生静态结果,例如,这非常有用。 复杂的噪音。 NSDT在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器…

11月29日作业

自己封装一个矩形类(Rect)&#xff0c;拥有私有属性:宽度(width)、高度(height),定义公有成员函数: 初始化函数:void init(int w, int h) 更改宽度的函数:set_w(int w) 更改高度的函数:set_h(int h) 输出该矩形的周长和面积函数:void show() #include <iostream>using n…

Linux 进程(一)

1 操作系统 概念&#xff1a;任何计算机系统都包含一个基本的程序集合&#xff0c;称为操作系统(OS)。笼统的理解&#xff0c;操作系统包括 内核&#xff08;进程管理&#xff0c;内存管理&#xff0c;文件管理&#xff0c;驱动管理&#xff09; 其他程序&#xff08;例…

【数值计算方法(黄明游)】常微分方程初值问题的数值积分法:欧拉方法(向后Euler)【理论到程序】

文章目录 一、数值积分法1. 一般步骤2. 数值方法 二、欧拉方法&#xff08;Euler Method&#xff09;1. 向前欧拉法&#xff08;前向欧拉法&#xff09;2. 向后欧拉法&#xff08;后向欧拉法&#xff09;a. 基本理论b. 算法实现 常微分方程初值问题的数值积分法是一种通过数值方…

【Python】获取ip

要使用Python获取IP地址&#xff0c;可以使用socket库中的gethostname()函数和gethostbyname()函数。 import socketdef get_ip_address():hostname socket.gethostname()ip_address socket.gethostbyname(hostname)return ip_addressip get_ip_address() print("IP地…

Spark on yarn 模式的安装与部署

任务描述 本关任务&#xff1a; Spark on YARN 模式的安装与部署。 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a; Spark 部署模式的种类&#xff1b;Spark on YARN 模式的安装。 Spark 部署模式 Spark 部署模式主要分为以下几种&#xff0c;Spark Stand…

探索WebStorm 2023 Mac/win:最强大的JavaScript开发工具

在当今的软件开发领域&#xff0c;JavaScript已经成为了一种不可或缺的编程语言。而在众多的JavaScript开发工具中&#xff0c;WebStorm一直以其强大的功能和友好的用户界面脱颖而出。现在&#xff0c;我们迎来了全新的WebStorm 2023版本&#xff0c;它将带给开发者们更加出色的…

PyQt基础_008_ 按钮类控件QSpinbox

基本操作 import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class spindemo(QWidget):def __init__(self, parentNone):super(spindemo, self).__init__(parent)self.setWindowTitle("SpinBox 例子")self.resize(300,…

BTCPay Server:免费、安全、开源的比特币支付处理器 | 开源日报 No.90

MunGell/awesome-for-beginners Stars: 58.0k License: NOASSERTION 这个项目是一个收集开源项目的列表&#xff0c;旨在帮助初学者找到可以贡献代码的机会。该列表按编程语言分类&#xff0c;并列出了每个项目以及其标签 (如 “good-first-issue”、“beginner” 等)。主要功…

使用Ray创建高效的深度学习数据管道

大家好&#xff0c;用于训练深度学习模型的GPU功能强大但价格昂贵。为了有效利用GPU&#xff0c;开发者需要一个高效的数据管道&#xff0c;以便在GPU准备好计算下一个训练步骤时尽快将数据传输到GPU&#xff0c;使用Ray可以大大提高数据管道的效率。 1.训练数据管道的结构 首…

7. 栈

栈(stack)是一种遵循先入后出的逻辑的线性数据结构。我们可以将栈类比为桌面上的一摞盘子&#xff0c;如果需要拿出底部的盘子&#xff0c;则需要先将上面的盘子依次取出。我们将盘子替换为各种类型的元素&#xff08;如整数、字符、对象等&#xff09;&#xff0c;就得到了栈数…

二叉树OJ题之二

今天我们一起来看一道判断一棵树是否为对称二叉树的题&#xff0c;力扣101题&#xff0c; https://leetcode.cn/problems/symmetric-tree/ 我们首先先来分析这道题&#xff0c;要判断这道题是否对称&#xff0c;我们首先需要判断的是这颗树根节点的左右子树是否对称&#xff0…

基于AOP的声明式事物控制

目录 Spring事务编程概述 基于xml声明式事务控制 事务属性 isolation timeout read-only propagation 全注解开发 Spring事务编程概述 事务是开发中必不可少的东西&#xff0c;使用JDBC开发时&#xff0c;我们使用connection对事务进行控制&#xff0c;使用MyBatis时&a…

算法基础之字符串哈希

字符串哈希 核心思想&#xff1a;用p(131或者13331)进制数储存字符串每一位数的hash值 L—R的哈希值 h[R]-h[L-1]*PR-L1 哈希值很大—>modQ(264)变小 用unsigned long long 存 (出界) #include<iostream>using namespace std;typedef unsigned long long ULL;co…

嵌入式八股 | 校招秋招 | 笔试面试 | 精选题目

欢迎关注微信公众号【赛博二哈】获取八股PDF 并加入嵌入式求职交流群。提供简历模板、学习路线、岗位整理等 欢迎加入知识星球【嵌入式求职星球】获取完整嵌入式八股。 提供简历修改、项目推荐、求职规划答疑。另有各城市、公司岗位、笔面难题、offer选择、薪资爆料等 嵌入式…

【知识】简单理解为何GCN层数越多越能覆盖多跳邻居聚合信息范围更广

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 背景说明 大多数博客在介绍GCN层数时候&#xff0c;都会提到如下几点(经总结)&#xff1a; 在第一层&#xff0c;节点聚合来自其直接邻居的信息。在第二层&#xff0c;由于每个节点现在包含了其直接邻居的信息&a…

如何设置Linux终端提示信息

如何设置Linux终端提示信息 1 方法一&#xff1a;只能在VSCode或者Pycharm终端显示提示信息2 方法二&#xff1a;只能在MobaXterm等远程软件上显示提示3 方法三&#xff1a;避免用户没看到上面的提示&#xff0c;上面两种都设置一下 在使用远程终端时&#xff0c;由于多用户使用…

在很多nlp数据集上超越tinybert 的新架构nlp神经网络模型

在很多nlp数据集上超越tinybert 的新架构nlp神经网络模型 网络结构图测试代码网络结构图 测试代码 import paddle import numpy as np import pandas as pd from tqdm import tqdmclass FeedFroward(paddle.nn.Layer):

园区智能配电系统(电力智能监控系统)

园区智能配电系统是一种针对园区电力配送和管理的智能化系统。它的主要功能是实时监控设备运行情况&#xff0c;进行电能质量分析&#xff0c;监控电能损耗&#xff0c;以及分时段用电统计等。 具体来说&#xff0c;园区智能配电系统可以利用现代技术如RS-485总线通信、数据库管…