Kombinatoorsete süsteemide disain

Slides:



Advertisements
Similar presentations
CSEE 4823 Advanced Logic Design Handout: Lecture #2 1/22/15
Advertisements

Based on slides by: Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. ECE/CS 352: Digital System Fundamentals Lecture 8 – Systematic Simplification.
COE 561 Digital System Design & Synthesis Two-Level Logic Synthesis
COE 561 Digital System Design & Synthesis Two-Level Logic Synthesis Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum.
CS 140 Lecture 4 Professor CK Cheng Tuesday 5/08/02.
CK Cheng Tuesday 10/2/02 CS 140 Lecture 2. Part I. Combinational Logic I) Specification –a. Language –b. Truth Table –c. Boolean Algebra –d. Incompletely.
Give qualifications of instructors: DAP
CS 140 Lecture 4 Combinational Logic: K-Map Professor CK Cheng CSE Dept. UC San Diego 1.
CS 140 Lecture 6 Professor CK Cheng UC San Diego.
CS 140 Lecture 4 Professor CK Cheng 4/11/02. Part I. Combinational Logic Implementation K-Map Given F R D Obj: Minimize sum of products Proc: Draw K-Map.
ECE 331 – Digital System Design Karnaugh Maps and Determining a Minimal Cover (Lecture #7) The slides included herein were taken from the materials accompanying.
CS 140 Lecture 5 Professor CK Cheng CSE Dept. UC San Diego 1.
Lecture 4 Logic gates and truth tables Implementing logic functions
Logic Function Optimization. Combinational Logic Circuit Regular SOP and POS designs Do not care expressions Digital logic circuit applications Karnaugh.
ECE 331 – Digital System 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.
ES 244: Digital Logic Design Chapter 3 Chapter 3: Karnaugh Maps Uchechukwu Ofoegbu Temple University.
Chapter 4 Combinational Logic Design Principles. Overview Objectives -Define combinational logic circuit -Analysis of logic circuits (to describe what.
COE 561 Digital System Design & Synthesis Two-Level Logic Synthesis Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum.
Examples. Examples (1/11)  Example #1: f(A,B,C,D) =  m(2,3,4,5,7,8,10,13,15) Fill in the 1’s. 1 1 C A B CD AB D 1 1.
Logic Gates By Taweesak Reungpeerakul
Chapter 6 Quine-McCluskey Method Mei Yang ECG Logic Design 1.
Converting to Minterms Form
Simplification of incompletely specified functions using QM Tech.
Computer Engineering (Logic Circuits) (Karnaugh Map)
Chapter 3 The Karnaugh Map
CS2100 Computer Organisation
07 KM Page 1 ECEn/CS 224 Karnaugh Maps. 07 KM Page 2 ECEn/CS 224 What are Karnaugh Maps? A simpler way to handle most (but not all) jobs of manipulating.
CHAPTER 3: PRINCIPLES OF COMBINATIONAL LOGIC
CH41 Chapter 4 Boolean Algebra and Logic Simplification By Taweesak Reungpeerakul.
Boolean Algebra & Logic Circuits Dr. Ahmed El-Bialy Dr. Sahar Fawzy.
Conversion from one number base to another Binary arithmetic Equation simplification DeMorgan’s Laws Conversion to/from SOP/POS Reading equations from.
BR 2/1/991 Truth Tables (again) Recall that a boolean equation can be represented by a Truth Table A B C F
1 Example: Groupings on 3-Variable K-Maps BC F(A,B,C) = A ’ B ’ A BC F(A,B,C) = B ’ A
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic 4: Cost of Logic Circuits and Karnaugh Maps José Nelson Amaral.
Karnaugh Maps (K maps).
CEC 220 Digital Circuit Design More Karnaugh Maps Monday, February 02 CEC 220 Digital Circuit Design Slide 1 of 11.
EECS 270 Lecture 10. K-map “rules” – Only circle adjacent cells (remember edges are adjacent!) – Only circle groups that are powers of 2 (1, 2,
Lecture 4: Four Input K-Maps CSE 140: Components and Design Techniques for Digital Systems CK Cheng Dept. of Computer Science and Engineering University.
Boolean Functions 1 ECE 667 ECE 667 Synthesis and Verification of Digital Circuits Boolean Functions Basics Maciej Ciesielski Univ.
ECE 301 – Digital Electronics Minimizing Boolean Expressions using K-maps, The Minimal Cover, and Incompletely Specified Boolean Functions (Lecture #6)
CHAPTER 6 Quine-McCluskey Method
Tarvo Treier IDU0075 Veebiteenused Tarvo Treier
Lecture 4 Logistics Last lecture --- Boolean algebra Today’s lecture
ELEC Digital Logic Circuits Fall 2014 Logic Minimization (Chapter 3)
Lecture 5 Topics Canonical or Standard Forms of Functions
QUINE-McCLUSKEY METHOD
Plotting functions not in canonical form
Optimized Implementation of Logic Function
Kombinatoorsete süsteemide disain
Mäluga süsteemide disain
Chapter 6 Quine-McCluskey Method
ECE 331 – Digital System 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
Function Minimization Algorithms
Combinatorial Logic Circuit
Kombinatoorsete süsteemide disain
Function Minimization Algorithms
Quine-McClusky Minimization Method
COE 202: Digital Logic Design Combinational Logic Part 3
ECB2212-Digital Electronics
Lecture 5 Logistics Last lecture Today’s lecture
Overview Part 2 – Circuit Optimization
3-Variable K-map AB/C AB/C A’B’ A’B AB AB’
CHAPTER 6 QUINE-McCLUSKEY METHOD
CSE 140 Lecture 4 Combinational Logic: K-Map
Chapter 4 Combinational Logic Design Principles. Overview Objectives -Define combinational logic circuit -Analysis of logic circuits (to describe what.
ECE 331 – Digital System Design
Presentation transcript:

Kombinatoorsete süsteemide disain L7. Loogikafunktsioonide täpne minimeerimine L8. Loogikafunktsioonide heuristiline minimeerimine L9. Mitmevalentne loogika © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Esitusviisid b c a 1 y z x Tabelesitus tõeväärtustabel (truth table) funktsiooni kõikide mintermide loetelu implkanttabel (implicant table) e. intervalltabel e. kate (cover) funktsiooni defineerimiseks piisavate implikantide loetelu b c a 1 - y z x Algebraline x = abc+a’c’ / y = b’c+a’b’+a’c / z = abc+a’c’+a’b’ © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Normaalkujud Disjunktiivne normaalkuju (DNK, DNF) elementaarkonjunktsioonide (product term) disjunktsioon z = abc+a’c’+a’b’ Konjunktiivne normaalkuju (KNK, CNF) elementaardisjunktsioonide (sum term) konjunktsioon z = (a+b’+c’)(a’+b)(a’+c) [ z’ = a’bc+ab’+ac’ ] © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Normaalkujud Täielik DNK (TDNK, CDNF) z = a’b’c’+a’b’c+a’bc’+abc z = 1a,b,c(0,1,2,7) 1-piirkond Täielik KNK (TKNK, CCNF) z = (a+b’+c’)(a’+b+c)(a’+b+c’)(a’+b’+c) z = 0a,b,c(3,4,5,6) 0-piirkond z’ = a’bc+ab’c’+ab’c+abc’ b c a 1 y z x © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Kate Miinimumkate (minimum cover) kate vähima implikantide arvuga (globaalne optimum) Minimaalne kate (minimal cover) ehk liiasuseta kate (irredundant cover) kate, mis ei sisaldu üheski teises kattes ühtegi implikanti ei saa eemaldada (lokaalne optimum) Lihtimplikant (prime implicant) ei sisaldu üheski teises implikandis Lihtkate (prime cover) – kate lihtimplikantidest Oluline (essential) lihtimplikant leidub minterm, mis on kaetud ainult selle lihtimplikandi poolt © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Kate (1,1,1) (0,0,0)     b c a - 1 y x     a b c (1,1,1) (0,0,0)    (1,1,1) (0,0,0)     miinimumkate minimaalne kate © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Minimeerimine Põhi-idee – leida võimalikult väike arv implikante, et kõik mintermid oleksid kaetud Täpsed meetodid leiavad miinimumkatte tihtipeale võimatu suurte funktsioonide korral Quine-McCluskey meetod Heuristilised meetodid leiavad minimaalsed katted (miinimumkatte leidmine võimalik) lai valik meetodeid - MINI, PRESTO, ESPRESSO © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Minimeerimine Implikantide leidmine mintermidest idempotentsus & neeldumis-seadused s.t. x+x=x & xy+xy’=x või x·x=x & (x+y)(x+y’)=x lisaks distributiivsus ja assotsiatiivsus-seadused s.t. (x·y)+x·z=x·(y+z) & (x+y)+z=x+(y+z) või (x+y)·(x+z)=x+(y·z) & (x·y)·z=x·(y·z) NB! Erinevus täpselt ühes järgus! korratakse seni, kuni enam “kleepida” ei saa Näide – x = a’b’c’+a’bc’+abc x = a’b’c’+a’bc’+abc = a’c’(b’+b)+abc = a’c’+abc 1 a c b x © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Minimeerimine x = (a+b+c’)(a+b’+c’)(a’+b+c)(a’+b+c’)(a’+b’+c) = [(a+c’)+(bb’)]·[(a’+b)+(cc’)]·(a’+b’+c) = (a+c’)(a’+b)(a’+b’+c) Pole minimaalne… x = (a+b+c’)(a+b’+c’)(a’+b+c)(a’+b+c’)(a’+b’+c) = (a+b+c’)(a+b’+c’)(a’+b+c)(a’+b+c’)(a’+b+c)(a’+b’+c) = [(a+c’)+(bb’)]·[(a’+b)+(cc’)]·[(a’+c)+(bb’)] = (a+c’)(a’+b)(a’+c) 1 a c b x 1 a c b x © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Minimeerimine y = a’b’c’+a’b’c+a’bc+ab’c = a’b’(c’+c)+a’bc+ab’c = a’b’+a’bc+ab’c … ??? y = a’b’c’+a’b’c+a’bc+ab’c = a’b’c’+a’b’c+a’b’c+a’bc+a’b’c+ab’c = a’b’(c’+c)+a’c(b’+b)+b’c(a’+a) = a’b’+a’c+b’c z = a’b’c’+a’b’c+a’bc’+abc = a’b’c’+a’b’c+a’b’c’+a’bc’+abc = a’b’(c’+c)+a’c’(b’+b)+abc = a’b’+a’c’+abc 1 a c b y 1 a c b z © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine Quine’i teoreem – miinimumkate on lihtkate miinimumkatte otsimisel võib piirduda lihtimplikantidega Quine-McCluskey meetod leia (kõik) lihtimplikandid implikante omavahel kombineerides leia miinimumkate © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine Leitakse kõikvõimalikud lihtimplikandid kuni 2n mintermi neid saab rühmitada kuni 3n/n lihtimplikanti osadel funktsioonidel oluliselt vähem Lihtimplikantide tabel read - mintermid (1-piirkond) veerud lihtimplikandid kiirendamisvõtted olulised lihtimplikandid peavad kuuluma kattesse sõltumatud rühmad võib lahendada eraldi © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine Kõik lihtimplikandid y = ‘1’abcd (0,2,5,8,10,14), ‘-’abcd (12,13,15) kõik mintermid grupeerimine 1-de arvu järgi esitus intervallidena või esitus 10-koodidena Kleepimine ainult naabergrupid erinevus ainult ühes järgus või erinevus 2-astme võrra c d b 1 a 3 2 4 2 8 5 10 12 13 14 15 3 1 4 © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine c d b - 1 a 3 2 c d b 1 a 3 2 4 1 b c d - a © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine c d b - 1 a 3 2 c d b - 1 a 2 1 b c d - a b’d’ B ad’ C ab D bc’d A © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine 3 1 2 (2) (8) (4) (1) 8 5 10 12 13 14 1 b c d - a 2 8 5 10 12 13 14 15 3 1 4 © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine 3 1 2 (2) (8) (4) (1) 8 5 10 12 13 14 1 b c d - a (2,8) (2,4) (1,2) 8 12 1 2 b’d’ B ad’ C ab D bc’d A © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine Lihtimplikantide kate y = ‘1’abcd (0,2,5,8,10,14), ‘-’abcd (12,13,15) 2 5 8 10 14 A B C D bc’d b’d’ ad’ ab [ 5 (8) ] [ 0 (2,8) ] [ 8 (2,4) ] [ 12 (1,2) ] A B C D + + + + © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Täpne minimeerimine Lihtimplikantide kate olulised lihtimplikandid 1 b c d - a 2 5 8 10 14 A B C D + bc’d b’d’ ad’ ab y = bc’d+b’d’+ab © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Näide #2 x = a’b’c’+a’bc’+abc x = ‘1’a,b,c(0,2,7) x = ‘0’a,b,c(1,3,4,5,6) y = a’b’c’+a’b’c+a’bc+ab’c y = ‘1’a,b,c(0,1,3,5) y = ‘0’a,b,c(2,4,6,7) z = a’b’c’+a’b’c+a’bc’+abc z = ‘1’a,b,c(0,1,2,7) z = ‘0’a,b,c(3,4,5,6) b c a 1 y z x © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

Näide #2: x - implikandid x = a’b’c’+a’bc’+abc x = ‘1’a,b,c(0,2,7) x = ‘0’a,b,c(1,3,4,5,6) 1 3 [ühed] - A B b c a 1 x 1 2 [nullid] 1 a c b x - 1 C D E F © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

I207 - Digitaalloogika ja -süsteemid - L7 Näide #2: x - kate x = a’b’c’+a’bc’+abc x = ‘1’a,b,c(0,2,7) x = ‘0’a,b,c(1,3,4,5,6) A B + 2 7 [ühed] 1 - A B + 1 3 4 5 6 C D E F b c a 1 x [nullid] D E F - 1 C 1 a c b x x = abc+a’c’ x = (a+c’)(b+c’)(a’+c) © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

Näide #2: y - implikandid [ühed] y = a’b’c’+a’b’c+a’bc+ab’c y = ‘1’a,b,c(0,1,3,5) y = ‘0’a,b,c(2,4,6,7) 1 2 - 1 A B C Kõik implikandid on olulised b c a 1 y [nullid] 1 2 3 1 - 2 D E F 1 a c b y Kõik implikandid on olulised y = a’b’+a’c+b’c y = (b’+c)(a’+c)(a’+b’) © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7

Näide #2: z - implikandid [ühed] z = a’b’c’+a’b’c+a’bc’+abc z = ‘1’a,b,c(0,1,2,7) z = ‘0’a,b,c(3,4,5,6) 1 3 A - B C Kõik implikandid on olulised b c a 1 z [nullid] 1 1 - 1 E F 2 1 1 D 1 a c b z 1 1 1 1 Kõik implikandid on olulised z = abc+a’b’+a’c’ z = (a+b’+c’)(a’+b)(a’+c) © Peeter Ellervee I207 - Digitaalloogika ja -süsteemid - L7