HDLBITS 练习 卡诺图化简部分
1 摩根定律和卡诺图化简
卡诺图画圈应遵循以下原则:
1、取大不取小,圈越大,消去的变量越多,与项越简单,能画入大圈就不画入小圈;
2、圈数越少,化简后的与项就越少;
3、一个最小项可以重复使用,即只要需要,一个方格可以同时被多圈所圈;
4、一个圈中的小方格至少有一个小方格不为其它圈所圈;
5、画圈必须覆盖完每一个填“1”方格为止。
练习
1,
因为只有一个0,可以选择零化简,得到反函数的最简公式的与或
则~(~a&~b&~c)
摩根定理得到out=a|b|c;
module top_module(
input a,
input b,
input c,
output out );
assign out=a|b|c;
endmodule
2 这次只有划圈,因为不熟练,所以就只两两划圈
~a~b~c + ~a~c~d +a~b~c+acd+~abc+~ac~d+~ac~d;
还是比较臃肿,观察之后化简,~b~c+~a~d+acd+~abc;
程序
module top_module(
input a,
input b,
input c,
input d,
output out );
assign out=(~b&~c)|(~a&~d)|(a&c&d)|(~a&b&c);
endmodule
3 不定态下的化简
比较简单,简化思路如下
程序
module top_module(
input a,
input b,
input c,
input d,
output out );
assign out=a|(~b&c);
endmodule
4 卡诺图化简
感觉无法化简,只能每个状态都写进去,写八个。不知道有没有大牛化简了的。该题跳过
5跳过
6
程序:
module top_module (
input [4:1] x,
output f );
assign f=~x[1]&x[3] |x[2]&x[4];
endmodule
7化简图
程序:
module top_module (
input [4:1] x,
output f
);
assign f=(~x[2]&~x[4]) | (~x[1]&x[3]) | (x[2]&x[3]&x[4]);
endmodule
8 用四选一选择器和多个二选一选择器实现卡诺图化简。找了下参考答案看看思路。
HDLBits(8)——Karnaugh Map to Circuit_Mount256的博客-CSDN博客
官网的参考答案如下:
module top_module (
input c,
input d,
output [3:0] mux_in
);
// After knowing how to split the truth table into four columns,
// the rest of this question involves implementing logic functions
// using only multiplexers (no other gates).
// I will use the conditional operator for each 2-to-1 mux: (s ? a : b)
assign mux_in[0] = (c ? 1 : (d ? 1 : 0)); // 2 muxes: c|d
assign mux_in[1] = 0; // No muxes: 0
assign mux_in[2] = d ? 0 : 1; // 1 mux: ~d
assign mux_in[3] = c ? (d ? 1 : 0) : 0; // 2 muxes: c&d
endmodule
用了三目运算符
HDLBITS 练习 卡诺图化简部分相关推荐
- FPGA:逻辑函数的卡诺图化简法
文章目录 最小项与最小项表达式 最小项的定义 最小项的性质 逻辑函数的最小项表达式 卡诺图化简法 用卡诺图表示逻辑函数 卡诺图的引出 两变量卡诺图 三变量卡诺图 四变量卡诺图 已知逻辑函数真值表,画卡 ...
- 数字电路3(逻辑函数的卡诺图化简法)
1.最小项的定义及其性质 2.逻辑函数的最小项表达式 3.用卡诺图表示逻辑函数 4.用卡诺图化简逻辑函数 5.含无关项的逻辑函数及其化简
- 十三、用卡诺图化简真值表例题(2)
卡诺图化简例题_zhjysx的博客-CSDN博客 目录 流程: 步骤一: 步骤二: 步骤三: 步骤四:
- 【数字电路抢救】3 逻辑函数的卡诺图化简
文章目录 变量卡诺图 函数卡诺图 卡诺图化简方法 具有约束的卡诺图化简 变量卡诺图 函数卡诺图 卡诺图化简方法 具有约束的卡诺图化简
- 十二、用卡诺图化简真值表(1)
卡诺图化简例题_zhjysx的博客-CSDN博客 卡诺图化简方法 先将真值表中的数据填入卡诺图 将图上填1的方格圈起来,要求圈的数量尽量少.范围尽量大,圈可重复包围但每个圈内必须有新的最小项. 写出每 ...
- 数字逻辑代数基础——基本定理、公式与卡诺图化简法、格雷码、LSFR等
复习一下数字电路,下次就省事直接看自己写的了. 目录 1.常用门电路图 2.逻辑代数的基本定理----化简时比较好用 3.化简逻辑函数时几个关键的公式(A'代表A的非) 4.格雷码与二进制的转换 5. ...
- 数字逻辑笔记7丨2.5逻辑函数卡诺图化简法
卡诺图的构成 1.卡诺图的构成 一种图形化简法,在逻辑设计中广泛应用 卡诺图:一种平面方格图,每个小方格代表一个最小项,又叫"最小项方格图" 卡诺图可以视为真值表图形化的结果 n个 ...
- (五)《数电》——化简法(公式化简法和卡诺图化简法)
目录 公式化简法 指定器件的逻辑函数化简 最小项 定义 性质 编辑 最大项 定义 性质 两者之间的关系 "最小项之和"形式 "最大项之积"形式 卡诺图 定义 ...
- 卡诺图化简法注意事项+竞争冒险知识点总结
今天反思一下卡诺图化简法中的注意事项.另,文章太短被限流了,因此补充一下竞争冒险相关的知识点. 一.卡诺图化简法 卡诺图方法在这里不介绍了,这种方法看起来简单,但如果不熟悉的话很容易出错,因此要对花圈 ...
- 一般时序电路设计(次态卡诺图化简法)
次态卡诺图 没有用到的状态用xxxx表示,当作约束项. 四个状态变量要分成四个卡诺图 Q3*,Q2*Q1*Q0* 四个卡诺图 对于Q3*的卡诺图,将次态卡诺图的每一行的左数第一个数填入Q3*的卡诺图的 ...
最新文章
- Python爬虫-04:贴吧爬虫以及GET和POST的区别
- Javascript高级程序设计——基本类型和引用类型的值
- python中 是什么运算符_Python中什么是算术运算符、赋值运算符和复合运算符?...
- java 股票 代码_Java中利用散列表实现股票行情的查询_java
- ASP.NET Request.UrlReferrer 问题
- hibernate4 could not initialize proxy - no Session
- lnmp mysql 命令_LNMP状态管理命令
- php5.3 PHP5.4 PHP5.5 php5.6 新特性/使用PHP5.5/PHP5.6要注意的
- 计算机组成原理硬件设计,计算机组成原理硬件设计报告..doc
- dnf脚本是php,dnf自动搬砖脚本教程autojs在使用
- 软工文档-操作手册和用户手册的区别
- Agv、Rgv 车辆控制调度系统开发第七篇-选车算法
- fastjson 1.2.24 反序列化导致任意命令执行漏洞
- Visual studio系统找不到指定文件的解决办法
- mysql 10106_mysql出现:Can’t create TCP/IP socket (10106) (#2004)
- 20190328-几种数据清洗的方法
- 中国人体工程学椅子行业市场供需与战略研究报告
- Android图表控件MPAndroidChart——BarChart实现多列柱状图以及堆积柱状图
- QT Quick项目简介
- CentOS7-命令-创建用户(useradd)
热门文章
- IP地址(IPv4)
- 2020家用千兆路由器哪款好_2020家用路由器推荐
- Android人脸支付功能,OPPO Find X成为首款支持微信人脸支付的安卓手机
- lisp 获取横断面数据_那位大神能帮忙写个从CAD图上提取横断面数据提取程序??...
- PTA-今天是本学期的第几周的第几天?
- vuecli3.0用scss写响应式网页,封装简单的百分比换算函数
- Matlap生成正弦波以及正弦波转为方波代码示例
- word公式编辑器复制粘贴未响应_Word公式编辑器使用中的常见问题的解决办法(图文教程)...
- 读书百客:《念奴娇·赤壁怀古》赏析
- VMware-Esxi6.7各个版本镜像文件iso下载链接