数字电路基础---组合逻辑

news2024/11/18 3:35:15

目录

数字电路基础---组合逻辑

1、简介

2、实验任务

3、程序设计

4、仿真验证


数字电路基础---组合逻辑

       FPGA 或者 IC 内部的逻辑一般包括组合逻辑和时序逻辑,组合逻辑一般指的是一些门电路或者选择器、比较器一起组成的逻辑。

1、简介

        数字电路根据逻辑功能的不同特点,可以分成两大类,一类叫组合逻辑电路(简称组合电路),另一类叫做时序逻辑电路(简称时序电路)。下面我们来看下上面是组合逻辑,如下图所示:

       从上图中,我们可以看出,a/b/c 为组合逻辑的输入,x y 为组合逻辑的输出,x y 的值只取决于a/b/c 的当前的输入值,和 a/b/c 的之前的输入是没有任何关系的,这种电路我们就叫做组合逻辑电路。

       组合逻辑电路在逻辑功能上的特点是任意时刻的输出仅仅取决于该时刻的输入,与电路原来的状态无关。组合逻辑电路没有记忆功能,没有反馈环路。

       时序逻辑电路在逻辑功能上的特点是任意时刻的输出不仅取决于当时的输入信号,而且还取决于电路原来的状态,或者说,还与以前的输入有关。

组合逻辑电路的一般分析方法(组合逻辑电路图→求解逻辑功能)如下:

  • ⚫ 组合逻辑电路图→
  • ⚫ 列出逻辑函数表达式(迭代法,由输入逐级向后推)→
  • ⚫ 求标准表达式或简化的表达式(转换或化简)→
  • ⚫ 列出相应的真值表→判断电路功能。

下面我们以一个例子来分析逻辑电路。

2、实验任务

分析组合逻辑电路功能。

3、程序设计

根据组合逻辑电路的分析方法,我们先来看该组合逻辑电路图,

通过上图,我们可以列出,F1=A&B,F2=B&C,F3=A&C,那么由迭代法得到F=F1+F2+F3=A&B+B&C+A&C

列出真值表如下:

      由上面的的真值表,我们可以得出,该组合逻辑是一个三人多数表决器。

       实际的 IC 或者 FPGA 逻辑电路里面,组合逻辑是有时间延迟的,也就是说组合逻辑的输入变化到输出变化之前是有时间的,不同组合逻辑的延迟是不一样的,比如与门和非门的延迟可能不一样。

       我们先来学习下什么是逻辑级数,逻辑级数指的是组合逻辑的深度,深度越大,组合逻辑越复杂,延迟越大。比如与门的逻辑级数就是 1 级,而我们本次例子三人多数表决器就是 2 级逻辑深度。也就是说从组合逻辑输入到输出需要穿过的组合逻辑单元个数。比如本次例子三人多数表决器先穿过一个与门,然后再穿过一个或门。

       典型的模块设计是由组合逻辑和时序逻辑构成的,组合逻辑一般位于寄存器之间,如下图所示:

       如果组合逻辑总的延迟之和(tDELAY)大于一个时钟周期,那么组合逻辑后级寄存器就会采样失败。因此,组合逻辑的逻辑级数不能太长,逻辑级数太长就会导致总的延迟太大。因此在时序分析概念里面,典型的时序问题都是组合逻辑级数太长引起的,如果出现时序问题,那么一般需要我们对组合逻辑进行优化,减少逻辑级数,或者在组合逻辑中间插一级或者多级寄存器来减少组合逻辑的延迟。

       信号在 IC/FPGA 器件内部通过连线和逻辑单元时,都有一定的延时。延时的大小与连线的长短和逻辑单元的数目有关,同时还受器件的制造工艺、工作电压、温度等条件的影响。信号的高低电平转换也需要一定的过渡时间。由于存在这两方面因素,多路信号的电平值发生变化时,在信号变化的瞬间,组合逻辑的输出有先后顺序,并不是同时变化,往往会出现一些不正确的尖峰信号,这些尖峰信号称为“毛刺”

        如何进行毛刺消除??详情可参考:组合逻辑毛刺消除_OliverH-yishuihan的博客-CSDN博客

4、仿真验证

本节不需要进行仿真。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

程序员必备超好用下载器IDM(Windows下载)

程序员必备现役最强下载器IDM(Windows下载) 1 介绍 IDM,全称Internet Download Maneger,在下载界可谓是大名鼎鼎,不仅仅是其强大的32线程下载,还因为其无与伦比的资源嗅探功能,Internet Downlo…

监听关闭浏览器触发事件

关闭和刷新页面都会触发,一般都不用来做弹窗提示,一般用来做数据操作 // 监听页面关闭 清除本地缓存 window.onbeforeunload function (e) { localStorage.removeItem("statement"); }; // 监听页面关闭 提醒是否关闭 现在不允许自定义内容了…

生命周期监听的使用和源码解析

定义SpringApplicationRunListener来监听springApplication的启动 1.通过实现springApplicationRunListener来实现监听。 2.在 META-INF/spring.factories 中配置 org.springframework.boot.SpringApplicationRunListener自己的Listener。 在默认的springboot配置中就有给我…

主数据概念过时了吗,在这些大数据技术背景下,数据平台等新技术的出现,我们还需要主数据吗?

当企业信息化发展到一定程度时, 数据管理必然会被提升为企业的一个重要管理领域。数据管理的好坏程度, 很大程度上影响着企业信息化进程, 决定着企业信息化最终的成效。 企业信息化建设基本上都是从部门级开始的, 从部门的实际业务需要出发独立建设信息系统, 随着这些信息系统…

2023年地图产业研究报告

第一章 行业概况 地图行业是一个快速发展且关键的信息技术领域,通过收集、处理和可视化地理信息,为用户提供导航、位置服务、地理信息系统和地图数据分析等应用。地图行业的发展受益于全球定位系统(GPS)技术的进步和移动设备的普…

K-verse 合作伙伴访谈|Dalgomz 将韩国旅游体验带入元宇宙

■ 请向我们介绍 Dalgomz 。 你好!我是 Yong-Min Park,Dalgomz 项目的首席执行官。我们的项目专注于通过使用区块链技术创建旅游福利会员计划来促进韩国江原道雪岳地区的旅游业。从雪岳地区开始,Dalgomz NFT 持有者在韩国各地旅行时可以获得现…

基于局部自适应滤波器的双边滤波器matlab完整代码分享

双边滤波(Bilateral filter)是一种可以保边去噪的滤波器。其输出像素的值依赖于邻域像素的值的加权组合。从效果来说,双边滤波可产生类似美肤的效果。皮肤上的皱纹和斑,与正常皮肤的差异,远小于黑白眼珠之间的差异,因此前者被平滑,而后者被保留。如图所示(右图为经过处…

Oracle 查询优化改写(第五章)

第五章 使用字符串 1.遍历字符串 SELECT 天天向上 内容&#xff0c;level&#xff0c;substr(天天向上, LEVEL, 1) 汉字拆分FROM Dual CONNECT BY LEVEL < Length(天天向上);2.计算字符在字符串中出现的次数 3.从字符中删除不需要的字符 若员工姓名有元音字母AEIOU&#x…

pikachu靶场-敏感信息泄露

敏感信息泄漏简述 攻击方式 常见的攻击方式主要是扫描应用程序获取到敏感数据 漏洞原因 应用维护或者开发人员无意间上传敏感数据&#xff0c;如 github 文件泄露 敏感数据文件的权限设置错误&#xff0c;如网站目录下的数据库备份文件泄露 网络协议、算法本身的弱点&#xff…

阿里云ACK worker节点硬盘扩盘

1、在控制台选择要扩盘的服务器&#xff0c;进入硬盘并选择扩盘 2、进入盘后点击已备份扩盘 3、选择扩盘方式以及要扩盘的最后大小 4、确认是否按我们的要求扩盘的 5、扩盘分区和文件系统 6、手动扩盘操作 ACK扩盘文档 查看分区情况 [rootiZj6caed975ouwzuyu564vZ ~]# ls…

C++技能 ( 1 ) - 使用Lambda表达式【详解】

系列文章目录 C高性能优化编程系列 深入理解软件架构设计系列 高级C并发线程编程 C技能系列 期待你的关注哦&#xff01;&#xff01;&#xff01; 现在的一切都是为将来的梦想编织翅膀&#xff0c;让梦想在现实中展翅高飞。 Now everything is for the future of dream w…

SpringBoot项目启动成功但接口访问404

问题描述&#xff1a;SpringBoot项目启动成功&#xff0c;但使用postman调接口时报404 分析&#xff1a;找不到路径&#xff0c;controller未生效。 解决&#xff1a;将com.local.coupon.template.templateimpl改为com.local.coupon.template。SpringBoot会扫描到com.local.co…

2023-6-16-第七式桥接模式

&#x1f37f;*★,*:.☆(&#xffe3;▽&#xffe3;)/$:*.★* &#x1f37f; &#x1f4a5;&#x1f4a5;&#x1f4a5;欢迎来到&#x1f91e;汤姆&#x1f91e;的csdn博文&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f49f;&#x1f49f;喜欢的朋友可以关注一下&#xf…

外包能转正吗?外包员工能变正式员工吗?

外包员工能变正式员工吗&#xff1f;这里辟谣一波&#xff0c;许多外包都说有转正机会。实际情况是几乎等于零。其中&#xff0c;三方外包更是可以直接和零划等号。三方外包的转正&#xff0c;往往就是给个内推机会&#xff0c;然后和面试官会熟悉一些。 然而这些都没什么价值…

【SpringCloud入门】-- 初识Eureka注册中心

目录 1.SpringCloudEureka简介 2.什么是CAP原则&#xff1f; 3.注册中心的概念&#xff1f; 4.SpringCloud其他注册中心 5.搭建Eureka注册中心 6.eureka的配置(主要是server&#xff0c;instance&#xff0c;client) 7.eureka集群概念 8.eureka集群搭建 1.SpringCloudE…

Unity 之 使用后处理的方式实现暗角效果

Unity 之 后处理URP工程实现边角压暗效果 一&#xff0c;URP工程配置二&#xff0c;代码调用三&#xff0c;实现原理 一&#xff0c;URP工程配置 在Hierarchy界面&#xff0c;创建空物体 GameObject&#xff0c;右键选择Volume菜单下的Global Volume。 创建后的结果&#xff1…

ahut 月赛1

心得: 一点一点理解&#xff0c;对于一段要学习的代码&#xff0c;跟着写下来&#xff0c;理解一点写一点 对于一道题目&#xff0c;用记事本&#xff0c;看题目&#xff0c;看一句题目&#xff0c;用自己的话概括一句&#xff0c;写在记事本上&#xff0c;并将自己的 想法一…

在JavaScript中的数据结构(链表)

文章目录 链表是什么&#xff1f;链表的好处详细的看一下列表单向链表实操链表向链表尾部追加元素从链表中移除元素根据元素的值移除元素在任意位置插入元素查找链表是否有改元素检查链表是否为空检查链表的长度查看链表头元素把LinkedList对象转换成一个字符串打印链表元素 双…

盖雅「劳动力账户」:制造业全面工时成本管理利器

制造业是国民经济的重要支柱之一&#xff0c;也是国家实体经济发展的重点。随着国际竞争加剧&#xff0c;制造业企业需要不断优化和提升生产效率、降低成本&#xff0c;并保证产品的质量和可靠性。 在这过程中&#xff0c;制造业企业需要寻找新的技术与方法&#xff0c;挖掘生…

saltstack草稿

salt [options] <target> <module.function> [arguments] salt的自建函数&#xff1a; salt * test.rand_sleep 120 salt/salt/modules/test.py 这个是salt自带的包 salt * disk.usage salt -G ipv4:192.168.50.12 cmd.run ls -l /home salt * grain…