IP Library Granted Patent US 9,166,590
Granted Patent B1
US 9,166,590 · App. 14/162,037 · Granted Oct 20, 2015

Integrated circuits with improved memory interface calibration capabilities

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 9,166,590
App. No.
14/162,037
Granted
Oct 20, 2015
Kind
B1
Abstract

An integrated circuit may include memory interface circuitry that interfaces with memory. The integrated circuit may include calibration circuitry and storage circuitry. The calibration circuitry may have a first configuration in which the calibration circuitry is formed from a first set of programmable logic regions that configure the calibration circuitry to generate and store calibration data at the storage circuitry. The calibration data may include strobe signal phase settings and read enable control signal timing settings. The calibration circuitry may have a second configuration in which the calibration circuitry is formed from a second set of programmable logic regions that configure the calibration circuitry to load the calibration data from the storage circuitry and to interface with the memory based on the calibration data. The calibration circuitry may occupy fewer programmable logic regions on the integrated circuit in the second configuration than in the first configuration.

Claims (54)

1. An integrated circuit, comprising:

memory interface circuitry that interfaces with external memory;

storage circuitry; and

calibration circuitry having a first configuration in which the calibration circuitry includes calibration data generation circuitry that generates and stores calibration data at the storage circuitry and a second configuration in which the calibration circuitry does not include the calibration data generation circuitry and in which the calibration circuitry loads the calibration data from the storage circuitry.

2. The integrated circuit defined in claim 1 wherein the integrated circuit comprises a programmable integrated circuit having programmable logic regions and wherein:

in the first configuration, the calibration circuitry is formed from a first set of the programmable logic regions that are configured to generate and store the calibration data at the storage circuitry; and

in the second configuration, the calibration circuitry is formed from a second set of the programmable logic regions that are configured to load the calibration data from the storage circuitry.

3. The integrated circuit defined in claim 2 , wherein the second set of programmable logic regions comprises fewer programmable logic regions than the first set of programmable logic regions.

4. The integrated circuit defined in claim 3 , wherein a portion of the first set of programmable logic regions is programmed with custom user logic in the second configuration.

5. The integrated circuit defined in claim 2 , wherein the storage circuitry comprises non-volatile memory.

6. The integrated circuit defined in claim 5 , wherein the non-volatile memory comprises flash memory.

7. The integrated circuit defined in claim 6 further comprising:

a first configuration image stored on the flash memory that defines the first configuration of the integrated circuit; and

a second configuration image stored on the flash memory that defines the second configuration of the integrated circuit.

8. The integrated circuit defined in claim 1 wherein the memory interface circuitry comprises:

read enable control circuitry that generates a read enable control signal based at least partly on the loaded calibration data.

9. The integrated circuit defined in claim 8 wherein the memory interface circuitry further comprises:

strobe signal generation circuitry that generates a strobe signal based at least partly on the loaded calibration data.

10. The integrated circuit defined in claim 9 wherein the memory interface circuitry further comprises:

data capture circuitry that receives data from the external memory and that captures the received data based on the read enable control signal and the strobe signal.

11. The integrated circuit defined in claim 1 wherein the integrated circuit loads the first configuration during an initial boot-up and wherein the integrated circuit loads the second configuration for subsequent boot-ups after the initial boot-up.

12. The integrated circuit defined in claim 11 wherein the integrated circuit determines whether the calibration data should be reset and, in response to determining that the calibration data should be reset, reboots and loads the first configuration.

13. A method of interfacing between an integrated circuit and memory, wherein the integrated circuit comprises a memory interface and storage circuitry, the method comprising:

with the integrated circuit, retrieving a first configuration image from the storage circuitry;

loading the first configuration image to configure the integrated circuit to generate calibration data;

saving the calibration data at the storage circuitry;

with the integrated circuit, retrieving a second configuration image from the storage circuitry; and

replacing the first configuration image by loading the second configuration image to configure the integrated circuit to load the calibration data and to operate the memory interface based on the calibration data.

14. The method defined in claim 13 , wherein the storage circuitry comprises non-volatile memory, the method further comprising:

while the integrated circuit is loaded with the first configuration image, storing the calibration data on the non-volatile memory.

15. The method defined in claim 14 , further comprising:

with the memory interface, receiving data from the memory; and

with the memory interface, synchronizing a strobe signal with the received data based on the calibration data.

16. The method defined in claim 13 , wherein the integrated circuit comprises a programmable integrated circuit having a plurality of programmable regions, the method further comprising:

loading the first configuration image onto the plurality of programmable regions; and

loading the second configuration image onto the plurality of programmable regions.

17. The method defined in claim 13 , further comprising:

with the memory interface, writing test data to the memory while the first configuration image is loaded;

with the memory interface, reading the test data from the memory; and

with the memory interface, determining whether the test data read from the memory includes any errors.

18. The method defined in claim 17 , further comprising:

in response to determining that the test data read from the memory does not include any errors, storing read enable signal settings as a part of the calibration data.

19. The method defined in claim 13 , further comprising:

with the memory interface, generating a read enable control signal based on the calibration data while the second configuration image is loaded; and

with the memory interface, capturing data from the memory using the read enable control signal.

20. The method defined in claim 13 , further comprising:

with the memory interface, generating a strobe signal having a selected strobe signal phase identified by the calibration data while the second configuration image is loaded; and

with the memory interface, capturing data from the memory using the strobe signal.

21. A method of using memory interface calibration circuitry for a memory interface on an integrated circuit that communicates with memory, the method comprising:

configuring a set of programmable logic regions to perform calibration operations;

subsequent to completion of the calibration operations, configuring a portion of the set of programmable logic regions to implement custom user functions.

22. The method defined in claim 21 wherein configuring the set of programmable logic regions to perform calibration operations comprises loading a first configuration image from storage circuitry that configures the set of programmable logic regions to generate calibration data.

23. The method defined in claim 22 , further comprising:

loading a second configuration image from the storage circuitry that configures the integrated circuit to load the calibration data and operate the memory interface based on the calibration data, wherein the second configuration image configures the portion of the set of programmable logic regions to implement the custom user functions.

Assignments (2)
SECURITY INTEREST Recorded Sep 12, 2025
From: ALTERA CORPORATION
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 073431/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2014
From: YAP, CHEE WAI; JAZMI, MUHAMAD AIDIL
To: ALTERA CORPORATION
Reel/Frame 032029/0079 →