IP Library › Granted Patent US 7,917,479
Granted Patent B2
US 7,917,479 · App. 11/725,879 · Granted Mar 29, 2011

Non-volatile memory devices, systems including same and associated methods

Assignee: Micron Technology, Inc.
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,917,479
App. No.
11/725,879
Granted
Mar 29, 2011
Kind
B2
Abstract

A memory device, system and method of editing a file in a non-volatile memory device is described. The memory device includes a controller and a memory array configured to copy an existing first file into a second file during editing and to maintain the first file while applying edits to the second file. When editing is completed, a first cluster pointer of the first file is redirected to point at the first cluster of the second file that has been edited.

Claims (45)

1. A method of modifying data in a memory device, comprising:

directing a first starting pointer to point to a first starting location in a file allocation table, the first starting location including a cluster pointer directed to an initial cluster of data of an existing file;

copying the existing file to create another file;

generating another starting location in the file allocation table in response to creating the another file;

directing another starting pointer to point to the another starting location in the file allocation table, the another starting location including a cluster pointer directed to another initial cluster of data of the another file;

editing the another file; and

when the editing of the another file is complete, redirecting the first starting pointer of the existing file to point to the another starting location including the cluster pointer directed to the another initial cluster of data of the another file.

2. The method of claim 1 , further comprising reclaiming memory space occupied by the existing file following redirecting the first starting pointer thereof.

3. The method of claim 1 , wherein the file allocation table includes pointers to all clusters of the data in the existing file and the another file.

4. The method of claim 1 , wherein the file allocation table is operable according to one of a FAT12 standard, a FAT16 standard and a FAT32 standard.

5. The method of claim 1 , further comprising configuring a portion of the memory device to include a root directory area for storing identifiers of the existing file and the another file.

6. The method of claim 1 , further including writing and editing the clusters of data in non-volatile memory.

7. A memory device, comprising:

a memory array configured into at least a system area and a data area; and

a controller operably coupled to the memory array and configured to retain an existing first file in the memory array during editing thereof, the controller configured to create a second file in the memory array as a copy of the existing first file, to perform edits to the second file and to redirect a first starting pointer for the existing first file from pointing to a first location to a second location of a file allocation table, the second location including a cluster pointer to point to a cluster of data of the second file when editing of the second file is complete.

8. The memory device of claim 7 , wherein the controller is further configured to reclaim memory space occupied by the existing first file following the redirecting the first starting pointer thereof.

9. The memory device of claim 8 , wherein the file allocation table includes pointers to all clusters of the data of the existing first file and the second file.

10. The memory device of claim 8 , wherein the file allocation table is operable according to one of a FAT12 standard, a FAT16 standard and a FAT32 standard.

11. The memory device of claim 7 , wherein the system area of the memory array is configured to include a root directory for storing identifiers of the existing first file and the second file.

12. The memory device of claim 7 , wherein the memory array comprises non-volatile memory cells.

13. An electronic system, comprising:

a processor; and

a memory device including a memory array coupled to the processor, the memory device configured to respond to a data editing request by the processor of an existing file by editing a copied file comprising a copy of an existing file and retaining the existing file unedited, the memory device further configured to redirect a first starting pointer from pointing to a first location in a file allocation table, the first location including a cluster pointer locating the existing file, to pointing to a second location in the file allocation table, the second location including a cluster pointer locating the copied file, when editing thereof is complete.

14. The electronic system of claim 13 , wherein the memory array is configured to interact with the processor as a mass storage device.

15. The electronic system of claim 13 , wherein the memory array includes a system area and a data area.

16. The electronic system of claim 13 , wherein the file allocation table includes pointers to all clusters of the data in the memory array of the existing file and the copied file.

17. The electronic system of claim 13 , wherein the file allocation table is operable according to one of a FAT12 standard, a FAT16 standard and a FAT32 standard.

18. The electronic system of claim 15 , wherein the system area of the memory array is configured to include a root directory area for storing identifiers of the existing file and the copied file.

19. The electronic system of claim 13 , wherein the memory array comprises non-volatile memory.

20. A memory device, comprising:

a controller; and

a memory array operably coupled to the controller, the controller configured to present a mass storage interface to a host processor and to retain an existing first file in the memory array until editing is complete on a second file in the memory array which is a copy of the existing first file, the controller further configured to redirect a first starting pointer from pointing to a first location in a file allocation table, the first location including a cluster pointer of the existing first file, to pointing to a second location in the file allocation table, the second location including a cluster pointer locating a corresponding cluster of data of the second file, when the editing of the second file is complete.

21. The memory device of claim 20 , wherein the memory device is further configured according to a file allocation table for maintaining pointers to clusters of data of the existing first file and the second file.

22. A method of editing a file in a memory device, comprising:

copying an existing first file into a second file;

maintaining the existing first file while applying edits to the second file; and

redirecting an identifier from pointing to a first location on a file allocation table, the first location including at least one cluster identifier for the existing first file, to point to a second location on the file allocation table, the second location including at least one cluster identifier for the second file, upon completion of editing thereof.

23. The method of claim 22 , wherein the at least one cluster identifier of the first location comprises a first cluster pointer directed to a first cluster of data of the existing first file.

24. The method of claim 23 , wherein the at least one cluster identifier of the second file comprises another first cluster pointer directed to a first cluster of data of the second file.

25. A method of operating a non-volatile memory, comprising:

making a copy of a file having a stored location identifier associated with a first location on a file allocation table, the first location including at least one cluster identifier of the file;

editing the file copy; and

associating the stored location identifier with a second location on the file allocation table, the second location including at least one cluster identifier of the file copy, after editing thereof.

26. The method of claim 25 , further comprising storing the at least one cluster identifier of the file as a cluster pointer, and storing the at least one cluster identifier of the file copy as a cluster pointer.

27. The method of claim 26 , wherein the cluster pointer of the file designates a first cluster of the file and the cluster pointer of the file copy designates a first cluster of the file copy.

Assignments (8)
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 Mar 20, 2007
From: SEPULVEDA, FRANK J.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 019089/0673 →
Continuity (1)
Related Publication 20080235486A1 · Sep 25, 2008