网站搜索:
第3节 逻辑图
文章出处:与非网
更新于2008-05-16 11:57:16

在最简化逻辑系统时,真值表的作用不是很明显,布尔代数方法也有其局限性。而逻辑图为最简化逻辑系统提供了最简单、最有用的手工方法。逻辑图和真值表所包含的信息是完全一样的,但是逻辑图方式可以很容易的看出重复的输入。逻辑图为二维结构(有时甚至是三维),并且其含有的信息与真值表一样。逻辑图以阵列的方式排列信息,所以这些信息在逻辑域内都是连续的,这样其中的逻辑关系就可以很简单的确定下来。真值表中的信息可以很方便的重构于逻辑图中。如下图所示,一个三-输入的真值表映射到了一个8单元逻辑图中;其中逻辑图的单元数就是真值表的行数。

在逻辑图的单元和真值表的行之间存在着一一映射的关系。单元的排列方式使得一组四个有关系的单元来表示每个逻辑变量域(A域就是一行四个单元,B和C是一块四个单元)。逻辑图中单元的特殊排列方式不是唯一的,但是这种排列方式很有用,使得每个域都与其它的域有两个单元相交叠。如图所示,逻辑图中逻辑域是连续的,但是在真值表中它们不连续。正是逻辑图中这样连续的逻辑域使得它们非常有用。
一般逻辑图中,都在其逻辑图边界写上变量名,在每行每列的左边和上边写上1和0来表示每行每列变量的值。下图所示的是一张典型的逻辑图。注意,逻辑图边界的变量值要根据真值表中每行从左到右的顺序写。比如,在真值表中,有一行如下图阴影部分,A=1,B=0,C=1,就对应到了相应的逻辑图的阴影部分。

真值表中的输出信息也被转化到了相应的逻辑图单元中,所以逻辑图和真值表含有同样的信息。在逻辑图中,出现相邻的1(水平方向或垂直方向都可以)就称为“逻辑相邻”,而这些相邻就可以用来找出并消除重复的输入。用这样的方法来使用逻辑图就称为卡诺图(或是K图)。

使用K图时,找出并消除逻辑系统中重复输入的关键就是确定SOP等式中的所有的1“组”,或是POS等式中所有的0“组”。一个有效组必须是2的多少次方(就是说有1,2,4,8,16个元素的组才是有效组),同时,该组也必须是方形,而不能是对角形,弯形或其它非方形形状。在SOP-K图中,每一个1都必须至少属于一组,并且该1要属于其中最大的一组(在POS-K图中,0也类似)。由于要求所有的1(或0)都要组在一起,并属于其中最大的一组,这样就会使得有一些1同时属于好几组。实际使用时,在K图上用环行框将各组1(或0)框起来。当图中所有的1都组在其最大的环行框内时,分组过程就结束了。然后就可以直接从K-图中写出逻辑等式。如果分组正确,那么也就产生了最简化逻辑等式。
在K图中可以用环行框内的乘积项来写出SOP等式,然后将所有乘积项加在一起。类似的,在K图中可以用环行框内的和项来写出POS等式,然后将所有和项乘在一起。环行框元素是根据K图外围的逻辑变量来定义的。SOP环行项使用小项因子(变量的0域在环行项中就取补码形式),POS环行项使用大项因子(变量的1域在环行项中取补码形式)。如果环行项圈住的逻辑变量域既有1也有0,那么该变量就是多余的,并不在在环行项中。再表述一遍,环行项内的逻辑变量只能是其变量域全是1或全是0 。图的边界与其对面的边界是连续的,这样环行圈就可以圈住边界而不用把中间的1和0组全包括进来(下图演示了这一过程)。
一般K图只在2,3,4,5,6输入变量的系统中使用并找出最简化逻辑表达式(超过6个变量,该方法就不是很灵便了)。一般2,3,4输入变量系统中使用该方法是很直观的,下面将会用几个事例来演示。一般情况下,都是先把1(或0)组成的唯一环行圈画出来。在画环行圈的时候,要保证所有的1(0)都至少在一组中,并且没有重复的环行圈存在(一个包括1或0的重复环行圈其实已经在其它环行圈中有表示了)。

最下项SOP等式和最大项POS等式可以很简单的转化到K图中。只要将1(SOP等式)和0(POS等式)放到等式所列的单元中。对于SOP等式,没有收到1的也没有列出的的单元,都写上0。类似相反的方法也适用于POS等式。如下图所示演示这一过程。

对有5或6个变量的系统,可以使用两种不同的方法。一种方法是在1或2个变量的K图中嵌套一个4变量K图,组成一个“超级图”,还有一种方法是使用“K图键值变量”。用于写出5或6变量最简化等式的超级图技术和2,3,4变量K-图技术基本一样,但是4-变量图必须要嵌套在1或2变量的超级图中,如下图所示。如果在超级图单元中子图是相邻的并且子图中的1或0也是相邻的,那么可以认为1或0域在超级图中也相邻。图中的样式演示了K图中相邻单元的例子。演示的SOP等式的K图。注意,如果超级图中子图的1出现在两个子图的同一单元位置切该超级图变量值不同,那么该超级图的变量就不出现在乘积项中。

<<上一节    下一节>>



关于OpenHW | OpenHW使用说明 | FAQ | 相关法律 | 版权声明 | 网站地图
联系邮件:xiaoquan@eefocus.com  联系电话: 010-58859035-8012
Powered by eefocus.com