IP Library Granted Patent US 8,630,382
Granted Patent B2
US 8,630,382 · App. 12/413,101 · Granted Jan 14, 2014

Asynchronous data recovery methods and apparatus

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 8,630,382
App. No.
12/413,101
Granted
Jan 14, 2014
Kind
B2
Abstract

Embodiments of data recovery apparatus include oscillators, edge detection circuitry, and data storage. The oscillators generate data detection signals, which convey first series of pulses during time periods for which a serial bit stream conveys a logical 1, and second series of pulses during time periods for which the serial bit stream conveys a logical 0. The edge detection circuitry detects transition edges of the first and second series of pulses, and generates data storage signals that include first indications of detected transition edges in the first series of pulses and second indications of detected transition edges in the second series of pulses. In response to receiving a first indication, a logical 1 is written into an unmasked subset of data storage bit locations. In response to receiving a second indication, a logical 0 is written into the unmasked subset of bit locations.

Claims (64)

1. A data recovery apparatus comprising:

a plurality of oscillators adapted to receive a serial bit stream, and to generate data detection signals conveying first series of pulses during first time periods for which the serial bit stream conveys a logical 1, and conveying second series of pulses during second time periods for which the serial bit stream conveys a logical 0;

edge detection circuitry operatively coupled with the plurality of oscillators, wherein the edge detection circuitry is adapted to receive the data detection signals, to detect transition edges of the first series of pulses and the second series of pulses within the data detection signals, and to generate data storage signals that include first indications of detected transition edges in the first series of pulses and second indications of detected transition edges in the second series of pulses; and

first data storage operatively coupled with the edge detection circuitry, wherein the first data storage includes a plurality of bit locations, and the first data storage is adapted to receive the data storage signals, to write a logical 1 into an unmasked subset of the plurality of bit locations in response to receiving a first indication of a detected transition edge in the first series of pulses, and to write a logical 0 into the unmasked subset of the plurality of bit locations in response to receiving a second indication of a detected transition edge in the second series of pulses.

2. The data recovery apparatus of claim 1 , wherein the data detection signals include a positive data detection signal and a negative data detection signal, and the plurality of oscillators comprises:

a positive pulse oscillator adapted to receive the serial bit stream and to generate the positive data detection signal with the first series of pulses; and

a negative pulse oscillator adapted to receive the serial bit stream and to generate the negative data detection signal with the second series of pulses.

3. The data recovery apparatus of claim 2 , wherein the plurality of oscillators further comprises:

a tuning oscillator operatively coupled with the positive pulse oscillator and with the negative pulse oscillator, and adapted to tune the positive pulse oscillator and the negative pulse oscillator, wherein tuning by the tuning oscillator occurs simultaneously with data recovery processes implemented by the positive pulse oscillator and the negative pulse oscillator.

4. The data recovery apparatus of claim 2 , wherein the positive pulse oscillator comprises:

an exclusive OR (XOR) logic element adapted to receive and apply an XOR operation to the serial bit stream and a full-period-delayed bit stream in order to produce an XOR-modified bit stream;

a first delay element adapted to delay the XOR-modified bit stream by a first period of time that corresponds to a first portion of a bit period in order to produce a delayed, XOR-modified bit stream, which is output as the positive data detection signal; and

a second delay element adapted to delay the delayed, XOR-modified bit stream by a second period of time that corresponds to a second portion of the bit period in order to produce the full-period-delayed bit stream.

5. The data recovery apparatus of claim 2 , wherein the negative pulse oscillator comprises:

an exclusive NOR (XNOR) logic element adapted to receive and apply an XNOR operation to the serial bit stream and a full-period-delayed bit stream in order to produce an XNOR-modified bit stream;

a first delay element adapted to delay the XNOR-modified bit stream by a first period of time that corresponds to a first portion of a bit period in order to produce a delayed, XNOR-modified bit stream, which is output as the negative data detection signal; and

a second delay element adapted to delay the delayed, XNOR-modified bit stream by a second period of time that corresponds to a second portion of the bit period in order to produce the full-period-delayed bit stream.

6. The data recovery apparatus of claim 2 , wherein the data storage signals include a store logical 1 signal and a store logical 0 signal, and the edge detection circuitry comprises:

a first edge detection circuit operatively coupled with the positive pulse oscillator, wherein the first edge detection circuit is adapted to receive the positive data detection signal, to detect transition edges in the positive data detection signal, and to generate the store logical 1 signal with the first indications; and

a second edge detection circuit operatively coupled with the negative pulse oscillator, wherein the second edge detection circuit is adapted to receive the negative data detection signal, to detect transition edges in the negative data detection signal, and to generate the store logical 0 signal with the second indications.

7. The data recovery apparatus of claim 1 , further comprising:

a logic block operatively coupled with the edge detection circuitry, wherein the logic block is adapted to receive the data storage signals, and to generate a trigger signal that includes a round-robin mask trigger for each of the first indications and the second indications; and

a round-robin masking circuit operatively coupled with the logic block, wherein the round-robin masking circuit is adapted to receive the trigger signal, to maintain a write mask that indicates the unmasked subset of the plurality of bit locations, and to shift the write mask each time a round-robin mask trigger is received in the trigger signal.

8. The data recovery apparatus of claim 7 , further comprising:

a clock gating circuit adapted to receive a clock trigger, and in response to receiving the clock trigger, to initiate a synchronous data fetch from the first data storage by providing a clock signal;

a modulo ring counter adapted to detect a clock pulse in the clock signal, and in response to the detected clock pulse, to provide a select signal to a multiplexer;

the multiplexer adapted to access one or more data lines from the first data storage that correspond to bit locations indicated by the select signal; and

a synchronous shift register adapted to detect the clock pulse in the clock signal, and in response to the detected clock pulse, to clock data present on the one or more data lines into the synchronous shift register.

9. The data recovery apparatus of claim 1 , further comprising:

a glitch filter operatively coupled to the plurality of oscillators, wherein the glitch filter is adapted to receive an incoming bit stream, and to filter out glitches in the incoming bit stream in order to generate the serial bit stream for the plurality of oscillators.

10. The data recovery apparatus of claim 1 , wherein the first data storage includes a type of data storage selected from a group consisting of set-reset latches, high-speed memory, and a register file.

11. A data recovery apparatus comprising:

a first oscillator adapted to receive a serial bit stream and to generate a first data detection signal based on the serial bit stream, wherein the first oscillator conveys oscillations in the first data detection signal during first time periods for which the serial bit stream conveys a relatively high voltage level;

a second oscillator adapted to receive the serial bit stream and to generate a second data detection signal based on the serial bit stream, wherein the second oscillator conveys oscillations in the second data detection signal during second time periods for which the serial bit stream conveys a relatively low voltage level;

edge detection circuitry operatively coupled with the first and second oscillators, wherein the edge detection circuitry is adapted to receive the first and second data detection signals, to detect transition edges within the first and second data detection signals, and to generate data storage signals that include first indications of detected transition edges in the first data detection signal and second indications of detected transition edges in the second data detection signal; and

temporary storage operatively coupled with the edge detection circuitry, wherein the temporary storage includes a plurality of bit locations, and the temporary storage is adapted to receive the data storage signals, to write a logical 1 into a subset of the plurality of bit locations in response to receiving a first indication of a detected transition edge in the first data detection signal, and to write a logical 0 into the subset of the plurality of bit locations in response to receiving a second indication of a detected transition edge in the second data detection signal.

12. The data recovery apparatus of claim 11 , further comprising:

a tuning oscillator operatively coupled with the first and second oscillators, and adapted to tune the first and second oscillators, wherein tuning by the tuning oscillator occurs simultaneously with data recovery processes implemented by the first and second oscillators.

13. The data recovery apparatus of claim 11 , wherein the data storage signals include a store logical 1 signal and a store logical 0 signal, and the edge detection circuitry comprises:

a first edge detection circuit operatively coupled with the first oscillator, wherein the first edge detection circuit is adapted to receive the first data detection signal, to detect transition edges in the first data detection signal, and to generate the store logical 1 signal with the first indications; and

a second edge detection circuit operatively coupled with the second oscillator, wherein the second edge detection circuit is adapted to receive the second data detection signal, to detect transition edges in the second data detection signal, and to generate the store logical 0 signal with the second indications.

14. The data recovery apparatus of claim 11 , further comprising:

a logic block operatively coupled with the edge detection circuitry, wherein the logic block is adapted to receive the data storage signals, and to generate a trigger signal that includes a round-robin mask trigger for each of the first indications and the second indications; and

a round-robin masking circuit operatively coupled with the logic block, wherein the round-robin masking circuit is adapted to receive the trigger signal, to maintain a write mask that indicates masked bit locations and unmasked bit locations of the plurality of bit locations of the temporary storage, wherein the unmasked bit locations correspond to the subset of the plurality of bit locations, and wherein the round-robin masking circuit is also adapted to shift the write mask each time a round-robin mask trigger is received in the trigger signal.

15. The data recovery apparatus of claim 11 , wherein the temporary storage comprises:

a plurality of set-reset latches, wherein a set control input of each of the set-reset latches is operatively coupled to receive the first indications, and a reset control input of each of the set-reset latches is operatively coupled to receive the second indications.

16. A method for asynchronously detecting data in a serial bit stream, the method comprising the steps of:

generating, by a first oscillator, a first data detection signal based on the serial bit stream, wherein the first data detection signal is generated to convey oscillations during first time periods for which the serial bit stream conveys a relatively high voltage level;

generating, by a second oscillator, a second data detection signal based on the serial bit stream, wherein the second data detection signal is generated to convey oscillations during second time periods for which the serial bit stream conveys a relatively low voltage level;

generating, by first circuitry, first indications of detected transition edges in the first data detection signal and second indications of detected transition edges in the second data detection signal;

storing, in temporary storage, a logical 1 into an unmasked bit location of a plurality of bit locations of the temporary storage in response to each of the first indications; and

storing, in the temporary storage, a logical 0 into the unmasked bit location of the plurality of bit locations in response to each of the second indications.

17. The method of claim 16 , wherein:

generating the first indications comprises detecting, by the first circuitry, transition edges in the first data detection signal, and generating a store logical 1 signal with a first indication for each of the detected transition edges in the first data detection signal; and

generating the second indications comprises detecting, by the first circuitry, transition edges in the second data detection signal, and generating a store logical 0 signal with a second indication for each of the detected transition edges in the second data detection signal.

18. The method of claim 16 , further comprising:

maintaining, by second circuitry, a write mask that indicates the unmasked bit location of the plurality of bit locations;

generating, by third circuitry, a trigger signal that includes a round-robin mask trigger for each of the first indications and the second indications; and

shifting, by the second circuitry, the write mask in response to the round-robin mask trigger, in order to indicate a different unmasked bit location of the plurality of bit locations.

19. The method of claim 16 , further comprising:

tuning, by a tuning oscillator, the first and second oscillators simultaneously with data recovery processes implemented by the first and second oscillators.

20. The method of claim 16 , further comprising:

providing, by second circuitry, a trigger signal indicating that data stored within the temporary storage is considered to be stable; and

initiating, by third circuitry, fetching of the data from the temporary storage when the third circuitry receives the trigger signal.

Assignments (26)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
MERGER Recorded Jan 3, 2017
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 041144/0363 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0793 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →
SECURITY AGREEMENT Recorded Jun 18, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030633/0424 →
SECURITY AGREEMENT Recorded May 19, 2009
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 022703/0405 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2009
From: OAKLEY, JOHN R.; PADMANABHAN, UDAY; SONI, SAMIR J.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 022566/0016 →