HDLBits 系列(8)真值表产生工具推荐

举报
李锐博恩 发表于 2021/07/15 02:22:13 2021/07/15
【摘要】 目录 原题复现 审题 我的设计 工具推荐 原题复现 工具,也只能作为一个参考的工具,我们感谢它的存在,给了我灵感与思路,复习或者纠错等。 关于真值表这一个话题,HDLBits这个网站讲的也确实通俗 例如: 组合表示电路的输出仅是其输入的函数(在数学意义上)。 这意味着对于任何给定的输入值,只有一个可能的输出值。 因此,描述组合函数行为的一种方法是显式列出输...

目录

原题复现

审题

我的设计

工具推荐


原题复现

工具,也只能作为一个参考的工具,我们感谢它的存在,给了我灵感与思路,复习或者纠错等。

关于真值表这一个话题,HDLBits这个网站讲的也确实通俗

例如:

组合表示电路的输出仅是其输入的函数(在数学意义上)。 这意味着对于任何给定的输入值,只有一个可能的输出值。 因此,描述组合函数行为的一种方法是显式列出输入的每个可能值的输出。 这是一个真值表。

对于N个输入的布尔函数,有2N个可能的输入组合。 真值表的每一行列出一个输入组合,因此总会有2N行。 输出列显示每个输入值的输出。

就如下真值表而言:

Row Inputs Outputs
number x3 x2 x1 f
0 0 0 0 0
1 0 0 1 0
2 0 1 0 1
3 0 1 1 1
4 1 0 0 0
5 1 0 1 1
6 1 1 0 0
7 1 1 1 1

审题

最笨的方法来用电路表达出来,也是:

假设我们要构建上述电路,但仅限于使用一组标准逻辑门。 您将如何构建任意逻辑函数(表示为真值表)?

创建实现真值表功能的电路的一种简单方法是以乘积和形式表示该功能。 乘积的总和(含义为OR)(含义为AND)意味着在真值表的每一行中使用一个N输入与门(以检测输入何时与每一行匹配),然后是一个或门(OR gate),后者仅选择导致结果为 “ 1”输出。

也就是说,用乘累加的方式,或者说用与或式解决。

何况我们本身有着数字电路的基础,我们可以用卡诺图来化简下,更简洁的设计电路,经过化简,我们的输出表达式为:

f = x1 &x3 | x2&(~x3);

我的设计

代入HDLBits


  
  1. module top_module(
  2. input x3,
  3. input x2,
  4. input x1, // three inputs
  5. output f // one output
  6. );
  7. assign f = x1 &x3 | x2&(~x3);
  8. endmodule

工具推荐

最后,推荐一个自动产生真值表的网站,十分好用。

Truth Table Generator

最后,不得不提的是,千万不要把或(|)与加(+)混为一谈丫。

 

 

 

文章来源: reborn.blog.csdn.net,作者:李锐博恩,版权归原作者所有,如需转载,请联系作者。

原文链接:reborn.blog.csdn.net/article/details/103213921

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。