Claims
- 1. A memory storage system for increasing the performance of write operations of sectors of information to storage locations within a non-volatile memory unit, the storage locations organized into sub-blocks, each sub-block capable of storing one or more sectors of information and each sub-block being individually addressable and erasable and one or more sub-blocks defining a block comprising:
memory controller, coupled to the non-volatile memory unit, for receiving user data of sectors of information from a host, said received user data of sectors of information being identified by addresses of a predetermined order, said memory controller for writing said user data of said sectors of information, to storage locations of one or more sub-blocks of a particular block, said particular block identifiable by a virtual physical block address, said virtual physical block address having been correlated to a predetermined set of host-provided logical block addresses and selectable based upon the identification of a free storage location within said non-volatile memory unit, wherein writing of two or more sectors of information to the storage locations of the particular block is performed substantially concurrently thereby increasing the performance of write operations.
- 2. A memory storage system as recited in claim 1 wherein the non-volatile memory unit includes one or more nonvolatile memory devices.
- 3. A memory storage system as recited in claim 2 wherein each sub-block of the block is located in a different nonvolatile memory device thereby allowing substantially concurrent write operations to be performed on the sub-blocks of the particular block.
- 4. A memory storage system for increasing the performance of write operations of sector information to storage locations within non-volatile memory unit, the sector locations organized into sub-blocks and a plurality of sub-blocks defining a block comprising:
memory control circuitry, coupled to the non-volatile memory unit for receiving user data of sector information included in a sector, from a host, said received user data identifiable by addresses of a predetermined order, said memory control circuitry for writing said received user data to a first storage location of a particular sub-block of a particular block, said memory control circuitry for further writing user data of sector information to a first storage location of a sub-block of the particular block that is other than the particular sub-block regardless of the predetermined order of the addresses of the received sectors, a single virtual physical block address selectable based upon the identification of a free storage location within said non-volatile memory unit for identifying the storage locations of said sub-block of the particular block, wherein writing of sector information to the first storage location of the sub-blocks of the particular block is performed substantially concurrently thereby increasing the performance of write operations.
- 5. A memory storage system as recited in claim 4 wherein said non-volatile memory unit includes one or more nonvolatile memory devices.
- 6. A memory storage system for increasing the performance of program operations of sectors of information to storage locations within a non-volatile memory unit, the storage locations organized into sub-blocks, each sub-block capable of storing one or more sectors of information and each sub-block being individually addressable and erasable, and one or more sub-blocks defining a block comprising:
memory controller, coupled to the non-volatile memory unit, for receiving user data of sectors of information from a host, said received user data of sectors of information being identified by addresses of a predetermined order, said memory controller for programming said user data of said sectors of information, to storage locations of one or more sub-blocks of a particular block, said particular block identifiable by a virtual physical block address, said virtual physical block address having been correlated to a predetermined set of host-provided logical block addresses and selectable based upon the identification of a free storage location within said non-volatile memory unit, wherein programming of two or more sectors of information to the storage locations of the particular block is performed substantially concurrently thereby increasing the performance of program operations.
- 7. A memory storage system as recited in claim 6 wherein the non-volatile memory unit includes one or more nonvolatile memory devices.
- 8. A memory storage system as recited in claim 7 wherein each sub-block of the block is located in a different nonvolatile memory device thereby allowing substantially concurrent write operations to be performed on the sub-blocks of the particular block.
- 9. A memory storage system for increasing the performance of program operations of sectors of information to storage locations within a non-volatile memory unit, the storage locations organized into sub-blocks, each sub-block capable of storing one or more sectors of information and each sub-block being individually addressable and erasable, and one or more sub-blocks defining a block comprising:
memory control circuit, coupled to the non-volatile memory unit, for receiving user data of sectors of information from a host, said received user data of sectors of information being identified by addresses of a predetermined order, said memory control circuit for programming said user data of said sectors of information, to storage locations of one or more sub-blocks of a particular block, said particular block identifiable by a virtual physical block address, said virtual physical block address having been correlated to a predetermined set of host-provided logical block addresses and selectable based upon the identification of a free storage location within said non-volatile memory unit, wherein programming of two or more sectors of information to the storage locations of the particular block is performed substantially concurrently thereby increasing the performance of program operations.
- 10. A memory storage system as recited in claim 9 wherein the non-volatile memory unit includes one or more nonvolatile memory devices.
- 11. A memory storage system as recited in claim 10 wherein each sub-block of the block is located in a different nonvolatile memory device thereby allowing substantially concurrent write operations to be performed on the sub-blocks of the particular block.
- 12. A memory storage system for increasing the performance of programming operations of sector information to storage locations within non-volatile memory unit, the sector locations organized into sub-blocks and a plurality of sub-blocks defining a block comprising:
memory control circuitry, coupled to the non-volatile memory unit, for receiving user data of sectors of information from the host, said received user data of sectors of information identifiable by addresses of a predetermined order, said memory control circuitry for programming sector information, received from the host, to a first storage location of a particular sub-block of a particular block, said memory control circuitry for further programming said user data of said sectors of information to a first storage location of a sub-block of the particular block that is other than the particular sub-block regardless of the predetermined order of the addresses of the received sectors, a single virtual physical block address selectable based upon the identification of a free storage location within said non-volatile memory unit for identifying the storage locations of said sub-block of the particular block, wherein programming of sector information to the first storage location of the sub-blocks of the particular block is performed substantially concurrently thereby increasing the performance of programming operations.
- 13. A memory storage system as recited in claim 12 wherein said non-volatile memory unit includes one or more nonvolatile memory devices.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of our prior co-pending U.S. application Ser. No. 10/152,969, filed on May 20, 2002, entitled “Increasing the Memory Performance of Flash Memory Devices by Writing Sectors Simultaneously to Multiple Flash Memory Devices”, which is continuation of our prior U.S. application Ser. No. 10/071,972, filed on Feb. 5, 2002 and entitled “Increasing the Memory Performance of Flash Memory Devices by Writing Sectors Simultaneously to Multiple Flash Memory Devices”, which is a continuation of our prior co-pending U.S. application Ser. No. 09/705,474, filed on Nov. 2, 2000 and entitled “Increasing the Memory Performance of Flash Memory Devices by Writing Sectors Simultaneously to Multiple Flash Memory Devices”, which is a continuation of our prior U.S. application Ser. No. 09/487,865 filed on Jan. 20, 2000, entitled “Increasing the Memory Performance of Flash Memory Devices by Writing Sectors Simultaneously to Multiple Flash Memory Devices”, which is a continuation of co-pending application Ser. No. 09/030,697 filed on Feb. 25, 1998, entitled “Increasing the Memory Performance of Flash Memory Devices by Writing Sectors Simultaneously to Multiple Flash Memory Devices”, which is a continuation-in-part of U.S. Pat. No. 5,930,815, issued on Jul. 27, 1999, entitled “Moving Sequential Sectors Within a Block of Information In a Flash Memory Mass Storage Architecture”, which is a continuation-in-part of U.S. Pat. No. 5,907,856 issued on May 25, 1999, entitled “Moving Sectors Within a Block of Information In a Flash Memory Mass Storage Architecture”, which is a continuation-in-part application of U.S. Pat. No. 5,845,313, issued on Dec. 12, 1998, entitled “Direct Logical Block Addressing Flash Memory Mass Storage Architecture”.
Continuations (5)
|
Number |
Date |
Country |
Parent |
10152969 |
May 2002 |
US |
Child |
10832421 |
Apr 2004 |
US |
Parent |
10071972 |
Feb 2002 |
US |
Child |
10152969 |
May 2002 |
US |
Parent |
09705474 |
Nov 2000 |
US |
Child |
10071972 |
Feb 2002 |
US |
Parent |
09487865 |
Jan 2000 |
US |
Child |
09705474 |
Nov 2000 |
US |
Parent |
09030697 |
Feb 1998 |
US |
Child |
09487865 |
Jan 2000 |
US |
Continuation in Parts (3)
|
Number |
Date |
Country |
Parent |
08946331 |
Oct 1997 |
US |
Child |
09030697 |
Feb 1998 |
US |
Parent |
08831266 |
Mar 1997 |
US |
Child |
08946331 |
Oct 1997 |
US |
Parent |
08509706 |
Jul 1995 |
US |
Child |
08831266 |
Mar 1997 |
US |