IP Library Granted Patent US 10,192,602
Granted Patent B2
US 10,192,602 · App. 15/855,855 · Granted Jan 29, 2019

Smart cache design to prevent overflow for a memory device with a dynamic redundancy register

Inventors: Neal Berger (Cupertino, CA); Benjamin Louie (Fremont, CA); Mourad El-Baraji (Fremont, CA); Lester Crudele (Tomball, TX); Daniel Hillman (San Jose, CA)
Assignee: SPIN TRANSFER TECHNOLOGIES, INC.
G11C11/1675G11C11/1655G11C11/1657G11C11/1677G11C11/1693
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 10,192,602
App. No.
15/855,855
Granted
Jan 29, 2019
Kind
B2
Abstract

A memory device for storing data is disclosed. The memory device comprises a memory bank comprising a plurality of addressable memory cells configured in a plurality of segments wherein each segment contains N rows per segment, wherein the memory bank comprises a total of B entries, and wherein the memory cells are characterized by having a prescribed word error rate, E. Further, the device comprises a pipeline comprising M pipestages and configured to process write operations of a plurality of data words addressed to a given segment of the memory bank. The device also comprises a cache memory comprising Y number of entries, the cache memory associated with the given segment of the memory bank, and wherein the Y number of entries is based on the M, the N and the prescribed word error rate, E, to prevent overflow of the cache memory.

Claims (40)

1. A memory device for storing data, the memory device comprising:

a memory bank comprising a plurality of addressable memory cells configured in a plurality of segments wherein each segment contains N rows per segment, wherein the memory bank comprises a total of B entries, and wherein said memory cells are characterized by having a prescribed word error rate, E;

a pipeline comprising M pipestages and configured to process write operations of a first plurality of data words addressed to a given segment of said memory bank; and

a cache memory comprising Y number of entries, said cache memory associated with said given segment of said memory bank wherein said cache memory is operable for storing a second plurality of data words and associated memory addresses, and wherein further each data word of said second plurality of data words is either awaiting write verification associated with said given segment of said memory bank or is to be re-written into said given segment of said memory bank, and wherein said Y number of entries is based on said M, said N and said prescribed word error rate, E, to prevent overflow of said cache memory.

2. A memory device as described in claim 1 wherein said Y number of entries is at least (N*M+B*E) entries.

3. A memory device as described in claim 1 wherein said memory cells of said memory bank comprise spin-transfer torque magnetic random access memory (STT-MRAM) cells.

4. A memory device as described in claim 1 wherein said given segment of said memory bank addresses a word using a common row address and discrete bit line column addresses.

5. A memory device as described in claim 1 further comprising:

a plurality of pipelines; and

a plurality of cache memories, and wherein further each segment of said plurality of segments has associated therewith a respective pipeline of said plurality of pipelines and a respective cache memory of said plurality of cache memories.

6. A memory device as described in claim 1 wherein M=2 and wherein E=1.

7. A memory device as described in claim 1 wherein said pipeline is operable to flush a currently processing first memory operation to said cache memory if a second memory operation enters said pipeline with a different row address than said first memory operation.

8. A memory device as described in claim 1 wherein said cache memory comprises one or more status indicators for indicating a partial occupancy level of said cache memory.

9. A memory device as described in claim 1 wherein said pipeline supports multiple write attempts for a given write operation.

10. A memory device as described in claim 1 wherein said pipeline supports a pre-read operation for a given write operation.

11. A memory device for storing data, the memory device comprising:

a memory bank comprising a plurality of addressable memory cells of row and bit lines and further configured in a plurality of segments wherein each segment contains N rows per segment and wherein words are addressed by a common row line and a plurality of bit lines and wherein said memory bank is characterized by having a prescribed word error rate, E, and wherein the memory bank comprises a total of B entries;

a pipeline comprising M pipestages and configured to process read operations and write operations of a first plurality of data words addressed to a given segment of said memory bank; and

a cache memory comprising Y number of entries, said cache memory associated with said given segment of said memory bank and wherein said cache memory is operable for storing a second plurality of data words and associated memory addresses, and wherein further each data word of said second plurality of data words is either awaiting write verification associated with said given segment of said memory bank or is to be re-written into said given segment of said memory bank, and wherein said Y number of entries is based on said M, said N and said prescribed word error rate, E, to prevent overflow of said cache memory.

12. A memory device as described in claim 11 wherein said Y number of entries is at least (N*M)+(B*E) entries.

13. A memory device as described in claim 12 wherein said memory cells of said memory bank comprise spin-transfer torque magnetic random access memory (STT-MRAM) cells.

14. A memory device as described in claim 13 wherein said given segment of said memory bank addresses a word by using a common row address and by using discrete bit line addresses.

15. A memory device as described in claim 13 further comprising:

a plurality of pipelines; and

a plurality of cache memories, and wherein further each segment of said plurality of segments has associated therewith a respective pipeline of said plurality of pipelines and a respective cache memory of said plurality of cache memories.

16. A memory device as described in claim 11 wherein M=2 and wherein E=1.

17. A memory device as described in claim 13 wherein said pipeline is operable to flush a currently processing first memory operation to said cache memory if a second memory operation enters said pipeline having a different row address as said first memory operation.

18. A memory device as described in claim 11 wherein said cache memory comprises status indicators for indicating a partial occupancy level of said cache memory.

19. A memory device as described in claim 11 wherein said pipeline supports multiple write attempts for a given write operation.

20. A memory device as described in claim 11 wherein said pipeline supports a pre-read operation for a given write operation.

21. A method of writing data within a memory device, the method comprising:

processing write operations using a pipeline wherein said pipeline is operable to process said write operations to write data to a memory bank, wherein said processing comprises transferring write operations to a cache memory that require one of: write verification; and subsequent write processing;

storing a write operation in a vacant entry of said cache memory that requires one of: write verification; and subsequent write processing through said pipeline;

removing a write operation from said cache memory that write verifies; and

removing a write operation from said cache memory that is re-written to said memory bank, and

wherein said memory bank comprises a plurality of addressable memory cells of N word row lines wherein words are addressed by a common word row line and a plurality of bit column lines, wherein said memory bank is characterized by having a prescribed word error rate, E, and wherein the memory bank comprises a total of B entries, and

wherein said pipeline comprises M pipestages, and

wherein said cache memory comprises Y number of entries, wherein said Y number of entries is based on said M, said N and said prescribed word error rate, E, to prevent overflow of said cache memory.

22. A method as described in claim 21 wherein said Y number of entries is at least (N*M)+(B*E) entries.

23. A method as described in claim 21 wherein said memory cells of said memory bank comprise spin-transfer torque magnetic random access memory (STT-MRAM) cells.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2021
From: SPIN (ASSIGNMENT FOR BENEFIT OF CREDITORS), LLC
To: INTEGRATED SILICON SOLUTION, (CAYMAN) INC.
Reel/Frame 057473/0319 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2021
From: SPIN MEMORY, INC.
To: SPIN (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
Reel/Frame 056927/0038 →
CHANGE OF NAME Recorded Jun 10, 2019
From: SPIN TRANSFER TECHNOLOGIES, INC.
To: SPIN MEMORY, INC.
Reel/Frame 049421/0501 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2017
From: BERGER, NEAL; LOUIE, BENJAMIN; EL-BARAJI, MOURAD; CRUDELE, LESTER; HILLMAN, DANIEL
To: SPIN TRANSFER TECHNOLOGIES, INC.
Reel/Frame 044493/0929 →
Continuity (2)
Continuation In Part 15277799 · Sep 27, 2016
Related Publication 20180122450A1 · May 3, 2018