IC验证必备的数字电路基础知识(二):组合逻辑电路_编译器、数据选择器、数值比较器和竞争冒险现象实验-程序员宅基地

技术标签: 学习  数字电路基础  

参考教材:数字电路与逻辑设计(第2版)邬春明

目录

1. 组合逻辑电路分析

2. 组合逻辑电路设计( 重点,设计视角,以练题为主)

3. 竞争冒险

4. 组合逻辑电路

4.1. 编码器

4.2. 译码器

4.3. 加法器

4.4. 数据选择器

4.5. 数据分配器

4.6. 数值比较器


1. 组合逻辑电路分析

组合逻辑电路分析:给一张电路图,逆推出其逻辑表达式,列出真值表,然后分析出其功能

2. 组合逻辑电路设计( 重点,设计视角,以练题为主)

根据功能描述,直接写出逻辑表达式(通过逻辑思维),或者先写出真值表(简单粗暴)再写出逻辑表达式随后通过卡诺图化简。直接写出的逻辑表达式也可以通过卡诺图看看是否是最简。最后画出逻辑图。

以三人多数表决器且一人带否决权为例:

逻辑思维法:Y=1必须有A为1,B和C任意为1即可,随即得出Y=AB+AC;

真值表法:如下,写出真值表,写出令Y=1的所有组合相加,随后画卡诺图化简; 

3. 竞争冒险

竞争现象:当一个门级电路有两个输入信号,正好是反逻辑的时候,就有可能产生竞争现象如Y=A+A非,Y=A·A非。这是因为A非比A要多经过一个非门,可能由于到达时间的延迟导致逻辑输出出错。所以竞争说的是反逻辑的两个输入信号先后到达门级电路的现象

冒险现象: 由于两个互为反逻辑的信号在朝着相反电平跳变的时候会产生“毛刺”,这称为冒险现象。

如何判断是否存在竞争与冒险?

通过化简如果产生Y=A+A非,Y=A·A非的形式,那么就可能出现竞争冒险;在卡诺图中出现卡诺圈相切的情况也有可能出现竞争冒险。

如何消除竞争冒险?

1. 修改逻辑设计

2. 加滤波电容

3. 引入选通脉冲

1.修改逻辑设计

4. 组合逻辑电路

这里主要是了解对应概念,重点应该放到verilog中的对应部分,掌握具体的代码实现。

4.1. 编码器

在数字电路中,用二进制数来代表有关信号称为二进制编码,实现编码功能的称为编码器。编码器输入端一般是一个高电平(或低电平)的信号,输出端是代表该信号的二进制码。因为2^3=8,所以3个输出端的编码器可以表示8个输入信号端,这是8-3线编码器。还有BCD编码器(10输入,4输出)。

编码器一般应对出现一个信号有效(高有效或低有效)的情况,而当出现多个信号有效时,则需要引入优先编码器,优先编码器从最高位依次看到最低位,依第一个有效的信号编码。

4.2. 译码器

与编码器的功能相反。生活中常见的一个译码器就是计算器。以一个数字为例。当输入0~9的时候,译码器会将通过译码表点亮对应信号。

4.3. 加法器

半加器:不考虑低位的进位

记住一位二进制半加器的逻辑表达式

S(和sum)是单1为1(A和B中出现一个1),那么S的逻辑表达式就为A和B的异或

CO(进位向上carry bit on)是同1为1,所以CO的逻辑表达式是A与B。

全加器:考虑进位

 一位二进制全加器的逻辑表达式根据上述思路同理可推

4.4. 数据选择器

数据选择器是两输入一输出的器件。两个输入分别是数据输入信号和地址输入信号,数据输入信号是2^n个,地址输入信号是n位二进制,一一对应。

4.5. 数据分配器

数据分配器是两输入一输出,其中D是输入信号,数据分配器根据输入地址,将输入信号分配到对应的输出端上。可以发现如果将D变换为1,则变成了译码器。可以这样理解,数据分配器和译码器都是分配信号到对应地址的,一个分配的是信号D,一个分配的是信号1。

  

4.6. 数值比较器

数值比较器是两输入三输出,G表示good,相等,M和L分别表示一方大

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_55225128/article/details/127050598

智能推荐

mysql优先队列排序算法_硬核!手写一个优先队列-程序员宅基地

文章浏览阅读190次。前言事情还要从一个故事讲起:对于上面那只可爱的小狗狗不会,本篇即为该教程,首先,我要告诉这只可爱的小狗狗,这种问题你要使用的数据结构为优先队列,每次操作的时间复杂度为O(logn),而整个过程的时间复杂度为O(nlogn).对于本片的设计与实现和堆排序可能有些相似,因为他们都借助堆来实现算法和数据结构,下面详细介绍优先队列的设计与实现。堆而堆就是一类特殊的数据结构的统称。堆通常是一个可以被看做一棵..._mysql 的堆排序

C# c++ Json序列化与反序列_c++json序列化与反序列化-程序员宅基地

文章浏览阅读231次。C# 序列化与反序列化, 读文件和写到文件_c++json序列化与反序列化

智能制造控制中的AI研究进展-程序员宅基地

文章浏览阅读446次,点赞14次,收藏14次。1.背景介绍智能制造控制是现代制造业中的一个重要领域,它涉及到制造过程中的自动化、智能化和优化。随着计算能力的提高和数据技术的发展,人工智能(AI)技术在智能制造控制中的应用也逐渐成为主流。本文将从背景、核心概念、算法原理、代码实例、未来趋势等多个方面进行深入探讨,以帮助读者更好地理解AI在智能制造控制中的应用和研究进展。1.1 背景介绍智能制造控制是制造业中的一个重要领域,涉及到制造...

2018美亚杯个人赛刷题-程序员宅基地

文章浏览阅读5.4k次,点赞6次,收藏27次。文章目录写在前面题目1.E2.C3.B -D-4.C -E-5.C6. D7.D8. A9.A10.C11.E12.D13.D14.A15.D16.E17.D18.A19. B20.C21.E22.D23.A24.C25.C26.D27.D28.C29.D30.D31.C32.E33.D34.B -C-35. -E-36.A37.A38.D39.D -C-40.B41.C42.E -D-43.C44.B45.A46.C47.E48.B49.D50.CPS写在前面这是美亚杯2018个人赛的个人_2018美亚杯个人赛

ECS框架学习(Entitas)入门_ecs框架 entitas-程序员宅基地

文章浏览阅读6.2k次。公司要求使用ECS框架经行开发,没办法只能自己学习了。记录一下学习过程。框架的含义可以去其他地方查看,我这里写一点我的理解(新人,不对请谅解)。ECS即Entity-Component-System(实体-组件-系统) 的缩写。它做到了行为、数据分开,Component存数据。Entity用来就是由各个Component组成。System用来经行他们中间的通信。对于网上或者官方说速度更快、更容..._ecs框架 entitas

vars()函数用法-程序员宅基地

文章浏览阅读1.5w次,点赞10次,收藏35次。python内置函数。vars() 函数返回对象object的属性和属性值的字典对象。vars([对象])当函数不接收参数时,其功能和locals函数一样,返回当前作用域内的局部变量。当函数接收一个参数时,参数可以是模块、类、类实例,或者定义了__dict__属性的对象。#作用于模块>>> import time>&a_vars()

随便推点

ubuntu proxy-程序员宅基地

文章浏览阅读68次。升级到Ubuntu10.04后,发现apt-get的代理设置有改变了,在9.10以前使用“http_proxy”环境变量就可以令apt-get使用代理了export http_proxy=http://127.0.0.1:8000sudo apt-get update然后在Ubuntu10.04下就无效了,看来apt-get已经被改成不使用这个环境变量了。一阵郁闷后,最后..._重装ubuntu proxy address

Qt笔记_正则表达式(regular expression)_qt regex-程序员宅基地

文章浏览阅读9.2k次,点赞4次,收藏28次。手册里使用的词汇是 regexp 优点: 方便地完成字符串的一些处理操作,例如验证、查找、替换和分割等。类名称为QRegExp类,是基于Perl的正则表达式语言,支持Unicode。头文件:#include < QRegExp >//(尖括号中的空格是为了适应markdown而添加的,编程时不使用多余的空格)qmake:QT += core帮助文档中指出:All functions in_qt regex

系统设计与分析homework5_sdlc的第一阶段是分析。写一个简单的报告,包括: 分析新系统需要解决的问题 l可行-程序员宅基地

文章浏览阅读151次。一、根据订旅馆建模文档,Asg-RH.pdf:1. 绘制用例图模型(到子用例)给出 make reservation 用例的活动图2、根据课程练习“投递员使用投递箱给收件人快递包裹”的业务场景分别用多泳道图建模三个场景的业务过程场景一x科技公司发明了投递柜,它们自建了投递柜以及远程控制系统。注册的投递员在推广期免费使用投递柜。由于缺乏资源,仅能使用y移动平台向客户发送短信通知。..._sdlc的第一阶段是分析。写一个简单的报告,包括: 分析新系统需要解决的问题 l可行

LayUI的后台管理模板_layui后端模板-程序员宅基地

文章浏览阅读8k次,点赞2次,收藏18次。  以前没有做网页开发不知道的内容太多了,现在开始做了这一块,发现内容真多。  星期五接到一个资产核查的任务,时间紧,我对网页这一块的内容还不是很熟练,有些着急,在网上一搜,LayUI的模板,有很多好评和讲解,拿来一用,感觉很不错。  这个后台系统可以很快上手,界面部分不用操心太多,很多页面有实例,略微改动就可以直接使用。  写程序界面是个大问题,这下省事多了,虽然后期项目使用LayUI比较少,但做一些中小型的项目真的是很好的选择,最主要的就是快。..._layui后端模板

常见的数组概念-程序员宅基地

文章浏览阅读90次。常见数组_常见的数组

如何从零开始实现TDOA技术的 UWB 精确定位系统(1)_uwb_tdoa-程序员宅基地

文章浏览阅读1.1k次,点赞28次,收藏24次。这是一个系列文章,将向你介绍如何从零开始实现一个使用TDOA技术的 UWB 精确定位系统。重要提示劝退说明Q:做这个定位系统需要基础么?A:文章不是写给小白看的,需要有电子技术和软件编程的基础Q:你的这些硬件/软件是开源的吗?A:不是开源的。这一系列文章是授人以“渔”,而不是授人以“鱼”。文章中我会介绍怎么实现UWB定位系统,告诉你如何克服难点,但不会直接把PCB的Gerber文件给你去做板子,不会把软件的源代码给你,不会把编译好的固件给你。我不会给你任何直接的结果,我只是告诉你方法。_uwb_tdoa