数字电子中的三变量卡诺图



卡诺图卡诺图是一种图形方法,用于简化布尔函数中复杂的代数表达式。这种方法避免了使用复杂的定理和方程操作。卡诺图基本上是真值表的一种特殊形式,可以轻松地映射参数的值并给出简化的布尔表达式。

卡诺图方法最适合具有2到4个变量的布尔函数。但是,它也可以用于具有5或6个变量的布尔函数,但是随着函数中变量数量的增加,其过程变得更加困难。

因此,在实践中,我们主要使用二变量卡诺图、三变量卡诺图和四变量卡诺图。但是,有时也使用五变量卡诺图和六变量卡诺图来推导出布尔表达式。

在这里,我们将讨论三变量卡诺图及其用于简化复杂布尔函数的应用。

三变量卡诺图

我们可以使用卡诺图来简化一个三变量的布尔函数。一个三变量(A,B,C)的布尔函数可以用标准积之和(SOP)的形式表示,它可以有总共8种可能的组合,如下所示:

$$\mathrm{(A'B'C'), (A'B'C), (A'BC'), (A'BC), (AB'C'), (AB'C), (ABC'), (ABC)}$$

我们可以分别用m0、m1、m2、m3、m4、m5、m6和m7来表示这些组合中的每一个。这些项中的每一个都称为最小项。在这些组合中,A称为MSB(最高有效位),C称为LSB(最低有效位)。

就POS(和之积)形式而言,三变量布尔表达式的8种可能组合如下所示:

$$\mathrm{(A+B+C), (A+B+C'), (A+B'+C), (A+B'+C'), (A'+B+C), (A'+B+C'), (A'+B'+C), (A'+B'+C')}$$

这些组合中的每一个通常分别用M0、M1、M2、M3、M4、M5、M6和M7来表示。这些项中的每一个都称为最大项。与最小项类似,A称为MSB(最高有效位),C称为LSB(最低有效位)。

因此,一个三变量卡诺图有8个(23)个方格或单元格,并且卡诺图上的每个方格代表一个最小项或最大项,如下面的图所示。

Three Variable K-map

这里,每个单元格右下角的小数字表示最小项或最大项的名称。

卡诺图顶部的二进制数表示每列中变量B和C的条件。卡诺图左侧每行对应的二进制数表示该行中变量A的条件。

例如,上图中第四列顶部的二进制数10表示变量B以非补码形式出现,变量C以补码形式出现在该列的所有最小项中。卡诺图第一行左侧的二进制数0表示变量A以其补码形式出现在所有最小项中,而卡诺图第二行左侧的二进制数1表示变量A以其非补码形式出现在所有最小项中。

此外,请注意卡诺图顶部的二进制数不是按正常的二进制顺序排列的,而是实际上按格雷码排列的。在卡诺图中使用格雷码可确保两个物理相邻的单元格实际上是相邻的,这意味着它们的最小项或最大项仅在一个变量上有所不同。

数值示例

将以下三变量布尔表达式映射到卡诺图上。

$$\mathrm{f \: = \: \overline{A} \: \overline{B} \: C \: + \: A \: \overline{B} \: C \: + \: \overline{A} \: B \: \overline{C} \: + \: A \: \overline{B} \: \overline{C} \: + \: A \: B \: C}$$

解决方案

在给定的布尔表达式中,最小项为:

$$\mathrm{\overline{A} \: \overline{B} \: C \: = \: 001; \: A \: \overline{B} \: C \: = \: 101; \: \overline{A} \: B \: \overline{C} \: = \: 010; \: A \: \overline{B} \: \overline{C} \: = \: 100; \: ABC \: = \: 111}$$

所以,

$$\mathrm{m_{1} \: = \: \overline{A} \: \overline{B} \: C \: = \: 001}$$

$$\mathrm{m_{5} \: = \: A \: \overline{B} \: C \: = \: 101}$$

$$\mathrm{m_{2} \: = \: \overline{A} \: B \: \overline{C} \: = \: 010}$$

$$\mathrm{m_{4} \: = \: A \: \overline{B} \: \overline{C} \: = \: 100}$$

$$\mathrm{m_{7} \: = \: ABC \: = \: 111}$$

因此,表达式由以下给出:

$$\mathrm{f \: = \: \sum \: m (1, \: 5, \: 2, \: 4, \: 7)}$$

该表达式的卡诺图如下面的图所示:

Three Variable K-map Boolean Expression

结论

从以上讨论中,我们可以得出结论,三变量卡诺图是一种用于简化复杂三变量布尔函数的图形方法。一个三变量卡诺图有8个方格或单元格。

广告