# US 9,437,279 B2 · Memory controller with clock-to-strobe skew compensation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,437,279 B2
- Document ID: US9437279B2
- Status: Granted
- Kind: B2
- Application number: 14/951,190
- Filed: 2015-11-24
- Published: 2016-05-26
- Granted: 2016-09-06
- Earliest claimed: 2004-09-15
- Assignees: Rambus Inc.
- Applicants: Rambus Inc.
- Inventors: Frederick A. Ware
- Web page: https://patentgrep.com/patent/US9437279B2

## CPC

- G11C 11/4076: Timing circuits (for regeneration management G11C11/406)
- G06F 1/10: Distribution of clock signals {, e.g. skew}
- G06F 13/1689: {Synchronisation and timing concerns (synchronisation on a memory bus G06F13/4234)}
- G06F 13/4243: {with synchronous protocol}
- G11C 7/1072: {for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories}
- G11C 7/22: Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C 8/18: Address timing or clocking circuits; Address control signal generation or management, e.g. for row address strobe [RAS] or column address strobe [CAS] signals
- G11C 11/409: Read-write [R-W] circuits
- G11C 2207/2254: Calibration
- G11C: STATIC STORES (semiconductor memory devices H10B)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A clock signal is transmitted to first and second integrated circuit (IC) components via a clock signal line, the clock signal having a first arrival time at the first IC component and a second, later arrival time at the second IC component. A write command is transmitted to the first and second IC components to be sampled by those components at respective times corresponding to transitions of the clock signal, and write data is transmitted to the first and second IC components in association with the write command. First and second strobe signals are transmitted to the first and second IC components, respectively, to time reception of the first and second write data in those components. The first and second strobe signals are selected from a plurality of phase-offset timing signals to compensate for respective timing skews between the clock signal and the first and second strobe signals.

## Claims

### Claim 1

A method of operation within an memory controller integrated circuit (IC) that controls operation of a memory IC, the method comprising:
outputting a first timing signal to a memory IC via a first timing signal line;
performing a timing calibration operation, including:
outputting a sequence of differently delayed calibration data timing signals to the memory IC via a second timing signal line,
identifying one of the calibration data timing signals that compensates for a difference in signal propagation times over the first and second timing signal lines, and
selecting, as a write timing delay, a delay value applied to generate the identified one of the calibration data timing signals; and
outputting signals to perform a write operation, including:
outputting address/control signals to be sampled by the memory IC at a time or times corresponding to one or more transitions of the first timing signal,
outputting write data to the memory IC in association with the address/control signals, and
outputting a write data timing signal, delayed according to the write timing delay, to the memory IC via the second timing signal line to time reception of the write data therein.

### Claim 2 (depends on 1)

The method of claim 1 wherein identifying the one of the calibration data timing signals that compensates for the difference in signal propagation times over the first and second timing signal lines comprises identifying one of the calibration data timing signals that compensates for the difference in signal propagation times over the first and second timing signal lines better than others of the calibration data timing signals.

### Claim 3 (depends on 1)

The method of claim 1 wherein identifying the one of the calibration data timing signals that compensates for the difference in signal propagation times over the first and second timing signal lines comprises identifying one of the calibration data timing signals that yields, at the first memory IC, a smaller timing mismatch with respect to the first timing signal at the first memory IC, than others of the calibration data timing signals.

### Claim 4 (depends on 3)

The method of claim 3 wherein the timing mismatch with respect to the first timing signal at the first memory IC comprises, for each of the calibration data timing signals, a time interval between respective transitions of the calibration data timing signal and the first timing signal.

### Claim 5 (depends on 1)

The method of claim 1 further comprising outputting signals to perform a sequence of dummy write operations as part of the timing calibration operation and wherein transmitting the sequence of differently delayed calibration data timing signals to the memory IC via the second timing signal line comprises transmitting each of the calibration data timing signals to the memory IC via the second timing signal line as part of a respective one of the dummy write operations.

### Claim 6 (depends on 5)

The method of claim 5 wherein outputting signals to perform a sequence of dummy write operations as part of the timing calibration operation comprises outputting a plurality of calibration data sequences, each calibration data sequence to be received by the memory IC in response to transitions of a respective one of the calibration data timing signals.

### Claim 7 (depends on 6)

The method of claim 6 further comprising, as part of performing the timing calibration operation, reading back each of the calibration data sequences from the memory IC and comparing each of the calibration data sequences read back from the memory IC with the corresponding calibration data sequence output to the memory IC to ascertain whether a successful dummy write operation was executed with respect to the calibration data sequence.

### Claim 8 (depends on 1)

The method of claim 1 wherein outputting the sequence of differently delayed calibration data timing signals comprises selecting, during each of a sequence of time intervals, an output of a respective delay element within a chain of delay elements and transmitting the output of the respective delay element onto the second timing signal line.

### Claim 9 (depends on 8)

The method of claim 8 further comprising controlling propagation delay through each delay element within the chain of delay elements using a locked-loop control circuit to establish respective phase-offsets between the differently calibration data timing signals.

### Claim 10 (depends on 8)

The method of claim 8 wherein outputting the sequence of differently delayed calibration data timing signals comprises propagating an internal timing signal through the chain of delay elements, and wherein outputting the first timing signal via the first timing signal line comprises transmitting the internal timing signal via the first timing signal line.

### Claim 11

A memory controller integrated circuit (IC) comprising:
first timing circuitry to outputting a first timing signal to a memory IC via a first timing signal line;
calibration circuitry to perform a timing calibration operation, including circuitry to:
output a sequence of differently delayed calibration data timing signals to the memory IC via a second timing signal line,
identify one of the calibration data timing signals that compensates for a difference in signal propagation times over the first and second timing signal lines, and
select, as a write timing delay, a delay value applied to generate the identified one of the calibration data timing signals; and
write circuitry to perform a write operation, including circuitry to:
output address/control signals to be sampled by the memory IC at a time or times corresponding to one or more transitions of the first timing signal,
output first write data to the memory IC in association with the address/control signals, and
output a write data timing signal, delayed according to the write timing delay, to the memory IC via the second timing signal line to time reception of the write data therein.

### Claim 12 (depends on 11)

The memory controller IC of claim 11 wherein the circuitry to identify the one of the calibration data timing signals that compensates for the difference in signal propagation times over the first and second timing signal lines comprises circuitry to identify one of the calibration data timing signals that compensates for the difference in signal propagation times over the first and second timing signal lines better than others of the calibration data timing signals.

### Claim 13 (depends on 11)

The memory controller IC of claim 11 wherein the circuitry to identify the one of the calibration data timing signals that compensates for the difference in signal propagation times over the first and second timing signal lines comprises circuitry to identify one of the calibration data timing signals that yields, at the first memory IC, a smaller timing mismatch with respect to the first timing signal at the first memory IC, than others of the calibration data timing signals.

### Claim 14 (depends on 13)

The memory controller IC of claim 13 wherein the timing mismatch with respect to the first timing signal at the first memory IC comprises, for each of the calibration data timing signals, a time interval between respective transitions of the calibration data timing signal and the first timing signal.

### Claim 15 (depends on 11)

The memory controller IC of claim 11 wherein the calibration circuitry further comprises circuitry to perform a sequence of dummy write operations as part of the timing calibration operation and wherein the circuitry to transmit the sequence of differently delayed calibration data timing signals to the memory IC via the second timing signal line comprises circuitry to transmit each of the calibration data timing signals to the memory IC via the second timing signal line as part of a respective one of the dummy write operations.

### Claim 16 (depends on 15)

The memory controller IC of claim 15 wherein the circuitry to perform a sequence of dummy write operations as part of the timing calibration operation comprises circuitry to output a plurality of calibration data sequences, each calibration data sequence to be received by the memory IC in response to transitions of a respective one of the calibration data timing signals.

### Claim 17 (depends on 16)

The memory controller IC of claim 16 wherein the calibration circuitry further comprises circuitry to read back each of the calibration data sequences from the memory IC and compare each of the calibration data sequences read back from the memory IC with the corresponding calibration data sequence output to the memory IC to ascertain whether a successful dummy write operation was executed with respect to the calibration data sequence.

### Claim 18 (depends on 11)

The memory controller IC of claim 11 further comprising a chain of delay elements and wherein the circuitry to output the sequence of differently delayed calibration data timing signals comprises circuitry to selecting, during each of a sequence of time intervals, an output of a respective delay element within the chain of delay elements and transmit the output of the respective delay element onto the second timing signal line.

### Claim 19 (depends on 18)

The memory controller IC of claim 18 further comprising a locked-loop control circuit to control propagation delay through each delay element within the chain of delay elements to establish respective phase-offsets between the differently calibration data timing signals.

### Claim 20

A memory controller integrated circuit (IC) comprising
means for outputting a first timing signal to a memory IC via a first timing signal line;
means for performing a timing calibration operation, including:
means for outputting a sequence of differently delayed calibration data timing signals to the memory IC via a second timing signal line,
means for identifying one of the calibration data timing signals that compensates for a difference in signal propagation times over the first and second timing signal lines, and
means for selecting, as a write timing delay, a delay value applied to generate the identified one of the calibration data timing signals; and
means for outputting signals to perform a write operation, including:
means for outputting address/control signals to be sampled by the memory IC at a time or times corresponding to one or more transitions of the first timing signal,
means for outputting write data to the memory IC in association with the address/control signals, and
means for outputting a write data timing signal, delayed according to the write timing delay, to the memory IC via the second timing signal line to time reception of the write data therein.
