880 likes | 1.15k Views
Karnaugh Map; K-Map. B. A. 0. 1. 0. CD. 0. 1. 00. 01. 11. 10. 1. AB. 00. 2. 3. 0. 1. 3. 2. 01. 4. 5. 7. 6. 11. BC. A. 00. 01. 11. 10. 12. 13. 15. 14. 10. 0. 8. 9. 11. 10. 0. 1. 3. 2. 1. 4. 5. 7. 6. Karnaugh Map (K-Map; 卡諾圖 ).
E N D
Karnaugh Map; K-Map NTU DSD (Digital System Design) 2007
B A 0 1 0 CD 0 1 00 01 11 10 1 AB 00 2 3 0 1 3 2 01 4 5 7 6 11 BC A 00 01 11 10 12 13 15 14 10 0 8 9 11 10 0 1 3 2 1 4 5 7 6 Karnaugh Map (K-Map;卡諾圖) • K-Map是另一種化簡布林代數的視覺化工具(Min-Term Based) • 超過 5 個變數時,不易使用 2 Variable K-Map 4 Variable K-Map 3 Variable K-Map Numbering Scheme: 00, 01, 11, 10 Gray Code: only a single bit changes from code word to next code word Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD CD CD 00 00 00 01 01 01 11 11 11 10 10 10 AB AB AB 00 00 00 0 0 0 1 1 1 3 3 3 2 2 2 01 01 01 4 4 4 5 5 5 7 7 7 6 6 6 11 11 11 BC BC BC A A A 00 00 00 01 01 01 11 11 11 10 10 10 12 12 12 13 13 13 15 15 15 14 14 14 10 10 10 0 0 0 011 011 111 111 8 8 8 9 9 9 11 11 11 10 10 10 0 0 0 1 1 1 3 3 3 2 2 2 1 1 1 4 4 4 5 5 5 7 7 7 6 6 6 010 010 110 110 001 001 101 101 B B C C 000ABC 000ABC 100 100 A A 卡諾圖的相鄰性 • 第一個 Column 與最後一個 Column 是相鄰的 • 第一個 Row 與最後一個 Row 是相鄰的 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
B B B B A A A A 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 0 0 1 2 2 2 2 3 3 3 3 K-Map Example A’ 不變,B 變動 F(A,B) = A'B' + A'B = A'(B'+B) = A’ B 不變,A 變動 F(A,B) = A'B + AB = B(A'+A) = B Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
BC BC BC BC BC BC A A A A A A 00 00 00 00 00 00 01 01 01 01 01 01 11 11 11 11 11 11 10 10 10 10 10 10 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 0 0 0 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 3 3 3 3 3 3 2 2 2 2 2 2 1 1 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 4 4 4 4 4 4 5 5 5 5 5 5 7 7 7 7 7 7 6 6 6 6 6 6 K-Map Example F(A,B,C) = A'B'C' + A'BC' = A'C'(B'+B) = A’C' F(A,B,C) = A'B'C' + A'B'C+A'BC+ABC' = A' (B'C'+B'C+BC+BC') = A’ F(A,B,C) = A'B'C' + AB'C'+A'BC'+ABC' = C' (A'B'+AB'+A'B+AB) = C’ Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
BC BC BC BC BC A A A A A 00 00 00 00 00 01 01 01 01 01 11 11 11 11 11 10 10 10 10 10 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 3 3 3 3 3 2 2 2 2 2 1 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 4 4 4 4 4 5 5 5 5 5 7 7 7 7 7 6 6 6 6 6 K-Map Example : Multiple Grouping • 多重群組之運用 • 以盡量涵蓋所有的 ‘1’ 為目標,且涵蓋的區域越大越好 • 若找不到相鄰的 ‘1’,單一點亦是允許的 F(A,B,C) = (A'B'C' + A'B'C)+(A'B'C + AB'C)= (A'B'(C'+C)) + (B'C(A'+A)) = A'B' + B'C F(A,B,C) = (A'B'C' + A'B'C)+ABC'= (A'B'(C'+C)) + ABC' = A'B' + ABC' Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
BC BC A A 00 00 01 01 11 11 10 10 0 0 1 1 0 0 0 0 0 0 0 0 1 1 3 3 2 2 1 1 0 0 1 1 0 0 0 0 4 4 5 5 7 7 6 6 K-Map Example : Illegal Grouping A’B’C’ 與 AB’C 無法形成一個單一的 product term F(A,B,C) = A'B'C' + AB'C Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD CD CD CD CD 00 00 00 00 00 01 01 01 01 01 11 11 11 11 11 10 10 10 10 10 AB AB AB AB AB 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 3 3 3 3 3 2 2 2 2 2 01 01 01 01 01 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 4 5 5 5 5 5 7 7 7 7 7 6 6 6 6 6 11 11 11 11 11 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 12 12 12 12 12 13 13 13 13 13 15 15 15 15 15 14 14 14 14 14 10 10 10 10 10 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 8 8 8 8 8 9 9 9 9 9 11 11 11 11 11 10 10 10 10 10 F(A,B,C,D) = AC'D' + AB'D'+AB'C+ABCD K-Map Example Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD CD CD CD CD CD CD 00 00 00 00 00 00 00 01 01 01 01 01 01 01 11 11 11 11 11 11 11 10 10 10 10 10 10 10 AB AB AB AB AB AB AB 00 00 00 00 00 00 00 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 3 3 3 3 3 3 3 2 2 2 2 2 2 2 01 01 01 01 01 01 01 1 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 4 4 4 4 4 4 4 5 5 5 5 5 5 5 7 7 7 7 7 7 7 6 6 6 6 6 6 6 11 11 11 11 11 11 11 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 12 12 12 12 12 12 12 13 13 13 13 13 13 13 15 15 15 15 15 15 15 14 14 14 14 14 14 14 10 10 10 10 10 10 10 1 1 1 1 1 1 1 0 0 0 1 1 1 0 1 0 1 1 0 0 0 1 1 1 1 1 1 1 8 8 8 8 8 8 8 9 9 9 9 9 9 9 11 11 11 11 11 11 11 10 10 10 10 10 10 10 K-Map Example F(A,B,C,D) = D' F(A,B,C,D) = B'D' F(A,B,C,D) = D’ + A’B’D + AB’D F(A,B,C,D) = D’ + B’ Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Don't Care Terms • 輸入變數的輸入的某些組合對於輸出項不會產生任何影響者 • 又稱 “Don't Care Terms”(不在意項) • 在以卡諾圖化簡時,隨意項可以被當作“0”或“1”,以造出較大的Face,以簡化邏輯式 • Marked by "X" in K-Map Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD CD CD CD CD 00 00 00 00 00 01 01 01 01 01 11 11 11 11 11 10 10 10 10 10 AB AB AB AB AB 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 X X X X X 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 3 3 3 3 3 2 2 2 2 2 01 01 01 01 01 0 0 0 0 0 0 0 0 0 0 X X X X X 0 0 0 0 0 4 4 4 4 4 5 5 5 5 5 7 7 7 7 7 6 6 6 6 6 11 11 11 11 11 1 1 1 1 1 0 0 0 0 0 X X X X X X X X X X 12 12 12 12 12 13 13 13 13 13 15 15 15 15 15 14 14 14 14 14 10 10 10 10 10 1 1 1 1 1 1 1 1 1 1 X X X X X X X X X X 8 8 8 8 8 9 9 9 9 9 11 11 11 11 11 10 10 10 10 10 K-Map Example • F= Σm(8,9,12)+D(3,7,10,11,14,15) F(A,B,C,D) = AC'D' + AB'C' F(A,B,C,D) = AD' + AB' Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD CD CD CD 00 00 00 00 01 01 01 01 11 11 11 11 10 10 10 10 AB AB AB AB 00 00 00 00 X X X X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 3 3 3 3 2 2 2 2 01 01 01 01 1 1 1 1 1 1 1 1 X X X X 1 1 1 1 4 4 4 4 5 5 5 5 7 7 7 7 6 6 6 6 11 11 11 11 0 0 0 0 1 1 1 1 X X X X 0 0 0 0 12 12 12 12 13 13 13 13 15 15 15 15 14 14 14 14 10 10 10 10 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 8 8 8 8 9 9 9 9 11 11 11 11 10 10 10 10 F(A,B,C,D) = A’B + AC’D + AB’D’ K-Map Example • F= Σm(4,5,6,8,9,10,13)+D(0,7,15) Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
DE 00 01 11 10 BC 00 0 1 3 2 01 A=0 4 5 7 6 11 12 13 15 14 10 8 9 11 10 DE 00 01 11 10 BC 00 16 17 19 18 01 20 21 23 22 A=1 11 28 29 31 30 10 24 25 27 26 5-Inputs K-Map Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
DE DE DE 00 00 00 01 01 01 11 11 11 10 10 10 BC BC BC 00 00 00 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 3 3 3 2 2 2 01 01 01 0 0 0 1 1 1 1 1 1 0 0 0 A=0 A=0 A=0 4 4 4 5 5 5 7 7 7 6 6 6 11 11 11 0 0 0 1 1 1 1 1 1 0 0 0 12 12 12 13 13 13 15 15 15 14 14 14 10 10 10 1 1 1 0 0 0 0 0 0 1 1 1 8 8 8 9 9 9 11 11 11 10 10 10 DE DE DE 00 00 00 01 01 01 11 11 11 10 10 10 BC BC BC 00 00 00 0 0 0 0 0 0 0 0 0 1 1 1 16 16 16 17 17 17 19 19 19 18 18 18 01 01 01 1 1 1 1 1 1 1 1 1 0 0 0 20 20 20 21 21 21 23 23 23 22 22 22 A=1 A=1 A=1 11 11 11 1 1 1 1 1 1 1 1 1 0 0 0 28 28 28 29 29 29 31 31 31 30 30 30 10 10 10 0 0 0 0 0 0 0 0 0 0 0 0 24 24 24 25 25 25 27 27 27 26 26 26 F(A,B,C,D,E) = CE + A’BC’E’ + ACD’ + B’C’DE’ K-Map Example • F(A,B,C,D,E) = Σm(2,5,7,8,10,13,15,18,20,21,23,28,29,31) Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
From K-Map to Max-Terms and Min-Terms NTU DSD (Digital System Design) 2007
Using K-Map Find Min-term and Max-term • We have been using K-maps to find the minimum sum-of-products form of a function • ( _ _ _ ) + ( _ _ ) + ( _ _ _ ) • minterm + minterm + minterm • You can also use K-maps to find the minimum product-of-sums form of a function • ( _ + _ + _ ) ( _ ) ( _ + _ ) • maxterm * maxterm * maxterm Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
BC A 00 01 11 10 0 0 1 3 2 0 1 3 2 1 4 5 7 6 4 5 7 6 Min-term and Max-term from K-Map Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD CD CD CD CD 00 00 00 00 00 01 01 01 01 01 11 11 11 11 11 10 10 10 10 10 AB AB AB AB AB 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 X X X X X 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 3 3 3 3 3 2 2 2 2 2 01 01 01 01 01 0 0 0 0 0 0 0 0 0 0 X X X X X 0 0 0 0 0 4 4 4 4 4 5 5 5 5 5 7 7 7 7 7 6 6 6 6 6 11 11 11 11 11 1 1 1 1 1 0 0 0 0 0 X X X X X X X X X X 12 12 12 12 12 13 13 13 13 13 15 15 15 15 15 14 14 14 14 14 10 10 10 10 10 1 1 1 1 1 1 1 1 1 1 X X X X X X X X X X 8 8 8 8 8 9 9 9 9 9 11 11 11 11 11 10 10 10 10 10 F(A,B,C,D) = (B'+D') ( A ) F(A,B,C,D) = AD' + AB' Finding POS/和項積 & SOP/積項和Form from K-Map Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
CD 00 01 11 10 AB 00 0 1 3 2 01 4 5 7 6 11 BC A 00 01 11 10 12 13 15 14 10 0 8 9 11 10 0 1 3 2 1 4 5 7 6 Quiz 1 • Using K-Map method to minimize the following Boolean expressions in SOP and POS form: • F(X,Y,Z) = Sm(0,2,5,6) • F(X,Y,Z) = PM(1,3,6) • F(W,X,Y,Z) = Sm(0,1,2,3,4,8,9,10,15) • F(V,W,X,Y,Z) = PM(0,3,4,8,9,14,15,18,22,24,26,28) Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Tabular Minimization Method / Quine-McCluskey Method (列表法) NTU DSD (Digital System Design) 2007
主要方法 • 產生函數F的SOP 表示式(Sum of Product) • 重複運用 XY + XY’ = X 簡化函數 • 相鄰定理 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • Find all the prime implicants Group the min-terms according to the number of 1s in the min-term. This way we only have to compare min-terms from adjacent groups. group 0 0 0000 1 0001 2 0010 8 1000 group 1 5 0101 6 0110 9 1001 10 1010 group 2 7 0111 14 1110 group 3 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Column I Column II group 0 0 0000 1 0001 2 0010 8 1000 group 1 5 0101 6 0110 9 1001 10 1010 group 2 7 0111 14 1110 group 3 Quine-McCluskey Method - An Example 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Column I Column II group 0 0 0000 1 0001 2 0010 8 1000 group 1 5 0101 6 0110 9 1001 10 1010 group 2 7 0111 14 1110 group 3 Quine-McCluskey Method - An Example Grouping 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 Grouping Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example Column I Column II Column III group 0 0,1,8,9 -00- 0,2,8,10 -0-0 0,8,1,9 -00- 0,8,2,10 -0-0 2,6,10,14 --10 2,10,6,14 --10 0 0000 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 1 0001 2 0010 8 1000 group 1 5 0101 6 0110 9 1001 10 1010 group 2 7 0111 14 1110 group 3 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example Column I Column II Column III group 0 0,1,8,9 -00- 0,2,8,10 -0-0 0,8,1,9 -00- 0,8,2,10 -0-0 2,6,10,14 --10 2,10,6,14 --10 0 0000 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 1 0001 2 0010 8 1000 group 1 5 0101 6 0110 9 1001 10 1010 group 2 No more combinations are possible, thus we stop here. 7 0111 14 1110 group 3 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example Column I Column II Column III group 0 0,1,8,9 -00- 0,2,8,10 -0-0 0,8,1,9 -00- 0,8,2,10 -0-0 2,6,10,14 --10 2,10,6,14 --10 0 0000 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 1 0001 2 0010 8 1000 group 1 5 0101 6 0110 9 1001 10 1010 group 2 We can eliminate repeated combinations 7 0111 14 1110 group 3 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example Column I Column II Column III group 0 0,1,8,9 -00- 0,2,8,10 -0-0 2,6,10,14 --10 0 0000 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 1 0001 2 0010 8 1000 f = a’c’d group 1 Now we form f with the terms not checked 5 0101 6 0110 9 1001 10 1010 group 2 f = a’c’d + a’bd 7 0111 14 1110 group 3 f = a’c’d + a’bd + a’bc Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example Column I Column II Column III group 0 0,1,8,9 -00- 0,2,8,10 -0-0 2,6,10,14 --10 0 0000 0,1 000- 0,2 00-0 0,8 -000 1,5 0-01 1,9 -001 2,6 0-10 2,10 -010 8,9 100- 8,10 10-0 5,7 01-1 6,7 011- 6,14 -110 10,14 1-10 1 0001 2 0010 8 1000 group 1 Now we form f with the terms not checked 5 0101 6 0110 9 1001 10 1010 group 2 f = a’c’d + a’bd + a’bc + b’c’ + b’d’ + cd’ 7 0111 14 1110 group 3 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • But, the form below is not minimized, using a Karnaugh map we can obtain: f = a’c’d + a’bd + a’bc + b’c’ + b’d’ + cd’ a 1 1 1 1 1 d 1 c 1 1 1 1 b Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • But, the form below is not minimized, using a Karnaugh map we can obtain: f = a’c’d + a’bd + a’bc + b’c’ + b’d’ + cd’ a F = a’bd + cd’ + b’c’ 1 1 1 1 1 Thus, we need a method to eliminate this redundant terms from the Quine-McCluskey solution. d 1 c 1 1 1 1 b Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • Question: • Given the prime implicant chart above, how can we identify the essential prime implicants of the function? Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • Step 1: • Find the independent terms Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • Once a term is included in the solution, all the minterms covered by that term are covered. • Therefore we may now mark the covered minterms and find terms that are no longer useful. Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • As we have not covered all the minterms with essential prime implicants, we must choose enough non-essential prime implicants to cover the remaining minterms. • We choose first prime implicants that cover the most minterms. Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Quine-McCluskey Method - An Example • Therefore our minimum solution is: • f(a,b,c,d) = b’c’ + cd’ + a’bd Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Glitch and Hazard jackiekan@solutioninside.com NTU DSD (Digital System Design) 2007
Simulation Results of Example Circuit Not Always Low Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Static 1-hazard Static 0-hazard Dynamic hazards Kinds of Hazards 1 1 Input change causes output to go from 1 to 0 to 1 0 1 Input change causes output to go from 0 to 1 to 0 0 0 1 1 0 0 Input change causes a double change from 0 to 1 to 0 to 1 OR from 1 to 0 to 1 to 0 1 1 0 0 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
module f1(a,b,c,d,y); input a,b,c,d; output y; wire w1,w2,w3,w4,w5,w6; or #10 or1(w1,a,b); not #5 not1(w2,b); not #5 not2(w3,a); or #20 or2(w4,c,w2); and #5 and1(w5,w1,w4); and #5 and2(w6,w2,w3,d); or #5 or3(y,w5,w6); endmodule module test1; reg w,x,y,z; wire f; f1 ff1(w,x,y,z,f); initial begin w=0; x=0; y=0; z=0; #100 z=1; #100 x=1; end endmodule Verilog Code for The Example Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Simulation Result Dynamic Hazard 10 5 20 5 5 5 5 Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Static1-Hazard (Also called SOP hazard) X = A' B + A C Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Static 1-Hazard • Consider ABC change from 111 to 011 A A’ n1 A’B n2 A and A’ are 0 at the same time AC n3 X Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Solution for Eliminate the Static1-Hazard • Coupled terms = A'B, AC • Residues = B, C • Residues (殘渣) is that part of a coupled term that remains after removing the coupled variable • Hazard Cover • Independent with coupled variable X = A' B + A C + B C Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Static 0-Hazard (Also called POS hazard) X = (A+B)(A’+C) Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Static 0-Hazard • Consider ABC change from 000 to 100 A A’ n1 A + B n2 A and A’ are 1 at the same time A’ + C n3 Y Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Solution for Eliminate the Static 0-Hazard • Coupled terms = A+B, A’+C • Residues = B, C • Residues (殘渣) is that part of a coupled term that remains after removing the coupled variable • Hazard Cover • Independent with coupled variable X = (A+B)(A’+C)(B+C) Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Multiplexer Multiplex 0 1 Y 2 3 S1 S0 Select Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
A 4 bits 2X1 MUX Y 4 4 B 4 E S Multi-Bits Multiplexer Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/
Demultiplexer • Demultiplexer(解多工器) • 可將單一輸入信號傳送至多個可能的輸出線上 m個Control Signal … Demultiplexer(解多工器) 1個Input Signal n個Output Signal … Jackie Kan - 2007 (jackiekan@LinTon.1D24H.com/jackiekan@csie.ntu.edu.tw) http://linton.1d24h.com/~jackiekan/