US2002091885A1PendingUtilityA1

Data de-skew method and system

Priority: Dec 30, 2000Filed: Dec 31, 2001Published: Jul 11, 2002
Est. expiryDec 30, 2020(expired)· nominal 20-yr term from priority
H03L 7/0814H04L 7/04H04J 3/04H04L 7/0337H04L 69/22H04L 69/14H03L 2207/14H03L 7/087H04L 25/14H04J 3/0602
25
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Systems and methods for deskewing parallel data lines using at least one extra channel in parallel to the parallel data lines to carry data for comparing to data on the parallel data lines.

Claims

exact text as granted — not AI-modified
1 . A de-skew system comprising: 
 a plurality of data channels over which data is transmitted;    a plurality of selectors coupled to the plurality of data channels; and    a controller coupled to the plurality of selectors and configured to cause the selectors to provide data from a desired data channel for transmission over a forward data sample channel.    
     
     
         2 . The system of  claim 1  wherein data transmitted over the forward data sample channel comprises a forward data sample, the forward data sample further including a header.  
     
     
         3 . The system of  claim 2  wherein the header comprises a fixed pattern and at least one channel number.  
     
     
         4 . The system of  claim 2  wherein the header further comprises sample length and status words.  
     
     
         5 . The system of  claim 2  wherein the header precedes the forward data sample.  
     
     
         6 . The system of  claim 1  further comprising: 
 a processor receiving data from the plurality of data channels and the forward data sample channel; and  
 a de-skew module configured to collect portions of the received data and to adjust collection of each of the received data based on the received forward data sample and the collected portions of the received data.  
 
     
     
         7 . A de-skew system comprising: 
 a processor configured to receive input data and generate parallel data;    a buffer unit receiving the generated parallel data and a clock signal and generating a plurality of data signals based on the received generated data and clock signal; and    a control unit configured to collect portions of the plurality of data signals and to generate a forward data sample based on the collected portions of the plurality of data signals.    
     
     
         8 . The system of  claim 7  further comprising: 
 de-skew units each receiving at least one of the plurality of data signals and adjusting received data based on a timing signal; and  
 control unit configured to collect portions of the plurality of data signals and to generate the timing signal based on the forward data sample and the collected portions of the plurality of data signals.  
 
     
     
         9 . The system of  claim 8  further comprising input drivers receiving the plurality of data signals and the forward data sample and supplying the plurality of data signals to the deskew units and the forward data sample to the control unit.  
     
     
         10 . The system of  claim 9  further comprising a buffer unit receiving data from the de-skew units and a clock signal and generating a plurality of data signals based on the received clock signal.  
     
     
         11 . The de-skew system of  claim 7  further comprising: 
 a delay unit receiving the forward data sample and generating a delayed forward data sample delayed by a predetermined amount of time; and  
 wherein the control unit receives the delayed forward data sample and generates the timing signal based on the delayed forward data sample and the collected portions of the plurality of data signals.  
 
     
     
         12 . A de-skew method comprising: 
 receiving data from a plurality of data channels;    selecting a portion of data from each of the received data from the plurality of data channels; and    generating a forward data sample comprising the selected portions of data.    
     
     
         13 . The de-skew method of  claim 12  further comprising 
 receiving the forward data sample;  
 identifying the portion of data corresponding to the received data from the plurality of data channels;  
 determining a delay based on timing between the portion of data and the corresponding received data; and  
 passing the received data along the plurality of data channels after the determined delay.  
 
     
     
         14 . A de-skew method comprising: 
 centering a forward data sample;    comparing the forward data sample to data on one of the plurality of data channels; and    determining a time variation between the data and the forward data sample when the forward data sample corresponds to the data.    
     
     
         15 . The method of  claim 14  further comprising delaying the forward data sample based on the determined time variation.  
     
     
         16 . The method of  claim 14  wherein centering the forward data sample further comprises: 
 setting a sampling point of a first data channel; and  
 sampling the first data channel at the set sampling point.  
 
     
     
         17 . The method of  claim 14  wherein centering the forward data sample further comprises sampling the first data channel at a midpoint of a predetermined de-skew range.  
     
     
         18 . The method of  claim 14  wherein centering the forward data sample further comprises sampling the first data channel at approximate a center of a data eye of the first data channel and near a midpoint of a predetermined de-skew range.  
     
     
         19 . A de-skew method comprising: 
 determining a channel number for a forward data sample;    retrieving data from a data channel identified by the channel number, the data channel being a first data channel;    comparing the data from the first data channel with a slice of delayed data from the forward data sample; and    adjusting timing of the forward data sample when the data from the first data channel corresponds to the slice of the delayed data.    
     
     
         20 . The method of  claim 19  wherein adjusting time of the forward data sample comprises delaying the forward data sample by an amount of time the slice of delayed data is delayed.  
     
     
         21 . A de-skew method comprising: 
 selecting data from specific channel of a plurality of channels;    centering skew adjustment for the specific channel;    adjusting a forward data sample until data in the forward data sample matches the selected data;    selecting another channel of the plurality of channels;    adjusting skew on the selected channel until data in the selected channel matches the forward data sample; and    rotating through all the plurality of channels to select and adjust skew of all the plurality of channels to match the forward data sample.    
     
     
         22 . The method of  claim 21  further comprising: 
 receiving a header; and  
 decoding the header to determine a channel number.  
 
     
     
         23 . The method of  claim 22  wherein the header comprises a fixed pattern and at least one channel number.  
     
     
         24 . The method of  claim 22  wherein the header further comprises sample length and status words.  
     
     
         25 . The method of  claim 22  wherein the header precedes the forward data sample.  
     
     
         26 . The method of  claim 25  where the forward data sample comprises a fixed quantity of data samples.  
     
     
         27 . The method of  claim 21  further comprising word aligning data from the plurality of channels.  
     
     
         28 . The method of  claim 21  further comprising byte aligning data from the plurality of channels.  
     
     
         29 . The method of  claim 21  wherein centering skew adjustment further comprises centering a sampling point of the selected channel.  
     
     
         30 . The method of  claim 21  wherein center skew adjustment further comprises: 
 sampling a plurality of points of data from the selected data channel; and  
 comparing the plurality of sampled points to determine a center of the data of the selected data channel.  
 
     
     
         31 . A de-skew system comprising: 
 a processor configured to receive input data and generate parallel data;    a de-skew unit receiving the generated parallel data and a timing signal and adjusting timing of the generated parallel data, based on the timing signal, to generate a plurality of data signals; and    a control unit configured to collect portions of the plurality of data signals and to receive a loop data sample and generating the timing signal based on a comparison of the collected portions of the plurality of data signals and the loop data sample.    
     
     
         32 . The system of  claim 31  further comprising: 
 a buffer unit receiving the plurality of data and a clock signal and generating a plurality of data signals based on the received clock signal; and  
 a reverse control unit configured to collect portions of the plurality of data signals and to generate a loop data sample based on the collected portions of the plurality of data signals.  
 
     
     
         33 . The de-skew system of  claim 32  further comprising input drivers receiving input data.  
     
     
         34 . A de-skew method comprising: 
 receiving a loop back data sample;    determining a data channel specified by the loop back data sample;    determining a delay for data from a specific channel when the determined data channel is the specific channel; and    delaying data from the specific channel by the determined delay.    
     
     
         35 . The method of  claim 34  wherein determining a delay comprises: 
 providing data from the specific channel to a delay element; and  
 comparing data from the delay element with the data from the loop back data sample.  
 
     
     
         36 . The method of  claim 35  wherein delaying the specific channel comprises adjusting the delay time of the delay element when the data from the delay element corresponds to the data from the loop back data sample.  
     
     
         37 . The method of  claim 34  further comprising setting the specific channel at a midpoint.  
     
     
         38 . The method of  claim 35  further comprising selecting another channel to supply data to the delay element.  
     
     
         39 . The method of  claim 34  further comprising comparing data from the loop back data sample with the delayed data from the specific channel when the determined data channel is the specific channel.  
     
     
         40 . The method of  claim 39  further comprising selecting another channel based on the comparison of the data from the loop back data sample with the delayed data.  
     
     
         41 . The method of  claim 39  further comprising: 
 determining a delay for the specific channel based on the comparison of the data from the loop back data sample with the delayed data; and  
 adjusting the delay of the specific channel.  
 
     
     
         42 . A method of deskewing parallel data channels between a transmitting unit and a receiving unit using a forward sample channel, the transmitting unit providing data signals to the receiving unit over the parallel data channels and also providing sample signals to the receiving unit over the forward sample channel, the method comprising: 
 selecting a data channel for deskewing;    transmitting data over the data channel;    transmitting the data over the forward sample channel;    comparing received data transmitted over the data channel with received data transmitted over the forward sample channel; and    deskewing the data channel based on the comparison.    
     
     
         43 . The method of  claim 42  further comprising selecting a further data channel for deskewing; 
 transmitting further data over the further data channel;  
 transmitting the further data over the forward sample channel;  
 comparing received further data transmitted over the further data channel with received further data transmitted over the forward sample channel; and  
 deskewing the further data channel based on the comparison.  
 
     
     
         44 . The method of  claim 43  further comprising transmitting a header over the forward data sample.  
     
     
         45 . The method of  claim 44  wherein the header includes an indication of the selected channel.  
     
     
         46 . The method of  claim 45  wherein the header is transmitted over the forward sample channel prior to transmission of data for a data channel over the forward sample channel.  
     
     
         47 . The method of  claim 46  where deskewing is accomplished by adjusting a delay in the path of data received over the data channels in the receiving unit.  
     
     
         48 . A method of deskewing parallel data lines comprising: 
 providing parallel data over a plurality of parallel data lines;    successively providing sample data over a sample channel, the sample data corresponding to data of the parallel data;    using the sample data to align the parallel data.    
     
     
         49 . The method of deskewing parallel data lines of  claim 48  wherein the parallel data lines provide parallel data from a first unit to a second unit and the sample channel provides sample data from the first unit to the second unit.  
     
     
         50 . The method of deskewing parallel data lines of  claim 48  wherein the parallel data lines provide parallel data from a first unit to a second unit and the sample channel provides sample data from the second unit to the first unit.  
     
     
         51 . A system including deskew functions comprising: 
 an upstream unit providing parallel data to a downstream unit over parallel data channels;    a downstream unit receiving the parallel data from the upstream unit over the parallel data channels;    a sample channel coupling the upstream unit and the downstream unit, the sample channel carrying samples of the parallel data.    
     
     
         52 . The system including deskew functions of  claim 51  wherein the sample channel carries samples of the parallel data from the upstream unit to the downstream unit.  
     
     
         53 . The system including deskew functions of  claim 51  wherein the upstream unit includes a sampler for placing samples of data from a selected parallel data line on the sample channel.  
     
     
         54 . The system including deskew functions of  claim 53  wherein the downstream unit includes a deskew circuitry for each of the parallel data channels.  
     
     
         55 . The system including deskew functions of  claim 54  wherein the downstream unit includes control circuitry providing adjustments to the deskew circuitry based on a comparison of portions of the parallel data and data provided over the sample channel.  
     
     
         56 . The system including deskew functions of  claim 51  wherein the sample channel carries samples of the parallel data from the downstream unit to the upstream unit.  
     
     
         57 . The system including deskew functions of  claim 56  wherein the downstream unit includes a sampler for placing samples of data from a selected parallel data line on the sample channel.  
     
     
         58 . The system including deskew functions of  claim 57  wherein the upstream unit includes a deskew circuitry for each of the parallel data channels.  
     
     
         59 . The system including deskew functions of  claim 58  wherein the upstream unit includes control circuitry providing adjustments to the deskew circuitry based on a comparison of portions of the parallel data and data provided over the sample channel.  
     
     
         60 . A system of two units coupled by parallel data lines comprising: 
 a first unit providing parallel data over N parallel data lines;    a second unit receiving the parallel data over the N parallel data lines;    a spare channel in parallel with the N parallel data lines, the first unit providing data of the parallel data lines over the spare channel, the second unit receiving the data of the parallel data lines over the spare channel;    a return channel in parallel with the N parallel data lines, the second unit providing data of the parallel data lines over the return channel, the first unit receiving the data of the parallel data lines over the return channel; and    at least one unit in the first unit deskewing the N parallel data lines using data of the parallel data lines received over the return channel.    
     
     
         61 . The system of two units coupled by parallel data lines of claim  60  wherein the second unit includes a selector for replacing data from a selected one of the N parallel data lines with data from the spare channel.

Join the waitlist — get patent alerts

Track US2002091885A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.