在设计逻辑电路图时,由真值表直接得到的函数往往比较复杂。代数法和卡诺图法等方法对于变量数目较多的逻辑函数则效果不佳,本文介绍一种可以化简复杂逻辑函数的方法──表格法,该方法可以对变量数目较多的逻辑函数也可以进行化简。
2、原理
在介绍化减法之前,先说明三个概念:
蕴涵项──在函数的任何积之和式中,每个乘积项称为该函数的蕴涵项。对应于卡诺图中的任一标1单元(最小项)以及2m个相邻单元所形成的圈都是函数的蕴涵项。
素项──若函数的一个蕴涵项不是该函数中其它蕴涵项的一个子集,则此蕴涵项称为素蕴涵项,简称素项。
实质素项──若函数的一个素项所包含的某一最小项,不包括在该函数的其它任何素项中则此素项称为实质素蕴涵项,简称实质素项。
列表化简法的基本原理是利用逻辑函数的最小项,通过对相邻最小项的合并,消去多余变量因子,获得逻辑函数的最简式的。列表化简法的思路是先找出给定函数F的全部素项,然后找出其中的实质素项;若实质素项不能覆盖F的所有最小项,则进一步找出所需素项,以构成F的最简素项集。
下面用列表化简法将下列函数化简为最简与或表达式。
F(A,B,C,D)=Σ(0,3,4,5,6,7,8,10,11)
3、建立素项表
首先,找出给定函数的全部素项。
(1)先将每个最小项所对应的二进制数按其“1”的个数分组得表1;
表1 最小项
|
组号 |
项号 |
二进制数 |
|
0 |
0 |
0000 |
|
1 |
4
8 |
0100
1000 |
|
2 |
3
5
6
10 |
0011
0101
0110
1010 |
|
3 |
7
11 |
0111
1011 |
(2)将表1中的相邻两个组之间二进制数进行比较、合并得到一次化简结果,称为一次乘积项,其项号记为i(j-i),其中i为最小项中的小项号,j为最小项中的大项号,得表2;
表2 一次乘积项
|
组号 |
项号 |
二进制数 |
|
0 |
a0(4)
b0(8) |
0-00
-000 |
|
1 |
4(1)
4(2)
c8(2) |
010-
01-0
10-0 |
|
2 |
d3(4)
e3(8)
5(2)
6(1)
f10(1) |
0-11
-011
01-1
011-
101- |
(3)再将表2中的相邻两组内的二进制数进行比较、合并、便得到第二次化简结果,称为二次乘积项,其项号记为i(n,m),其中i为两个一次乘积项中的小项号,n为原最小项的项号差,m为一次乘积项的项号差,得表3;
表3 二次乘积项
|
组号 |
项号 |
二进制数 |
|
1 |
g4(1,2)
4(2,1) |
01--
01-- |
不能与其它一次乘积项合并的一次乘积项是素项,分别以a,b,c,d,e,f记之,不能合并的二次乘积项也是素项,以g记之。