IP Library Granted Patent US 10,411,719
Granted Patent B1
US 10,411,719 · App. 16/051,374 · Granted Sep 10, 2019

Direct measurement delay calibration method 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 10,411,719
App. No.
16/051,374
Granted
Sep 10, 2019
Kind
B1
Abstract

Disclosed are methods and apparatuses for providing direct measurement delay calibration. An apparatus may include a plurality of delay elements in a loop. The apparatus may also include a controller coupled to the plurality of delay elements. The controller may be configured to cause determining, for a predetermined time period, delay oscillations from the plurality of delay elements in the loop. The controller may also be configured to cause determining, based on the determined delay oscillations, the predetermined time period, and a quantity of the plurality of delay elements, a subset of the plurality of delay elements for delaying an input signal. The controller may also be configured to cause routing the input signal through the subset of the plurality of delay elements.

Claims (47)

1. An apparatus, comprising:

a plurality of delay elements in a loop; and

a controller coupled to the plurality of delay elements,

wherein the controller is configured to cause:

determining, for a predetermined time period, delay oscillations from the plurality of delay elements in the loop;

determining, based on the determined delay oscillations, the predetermined time period, and a quantity of the plurality of delay elements, a subset of the plurality of delay elements for delaying an input signal; and

routing the input signal through the subset of the plurality of delay elements.

2. The apparatus of claim 1 , wherein the controller is configured to cause determining the subset of the plurality of delay elements based on a predetermined delay setting for the input signal.

3. The apparatus of claim 1 , wherein the input signal is one of a plurality of input signals, and wherein the controller is configured to cause routing each of the plurality of input signals through independent subsets of the plurality of delay elements.

4. The apparatus of claim 1 , wherein the plurality of delay elements include a first maximum number of delay elements allocated for a clock signal and a second maximum number of delay elements allocated for each of one or more data signals, wherein the first maximum number is greater than the second maximum number.

5. The apparatus of claim 1 , wherein the loop comprises a ring oscillator.

6. The apparatus of claim 1 , wherein the controller is configured to cause the determining the subset of the plurality of delay elements by:

determining a delay time of a delay element of the plurality of delay elements based on the determined delay oscillations, the predetermined time period, and the quantity of the plurality of delay elements; and

determining, based on the delay time, the subset of the plurality of delay elements for delaying the input signal.

7. The apparatus of claim 6 , wherein the controller is configured to repeat the determining of the delay time of the delay element when a data bus coupled to the controller is idle.

8. The apparatus of claim 1 , wherein the quantity of the plurality of delay elements is based on a predetermined adjustment range for the input signal.

9. The apparatus of claim 1 , wherein the predetermined time period is based on meeting an accuracy threshold for delaying the input signal according to a predetermined delay setting for the input signal.

10. The apparatus of claim 1 , wherein the controller is coupled to a data bus that is coupled to one or more memory devices.

11. A method, comprising:

determining, for a predetermined time period, delay oscillations from a plurality of delay elements in a loop;

determining a delay time of a delay element of the plurality of delay elements based on the determined delay oscillations, the predetermined time period, and a quantity of the plurality of delay elements;

determining, based on the delay time, a subset of the plurality of delay elements for delaying an input signal; and

routing the input signal through the subset of the plurality of delay elements.

12. The method of claim 11 , wherein determining the subset of the plurality of delay elements is based on a predetermined delay setting for the input signal.

13. The method of claim 11 , wherein the input signal is one of a plurality of input signals, wherein the method comprises routing each of the plurality of input signals through independent subsets of the plurality of delay elements, and wherein routing each of the plurality of input signals comprises routing the input signal.

14. The method of claim 11 , wherein the plurality of delay elements include a first maximum number of delay elements allocated for a clock signal and a second maximum number of delay elements allocated for each of one or more data signals, wherein the first maximum number is greater than the second maximum number.

15. An apparatus, comprising:

a plurality of delay elements having an input and an output;

a first inverter coupled to the output of the plurality of delay elements and coupled to the input of the plurality of delay elements; and

a controller coupled to the plurality of delay elements and the first inverter,

wherein the controller is configured to cause:

determining, for a predetermined time period, delay oscillations from the plurality of delay elements and the first inverter;

determining, based on the determined delay oscillations, the predetermined time period, and a quantity of the plurality of delay elements, a subset of the plurality of delay elements for delaying an input signal; and

routing the input signal through the subset of the plurality of delay elements.

16. The apparatus of claim 15 , wherein the controller comprises a counter for counting the delay oscillations.

17. The apparatus of claim 16 , wherein the controller comprises a second controller configured to cause determining the subset of the plurality of delay elements based on a predetermined delay setting for the input signal.

18. The apparatus of claim 17 , further comprising a second inverter coupled to the first inverter, wherein the second controller and the second inverter are coupled to a logic gate for outputting a counter clock to the counter.

19. A non-transitory machine-readable medium including machine-executable instructions thereon that, when executed by a processor, perform a method comprising:

determining, for a predetermined time period, delay oscillations from a plurality of delay elements in a loop;

determining a delay time of a delay element of the plurality of delay elements based on the determined delay oscillations, the predetermined time period, and a quantity of the plurality of delay elements;

determining, based on the delay time, a subset of the plurality of delay elements for delaying an input signal; and

causing the input signal to be routed through the subset of the plurality of delay elements.

20. An apparatus, comprising:

means for determining, for a predetermined time period, delay oscillations from a plurality of delay elements in a loop;

means for determining a delay time of a delay element of the plurality of delay elements based on the determined delay oscillations, the predetermined time period, and a quantity of the plurality of delay elements;

means for determining, based on the delay time, a subset of the plurality of delay elements for delaying an input signal; and

means for routing the input signal through the subset of the plurality of delay elements.

Assignments (10)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2018
From: ELLIOTT, MARK
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 046531/0116 →