IP Library Granted Patent US 10,467,171
Granted Patent B2
US 10,467,171 · App. 14/339,377 · Granted Nov 5, 2019

Detecting the drift of the data valid window in a transaction

Inventors: Kai Dieffenbach (Egelsbach, DE); Uwe Moslehner (Dreieich, DE); Jasmin Kotoric (Darmstadt, DE)
Assignee: Cypress Semiconductor Corporation
G06F13/4068G06F1/08G06F9/466H04L7/0033
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 10,467,171
App. No.
14/339,377
Granted
Nov 5, 2019
Kind
B2
Abstract

Disclosed herein are system, apparatus, article of manufacture, method and/or computer program product embodiments for detecting the drift of the data valid window in a transaction. An embodiment operates by configuring a data capture range comprising data capture points, measuring values of a signal at the data capture points, and detecting the drift of the data valid window based on the values at the data capture points.

Claims (67)

1. A method, comprising:

obtaining a data learning pattern prior to a transaction, the transaction comprising reception of a data frame;

configuring a width of a data capture range based on the data learning pattern, the data capture range comprising a time period which comprises data capture points;

measuring values of a signal at the data capture points;

detecting a drift of the data valid window based on the values at the data capture points;

recording in a counter a number of times a same measured value occurs in a series of data capture ranges including the data capture range; and

recovering data in the data frame in response to detecting that the recorded number exceeds a limit.

2. The method of claim 1 , further comprising:

reconfiguring the data capture range in response to detecting the drift.

3. The method of claim 2 , the reconfiguring further comprising:

shifting the time period of the data capture range relative to a clock signal.

4. The method of claim 3 , the reconfiguring further comprising:

determining an amount of the shifting based on the values at the data capture points.

5. The method of claim 2 , the reconfiguring further comprising:

reconfiguring the data capture range after stopping and before restarting the transaction, wherein recovering data in the data frame comprises the restarting the transaction.

6. The method of claim 1 , wherein:

the data capture points comprise at least a left data capture point, a right data capture point, and an interior data capture point between the left and right data capture points,

detecting the drift further comprises determining that the data valid window has drifted if a first value at the left data capture point or a second value at the right data capture point is different than a third value at the interior data capture point; and

the method further comprises detecting corruption of the data frame if the third value is different than each of the first value and the second value.

7. A system, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

obtain a data learning pattern prior to a transaction comprising reception of a data frame;

configure a width of a data capture range based on the data learning pattern, the data capture range comprising a time period which comprises data capture points;

measure values of a signal at the data capture points;

detect a drift of a data valid window based on the values at the data capture points;

record in a counter a number of times a same measured value occurs in a series of data capture ranges including the data capture range; and

recover data in the data frame in response to detecting that the recorded number exceeds a limit.

8. The system of claim 7 , the at least one processor further configured to:

reconfigure the data capture range in response to detecting the drift.

9. The system of claim 8 , wherein to reconfigure further comprises:

shift the time period of the data capture range relative to a clock signal.

10. The system of claim 9 , wherein to reconfigure further comprises:

determine an amount of the shift based on the values at the data capture points.

11. The system of claim 8 , wherein the at least one processor is further configured to:

reconfigure the data capture range after stopping and before restarting the transaction.

12. The system of claim 7 , wherein the data capture points comprise at least a left data capture point, a right data capture point, and an interior data capture point between the left and right data capture points, and wherein the at least one processor is configured to:

determine that the data valid window has drifted if a first value at the left data capture point or a second value at the right data capture point is different than a third value at the interior data capture point.

13. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, causes the at least one computing device to perform operations comprising:

obtaining a data learning pattern, prior to a transaction, the transaction comprising reception of a data frame;

configuring a width of a data capture range based on the data learning pattern, the data capture range comprising a time period which comprises data capture points;

measuring values of a signal at the data capture points;

detecting a drift of a data valid window based on the values at the data capture points;

recording in a counter a number of times a same measured value occurs in a series of data capture ranges including the data capture range; and

recovering data in the data frame in response to detecting that the recorded number exceeds a limit.

14. The computer-readable device of claim 13 , the operations further comprising:

reconfiguring the data capture range in response to detecting the drift.

15. The computer-readable device of claim 14 , the reconfiguring further comprising:

shifting the time period of the data capture range relative to a clock signal.

16. The computer-readable device of claim 15 , the reconfiguring further comprising:

determining an amount of the shifting based on the values at the data capture points.

17. The computer-readable device of claim 14 , the operations further comprising:

reconfiguring the data capture range after stopping and before restarting the transaction.

18. The computer-readable device of claim 13 , wherein the data capture points comprise at least a left data capture point, a right data capture point, and an interior data capture point between the left and right data capture points, and the operations further comprising:

determining that the data valid window has drifted if a first value at the left data capture point or a second value at the right data capture point is different than a third value at the interior data capture point.

19. The method of claim 2 , the reconfiguring further comprising:

reconfiguring the data capture range during the transaction.

20. The method of claim 3 , the shifting further comprising:

shifting the time period relative to a clock signal by a predetermined amount of time.

21. The system of claim 8 , wherein the at least one processor is further configured to:

reconfigure the data capture range during the transaction.

22. The system of claim 9 , wherein to reconfigure further comprises:

shifting the time period relative to a clock signal by a predetermined amount of time.

23. The computer-readable device of claim 14 , the operations further comprising:

reconfiguring the data capture range during the transaction.

24. The computer-readable device of claim 15 , the reconfiguring further comprising:

shifting the time period relative to a clock signal by a predetermined amount of time.

Assignments (7)
MERGER Recorded Nov 14, 2025
From: CYPRESS SEMICONDUCTOR CORPORATION
To: INFINEON TECHNOLOGIES AMERICAS CORP.
Reel/Frame 073571/0456 →
RELEASE OF SECURITY INTEREST Recorded Mar 16, 2022
From: MUFG UNION BANK, N.A.
To: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
Reel/Frame 059410/0438 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 8647899 PREVIOUSLY RECORDED ON REEL 035240 FRAME 0429. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTERST. Recorded Nov 3, 2020
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058002/0470 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Oct 28, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MUFG UNION BANK, N.A.
Reel/Frame 050896/0366 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 12, 2015
From: SPANSION LLC
To: CYPRESS SEMICONDUCTOR CORPORATION
Reel/Frame 035902/0641 →
SECURITY INTEREST Recorded Mar 21, 2015
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 035240/0429 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2014
From: DIEFFENBACH, KAI; MOSLEHNER, UWE; KOTORIC, JASMIN
To: SPANSION LLC
Reel/Frame 033384/0449 →
Continuity (1)
Related Publication 20160026593A1 · Jan 28, 2016