Method and apparatus for a clock and data recovery circuit
First Claim
1. A clock and data recovery circuit, comprising:
- a plurality of receiver segments coupled to receive an input data stream, wherein each receiver segment includes a plurality of deserializers adapted to sample programmably delayed representations of the input data stream to generate a plurality of data words; and
an error correction block coupled to receive the plurality of data words and adapted to remove duplicative data from the plurality of data words and merge each of the plurality of data words into detected data words.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for a clock and data recovery circuit that includes a set of serializer/deserializer (SERDES) circuits that are adapted to sample progressively delayed versions of an input data stream. The sampling rate is slightly higher than the data rate of the input data stream, which produces duplicate bits in the detected data stream. Error and offset matrices are used to generate an index pointer into a detected data matrix to extract the correct data bits from the duplicate bits of the detected data matrix. Down-sampling of the corrected data is performed to populate a ring buffer. Data is then extracted from the ring buffer using a clock signal whose frequency is adapted from the sampling clock signal used by the SERDES to prevent underflow/overflow of the ring buffer.
24 Citations
20 Claims
-
1. A clock and data recovery circuit, comprising:
-
a plurality of receiver segments coupled to receive an input data stream, wherein each receiver segment includes a plurality of deserializers adapted to sample programmably delayed representations of the input data stream to generate a plurality of data words; and an error correction block coupled to receive the plurality of data words and adapted to remove duplicative data from the plurality of data words and merge each of the plurality of data words into detected data words. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of recovering data signals from an input data stream having a data rate, comprising:
-
generating a plurality of data word streams from data samples taken from a plurality of data bit streams, each data bit stream exhibiting a different delay in relation to the input data stream; detecting error bits within the plurality of data words; extracting data bits from the plurality of data words, the extracted data bits being void of the detected error bits; and down-sampling the extracted data bits to recover the data signals from the input data stream. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. In a programmable logic device, a method of recovering data signals from an input data stream comprises:
-
receiving the input data stream using input/output pins of the programmable logic device; routing the input data stream to a plurality of receiver segments associated with the input/output pins; delaying the input data stream in each receiver segment using a programmable delay for each receiver segment; generating a plurality of data words from data samples taken from the delayed data streams in each receiver segment; extracting non-duplicative data bits from the plurality of data words; and down-sampling the extracted data bits to recover the data signals from the input data stream. - View Dependent Claims (18, 19, 20)
-
Specification