1 / 52

Techniques for Combinational Logic Optimization

Techniques for Combinational Logic Optimization. Minimizing Circuits. Karnaugh Maps. Goals of Circuit Minimization. (1) Minimize the number of primitive Boolean logic gates needed to implement the circuit.

kim
Download Presentation

Techniques for Combinational Logic Optimization

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. Techniques for Combinational Logic Optimization

  2. Minimizing Circuits Karnaugh Maps

  3. Goals of Circuit Minimization (1) Minimize the number of primitive Boolean logic gates needed to implement the circuit. Ultimately, this also roughly minimizes the number of transistors, the chip area, and the cost. Also roughly minimizes the energy expenditure among traditional irreversible circuits. This will be our focus. (2) It is also often useful to minimize the number of combinational stages or logical depth of the circuit. This roughly minimizes the delay or latency through the circuit, the time between input and output. Note: Goals (1) and (2) are often conflicting! In the real world, a designer may have to analyze and optimize some complex trade-off between logic complexity and latency.

  4. Minimizing Expressions We would like to find the smallest sum-of-products expression that is equivalent to a given function. This will yield a fairly small circuit.

  5. Simplification of Switching Functions

  6. Karnaugh Maps (K-Map) A K-Map is a graphical representation of a logic function’s truth table

  7. Relationship to Venn Diagrams a b

  8. Relationship to Venn Diagrams a b

  9. Relationship to Venn Diagrams

  10. Two-Variable K-Map

  11. Three-Variable K-Map Note: The bit sequences must alwaysbe ordered using a Gray code!

  12. Three-Variable K-Map Note: The bit sequences must always be ordered using a Gray code!

  13. Four-variable K-Map Note: The bit sequences must be ordered using a Gray code! Note: The bit sequences must be ordered using a Gray code!

  14. Four-variable K-Map

  15. Plotting Functions on the K-map SOP Form

  16. Canonical SOP Form Three Variable Example using shorthand notation

  17. Three-Variable K-Map Example Plot 1’s (minterms) of switching function 1 1 1 1

  18. Three-Variable K-Map Example Plot 1’s (minterms) of switching function 1 1 1 1

  19. Four-variable K-Map Example 1 1 1 1 1

  20. Karnaugh Maps (K-Map) Simplification of Switching Functions using K-MAPS

  21. Terminology/Definition • Literal • A variable or its complement • Logically adjacent terms • Two minterms are logically adjacent if they differ in only one variable position • Ex: and m6 and m2 are logically adjacent Note: Or, logically adjacent terms can be combined

  22. Terminology/Definition • Implicant • Product term that could be used to cover minterms of a function • Prime Implicant • An implicant that is not part of another implicant • Essential Prime Implicant • A prime implicant that covers at least one minterm that is not contained in another prime implicant • Cover • A minterm that has been used in at least one group

  23. Guidelines for Simplifying Functions • Each square on a K-map of n variables has n logically adjacent squares. (i.e. differing in exactly one variable) • When combing squares, always group in powers of 2m , where m=0,1,2,…. • In general, grouping 2m variables eliminates m variables.

  24. Guidelines for Simplifying Functions • Group as many squares as possible. This eliminates the most variables. • Make as few groups as possible. Each group represents a separate product term. • You must cover each minterm at least once. However, it may be covered more than once.

  25. K-map Simplification Procedure • Plot the K-map • Circle all prime implicants on the K-map • Identify and select all essential prime implicants for the cover. • Select a minimum subset of the remaining prime implicants to complete the cover. • Read the K-map

  26. Example • Use a K-Map to simplify the following Boolean expression

  27. Three-Variable K-Map Example Step 1:Plot the K-map 1 1 1 1 1

  28. Three-Variable K-Map Example Step 2:Circle ALL Prime Implicants 1 1 1 1 1

  29. Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants PI EPI PI 1 1 EPI 1 1 1

  30. Three-Variable K-Map Example Step 4: Select minimum subset of remaining Prime Implicants to complete the cover. PI EPI 1 1 EPI 1 1 1

  31. Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1 1

  32. Solution

  33. Example • Use a K-Map to simplify the following Boolean expression

  34. Three-Variable K-Map Example Step 1:Plot the K-map 1 1 1 1

  35. Three-Variable K-Map Example Step 2:Circle Prime Implicants Wrong!! We really should draw A circle around all four 1’s 1 1 1 1

  36. Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants EPI EPI Wrong!! We really should draw A circle around all four 1’s 1 1 1 1

  37. Three-Variable K-Map Example Step 4: Select Remaining Prime Implicants to complete the cover. EPI EPI 1 1 1 1

  38. Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1

  39. Solution Since we can still simplify the function this means we did not use the largest possible groupings.

  40. Three-Variable K-Map Example Step 2:Circle Prime Implicants Right! 1 1 1 1

  41. Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants EPI 1 1 1 1

  42. Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1

  43. Solution

  44. Special Cases

  45. Three-Variable K-Map Example 1 1 1 1 1 1 1 1

  46. Three-Variable K-Map Example

  47. Three-Variable K-Map Example 1 1 1 1

  48. Four Variable Examples

  49. Example • Use a K-Map to simplify the following Boolean expression

  50. Four-variable K-Map 1 1 1 1 1 1 1 1

More Related