IP Library Granted Patent US 8,700,879
Granted Patent B2
US 8,700,879 · App. 13/223,171 · Granted Apr 15, 2014

Concurrent memory operations

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 8,700,879
App. No.
13/223,171
Granted
Apr 15, 2014
Kind
B2
Abstract

Subject matter disclosed herein relates to performing concurrent memory operations.

Claims (36)

1. A method comprising:

unmapping virtual memory addresses corresponding to physical memory locations to where a first operation is to be performed;

performing said first operation, wherein unmapping said virtual memory addresses of said first operation is performed before performing said first operation; and

concurrently performing a second operation of a command received while performing said first operation if said second operation does not affect said unmapped virtual memory addresses, wherein said second operation is of a different type from said first operation, and wherein remapping said virtual memory addresses is performed before performing said second operation.

2. The method of claim 1 , further comprising:

issuing an exception in response to receiving said command if said second operation does affect said unmapped virtual memory addresses.

3. The method of claim 2 , further comprising:

delaying or denying execution of said command as a result of issuing said exception.

4. The method of claim 2 , further comprising:

suspending said first operation and performing said second operation as a result of issuing said exception.

5. The method of claim 4 , further comprising:

resuming said suspended first operation after performing said second operation.

6. The method of claim 5 , further comprising:

unmapping said virtual memory addresses before resuming said suspended first operation.

7. The method of claim 1 , wherein said first operation type comprises a read operation, a write operation, or an erase operation.

8. The method of claim 7 , wherein said second operation type comprises a read operation, a write operation, or an erase operation, exclusive of said first operation type.

9. A memory device comprising:

a memory controller to perform a first operation on a first portion of a memory array corresponding to a first set of physical addresses; and

a memory management unit (MMU) coprocessor to unmap virtual memory addresses associated with said first set of physical addresses wherein the MMU coprocessor is configured to unmap said virtual memory addresses before performing said first operation, wherein said memory controller is adapted to concurrently perform the second operation without suspending said first operation if said second operation does not access said first set of physical addresses, and wherein said second operation is of a different type from said first operation; wherein the MMU coprocessor is configured to remap said virtual memory addresses before performing said second operation.

10. The memory device of claim 9 , wherein said first operation type comprises a read operation, a write operation, or an erase operation.

11. The memory device of claim 10 , wherein said second operation type comprises a read operation, a write operation, or an erase operation, exclusive of said first operation type.

12. The memory device of claim 9 , wherein said MMU coprocessor is adapted to delay or deny accesses by said second operation of said first set of physical addresses during said first operation.

13. The memory device of claim 9 , wherein said MMU coprocessor is adapted to flag as invalid accesses affecting said first portion of said memory array by said second operation during said first operation.

14. The memory device of claim 9 , wherein said MMU coprocessor is adapted to remap virtual memory addresses to physical addresses corresponding to said first portion of said memory array to allow said second operation to be performed.

15. The memory device of claim 9 , wherein said memory array comprises NOR flash memory cells.

16. The memory device of claim 9 , wherein said memory device is incorporated in at least one of the following: a desktop computer, a laptop computer, a workstation, a server device, a personal digital assistant, a mobile communication device, or any combination thereof.

17. A system comprising:

a memory device including a first portion of a memory array corresponding to a first set of physical addresses;

a memory controller to perform a first operation on said first portion of said memory array;

a memory management unit (MMU) coprocessor to unmap virtual memory addresses associated with said first set of physical addresses, wherein the MMU coprocessor is configured to unmap said virtual memory addresses before performing said first operation, wherein said memory controller is adapted to concurrently perform a second operation without suspending said first operation if said second operation does not access said first set of physical addresses, and wherein said second operation is of a different type from said first operation, wherein the MMU coprocessor is configured to remap said virtual memory addresses before performing said second operation; and

a processor to host one or more applications and to initiate said first operation or said second operation to provide access to said first portion of said memory array.

18. The system of claim 17 , wherein said first operation type comprises a read operation, a write operation, or an erase operation.

19. The system of claim 18 , wherein said second operation type comprises a read operation, a write operation, or an erase operation, exclusive of said first operation type.

20. The system of claim 17 , wherein said MMU coprocessor is adapted to flag as invalid accesses affecting said first portion of memory by said second operation during said first operation.

21. The system of claim 17 , wherein said MMU coprocessor is adapted to delay or deny accesses by said second operation of said first set of physical addresses during said first operation.

22. The system of claim 17 , wherein said system is incorporated in at least one of the following: a desktop computer, a laptop computer, a workstation, a server device, a personal digital assistant, a mobile communication device, or any combination thereof.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2011
From: NUMONYX B.V.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 027126/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2011
From: PORZIO, LUCA; SEQUEIRA, RODOLPHE
To: MICRON TECHNOLOGY, INC.
Reel/Frame 026841/0046 →