1、概述
在設計邏輯電路圖時,由真值表直接得到的函數(shù)往往比較復雜。代數(shù)法和卡諾圖法等方法對于變量數(shù)目較多的邏輯函數(shù)則效果不佳,本文介紹一種可以化簡復雜邏輯函數(shù)的方法──表格法,該方法可以對變量數(shù)目較多的邏輯函數(shù)也可以進行化簡。
2、原理
在介紹化減法之前,先說明三個概念:
蘊涵項──在函數(shù)的任何積之和式中,每個乘積項稱為該函數(shù)的蘊涵項。對應于卡諾圖中的任一標1單元(最小項)以及2m個相鄰單元所形成的圈都是函數(shù)的蘊涵項。
素項──若函數(shù)的一個蘊涵項不是該函數(shù)中其它蘊涵項的一個子集,則此蘊涵項稱為素蘊涵項,簡稱素項。
實質(zhì)素項──若函數(shù)的一個素項所包含的某一最小項,不包括在該函數(shù)的其它任何素項中則此素項稱為實質(zhì)素蘊涵項,簡稱實質(zhì)素項。
列表化簡法的基本原理是利用邏輯函數(shù)的最小項,通過對相鄰最小項的合并,消去多余變量因子,獲得邏輯函數(shù)的最簡式的。列表化簡法的思路是先找出給定函數(shù)F的全部素項,然后找出其中的實質(zhì)素項;若實質(zhì)素項不能覆蓋F的所有最小項,則進一步找出所需素項,以構(gòu)成F的最簡素項集。
下面用列表化簡法將下列函數(shù)化簡為最簡與或表達式。
F(A,B,C,D)=Σ(0,3,4,5,6,7,8,10,11)
3、建立素項表
首先,找出給定函數(shù)的全部素項。
(1)先將每個最小項所對應的二進制數(shù)按其“1”的個數(shù)分組得表1;
表1 最小項
組號 |
項號 |
二進制數(shù) |
0 |
0 |
0000 |
1 |
4 8 |
0100 1000 |
2 |
3 5 6 10 |
0011 0101 0110 1010 |
3 |
7 11 |
0111 1011 |
(2)將表1中的相鄰兩個組之間二進制數(shù)進行比較、合并得到一次化簡結(jié)果,稱為一次乘積項,其項號記為i(j-i),其中i為最小項中的小項號,j為最小項中的大項號,得表2;
表2 一次乘積項
組號 |
項號 |
二進制數(shù) |
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中的相鄰兩組內(nèi)的二進制數(shù)進行比較、合并、便得到第二次化簡結(jié)果,稱為二次乘積項,其項號記為i(n,m),其中i為兩個一次乘積項中的小項號,n為原最小項的項號差,m為一次乘積項的項號差,得表3;
表3 二次乘積項
組號 |
項號 |
二進制數(shù) |
1 |
g4(1,2) 4(2,1) |
01-- 01-- |
不能與其它一次乘積項合并的一次乘積項是素項,分別以a,b,c,d,e,f記之,不能合并的二次乘積項也是素項,以g記之。
4、實質(zhì)素項
建立實質(zhì)素項產(chǎn)生表,找出實質(zhì)素項。
先用×標出每個素項覆蓋最小項的情況,再找出實質(zhì)最小項5、6,在×上標括號以示區(qū)別,可找出對應實質(zhì)素項g,在其前標*,最后一行用“V”標出實質(zhì)素項覆蓋最小項的情況,可看出還有最小項0、3、8、10、11未被覆蓋。如表4所示。
表4實質(zhì)素項產(chǎn)生式
最小項 素項 |
0 |
3 |
4 |
5 |
6 |
7 |
8 |
10 |
11 |
a0(4) |
X |
X |
|||||||
b0(8) |
X |
X |
|||||||
c8(2) |
X |
X |
|||||||
d3(4) |
X |
X |
|||||||
e3(8) |
X |
X |
|||||||
f10(1) |
X |
X |
|||||||
*g4(1,2) |
X |
X |
X |
X |
|||||
覆蓋情況 |
V |
V |
V |
V |
5、素項產(chǎn)生式
第三步:建立所需素項產(chǎn)生表,找出所需素項,所需素項集應覆蓋所有未被實質(zhì)素項覆蓋的最小項,得表5。再用行列消去法來找,選優(yōu)勢行b0(8),e3(8),劃去劣勢行a0(4)及d3(4)得表6,再選最小項為0、3的劣勢列,劃去最小項為8,11的優(yōu)勢列,得表7。找出新的實質(zhì)素項b,e,取該兩項作為所需素項后,尚有最小項10未被覆蓋,可選取c或f求得所需素項集為(b,e,c)或(b,e,f),
表5
最小項 素項 |
0 |
3 |
8 |
10 |
11 |
a0(4) |
X |
||||
b0(8) |
X |
X |
|||
c8(2) |
X |
X |
|||
d3(4) |
X |
||||
e3(8) |
X |
X |
|||
f10(1) |
X |
X |
[!--empirenews.page--]
表6
最小項 素項 |
0 |
3 |
8 |
10 |
11 |
b0(8) |
X |
X |
|||
c8(2) |
X |
X |
|||
e3(8) |
X |
X |
|||
f10(1) |
X |
X |
表7
最小項 素項 |
0 |
3 |
10 |
**b0(8) |
(X) |
||
c8(2) |
X |
||
**e3(8) |
(X) |
||
f10(1) |
X |
得F=g+b+c+e=AB+BCD+ABD+BCD
或F=g+b+e+f=AB+BCD+BCD+ABC
6、結(jié)論
通過上面介紹可以看出,邏輯化簡能否以最快的速度進行,從而得到最簡的邏輯表達式,與化簡者的經(jīng)驗和對公式、方法掌握與運用的熟練程度有密切關(guān)系;而列表化簡法思路清晰、準確,有規(guī)律可循,可得到多種可能答案,但化簡過程比較繁瑣,適宜于用微機處理并實現(xiàn)。