System and method for clock resynchronization
AssigneeSTMicroelectronics S.r.l.
InventorsFrancesco Pappalardo, Elena Salurso
Life of this patent
Estimating the term…
Abstract
A method of processing a data stream includes taking a first number of samples of the data stream using a sampling clock over a first observation window and storing a stored data stream including the first number of samples in a data buffer. A length of the first observation window is determined by a reference clock. A measured number of cycles of the sampling clock are determined from the first number of samples. An error between an expected number of cycles of the sampling clock and the measured number of cycles of the sampling clock in the observation window is measured. The stored data stream corresponding to the first observation window is updated to contain a second number of samples by correcting the first number of samples with the error.
Claims20
A method of processing a data stream, the method comprising:
- taking a first number of samples of the data stream using a sampling clock over a first observation window, and storing a stored data stream comprising the first number of samples in a data buffer, wherein a length of the first observation window is determined by a reference clock;
- determining a measured number of cycles of the sampling clock from the first number of samples;
- measuring an error between an expected number of cycles of the sampling clock and the measured number of cycles of the sampling clock in the observation window;
- updating the stored data stream comprising the first number of samples to contain a second number of samples by correcting the first number of samples with the error;
- and
- decoding the data stream based on processing the second number of samples.
A method for resynchronizing a data stream, the method comprising:
- oversampling the data stream to form a sampled data set, wherein a sampling rate of the oversampling is determined by a sampling clock, the sampled data set being stored in a data buffer;
- counting a measured number of cycles of the sampling clock over an observation window, wherein the length of the observation window is determined by a reference clock;
- indicating the end of the observation window by sending a trigger to a data stream recovery method;
- after sending the trigger to the data stream recovery method, executing the data stream recovery method in response to receiving the trigger, the data stream recovery method comprising:
- determining a difference between the measured number of cycles of the sampling clock over the observation window and an expected number of cycles of the sampling clock over the observation window;
- and
- adding or subtracting a number of samples equal to the difference from the sampled data set in the data buffer;
- and
- after executing the data stream recovery method, decoding the sampled data set.
A system for processing a data stream, the system comprising:
- a sampling clock, the sampling clock having a first frequency;
- a reference clock, the reference clock having a second frequency, the second frequency being smaller than the first frequency, the reference clock having a smaller frequency than the sampling clock, wherein a length of an observation window is determined by the reference clock;
- a plurality of processors;
- and
- a non-transitory memory storing program instructions to be executed in the plurality of processors, the program instructions comprising instructions to:
- measure a difference between an expected number of cycles of the sampling clock in the observation window and a measured number of cycles of the sampling clock in the observation window;
- and
- correct a first number of samples taken from a transmission over the observation window by the difference measured, wherein the samples are taken using the sampling clock.
Dependencies are inferred from the claim text.