332:437 Lecture 17 FSM Hardware Modification for Reliability

Slides:



Advertisements
Similar presentations
Synchronous Counters with SSI Gates
Advertisements

Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
K-Maps, Timing Sequential Circuits: Latches & Flip-Flops Lecture 4 Digital Design and Computer Architecture Harris & Harris Morgan Kaufmann / Elsevier,
Circuits require memory to store intermediate data
CS 151 Digital Systems Design Lecture 25 State Reduction and Assignment.
Give qualifications of instructors: DAP
ENGIN112 L27: Counters November 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 27 Counters.
ECE 301 – Digital Electronics Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #17)
ECE 331 – Digital Systems Design Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #19)
ENGIN112 L25: State Reduction and Assignment October 31, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 25 State Reduction and Assignment.
CS 140L Lecture 4 Professor CK Cheng 10/22/02. 1)F-F 2)Shift register 3)Counter (Asynchronous) 4)Counter (Synchronous)
Asynchronous Counters
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
ENG241 Digital Design Week #6 Sequential Circuits (Part A)
Introduction to Sequential Logic Design Finite State-Machine Design.
Computer Organization & Programming Chapter 5 Synchronous Components.
1 COMP541 Sequential Circuits Montek Singh Feb 1, 2012.
Chapter 6 – Digital Electronics – Part 1 1.D (Data) Flip Flops 2.RS (Set-Reset) Flip Flops 3.T Flip Flops 4.JK Flip Flops 5.JKMS Flip Flops Information.
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
1 Registers A register is a group of n flip-flops each of them capable of storing one bit of information There are two types of registers: parallel and.
Digital Design: Sequential Logic Principles
Computer Science 210 Computer Organization
Partitioning of a digital system.
Lecture 4. Sequential Logic #1
Digital Design: Sequential Logic Blocks
LATCHED, FLIP-FLOPS,AND TIMERS
Introduction to Advanced Digital Design (14 Marks)
Asynchronous Counters
EKT 221 : Digital 2 COUNTERS.
Sequential Logic Counters and Registers
Prof. Hsien-Hsin Sean Lee
FIGURE 5.1 Block diagram of sequential circuit
Digital Design Lecture 9
Dr. Clincy Professor of CS
Asynchronous Counters
Asynchronous Inputs of a Flip-Flop
Sequential Circuit - Counter -
ECE 301 – Digital Electronics
Computer Science 210 Computer Organization
ECE Digital logic Lecture 16: Synchronous Sequential Logic
Chapter 11 Sequential Circuits.
Digital Principles and Design Algorithmic State Machines
332:437 Lecture 17 FSM Hardware Modification for Reliability
332:437 Lecture 12 Finite State Machine Design
Registers and Counters Register : A Group of Flip-Flops. N-Bit Register has N flip-flops. Each flip-flop stores 1-Bit Information. So N-Bit Register Stores.
CPE/EE 422/522 Advanced Logic Design L02
COMP541 Sequential Circuits
Computer Science 210 Computer Organization
Elec 2607 Digital Switching Circuits
332:437 Lecture 15 System Controller Design
Counters and Registers
332:437 Lecture 15 System Controller Design
Asynchronous Sequential Logic
Dr. Clincy Professor of CS
CSE 370 – Winter Sequential Logic - 1
332:437 Lecture 15 System Controller Design
Computer Architecture and Organization: L02: Logic design Review
CSE 370 – Winter Sequential Logic-2 - 1
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
CHAPTER 4 COUNTER.
332:437 Lecture 16 FSM Synchronizers
8253 – PROGRAMMABLE INTERVAL TIMER (PIT). What is a Timer? Timer is a specialized type of device that is used to measure timing intervals. Timers can.
332:437 Lecture 16 FSM Synchronizers
332:437 Lecture 17 FSM Hardware Modification for Reliability
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
332:437 Lecture 16 FSM Synchronizers
Lecture 14: State Tables, Diagrams, Latches, and Flip Flop
SEQUENTIAL CIRCUITS __________________________________________________
332:437 Lecture 14 Turing Machines and State Machine Sequences
Lecture 3: Timing & Sequential Circuits
Presentation transcript:

332:437 Lecture 17 FSM Hardware Modification for Reliability Glitch elimination with holding registers Asynchronous inputs Glitch suppression Modified design procedures Modified state assignment Summary Material from An Engineering Approach to Digital Design, by William I. Fletcher, Englewood Cliffs, NJ: Prentice-Hall 2/24/2019 Bushnell: Digital Systems Design Lecture 17

System Controller Architecture Refinement Add input and output Holding Registers to eliminate glitches Use separate SYNCH STROBE clock to synchronize asynchronous inputs – usually at higher frequency than system clock (2X or 4X) Asynchronous input holding register Use edge-triggered D flip-flops or SR latches (need asynchronous set/reset inputs) 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Example of Unwanted Glitches 2/24/2019 Bushnell: Digital Systems Design Lecture 17

State Machine Without Holding Registers 2/24/2019 Bushnell: Digital Systems Design Lecture 17

State Machine with Input & Output Holding Registers 2/24/2019 Bushnell: Digital Systems Design Lecture 17

State Machine with Holding & Async. Set/Reset Registers 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Need Glitch-Free State Change & Output Operation Problem Finite State Machine transition 111->000 Six possible transitions between 111 & 000 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Finite State Machine Transitions Figure shows many possible transition paths in next state or output decoder outputs (which will be the next state or machine outputs) Unavoidable problem with any decoder addressed with a sequence of non-unit Hamming distance inputs. 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Caused by Heisenberg Uncertainty Principle Bank of FF’s triggered by same clock will not change state simultaneously 2nd Problem -- Nearly impossible to assign states to Finite State Machine so that state transitions are one Hamming distance apart (i.e., there is only a single bit change) 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Glitch-Suppression Methods Fix output decoder Disable O/P decoder prior to state change Maintain disabled condition for some Dt after state change, to allow state change & transient to settle out Main Problem: Outputs that must remain asserted through several clock cycles are not allowed 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Glitch–Suppression Methods (continued) Use D-type Output Holding Register Eliminates glitches in outputs – allows holding of outputs during multiple state changes 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Glitch-Free Timing with Output Holding Register 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Output Holding Register Uses special OUTSTROBE pulse to clock Holding Register some phase delay after clock goes high 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Modified State Machine Design Procedure Decide whether to minimize output decoder, # flip-flops, or next state decoder If not minimizing #FF’s use Moebius counter or One-Hot Design Design tight Flow Diagrams – lead to tight Mnemonic-Documented State Diagrams 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Modified State Machine Design Procedure (continued) Use “minimal locus” & “reduced “input dependency” state assignment procedures 2/24/2019 Bushnell: Digital Systems Design Lecture 17

State Assignment & Asynchronous Inputs For reliable state changes follow this rule: Next states from a single state whose branching is controlled by an asynchronous variable must be given unit distance state assignments. Obviously applies to states that loop back on themselves Mark states controlled by asynchronous variables with * 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Bushnell: Digital Systems Design Lecture 17 Two Corollaries Branching conditions for a state must not be controlled by >1 asynchronous variable Only 1 state variable should be affected by any state change 2/24/2019 Bushnell: Digital Systems Design Lecture 17

Bushnell: Digital Systems Design Lecture 17 Summary Glitch elimination with holding registers Asynchronous inputs Glitch suppression Modified design procedures Modified state assignment 2/24/2019 Bushnell: Digital Systems Design Lecture 17