IP Library Granted Patent US 7,245,527
Granted Patent B2
US 7,245,527 · App. 11/130,351 · Granted Jul 17, 2007

Nonvolatile memory system using magneto-resistive random access memory (MRAM)

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,245,527
App. No.
11/130,351
Granted
Jul 17, 2007
Kind
B2
Abstract

A non-volatile memory system ( 230 ) includes a magnetoresistive random access memory (MRAM) ( 232 ) including a plurality of magnetoresistive memory cells, a floating-gate nonvolatile memory ( 234 ) including a plurality of floating-gate memory cells, and a controller ( 236 ) coupled to the MRAM ( 232 ) and to the floating-gate nonvolatile memory ( 234 ). The controller ( 236 ) is adapted to be coupled to a system bus ( 220 ) and controls a selected one of the MRAM ( 232 ) and the floating-gate nonvolatile memory ( 234 ) in response to an access initiated from the system bus ( 220 ).

Claims (36)

1. A non-volatile memory system comprising:

a magnetoresistive random access memory (MRAM);

a flash nonvolatile memory; and

a controller coupled to said MRAM and to said flash nonvolatile memory and adapted to be coupled to a system bus for controlling a selected one of said MRAM and said flash nonvolatile memory in response to an access cycle initiated from said system bus.

2. The nonvolatile memory system of claim 1 wherein when said access cycle is a write cycle of a data element to an address within a memory space of said flash nonvolatile memory, said controller writes said data element to said MRAM instead of to said flash nonvolatile memory.

3. The nonvolatile memory system of claim 2 wherein said controller further terminates said write cycle after writing said data element to said MRAM without writing said data element to said flash nonvolatile memory, thereby reducing write latency.

4. The nonvolatile memory system of claim 1 wherein said controller controls said MRAM instead of said flash nonvolatile memory to perform said access cycle when an address of said access cycle has been allocated to said MRAM.

5. The nonvolatile memory system of claim 1 wherein said controller includes a static random access memory (SRAM) interface having inputs for receiving a chip enable signal, an output enable signal, and a write enable signal.

6. The nonvolatile memory system of claim 5 wherein said SRAM interface further has an input for receiving a clock signal and performs said access cycle synchronously with said clock signal.

7. The nonvolatile memory system of claim 5 wherein said SRAM interface has an output for providing a busy signal to indicate that said access cycle is in progress when said controller performs said access cycle to said flash nonvolatile memory.

8. A non-volatile memory system comprising:

a magneto-resistive random access memory (MRAM) having a plurality of sectors and a corresponding plurality of tags, wherein each of said plurality of tags indicates an address of a corresponding one of said plurality of sectors;

a flash nonvolatile memory; and

a controller coupled to said MRAM and to said flash nonvolatile memory and adapted to be coupled to a system bus, wherein in response to an access cycle received from said system bus, said controller determines whether an address of said access cycle is stored in one of said plurality of tags and if so performs said access cycle to a corresponding one of said plurality of sectors of said MRAM instead of to said flash nonvolatile memory.

9. The nonvolatile memory system of claim 8 wherein if said address of said access cycle is not stored in one of said plurality of tags, said controller allocates an address from said flash nonvolatile memory to a selected sector of said plurality of sectors of said MRAM and performs said access cycle to said selected sector instead of to said flash nonvolatile memory.

10. The nonvolatile memory system of claim 9 wherein said controller allocates said address from said flash nonvolatile memory to said selected sector of said MRAM by copying a corresponding sector from said flash nonvolatile memory to said selected sector and storing an address of said corresponding sector in a corresponding tag of said plurality of tags.

11. The nonvolatile memory system of claim 10 wherein said controller allocates said corresponding sector to said MRAM further by setting a valid bit corresponding to said selected sector in said MRAM.

12. The nonvolatile memory system of claim 9 wherein said controller writes back old data from said selected sector to said flash nonvolatile memory before allocating said address if all of said plurality of sectors of said MRAM have been previously allocated when the nonvolatile memory system receives said access cycle.

13. The nonvolatile memory system of claim 8 wherein in response to a write cycle in which said address of said access cycle is not stored in one of said plurality of tags, said controller stores write data in a temporary buffer and terminates said access cycle on said system bus before allocating said address to said MRAM.

14. The nonvolatile memory system of claim 8 wherein in response to an erase cycle the nonvolatile memory system terminates said erase cycle on said system bus and subsequently erases a corresponding sector in said flash nonvolatile memory.

15. The nonvolatile memory system of claim 8 further comprising a static random access memory (SRAM) interface having inputs for receiving a chip enable signal, an output enable signal, and a write enable signal.

16. A method of controlling a non-volatile memory system that includes a magneto-resistive random access memory (MRAM) and a flash nonvolatile memory comprising the steps of:

receiving an access cycle from a system bus;

determining whether said access cycle is a write cycle;

if said access cycle is said write cycle, storing write data in a temporary buffer, terminating said write cycle on said system bus, and subsequently storing said write data in the MRAM.

17. The method of claim 16 further comprising the steps of:

determining whether an address associated with said access cycle has been allocated to the MRAM;

if said address associated with said access cycle has been allocated to the MRAM, storing said write data in the MRAM; and

if said address associated with said access cycle has not been allocated to the MRAM, allocating said address to the MRAM from said flash nonvolatile memory and then storing said write data in the MRAM.

18. The method of claim 17 further comprising the steps of:

if said address associated with said access cycle has not been allocated to the MRAM and all sectors of the MRAM have been allocated, writing back a selected sector containing old data to the flash nonvolatile memory and subsequently storing said write data in said selected sector.

19. The method of claim 18 wherein the step of writing back said selected sector containing said old data to the flash nonvolatile memory comprises the step of:

selecting a sector of the MRAM which includes the most updates as said selected sector.

20. The method of claim 16 further comprising the step of:

determining whether said access cycle is an erase cycle; and

if said access cycle is said erase cycle, terminating said erase cycle on said system bus, and subsequently erasing a corresponding sector of the flash nonvolatile memory.

Assignments (18)
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 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 →
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 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 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
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 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 →
PATENT RELEASE Recorded Aug 17, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 039707/0471 →
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: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0225 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0704 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: EVERSPIN TECHNOLOGIES, INC.
Reel/Frame 036084/0057 →
RELEASE OF SECURITY INTEREST Recorded Jul 30, 2010
From: CITIBANK, N.A.
To: EVERSPIN TECHNOLOGIES, INC.
Reel/Frame 024767/0398 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2009
From: FREESCALE SEMICONDUCTOR, INC.
To: EVERSPIN TECHNOLOGIES, INC.
Reel/Frame 022597/0062 →
SECURITY AGREEMENT Recorded Feb 16, 2008
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 020518/0215 →
SECURITY AGREEMENT Recorded Feb 2, 2007
From: FREESCALE SEMICONDUCTOR, INC.; FREESCALE ACQUISITION CORPORATION; FREESCALE ACQUISITION HOLDINGS CORP.; FREESCALE HOLDINGS (BERMUDA) III, LTD.
To: CITIBANK, N.A. AS COLLATERAL AGENT
Reel/Frame 018855/0129 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2005
From: QURESHI, QADEER A.; JEW, THOMAS; WYMAN, CURTIS F.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 016573/0227 →