1 / 86

Karnaugh Map; K-Map

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; 卡諾圖 ).

jaden
Download Presentation

Karnaugh Map; K-Map

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Karnaugh Map; K-Map NTU DSD (Digital System Design) 2007

  2. 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/

  3. 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/

  4. 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/

  5. 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/

  6. 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/

  7. 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/

  8. 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/

  9. 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/

  10. 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/

  11. 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/

  12. 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/

  13. 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/

  14. 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/

  15. From K-Map to Max-Terms and Min-Terms NTU DSD (Digital System Design) 2007

  16. 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/

  17. 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/

  18. 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/

  19. 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/

  20. Tabular Minimization Method / Quine-McCluskey Method (列表法) NTU DSD (Digital System Design) 2007

  21. 主要方法 • 產生函數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/

  22. 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/

  23. 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/

  24. 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/

  25. 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/

  26. 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/

  27. 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/

  28. 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/

  29. 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/

  30. 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/

  31. 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/

  32. 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/

  33. 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/

  34. 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/

  35. 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/

  36. 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/

  37. Glitch and Hazard jackiekan@solutioninside.com NTU DSD (Digital System Design) 2007

  38. 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/

  39. 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/

  40. 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/

  41. 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/

  42. 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/

  43. 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/

  44. 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/

  45. 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/

  46. 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/

  47. 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/

  48. 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/

  49. 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/

  50. 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/

More Related