CSC205 Jeffrey N. Denenberg Lecture #5

Slides:



Advertisements
Similar presentations
Techniques for Combinational Logic Optimization
Advertisements

Switching circuits Composed of switching elements called “gates” that implement logical blocks or switching expressions Positive logic convention (active.
Sistemas Digitais I LESI - 2º ano Lesson 4 - Combinational Systems Principles U NIVERSIDADE DO M INHO E SCOLA DE E NGENHARIA Prof. João Miguel Fernandes.
Minimization of Circuits
ECE 3110: Introduction to Digital Systems
Adv. Digital Circuit Design
ECE 3110: Introduction to Digital Systems Simplifying Sum of Products using Karnaugh Maps.
ECE C03 Lecture 21 Lecture 2 Two Level Minimization Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
1 EE 365 Combinational-Circuit Synthesis. 2 Combinational-Circuit Analysis Combinational circuits -- outputs depend only on current inputs (not on history).
Chapter 3 Simplification of Switching Functions
Gate Logic: Two Level Canonical Forms
Example: Given a 4-bit input combination N=N 3 N 2 N 1 N 0, this function produces a 1 output for N=1,2,3,5,7,11,13, and 0 otherwise.  According to the.
1 EECC341 - Shaaban #1 Lec # 6 Winter Combinational Circuit Analysis Example Given this logic circuit we can : Find corresponding logic.
EECC341 - Shaaban #1 Lec # 7 Winter Combinational Circuit Minimization Canonical sum and product logic expressions do not provide a circuit.
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Digital Logic Design Lecture # 7 University of Tehran.
KU College of Engineering Elec 204: Digital Systems Design
1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
Department of Computer Engineering
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 2 – Combinational Logic Circuits Part 2.
Gate-Level Minimization Chapter 3. Digital Circuits The Map Method The complexity of the digital logic gates the complexity of the algebraic expression.
1 EE121 John Wakerly Lecture #4 Combinational-Circuit Synthesis ABEL.
Optimization Algorithm
ECE 2110: Introduction to Digital Systems PoS minimization Don’t care conditions.
Boolean Algebra Combinational-Circuit Analysis We analyze a combinational logic circuit by obtaining a formal description of its logic function. Once.
Chapter 4 Combinational Logic Design Principles. Overview Objectives -Define combinational logic circuit -Analysis of logic circuits (to describe what.
ECE 3110: Introduction to Digital Systems Symplifying Products of sums using Karnaugh Maps.
Combinational Logic Part 2: Karnaugh maps (quick).
Circuit Minimization. It is often uneconomical to realize a logic directly from the first logic expression that pops into your head. Canonical sum and.
ECE 3110: Introduction to Digital Systems Combinational-Circuit Synthesis.
ECE 3110: Introduction to Digital Systems
ECE 3110: Introduction to Digital Systems Chapter #4 Review.
1 Gate Level Minimization EE 208 – Logic Design Chapter 3 Sohaib Majzoub.
Circuit Minimization.
School of Computer and Communication Engineering, UniMAP DKT 122/3 - DIGITAL SYSTEM I Chapter 4A:Boolean Algebra and Logic Simplification) Mohd ridzuan.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
Boolean or, Switching Algebra. Switching Algebra The two-valued Boolean algebra is also called “Switching algebra” by engineers and computer scientists.
Lecture 1 Gunjeet kaur Dronacharya group of institutions.
Digital Systems Design 1 Signal Expressions Multiply out: F = ((X + Y)  Z) + (X  Y  Z) = (X  Z) + (Y  Z) + (X  Y  Z)
Digital Logic.
CHAPTER 3 Simplification of Boolean Functions
ECE 2110: Introduction to Digital Systems
ECE 2110: Introduction to Digital Systems
Chapter 4. Combinational Logic Design Principles
ECE 2110: Introduction to Digital Systems
Lecture #6 EGR 277 – Digital Logic
ECE 3110: Introduction to Digital Systems
Plotting functions not in canonical form
CS 352 Introduction to Logic Design
ECE 2110: Introduction to Digital Systems
CPE/EE 422/522 Advanced Logic Design
EEL 3705 / 3705L Digital Logic Design
Digital Logic & Design Dr. Waseem Ikram Lecture 12.
Digital Logic & Design Dr. Waseem Ikram Lecture 13.
CHAPTER 5 KARNAUGH MAPS 5.1 Minimum Forms of Switching Functions
CSE 370 – Winter 2002 – Logic minimization - 1
Combinatorial Logic Circuit
Optimization Algorithm
Introduction to Digital Systems
Digital Logic Design I Gate-Level Minimization
Reading: Hambley Ch. 7 through 7.5
Instructor: Alexander Stoytchev
Minimization of Switching Functions
Dr. Clincy Professor of CS
Instructor: Alexander Stoytchev
Overview Part 2 – Circuit Optimization
Basic circuit analysis and design
Laws & Rules of Boolean Algebra
Chapter 4 Combinational Logic Design Principles. Overview Objectives -Define combinational logic circuit -Analysis of logic circuits (to describe what.
Presentation transcript:

CSC205 Jeffrey N. Denenberg Lecture #5 Combinational-circuit synthesis Karnaugh Maps

Combinational-Circuit Analysis Combinational circuits -- outputs depend only on current inputs (not on history). Kinds of combinational analysis: exhaustive (truth table) algebraic (expressions) simulation / test bench (example in lab #2) Write functional description in HDL Define test conditions / test vecors, including corner cases Compare circuit output with functional description (or known-good realization) Repeat for “random” test vectors

Combinational-Circuit Design Sometimes you can write an equation or equations directly using “logic” (the kind in your brain). Example (alarm circuit): Corresponding circuit:

Alarm-circuit transformation Sum-of-products form Useful for programmable logic devices (next lec.) “Multiply out”:

Sum-of-products form AND-OR NAND-NAND

Product-of-sums form OR-AND NOR-NOR P-of-S preferred in CMOS, TTL (NAND-NAND)

Brute-force design Truth table --> canonical sum (sum of minterms) row N3 N2 N1 N0 F 0 0 0 0 0 0 1 0 0 0 1 1 2 0 0 1 0 1 3 0 0 1 1 1 4 0 1 0 0 0 5 0 1 0 1 1 6 0 1 1 0 0 7 0 1 1 1 1 8 1 0 0 0 0 9 1 0 0 1 0 10 1 0 1 0 0 11 0 0 1 1 1 12 1 1 0 0 0 13 1 1 0 1 1 14 1 1 1 0 0 15 1 1 1 1 0 Brute-force design Truth table --> canonical sum (sum of minterms) Example: prime-number detector 4-bit input, N3N2N1N0 F = SN3N2N1N0(1,2,3,5,7,11,13)

Minterm list --> canonical sum

Algebraic simplification Theorem T8, Reduce number of gates and gate inputs

Resulting circuit

Visualizing T10 -- Karnaugh maps

3-variable Karnaugh map

Example: F = S(1,2,5,7)

Karnaugh-map usage Plot 1s corresponding to minterms of function. Circle largest possible rectangular sets of 1s. # of 1s in set must be power of 2 OK to cross edges Read off product terms, one per circled set. Variable is 1 ==> include variable Variable is 0 ==> include complement of variable Variable is both 0 and 1 ==> variable not included Circled sets and corresponding product terms are called “prime implicants” Minimum number of gates and gate inputs

Prime-number detector (again)

Better Simplification When we solved algebraically, we missed one simplification -- the circuit below has three less gate inputs.

Another example

Yet another example Distinguished 1 cells Essential prime implicants

Quine-McCluskey algorithm This process can be made into a program, using appropriate algorithms and data structures. Guaranteed to find “minimal” solution Required computation has exponential complexity (run time and storage)-- works well for functions with up to 8-12 variables, but quickly blows up for larger problems. Heuristic programs (e.g., Espresso) used for larger problems, usually give minimal results.

Lots of possibilities Can follow a “dual” procedure to find minimal products of sums (OR-AND realization) Can modify procedure to handle don’t-care input combinations. Can draw Karnaugh maps with up to six variables.

Real-World Logic Design Lots more than 6 inputs -- can’t use Karnaugh maps Design correctness more important than gate minimization Use “higher-level language” to specify logic operations Use programs to manipulate logic expressions and minimize logic. PALASM, ABEL, CUPL -- developed for PLDs VHDL, Verilog -- developed for ASICs