Memory Timing Drift Correction via Dynamic Sampling Windows
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Timing signal drift in memory systems, caused by fluctuations in supply voltage and temperature, leads to invalid timing parameters and system errors during data read operations in DDR SDRAM memory systems.
Innovation Solution
The method involves determining start and end times for sub-enable windows and a close-enable window relative to the estimated start time of data strobe sequences, adjusting these intervals based on the occurrence of the last falling edge, and disabling sampling if the edge occurs within these windows to correct for timing signal drift.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the host device uses a fixed delay period estimated during training to sample data, then the system operates with simple timing control, but timing signal drift caused by voltage and temperature fluctuations renders the estimated parameters invalid, resulting in system errors
Solution Approach 1:
The patent applies preliminary action by establishing sub-enable windows and close-enable windows in advance based on training data before actual data reading operations. These pre-configured timing windows prepare the system to accommodate potential drift by having ready-made adjustment ranges, allowing the host device to quickly adapt to timing variations without complex real-time calculations during critical data sampling operations.
Solution Approach 2:
The patent implements feedback mechanisms by monitoring the position of the last falling edge within the data strobe sequence relative to the close-enable window. When drift is detected (the falling edge moves outside expected boundaries), the system uses this feedback information to adjust the sub-enable window positions and sampling timing, creating a closed-loop control system that continuously corrects for timing drift based on observed conditions.
2Measurement precision
If the host device samples data at every rising and falling edge of the data strobe sequence, then complete data capture is achieved, but timing drift causes sampling at incorrect moments, leading to erroneous data reading
Solution Approach 1:
The patent applies segmentation by dividing the data strobe sequence into distinct operational regions: sub-enable windows for initial sampling opportunities and a close-enable window for final sampling decisions. This segmentation allows the system to evaluate multiple potential sampling points rather than relying on a single fixed timing parameter, improving adaptability to drift while maintaining precise sampling control through structured time intervals.
3Loss of time
If training is performed during system startup to estimate delay period and timing parameters, then initial timing configuration is achieved, but environmental fluctuations cause these parameters to become invalid over time
Solution Approach 1:
The patent applies dynamics by transitioning from static timing parameters established during training to dynamic, adaptable timing windows. The sub-enable and close-enable windows are designed to flexibly accommodate timing variations caused by environmental changes. This dynamic approach allows the system to maintain reliability over time by adapting to drift conditions without requiring repeated full training sequences, thus balancing setup time with ongoing parameter validity.
Data Source
AI summary
Methods and systems for detection and correction of timing signal drift in memory systems are provided. A start time and an end time of a first time interval is determined with control circuitry such that a last falling edge in a first of a plurality of data strobe sequences received from the memory occurs outside of the first time interval. A start time and an end time of a close-enable time interval is adjusted based at least in part on determining whether a second of the plurality of data strobe sequences occurs within the first time interval. Sampling of data received from the memory is disabled in response to determining that the last falling edge in the second received data strobe sequence occurs within the close-enable time interval.


