IP Library Granted Patent US 7,685,333
Granted Patent B2
US 7,685,333 · App. 11/085,995 · Granted Mar 23, 2010

Method and system for communicating with memory devices utilizing selected timing parameters from a timing table

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 7,685,333
App. No.
11/085,995
Granted
Mar 23, 2010
Kind
B2
Abstract

A computational system is disclosed. The computational system includes a controller having a table including a plurality of sets of timing parameters. The plurality of sets of timing parameters are ordered based on a speed rate. The computational system also includes a device accessible to the controller. The controller communicates with the device in accordance with one set of timing parameters selected from the plurality of sets of timing parameters.

Claims (38)

1. A method comprising:

selecting, at a memory controller, a first set of timing parameters relating to memory control signals from a plurality of sets of timing parameters associated with a particular memory operation in one or more tables at the memory controller;

communicating with a flash memory device of the computational system by generating memory control signals at the memory controller based on a clock signal and the first set of timing parameters;

determining, at the memory controller, an error rate associated with communicating with the flash memory device;

selecting, at the memory controller, a second set of timing parameters relating to memory control signals from the plurality of sets of timing parameters based on the determined error rate, wherein selecting the second set of timing parameters includes selecting a set of timing parameters faster than the first set of timing parameters when the determined error rate is below a threshold, and selecting a set of timing parameters slower than the first set of timing parameters when the determined error rate is above the threshold; and

communicating with the flash memory device of the computational system by generating memory control signals based on the clock signal and the second set of timing parameters.

2. The method of claim 1 , wherein the plurality of sets of timing parameters are stored in an ordered configuration in accordance with a speed associated with each set of the plurality of sets of timing parameters.

3. The method of claim 1 , wherein the plurality of sets of timing parameters are stored in an ordered configuration from a slowest speed to a fastest speed.

4. The method of claim 1 , wherein at least one of the one or more tables is a soft table.

5. The method of claim 1 , wherein at least one of the one or more tables is a hardware-based table.

6. The method of claim 1 , wherein each set of timing parameters of the plurality of sets of timing parameters comprise values in units of time.

7. The method of claim 1 , wherein the plurality of sets of timing parameters include timing parameters having a read enable pulse width (tRP) and a read enable high hold time (tREH).

8. The method of claim 7 , wherein communicating with the flash memory device includes sending a read enable signal in a low state for a period tRP, followed by a high state for at least a period tREH.

9. A method performed at a memory controller of a computational system, the method comprising:

for each device of a plurality of memory devices of the computational system accessible to the memory controller:

selecting, at the memory controller, a first set of timing parameters relating to memory control signals from a plurality of sets of timing parameters associated with a particular memory operation in one or more tables at the memory controller;

communicating with a first flash memory device of the plurality of memory devices by generating memory control signals at the memory controller based on a clock signal and the first set of timing parameters;

determining, at the memory controller, an error rate associated with communicating with the first flash memory device;

selecting, at the memory controller, a second set of timing parameters relating to memory control signals from the plurality of sets of timing parameters based on the determined error rate, wherein selecting the second set of timing parameters includes selecting a set of timing parameters faster than the first set of timing parameters when the determined error rate is below a threshold, and selecting a set of timing parameters slower than the first set of timing parameters when the determined error rate is above the threshold; and

communicating with the first flash memory device by generating memory control signals based on the clock signal and the second set of timing parameters.

10. A computational system comprising:

a flash memory device; and

a memory controller including a plurality of sets of timing parameters, wherein the memory controller is operable to:

select a first set of timing parameters relating to memory control signals from the plurality of sets of timing parameters associated with a particular memory operation in one or more tables at the memory controller;

communicate with the flash memory device by generating memory control signals based on a clock signal and the first set of timing parameters;

determine an error rate associated with communicating with the flash memory device;

select a second set of timing parameters relating to memory control signals from the plurality of sets of timing parameters based on the determined error rate, wherein selecting the second set of timing parameters includes selecting a set of timing parameters faster than the first set of timing parameters when the determined error rate is below a threshold, and selecting a set of timing parameters slower than the first set of timing parameters when the determined error rate is above the threshold; and

communicate with the flash memory device by generating memory control signals based on the clock signal and the second set of timing parameters.

11. The method of claim 1 , further comprising incrementing to a faster set of timing parameters when the determined error rate remains below the threshold over a period of time.

12. The method of claim 9 , wherein each set of timing parameters of the plurality of sets of timing parameters includes hold times that are stored in an order of shortest hold time to longest hold time.

13. A computational system comprising:

a flash memory device; and

a memory controller including a plurality of sets of timing parameters, wherein the memory controller is operable to:

select a first set of timing parameters relating to memory control signals from the plurality of sets of timing parameters associated with a particular memory operation in one or more tables at the memory controller;

communicate with the flash memory device by generating memory control signals based on a clock signal and the first set of timing parameters;

determine an error rate associated with communicating with the flash memory device;

select a second set of timing parameters relating to memory control signals from the plurality of sets of timing parameters based on the determined error rate, wherein selecting the second set of timing parameters includes selecting a set of timing parameters faster than the first set of timing parameters when the determined error rate is below a threshold; and

communicate with the flash memory device by generating memory control signals based on the clock signal and the second set of timing parameters.

Assignments (26)
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 →
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 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 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
CHANGE OF NAME Recorded Aug 31, 2017
From: SIGMATEL, INC.
To: SIGMATEL, LLC
Reel/Frame 043735/0306 →
MERGER Recorded Jul 26, 2017
From: SIGMATEL, LLC
To: NXP USA, INC.
Reel/Frame 043328/0351 →
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 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 ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 037354 FRAME: 0773. ASSIGNOR(S) HEREBY CONFIRMS THE PATENT RELEASE. Recorded Aug 15, 2016
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: SIGMATEL, LLC
Reel/Frame 039723/0777 →
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 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: SIGMATEL, INC.
Reel/Frame 037354/0734 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0866 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0120 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0194 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: SIGMATEL, INC.
Reel/Frame 037354/0773 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: SIGMATEL, INC.
Reel/Frame 037355/0838 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0027 →
SECURITY AGREEMENT Recorded Nov 12, 2013
From: SIGMATEL, LLC
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031626/0218 →
SECURITY AGREEMENT Recorded Sep 3, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 024933/0340 →
SECURITY AGREEMENT Recorded Sep 3, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 024933/0316 →
SECURITY AGREEMENT Recorded Sep 1, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 024915/0777 →
SECURITY AGREEMENT Recorded Sep 1, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 024915/0759 →