如何快速设计《数字电路》的JK触发器、T触发器描述的驱动方程对应的次态K图——异或卡诺图法

0、前言

本人与知乎的本文作者 @间宫羽咲sama 是同一人。内容除了删去了文末的彩蛋以外大体一致。附一个原文链接https://zhuanlan.zhihu.com/p/143450746,如果对彩蛋有兴趣(雾)的童鞋可以去康康(虽然这次选的图没什么意思,下次写文章放露娜的图)

打个广告:《一图复习数字电路》已经完工,一张图带你复习一本数字电路,你值得拥有。这个我做了一个带超链接的pdf格式,发了网盘链接了,有爱自取。

https://editor.csdn.net/md/?articleId=106501797

1、正文

做数电作业时,我们经常会遇到要求使用JK触发器、T触发器用次态K图法设计驱动方程。每次做这种题我们都会吐槽——明明现在Verilog只支持D触发器,谁还无聊到用JK触发器和T触发器设计电路啊。这种题不就是单纯地折腾我们吗

对于2变量的状态Q1Q0,假设输入为一位X,设计JK触发器就得画J1/K1/J0/K0一共4个卡诺图,设计T触发器画2个,一共就是6个。这还不得累死我啊

当然,有没有不画图的办法呢?当然有。按照我们老师的说法,设计JK触发器的J时,可以把对应Q=0的地方保留,将Q=1的地方脑补成x。设计JK触发器的K时,可以把对应Q=1的地方取反保留,将Q=0的地方脑补成x。设计T触发器时保留Q=0,对Q=1取反。这样就不需要画新的卡诺图了,我们就能脑补出这6个卡诺图了。

然而理想很美满,现实很骨感。对于我这种记忆力本就差还粗心的菜鸡,且不说这一串规则能不能记住了。就算是对着规则脑补,因为要算6个,经常脑补着脑补着就脑补错了,然后算错直接微笑GG,直接作业重做,一小时功夫白费。

于是我就寻思着:能不能设计得一样就能直观地看出来,最好就是直接可以画圈圈的卡诺图的模样,不要让我再脑补了。我脑子内存本来就有限,这不是为难我吗?

有想法就去做。经过我的观察,我总结出来了一个“伪卡诺图”,它包含所有这6个卡诺图的信息,而且是可以直观可提取的,直接可以在上面画圈的那种。可以起到1个顶6的效果

我自己给这个“伪卡诺图”命了个名字,叫做“异或卡诺图”。我也把我自创的方法命名为“异或卡诺图法”。

既然咱是工科,那就不整理论这些花里胡哨的,直接从一个例子上手——

在这里插入图片描述

这里的行指标值得是第一列对应行在的元素。

比如第1行第2列的00、第1行第3列的01对应的行指标为第1行第1列的00
第2行第2列的00、第2行第3列的11对应的行指标为第2行第1列的01
以此类推

例如对于这样一个卡诺图:
在这里插入图片描述

计算出来得到:

这个操作是不是很简单?因为我们用到了异或运算,我们不妨称新的卡诺图为“异或卡诺图”。

再来看一次上面那个图。我们会发现J1、K1的卡诺图合并起来(忽略x)就是“异或卡诺图”的高位。J0、K0的卡诺图合并起来(忽略x)就是“异或卡诺图”的低位。T1、T0的卡诺图合并起来分别是“异或卡诺图”的高位、低位。这个操作看起来很平凡,但是在“异或卡诺图”上圈卡诺圈就变得直接多了,而且基本不会犯错。

当然,既然这个操作是如此地简单,那么证明其实也是相当简单的,使用驱动方程的定义立即可以证出。有兴趣的读者不妨将其作为习题练练手,没有兴趣的读者直接用即可,毕竟工科嘛,关键还是用。
在这里插入图片描述

©️2020 CSDN 皮肤主题: 游动-白 设计师: 上身试试 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值