Lecture Notes: Reset Domain Crossing and Its Techniques
Introduction
- Presenter: Electronics Media
- Topic: Reset Domain Crossing (RDC) and its techniques
- Previous Video: Basics of Reset Domain Crossing
- Reset recovery
- Set removal
- Definition of RDC
- Objective: Explain RDC techniques
What is Reset Domain Crossing (RDC)?
- Occurs when data transitions between different reset boundaries
- Example: Transition from
reset n1 to reset n2
- Potential Issue: Destination flip-flop (flop) can enter a metastable state, possibly causing chip failure
Understanding RDC with Waveforms
- Clock: Primary signal
- Reset n1: Initially de-asserted, then asserted (active low)
- Reset n2: Out of reset (de-asserted)
- Data Propagation: From flip-flop 1 to flip-flop 2 (q1 to q2)
- Metastability: When reset assertion is asynchronous and occurs near setup/removal window
- Can cause flip-flop to sample incorrect data (0, 1, or metastable)
- Potential chip failure if metastable data propagates
Challenges in Catching RDC
- More complex than clock domain crossing (CDC)
- Requires system-level analysis
- Consideration of reset assertion/de-assertion timing
Techniques to Mitigate RDC Issues
1. RTL Fix with Synchronizers
- Method: Insert a two-stage (double) synchronizer
- Function: Breaks path between the reset domains
- Synchronizer aligns data with the destination reset domain
- Minimizes metastability in data propagation
2. Reset Ordering
- System-level Strategy: Control the sequence of reset assertion
- Ensure destination module is reset when source assertion occurs
- Prevents data from being sampled when in metastable state
3. Clock Gating Technique
- Purpose: Control when the clock signal is active
- Gated off during reset assertions
- Prevents sampling of metastable data
4. Adding Waivers or Constraints
- Waivers: Manually waive off violations after analysis
- Risky and tedious due to potential for new violations
- Constraints: Define reset order in tools like Spyglass
- Suppresses violation alerts based on predefined reset routes
Conclusion
- Summary: Techniques for handling RDC focus on preventing metastability and ensuring reliable data propagation between reset domains
- Further Learning: Check previous video links for more detailed information
- Feedback: Questions and comments are encouraged for further clarification
Thank the audience for their attention and encourage viewers to reach out with questions.