IP Library Granted Patent US 9,721,627
Granted Patent B2
US 9,721,627 · App. 14/046,879 · Granted Aug 1, 2017

Method and apparatus for aligning signals

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,721,627
App. No.
14/046,879
Granted
Aug 1, 2017
Kind
B2
Abstract

A method and corresponding apparatus for aligning a data signal with a corresponding clock signal include oversampling the data signal based on the corresponding clock signal and generating corresponding data samples. An indication of skew between the data signal and the corresponding clock signal is detected based on data samples. A variable delay line coupled to the data signal is then adjusted based on the indication of skew detected. According to at least one example implementation, the data signal is oversampled based on the corresponding clock signal and multiple time-shifted versions of the corresponding clock signal. At least one signal of the corresponding clock signal and the multiple time-shifted versions of the corresponding clock signal is employed in sampling the data signal at a potential transition edge of the data signal.

Claims (57)

1. A method of aligning a data signal with a corresponding clock signal, the method comprising:

oversampling the data signal based on the corresponding clock signal;

detecting an indication of a skew between the data signal and the corresponding clock signal based on the oversampling; and

adjusting a variable delay line coupled to the data signal based on the indication of skew detected, the variable delay line being decoupled from the corresponding clock signal.

2. The method of claim 1 , wherein oversampling the data signal based on the corresponding clock signal includes sampling the data signal based on the corresponding clock signal and multiple time-shifted versions of the corresponding clock signal.

3. The method of claim 2 , wherein at least one signal of the corresponding clock signal and the multiple time-shifted versions of the corresponding clock signal is employed in sampling the data signal at a potential transition edge of the data signal.

4. The method of claim 1 , wherein detecting an indication of skew between the data signal and the corresponding clock signal includes:

selecting a subset of samples acquired by the oversampling; and

determining whether or not there is a skew in the data signal, with respect to the corresponding clock signal, based on the selected subset of samples.

5. The method of claim 4 , wherein at least one sample of the selected subset of samples is associated with a potential transition edge of the data signal.

6. The method of claim 5 , wherein determining whether or not there is a skew in the data signal includes determining whether or not there is a skew in the data signal based on the value of the at least one sample associated with the potential transition edge of the data signal.

7. The method of claim 1 , wherein detecting an indication of skew between the data signal and the corresponding clock signal includes:

selecting two or more subsets of samples acquired by the oversampling; and

determining whether or not there is a skew in the data signal, with respect to the corresponding clock signal, based on the selected two or more subsets of samples.

8. The method of claim 7 , wherein a sample of each of the selected two or more subsets of samples is associated with a corresponding potential transition edge of the data signal.

9. The method of claim 8 , wherein determining whether or not there is a skew in the data signal includes determining whether or not there is a skew in the data signal based on the values of the samples associated with corresponding potential transition edges of the data signal in each of the two or more selected subsets.

10. The method of claim 1 , wherein adjusting the variable delay line based on the skew indication detected includes incrementing or decrementing an indication of a delay associated with the variable delay line.

11. The method of claim 1 further comprising:

upon adjusting the variable delay, waiting for a number of cycles; and

repeating the oversampling, the detecting and the adjusting.

12. An apparatus for aligning a data signal with a corresponding clock signal, the apparatus comprising:

an oversampling circuit configured to oversample the data signal based on the corresponding clock signal; and

a controller configured to:

detect an indication of a skew between the data signal and the corresponding clock signal based on the oversampling;

adjust a variable delay line coupled to the data signal based on the indication of skew detected, the variable delay line being decoupled from the corresponding clock signal.

13. The apparatus of claim 12 , wherein the oversampling circuit includes multiple flip-flops configured to sample the data signal based on multiple other clock signals, the multiple other clock signals include the corresponding clock signal and multiple time-shifted versions of the corresponding clock signal.

14. The apparatus of claim 13 , wherein at least one signal of the multiple other clock signals is employed in sampling the data signal at a potential transition edge of the data signal.

15. The apparatus of claim 12 , wherein in detecting an indication of skew between the data signal and the corresponding clock signal, the controller is further configured to:

select a subset of samples acquired by the oversampling; and

determine whether or not there is a skew in the data signal, with respect to the corresponding clock signal, based on the selected subset of samples.

16. The apparatus of claim 15 , wherein at least one sample of the selected subset of samples is associated with a potential transition edge of the data signal.

17. The apparatus of claim 16 , wherein in determining whether or not there is a skew in the data signal, the controller is further configured to determine whether or not there is a skew in the data signal based on the value of the at least one sample associated with the potential transition edge of the data signal.

18. The apparatus of claim 12 , wherein in detecting an indication of skew between the data signal and the corresponding clock signal, the controller is further configured to:

select two or more subsets of samples acquired by the oversampling; and

determine whether or not there is a skew in the data signal, with respect to the corresponding clock signal, based on the selected two or more subsets of samples.

19. The apparatus of claim 18 , wherein a sample of each of the selected two or more subsets of samples is associated with a corresponding potential transition edge of the data signal.

20. The apparatus of claim 19 , wherein in determining whether or not there is a skew in the data signal, the controller is further configured to determine whether or not there is a skew in the data signal based on the values of the samples associated with corresponding potential transition edges of the data signal in each of the two or more selected subsets.

21. The apparatus of claim 12 , wherein in adjusting the variable delay line based on the skew indication detected, the controller is further configured to increment or decrement an indication of a delay associated with the variable delay line.

22. The apparatus of claim 12 , wherein the controller is further configured to:

upon adjusting the variable delay, wait for a number of cycles; and

repeat the detecting the indication of a skew and adjusting the variable delay line.

23. The method of claim 6 , further comprising:

determining that there is a skew in the data signal when the values occurring before and after the potential transition edge of the at least one sample are different.

24. The method of claim 23 , wherein adjusting the variable delay line comprises:

incrementing the delay associated with the variable delay line when the at least one sample corresponding to the potential transition edge is the same as a following sample in the subset of samples; and

decrementing the delay associated with the variable delay line when the at least one sample corresponding to the potential transition edge is the same as a previous sample in the subset of samples.

25. The method of claim 9 , further comprising:

making a skew decision for each of the two or more selected subsets, the skew decision corresponding to a decision to increment or decrement the delay associated with the variable delay line; and

adjusting the variable delay line only when the skew decision made for each of the two or more selected subsets is the same.

26. The apparatus of claim 17 , wherein the controller is further configured to determine that there is a skew in the data signal when the values occurring before and after the potential transition edge of the at least one sample are different.

27. The apparatus of claim 26 , wherein in adjusting the variable delay line, the controller is further configured to:

increment the delay associated with the variable delay line when the at least one sample corresponding to the potential transition edge is same as a following sample in the subset of samples; and

decrement the delay associated with the variable delay line when the at least one sample corresponding to the potential transition edge is same as a previous sample in the subset of samples.

28. The apparatus of claim 12 , wherein in detecting an indication of skew between the data signal and the corresponding clock signal, the controller is further configured to:

select two or more subsets of samples acquired by the oversampling;

make a skew decision for each of the two or more selected subsets, the skew decision corresponding to a decision to increment or decrement a delay associated with the variable delay line; and

further adjust the variable delay line coupled to the data signal based on the indication of skew detected and only when the skew decision made for each of the two or more selected subsets is the same.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CERTIFICATE OF CONVERSION AND CERTIFICATE OF FORMATION Recorded Oct 2, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047185/0422 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
SECURITY AGREEMENT Recorded Aug 17, 2016
From: CAVIUM, INC.; CAVIUM NETWORKS LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 039715/0449 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2014
From: XANTHOPOULOS, THUCYDIDES; LIN, DAVID D.; THOENES, EDWARD W.
To: CAVIUM, INC.
Reel/Frame 031964/0549 →