数字电子技术中的六变量卡诺图



阅读本章,了解如何使用卡诺图 (Karnaugh Map) 简化六变量布尔函数。让我们从简要介绍卡诺图 (K-Map) 开始。

卡诺图 (K-Map)

卡诺图K-Map是一种将布尔函数简化为最小形式的图形方法。卡诺图可以定义为一个图表或图形,它由相邻的方格或单元格组成,每个单元格代表布尔表达式变量的特定组合,以和式或积式形式表示。一个典型的二变量卡诺图如图1所示。

Two variable K-map

在实际应用中,我们通常使用最多6个变量的卡诺图。但是,卡诺图可以用于任意数量的变量,但对于5个或更多变量,它会变得繁琐。

现在,让我们讨论六变量卡诺图及其用于将布尔函数简化为最小形式的应用。

六变量卡诺图

六变量卡诺图用于简化六个变量(例如A、B、C、D、E、F)的布尔表达式。它有64 (26) 个相邻单元格或方格。其中,每个单元格代表函数的变量组合。

对于SOP形式的6变量布尔函数,输入变量的可能组合如下:

$$\mathrm{\bar{A}\bar{B}\bar{C}\bar{D}\bar{E}\bar{F}, \: \bar{A}\bar{B}\bar{C}\bar{D}\bar{E}F, \: \bar{A}\bar{B}\bar{C}\bar{D}E\bar{F}, \: \dots \: ABCDEF}$$

这些变量组合的最小项表示分别为m0、m1、m2 … m63

类似地,对于POS形式的6变量布尔函数,输入变量的可能组合如下:

$$\mathrm{\left ( A \: + \: B \: + \: C \: + \: D \: + \: E \: + \: F \right ), \: \left ( A \: + \: B \: + \: C \: + \: D \: + \: E \: + \: \bar{F} \right ), \: \left ( A \: + \: B \: + \: C \: + \: D \: + \: \bar{E} \: + \: F \right ), \: \dots \: \left ( \bar{A} \: + \: \bar{B} \: + \: \bar{C} \: + \: \bar{D} \: + \: \bar{E} \: + \: \bar{F} \right )}$$

这些变量组合的最大项表示分别为M0、M1、M2、... M63

如前所述,六变量卡诺图有64个单元格,它们被分成4个16个方格的块。卡诺图上的每个单元格代表一个最小项或最大项。对于6变量卡诺图,变量A和B的值在每个16个方格的块中对所有最小项(或最大项)保持不变。

六变量卡诺图的64个单元格分为4个块,如下所示:

块1 - 这是左上角的块。此块代表最小项m0到m15(或最大项M0到M15)。在此块中,变量A为0,变量B也为0。

块2 - 这是右上角的块。此块代表最小项m16到m31(或最大项M16到M31)。在此块中,变量A为0,变量B为1。

块3 - 这是左下角的块。此块代表最小项m32到m47(或最大项M32到M47)。在此块中,变量A为1,变量B为0。

块4 - 这是右下角的块。此块代表最小项m48到m63(或最大项M48到M63)。在此块中,变量A为1,变量B也为1。

在简化过程中,6变量卡诺图可能包含2个方格、4个方格、8个方格、16个方格、32个方格或64个方格,这涉及卡诺图的所有四个块。

在六变量卡诺图中,当一个块叠加在另一个块的顶部,该块位于第一个块的上方、下方或旁边,并且方格相互重合时。则认为这两个块中的方格相邻。同样重要的是要注意,对角线元素,例如m10和m58、m15和m63、m18和m34、m29和m45,彼此不相邻。

图2显示了六变量SOP卡诺图。

Six Variable SOP K-map

图3显示了六变量POS卡诺图。

Six Variable POS K-map

现在,让我们了解如何利用六变量卡诺图通过已解决的数值示例来最小化六变量布尔函数。

示例1

使用卡诺图最小化以下6变量布尔函数。

$$f = \sum m(1, 3, 4, 5, 6, 9, 11, 12, 14, 15, 17, 19, 20, 21, 22, 23, 25, 27, 28, 30, 33, 35, 36, 38, 41, 43, 44, 46, 49, 51, 52, 54, 57, 59, 60, 62)$$

解答

给定布尔函数的6变量SOP卡诺图表示如图4所示。

Six variable Boolean function using K-map

此函数的化简按照以下步骤进行:

卡诺图中没有孤立的1。

最小项m1与最小项m3、m9、m11、m17、m19、m25、m27、m33、m35、m41、m43、m49、m51、m57和m59构成一个16方格。将其合并,读作:

$$ \bar{D}F $$

最小项m4与最小项m6、m12、m14、m20、m22、m28、m30、m36、m38、m44、m46、m52、m54、m60和m62构成一个16方格。将其合并,读作:

$$ \bar{F}D $$

最小项m5可以与最小项m4、m20和m21构成一个4方格,或者与m1、m17和m21构成一个4方格。我们将选择与最小项m4、m20和m21构成4方格,读作:

$$ \bar{A}\bar{C}D\bar{E} $$

最小项m21与最小项m17、m19和m23构成一个4方格。将其合并,读作:

$$ \bar{A}B\bar{C}F $$

最小项m15可以与最小项m11或m14构成一个2方格。我们将选择与m14构成2方格,读作:

$$ \bar{A}\bar{B}CDE $$

将所有积项写成SOP形式。

因此,最简SOP表达式为:

$$ f(A,B,C,D,E,F) = \bar{D}F + D\bar{F} + \bar{A}\bar{C}D\bar{E} + \bar{A}B\bar{C}F + \bar{A}\bar{B}CDE $$

例2

使用卡诺图化简以下六变量布尔函数。

$$ f = \Pi M(0, 2, 7, 8, 10, 13, 16, 18, 24, 26, 29, 31, 32, 34, 37, 39, 40, 42, 45, 47, 48, 50, 53, 55, 56, 58, 61, 63) $$

解答

给定布尔函数的6变量POS卡诺图表示如图5所示。

Six Variable POS K-map Boolean Function

此函数的化简按照以下步骤进行:

卡诺图中没有孤立的0。

最大项M0与最大项M2、M8、M10、M16、M18、M24、M26、M32、M34、M40、M42、M48、M50、M56、M58构成一个16方格。将其合并,读作:

$$ (D + F) $$

最大项M37与最大项M39、M45、M47、M53、M55、M61和M63构成一个8方格。将其合并,读作:

$$ (\bar{A} + \bar{D} + \bar{F}) $$

最大项M13与最大项M29、M45和M61构成一个4方格。将其合并,读作:

$$ (\bar{C} + \bar{D} + E + \bar{F}) $$

最大项M31与M29、M61和M63构成一个4方格。将其合并,读作:

$$ (\bar{B} + \bar{C} + \bar{D} + \bar{F}) $$

最大项M7与最大项M39构成一个2方格。将其合并,读作:

$$ (B + C + E + \bar{D} + \bar{E} + \bar{F}) $$

将所有和项写成POS形式。

因此,给定布尔函数的最简POS表达式为:

$$ f(A,B,C,D,E,F) = (D + F)(\bar{A} + \bar{D} + \bar{F})(\bar{C} + \bar{D} + E + \bar{F})(\bar{B} + \bar{C} + \bar{D} + \bar{F})(B + C + E + \bar{D} + \bar{E} + \bar{F}) $$

这就是关于六变量卡诺图及其在布尔函数化简中的应用的全部内容。尝试解决以下练习题,以精通六变量卡诺图及其在化简布尔表达式中的应用。

卡诺图数值题

问1 - 使用卡诺图以SOP形式化简以下六变量布尔函数。

$$ f(A,B,C,D,E,F) = \sum m(1, 3, 5, 7, 9, 10, 11, 12, 14, 16, 17, 19, 20, 22, 24, 25, 26, 31, 32, 34, 36, 37, 39, 40, 42, 45, 49, 50, 53, 54, 57, 60, 61, 63) $$

问2 - 使用卡诺图以POS形式化简以下六变量布尔函数。

$$ f(A,B,C,D,E,F) = \Pi M(0, 1, 3, 4, 5, 6, 8, 9, 10, 12, 14, 15, 17, 20, 21, 22, 25, 26, 27, 29, 30, 32, 33, 35, 36, 37, 39, 40, 41, 42, 45, 47, 48, 50, 52, 53, 55, 56, 58, 59, 60, 62) $$

广告