SYNTHESIS OF COMBINATIONAL CIRCUITS

Similar documents
Digital Fundamentals

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

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

CHAPTER 3 BASIC & COMBINATIONAL LOGIC CIRCUIT

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

Subject: Analog and Digital Electronics Code:15CS32

Copyright 2000 N. AYDIN. All rights reserved. 1

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

Programmable Logic Arrays (PLAs)

EECS 150 Homework 4 Solutions Fall 2008

EE 330 Lecture 5. Other Logic Styles Improved Device Models Stick Diagrams

Digital. Design. R. Ananda Natarajan B C D

Programmable Logic Arrays (PLAs)

University of Technology

Logic Design I (17.341) Fall Lecture Outline

Lecture 15 Analysis of Combinational Circuits

Synthesis of Combinational Logic

Digital Systems Principles and Applications TWELFTH EDITION. 3-3 OR Operation With OR Gates. 3-4 AND Operations with AND gates

Chapter 3 Digital Logic Structures

Logic Symbols with Truth Tables INVERTER A B NAND A B C NOR C A B A B C XNOR A B C A B Digital Logic 1

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

Combinational Logic Design CH002

Course Overview. Course Overview

6.1 In this section, you will design (but NOT build) a circuit with 4 inputs,

Chapter 4 Combinational Logic Circuits

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

2 Logic Gates THE INVERTER. A logic gate is an electronic circuit which makes logic decisions. It has one output and one or more inputs.

Chapter 4 Combinational Logic Circuits

EE 330 Lecture 5. Other Logic Styles. Improved Device Models. complex logic gates pass transistor logic

Function Table of 74LS138, 3-to-8 Decoder +5V 6 G1 4 G2A 5 G2B. 4-to-16 Decoder using two 74LS139, 3-to-8 Decoder

UNIT-2: BOOLEAN EXPRESSIONS AND COMBINATIONAL LOGIC CIRCUITS

Formal Foundation of Digital Design

Data output signals May or may not be same a input signals

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

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

EEE 301 Digital Electronics

Digital Circuits Introduction

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

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

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

CS302 - Digital Logic Design Glossary By

ECE380 Digital Logic

BOOLEAN ALGEBRA AND LOGIC FAMILIES

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

Chapter 3 Describing Logic Circuits Dr. Xu

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

This Figure here illustrates the operation for a 2-input OR gate for all four possible input combinations.

Chapter 4 Logic Functions and Gates

EE 330 Lecture 5. Improved Device Models Propagation Delay in Logic Circuits

Gates and Circuits 1

I. Computational Logic and the Five Basic Logic Gates 1

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

Combinational Circuits: Multiplexers, Decoders, Programmable Logic Devices

(a) (b) (c) (d) (e) (a) (b) (c) (d) (e)

Lecture Summary Module 1 Switching Algebra and CMOS Logic Gates

FUNCTION OF COMBINATIONAL LOGIC CIRCUIT

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

Memory, Latches, & Registers

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

VLSI Design. Static CMOS Logic

EE 330 Lecture 5. Basic Logic Circuits Complete Logic Family Other Logic Styles. complex logic gates

Larger 5 & 6variable Karnaugh maps

Chapter 2 Introduction to Logic Circuits

Outline. EECS Components and Design Techniques for Digital Systems. Lec 12 - Timing. General Model of Synchronous Circuit

Department of Electronics and Communication Engineering

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

EXPERIMENT #5 COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

Chapter 1: Digital logic

Digital Logic. Software. Digital Logic. Boolean value (bit): 0 or 1. Transistors (more in lab) 1/26/16. Program, Application. Programming Language

Combinational Circuits DC-IV (Part I) Notes

Learning Outcomes. Spiral 2 8. Digital Design Overview LAYOUT

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

EE 330 Lecture 5. Basic Logic Circuits Complete Logic Family Other Logic Styles. Improved Device Models. complex logic gates pass transistor logic

Digital Electronics Course Objectives

Laboratory Manual CS (P) Digital Systems Lab

In this lecture: Lecture 3: Basic Logic Gates & Boolean Expressions

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

Digital Fundamentals 9/4/2017. Summary. Summary. Floyd. Chapter 3. The Inverter

DIGITAL ELECTRONICS. Methods & diagrams : 1 Graph plotting : - Tables & analysis : - Questions & discussion : 6 Performance : 3

Digital Fundamentals A Systems Approach Thomas L. Floyd First Edition

PREVIEW COPY. Digital Logic Systems. Table of Contents. Digital Logic Fundamentals...3. Logic Building Blocks Medium- and Large-Scale ICs...

Digital Logic Circuits

LOGIC GATES AND LOGIC CIRCUITS A logic gate is an elementary building block of a Digital Circuit. Most logic gates have two inputs and one output.

Introduction to System Block Algebra

UNIT-II LOW POWER VLSI DESIGN APPROACHES

Positive and Negative Logic

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

Digital Electronics. Functions of Combinational Logic

Digital Electronic Concepts

Digital Fundamentals

COURSE LEARNING OUTCOMES AND OBJECTIVES

Module 4: Combinational Logic Glitches and Hazards

ELEC Digital Logic Circuits Fall 2015 Logic Synthesis (Chapters 2-5)

Gates and and Circuits

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) SUMMER-16 EXAMINATION Model Answer

FTL Based Carry Look ahead Adder Design Using Floating Gates

Multiple input gates. The AND gate

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

Digital Fundamentals. Lab 4 EX-OR Circuits & Combinational Circuit Design

Digital Fundamentals 8/29/2016. Summary. Summary. Floyd. Chapter 3 A X. The Inverter

Transcription:

HPTER 6 SYNTHESIS O OMINTIONL IRUITS 6.1 Introduction oolean functions can be expressed in the forms of sum-of-products and productof-sums. These expressions can also be minimized using algebraic manipulations or Karnaugh maps. The goal of minimization is to reduce cost, which is defined by the number of gates and the number of gate inputs. Single-Rail and ouble-rail Signals When a variable of a function or input to a logic circuit is available in only one form, it is called a single-rail variable or input. n inverter is required to get the other form. When both true and complemented forms of a variable or an input are available, it is called a double-rail variable or input. an-in and an-out Limits an-in limit is a constraint on the number of inputs to a gate. product or sum term of more than n literals cannot be realized by an n-input N gate or OR gate. Under such circumstances, either a gate with greater fan-in limit is used, or it is implemented by multiple gates. It is also possible to re-formulate the oolean expression by applying the distributive law to eliminate fan-in limits. When the output of a gate is connected to the inputs of other gates, the limit to the number of gates that it can be connected to is called fan-out limit. One technique to deal with this problem is to divert the output signal into a number of buffers within the fan-out limit. The inputs to the gates that were driven by the gate output can now be driven by the outputs of the buffers. Re-formulation of the oolean expression is also another way of solving the problem. Level of igital ircuits When inputs are applied to a digital circuit, they will propagate to the output through various paths. Each path is the concatenation of a number of gates. ssume all gates have the same delay. If n is the number of gates in the path with the longest delay in a circuit, the circuit is called an n-level circuit. 103

6.2 Two-Level ircuits In realizing sum-of-products and product-of-sums expressions, it is always assume that all inputs are double-rail. No inverters are required to generate the complemented form of the inputs. There is also no fan-in limit on the gates that are used to implement the SOP and POS expressions. Therefore the implementation of a sum-of-products or a product-of-sums expression is a 2-level circuit. or instance, (,,,) = Σ m(4, 5, 7, 9, 11, 13, 15) The simplest sum-of-products expression and simplest product-of-sums expression are (,,,) = + + = ( + ) ( + ) ( + ) The sum-of-products and product-of-sums expressions are implemented in igure 6.1 as a 2-level N-OR circuit and a 2-level OR-N circuit respectively. 1 st level N 2 nd level OR 1 st level OR 2 nd level N (a) (b) igure 6.1 (a) 2-level N-OR circuit. (b) 2-level OR-N circuit. The 2-level circuits in igure 6.1 can be implemented using other types of gates. To perform the conversion, the gate equivalencies in igures 4.13 (a) and (b) are repeated in igure 6.2 for convenience. N-OR and NN-NN ircuits Since NN is a functionally complete set, a digital circuit can be implemented just by NN gates. The conversion is illustrated in igure 6.3. 2-level N-OR circuit in igure 6.3(a) is used as an example. ubbles are used in the conversion process for inversions that may or may not necessarily require inverters. pair of bubbles is 104

(a) (b) igure 6.2 (a) Equivalence between OR with inverted inputs and NN. (b) Equivalence between N with inverted inputs and NOR. (a) (b) igure 6.3 onversion between 2-level N-OR and 2-level NN-NN circuits. 105

inserted between each N gate output in the first level and the input to the OR gate in the second level, as shown in the middle circuit diagram of igure 6.3(a). ttaching a bubble to the output of an N gate in the first level turns it into a NN gate. The second level becomes an OR gate with inverted inputs, which is equivalent to a NN gate, as shown in igure 6.2(a). With the replacement of the OR symbol with inverted inputs by a NN symbol, the 2-level N-OR circuit becomes a 2-level NN- NN circuit in the bottom diagram of igure 6.3(a). Thus each and every gate in a 2- level N-OR circuit can be replaced with a NN gate. 2-level N-OR circuit is equivalent to a 2-level NN-NN circuit. The conversion of another 2-level N-OR circuit to a 2-level NN-NN circuit is illustrated in igure 6.3(b). It is noted that the third input to the second level OR gate is not from the output of an N gate. It is simply a literal, which is. The absence of an N gate before the third input of the OR gate leaves a lone bubble. To take care of this bubble or inversion, a NN gate may be used in place of the bubble. Since the inputs are double-rail, the bubble can be removed by complementing the literal from to, as shown in the bottom circuit diagram of igure 6.3(b). 2-level N-OR circuit is said to be non-standard if some inputs to the second level OR gate are literals instead of product terms. Each and every gate in such a circuit can still be replaced with a NN gate to make it a 2-level NN-NN circuit. However, each and every literal to the OR gate must be complemented. OR-N and NOR-NOR ircuits igital circuits can be implemented with only NOR gates because NOR is functionally complete. The conversion from 2-level OR-N circuit to a 2-level NOR- NOR circuit is illustrated in igure 6.4. Similar to the conversion from 2-level N-OR to 2-level NN-NN, a pair of bubbles is inserted between a gate output in the first level and an input to the second level. One of the bubble is combined with the OR gate in the first level to make it a NOR. The second bubble inverts the input to the N gate in the second level. When all the inputs to the N gate are inverted, as shown in igure 6.2(b), it is equivalent to a NOR gate. Thus a 2-level OR-N circuit is equivalent to a 2-level NOR-NOR circuit. igure 6.4(b) is the conversion of a non-standard 2-level OR- N circuit. One of the inputs to the second level N gate is just a literal. This literal has to be complemented in the conversion. N-NOR ircuit Two-level N-NOR circuits are a standard configuration in some integrated circuits and programmable logic devices. 2-level N-NOR circuit has an array of N gates in the first level. The outputs of the N gates are connected to a NOR gate in the second level. ecause of the inversion after OR, it is also called an OI (N- OR-INVERSION) circuit. In implementing a function as a 2-level N-NOR circuit, imagine that the bubble at the NOR gate output could be detached from the OR. s shown in igure 6.5, the signal before the bubble is a 2-level N-OR circuit for. Thus the design is to find the sum-of-products for '. fter ' is implemented as a 2-level 106

N-OR circuit, the bubble is then attached to the OR gate to make it a 2-level N- NOR circuit for. (a) (b) igure 6.4 onversion between 2-level OR-N and 2-level NOR-NOR circuits. Inputs 2-level N-OR circuit igure 6.5 Synthesis of 2-level N-NOR circuit. 107

Example 6.1 (,,,) = Σ m(2, 3, 4, 5, 7, 10, 11, 15) The function is to be implemented as a 2-level N-NOR circuit. s previously explained, a sum-of-products expression for should be obtained in the synthesis. The minterm list representation for is (,,,) = Σ m(0, 1, 6, 8, 9, 12, 13, 14) The simplest sum-of-products for is (,,,) = + + The simplest sum-of-products for can also be derived from the product-of-sums expression for, which is (,,,) = π M(0, 1, 6, 8, 9, 12, 13, 14) The simplest product-of-sums expression for is (,,,) = ( + + )( + )( + ) This expression for, when complemented, will become a sum-of-products for by applying emorgan s theorem. ssume that an N-NOR circuit with four 3-input N gates in the first level is available for implementation. In two of the N gates, only two inputs are needed, the third inputs can be properly assigned a value of 1 or connected to either one of the other two inputs. The fourth N gate is not used. Its inputs should be properly connected to generate an output of 0. The signal at a gate output may not be valid if unused inputs are left unintended (or floating). logic 1 logic 1 logic 0 logic 0 logic 0 igure 6.6 Realization of the function in Example 6.1 as an N-NOR circuit. 108

6.3 Multi-Level ircuits When fan-in limit becomes a problem in the implementation of a oolean function, re-formulation of the function is required and it is no longer possible to implement the function as a 2-level circuit. Sometimes, a multi-level circuit may also be more economical than a 2-level circuit. On the other hand, increasing the gate level of a circuit will increase the propagation delay that may slow down the speed of operation. When speed is critical in the operation of a circuit, multi-level circuits are not the right option. Example 6.2 (,,,) = + + + Given above is the simplest sum-of-products expression of a 4-variable function (,,,). If the gates used for implementation have a fan-in limit of two, the sum-ofproducts expression can be changed to the following expression by factoring. (,,,) = ( + ) + ( + ) The function is the same function used in Example 3.14. The minimization of a circuit using only 2-input N gates and 2-input OR gates is equivalent to minimizing the function to a minimum number of literals. It is implemented as a 4-level circuit as shown in igure 6.7. igure 6.7 4-level circuit for Example 6.2. Example 6.3 In this example, a 5-variable function is used to show that literal minimization of a function may start from either a sum-of-products or product-of-sums expression. lthough one form can always be converted to the other form using oolean algebra, it may be better to get both forms and find out which one is easier to start with. Given that (,,,,E) = Σ m(0, 1, 2, 3, 11, 16-23, 27, 31) 109

The simplest sum-of products and product-of-sums expressions can be obtained using K- maps and are as follows: + E + + E ( + ) ( + ) ( + E) rom the above expressions, it is obvious that the product-of-sums expression is better because it has fewer literals. To implement the function using 2-input gates, the expression can be changed to ( + ) ( + E) The circuit has three levels and is shown in igure 6.8. E igure 6.8 3-level circuit for in Example 6.3. 6.4 ll-nn and ll-nor ircuits In section 6.2, it is shown that a 2-level circuit may be realized using only NN gates or NOR gates. multi-level circuit implemented with N gates and OR gates can also be transformed into a circuit with only NN gates or NOR gates, which are also called an all-nn and an all-nor circuit respectively. Transformation does not have to be performed gate by gate. The equivalency between N-OR and NN-NN, as well as OR-N and NOR-NOR, can be applied to gate conversions in a multi-level circuit. To convert a circuit to one with only NN gates, look for all the 2-level N- OR sub-circuits in a multi-level circuit. Then replace each sub-circuit with a 2-level NN-NN circuit. Gates not included in the 2-level N-OR sub-circuits (isolated gates) can be transformed one by one using the equivalencies in igure 6.2. Transformation of a multi-level circuit to a circuit with only NOR gates can also be carried out in a similar manner. multi-level circuit is partitioned into a number of 2- level OR-N sub-circuit and some (if there is any) isolated gates. Each 2-level OR- N sub-circuit is replaced with a 2-level NOR-NOR circuit. Isolated gates are converted one by one using the equivalencies in igure 6.2. 110

Example 6.4 (,,,) = Σ m(3, 5, 6, 7, 12, 13, 14, 15) The simplest sum-of-products and simplest product-of-sums expressions for are respectively + + + and ( + ) ( + ) ( + ) ( + + ) If the function is implemented using only 2-input NN gates, is first implemented using 2-input N gates and 2-input OR gates. The circuit is shown in igure 6.9(a) using the right-hand-side of the following equation. + + + = ( + ) + ( + ) There are two 2-level N-OR sub-circuits and an OR gate. Each sub-circuit as well as the OR gate is shown by a different gray level. The conversion to an all-nn circuit is given in igure 6.9(b). (a) (b) igure 6.9 onversion of a multi-level circuit to an all-nn circuit. 111

The implementation of igure 6.9(a) as an all-nor circuit is shown in igure 6.10. There are two 2-level OR-N sub-circuits and two isolated gates, which are shown by four different gray levels. The isolated N gate is replaced by a NOR gate with inverted inputs. The OR gate at the output is replaced with two NOR gates. (a) (b) igure 6.10 onversion of a multi-level circuit to an all-nor circuit. n all-nor circuit can also be implemented from the product-of-sums expression. ( + ) ( + ) ( + ) ( + + ) = [ + ( + )] [ + ] The realization of the right-hand-side of the above equation is shown in igure 6.11(a). There are two 2-level OR-N sub-circuits that are replaced with two 2-level NOR- NOR circuits. The N gate is changed to a NOR gate with inverted inputs. The all- NOR circuit is shown in igure 6.11(b). y comparing igures 6.10(b) and 6.11(b), it is seen that the all-nor circuit in figure 6.11(b) is more economical. Thus it is suggested that a product-of-sums expression be used for the implementation of an all-nor circuit. Similarly, a sum-of-products expression is suggested for the implementation of an all- NN circuit. 112

(a) (b) igure 6.11 different all-nor implementation from igure 6.10. PROLEMS 1. Given f(,,,) = Σ m (2, 3, 4, 5, 9, 12, 13), realize f as (a) a 2-level N-OR circuit. (b) a 2-level NN-NN circuit. (c) a 2-level OR-N circuit. (d) a 2-level NOR-NOR circuit. (e) a 2-level N-NOR circuit. 2. Given f(,,,,e) = Σ m (2, 3, 5 11, 13, 21, 23 27, 29, 31), realize f as (a) a 2-level N-OR circuit. 113

(b) a 2-level NN-NN circuit. (c) a 2-level OR-N circuit. (d) a 2-level NOR-NOR circuit. (e) a 2-level N-NOR circuit. 3.,,, and are four chairs in a room. Each chair is either occupied (1) or empty (0). (,,,) = 1 if the number of chairs being occupied is more than 2: otherwise = 0. (a) onstruct a truth table for (,,,). (b) Express in minterm list form. (c) Express in maxterm list form. (d) ind the simplest sum-of-products for. (e) ind the simplest product-of-sums for. (f) ind the simplest sum-of-products for '. (g) ind the simplest product-of-sums for '. (h) esign a 2-level NN-NN circuit for. (i) esign a 2-level NOR-NOR circuit for. (j) esign a 2-level NN-NN circuit for '. (k) esign a 2-level NOR-NOR circuit for '. (l) esign a 2-level N-NOR circuit for. (m) esign a 2-level N-NOR circuit for '. 4. Given f(,,,) = Σ m (2, 3, 5, 7, 10, 13, 14, 15), realize f as (a) a 2-level N-NOR circuit. (b) a 2-level NN-N circuit. (c) a 2-level OR-NN circuit. (d) a 2-level NOR-OR circuit. 5. Given f(,,,,e) = Σ m (0 7, 12, 13, 15, 16 23, 26, 30, 31), realize f as (a) a 2-level N-OR circuit. (b) a 2-level NN-NN circuit. (c) a 2-level OR-N circuit. (d) a 2-level NOR-NOR circuit. (e) a 2-level N-NOR circuit. (f) a 2-level NN-N circuit. (g) a 2-level OR-NN circuit. (h) a 2-level NOR-OR circuit. 6. Realize each of the following functions using a minimum number of 2-input NN gates. ll inputs are double-rail. (a) f(,,,) = Σ m (3,4,5,7,8,9,13) (b) f(,,,) = Σ m (2,3,4,5,7,9,13) + d(6,8,14,15) 114

7. Realize each of the following functions using a minimum number of 2-input NOR gates. ll inputs are double-rail. (a) f(,,,) = Σ m (3,4,5,7,8,9,10,13) (b) f(,,,) = π M (0,1,10,11,12) (6,8,14,15) 8. Minimize each of the following functions using a minimum number of 2-input NN gates and exclusive-or gates. ll inputs are single-rail. (a) f(,,,) = Σ m (3,4,5,7,8,9,13) (b) f(,,,) = Σ m (0,1,2,3,5,11,12,13,14,15) 9. 2-bit magnitude comparison circuit has four inputs a 1, a 0, b 1, b 0. The circuit compares the magnitudes of two 2-bit numbers = (a 1 a 0 ) 2 and = (b 1 b 0 ) 2 and generates three outputs EQ (1 if =, 0 if ), GT (1 if greater than, 0 if not greater than ), and LT (1 if less than, 0 if not less than ). esign the circuit using a minimum number of gates. Use exclusive-nor gates if necessary. 10. Repeat Problem 9 for two 3-bit numbers = (a 2 a 1 a 0 ) 2 and = (b 2 b 1 b 0 ) 2. 115

116