Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A mass storage system made of flash electrically erasable and programmable read only memory (“EEPROM”) cells organized into blocks, the blocks in turn being grouped into memory banks, is managed to even out the numbers of erase and rewrite cycles experienced by the memory banks in order to extend the service lifetime of the memory system. Since this type of memory cell becomes unusable after a finite number of erase and rewrite cycles, although in the tens of thousands of cycles, uneven use of the memory banks is avoided so that the entire memory does not become inoperative because one of its banks has reached its end of life while others of the banks are little used. Relative use of the memory banks is monitored and, in response to detection of uneven use, have their physical addresses periodically swapped for each other in order to even out their use over the lifetime of the memory.

InventorsKarl M. J. Lofgren, Robert D. Norman, Gregory B. Thelin, Anil Gupta
Original AssigneesSanDisk Corporation, Western Digital Corporation
Primary Examiner: Viet Q. Nguyen
Attorney: Parsons Hsue & de Runtz LLP
Current U.S. Classification365/185.29; 365/185.11; 365/185.33; 365/218
International Classification: G11C/1100

View patent at USPTO
Search USPTO Assignment Database
Download USPTO Public PAIR data

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US4093985Nov 5, 1976Jun 6, 1978North Electric CompanyMemory sparing arrangement
US4430727Nov 10, 1981Feb 7, 1984International Business Machines Corp.Storage element reconfiguration
US4528683May 25, 1982Jul 9, 1985VDO Adolf Schindling AGCircuit for storing a multi-digit decimal numerical value of the distance traversed by a vehicle
US4530054Mar 3, 1982Jul 16, 1985Sperry CorporationProcessor-addressable timestamp for indicating oldest written-to cache entry not copied back to bulk memory
US4562532May 24, 1982Dec 31, 1985Fujitsu LimitedMain storage configuration control system
US4563752Jun 6, 1983Jan 7, 1986U.S. Philips CorporationSeries/parallel/series shift register memory comprising redundant parallel-connected storage registers, and display apparatus comprising a picture memory thus organized
US4608671May 2, 1983Aug 26, 1986Hitachi, Ltd.Buffer storage including a swapping circuit
US4612640Feb 21, 1984Sep 16, 1986Seeq Technology, Inc.Error checking and correction circuitry for use with an electrically-programmable and electrically-erasable memory array
US4616311Apr 29, 1985Oct 7, 1986Tokyo Shibaura Denki Kabushiki KaishaData processing system
US4638457May 28, 1982Jan 20, 1987Siemens AktiengesellschaftMethod and apparatus for the non-volatile storage of the count of an electronic counting circuit
US4663770Feb 24, 1986May 5, 1987Hughes Microlectronics LimitedNon-volatile counting circuit and method which provides for extended counter life
US4682287Aug 28, 1984Jul 21, 1987Nippondenso Co., Ltd.Electronic odometer
US4718041Jan 9, 1986Jan 5, 1988Texas Instruments IncorporatedEEPROM memory having extended life
US4803707Dec 21, 1987Feb 7, 1989NCR CorporationNonvolatile electronic odometer with excess write cycle protection
US4899272Oct 23, 1987Feb 6, 1990Chips & Technologies, Inc.Addressing multiple types of memory devices
US4922456Apr 29, 1988May 1, 1990Scientific-Atlanta, Inc.Method of reducing wearout in a non-volatile memory with double buffer
US4924375Oct 23, 1987May 8, 1990Chips and Technologies, Inc.Page interleaved memory access
US4943962Oct 28, 1988Jul 24, 1990Kabushiki Kaisha ToshibaNonvolatile semiconductor memory having page mode programming function
US4947410Feb 23, 1989Aug 7, 1990General Motors Corporation
Delco Electyronic Corp.
Method and apparatus for counting with a nonvolatile memory
US4953073Feb 6, 1986Aug 28, 1990MIPS Computer Systems, Inc.Cup chip having tag comparator and address translation unit on chip and connected to off-chip cache and main memories
US5034926Aug 10, 1989Jul 23, 1991Kabushiki Kaisha ToshibaNon-volatile semiconductor memory
US5043940Jul 17, 1989Aug 27, 1991Flash EEPROM memory systems having multistate storage cells
US5053990Feb 17, 1988Oct 1, 1991Intel CorporationProgram/erase selection for flash memory
US5065364Sep 15, 1989Nov 12, 1991Intel CorporationApparatus for providing block erasing in a flash EPROM
US5065564Oct 25, 1990Nov 19, 1991Maschinenfabrik Alfred Schmermund GmbH & Co.Apparatus for the formation of cigarette groups
US5095344Jun 8, 1988Mar 10, 1992Highly compact EPROM and flash EEPROM devices
US5103411Apr 5, 1990Apr 7, 1992Nippon Seiki Co., Ltd.Electronic odometer wherein medium order digit data addresses locations which store high and low order digit data
US5134589Jul 23, 1990Jul 28, 1992Mitsubishi Denki Kabushiki KaishaSemiconductor memory device having a flash write function
US5138580May 30, 1990Aug 11, 1992Gemplus Card InternationalMethod for the erasure of memory cells, device designed to implement it, and use of said method in a device with non-supplied memory
US5155705Aug 13, 1991Oct 13, 1992Fujitsu Limited
Fujitsu VLSI Limited
Semiconductor memory device having flash write function
US5163021Jul 22, 1991Nov 10, 1992SunDisk CorporationMulti-state EEprom read and write circuits and techniques
US5168465Jan 15, 1991Dec 1, 1992Highly compact EPROM and flash EEPROM devices
US5172338Apr 11, 1990Dec 15, 1992Sundisk CorporationMulti-state EEprom read and write circuits and techniques
US5193071Mar 3, 1992Mar 9, 1993Digital Equipment CorporationMemory apparatus for multiple processor systems
US5210716Jul 23, 1990May 11, 1993Seiko Instruments Inc.Semiconductor nonvolatile memory
US5222109Dec 28, 1990Jun 22, 1993IBM CorporationEndurance management for solid state files
US5245572Jul 30, 1991Sep 14, 1993Intel CorporationFloating gate nonvolatile memory with reading while writing capability
US5263003Nov 12, 1991Nov 16, 1993Allen-Bradley Company, Inc.Flash memory circuit and method of operation
US5267218Mar 31, 1992Nov 30, 1993Intel CorporationNonvolatile memory card with a single power supply input
US5268870Aug 6, 1990Dec 7, 1993Flash EEPROM system and intelligent programming and erasing methods therefor
US5270979Mar 15, 1991Dec 14, 1993SunDisk CorporationMethod for optimum erasing of EEPROM
US5272669Feb 20, 1991Dec 21, 1993Sundisk CorporationMethod and structure for programming floating gate memory cells
US5280447Jun 19, 1992Jan 18, 1994Intel CorporationFloating gate nonvolatile memory with configurable erasure blocks
US5295255Feb 22, 1991Mar 15, 1994Electronic Professional Services, Inc.Method and apparatus for programming a solid state processor with overleaved array memory modules
US5297148Oct 20, 1992Mar 22, 1994SunDisk CorporationFlash eeprom system
US5303198Jul 5, 1991Apr 12, 1994Fuji Photo Film Co., Ltd.Method of recording data in memory card having EEPROM and memory card system using the same
US5341489Apr 14, 1992Aug 23, 1994Eastman Kodak CompanyMemory card with programmable interleaving
US5357473Oct 6, 1993Oct 18, 1994Mitsubishi Denki Kabushiki KaishaSemiconductor storage system including defective bit replacement
US5371876Oct 14, 1993Dec 6, 1994Intel CorporationComputer system with a paged non-volatile memory
US5388083Mar 26, 1993Feb 7, 1995Cirrus Logic, Inc.Flash memory mass storage architecture
US5430859Jul 26, 1991Jul 4, 1995Sundisk CorporationSolid state memory system including plural memory chips and a serialized bus
US5544118Mar 7, 1995Aug 6, 1996Flash EEPROM system cell array with defect management including an error correction scheme
US5548554Dec 28, 1994Aug 20, 1996SGS-Thompson Microelectronics, S.r.l.Integrated programming circuitry for an electrically programmable semiconductor memory device with redundancy
US5630093Apr 19, 1996May 13, 1997Intel CorporationDisk emulation for a non-volatile semiconductor memory utilizing a mapping table
US5663901Sep 12, 1995Sep 2, 1997Sandisk CorporationComputer memory cards using flash EEPROM integrated circuit chips and memory-controller systems
US5726937May 21, 1996Mar 10, 1998Norand CorporationFlash memory system having memory cache
US5930167Jul 30, 1997Jul 27, 1999SanDisk CorporationMulti-state non-volatile flash memory capable of being its own two state write cache
US6081447Mar 5, 1999Jun 27, 2000Western Digital Corporation
SanDisk Corporation
Wear leveling techniques for flash EEPROM systems
US6230233Sep 13, 1991May 8, 2001Sandisk CorporationWear leveling techniques for flash EEPROM systems
US6594183Jun 30, 1998Jul 15, 2003SanDisk Corporation
Western Digital Corporation
Wear leveling techniques for flash EEPROM systems

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US7353325Jan 3, 2005Apr 1, 2008SanDisk CorporationWear leveling techniques for flash EEPROM systems
US7361188Apr 8, 2005Apr 22, 2008Exelys, LLCPortable cardiac monitor
US7451264Apr 13, 2006Nov 11, 2008SanDisk CorporationCycle count storage methods
US7467253Apr 13, 2006Dec 16, 2008SanDisk CorporationCycle count storage systems
US7474914Apr 8, 2005Jan 6, 2009Exelys, LLCPortable cardiac monitor including a range limiter
US7515471Oct 19, 2006Apr 7, 2009MOSAID Technologies IncorporatedMemory with output control
US7529149Dec 12, 2006May 5, 2009MOSAID Technologies IncorporatedMemory system and method with serial and parallel modes
US7549034Nov 10, 2005Jun 16, 2009International Business Machines CorporationRedistribution of memory to reduce computer system power consumption
US7551492Mar 8, 2007Jun 23, 2009Mosaid Technologies, Inc.Non-volatile semiconductor memory with page erase
US7577059Feb 27, 2007Aug 18, 2009Mosaid Technologies IncorporatedDecoding control with address transition detection in page erase function
US7636258Dec 12, 2007Dec 22, 2009Qimonda Flash GmbHIntegrated circuits, memory controller, and memory modules
US7646636Jul 27, 2007Jan 12, 2010MOSAID Technologies IncorporatedNon-volatile memory with dynamic multi-mode operation
US7650480Aug 28, 2006Jan 19, 2010Hitachi, Ltd.Storage system and write distribution method
US7652922Dec 30, 2005Jan 26, 2010MOSAID Technologies IncorporatedMultiple independent serial link memory
US7689762May 3, 2007Mar 30, 2010ATMEL CorporationStorage device wear leveling
US7719892Jul 25, 2008May 18, 2010MOSAID Technologies IncorproatedFlash memory device with data output control
US7747833Dec 22, 2006Jun 29, 2010Mosaid Technologies IncorporatedIndependent link and bank selection
US7751272Feb 5, 2008Jul 6, 2010MOSAID Technologies IncorporatedSemiconductor device and method for selection and de-selection of memory devices interconnected in series
US7774537Feb 13, 2008Aug 10, 2010Mosaid Technologies IncorporatedApparatus and method of page program operation for memory devices with mirror back-up of data
US7778107Apr 1, 2009Aug 17, 2010Mosaid Technologies IncorporatedDecoding control with address transition detection in page erase function
US7796462Feb 21, 2008Sep 14, 2010Mosaid Technologies IncorporatedData flow control in multiple independent port
US7802064Mar 29, 2007Sep 21, 2010Mosaid Technologies IncorporatedFlash memory system control scheme
US7804718Jul 18, 2007Sep 28, 2010MOSAID Technologies IncorporatedPartial block erase architecture for flash memory
US7817470Nov 23, 2007Oct 19, 2010MOSAID Technologies IncorporatedNon-volatile memory serial core architecture
US7818464Dec 6, 2006Oct 19, 2010Mosaid Technologies IncorporatedApparatus and method for capturing serial input data
US7826294Nov 21, 2008Nov 2, 2010Mosaid Technologies IncorporatedMemory with output control
US7852582Nov 21, 2007Dec 14, 2010Nokia CorporationMethod for determining wear of a data storage medium and data storage device
US7853727Mar 28, 2007Dec 14, 2010MOSAID Technologies IncorporatedApparatus and method for producing identifiers regardless of mixed device type in a serial interconnection
US7872921May 28, 2009Jan 18, 2011MOSAID Technologies IncorporatedNon-volatile semiconductor memory with page erase
US7904639Aug 17, 2007Mar 8, 2011Mosaid Technologies IncorporatedModular command structure for memory and memory system
US7908423Jan 11, 2008Mar 15, 2011Silicon Motion, Inc.Memory apparatus, and method of averagely using blocks of a flash memory
US7908429Jul 8, 2010Mar 15, 2011Mosaid Technologies IncorporatedApparatus and method of page program operation for memory devices with mirror back-up of data
US7913128Feb 8, 2008Mar 22, 2011MOSAID Technologies IncorporatedData channel test apparatus and method thereof
US7940572Jun 20, 2008May 10, 2011MOSAID Technologies IncorporatedNAND flash memory having multiple cell substrates
US7945755Apr 9, 2010May 17, 2011MOSAID Technologies IncorporatedIndependent link and bank selection
US7970983Oct 14, 2007Jun 28, 2011SanDisk IL Ltd.Identity-based flash management
US7983099Oct 24, 2008Jul 19, 2011MOSAID Technologies IncorporatedDual function compatible non-volatile memory device
US7991925Feb 4, 2008Aug 2, 2011Mosaid Technologies IncorporatedApparatus and method for identifying device types of series-connected devices of mixed type
US7995401Sep 22, 2010Aug 9, 2011MOSAID Technologies IncorporatedNon-volatile semiconductor memory with page erase
US7996725Nov 14, 2008Aug 9, 2011Nokia CorporationProviding protection for a memory device
US8000144Mar 26, 2010Aug 16, 2011MOSAID Technologies IncorporatedMethod and system for accessing a flash memory device
US8010709Jan 19, 2007Aug 30, 2011MOSAID Technologies IncorporatedApparatus and method for producing device identifiers for serially interconnected devices of mixed type
US8010710Mar 28, 2007Aug 30, 2011MOSAID Technologies IncorporatedApparatus and method for identifying device type of serially interconnected devices
US8015346Mar 18, 2008Sep 6, 2011A-Data Technology Co., Ltd.Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof
US8037235Dec 18, 2008Oct 11, 2011Mosaid Technologies IncorporatedDevice and method for transferring data to a non-volatile memory device
US8045377Dec 10, 2009Oct 25, 2011MOSAID Technologies IncorporatedNon-volatile memory with dynamic multi-mode operation
US8046527Feb 12, 2008Oct 25, 2011Mosaid Technologies IncorporatedApparatus and method for using a page buffer of a memory device as a temporary cache
US8051241May 7, 2009Nov 1, 2011Seagate Technology LLCWear leveling technique for storage devices
US8060691Feb 7, 2011Nov 15, 2011MOSAID Technologies IncorporatedApparatus and method of page program operation for memory devices with mirror back-up of data
US8069328Nov 29, 2006Nov 29, 2011MOSAID Technologies IncorporatedDaisy chain cascade configuration recognition technique
US8086785Jul 6, 2007Dec 27, 2011Mosaid Technologies IncorporatedSystem and method of page buffer operation for memory devices
US8090899Mar 4, 2009Jan 3, 2012Western Digital Technologies, Inc.Solid state drive power safe wear-leveling
US8122179Dec 14, 2007Feb 21, 2012Silicon Motion, Inc.Memory apparatus and method of evenly using the blocks of a flash memory
US8122202Aug 22, 2007Feb 21, 2012Reduced pin count interface
US8139390Jul 8, 2008Mar 20, 2012MOSAID Technologies IncorporatedMixed data rates in memory devices and systems
US8140737Jan 30, 2007Mar 20, 2012Skymedi CorporationMethod for enhancing life cycle of memory
US8159893Aug 6, 2010Apr 17, 2012MOSAID Technologies IncorporatedData flow control in multiple independent port
US8169849Mar 27, 2009May 1, 2012Mosaid Technologies IncorporatedMemory system and method with serial and parallel modes
US8176236Feb 18, 2010May 8, 2012TDK CorporationMemory controller, memory system with memory controller, and method of controlling flash memory
US8194481Dec 17, 2009Jun 5, 2012Mosaid Technologies IncorporatedSemiconductor device with main memory unit and auxiliary memory unit requiring preset operation
US8195839Sep 28, 2010Jun 5, 2012Mosaid Technologies IncorporatedApparatus and method for producing identifiers regardless of mixed device type in a serial interconnection
US8195978May 18, 2009Jun 5, 2012Fusion-IO. Inc.Apparatus, system, and method for detecting and replacing failed data storage
US8199598Sep 15, 2010Jun 12, 2012MOSAID Technologies IncorporatedMemory with output control
US8200891Feb 8, 2010Jun 12, 2012TDK CorporationMemory controller, memory system with memory controller, and method of controlling flash memory
US8200892Feb 8, 2010Jun 12, 2012TDK CorporationMemory controller, memory system with memory controller, and method of controlling flash memory
US8209466Dec 16, 2008Jun 26, 2012Intel CorporationMethods and systems to allocate addresses in a high-endurance/low-endurance hybrid flash memory
US8213229Aug 22, 2008Jul 3, 2012HGST Netherlands, B.V.Error control in a flash memory device
US8213240Jun 27, 2011Jul 3, 2012Mosaid Technologies IncorporatedNon-volatile semiconductor memory with page erase
US8230129Jun 24, 2011Jul 24, 2012MOSAID Technologies IncorporatedApparatus and method for identifying device types of series-connected devices of mixed type
US8239612Sep 26, 2008Aug 7, 2012TDK CorporationMemory controller, flash memory system with memory controller, and control method of flash memory
US8244995Oct 30, 2008Aug 14, 2012Dell Products L.P.System and method for hierarchical wear leveling in storage devices

Claims

1. A method of managing operation of an EEPROM mass storage system having at least one integrated circuit containing memory cells divided into a number of groups of memory cells that are erased together and which are then rewritten with data, comprising the steps of:

monitoring a number of rewrite cycles directed at the groups of cells,

determining when a predetermined imbalance exists in a number of rewrite cycles directed at the groups of cells,

in response to such an imbalance, reassigning at least one of the groups of cells to receive data designated for at least another of the groups of cells in order to correct the imbalance during further rewrite cycles, and

wherein data are subsequently rewritten in said at least another of the groups of cells.

2. The method according to claim 1 wherein the monitoring step includes accumulating a number of rewrite cycles of individual groups by logical group addresses applied to the storage system before any conversion to physical group addresses.

3. The method according to claim 1 wherein the monitoring step includes accumulating a number of rewrite cycles of individual groups by physical group addresses that are translated from logical group addresses applied to the storage system.

4. The method according to claim 1 wherein the imbalance determining step includes the steps of:

identifying one of said groups having a highest number of rewrite cycles,

determining a total number of group rewrite cycles that the memory could accommodate if all of said groups had the same number of rewrite cycles as said one group, and

comparing that total determined number with a total number of rewrite cycles actually directed to said groups.

5. The method according to claim 1 wherein the imbalance determining step includes the steps of:

identifying a first of said groups having a higher number of rewrite cycles than others of said groups,

identifying a second of said groups having a lower number of rewrite cycles than others of said groups, and

determining whether a difference between the number of rewrite cycles of said first and second groups exceeds a predetermined threshold.

6. The method according to claim 1 which additionally comprises the step of swapping stored data among said at least one and said at least another group of cells.

7. The method according to claim 6 wherein said swapping step includes use of another group of cells to which data is transferred from either said at least one or said at least another group of cells.

8. A method of managing operation of a rewritable non-volatile mass storage system divided into a number of groups of memory cells which are periodically rewritten with new data, wherein a target endurance limit of a maximum number of rewrite cycles is designated for the memory cells, comprising:

monitoring a number of rewrite cycles directed at the groups of memory cells,

determining, before any of the individual groups of memory cells reaches the target endurance limit of the maximum number of rewrite cycles, when a predetermined imbalance exists in a number of rewrite cycles experienced among the groups of memory cells, and

in response to determining that such an imbalance exists,

copying stored data from at least one of the groups of memory cells into at least another of the groups of memory cells, and
reassigning said at least another of the groups of memory cells to receive data designated for said at least one of the groups of memory cells in order to correct the imbalance during further rewrite cycles.

9. The method according to claim 8 wherein monitoring the number of rewrite cycles includes accumulating a number of rewrite cycles of individual groups by logical group addresses applied to the storage system before conversion to physical group addresses.

10. The method according to claim 8 wherein monitoring the number of rewrite cycles includes accumulating a number of rewrite cycles of individual groups by physical group addresses that are translated from logical group addresses applied to the storage system.

11. The method according to claim 8 wherein determining when a predetermined imbalance exists includes:

identifying one of said groups having a highest number of rewrite cycles,

determining a total number of group rewrite cycles that the memory could accommodate if all of said groups had the same number of rewrite cycles as said one group, and

comparing that total determined number with a total number of rewrite cycles actually directed to said groups.

12. The method according to claim 8 wherein determining when an imbalance exists includes:

identifying a first of said groups having a higher number of rewrite cycles than others of said groups,

identifying a second of said groups having a lower number of rewrite cycles than others of said groups, and

determining whether a difference between the number of rewrite cycles of said first and second groups exceeds a predetermined threshold.