FIFO Memories: Solution to Reduce FIFO Metastability

Similar documents
SN54273, SN54LS273, SN74273, SN74LS273 OCTAL D-TYPE FLIP-FLOP WITH CLEAR

SN54192, SN54193, SN54LS192, SN54LS193, SN74192, SN74193, SN74LS192, SN74LS193 SYNCHRONOUS 4-BIT UP/DOWN COUNTERS (DUAL CLOCK WITH CLEAR)

SN74F161A SYNCHRONOUS 4-BIT BINARY COUNTER

INTEGRATED CIRCUITS. AN219 A metastability primer Nov 15

ADC0804C, ADC BIT ANALOG-TO-DIGITAL CONVERTERS WITH DIFFERENTIAL INPUTS

Interfacing the TLC5510 Analog-to-Digital Converter to the

Sequential Logic. E&CE 223 Digital Circuits and Systems (A. Kennings) Page 1

Analog Technologies. LED Bulb ATLB3W20

Software Engineering 2DA4. Slides 9: Asynchronous Sequential Circuits

Digital System Design

Dual Link DVI Receiver Implementation

Final Exam review: chapter 4 and 5. Supplement 3 and 4

Flip-Flops. Because of this the state of the latch may keep changing in circuits with feedback as long as the clock pulse remains active.

EECS150 - Digital Design Lecture 15 Finite State Machines. Announcements


Metastability Analysis of Synchronizer

Asynchronous (Ripple) Counters

EE178 Spring 2018 Lecture Module 5. Eric Crabill

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

D Latch (Transparent Latch)

The outputs are formed by a combinational logic function of the inputs to the circuit or the values stored in the flip-flops (or both).

Synchronous Sequential Logic

Outline. EECS150 - Digital Design Lecture 27 - Asynchronous Sequential Circuits. Cross-coupled NOR gates. Asynchronous State Transition Diagram

EE178 Lecture Module 4. Eric Crabill SJSU / Xilinx Fall 2005

FPGA TechNote: Asynchronous signals and Metastability

2.6 Reset Design Strategy

EECS150 - Digital Design Lecture 10 - Interfacing. Recap and Topics

Figure 1. High Efficiency T8 LED Tube. Figure 3. Full View of Light High Efficiency T8 LED Tube

P U Q Q*

Figure 1 shows a simple implementation of a clock switch, using an AND-OR type multiplexer logic.

Asynchronous inputs. 9 - Metastability and Clock Recovery. A simple synchronizer. Only one synchronizer per input

Chapter 9. Timing Design. (Based on Chapter 7 and Chapter 8 of Wakerly) Data Path Comb. Logic. Reg. Reg. Reg C <= A + B

Note that none of the above MAY be a VALID ANSWER.

Clock and Asynchronous Signals

Introduction. NAND Gate Latch. Digital Logic Design 1 FLIP-FLOP. Digital Logic Design 1

Digital Design, Kyung Hee Univ. Chapter 5. Synchronous Sequential Logic

Unit 9 Latches and Flip-Flops. Dept. of Electrical and Computer Eng., NCTU 1

Using DLP LightCrafter 4500 Triggers to Synchronize Cameras to

Lecture 8: Sequential Logic

Clock Domain Crossing. Presented by Abramov B. 1


P U Q Q*

Topic D-type Flip-flops. Draw a timing diagram to illustrate the significance of edge

Chapter 5: Synchronous Sequential Logic

WM8725 EVALUATION BOARD USER HANDBOOK. The WM8725 is high performance Stereo DAC.

74F273 Octal D-Type Flip-Flop

PRE J. Figure 25.1a J-K flip-flop with Asynchronous Preset and Clear inputs

TMS320C6000: Board Design for JTAG

More on Flip-Flops Digital Design and Computer Architecture: ARM Edition 2015 Chapter 3 <98> 98

UNIT III. Combinational Circuit- Block Diagram. Sequential Circuit- Block Diagram

Self Restoring Logic (SRL) Cell Targets Space Application Designs

Introduction to Microprocessor & Digital Logic

Chapter 9. Timing Design. (Based on Chapter 7 and Chapter 8 of Wakerly)

Logic Design. Flip Flops, Registers and Counters

TIL311 HEXADECIMAL DISPLAY WITH LOGIC

Registers and Counters

CprE 281: Digital Logic

CSE115: Digital Design Lecture 23: Latches & Flip-Flops

EET2411 DIGITAL ELECTRONICS

Unit 11. Latches and Flip-Flops

Registers and Counters

Chapter 5 Synchronous Sequential Logic

DP8212 DP8212M 8-Bit Input Output Port

Chapter 5 Flip-Flops and Related Devices

Test Report TIDA /14/2014. Test Report For TIDA Aptina Automotive Camera Module 02/14/2014

Design of Fault Coverage Test Pattern Generator Using LFSR

Glitches/hazards and how to avoid them. What to do when the state machine doesn t fit!

EITF35: Introduction to Structured VLSI Design

Introduction to Sequential Circuits

Chapter 6. Flip-Flops and Simple Flip-Flop Applications

Digital Fundamentals. Lab 5 Latches & Flip-Flops CETT Name: Date:

Digital Logic & Computer Design CS Professor Dan Moldovan Spring Chapter 3 :: Sequential Logic Design

Basis of sequential circuits: the R-S latch

ELCT201: DIGITAL LOGIC DESIGN

ECEN454 Digital Integrated Circuit Design. Sequential Circuits. Sequencing. Output depends on current inputs

SMPTE-259M/DVB-ASI Scrambler/Controller

Multi-Media Card (MMC) DLL Tuning

IP-DDC4i. Four Independent Channels Digital Down Conversion Core for FPGA FEATURES. Description APPLICATIONS HARDWARE SUPPORT DELIVERABLES

ELE2120 Digital Circuits and Systems. Tutorial Note 7

Experiment # 12. Traffic Light Controller

General purpose low noise wideband amplifier for frequencies between DC and 2.2 GHz

Synchronous Sequential Logic. Chapter 5

Synchronizing Multiple ADC08xxxx Giga-Sample ADCs

RS flip-flop using NOR gate

DIGITAL CIRCUIT LOGIC UNIT 11: SEQUENTIAL CIRCUITS (LATCHES AND FLIP-FLOPS)

1. What does the signal for a static-zero hazard look like?

6. Sequential Logic Flip-Flops

Using DLP LightCrafter 4500 Triggers to Synchronize Cameras to Patterns

Digital Logic Design ENEE x. Lecture 19

Synchronous Sequential Logic

Order code Package Connection. SPDC400FC12M0.60 Open frame Comb. October 2007 Rev 1 1/9

Lecture 11: Sequential Circuit Design

Chapter 2. Digital Circuits

UNIT-3: SEQUENTIAL LOGIC CIRCUITS

Laboratory 1 - Introduction to Digital Electronics and Lab Equipment (Logic Analyzers, Digital Oscilloscope, and FPGA-based Labkit)

2 Sequential Circuits

Counter dan Register

MC9211 Computer Organization

Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop. Course project for ECE533

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District UNIT-III SEQUENTIAL CIRCUITS

Transcription:

FIFO Memories: Solution to Reduce FIFO Metastability First-In, First-Out Technology Tom Jackson Advanced System Logic Semiconductor Group SCAA011A March 1996 1

IMPORTANT NOTICE Texas Instruments (TI) reserves the right to make changes to its products or to discontinue any semiconductor product or service without notice, and advises its customers to obtain the latest version of relevant information to verify, before placing orders, that the information being relied on is current. TI warrants performance of its semiconductor products and related software to the specifications applicable at the time of sale in accordance with TI s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except those mandated by government requirements. Certain applications using semiconductor products may involve potential risks of death, personal injury, or severe property or environmental damage ( Critical Applications ). TI SEMICONUCTOR PROUCTS ARE NOT ESIGNE, INTENE, AUTHORIZE, OR WARRANTE TO BE SUITABLE FOR USE IN LIFE-SUPPORT APPLICATIONS, EVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS. Inclusion of TI products in such applications is understood to be fully at the risk of the customer. Use of TI products in such applications requires the written approval of an appropriate TI officer. uestions concerning potential risk applications should be directed to TI through a local SC sales office. In order to minimize risks associated with the customer s applications, adequate design and operating safeguards should be provided by the customer to minimize inherent or procedural hazards. TI assumes no liability for applications assistance, customer product design, software performance, or infringement of patents or services described herein. Nor does TI warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right of TI covering or relating to any combination, machine, or process in which such semiconductor products or services might be or are used. Copyright 1996, Texas Instruments Incorporated 2

As system operating frequencies continue to increase in excess of 33 MHz, designers must begin to address the issues of overall system reliability due to increased chance of a metastable event occurring. A metastable event is defined as the time period when the output of a logic device is neither at a logic high nor at a logic low but rather in an indeterminate level. The chance of a metastable occurrence is exponentially increased if single-stage synchronization is employed, as in the case of the 722xx synchronous-style devices versus the two-stage synchronization that is implemented by Texas Instruments (TI) (see Figure 1). The following information assists designers in understanding and improving upon the metastable characteristics of 722xx synchronous-style devices and their reliability. 1.00E+57 1.00E+52 1.00E+47 1.00E+42 1.00E+37 MTBF s 1.00E+32 1.00E+27 1.00E+22 Two-Stage Synchronization One-Stage Synchronization 1.00E+17 1.00E+12 1.00E+07 1.00E+02 1.00E 03 1.00E 08 0 10 20 30 40 50 60 70 Frequency MHz Figure 1. MTBF for Metastability as a Function of Frequency Metastability may occur when using a FIFO to synchronize two digital signals operating at different frequencies. This type of application is a familiar one to many design engineers. Triggering a metastable event is common in single-stage (single flip-flop) synchronized FIFOs that are used to synchronize different clock signals (see Figure 2). With this method, the asynchronous input might change states too close to the clock transition, violating the flip-flop s setup and hold times. This causes an increase in resolve time (t r ) which then results in an overall increase in propagation delay (t pd ). Once a metastable event is triggered, the probability of the output recovering to a high or low level increases exponentially with the increased resolve time. The expected time until the output of a single flip-flop with asynchronous data has a metastable event is described by the mean time between failure (MTBF) equation (see equation 1). The first term of the equation is the probability that the asynchronous data will trigger a metastable event. The second term is the data rate. The third and final term is the probability of the metastable event recovering given the resolve time. A linear increase in resolve time exponentially increases the MTBF of a metastable event. 3

Clock Clock tsu tpd tr Where: MTBF 1 1 1 t o f c f d exp. t r. t o t r f c f d Figure 2. Single-Stage Synchronizer = flip-flop constant representing the time window during which changing data invokes a failure = resolve time allowed in excess of the normal propagation delay = flip-flop constant related to the settling time of a metastable event = clock frequency = asynchronous data frequency (for OR-flag analysis, it is the frequency at which data is written to empty memory; for IR-flag analysis, it is the frequency at which data is read from full memory). (1) TI has increased the metastable MTBF by several orders of magnitude over single-stage synchronization with its advanced FIFO family by employing two-stage synchronization (see Figure 3). The output of the first flip-flop is clocked into the second flip-flop on the next clock cycle. For the output of the second stage to become metastable, the first stage must have a metastable event that lasts long enough to encroach upon the setup time of the second stage. The addition of the second flip-flop to the single-stage synchronizer allows the flip-flops more time to resolve any metastable output. This is statistically equivalent to increasing its resolve time by the clock period minus its propagation delay. MTBF for a two-stage synchronizer is given in equation 2. All terms, except for the third one, are the same as in equation 1. The third term represents the additional propagation delay through the added flip-flop. MTBF 2 1 1 1 fc t o f c f d exp* t pd* exp. t (2) r. t pd = propagation delay through the first flip-flop MTBF 2 = MTBF 1 Where: t r = t r + (1/f c t pd ) 4

Clock Clock ÎÎ ÎÎÎ tsu First Stage tpd tr ÎÎÎÎÎÎÎÎÎÎ ÎÎÎÎÎÎÎÎÎ High or Low (does not matter) Figure 3. Two-Stage Synchronizer The functional block diagram in Figure 4 illustrates the connections necessary to add the second-stage synchronization to the 72211 synchronous FIFO. A quick and inexpensive schematic to resolve metastability of a synchronous FIFO is shown in Figure 5. In this case, the FIFO is the 72211LJ and, by implementing a single TI SN74F74 -type positive-edge-triggered flip-flop and a TI SN74F08 two-input positive AN gate, the metastability characteristics of this circuit can be dramatically improved. The TI SN74F74 acts as the second stage for this circuit, increasing the resolve time as described in the previous paragraphs. The TI SN74F08 is implemented to act as the control-empty and control-full flags to the receiving device. These control lines of the first-stage and second-stage synchronized flags are then ANed together to create the control flags (control empty and control full). The control lines are essentially read enables that ensure the synchronization of the device. As is shown in the logic diagram and truth table, synchronization is complete only when the empty flags () of both the second stage (truth table input A) and the device (truth table input B) are high. The empty flag is used for read control and the full flag () is used for write control. If either flag from the synchronizer or the device is held low or becomes metastable, a read is not permitted (truth table output Y) until the write flag is synchronized. As can be seen in today s digital systems, synchronous and asynchronous operations can and will produce random errors due to metastability in single-stage FIFO designs like those of the 722xx synchronous FIFO family. The described method of implementing a second stage for flag synchronization is extremely useful for clock speeds that are either approaching or exceeding 33 MHz. Metastability can be virtually eliminated in the 722xx synchronous FIFO family by the simple addition of a second flip-flop. The second-stage synchronizer greatly reduces metastability, thereby increasing the MTBF and allowing designers to use faster microprocessors and higher data-transfer rates for greater overall system performance and reliability. To reduce metastability and improve system reliability, TI offers a complete line of high-performance FIFO memory devices. TI s FIFOs have dual-stage synchronization designed onto each chip. This eliminates the need for any external discrete solution and reduces critical board space by fully utilizing TI s family of fine-pitch surface-mount packaging. 5

72211 Second Stage / Control Logic WCLK RCLK Control Empty Control Full Figure 4. Connecting the Second-Stage Synchronizer to the 72211 Synchronous FIFO 72211 TI SN74F74 -Type Positive-Edge-Triggered Flip-Flop TI SN74F08 2-Input Positive AN Gate Control Empty 11 RCLK WCLK 27 2 3 5 1 1CLK 2 2CLK 1 2 12 11 9 1A 1B 1Y 2A 2B 2Y To Receiving evice 14 15 Control Full Two Stage Control Empty Two Stage Control Full INPUTS OUTPUT A B Y H H H L X L X L L Figure 5. Resolving Metastability of a Synchronous FIFO 6