邏輯設計
布林代數與邏輯簡化
王宏祺 講師
Department of Computer and Communication Kun San University
Tainan , Taiwan , R.O.C.
Mar. 30, 2011
4-1 布林運算與表示式
4-2 布林代數的定律與法則 4-3 狄摩根定理
4-4 邏輯電路的布林分析法 4-5 利用布林代數來做簡化 4-6 布林表示式的標準形式 4-7 布林表示式與真值表
4-8 卡諾圖
4-9 SOP卡諾圖簡化 4-10 POS卡諾圖的簡化 4-11 數位系統應用實例
布林加法運算
布林加法運算與OR運算等效,其基本法則與OR閘的 關係圖示如下:
邏輯電路中,和項是由OR運算所產生的,不含AND運算。
布林乘法運算
布林乘法和AND運算等效,其基本法則與AND閘的 關係圖示如下:
邏輯電路裡,積項是由AND運算所產生的,不含OR運算。
4-2 布林代數的定律與法則
應用加法與乘法的交換律。
應用加法與乘法的結合律。
應用分配律。
應用布林代數的12項基本運算法則。
布林代數定律
結合律 三個變數的加法結合律寫法如下:
A + (B + C) = (A + B) + C
三變數乘法結合律的寫法如下:
A(BC) = (AB)C
布林代數的運算法則
1. A0A 7. AAA 2. A11 8. A A 0 3. A00 9. A A
4. A1A 10. AABA 5. AAA 11. A AB A B
6. A A 1 12. (AB)(AC)ABC A、B 或 C 可代表單變數或組合變數。
布林代數的基本法則
定律(1) 交換律:
a. A+B = B+A b. A.B = B.A 定律(2) 結合律:
a. (A+B)+C=A+(B+C)
b. (A.B).C=A.(B.C) 定律(3) 分配律:
a. A.(B+C)=AB+AC
b. A+(B.C)=(A+B).(A+C)
c. (D+A).(B+C)=DB+DC+AB+AC 定律(4) 吸收律:
a. A+AB=A
b. A+A'B=A+B
布林代數的運算法則
3. A 0 0
4. A 1 A
布林代數的運算法則
7. A A = A
8. A A 0
布林代數的運算法則
11. A AB A B
表4-3
4-3 狄摩根定理
狄摩根定理以數學方式證明了NAND和輸入反相的OR 閘以及NOR閘和輸入反相的AND閘之間的等效性。
4-3 狄摩根定理
4-3 狄摩根定理
4-4
在表示式 和 中應用狄摩根定
理。
解:
例題一 在表示式 中應用狄摩根定理。
WXYZ W X Y Z
WXYZ W X Y Z W X Y Z W X Y Z
W X Y Z
應用狄摩根定理
4-5
在下列各表示式中應用狄摩根定理:
(a) (b) (c)
解:
(a)設A + B + C = X, D = Y。表示式 屬於 的形式,可以寫成:
接著在 部分使用狄摩根定理。
(A B C D)
ABC DEF
AB CD EF(A B C D) XY X Y
( A B C D ) A B C D A B C
A B C D A B C D
應用狄摩根定理
例4-5 (續)
(b)設ABC = X,DEF = Y。表示式 屬於 的形式,可寫成:
接著,在 和 兩項應用狄摩根定理。
ABC DEF
X Y X Y
( )( ) ABC DEF ABC DEF
ABC DEF
( ABC DEF )( ) ( A B C D )( E F )
應用狄摩根定理
例4-5 (續)
(c)設 , , EF = Z。表示式 屬於 的形式,可寫成:
接著,在 , , 各項應用狄摩根定理。
AB X CD Y ABCD EF X Y Z X Y Z
( )( )( ) AB CD EF AB CD EF
AB CD EF
(AB CD EF)( )( ) (A B C)( D E)( F)
例題一
1.在下列各表示式中應用狄摩根定理:
應用狄摩根定理
4-7
XOR閘的布林表示式為 。以這個式子為起
點,利用狄摩根定理和其它適用法則,推導出XNOR閘 的表示式。
解:
解 由取XOR閘表示式的補數開始,再如下應用狄摩 根定理:
接著,應用分配律和法則 )。
AB AB
( )( ) ( )( ) ( )( ) AB AB AB AB A B A B A B A B
8(A A 0)
4-4 邏輯電路的布林表示式
例題二.寫出下圖各邏輯電路的布林表示式。
4-5 利用布林代數來做簡化
4-8
利用布林代數化簡這項表示式:
AB + A(B + C) + B(B + C) 解:下列步驟並非唯一方法。
步驟1. 表示式的第2和第3項使用分配律,如下:
AB + AB + AC + BB + BC 步驟2. 第4項應用法則7 (BB = B)。
AB + AB + AC + B + BC
步驟3. 前兩項應用法則5 (AB + AB = AB)。
AB + AC + B + BC
4-5 利用布林代數來做簡化
例4-8 (續)
步驟4. 後兩項應用法則10 (B + BC = B)。
AB + AC + B
步驟5. 第1和第3項應用法則10 (AB + B = B) B + AC
到這裡,表示式已經盡可能的簡化了。一旦學得應 用布林代數的經驗,您就可以將數個步驟一併處理。
例題二
2.利用布林代數,將下列表示式化簡:
4-5 利用布林代數來做簡化
4-11
化簡下列布林表示式:
解:
步驟1. 第1項應用狄摩根定理。
步驟2. 兩小括弧內項應用狄摩根定理。
步驟3. 兩小括弧內項應用分配律。
AB AC A BC
(AB AC)( ) A B C
(A B A)( C) A BC
A A A C A B B C A B C
4-5 利用布林代數來做簡化
例4-11 (續)
步驟4. 第1項應用法則 ,第3項和最後一項應 用法則10 。
步驟5. 第1項和第2項應用法則10 。
步驟6. 第1項和第2項應用法則10 。
7 (A A A)
[A B A B C A B(1 C) A B]
[A A C A(1 C) A]
A A B B C
[A A B A(1 B) A] A B C
4-5 利用布林代數來做簡化
4-9
化簡下列布林表示式:
注意,中括弧和小括弧是一樣的:括弧內項要與括弧 外項相乘 ( 做AND運算 )。
解:
步驟1. 中括弧內項應用分配律。
步驟2. 小括弧內第2項應用法則8 。 [AB C( BD) A B C]
(ABC ABBD A B C)
(BB 0)
(ABC A 0 D A B C)
4-5 利用布林代數來做簡化
例4-9 (續)
步驟3. 小括弧內第2項應用法則3 (A 0 D = 0)。
步驟4. 小括弧內應用法則1 ( 除去0)。
步驟5. 應用分配律。
步驟6. 第1項應用法則7 (CC = C)。
(ABC 0 A B C)
(ABC A B C)
ABCC A BC
ABC A BC
4-5 利用布林代數來做簡化
例4-9 (續)
步驟7. 因式分解出 。
步驟8. 應用法則 。
步驟9. 應用法則4 ( 消去1)。
BC
( ) BC A A
6 (A A 1) 1 BC
BC
例題三
3.利用布林代數,將下列表示式化簡:
積之和形式(SOP)
積項為由字母 ( 變數或其補數 ) 乘積 ( 布林乘法運算 ) 所組成的項。當兩個以上的積項以布林加法運算執行加法 時,所得的表示式就是積之和 (sum-of-products, SOP)。
如下列各式:
AB ABC
ABC CDE BC D AB ABC AC
積之和形式(SOP)
布林表示式的範圍 一般布林表示式的集合是指表示式中 所包含,不管是補數或非補數形式的變數組。例如,表示 式 的範圍合就是變數A、B、C,而表示式
的範圍就是A、B、C、D、E等變數。
實現SOP表示式 AB ABC
ABC C DE BC D
一般表示式轉換成SOP形成
4-12
將下列布林表示式轉換成SOP形式:
(a)AB + B(CD + EF) (b)(A + B)(B + C + D) (c)
解:
(a)AB + B(CD + EF) = AB + BCD + BEF
(b)(A + B)(B + C + D) = AB + AC + AD + BB + BC + BD (c)
(A B) C
(A B) C (A B C) (A B C) AC BC
例題四
4.將下列表示式轉換成積之和 (SOP) 的形式:
標準SOP形式
將積項轉換成標準SOP SOP表示式中的每個積項未必包 含範圍集合內所有變數,這些積項可以擴充成每個都包含 所有集合內變數或其補數的標準形式。
標準SOP形式
4-13
將下列布林表示式轉換成標準SOP形式:
解:此SOP表示式之範圍為A、B、C、D。一次處理一項
。第一項中少了變數D或 ,所以將第一項乘上 ,如下:
這樣就產生了兩個標準積項。
第二項, ,缺少了變數C或 和D或 ,所以先如下 將第二項乘上 :
ABC A B ABCD
ABC
D D D
( )
ABC ABC D D ABCD ABC D
A B C D
C C
( )
A B A B C C A B C A B C
標準SOP形式
例4-13 (續)
得到的兩個積項仍少了變數D或 ,所以將這兩項分別乘上
,如下:
這樣就得到四個標準積項。
第三項, ,已經是標準形式了。原表示式的標準 SOP形式如下:
D
D D
( ) ( )
A B A B C A B C A B C D D A B C D D A B CD A B C D A B C D A B C D
ABCD
ABC A B ABCD ABCD ABC D A BCD A BC D A B CD A B C D ABCD
例題五
5.將問題22中的各SOP表示式轉換成標準SOP形式。
( )a AB CD ( )b ABD ( )c A BD
標準SOP形式
4-14
求出使下列標準SOP表示式等於1的二進位值:
解:
在A = 1, B = 1, C = 1且D = 1時,ABCD項會等於1。
ABCD = 1 1 1 1 = 1
在A = 1, , , D = 1時, 項等於1。
ABCD AB CD A B C D
1
B C 1 AB CD
1 0 0 1 1 1 1 1 1 AB CD
標準SOP形式
例4-14 (續)
在 , , , 時, 項等於1。
這三個積項任一項或全部等於1時,SOP表示式就 等於1。
1
A B 1 C 1 D 1 A B C D
和之積形式
和項為由字母和 ( 布林加法 ) 所組成的項。兩個以上 的和項相乘時,所得的表示式就是和之積 (product-of- sum, POS)。下列為其實例:
( )( )
( )( )( )
( )( )( )
A B A B C
A B C C D E B C D A B A B C A C
標準POS形式
標準POS表示式是指範圍集合內的所有變數都會出現 在表示式的各個和項中。例如,
就是個標準POS表示式。
( A B C D A )( B C D A )( B C D )
標準POS形式
4-15
將下列布林表示式轉換成標準POS形式:
解:此POS表示式範圍為A、B、C、D的集合。一次處理一
項。第一項 少了變數D或 ,所以加入 並應 用法則12,如下:
第二項 少了變數A或,所以加入並應用準則12
,如下:
(A B C B)( C D A)( B C D)
A B C D DD
( )( )
A B C A B C DD A B C D A B C D B C D
( )( )
B C D B C D AA A B C D A B C D
標準POS形式
例4-15 (續)
第三項 已經是標準形式了。故原表示式 的標準POS形式如下:
A B C D
( )( )( )
( )( )( )( )( )
A B C B C D A B C D
A B C D A B C D A B C D A B C D A B C D
標準POS形式
4-16
求出使下列標準POS表示式等於0的二進位變數值。
解:
在A = 0, B = 0, C = 0, D = 0時,A + B + C + D等於0。
A + B + C + D = 0 + 0 + 0 + 0 = 0
在A = 0, , , D = 0時, 。
(A B C D A)( B C D A)( B C D)
0
B C 0 A B C D 0 0 1 1 0 0 0 0 0 0 A B C D
標準POS形式
例4-16 (續)
在A = 1, B = 1, C = 1, D = 1時, 。
上述三項中任一項等於0,就會使此POS表示式等於0。
0 A B C D
1 1 1 1 0 0 0 0 0 A B C D
將標準SOP轉換成標準POS
4-17
將下列SOP表示式轉換成等效的POS表示式:
解:估算方式如下:
000 + 010 + 011 + 101 + 111
此表示式的範圍集合含有三個變數,所以總共有8種
可能的組合。這個SOP表示式含有其中的5種,所以POS必定 含有其它3種,即001,100,和110。記住,這些就是使和項 為0的二進位值。其等效POS表示式為:
A B C ABC ABC ABC ABC
(2 )3
(A B C A)( B C A)( B C)
例題六
6.將下面各標準SOP表示式轉換成標準POS形式。
( ) ( ) ( )
a ABC ABC ABC ABC b ABC ABC ABC
c ABC ABC ABC
將SOP表示式轉換成真值表格式
4-18
建立標準SOP表示式 的真值表。
解:
此表示式有三個變數,所以變數的二進位值共有8 種可能組合,見表4-6左邊三個欄位。使表示式各積項等 於1的二進位值分別為: : 001; : 100;ABC
: 111。如表所示,在這幾個二進位值組合的輸出欄位中 填入1。其餘二進位組合的輸出欄位中則填入0。
A BC AB C ABC
A B C A B C
將SOP表示式轉換成真值表格式
例4-18 (續)
表4-6 輸入端 輸出端
A B C X
0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1
例題七
7.做出下列各SOP表示式的真值表:
由真值表求出標準表示式
4-20
由表4-8的真值表求出標準SOP表示式,及其等效的 標準POS表示式。
表4-8 輸入端 輸出端
A B C X
0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1
例4-20 (續)
由真值表求出標準表示式
解:
輸出欄位中共有四個1,其對應的二進位數為011
,100,110,和111。將這些二進位數如下轉換成積項:
得到輸出X的標準SOP表示式為:
011 100 110 111
ABC AB C ABC ABC
X ABC AB C ABC ABC
例4-20 (續)
由真值表求出標準表示式
至於POS表示式,則看輸出為0的二進位數000,001,
010,和101。將這些二進位數如下轉換成和項:
得到輸出X的標準POS表示式為:
000 001 010 101
A B C A B C
A B C A B C
( )( )( )( )
X A B C A B C A B C A B C
4-8 卡諾圖
卡諾圖是有系統的簡化布林表示式的方法。
做出3、4個變數的卡諾圖。
求出卡諾圖中各單位的二進位值。
求出卡諾圖中各單位所代表的標準積項。
4個變數的卡諾圖
4個變數的卡諾圖是由16個小單位排列而成的。
4-9 SOP卡諾圖簡化
卡諾圖用於簡化布林表示式至其最簡形式。最小SOP 表示式含有最少數目之積項,每項中之變數亦為最少。
標準SOP表示式轉換至卡諾圖
4-21
將下列標準SOP表示式轉換成卡諾圖:
解:
將表示式如下換成二進位值。在圖4-24的3變數卡 諾圖中,代表表示式中各標準積項的方格內填入1。
A BC ABC ABC ABC
0 0 1 0 1 0 11 0 1 1 1 A BC ABC ABC ABC
例4-21 (續)
標準SOP表示式轉換至卡諾圖
圖4-24
將非標準SOP表示式轉換成卡諾圖
4-23
將下列SOP表示式做成卡諾圖: 。 解:
很明顯,此SOP表示式並非標準形式,因為並非各 積項都有三個變數。第一項中少了兩個變數,第二項中 少了一個變數,第三項則是標準形式。先將各積項展開 成數字:
A AB ABC
000 1 0 0 1 1 0 001 1 01
010
A AB ABC
將非標準SOP表示式轉換成卡諾圖
例4-23 (續)
對照所得的各個二進位數,在圖4-26之3變數卡諾圖 的適當方格內填入1。
圖4-26
SOP表示式的卡諾圖化簡法
將填1的項目分組 用圈出含有1的相鄰方格的方法,在卡 諾圖上將填有1的項目分組。此步驟的目的是要使同一組 的規模變大,使組數變少。
由卡諾圖求出最小的SOP表示式 當代表表示式中各標準 積項的1都適當的填於卡諾圖中,再經過分組後,就可以 開始進入求最小SOP表示式的步驟。
SOP表示式的卡諾圖化簡法
4-27
求出圖4-31各卡諾圖的積項,並寫出所得的最小 SOP表示式。
解:
圖4-31中已顯示出各組的最小積項。此圖中各卡諾 圖的最小SOP表示式分別為:
(a) (b)
(c) (d)
AB BC A B C B A C AC AB A C ABD
D ABC BC
SOP表示式的卡諾圖化簡法
例4-23 (續)
SOP表示式的卡諾圖化簡法
4-29
利用卡諾圖將下列SOP表示式最小化:
解:第一項 必須擴展成 和 ,形成標 準SOP表示式,才能做成卡諾圖,將圖中含1的方格分組,
如圖4-33所示。
B C D ABC D ABC D A BCD ABCD A BC D ABC D ABC D ABC D
B C D AB C D A B C D
圖4-33
SOP表示式的卡諾圖化簡法
例4-29 (續)
注意所得兩組都有包捲式鄰接的情形。因為卡諾圖的最 外兩行中的方格相鄰接而形成8方格的一組。因為最上和最下 層方格相鄰,將其餘的兩個1拼湊起來便形成4方格的一組。
各組的積項都標示在圖上了,所得的最小SOP表示式為:
記住,最小表示式和原標準表示式是等效的。
D BC
例題八
A B C A BC ABC AC B( C) A BC( BC) A BC( BC) A B C AB C ABC ABC
8.利用卡諾圖找出各表示式的最小SOP形式:
(a) (b) (c)
(d)
4-10 POS卡諾圖的簡化
這一節的重點是放在POS表示式。 POS表示式卡諾圖 的方格內填的是代表標準和項的0。
將標準POS表示式做成卡諾圖
4-30
將下列標準POS表示式做成卡諾圖:
解:
如下將表示式各和項的二進位數算出,再將0填入 圖4-37的4變數卡諾圖中。
(A B C D A)( B C D A)( B C D A)( B C D A)( B C D)
1100 1011 0010 1
( )( )( )(
111 0011
)( )
A B C D A B C D A B C D A B C D A B C D
將標準POS表示式做成卡諾圖
例4-30 (續)
圖4-37
POS表示式的卡諾圖簡化法
4-32
利用卡諾圖將下列POS表示式最小化:
解:
第一項必須先擴展成 和A + B + C + D形成 標準POS表示式。接著便做出卡諾圖,並對方格分組,如圖 4-39所示。圖中已顯示出各組和項,最後得到的最小POS表 示式為
記住,最小POS表示式與原標準POS表示式是等效的。
(B C D A)( B C D A)( B C D A)( B C D A)( B C D)
A B C D
(C D A)( B D A)( B C)
POS表示式的卡諾圖簡化法
例4-32 (續)
圖4-39
例題九
(A B C A)( B C A)( B C)
(X Y X)( Z X)( Y Z X)( Y Z)
( )( )( )( )
A B C AC A B C A B C
9.利用卡諾圖找出下列各表示式的最小POS形式:
(a) (b) (c)
4-11 數位系統應用實例
計數與控制系統中就用到七段顯示器。這些顯示器和 解BCD碼的邏輯電路併用,將適當的數字顯示在顯示器上
。
顯示段解碼邏輯
顯示段可用來表示不同的十進位數字,表4-9。
表4-9 各個十進位數字所要 運作的顯示段
數 字 要顯示的段
0 a , b , c , d , e , f
1 b , c
2 a , b , d , e , g
3 a , b , c , d , g
4 b , c , f , g
5 a , c , d , f , g
6 a , c , d , e , f, g
7 a , b , c
8 a , b , c , d , e , f , g 9 a , b , c , d , f , g
顯示段解碼邏輯
表4-10 七段邏輯電路的真值表
輸 入 段 輸 出
十進位
數字 D C B A a b c d e f g 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 1 1 0 0 0 0 2 0 0 1 0 1 1 0 1 1 0 1 3 0 0 1 1 1 1 1 1 0 0 1 4 0 1 0 0 0 1 1 0 0 1 1 5 0 1 0 1 1 0 1 1 0 1 1 6 0 1 1 0 1 0 1 1 1 1 1 7 0 1 1 1 1 1 1 0 0 0 0 8 1 0 0 0 1 1 1 1 1 1 1 9 1 0 0 1 1 1 1 1 0 1 1 10 1 0 1 0 X X X X X X X 11 1 0 1 1 X X X X X X X 12 1 1 0 0 X X X X X X X 13 1 1 0 1 X X X X X X X 14 1 1 1 0 X X X X X X X 15 1 1 1 1 X X X X X X X 輸出1 表示該段啟動 (on)
顯示段解碼邏輯
顯示段邏輯電路的布林表示式 利用真值表,便能寫出 各顯示段的標準SOP或POS表示式。例如,a段的標準 SOP表示式為:
e段的標準SOP表示式為:
a D C B A D CB A D CBA DC BA DCB A DCBA DC B A DC BA
e D C B A D CB A DCB A DC B A
顯示段解碼邏輯
多輸出邏輯閘的進一步簡化