12004 MAPLDReset Circuit Topologies Reference: Analysis of POR Circuit Topologies

Slides:



Advertisements
Similar presentations
VHDL 5 FINITE STATE MACHINES (FSM) Some pictures are obtained from FPGA Express VHDL Reference Manual, it is accessible from the machines in the lab at.
Advertisements

Lab 08: SR Flip Flop Fundamentals:
D-Type Flip Flops Benchmark Companies Inc PO Box
Module 5 – Sequential Logic Design with VHDL
Clocked Synchronous State-machine Analysis
1 Lecture 16 Timing  Terminology  Timing issues  Asynchronous inputs.
Finite State Machines (FSMs)
Synchronous Sequential Logic
Lab 09 :D Flip Flop, Shift Registers and Switch Bounce: Slide 2 Slide 3 The D Flip Flop. 4-Bit Shift Register. Slide 4 Shift Register De-bounce System:
Changes in input values are reflected immediately (subject to the speed of light and electrical delays) on the outputs Each gate has an associated “electrical.
Sequential Logic ENEL 111. Sequential Logic Circuits So far we have only considered circuits where the output is purely a function of the inputs With.
Digital Design - Sequential Logic Design Chapter 3 - Sequential Logic Design.
Sequential circuits Part 1: flip flops All illustrations  , Jones & Bartlett Publishers LLC, (
1 Fundamentals of Computer Science Sequential Circuits.
Storey: Electrical & Electronic Systems © Pearson Education Limited 2004 OHT 10.1 Sequential Logic  Introduction  Bistables  Memory Registers  Shift.
Classification of Digital Circuits  Combinational. Output depends only on current input values.  Sequential. Output depends on current input values and.
Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
Introduction to Sequential Logic Design Bistable elements Latches.
Module 12.  In Module 9, 10, 11, you have been introduced to examples of combinational logic circuits whereby the outputs are entirely dependent on the.
Sequential Logic Flip Flops Lecture 4.
Digital Logic Design Lecture 22. Announcements Homework 7 due today Homework 8 on course webpage, due 11/20. Recitation quiz on Monday on material from.
CS 151 Digital Systems Design Lecture 25 State Reduction and Assignment.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 6 –Selected Design Topics Part 3 – Asynchronous.
Flip-Flops and Related Devices
Sequential Circuit  It is a type of logic circuit whose output depends not only on the present value of its input signals but on the past history of its.
Asynchronous Counter © 2014 Project Lead The Way, Inc.Digital Electronics.
Flip Flops. Clock Signal Sequential logic circuits have memory Output is a function of input and present state Sequential circuits are synchronized by.
Asynchronous Counters with SSI Gates
Objectives: Given input logice levels, state the output of an RS NAND and RS NOR. Given a clock signal, determine the PGT and NGT. Define “Edge Triggered”
ECA1212 Introduction to Electrical & Electronics Engineering Chapter 9: Digital Electronics – Sequential Logic by Muhazam Mustapha, November 2011.
Topic: Sequential Circuit Course: Logic Design Slide no. 1 Chapter #6: Sequential Logic Design.
Computer Organization & Programming Chapter 5 Synchronous Components.
12004 MAPLDReset Circuit Topologies Reference: Analysis of POR Circuit Topologies
June 9, s Massachusetts Institute of Technology 6.11s: Design of Motors, Generators and Drive Systems Switching Patterns and Simple Implementation.
Clock in Digital Systems. Combinational logic circuit A combinational logic circuit is one whose outputs depend only on its current inputs
© BYU 11b MSFF Page 1 ECEn 224 MSFF Master/Slave Flip Flops.
COUNTERS Why do we need counters?
Synchronous Sequential Logic A digital system has combinational logic as well as sequential logic. The latter includes storage elements. feedback path.
A sequential logic circuit (a.k.a. state machine) consists of both combinational logic circuit(s) and memory devices (flip flops). The combinational circuits.
D Flip Flop. Also called: Delay FF Data FF D-type Latches ‘Delayed 1 Clock Pulse’
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
Lab 12 :JK Flip Flop Fundamentals: Slide 2 Slide 3 JK Flip-Flop. JK Flip-Flop and waveform diagrams.
Counters and registers Eng.Maha Alqubali. Registers Registers are groups of flip-flops, where each flip- flop is capable of storing one bit of information.
Sequential Logic Circuit Design Eng.Maha Alqubali.
TOPIC : Introduction to Sequential Circuits UNIT 1: Modeling and Simulation Module 4 : Modeling Sequential Circuits.
Sequential logic circuits First Class 1Dr. AMMAR ABDUL-HAMED KHADER.
Sequential Logic Design
Digital Design - Sequential Logic Design
LATCHES AND FLIP-FLOPS
FLIP FLOPS Binary unit capable of storing one bit – 0 or 1
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN
Flip Flops.
Lab 08: SR Flip Flop Fundamentals:
Chapter #6: Sequential Logic Design
Introduction to Advanced Digital Design (14 Marks)
Asynchronous Counters with SSI Gates
Clock in Digital Systems
Flip Flops.
Sequential Logic Jess 2006.
Sequential Logic and Flip Flops
D Flip-Flop.
Sequential logic circuits
Sequential Logic and Flip Flops
Boolean Algebra and Digital Logic
Elec 2607 Digital Switching Circuits
Asynchronous Counters with SSI Gates
CSE 370 – Winter Sequential Logic - 1
FLIP-FLOPS.
Presentation transcript:

12004 MAPLDReset Circuit Topologies Reference: Analysis of POR Circuit Topologies

22004 MAPLDReset Circuit Topologies Introduction The seemingly simple issue of FPGA and ASIC power-on reset circuits is nevertheless often a frequent cause of problems. The discussion in this module will cover both the key issues and a variety of circuits, analyzing their strong and weak points. The discussion will in most cases be general logic design but will deal with some particular issues with Field Programmable Gate Arrays (FPGAs).

32004 MAPLDReset Circuit Topologies System Issues None of the circuits discussed in this module are intended to deal with issues of logic devices not starting (e.g., following their truth table) instantly after the application of power. These system-level issues, based on system-level requirements, must be analyzed and, if necessary, dealt with at the system level and not at the logic level internal to the FPGA or ASIC.

42004 MAPLDReset Circuit Topologies Analysis Assumptions 1.The external POR circuitry is properly designed. 2.The clock is generated by a crystal clock oscillator, which takes a certain amount of time to start and then become stable. Additionally, the oscillator may not start clean. 3.The clock is not gated off. If that is not true, such as when areas of the circuit where the clock is gated off for power savings, then additional issues arise. 4.The POR signal is asynchronous to CLK. 5.The period of CLK is large compared with the metastable state resolution time of the flip-flop being used for synchronization. 6.The POR assertion time exceeds the clock oscillator and FPGA start times. 7.The output of the internal POR circuit drives the asynchronous set/reset of flip- flops. Since modern FPGAs all have asynchronous flip-flop inputs, this is often used to save logic resources, delay, and power. This is an important consideration since these inputs, unlike D's and ENABLE's, are sensitive to glitches. It is further assumed that timing specifications are met for set/reset distribution including the "removal" time. 8.Noise pulses on the input POR signal is a credible situation.

52004 MAPLDReset Circuit Topologies Fully Asynchronous Application Unintended operation or lockup of finite state machines or systems may result if the flip-flops come out of reset during different clock periods. There is a potential for one or more uncontrolled metastable states. Therefore, only reset circuits that [attempt to] remove power-on reset synchronously (PORS) should be considered in hi-rel applications.

62004 MAPLDReset Circuit Topologies Fully Asynchronous Application TYPE STATE_TYPE IS (s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, ………………………………………….. s60, s61, s62, s63, s64, s65, s66, s67); ………………………………………….. IF resetn = '0' THEN state <= s0; ………………………………………….. CASE state IS WHEN s0=> IF StartC = '1' THEN state <= s1; END IF; WHEN s1=>state <= s2; WHEN s2=>state state <= s4; WHEN s4=>state <= s5 ……………………………………………. A real life example of lack of consideration for POR issues: –Numerous state machine used in design, some rather complex –External POR signal applied to all flip-flops with no synchronization – Local routing resources used for delivering POR throughout the circuit

72004 MAPLDReset Circuit Topologies POR Circuit Selection Significant issues related to the analysis and selection of a power- on reset circuit for a particular application include: –Dependence on clock signal being operational –Noise immunity –Critical timing path impact

82004 MAPLDReset Circuit Topologies Synchronously Applied, Synchronously Removed Circuits All circuits of this type need Clock to be operational

92004 MAPLDReset Circuit Topologies Example 1A Example1AProc: process (Clk) begin if RisingEdge(Clk) then PORA <= POR; PORS <= PORA; end if; end process Example1AProc;

MAPLDReset Circuit Topologies Example 1A Fully synchronous Needs Clock to be operational (+ two cycles) –Compare with start/load time for FPGA Minimized impact on critical timing path Rejects noise that is not coincident with clock edge –External analog filters can help; device input transition times must be met, simple RC circuits may violate timing constraints –Internal digital FSM can act as a filter, care must be taken for startup conditions, latency, timing, metastable states, etc. –No general solution since noise can be arbitrarily large in time

MAPLDReset Circuit Topologies Example 1B Example1BProc: process (Clk) begin if RisingEdge(Clk) then PORA <= POR; PORB <= PORA; end if; end process Example1BProc; PORS <= PORA or PORB; A flawed attempt to improve Circuit in Example 1 for noise immunity –A static hazard on the output of OR gate: a POR pulse shorter than one Clock cycle may result in a glitch on PORS

MAPLDReset Circuit Topologies Example 1C Example1CProc: process (Clk) begin if RisingEdge(Clk) then PORA <= POR; PORB <= PORA; PORC <= PORB; end if; end process Example1CProc; PORS <= PORA or PORC; Fixes static hazard problem of Example 1B for narrow noise spikes. Only one input to the OR gate changes at any time –This technique can be extended to reject POR pulses of arbitrary width

MAPLDReset Circuit Topologies Asynchronously Applied, Synchronously Removed Circuits Remember, many programmable logic devices will not allow inputs in or outputs out until the device starts.

MAPLDReset Circuit Topologies Example 2 Example2Proc: process (Clk) begin if RisingEdge(Clk) then PORA <= POR; PORB <= PORA; end if; end process Example2Proc; PORS <= POR and PORB;

MAPLDReset Circuit Topologies Example 2 POR wrapped around the synchronizing flip-flops to asynchronously assert PORS –Assertion of PORS is not affected by oscillator start time or even failure Removal is clean; properly synchronized to FFA and FFB FPGA start time may make the asynchronous application of POR appear to take action “instantly”. –Schematic or HDL description of a circuit may not be valid during the turn- on transient. Noise immunity is low –Noise or runt pulses will get onto the reset network, resulting in incomplete resets and metastable states. The logic gate slows the signal down relative to Example 1

MAPLDReset Circuit Topologies Example 3 Example3ProcA: process (Clk, POR) begin if POR = '0' then PORA <= '0'; elsif RisingEdge(Clk) then PORA <= POR; end if; end process Example3ProcA; Example3ProcB: process (Clk) begin if RisingEdge(Clk) then PORS <= PORA; end if; end process Example3ProcB;

MAPLDReset Circuit Topologies Example 3 Fixes some of the problems of Figure 2. –Noise immunity improved –No gate in the path of PORS helps with timing No combinational path for reset; needs an operational clock to propagate. Most transients are “caught” by FFA and then cleaned up. –Worst case: a noise glitch on POR just before an active edge of Clk

MAPLDReset Circuit Topologies Example 4A Example4AProc: process (Clk, POR) begin if POR = '0' then PORA <= '0'; PORS <= '0'; elsif RisingEdge(Clk) then PORA <= POR; PORS <= PORA; end if; end process Example4AProc;

MAPLDReset Circuit Topologies Example 4A POR can be distributed prior to the clock starting. Note that the FPGA must be fully operational too, as discussed above. FFB will take care of metastability on the PORA signal. Noise glitches are reasonably well handled. –FFA and FFB should be hand placed to minimize POR skew. –Not “bulletproof” against Runt pulses on POR. Is FFB reliable with POR removed asynchronously? Note that some hi-rel flip-flops are built with TMR structures. Other flip-flops may internally “glitch” or have a hazard and not be stable.

MAPLDReset Circuit Topologies Example 4B Example4BProc: process (Clk, POR) begin if POR = '0' then PORA <= '0'; PORB <= '0'; PORS <= '0'; elsif RisingEdge(Clk) then PORA <= POR; PORB <= PORA; PORS <= PORB; end if; end process Example4BProc; Extension of the circuit shown in 4A. Longer reset after detection of a transient.

MAPLDReset Circuit Topologies Notes and References 1."Some Characteristics of Crystal Clock Oscillators During the Turn-On Transient." This application note discusses and shows what the output of an oscillator may be during the turn-on transient. Examples shows include runt pulses of various sizes and polarities. 2."Asynchronous & Synchronous Reset Design Techniques - Part Deux“ 3."Small Explorer WIRE Failure Investigation Report." This is Appendix F of the WIRE Mishap Investigation Board Report, June 8, "Startup Transient," from Advanced Design: Designing for Reliability, 2001 MAPLD International Conference, Laurel, MD, September 10, "Current Radiation Issues for Programmable Elements and Devices," IEEE Transactions on Nuclear Science, December "RH1020 Single Event Clock Upset Summary Report," Richard B. Katz and J. J. Wang, March 5, Thanks to Melanie Berg of Ball for the helpful comments and suggesting to add notes about the extra delay in the reset path when using topologies such as those shown in Figure 2. 8."Hazard Analysis," from Design Guidelines and Criteria for Space Flight Digital Electronics. and 9.Timing Analysis of Asynchronous Signals