FPGA:组合逻辑电路的设计

news2024/9/19 10:40:27

文章目录

    • 组合逻辑电路的设计
    • 组合逻辑电路的设计步骤
    • 组合逻辑电路的设计举例
      • 例1
      • 例2

组合逻辑电路的设计

根据实际逻辑问题,求出所要求逻辑功能的最简单逻辑电路。

组合逻辑电路的设计步骤

1.逻辑抽象:根据实际逻辑问题的因果关系确定输入、输出变量,并定义逻辑状态的含义;

2.根据逻辑描述列出真值表;

3.由真值表写出逻辑表达式。根据所用器件,简化和变换逻辑表达式。

4.根据逻辑表达式画出逻辑图。

组合逻辑电路的设计举例

例1

某雷达站有A、B、C三部雷达,其中A和B消耗功率相等,C的消耗功率是A的两倍。这些雷达由两台发电机X和Y供电,发电机X的最大输出功率等于雷达A的功率消耗,发电机Y的最大输出功率是X的3倍。要求用与、或、非门设计一个逻辑电路,利用各雷达的起动和关闭信号,以最节约电能的方式起、停发电机。

解:(1) 逻辑抽象。

A、B、C是事件产生的原因,应定为输入变量;两台发电机 X 和 Y 是事件产生的结果,定为输出变量。

设输入变量A、B、C为1表示雷达起动,为0雷达关闭。输出变量X、Y为1,表示发电机起动;为0,表示发电机停止。

(2) 根据题意列出真值表

输 入输 入输 入输 出
ABCX Y
0000 0
0010 1
0101 0
0110 1
1001 0
1010 1
1100 1
1111 1

(3) 由真值表可画出卡诺图,用卡诺图简化得简化后的逻辑表达式。

X = A ˉ B C ˉ + A B ˉ C ˉ + A B C X=\bar{A} B \bar{C}+A \bar{B} \bar{C}+A B C X=AˉBCˉ+ABˉCˉ+ABC

Y = A B + C Y=A B+C Y=AB+C

(4) 根据简化后的逻辑表达式画出逻辑图。

例2

电热水器内部容器示意图中,A、B、C为三个水位检测元件。当水面低于检测元件时,检测元件输出高电平;水面高于检测元件时,检测元件输出低电平。试用与非门设计一个热水器水位状态显示电路,要求当水面在A、B之间的正常状态时,绿灯G亮;水面在B、C间或A以上的异常状态时,黄灯Y亮;水面在C以下的危险状态时,红灯R亮。

1.当水面在A、B之间的正常状态时,绿灯G亮;

2.水面在B、C间或A以上的异常状态时,黄灯Y亮;

3.水面在C以下的危险状态时,红灯R亮。

(1) 逻辑抽象

输入变量(A、B、C ):为三个检测仪的输出。
逻辑1:水位低于水位检测仪;
逻辑0:水位高于水位检测仪。

输出变量为绿灯G、黄灯Y、红灯R。
逻辑1:灯亮;
逻辑0:灯灭。

(2) 根据逻辑功能的要求,列出真值表。

1.当水面在A、B之间的正常状态时,绿灯G亮;
2.水面在B、C间或A以上的异常状态时,黄灯Y亮;
3.水面在C以下的危险状态时,红灯R亮。

在具体分析时,发现当逻辑变量被赋予特定含义后,有一些变量的取值组合根本就不会出现,这些最小项应被确定为无关项。

ABCGYR
000010
001×××
010×××
011×××
100100
101×××
110010
111001

(3)由真值表可画出卡诺图。

根据器件要求(与非门),需将逻辑表达式两次求反,变换为与非-与非式

G = A B ˉ = A B ˉ ‾ ‾ Y = A ˉ B ˉ + B C ˉ = A ˉ B ˉ + B C ˉ ‾ ‾ = A ˉ B ˉ ‾ ⋅ B C ˉ ‾ ‾ R = C \begin{array}{l} G=A \bar{B}=\overline{\overline{A \bar{B}}} \\ Y=\bar{A} \bar{B}+B \bar{C}=\overline{\overline{\bar{A} \bar{B}+B \bar{C}}}=\overline{\overline{\bar{A} \bar{B}} \cdot \overline{B \bar{C}}} \\ R=C \end{array} G=ABˉ=ABˉY=AˉBˉ+BCˉ=AˉBˉ+BCˉ=AˉBˉBCˉR=C

(4)依据逻辑函数式,可画出由与非门构成的逻辑图。

参考文献:

  1. Verilog HDL与FPGA数字系统设计,罗杰,机械工业出版社,2015年04月
  2. Verilog HDL与CPLD/FPGA项目开发教程(第2版), 聂章龙, 机械工业出版社, 2015年12月
  3. Verilog HDL数字设计与综合(第2版), Samir Palnitkar著,夏宇闻等译, 电子工业出版社, 2015年08月
  4. Verilog HDL入门(第3版), J. BHASKER 著 夏宇闻甘伟 译, 北京航空航天大学出版社, 2019年03月

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

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

相关文章

【寒假每日一题】DAY8 倒置字符串

牛客网链接:传送门 【❤️温馨提示】自己做一遍,再看解析效果更佳哟 描述 将一句话的单词进行倒置,标点不倒置。输入描述: 每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过100输出描述&#xff1a…

Open3D 点云投影至指定平面(Python版本)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 假设给定的平面为 a x + b y + c z + 1 = 0 ax+by+cz+1=0

Python基础(二十四):面向对象核心知识

文章目录 面向对象核心知识 一、面向对象三大特性 1、封装 2、继承 3、多态

音频音量调整中的ramp up down

在日常生活中不管是打电话还是听音乐,都会遇到音量不合适而去调整音量的情况。如果音量调整软件处理不好,就会听到pop noise。产生pop noise的原因是音量直接从当前值骤变到目标值,而不是缓慢的变。如果缓慢的变就不会有pop noise了。图1显示…

select for update是行锁还是表锁,还真得看情况

背景 看到许多写select for update是行锁还是表锁的文章,但每篇文章的结论好像都不太一样。同时,是行锁还是表锁的问题直接影响着系统的性能,所以特意为大家调研一番,也就有了本篇文章,一共为大家汇总验证了20个场景下…

MES系统选型攻略,优秀MES系统应具备哪些性质

在众多MES系统中,企业怎样才能找到最适合自己的产品?那么,一套高质量的MES系统,究竟有什么特点?随着全球经济一体化的发展,中美两国之间的贸易战争日趋白热化,中国作为一个生产大国,…

行为型模式 - 迭代器模式iterator

模式的定义与特点 迭代器模式(iterator Pattern),为的提是可以顺序访问一个聚集中的元素而不必暴露聚集的内部表象。多个对象聚在一起形成的总体称之为聚集,聚集对象是能够包容一组对象的容器对象。迭代子模式将迭代逻辑封装到一个…

ffmpeg源码编译vs2013版本

完整版安装ffmpeg 一、安装choco 1.Set-ExecutionPolicy AllSigned 2.Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.N…

链队基本操作(笔记版)

本节主要针对链栈的基本操作进行解析。 # coding:___utf-8___ # author:Guoxuan Sun time:2023/1/12 #链栈的基本操作 #链栈的创建与顺序栈的区别就是每个结点都有一个指针域 #同时链栈也是有两个指针front和rear #链栈中的front指针指向的结点是第一个结点,不是空…

关于MySQL中的存储引擎

存储引擎:(了解内容) 1、什么是存储引擎,有什么用? 存储引擎是mysql中特有的一个术语,其他数据库中没有。 存储引擎就是一个表存储/组织数据的方式。不同的存储引擎,表存储数据的方式不同。 目前…

基于Androidstudio的宠物交友app

需求信息: 客户端: 1:登录注册:用户可以通过自己的信息进行账号的注册 2:宠物信息:列表显示发布的宠物想,可以通过条件对宠物信息进行筛选,以及沟通意向点亮 3:宠物圈&am…

java调用python文件的几种方式

java调用python的契机来自于一个项目需要用到算法,但是算法工程师们写的python,于是就有了java后端调用python脚本的需求,中间遇到了许多问题,特此记录整理了一次。1、java调用python的方式有哪几种1.1 方法一:jpython…

选择排序.

一、简单选择排序 void select_sort(int a[], int len){ //len为数组长度for (int i 0; i < len-1; i){//n个数需要比较n-1趟int min i;//记录最小值的位置for (int j i1; j < len-1; j){if (a[j] < a[min]) min j;//更新最小值的位置} if (min ! i) swap(a[i], …

vue3 项目篇商场 之 初始化项目

目录vue3 项目篇商场 之 初始化项目1&#xff1a;安装 rem 适配src 同级目录下创建 postcss.config.jsmain.ts2 :使用字体图标加字体图标 &#xff08; Symbol 这个选项&#xff09;public / index.html使用效果3 sass4&#xff1a;vant3引入 按需引入 ( 非 vite )4-1 babel.co…

2022年,开源社最亮的星

开源社成立于 2014 年&#xff0c;是由志愿贡献于开源事业的个人成员&#xff0c;依 “贡献、共识、共治” 原则所组成&#xff0c;始终维持厂商中立、公益、非营利的特点&#xff0c;是最早以 “开源治理、国际接轨、社区发展、开源项目” 为使命的开源社区联合体。本次年度评…

常用的专业数据恢复软件有哪些?恢复数据就看这10个!

互联网时代&#xff0c;我们都习惯使用电脑来进行办公&#xff0c;电脑里面都保存着我们很多数据。数据的日积月累&#xff0c;会导致电脑的运行速度减缓&#xff0c;为此我们都会定期对电脑进行清理。 如果在清理过程中&#xff0c;不小心误删或者格式化了数据&#xff0c;有…

漏洞挖掘之信息收集

简介 对单一指定目标网站进行黑盒测试&#xff0c;最重要的就是信息收集&#xff0c;因为网站管理员肯定会在用户经常访问的主网站进行经常维护&#xff0c;而那些子域名&#xff0c;没有什么人访问的&#xff0c;可能就会忘记维护&#xff0c;挖洞的突破点大都在于子域名上&am…

Android/Linux 子系统Graphics图形栈入门普法介绍

Android/Linux 子系统Graphics图形栈入门普法介绍 写在最前面 由于工作原因&#xff0c;最近在公司做了一个关于Android/Linux 子系统Graphics图形栈入门相关知识的培训介绍&#xff0c;个人感觉对于想要了解入门这块的朋友还是有一定帮助的。由于博客不能直接放入ppt&#xff…

Spring AOP源码:代理的创建过程

前言 上篇文章讲解了AOP解析工作&#xff0c;将配置文件解析并封装成beanDefinition&#xff0c;由于配置文件中有5个通知方法&#xff0c;before、after、around、after-returning、after-throwing&#xff0c;这里会将其解析成5个advisor通知类。 <?xml version"1…

opencv——图像阈值设定及常见的滤波操作

1、图像阈值ret,dstcv2.threshold(src,thresh,maxval,type)src:输入图&#xff0c;只能是单通道图&#xff0c;也就是灰度图。thresh:阈值。maxval:当像素超过了阈值&#xff0c;所赋予的值。type:二值化操作的类型&#xff0c;包括binary&#xff0c;binary_iny,trunc,tozero,…