IP Library Granted Patent US 8,843,778
Granted Patent B2
US 8,843,778 · App. 14/023,630 · Granted Sep 23, 2014

Dynamically calibrated DDR memory controller

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,843,778
App. No.
14/023,630
Granted
Sep 23, 2014
Kind
B2
Abstract

A method for calibrating a DDR memory controller is described. The method provides an optimum delay for a core clock delay element to produce an optimum capture clock signal. The method issues a sequence of read commands so that a delayed version of a dqs signal toggles continuously. The method delays a core clock signal to sample the delayed dqs signal at different delay increments until a 1 to 0 transition is detected on the delayed dqs signal. This core clock delay is recorded as “A.” The method delays the core clock signal to sample the core clock signal at different delay increments until a 0 to 1 transition is detected on the core clock signal. This core clock delay is recorded as “B.” The optimum delay value is computed from the A and B delay values.

Claims (36)

1. A method for calibrating a DDR memory controller circuit from time to time in conjunction with functional operation of a memory circuit to provide an optimum delay for a core clock delay element to produce an optimum capture clock signal, comprising the steps of:

issuing a sequence of read commands so that a delayed dqs signal toggles continuously;

delaying a core clock signal to sample the delayed dqs signal at different delay increments until a 1 to 0 transition is detected on the delayed dqs signal, whereby this core clock delay is recorded as “A”;

delaying the core clock signal to sample the core clock signal at different delay increments until a 0 to 1 transition is detected on the core clock signal, whereby this core clock delay is recorded as “B”; and

computing an optimum delay value as a function of “A” and “B” core clock delay values.

2. The method of claim 1 wherein the delayed dqs signal is continuously sampled in a flip-flop wherein said flip-flop is clocked by a delay element that delays the core clock signal.

3. The method of claim 1 wherein the optimum delay value is determined by comparing the value of A with the value of B.

4. The method of claim 3 wherein the optimum delay value is set to the average of A and B if A subtracted from B is greater than A; otherwise the optimum delay value is set to half of A.

5. The method of claim 4 wherein said average and half value is computed to within a closest delay line increment.

6. The method of claim 1 , wherein the method is performed independently and in parallel for each of a plurality of byte lanes.

7. A method for calibrating a DDR memory controller circuit

from time to time in conjunction with functional operation of a memory circuit to provide optimum CAS latency compensation, comprising the steps of:

setting a delay for a core clock signal to a previously determined value that produces an optimum delay for a capture clock signal;

determining that a known data pattern exists in memory;

reading the known data pattern previously saved or located in a DDR memory connected to a device containing the DDR memory controller;

iteratively capturing read data from the DDR memory at different CAS latency compensation values from a minimum to a maximum CAS latency compensation value;

when the read data matches an expected data value at a specific CAS latency compensation value, recording the specific CAS latency compensation value as the optimum CAS latency compensation value; and

programming control settings within the DDR memory controller that produced the optimum CAS latency compensation into control registers in the DDR memory controller.

8. The method of claim 7 wherein if the known data pattern is not found in DDR memory, locating a free segment in the DDR memory and writing a known data pattern to the free segment in the DDR memory.

9. The method of claim 8 wherein if a free segment in the DDR memory is not available, preserving memory contents prior to writing the known data pattern.

10. The method of claim 9 wherein said preservation occurs by copying DDR memory contents to memory associated with the memory controller or another available memory location, and restoring the preserved data contents at the conclusion of the method.

11. The method of claim 7 wherein determining the optimum CAS latency compensation value further comprises:

operating data paths through flip-flops controlled at least in part by counters, the flip flops in turn feeding data comparators.

12. The method of claim 11 , wherein the data comparators compare delayed read data with an expected data value.

13. The method of claim 12 , wherein the expected data value is stored within a host device containing the DDR memory controller circuit.

14. The method of claim 7 , wherein iteratively capturing read data from the DDR memory at different CAS latency compensation values, comprises altering CAS latency from a minimum to a maximum CAS latency compensation value.

15. A method for calibrating a DDR memory controller circuit from time to time in conjunction with operation of a memory circuit to provide an optimum delay for a core clock delay element to produce an optimum capture clock signal, comprising the steps of:

issuing a sequence of read commands so that a delayed version of a dqs signal toggles continuously;

delaying a core clock signal, and using the delayed core clock signal to sample the delayed dqs signal at different core clock delay increments while recording a number of delay increments corresponding to each of a plurality of transitions on the sampled delayed dqs signal; and

computing an optimum delay value for the core clock delay element to produce an optimum capture clock signal.

16. The method of claim 15 wherein delaying the core clock signal, and using the delayed core clock signal to sample the delayed dqs signal at different core clock delay increments further comprises:

delaying the core clock signal to sample the delayed dqs signal at different delay increments until a 1 to 0 transition is detected on the delayed dqs signal, whereby this core clock delay is recorded as “A”;

delaying the core clock signal to sample the core clock signal at different delay increments until a 0 to 1 transition is detected on the core clock signal, whereby this core clock delay is recorded as “B”; and

computing, as a function of “A” and “B”, an optimum delay value for the core clock delay element to produce an optimum capture clock signal.

17. The method of claim 16 , wherein the method is performed independently and in parallel for each of a plurality of byte lanes.

18. The method of claim 15 , wherein the method is performed independently and in parallel for each of a plurality of byte lanes.

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2026
From: GALLAGHER IP SOLUTIONS LLC
To: UNIQUIFY IP HOLDINGS, LLC
Reel/Frame 073762/0305 →
SECURITY INTEREST Recorded Aug 6, 2024
From: NEWLIGHT CAPITAL, LLC
To: GALLAGHER IP SOLUTIONS LLC
Reel/Frame 068201/0194 →
SECURITY INTEREST Recorded Aug 29, 2023
From: UNIQUIFY, INC.
To: NEWLIGHT CAPITAL LLC, AS SERVICER
Reel/Frame 064740/0469 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY NAME PREVIOUSLY RECORDED ON REEL 031619 FRAME 0319. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 7, 2021
From: LEE, JUNG; GOPALAN, MAHESH
To: UNIQUIFY, INC.
Reel/Frame 056784/0407 →
CERTIFICATE OF MERGER Recorded Jun 30, 2021
From: UNIQUIFY IP COMPANY, LLC
To: UNIQUIFY, INC.
Reel/Frame 057326/0887 →
MERGER Recorded Jun 30, 2021
From: UNIQUIFY IP COMPANY, LLC
To: UNIQUIFY, INC.
Reel/Frame 056725/0939 →
SHORT FORM INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 30, 2021
From: UNIQUIFY, INC.
To: NEWLIGHT CAPITAL LLC, AS SERVICER
Reel/Frame 056728/0317 →
SHORT FORM INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 30, 2021
From: UNIQUIFY, INC.
To: NEWLIGHT CAPITAL LLC, AS SERVICER
Reel/Frame 056729/0519 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INVENTOR'S EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 046813 FRAME: 0080. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Jan 30, 2019
From: UNIQUIFY INC
To: UNIQUIFY IP COMPANY, LLC
Reel/Frame 048193/0693 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2019
From: UNIQUIFY, INC.
To: UNIQUIFY IP COMPANY, LLC
Reel/Frame 048143/0427 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2018
From: UNIQUIFY, INC.
To: UNIQUIFY IP COMPANY, LLC
Reel/Frame 046813/0080 →
RELEASE OF SECURITY INTEREST Recorded Oct 23, 2017
From: MONTAGE CAPITAL II, L.P.
To: UNIQUIFY, INC.
Reel/Frame 043927/0747 →
SECURITY INTEREST Recorded Oct 5, 2014
From: UNIQUIFY, INC.
To: MONTAGE CAPITAL II, L.P.
Reel/Frame 033887/0923 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2013
From: LEE, JUNG; GOPALAN, MAHESH
To: UNIQUIFY, INCORPORATED
Reel/Frame 031619/0319 →