EECS-140/141 Introduction to Digital Logic Design Lecture 4:Simplification in Logic Synthesis

Similar documents
Odd-Prime Number Detector The table of minterms is represented. Table 13.1

CHAPTER 3 BASIC & COMBINATIONAL LOGIC CIRCUIT

Name: Class: Date: 1. As more electronic systems have been designed using digital technology, devices have become smaller and less powerful.

University of Technology

Lecture 15 Analysis of Combinational Circuits

Subject: Analog and Digital Electronics Code:15CS32

Encoders. Lecture 23 5

Chapter 3 Digital Logic Structures

Asst. Prof. Thavatchai Tayjasanant, PhD. Power System Research Lab 12 th Floor, Building 4 Tel: (02)

Introduction to Digital Logic Missouri S&T University CPE 2210 Exam 1 Logistics

CMSC 2833 Lecture 26. Step Expression Justification

Analysis procedure. To obtain the output Boolean functions from a logic diagram, proceed as follows:

ECE380 Digital Logic

UNIT-2: BOOLEAN EXPRESSIONS AND COMBINATIONAL LOGIC CIRCUITS

EECS 150 Homework 4 Solutions Fall 2008

SYNTHESIS OF COMBINATIONAL CIRCUITS

Larger 5 & 6variable Karnaugh maps

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 4: Combinational Logic Circuits. Name: Date:

Digital. Design. R. Ananda Natarajan B C D

Introduction to CMOS VLSI Design (E158) Lecture 5: Logic

Logic Circuit Design

Logic Design I (17.341) Fall Lecture Outline

DEPARTMENT OF ELETRONICS AND COMMUNICATION ENGINEERING COURSE NOTES FACULTY NAME/DESIGNATION: SUGAPRIYAA.THA / LECTURER

Combinational Logic. Combinational Logic Design Process, Three State Buffers, Decoders, Multiplexers, Encoders, Demultiplexers, Other Considerations

EECS-140/141 Introduction to Digital Logic Design Lecture 7:Sequential Logic Basics

Chapter 4 Combinational Logic Circuits

Formal Foundation of Digital Design

(CSC-3501) Lecture 6 (31 Jan 2008) Seung-Jong Park (Jay) CSC S.J. Park. Announcement

In this lecture: Lecture 8: ROM & Programmable Logic Devices

Unit 3. Logic Design

B.C.A 2017 DIGITAL ELECTRONICS BCA104T MODULE SPECIFICATION SHEET. Course Outline

5.3 Optimization of Logic Circuits

De Morgan s second theorem: The complement of a product is equal to the sum of the complements.

Chapter 3 Describing Logic Circuits Dr. Xu

Chapter 4 Combinational Logic Circuits

Function Table of an Odd-Parity Generator Circuit

Digital Circuits Introduction

Chapter 2 Introduction to Logic Circuits

Course Overview. Course Overview

CS302 Digital Logic Design Solved Objective Midterm Papers For Preparation of Midterm Exam

Gates and Circuits 1

Combinational Logic. Rab Nawaz Khan Jadoon DCS. Lecturer COMSATS Lahore Pakistan. Department of Computer Science

Testing Digital Systems I

Combinational Logic Design CH002

Lecture 7: Digital Logic

Digital Electronics Course Objectives

Dr. Nicola Nicolici COE/EE2DI4 Midterm Test #1 Oct 18, 2006

Combinational logic. ! Regular logic: multiplexers, decoders, LUTs and FPGAs. ! Switches, basic logic and truth tables, logic functions

BOOLEAN ALGEBRA AND LOGIC FAMILIES

Senior Math Circles February 10, 2010 Game Theory II

Synthesis of Combinational Logic

Digital Logic Circuits

Chapter 1: Digital logic

Logic diagram: a graphical representation of a circuit

Gates and and Circuits

Situations Involving Multiplication and Division with Products to 50

Module 4: Design and Analysis of Combinational Circuits 1. Module-4. Design and Analysis of Combinational Circuits

Strategic Plan The Nelson-Atkins Museum of Art

Situations Involving Multiplication and Division with Products to 100

ECE 172 Digital Systems. Chapter 2 Digital Hardware. Herbert G. Mayer, PSU Status 6/30/2018

UC Berkeley CS61C : Machine Structures

Digital Fundamentals

BCD Adder. Lecture 21 1

EEE 301 Digital Electronics

Experiments in Probability ----a game of dice ---

Lecture 1, CS 2050, Intro Discrete Math for Computer Science

CHAPTER 5 DESIGN OF COMBINATIONAL LOGIC CIRCUITS IN QCA

Computer Architecture: Part II. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University

Pennies vs Paperclips

Objective Questions. (a) Light (b) Temperature (c) Sound (d) all of these

UC Berkeley CS61C : Machine Structures

Games of Skill Lesson 1 of 9, work in pairs

Overview. Equipment. Setup. A Single Turn. Drawing a Domino

Chapter 5: Signal conversion

Digital Electronics 8. Multiplexer & Demultiplexer

Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates

Digital Circuits II Lecture 6. Lab Demonstration 3 Using Altera Quartus II to Determine Simplified Equations & Entering Truth Table into VHDL

EE260: Digital Design, Spring n More Logic Gates n NAND and NOR Gates

Introduction to DSP ECE-S352 Fall Quarter 2000 Matlab Project 1

UC Berkeley CS61C : Machine Structures

Number system: the system used to count discrete units is called number. Decimal system: the number system that contains 10 distinguished

COMPUTER ORGANIZATION & ARCHITECTURE DIGITAL LOGIC CSCD211- DEPARTMENT OF COMPUTER SCIENCE, UNIVERSITY OF GHANA

SKP Engineering College

Introduction to Simulation of Verilog Designs. 1 Introduction. For Quartus II 13.0

NUMBER SYSTEM AND CODES

I.M.O. Winter Training Camp 2008: Invariants and Monovariants

COURSE LEARNING OUTCOMES AND OBJECTIVES

Games of Skill ANSWERS Lesson 1 of 9, work in pairs

Written exam IE1204/5 Digital Design Friday 13/

TECH 3232 Fall 2010 Lab #1 Into To Digital Circuits. To review basic logic gates and digital logic circuit construction and testing.

Applications of Karnaugh Map and Logic Gates in Minecraft Redstone Circuits

Digital Electronic Concepts

Connect Four Emulator

Syllabus: Digital Electronics (DE) (Project Lead The Way)

Logic and Computer Design Fundamentals. Chapter 6 Selected Design Topics. Part 1 The Design Space

Lecture 20 November 13, 2014

Laboratory Manual CS (P) Digital Systems Lab

Programmable Logic Arrays (PLAs)

Index. Cadden, W. J., 128 Caelingeart, P., 55, 57 Caldwell. S. H Absorption laws, 20, 29 Adjacency. diagram, 182. SIVE -NOR expressions, 53

a b y UC Berkeley CS61C : Machine Structures Hello Helo,world!

Transcription:

EECS-140/141 Introduction to Digital Logic Design Lecture 4:Simplification in Logic Synthesis I. REVIEW AND INTRODUCTION I.A General Synthesis Procedure I.A.1 Express Function as: I.A.1.a Define variables and assign values I.A.1.b (Optional) Express as logic function using: I.A.1.c Express as Truth Table All possible input combinations Rows are represented by minterms and Maxterms: I.A.2 Optional: Express T.T. ascsop or CPoS I.A.2.a Very straightforward using: I.A.2.b CSoP has lower cost (vs. CPoS) if: I.A.3 Simplify: find low-cost SoP or PoS synthesis Tricky because it relies on Boolean Algebra properties: This is the focus of this lecture. I.A.4 Optional: convert to: This reduces:

EECS-140/141-2- Intro to Digital Logic Design I.B B.A. Approach to Simplification I.B.1 Start with Canonical Form (Either CSoP or CPoS) I.B.2 Use Combining Property to merge terms (SoP) or factors (PoS) I.B.3 Duplicate terms (or factors) as needed to combine more I.B.4 Still tricky We need: Which terms/factors can be combined? When to duplicate? II. SoP SIMPLIFICATION We start with finding simple SoP form; will do PoS later... II.A Karnaugh Maps (K-Maps) K-map is a graphical aid to manual simplification that "works" for relatively few ( 5) inputs (variables). K-map is just an alternative representation of: Grid instead of column for outputs. Can be used for either SoP or PoS simplification. II.A.1 2-Variable K-Map II.A.1.a Basics Truth Table a b minterm 0 0 0 1 1 0 1 1 Advantage: minterms that have common factor are "adjacent": K-Map

EECS-140/141-3- Intro to Digital Logic Design II.A.1.a Continued CSoP includes all minterms corresponding to row with 1 in output ( f )column. So, look for rectangles of: II.A.1.b Example a b f 0 0 0 1 1 0 1 1 Truth Table K-Map CSoP Note1: Must include all 1 s ink-map. Note2: May include K-map cells (with 1 s) more than once to simplify: II.A.2 3-Variable K-Map II.A.2.a Basics K-Map: Similar idea, but must take care to: Important: Edges "wrap around". Example: m 0 and m 4 are adjacent! Again, terms that can be combined are grouped together in rectangles. Groups are now:

EECS-140/141-4- Intro to Digital Logic Design II.A.2.b Example Truth Table a b c f 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 K-Map II.A.2.c Another Example Truth Table a b c f 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Group of 4? K-Map Group of 2 that includes "new" 1 s?

EECS-140/141-5- Intro to Digital Logic Design II.A.3 4-Variable K-Map II.A.3.a Basics Keep expanding! Careful with ordering! Now can have groups of 2, 4, or 8! How many groups of 8? How many groups of 4? How many groups of 2? Example (students verify this): m 0 + m 1 + m 3 + m 2 + m 8 + m 9 + m 11 + m 10 = II.A.3.b Example

EECS-140/141-6- Intro to Digital Logic Design II.A.3.c Another Example II.A.4 5-Variable K-Map Stack 2 4-variable K-maps on top of each other See book. II.A.5 More Examples of K-Maps See Section 4.1 of book.

EECS-140/141-7- Intro to Digital Logic Design II.B Formal Simplification Strategy K-map examples showed some basic principles useful for simplification. More difficult cases require a more formalized strategy. II.B.1 Terminology Need standardized terms to describe strategy. Introduce here for SoP form (PoS form later). II.B.1.a Literal Definition: Asingle input variable in either: Examples: II.B.1.b Implicant Example 1: Definition: A product term that includes only f = 1 minterms. Example 2: Example 3: Implicants: 5 minterms plus: II.B.1.c Prime Implicant (PI) Definition: Animplicant that is not entirely included in another implicant with: So, you would never use a non-prime implicant if you are trying to find a simple SoP synthesis. Example: 3-variable K-map from Example 3 above: Prime implicants:

EECS-140/141-8- Intro to Digital Logic Design II.B.1.d Cover (Noun) Definition: Acollection of implicants that includes all f = 1minterms (and no f = 0minterms). Acover corresponds to a particular SoP synthesis. Examples: II.B.1.e Essential Prime Implicant (EPI) Definition: a prime implicant (PI) that includes at least one f=1 minterm that is not included in any other PI. EPI s will be included in any reasonably simplified cover. Example: 3-variable K-map from Example 3 above: Which PI s are essential? Another Example: PI s: EPI s: II.B.2 Procedure a. Identify all PI s. b. Identify all EPI s. If these form a cover: c. If not, select other PI s to complete the cover. There is no one best method for this. One method when faced with choice of PI to add: Choose PI with fewest literals that provides additional cover. Ifseveral to choose from, choose the one that: Note: This procedure is not guaranteed to result in a minimum-cost SoP synthesis (example later).

EECS-140/141-9- Intro to Digital Logic Design II.B.3 Examples a. b. c.

EECS-140/141-10 - Intro to Digital Logic Design d. Examples continued. e. More in book!

EECS-140/141-11 - Intro to Digital Logic Design II.B.4 Don t Care Minterms II.B.4.a Example Consider the following 2-person "game" with players W and X. Abag has 3 pieces of paper labeled 1, 2, and 3. Player W draws a piece of paper, records the number, then replaces the paper in the bag. Player X does the same. Player with larger number "wins". Design a logic circuit whose output is 1 whenever player X wins or ties. Let W 1 W 0 be a binary representation of the number drawn by W. Let X 1 X 0 be the same for X. For both cases, represent: Note: Not possible to have: So, we don t care what the output is for either of those input combinations. K-map: Note: can indicate don t-care minterms with D( ). Here: f (W 1, W 0, X 1, X 0 ) =

EECS-140/141-12 - Intro to Digital Logic Design II.B.4.b What to do with don t-cares? Since they can be either 0or1,wecan choose their value to help simplify the implementation. We will want to make d = 1ifand only if that helps us get a PI with fewer literals. Game Example: PI s: EPI s: min-cost SOP synthesis: Note: with this implementation: III. Product of Sums (PoS) Simplification III.A Intro Very similar to SoP, except we focus on: Min-cost PoS may be less or more costly compared to min-cost SoP. III.A.1 Terminology We will have PoS versions of the terms introduced earlier for SoP simplification: PoS Implicant: PoS Prime Implicant: PoS Essential Prime Implicant: PoS Cover:

EECS-140/141-13 - Intro to Digital Logic Design III.B Examples III.B.1 Example 3From II.B.1.b III.B.2 From II.B.3.c

EECS-140/141-14 - Intro to Digital Logic Design IV. Multiple-Output Circuits IV.A Introduction When a logic circuit/function has multiple outputs (with the same set of inputs), we may be able to share some portions (e.g., SoP product terms) between the output expressions. That is, if f 1 and f 2 are functions of the same inputs, it is possible to have: This sharing possibility may dictate the choice of PIs for one or both outputs from their individual min-cost syntheses. Sometimes it can even bebetter to use a sub-optimal synthesis for one or more outputs to obtain a min-cost multi-output circuit. Wewill focus here on SoP synthesis. IV.B Examples IV.B.1 f 1 from II.A.2.c and f 2 from II.B.3.a Options: a. Implement each separately (no sharing): b. Share b c term: c. Maximize sharing from K-maps: Implement f 1 as:

EECS-140/141-15 - Intro to Digital Logic Design Resulting logic circuit: IV.B.2 f 1 from II.B.3.d and f 2 Below

EECS-140/141-16 - Intro to Digital Logic Design Options: a. f 1 with horizontals and f 2 as above (no sharing possible): b. f 1 with horizontals and f 2 = c. f 1 with verticals and f 2 as above: V. Multi-Level Synthesis V.AIntroduction V.A.1 Emphasized 2-Level Synthesis So Far V.A.2 Reasons to Consider Multi-Level Synthesis V.A.2.a Limits on Number of Inputs to Gates (Fan-In Limit) Example: If f has 5 terms in SoP synthesis, 2-level circuit requires a 5-input OR. What if only 3-input OR gates are available? We could implement as: Now wehave a3-level circuit since some signals travel through 3 gates to output. But, wecan often manipulate a logic expression to reduce fan-in requirement and: V.A.2.b Wiring Complexity Multi-level circuits typically require less interconnection wiring than 2-level circuits, which reduces chip or board area required.

EECS-140/141-17 - Intro to Digital Logic Design V.A.3 A Disadvantage of Multi-Level Synthesis: Longer Propagation Delay When inputs to a gate change, there is a delay before the output changes: gate propagation delay. Multi-level circuits require signals to pass through more than 2 gates input to output, thus: V.BFactoring V.B.1 Introduction Starting from a min-cost SoP synthesis, it is often possible to factor out common portions of several product terms using the Distributive Property, resulting in: V.B.2 Examples a. b.

EECS-140/141-18 - Intro to Digital Logic Design V.CFunctional Decomposition V.C.1 Introduction Start with factoring. Find sub-functions that can be re-used. One simple re-use: a sub-function and: V.C.2 Example

EECS-140/141-19 - Intro to Digital Logic Design V.DAnalysis of Multi-Level Circuits V.D.1 Introduction Sometimes we need to derive a T.T. from a given multi-level circuit. This is pretty easy if you: a) label internal points. b) write a logic expression for each. c) write f in terms of internal points. d) expand back out to get: V.D.2 Example Above