DESIGN OF GATE NETWORKS



Similar documents
Karnaugh Maps & Combinational Logic Design. ECE 152A Winter 2012

BOOLEAN ALGEBRA & LOGIC GATES

CDA 3200 Digital Systems. Instructor: Dr. Janusz Zalewski Developed by: Dr. Dahai Guo Spring 2012

CSE140: Midterm 1 Solution and Rubric

Karnaugh Maps. Circuit-wise, this leads to a minimal two-level implementation

CSEE 3827: Fundamentals of Computer Systems. Standard Forms and Simplification with Karnaugh Maps

CSE140: Components and Design Techniques for Digital Systems

Simplifying Logic Circuits with Karnaugh Maps

Two-level logic using NAND gates

Karnaugh Maps (K-map) Alternate representation of a truth table

Basic Logic Gates Richard E. Haskell

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

Chapter 7 Memory and Programmable Logic

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.

Gates, Circuits, and Boolean Algebra

Lecture 5: Gate Logic Logic Optimization

(1) /30 (2) /30 (3) /40 TOTAL /100

Digital Electronics Part I Combinational and Sequential Logic. Dr. I. J. Wassell

Sistemas Digitais I LESI - 2º ano

United States Naval Academy Electrical and Computer Engineering Department. EC262 Exam 1

Combinational Logic Design

CHAPTER 3 Boolean Algebra and Digital Logic

RAM & ROM Based Digital Design. ECE 152A Winter 2012

Boolean Algebra. Boolean Algebra. Boolean Algebra. Boolean Algebra

Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots

Digital circuits make up all computers and computer systems. The operation of digital circuits is based on

Course Requirements & Evaluation Methods

Counters are sequential circuits which "count" through a specific state sequence.

Combinational circuits

Memory Systems. Static Random Access Memory (SRAM) Cell

Chapter 2: Boolean Algebra and Logic Gates. Boolean Algebra

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies

A Course Material on DIGITAL PRINCIPLES AND SYSTEM DESIGN

Figure 8-1 Four Possible Results of Adding Two Bits

ENGI 241 Experiment 5 Basic Logic Gates

A N. O N Output/Input-output connection

Lecture 8: Synchronous Digital Systems

2011, The McGraw-Hill Companies, Inc. Chapter 3

2.0 Chapter Overview. 2.1 Boolean Algebra

Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

Philadelphia University Faculty of Information Technology Department of Computer Science Semester, 2007/2008.

3.Basic Gate Combinations

Chapter 1: Digital Systems and Binary Numbers

INTEGRATED CIRCUITS. For a complete data sheet, please also download:

ELEC EXPERIMENT 1 Basic Digital Logic Circuits

NAND and NOR Implementation

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

DIGITAL ELECTRONICS. Counters. By: Electrical Engineering Department

Take-Home Exercise. z y x. Erik Jonsson School of Engineering and Computer Science. The University of Texas at Dallas

Logic Reference Guide

Chapter 2 Logic Gates and Introduction to Computer Architecture

Boolean Algebra Part 1

BINARY CODED DECIMAL: B.C.D.

FORDHAM UNIVERSITY CISC Dept. of Computer and Info. Science Spring, Lab 2. The Full-Adder

Introduction. The Quine-McCluskey Method Handout 5 January 21, CSEE E6861y Prof. Steven Nowick

Combinational Logic Design Process

Module 2. Embedded Processors and Memory. Version 2 EE IIT, Kharagpur 1

Microprocessor & Assembly Language

SECTION C [short essay] [Not to exceed 120 words, Answer any SIX questions. Each question carries FOUR marks] 6 x 4=24 marks

INTEGRATED CIRCUITS. For a complete data sheet, please also download:

Memory Basics. SRAM/DRAM Basics

ANALOG & DIGITAL ELECTRONICS

exclusive-or and Binary Adder R eouven Elbaz reouven@uwaterloo.ca Office room: DC3576

GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8

Upon completion of unit 1.1, students will be able to

Let s put together a Manual Processor

Module 3: Floyd, Digital Fundamental

Digital Electronics Detailed Outline

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

Copyright 2012 by Fen Logic Ltd. All rights reserved.

Chapter 9 Latches, Flip-Flops, and Timers

Design Example: Counters. Design Example: Counters. 3-Bit Binary Counter. 3-Bit Binary Counter. Other useful counters:

PACKAGE OUTLINE DALLAS DS2434 DS2434 GND. PR 35 PACKAGE See Mech. Drawings Section

DM74184 DM74185A BCD-to-Binary and Binary-to-BCD Converters

Counters and Decoders

Introduction to Digital System Design

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad

Chapter 10 Advanced CMOS Circuits

Design and Development of Virtual Instrument (VI) Modules for an Introductory Digital Logic Course

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012

Logic in Computer Science: Logic Gates

CH3 Boolean Algebra (cont d)

COMPUTER SCIENCE. Paper 1 (THEORY)

Static-Noise-Margin Analysis of Conventional 6T SRAM Cell at 45nm Technology

DS1621 Digital Thermometer and Thermostat

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

Contents COUNTER. Unit III- Counters

earlier in the semester: The Full adder above adds two bits and the output is at the end. So if we do this eight times, we would have an 8-bit adder.

PLL frequency synthesizer

COMBINATIONAL CIRCUITS

Fault Modeling. Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults. Transistor faults Summary

RS - SPM. Serial parallel translator module

Chapter 5 :: Memory and Logic Arrays

PROGRAMMABLE ANALOG INTEGRATED CIRCUIT FOR USE IN REMOTELY OPERATED LABORATORIES

NAME AND SURNAME. TIME: 1 hour 30 minutes 1/6

Transcription:

DESIGN OF GATE NETWORKS DESIGN OF TWO-LEVEL NETWORKS: and-or and or-and NETWORKS MINIMAL TWO-LEVEL NETWORKS KARNAUGH MAPS MINIMIZATION PROCEDURE AND TOOLS LIMITATIONS OF TWO-LEVEL NETWORKS DESIGN OF TWO-LEVEL nand-nand and nor-nor NETWORKS PROGRAMMABLE LOGIC: plas and pals.

DESIGN OF TWO-LEVEL NETWORKS 2 IMPLEMENTATION: Level (optional) not GATES Level 2 and GATES Level 3 or GATES LITERALS (uncomplemented and complemented variables) not GATES (IF NEEDED) PRODUCTS: and gates SUM: or gate MULTIOUTPUT NETWORKS: ONE or GATE USED FOR EACH OUTPUT PRODUCT OF SUMS NETWORKS - SIMILAR

MODULO-64 INCREMENTER 3 Input: 0 x 63 Output: 0 z 63 Function: z = (x + ) mod 64 00 z 000 0 z 00000 RADIX-2 REPRESENTATION if (x i = and there exists j < i such that x j = 0) z i = or (x i = 0 and x j = for all j < i) 0 otherwise z 5 = x 5 (x 4 x 3 x 2 x x 0) x 5x 4 = x 5 x 4 x 5 x 3 x 5 x 2 x 5 x x 5 x 0 x 5x 4 z 4 = x 4 x 3 x 4 x 2 x 4 x x 4 x 0 x 4 z 3 = x 2 x x 0 x 3 z 2 = x x 0 x 2 z = x 0 x z 0 = x 0

x 5 x' 5 x 4 4 x' 3 x 4 x' 4 x' 2 x' 3 x' z 4 x' 2 x' x' 0 x' 0 x' 4 x2 x x0 x 5 x' 4 x' 2 x' x' 3 z 3 x' 2 x' z 5 x2 x x0 x' 0 x' 3 x2 x x0 x' 0 x 4 x' 5 x' 0 x' x' 0 x' 2 z 2 z x' z 0 Figure 5.: not-and-or MODULO-64 INCREMENTER NETWORK.

UNCOMPLEMENTED AND COMPLEMENTED INPUTS AVAILABLE 5 TWO TYPES OF TWO-LEVEL NETWORKS: and-or NETWORK SUM OF PRODUCTS (nand-nand NETWORK) or-and NETWORK PRODUCT OF SUMS (nor-nor NETWORK) x x 2 x 2 z x 0 z x x 0 (a) (b) Figure 5.2: and-or and or-and NETWORKS. E(,, ) = x 2x x 0 E(,, ) = (x 2 )( x 0)( x )

MINIMAL TWO-LEVEL NETWORKS 6. INPUTS: UNCOMPLEMENTED AND COMPLEMENTED 2. FANIN UNLIMITED 3. SINGLE-OUTPUT NETWORKS 4. MINIMAL NETWORK: MINIMUM NUMBER OF GATES WITH MINIMUM NUMBER OF INPUTS (minimal expression: min. number of terms with min. number of literals)

NETWORKS WITH DIFFERENT COST 7 x x 0 x2 x 2 z x 0 z Network A Network B Figure 5.3: NETWORKS WITH DIFFERENT COST TO IMPLEMENT f(,, ) =one-set(3,6,7).

MINIMAL EXPRESSIONS 8 EQUIVALENT BUT DIFFERENT COST E (,, ) = x 2 x 0 x E 2 (,, ) = x 2 x 0 x 2x x BOTH MINIMAL SP AND PS MUST BE OBTAINED AND COMPARED BASIS: ab ab = a (for sum of products) (a b)(a b ) = a (for product of sums)

9 GRAPHICAL REPRESENTATION OF SWITCHING FUNCTIONS: karnaugh MAPS 2-DIMENSIONAL ARRAY OF CELLS n VARIABLES 2 n CELLS cell i ASSIGNMENT i ADJACENCY CONDITION ANY SET OF 2 r ADJACENT ROWS (COLUMNS): ASSIGNMENTS DIFFER IN r VARIABLES REPRESENTING SWITCHING FUNCTIONS REPRESENTING SWITCHING EXPRESSIONS GRAPHICAL AID IN SIMPLIFYING EXPRESSIONS

x 0 x 00 0 0 0 0 0 0 0 2 0 2 3 00 0 (a) (b) (c) 00 0 0 4 2 8 5 3 9 0 3 7 5 2 6 4 0 3 (d) 0 0 4 0 4 0 4 2 8 5 5 5 3 9 0 3 7 3 7 3 7 5 2 6 2 6 2 6 4 0 0 Figure 5.4: K-Maps

0 3 2 0 3 2 4 5 7 6 4 5 7 6 2 3 5 4 2 3 5 4 8 9 0 8 9 0 x 4 = 0 x 4 = Figure 5.5: K-map FOR FIVE VARIABLES

REPRESENTATION OF SWITCHING FUNCTIONS 2 f(,, ) = one-set(0,2,6) 0 0 0 0 0 f(,,, ) = zero-set(,3,4,6,0,,3) 0 0 0 0 0 0 0 f(,, ) = [one-set(0,4,5), dc-set(2,3)] 0 0 0

RECTANGLES OF -CELLS AND SUM OF PRODUCTS 3. MINTERM m j CORRESPONDS TO -CELL WITH LABEL j. 2. PRODUCT TERM OF n LITERALS RECTANGLE OF TWO AD- JACENT -CELLS x = x ( x 2) = x x 2x = m 3 m 9 3 9 x 3 x Figure 5.6

RECTANGLES OF -CELLS AND SUM OF PRODUCTS (cont.) 4 3. PRODUCT TERM OF n 2 LITERALS RECTANGLE OF FOUR ADJACENT -CELLS = ( x )( x 2) = x 2x x 2 x = m 9 m m 3 m 5 3 5 9 x 3 Figure 5.6 4. PRODUCT TERM OF n s LITERALS RECTANGLE OF 2 s ADJACENT -CELLS

5 2 b xn... x x k... k 2 a Product of n (a + b) variables Figure 5.7: Representation of product of n (a + b) variables. x 0 x 3 x 2x 0 Figure 5.8: Product terms and rectangles of -cells. x 3 x 0 x 2 x 3

SUM OF PRODUCTS 6 represented in a K-map by the union of rectangles E(,,, ) = x 3 x 2 x 0 0 0 0 0 0 E(a, b, c) = ab ac b c a c 0 0 0 b

RECTANGLES OF 0-CELLS AND PRODUCT OF SUMS 7 0-cell 3 CORRESPONDS TO THE MAXTERM M 3 = x 3 x 2 x 0 RECTANGLE OF 2 a 2 b 0-cells SUM TERM OF n (a + b) LITERALS

MINIMIZATION OF SUMS OF PRODUCTS 8 IMPLICANT: PRODUCT TERM FOR WHICH f= A D x 2 B C Figure 5.9: Implicant representation. IMPLICANTS: x 3x 2x, ALL PRODUCT TERMS WITH PRIME implicant: IMPLICANT NOT COVERED BY ANOTHER IMPLICANT PRIME IMPLICANTS: x 2x,

FIND ALL PIs 9 a) f(,, ) = one-set(2,4,6) 0 0 0 0 0 PIs: x 0 and x 0 b) f(,, ) = one-set(0,,5,7) 0 0 0 0 PIs: x 2x,, and x x

20 c) f(,,, ) = one-set(0,3,5,7,,2,3,5) 0 0 0 0 0 0 0 0 PIs:,, x, and x 3x 2x x 0

MINIMAL SUM OF PRODUCTS CONSISTS OF PRIME IMPLICANTS 2 q 0 0 p 0 0 0 0 0 p 0 p 2 Figure 5.0: MINIMAL SUM OF PRODUCTS AND PRIME IMPLICANTS.

Example 5.9 22 E(,, ) = x x 0 x 0 x 0 x x 0 0 0 0 x 2 0 0 x x 0 2 x 0 x x 0 not PIs: x x 0 and x 0 PI: x 0, x 0 REDUCED SP: E(,, ) = x 0 x 0

ESSENTIAL PRIME IMPLICANTS (EPI) 23 p e (a) = and p(a) = 0 FOR ANY OTHER PI p EPIs: x x 0 and NON-ESSENTIAL:, x 0. ALL EPIs ARE INCLUDED IN A MINIMAL SP

PROCEDURE FOR FINDING MIN SP 24. DETERMINE ALL PIs 2. OBTAIN THE EPIs 3. IF NOT ALL -CELLS COVERED, CHOOSE A COVER FROM THE RE- MAINING PIs

EXAMPLE 5.0 25 FIND A MINIMAL SP: a) E(,,, ) = x 3x 2 x 3 PIs: x 3x 2, x 3, and ALL EPIs UNIQUE MIN SP: x 3x 2 x 3

26 b) E(,, ) = m(0, 3, 4, 6, 7) PIs: x x 0,, x 0, and EPIs: x x 0 and EXTRA COVER: x 0 or TWO MIN SPs: x x 0 x 0 and x x 0

27 c) E(,, ) = m(0,, 2, 5, 6, 7) PIs: x 2x, x 2x 0,,, x, and x 0 No EPIs TWO MIN SPs x 2x x 0 and x 2x 0 x

MINIMAL SPs FOR INCOMPLETELY SPECIFIED FUNCTIONS 28 0 0-0 - 0-0 - - A minimal SP E(,,, ) = x 0 x 3 x 3x 2x

MINIMIZATION OF PRODUCTS OF SUMS 29 IMPLICATE: SUM TERM FOR WHICH f = 0. PRIME IMPLICATE: IMPLICATE NOT COVERED BY ANOTHER IM- PLICATE ESSENTIAL PRIME IMPLICATE: AT LEAST ONE CELL NOT IN- CLUDED IN OTHER IMPLICATE f(,,, ) = zero-set(7,3,5) 0 0 0 THE PRIME IMPLICATES: (x 3 x 2 x 0) and (x 2 x x 0) BOTH ESSENTIAL

PROCEDURE FOR FINDING MIN PS 30. DETERMINE ALL PRIME IMPLICATES 2. DETERMINE THE ESSENTIAL PRIME IMPLICATES 3. FROM SET OF NONESSENTIAL PRIME IMPLICATES, SELECT COVER OF REMAINING 0-CELLS 0 0 0 0 0 - THE PRIME IMPLICATES: (x 0 x 2) and ( x ) BOTH ESSENTIAL, THE MINIMAL PS IS (x 0 x 2)( x )

MINIMAL TWO-LEVEL GATE NETWORK DESIGN: EXAMPLE 5.4 3 Input: x {0,, 2,..., 9}, coded in BCD as x = (,,, ), x i {0, } Output: z {0, } Function: z = if x {0, 2, 3, 5, 8} 0 otherwise THE VALUES {0,,2,3,4,5} ARE DON T CARES 0 0 0 0 x 3 0 MIN SP: z = x 2 x 2x 0 x MIN PS: z = (x 2 x )(x 2 )( x 0)

32 x x 2 x 2 z x 2 x 0 Figure 5.: MINIMAL and-or NETWORK

EXAMPLE 5.5 33 THE K-MAP: Input: x {0,, 2,..., 5} represented in binary code by x = (,,, ) Output: z {0, } Function: z = if x {0,, 3, 5, 7,, 2, 3, 4} 0 otherwise 0 0 0 0 0 0 0 min SP: z = x 3 x 3x 2x x x 0 x 2 min PS: z = (x 3 )( x 2 )( x )(x 3 x 2 x x 0) COST(PS) < COST(SP)

34 x 3 x 2 x z x 3 x 2 x x 0 Figure 5.2: MINIMAL or-and NETWORK

DESIGN OF MULTIPLE-OUTPUT TWO-LEVEL GATE NETWORKS 35 SEPARATE NETWORK FOR EACH OUTPUT: NO SHARING EXAMPLE 5.6 Inputs: (,, ), x i {0, } Output: z {0,, 2, 3} Function: z = 2 i=0 x i. THE SWITCHING FUNCTIONS IN TABULAR FORM ARE z z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

EXAMPLE 5.6 (cont.) 36 2. THE CORRESPONDING K-MAPS ARE z 0 0 0 0 z 0 0 0 0 0 3. MINIMAL SPs: z = z 0 = x 2x x 2 x 0 x x 0 4. MINIMAL PSs: z = ( )( )( ) z 0 = ( )( x x 0) (x 2 x 0)(x 2 x ) 5. SP AND PS EXPRESSIONS HAVE THE SAME COST

37 x x 2 x 2 z x x 0 z 0 x 0 Figure 5.3: MINIMAL TWO-OUTPUT and-or NETWORK

TWO-LEVEL NAND-NAND AND NOR-NOR NETWORKS 38 p, p 2,... ARE PRODUCT TERMS E = p p 2 p 3... p n E = (p p 2 p 3... p n) or E = NAND(NAND, NAND 2, NAND 3,..., NAND n )

39 x 7 x 7 x 6 x 6 x 5 x 4 z x 5 x 4 z (a) (b) Figure 5.5: TRANSFORMATION OF and-or NETWORK INTO nand NETWORK

EXAMPLE: NOR NETWORK 40 z = x 5(x 4 x 3)( ) x 5 x 5 x 4 z x 4 z x 3 x 3 (a) (b) Figure 5.6: EQUIVALENT or-and AND nor NETWORKS

LIMITATIONS OF TWO-LEVEL NETWORKS 4. THE REQUIREMENT OF UNCOMPLEMENTED AND COMPLEMENTED INPUTS IF NOT SATISFIED, AN ADDITIONAL LEVEL OF not GATES NEEDED 2. A TWO-LEVEL IMPLEMENTATION OF A FUNCTION MIGHT REQUIRE A LARGE NUMBER OF GATES AND IRREGULAR CONNECTIONS 3. EXISTING TECHNOLOGIES HAVE LIMITATIONS IN THE FAN-IN OF THE GATES 4. THE PROCEDURE ESSENTIALLY LIMITED TO THE SINGLE-OUTPUT CASE 5. THE COST CRITERION OF MINIMIZING THE NUMBER OF GATES IS NOT ADEQUATE FOR MANY msi/lsi/vlsi DESIGNS

PROGRAMMABLE modules: PLAs and PALs 42 STANDARD (FIXED) STRUCTURE CUSTOMIZED (PROGRAMMED) FOR A PARTICULAR FUNCTION DURING THE LAST STAGE OF FABRICATION WHEN INCORPORATED INTO A SYSTEM FLEXIBLE USE MORE EXPENSIVE AND SLOWER THAN FIXED-FUNCTION MODULES OTHER TYPES DISCUSSED IN Chapter 2

x n- AND Array Inputs Programmable array of AND gates Product terms -- programmable connection -- connection made (a) 2 3 r (b) k E z k- En Programmable array of OR gates Outputs OR Array 2 z z 0 E (enable) three-state buffers 43 Figure 5.7: PROGRAMMABLE LOGIC ARRAY (pla): a) BLOCK DIAGRAM; b) LOGIC DIAGRAM.

mos pla (or-and VERSION) 44 AND Array (NOR Array) Vdd Vdd a a b b c c Gnd Gnd Gnd Gnd Gnd pull-up devices (a + c) Gnd (b + c ) (a + b) Gnd pull-up devices OR Array (NOR Array) E c w = ((a + c) + (b + c ) ) = (a + b)(b + c ) z = ((a + b) + c ) = (a + b) c w z Figure 5.8: EXAMPLE OF pla IMPLEMENTATION AT THE CIRCUIT LEVEL: FRAGMENT OF A mos pla.

IMPLEMENTATION OF SWITCHING FUNCTIONS USING plas 45 A BCD-to-Gray CONVERTER Inputs: d = (d 3, d 2, d, d 0 ), d j {0, } Outputs: g = (g 3, g 2, g, g 0 ), g j {0, } Function: i d 3 d 2 d d 0 g 3 g 2 g g 0 0 0000 0000 000 000 2 000 00 3 00 000 4 000 00 5 00 0 6 00 00 7 0 000 8 000 00 9 00 0 EXPRESSIONS: g 3 = d 3 g 2 = d 3 d 2 g = d 2d d 2 d g 0 = d d 0 d d 0

46 d 3 d 2 d d 0 OR Array 2 3 4 5 6 AND Array -- programmable connection -- connection made g 3 g 2 g g 0 Note: a PLA chip would have more rows and columns then shown here Figure 5.9: PLA IMPLEMENTATION OF BCD-Gray CODE CONVERTER.

PAL : A PROGRAMMABLE MODULE WITH FIXED or ARRAY 47 FASTER, MORE INPUTS AND PRODUCT TERMS COMPARED TO PLAs x n- 2 E (enable) z 0 3 2 z k z k- r three-state buffers AND Array -- programmable connection -- connection made Figure 5.20: LOGIC DIAGRAM OF A PAL

I I2 I3 I4 I5 I6 I7 I8 I9 0 8 6 24 32 40 48 56 0 4 8 2 6 20 24 28 O IO2 IO3 IO4 IO5 IO6 IO7 O8 I0 48 Figure 5.2: 6-INPUT, 8-OUTPUT pal(p6h8)