逻辑函数的卡诺图化简法案例分析
1.卡诺图化简逻辑函数的原理
(1)2相邻项结合(用一个包围圈表示),可消去1个变量。如图6.39所示。 (2)4相邻项结合(用一个包围圈表示),可以消去2个变量,如图6.40所示。 (3)8相邻项结合(用一个包围圈表示),可以消去3个变量,如图6.41所示。
C1BCDA1ABDD1ABC11B1A1BD(四角)D1BC111ABD11C11BCD
图6.39 2个相邻的最小项合并 图6.40 4个相邻的最小项合并
C1C11A111B11D11B11
图6.41 8个相邻的最小项合并
总之,2n个相邻的最小项结合,可以消去n个取值不同的变量而合并为l项。
2.用卡诺图合并最小项的原则
用卡诺图化简逻辑函数,就是在卡诺图中找相邻的最小项,即画圈。为了保证将逻辑函数化到最简,画圈时必须遵循以下原则:
(1)圈要尽可能大,这样消去的变量就多。但每个圈内只能含有2n(n=0,1,2,3……)个相邻项。要特别注意对边相邻性和四角相邻性。
(2)圈的个数尽量少,这样化简后的逻辑函数的与项就少。
(3)卡诺图中所有取值为1的方格均要被圈过,即不能漏下取值为1的最小项。 (4)取值为1的方格可以被重复圈在不同的包围圈中,但在新画的包围圈中至少要含有1个末被圈过的1方格,否则该包围圈是多余的。
3.用卡诺图化简逻辑函数的步骤 (1)画出逻辑函数的卡诺图。
(2)合并相邻的最小项,即根据前述原则画圈。
(3)写出化简后的表达式。每一个圈写一个最简与项,规则是,取值为l的变量用原变量表示,取值为0的变量用反变量表示,将这些变量相与。然后将所有与项进行逻辑加,即得最简与—或表达式。
例3:用卡诺图化简逻辑函数:F?AD?ABD?ABCD?ABCD 解:(1)由表达式画出卡诺图如图6.43所示。
(2)画包围圈合并最小项,得简化的与—或表达式:F?AD?BD
L110A00D11001111C11B1A11D11011F100000C100B
图6.42 例3卡诺图 图6.43例4卡诺图
注意:图中的虚线圈是多余的,应去掉;图中的包围圈BD是利用了四角相邻性。 例4: 某逻辑函数的真值表如表6.4所示,用卡诺图化简该逻辑函数。 解法1:(1)由真值表画出卡诺图,如图6.44所示 (2)画包围圈合并最小项,如图6.44(a)所示,得简化的与—或表达式: L?BC?AB?AC
解法2:(1)由表达式画出卡诺图,如图6.44所示 (2)画包围圈合并最小项,如图6.44(b)所示,得简化的与—或表达式:
L?AB?BC?AC
L0A11110B11AL011110B11 表6.4 真值表 A B C 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 L 0 1 1 1 1 1 1 0
图6.44 例4卡诺图 (a)解法1 (b)解法2
通过这个例子可以看出,一个逻辑函数的真值表是唯一的,卡诺图也是唯一的,但化简结果有时不是唯一的。