Lecture 9 Topics Glitches and Hazards Types of Functions and Delays

Slides:



Advertisements
Similar presentations
CS370 – Spring 2003 Hazards/Glitches. Time Response in Combinational Networks Gate Delays and Timing Waveforms Hazards/Glitches and How To Avoid Them.
Advertisements

Figure 4.1. The function f (x1, x2, x3) =  m(0, 2, 4, 5, 6).
Decoders/DeMUXs CS370 – Spring Decoder: single data input, n control inputs, 2 outputs control inputs (called select S) represent Binary index of.
ECE 3110: Introduction to Digital Systems
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 9 Programmable Configurations Read Only Memory (ROM) – –a fixed array of AND gates.
CSCE 211: Digital Logic Design Chin-Tser Huang University of South Carolina.

ECE 301 – Digital Electronics Multiplexers and Demultiplexers (Lecture #12)
Combinational Logic Design
Combinational Design, Part 3: Functional Blocks
Glitches/Hazards and ALUs
CEC 220 Digital Circuit Design Timing Diagrams, MUXs, and Buffers Friday, February 14 CEC 220 Digital Circuit Design Slide 1 of 18.
Magnitude Comparator A magnitude comparator is a combinational circuit that compares two numbers, A and B, and then determines their relative magnitudes.
Lecture 3. Combinational Logic 2 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education & Research.
CEC 220 Digital Circuit Design NAND/NOR Multi-Level Circuits
Combinational Logic: Other Gate Types
ECE 171 Digital Circuits Chapter 9 Hazards Herbert G. Mayer, PSU Status 2/21/2016 Copied with Permission from prof. Mark PSU ECE.
1 CS 352 Introduction to Logic Design Lecture 4 Ahmed Ezzat Multi-level Gate Circuits and Combinational Circuit Design Ch-7 + Ch-8.
Lecture 3. Combinational Logic #2 Prof. Taeweon Suh Computer Science & Engineering Korea University COSE221, COMP211 Logic Design.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
Chapter 5 Combinational Logic 组合逻辑
Overview Part 2 – Combinational Logic Functions and functional blocks
Copied with Permission from prof. Mark PSU ECE
Chapter 2: Boolean Algebra and Logic Functions
CS2100 Computer Organisation
Multiplexers (Data Selectors)
ECE 3110: Introduction to Digital Systems
Lecture 6 Topics Combinational Logic Circuits
2-6 Exclusive-OR Operator and Gates
Overview Part 1 – Gate Circuits and Boolean Equations
K-map: Product-of-Sums Minimization
PROPAGATION DELAY.
Lecture 8 Combinational Network Design and Issues
Combinational Functions and Circuits
Lecture 9 Logistics Last lecture Today HW3 due Wednesday
Lecture 4: Combinational Functions and Circuits
COMP211 Computer Logic Design Lecture 3. Combinational Logic 2
Reference: Chapter 3 Moris Mano 4th Edition
ECE 331 – Digital System Design
ECE 2110: Introduction to Digital Systems Chapter 6 Combinational Logic Design Practices Decoders.
ECE 434 Advanced Digital System L03
Hazard.
Magnitude Comparator A magnitude comparator is a combinational circuit that compares two numbers, A and B, and then determines their relative magnitudes.
CSCE 211: Digital Logic Design
Overview Last Lecture Conversion of two-level logic to NAND or NOR forms Multilevel logic AOI and OAI gates Today Timing and hazards Multiplexers and demultiplexers.
Digital Logic & Design Dr. Waseem Ikram Lecture 13.
CSCE 211: Digital Logic Design
Lecture 13 Logistics Last lecture Today HW4 up, due on Wednesday PLDs
ECE 331 – Digital System Design
Combinatorial Logic Circuit
CH7 Multilevel Gate Network
CSE 370 – Winter Combinational Implementation - 1
Programmable Configurations
EECS150 - Digital Design Lecture 7 - Boolean Algebra II
Introduction to Digital Systems
CSCE 211: Digital Logic Design
CSCE 211: Digital Logic Design
Overview Part 3 – Additional Gates and Circuits 2-8 Other Gate Types
Logic Circuits I Lecture 3.
Chapter 3 Overview • Multi-Level Logic
Overview Last lecture Timing; Hazards/glitches
Digital System Design Combinational Logic
Hazard-free Karnaugh Map Minimisation
ECE 352 Digital System Fundamentals
ECE 331 – Digital System Design
ECE 352 Digital System Fundamentals
Circuit Simplification and
Example of a Combinatorial Circuit: A Multiplexer (MUX)
Presentation transcript:

Lecture 9 Topics Glitches and Hazards Types of Functions and Delays Hazard Types (Function, Logic), (Static, Dynamic) Recognizing Static Logic Hazards Correcting Static Logic Hazards Types of Functions and Delays Trivial, Simple, 1- and 2- and Multilevel Gate Circuits Decoders and Multiplexers

Glitches and Hazards Note: even gates on the same IC will not have exactly identical propagation delays and then of course there are different “wire”/trace path lengths.

Glitches and Hazards Glitch: Momentary error condition on the output of a circuit due to unequal signal delay paths. Manifestation of a hazard. Function Hazard: May cause glitch when two or more inputs change at once. Cannot be removed by adding logic. Logic Hazard: May cause glitch when one input changes. Can be removed by adding logic. Dynamic Hazard: Occurs when output of the circuit is changing. Static Hazard: Occurs when output of the circuit is constant. Function and Logic Hazards can be Static or Dynamic. Note: even gates on the same IC will not have exactly identical propagation delays and then of course there are different “wire”/trace path lengths.

Static Logic Hazards Single input changed. Resulting output should have remained the same: 1 in case(a), 0 in case(b). However, a glitch appeared before the output settled back to its correct level. In two-level SOP circuits may see static 1 hazards In two-level POS circuits may see static 0 hazards

NAND/NAND Implementation Static Logic Hazards Consider inputs ABC 111 110 1 1 NAND/NAND Implementation

NAND/NAND Implementation Static Logic Hazards Consider inputs ABC 111 110 1 NAND/NAND Implementation Let’s look in detail at how a static logic hazard might arise, how it would manifest itself as a glitch and what you can do about it. Mention simulation Also mention that the glitch may not make a difference – synchronous design which you’ll learn later (for now, just know that we may only “look” at the output after a certain “settling” time.

Detecting and Eliminating Static Logic Hazards Chain Link Rule

Detecting and Eliminating Static Logic Hazards

Another Example SOP Form for 0s Need Cover Term Implement a hazard-free circuit for the 0s of the previous function using NOR gates SOP Form for 0s Need Cover Term

Static Function Hazards Result of two or more input signals changing Cannot be removed by adding logic

Dynamic Hazards Generally occur in multi-level circuits when there are multiples paths with different delays from an input to an output. Do not occur in 2-level SOP (or POS) implementations.

Implementations for Complex Functions and Their Delays

Decoders

Decoders n-to-2n decoder Converts binary code on input lines to one of 2n output lines I1 I0 Y0 Y1 Y2 When a decoder has an EN (enable) input it’s often called a demultiplexer (dmux). EN is often active low. Y3 I1 I0 Y0 Y1 Y2 Y3 EN I1 I0 EN Y0 Y1 Y2 Y3

Decoders Sometimes outputs are active low too! B1B0 F0F1F2F3 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0

Decoders as Universal Function Implementers Outputs are minterms I1 I0 Any function can be expressed in canonical SOP form Y0 (m0) Y1 (m1) Y2 (m2) Y3 (m3)

Example: Implement XNOR with DMUX Decoders When using decoders with active low outputs use “bubble matching” to use correct gate Example: Implement XNOR with DMUX

Multiplexers

Multiplexers (Data Selectors) Mux Directs one of 2n inputs to a single output S0 F 0 D0 1 D1 S0D1D0 F 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 1

Multiplexers Sometimes include Enable input Effective as universal function generator EN S0 F 0 0 D0 0 1 D1 1 X 0 Just as decoders were effective as minterm generators (simple functions) and could be used in combination with an OR (NAND) gate to generate functions, a Mux can be used to generate complex functoin

Type 0 Universal Function Implementation with a Mux Uses the function inputs (X,Y,Z) to “select” the value of the function by selecting the minterm corresponding to the inputs. If the minterm mi is in the function the corresponding Di input is tied to 1 (0 otherwise)

Type 1 Universal Function Implementation with a Mux

A word about “optimization” What are we optimizing? Variables (inputs – connectors) Terms (gates, interconnect) Unique fan-in (IC packages – same number of gates) Number of logic levels (speed) NAND/NOR Implementations (speed, IC packages,…) Complexity (Design time – time to market) Design Time & Flexibility/Cost (FPGA vs. ASIC)

Prof. Mark G. Faust John Wakerly Sources Prof. Mark G. Faust John Wakerly