数字电路 - 规范和标准形式
通过逻辑与运算将两个变量 x 和 y 组合起来,我们将得到四个布尔乘积项。这些布尔乘积项称为最小项或标准乘积项。最小项是 x'y'、x'y、xy' 和 xy。
类似地,通过逻辑或运算将两个变量 x 和 y 组合起来,我们将得到四个布尔和项。这些布尔求和项称为最大求和项或标准求和项。最大项为 x + y、x + y'、x' + y 和 x' + y'。
下表显示了 2 个变量的最小项和最大项的表示。
X | y | 最小条款 | 最大条款数 |
---|---|---|---|
0 | 0 | m 0 =x'y' | M 0 =x+y |
0 | 1 | m 1 =x'y | M 1 =x+y' |
1 | 0 | m 2 =xy' | M 2 =x'+y |
1 | 1 | m 3 =xy | M 3 =x'+y' |
如果二进制变量为“0”,则它在最小项中表示为变量的补集,在最大项中表示为变量本身。类似地,如果二进制变量为“1”,则它在最大项中表示为变量的补集,在最小项中表示为变量本身。
从上表中,我们可以很容易地注意到最小项和最大项是互为补充的。如果有“n”个布尔变量,则将有 2 n 个最小项和 2 n 个最大项。
规范的 SoP 和 PoS 形式
真值表由一组输入和输出组成。如果有“n”个输入变量,则将有 2 n 个可能的 0 和 1 组合。因此每个输出变量的值取决于输入变量的组合。因此,对于输入变量的某些组合,每个输出变量将具有“1”,而对于输入变量的某些其他组合,每个输出变量将具有“0”。
因此,我们可以用以下两种方式来表达每个输出变量。
- 规范SOP形式
- 规范的 PoS 形式
规范SOP形式
Canonical SoP 形式是指 Canonical Sum of Products 形式。在这种形式中,每个乘积术语包含所有文字。因此,这些乘积项只不过是最小项。因此,规范 SoP 形式也称为最小项之和形式。
首先,确定输出变量为 1 的最小项,然后对这些最小项进行逻辑或以获得与该输出变量对应的布尔表达式(函数)。该布尔函数将采用最小项之和的形式。
如果有多个输出变量,则对其他输出变量也遵循相同的过程。
例子
考虑下面的真值表。
输入 | 输出 | ||
---|---|---|---|
p | q | r | F |
0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 |
0 | 1 | 0 | 0 |
0 | 1 | 1 | 1 |
1 | 0 | 0 | 0 |
1 | 0 | 1 | 1 |
1 | 1 | 0 | 1 |
1 | 1 | 1 | 1 |
这里,对于四种输入组合,输出 (f) 为“1”。相应的最小项是 p'qr、pq'r、pqr'、pqr。通过对这四个最小项进行逻辑或,我们将得到输出(f)的布尔函数。
因此,输出的布尔函数为f = p'qr + pq'r + pqr' + pqr。这是输出 f 的规范 SoP 形式。我们还可以用以下两种符号来表示这个函数。
$$f = m_{3}+m_{5}+m_{6}+m_{7}$$
$$f = \sum m\left ( 3,5,6,7 \right )$$
在一个方程中,我们将函数表示为各个最小项的总和。在其他方程中,我们使用符号来求和这些最小项。
规范的 PoS 形式
Canonical PoS 形式是指 Canonical Product of Sums 形式。在这种形式中,每个总和项包含所有文字。因此,这些总和项只不过是最大项。因此,规范的 PoS 形式也称为Max 项形式的乘积。
首先,确定输出变量为零的最大项,然后对这些最大项进行逻辑与以获得与该输出变量对应的布尔表达式(函数)。该布尔函数将采用 Max 项乘积的形式。
如果有多个输出变量,则对其他输出变量也遵循相同的过程。
例子
考虑与前面示例相同的真值表。这里,对于四种输入组合,输出 (f) 为“0”。相应的 Max 项为 p + q + r、p + q + r'、p + q' + r、p' + q + r。通过对这四个 Max 项进行逻辑与,我们将得到输出 (f) 的布尔函数。
因此,输出的布尔函数为 f = (p + q + r).(p + q + r').(p + q' + r).(p' + q + r)。这是输出 f 的规范 PoS 形式。我们还可以用以下两种符号来表示这个函数。
$$f=M_{0}.M_{1}.M_{2}.M_{4}$$
$$f=\prod M\left ( 0,1,2,4 \right )$$
在一个方程中,我们将函数表示为各个 Max 项的乘积。在其他方程中,我们使用这些 Max 项相乘的符号。
布尔函数 f = (p + q + r).(p + q + r').(p + q' + r).(p' + q + r) 是布尔函数 f = 的对偶p'qr + pq'r + pqr' + pqr。
因此,规范的 SoP 和规范的 PoS 形式都是对偶的。从功能上来说,这两种形式是相同的。根据需要,我们可以使用这两种形式之一。
标准 SoP 和 PoS 形式
我们讨论了表示布尔输出的两种规范形式。类似地,有两种表示布尔输出的标准形式。这些是规范形式的简化版本。
- 标准 SoP 形式
- 标准 PoS 形式
我们将在后面的章节中讨论逻辑门。标准形式的主要优点是可以最小化应用于逻辑门的输入数量。有时,所需逻辑门的总数会减少。
标准 SoP 形式
标准 SoP 形式是指标准乘积求和形式。在这种形式中,每个乘积术语不需要包含所有文字。因此,产品条款可能是也可能不是最低条款。因此,标准SoP形式是规范SoP形式的简化形式。
我们将分两步得到输出变量的标准 SoP 形式。
- 获取输出变量的规范SoP形式
- 简化上述布尔函数,其采用规范 SoP 形式。
如果有多个输出变量,则对其他输出变量也遵循相同的过程。有时,可能无法简化规范的 SoP 形式。在这种情况下,规范和标准 SoP 形式是相同的。
例子
将以下布尔函数转换为标准 SoP 形式。
f = p'qr + pq'r + pqr' + pqr
给定的布尔函数采用规范的 SoP 形式。现在,我们必须简化这个布尔函数以获得标准的 SoP 形式。
步骤 1 - 使用布尔假设, x + x = x。这意味着,任何布尔变量的逻辑或运算“n”次将等于同一个变量。因此,我们可以将最后一项 pqr 再写两次。
⇒ f = p'qr + pq'r + pqr' + pqr + pqr + pqr
步骤 2 -对第 1项和第 4项、第 2项和第 5项、第 3项和第 6项使用分配律。
⇒ f = qr(p' + p) + pr(q' + q) + pq(r' + r)
步骤 3 - 使用布尔假设, x + x' = 1 来简化每个括号中出现的术语。
⇒ f = qr(1) + pr(1) + pq(1)
步骤 4 - 使用布尔假设, x.1 = x 来简化上述三项。
⇒ f = qr + pr + pq
⇒ f = pq + qr + pr
这是简化的布尔函数。因此,对应于给定规范 SoP 形式的标准 SoP 形式为f = pq + qr + pr
标准 PoS 形式
标准 PoS 形式是指标准乘积形式。在这种形式中,每个总和项不需要包含所有文字。因此,总和项可能是也可能不是最大项。因此,标准 PoS 形式是规范 PoS 形式的简化形式。
我们将分两步得到标准 PoS 形式的输出变量。
- 获取输出变量的规范 PoS 形式
- 简化上述布尔函数,它是规范的 PoS 形式。
如果有多个输出变量,则对其他输出变量也遵循相同的过程。有时,可能无法简化规范的 PoS 形式。在这种情况下,规范的 PoS 形式和标准的 PoS 形式是相同的。
例子
将以下布尔函数转换为标准 PoS 形式。
f = (p + q + r).(p + q + r').(p + q' + r).(p' + q + r)
给定的布尔函数是规范的 PoS 形式。现在,我们必须简化这个布尔函数以获得标准的 PoS 形式。
步骤 1 - 使用布尔假设xx = x。这意味着,任何布尔变量的逻辑与运算“n”次将等于同一个变量。因此,我们可以将第一项 p+q+r 再写两次。
⇒ f = (p + q + r).(p + q + r).(p + q + r).(p + q + r').(p +q' + r).(p' + q + r)
步骤 2 - 对于第 1 个和第 4 个括号、第 2 个和第 5 个括号、第 3 个和第 6 个括号使用分配律x + ( yz ) = ( x + y ) . (x + z) 。
⇒ f = (p + q + rr').(p + r + qq').(q + r + pp')
步骤 3 - 使用布尔假设, x.x'=0 来简化每个括号中出现的术语。
⇒ f = (p + q + 0).(p + r + 0).(q + r + 0)
步骤 4 - 使用布尔假设, x + 0 = x 来简化每个括号中的项
⇒ f = (p + q).(p + r).(q + r)
⇒ f = (p + q).(q + r).(p + r)
这是简化的布尔函数。因此,对应给定规范PoS 形式的标准 PoS 形式为f = (p + q).(q + r).(p + r)。这是布尔函数的对偶函数,f = pq + qr + pr。
因此,标准 SoP 和标准 PoS 形式都是对偶的。