Solid State Memory Patents (Class 714/773)
  • Publication number: 20130339823
    Abstract: A technique for error detection is provided. A controller is configured to detect errors by using error correcting code (ECC), and a cache includes independent ECC words for storing data. The controller detects the errors in the ECC words for a wordline that is read. The controller detects a first error in a first ECC word on the wordline and a second error in a second ECC word on the wordline. The controller determines that the wordline is a failing wordline based on detecting the first error in the first ECC word and the second error in the second ECC word.
    Type: Application
    Filed: January 23, 2013
    Publication date: December 19, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Patrick J. Meaney, Arthur J. O'Neill, Gary E. Strait
  • Publication number: 20130339821
    Abstract: According to one embodiment of the present invention, a method for bank sparing in a 3D memory device that includes detecting, by a memory controller, a first error in the 3D memory device and detecting a second error in a first element in a first rank of the 3D memory device, wherein the first element in the first rank has an associated first chip select. The method also includes sending a command to the 3D memory device to set mode registers in a master logic portion of the 3D memory device that enable a second element to receive communications directed to the first element and wherein the second element is in a second rank of the 3D memory device, wherein the first element and second element are each either a bank or a bank group that comprise a plurality of chips.
    Type: Application
    Filed: June 14, 2012
    Publication date: December 19, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edgar R. Cordero, Anil B. Lingambudi, Saravanan Sethuraman, Kenneth L. Wright
  • Publication number: 20130339820
    Abstract: According to one embodiment of the present invention, a method for operating a three dimensional (“3D”) memory device includes detecting, by a memory controller, a first error on the 3D memory device and detecting, by the memory controller, a second error in a first chip in a first rank of the 3D memory device, wherein the first chip has an associated first chip select. The method also includes powering up a second chip in a second rank, sending a command from the memory controller to the 3D memory device to replace the first chip in the first chip select with the second chip and correcting the first error using an error control code.
    Type: Application
    Filed: June 14, 2012
    Publication date: December 19, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edgar R. Cordero, Anil B. Lingambudi, Saravanan Sethuraman, Kenneth L. Wright
  • Publication number: 20130339822
    Abstract: A technique for error detection is provided. A controller is configured to detect errors by using error correcting code (ECC), and a cache includes independent ECC words for storing data. The controller detects the errors in the ECC words for a wordline that is read. The controller detects a first error in a first ECC word on the wordline and a second error in a second ECC word on the wordline. The controller determines that the wordline is a failing wordline based on detecting the first error in the first ECC word and the second error in the second ECC word.
    Type: Application
    Filed: June 15, 2012
    Publication date: December 19, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Patrick J. Meaney, Arthur J. O'Neill, Gary E. Strait
  • Patent number: 8612832
    Abstract: A dynamic random access memory (DRAM) is operated as a cache memory coupled with a processor core. A block of data is transmitted to the DRAM as even and odd pairs of bits from the processor core. The block of data includes N error correcting code (ECC) bits and 11*N data bits. Two or more cache lines are to be stored in a memory page with tag bits aggregated together within the page.
    Type: Grant
    Filed: April 1, 2011
    Date of Patent: December 17, 2013
    Assignee: Intel Corporation
    Inventors: Darrell S. McGinnis, C. Scott Huddleston, Rajat Agarwal, Meenakshisundaram R. Chinthamani
  • Publication number: 20130332801
    Abstract: A method for correcting data bit of at least a cell of a flash memory includes: determining a contributing factor of level distribution corresponding to an electric level of a first cell to generate a first determination result; and, correcting/modifying the data bit corresponding to the electric potential of the first cell according to the first determination result.
    Type: Application
    Filed: June 7, 2013
    Publication date: December 12, 2013
    Inventors: Chen-Yu Weng, Tsung-Chieh Yang
  • Publication number: 20130332802
    Abstract: According to one embodiment, a semiconductor storage device includes a nonvolatile semiconductor memory and a controller. The nonvolatile semiconductor memory includes a firmware area capable of storing firmware used to execute either a normal mode or an autorun test mode and a user area capable of storing user data. The controller reads the firmware from the nonvolatile semiconductor memory and determines whether the firmware has been set in either the normal mode or the autorun test mode. The controller repeats erasing, writing, and reading in each block in the user area using a cell applied voltage higher than a voltage used in a normal mode, and enters a block where an error has occurred as a bad block.
    Type: Application
    Filed: August 12, 2013
    Publication date: December 12, 2013
    Applicant: KABUSHIKI KAISHA TOSHIBA
    Inventor: Daisuke HASHIMOTO
  • Publication number: 20130332800
    Abstract: A system and method are disclosed in which a first non-volatile memory includes blocks that store data, and a second memory that stores error correction information related to the blocks storing the data. The first memory and the second memory are of different types.
    Type: Application
    Filed: May 31, 2013
    Publication date: December 12, 2013
    Applicant: Micron Technology, Inc.
    Inventors: Giovanni Campardo, Stefano Corno, Gian Pietro Vanalli, Manuela Scognamiglio, Danilo Caraccio, Federico Tiziani, Massimiliano Magni, Andrea Ghilardelli
  • Patent number: 8607124
    Abstract: A system, method and computer readable medium for performing a first read attempt of multiple codeword portions while using a first read threshold candidate to provide multiple first read results, wherein the multiple codeword portions are stored in multiple flash memory cells; calculating a first read threshold candidate error correction decoding based score; wherein the calculating comprises error correction decoding of the multiple first read results; performing a second read attempt of the multiple codeword portions while using a second read threshold candidate to provide multiple second read results; calculating a second read threshold candidate error correction decoding based score; wherein the calculating comprises error correction decoding of the multiple second read results; and selecting a first read threshold out of the first and second read threshold candidates based on a relationship between the first and second read threshold candidate error correction decoding based scores.
    Type: Grant
    Filed: December 20, 2010
    Date of Patent: December 10, 2013
    Assignee: Densbits Technologies Ltd.
    Inventor: Hanan Weingarten
  • Patent number: 8607123
    Abstract: A flash memory control circuit including a microprocessor unit, a first interface unit for connecting a flash memory, a second interface unit for connecting a computer host, an error correcting unit, a memory management unit, and a marking unit is provided. The memory management unit divides each page in the flash memory into a plurality of data bit areas, and a plurality of redundancy bit areas and a plurality of error correcting bit areas corresponding to the data bit areas, wherein each of the data bit areas has a plurality of sectors for respectively storing a sector data. The marking unit stores a data accuracy mark corresponding to each sector data in the corresponding redundancy bit area to record the status of the sector data. Thereby, the flash memory controller can effectively identify error data in the flash memory by using the error correcting codes and the data accuracy marks.
    Type: Grant
    Filed: August 17, 2009
    Date of Patent: December 10, 2013
    Assignee: Phison Electronics Corp.
    Inventors: Jiunn-Yeong Yang, Chih-Kang Yeh
  • Publication number: 20130326312
    Abstract: Disclosed is a storage device which includes a nonvolatile memory device including a memory block a program order of which is adjusted regardless of an arrangement of memory cells, and a memory controller that performs address mapping to replace a bad page of the memory block with a normal page of the memory block.
    Type: Application
    Filed: March 5, 2013
    Publication date: December 5, 2013
    Inventors: JOONHO LEE, JONG-NAM BAEK, DONG-HOON HAM, SANG-WOOK YOO, INTAE HWANG
  • Publication number: 20130318419
    Abstract: A flash memory system which includes a flash memory and a memory controller. The flash memory is configured to perform a read operation using a plurality of read levels. The memory controller is configured to recover original data using a counter value provided from the flash memory. The flash memory converts read result values obtained using the plurality of read levels into the counter value to provide the counter value to the memory controller.
    Type: Application
    Filed: March 14, 2013
    Publication date: November 28, 2013
    Inventors: Changkyu Seol, Junjin Kong, Hong Rak Son
  • Publication number: 20130318420
    Abstract: Disclosed is a bit-state mapping method of a flash memory system which maps m-bit data (m being a natural number more than 2) onto one of 2m states (voltage threshold distributions). The bit-state mapping method includes performing a subset partitioning operation during first to (m?1)th levels under a condition that two adjacent states are processed as one state; and distinguishing between the adjacent states while processing an (m)th level.
    Type: Application
    Filed: March 15, 2013
    Publication date: November 28, 2013
    Inventors: Changkyu Seol, Junjin Kong, Hong Rak Son, Younggeon Yoo
  • Patent number: 8595421
    Abstract: A memory device has a plurality of dedicated data blocks for storing only user data and a plurality of dedicated overhead blocks for storing only overhead data that comprises ECC data that is used for error checking with respect to the user data in the dedicated data blocks. The dedicated data blocks can be erased without erasing the ECC data that is used for error checking with respect to the user data in the dedicated data blocks.
    Type: Grant
    Filed: March 28, 2012
    Date of Patent: November 26, 2013
    Inventors: Petro Estakhri, Siamack Nemazie
  • Patent number: 8595597
    Abstract: Embodiments of the invention describe methods, systems and apparatuses to improve solid state device (SSD) write speed by efficiently utilizing error correction code executed for the device. SSDs may be comprised of several NAND memory devices. It is understood that such devices tend to have a raw bit error rate (RBER) that is related to the program/erase cycle count for the device. Embodiments of the invention efficiently use system ECC by changing the operating conditions of the SSD to better utilize the robustness of the implemented ECC algorithm. For example, embodiments of the invention may alter the programming voltage supplied to an SSD to increase write speed; such an increase may increase the RBER of the device, but will not affect the accuracy of such operations due to the ECC that is provisioned for end of life storage fidelity (i.e., the RBER that will occur at the end of life).
    Type: Grant
    Filed: March 3, 2011
    Date of Patent: November 26, 2013
    Assignee: Intel Corporation
    Inventors: Ningde Xie, Matthew Goldman, Jawad B. Khan, Robert W. Faber
  • Publication number: 20130311854
    Abstract: A memory controller adds the redundant information that is used to correct an error for each of data of a predetermined length and stores the data into the nonvolatile memory in the case in which data is written to the nonvolatile memory, the memory controller reads data and the redundant information that has been added to the data from the nonvolatile memory in the case in which data is read from the nonvolatile memory, and the memory controller corrects an error based on the redundant information in the case in which the data includes an error. The memory controller stores data that is in a basic unit that is a unit of an error correction configured by the data of a predetermined length and the redundant information that is added to the data of a predetermined length into a plurality of predetermined pages in a dispersed manner.
    Type: Application
    Filed: May 18, 2012
    Publication date: November 21, 2013
    Inventors: Takashi Tsunehiro, Akifumi Suzuki, Junji Ogawa
  • Publication number: 20130311855
    Abstract: Method for processing a non-volatile memory designed to store words containing data bits and control bits allowing an error correction with an error correction code, the method comprising the storage of information in the memory plane comprising an operation for writing in the memory plane at least one digital word modified with respect to at least one initial digital word not having any erroneous bit, said at least one modified digital word containing a bit having a modified value with respect to the value of this bit in said at least one initial digital word, the other bits of the modified digital word having values identical to those of these same bits in the initial digital word, the position of the modified bit in said at least one modified digital word defining the value of the digital information.
    Type: Application
    Filed: May 20, 2013
    Publication date: November 21, 2013
    Applicant: STMICROELECTRONICS (ROUSSET) SAS
    Inventor: Francois Tailliet
  • Patent number: 8589769
    Abstract: A memory subsystem with a memory bus and a memory assembly. The memory bus includes multiple bitlanes. The memory assembly is in communication with the memory bus and includes instructions for receiving an error code correction (ECC) word in multiple packets via the memory bus. The ECC word includes data bits and ECC bits arranged into multiple multi-bit ECC symbols. Each of the ECC symbols is associated with one of the bitlanes on the memory bus. The memory assembly also includes instructions for utilizing one of the ECC symbols to perform error detection and correction for the bits in the ECC word received via the bitlane associated with the ECC symbol.
    Type: Grant
    Filed: September 7, 2007
    Date of Patent: November 19, 2013
    Assignee: International Business Machines Corporation
    Inventors: Timothy J. Dell, Kevin C. Gower, Warren E. Maule
  • Publication number: 20130305124
    Abstract: A memory system having a plurality of memory cells for storing payload data and redundancy data. The memory system having a read-out circuit configured to read-out a status of the plurality of memory cells, the read-out status having payload data, redundancy data and associated reliability information. Moreover, the memory system has a data processor configured to derive the payload data from the read-out status using the reliability information.
    Type: Application
    Filed: July 12, 2013
    Publication date: November 14, 2013
    Inventors: Michael Scheppler, Helmut Schwalm, Doris Keitel-Schulz, Xavier Veredas-Ramirez, Detlev Richter
  • Patent number: 8583990
    Abstract: An apparatus and associated method provided for a plurality of storage elements arranged and concurrently accessible in an array. A controller executes programming instructions stored in memory to append an error correction code (ECC) block to a first data block and to store the first data block with appended ECC block in a first storage element of the plurality, the appended ECC block associated with a second data block other than the first data block.
    Type: Grant
    Filed: November 30, 2011
    Date of Patent: November 12, 2013
    Assignee: Spectra Logic Corporation
    Inventor: Matthew Thomas Starr
  • Patent number: 8583988
    Abstract: A computer program product for performing input/output (I/O) processing is provided. The computer program product is configured to perform: obtaining information relating to an I/O operation at a channel subsystem; generating and storing in local channel memory at least one address control word (ACW) specifying one or more host memory locations for data transfer and including a data check word generation field and/or a data check word save field; responsive to receiving an input data transfer request including at least one data check word, storing the at least one data check word in the data check word save field and performing a check of the data to determine whether the data has been corrupted; and responsive to receiving an output data transfer, generating at least one data check word based on the data check word generation field and appending the at least one data check word to the data.
    Type: Grant
    Filed: June 1, 2011
    Date of Patent: November 12, 2013
    Assignee: International Business Machines Corporation
    Inventors: Clinton E. Bubb, Daniel F. Casper, John R. Flanagan
  • Patent number: 8583989
    Abstract: An input/output processing method includes generating and storing at least one address control word (ACW) including a data check word generation field and/or a data check word save field in local channel memory of a channel subsystem, and generating and forwarding to a network interface an address control structure specifying a location in the local channel memory of a corresponding ACW. The method also includes, responsive to a data transfer request, storing the at least one data check word in the data check word save field and routing the data to a host memory location specified by the corresponding ACW responsive to performing a check of the data and determining that the data has not been corrupted, or retrieving the data based on the corresponding ACW, generating and appending at least one data check word and routing the data and the at least one data check word to the interface.
    Type: Grant
    Filed: October 22, 2012
    Date of Patent: November 12, 2013
    Assignee: International Business Machines Corporation
    Inventors: Clinton E. Bubb, Daniel F. Casper, John R. Flanagan
  • Publication number: 20130297989
    Abstract: A method for data storage includes storing data in a group of analog memory cells by writing respective storage values into the memory cells in the group. One or more of the memory cells in the group are read using a first readout operation that senses the memory cells with a first sense time. At least one of the memory cells in the group is read using a second readout operation that senses the memory cells with a second sense time, longer than the first sense time. The data stored in the group of memory cells is reconstructed based on readout results of the first and second readout operations.
    Type: Application
    Filed: July 8, 2013
    Publication date: November 7, 2013
    Inventors: Avraham Poza Meir, Barak Baum, Naftali Sommer
  • Publication number: 20130297987
    Abstract: A page buffer for a NAND memory array has a data register and a cache register that are suitably organized and operated to eliminate gaps and discontinuities in the output data during a continuous page read. The cache register may be organized in two portions, and the page data in the cache may be output from the cache portions in alternation. ECC delay may be eliminated from the output by performing the ECC computation on one cache portion while the other is being output. The data register may also be organized in two portions corresponding to the cache portions, so that data may be transferred to one cache portion while the other is being output. In a variation, the continuous page read may be done without ECC.
    Type: Application
    Filed: May 4, 2012
    Publication date: November 7, 2013
    Applicant: WINBOND ELECTRONICS CORPORATION
    Inventors: Anil Gupta, Oron Michael, Robin John Jigour
  • Publication number: 20130297988
    Abstract: Described embodiments provide a media controller that performs error correction on data read from a solid-state media. The media controller receives a read operation from a host device to read one or more given read units of the solid-state media. The media controller reads the data for the corresponding read units from the solid-state media employing initial values for one or more read threshold voltages. Only if a disparity between an actual number of bits at a given logic level included in the read data and an expected number of bits at the given logic level included in the read data has not reached a predetermined threshold, the media controller decodes the read data and provides the decoded data to the host device.
    Type: Application
    Filed: January 30, 2013
    Publication date: November 7, 2013
    Applicant: LSI CORPORATION
    Inventors: YingQuan Wu, Earl T. Cohen
  • Patent number: 8578246
    Abstract: Methods and apparatus are provided for recording input data in q-level cells of solid-state memory (2), where q>2. Input data words are encoded as respective codewords, each having a plurality of symbols. The coding scheme is such that each symbol can take one of q values corresponding to respective predetermined levels of the q-level cells, and each of the possible input data words is encoded as a codeword with a unique sequence of relative symbol values. The symbols of each codeword are then recorded in respective cells of the solid-state memory by setting each cell to the level corresponding to the recorded symbol value. Input data is thus effectively encoded in the relative positions of cell levels, providing resistance to certain effects of drift noise.
    Type: Grant
    Filed: April 29, 2011
    Date of Patent: November 5, 2013
    Assignee: International Business Machines Corporation
    Inventors: Thomas Mittelholzer, Nikolaos Papandreou, Charalampos Pozidis
  • Patent number: 8578245
    Abstract: A data reading method for a rewritable non-volatile memory module is provided, wherein the rewritable non-volatile memory module has a plurality of physical pages. The data reading method includes grouping the physical pages into a plurality of physical page groups and configuring a corresponding threshold voltage set for each of the physical page groups. The data reading method also includes respectively reading data from the physical pages of the physical page groups by using the corresponding threshold voltage sets. The data reading method further includes when data read from one of the physical pages of one of the physical page groups cannot be corrected by using an error checking and correcting (ECC) circuit, updating the threshold voltage set corresponding to the physical page group.
    Type: Grant
    Filed: March 1, 2011
    Date of Patent: November 5, 2013
    Assignee: Phison Electronics Corp.
    Inventors: Chih-Kang Yeh, Chien-Fu Tseng, Chung-Lin Wu
  • Publication number: 20130290813
    Abstract: A controller is described for a multi-level, solid state, non-volatile memory array having memory cells. The memory cells are configured to store data using a first number of digital levels. The controller is configured to encode multiple data bits to generate multiple encoded data bits, convert the multiple encoded data bits into multiple data symbols, and send the multiple data symbols for storage in a memory cell of the multi-level, solid state, non-volatile memory array. The controller is further configured to generate an output signal, using a second number of digital levels, based on data associated with the multiple data symbols stored in the memory cell. The second number of digital levels is greater than the first number of digital levels used to store the multiple data symbols in the memory cell. The controller is further configured to output multiple output data symbols based on the output signal.
    Type: Application
    Filed: June 25, 2013
    Publication date: October 31, 2013
    Inventors: Aditya Ramamoorthy, Zining Wu, Pantas Sutardja
  • Patent number: 8572457
    Abstract: Outer code words can span multiple data blocks, multiple die, or multiple chips of a memory device to protect against errors in the data stored in the blocks, die and/or chips. A solid state memory device is arranged in multiple data blocks, each block including an array of memory cells arranged in a plurality of pages. The data is encoded into inner code words and symbol-based outer code words. The inner code words and the symbol-based outer code words are stored in the memory cells of the multiple blocks. One or more inner code words are stored in each page of each block and one or more symbols of each outer code word are stored in at least one page of each block. The inner code words and the outer code words are read from the memory device and are used to correct the errors in the data.
    Type: Grant
    Filed: May 28, 2010
    Date of Patent: October 29, 2013
    Assignee: Seagate Technology LLC
    Inventors: Bernardo Rub, Ara Patapoutian, Arvind Sridharan, Bruce D. Buch
  • Patent number: 8572308
    Abstract: A flash storage device comprises a plurality of data blocks, each data block comprising a plurality of data segments, a system memory, and a controller. The controller is configured to cache in the system memory a plurality of data sectors to be written, to write to a first one of the plurality of data segments a first one of the plurality of data sectors, to write to the first one of the plurality of data segments a first portion of a second one of the plurality of data sectors, and to write to a second one of the plurality of data segments a second portion of the second one of the plurality of data sectors.
    Type: Grant
    Filed: June 25, 2009
    Date of Patent: October 29, 2013
    Assignee: STEC, Inc.
    Inventors: Mark Moshayedi, William Calvert, Stephen Russell Boorman, Simon Mark Haynes
  • Publication number: 20130283130
    Abstract: Apparatus and methods store error recovery data in different dimensions of a memory array. For example, in one dimension, block error correction codes (ECC) are used, and in another dimension, supplemental error correction codes, such as convolutional codes, are used. By using separate dimensions, the likelihood that a defect affects both error recovery techniques is lessened, thereby increasing the probability that error recovery can be performed successfully. In one example, block error correction codes are used for data stored along rows, and this data is stored in one level of multiple-level cells of the array. Supplemental error correction codes are used for data stored along columns, such as along the cells of a string, and the supplemental error correction codes are stored in a different level than the error correction codes.
    Type: Application
    Filed: June 17, 2013
    Publication date: October 24, 2013
    Inventor: William H. Radke
  • Publication number: 20130283129
    Abstract: A solid-state mass storage device and method of operating the storage device to anticipate the failure of at least one memory device thereof before a write endurance limitation is reached. The method includes assigning at least a first memory block of the memory device as a wear indicator that is excluded from use as data storage, using pages of at least a set of memory blocks of the memory device for data storage, writing data to and erasing data from each memory block of the set in program/erase (P/E) cycles, performing wear leveling on the set of memory blocks, subjecting the wear indicator to more P/E cycles than the set of memory blocks, performing integrity checks of the wear indicator and monitoring its bit error rate, and taking corrective action if the bit error rate increases.
    Type: Application
    Filed: June 14, 2013
    Publication date: October 24, 2013
    Inventors: Franz Michael Schuette, Lutz Filor
  • Publication number: 20130283128
    Abstract: An operating method of a nonvolatile memory device controller includes generating a code word through polar encoding of information bits, reading a mapping pattern, generating a repeated mapping pattern through iteration of the mapping pattern, and mapping each bit of the code word onto a specific bit of multi-bit data of the nonvolatile memory device, based upon the repeated mapping pattern.
    Type: Application
    Filed: March 13, 2013
    Publication date: October 24, 2013
    Applicants: POSTECH ACADEMY-INDUSTRY FOUNDATION, SAMSUNG ELECTRONICS CO., LTD.
    Inventors: KIJUN LEE, DONG-MIN SHIN, KYEONGCHEOL YANG, SEUNG-CHAN LIM, JUNJIN KONG, MYUNGKYU LEE
  • Patent number: 8566673
    Abstract: A method for computing and storing parity information in a RAID system includes dividing each segment in a stripe into a data block and a parity block, and storing in each parity block, parity information for a limited number of other data blocks in the stripe. A method for rebuilding data in a RAID system includes rebuilding the data from parity information and storing the rebuilt data on reserve portions of the remaining disks in the system.
    Type: Grant
    Filed: August 4, 2011
    Date of Patent: October 22, 2013
    Assignee: LSI Corporation
    Inventors: Kevin Kidney, Kenneth Day
  • Patent number: 8566672
    Abstract: Error correction code (ECC) checkbits are generated for each write access to a memory address based on both the data to be written (the write data) and the memory address. The ECC checkbits are stored with the data and, in response to a read access at the memory address, are employed to check for errors in both the address and the data provided in response to the read access (the read data). The ECC checkbit generation process can result, for particular memory addresses, in checkbits that can incorrectly indicate whether errors are present in the read data. Accordingly, the checkbits can be selectively inverted based on the memory address so that the checkbit pattern will not result in an incorrect error detection or correction.
    Type: Grant
    Filed: March 22, 2011
    Date of Patent: October 22, 2013
    Assignee: Freescale Semiconductor, Inc.
    Inventors: William C. Moyer, Joseph C. Circello
  • Patent number: 8566674
    Abstract: A phase change memory may be utilized in place of more conventional, higher volume memories such as static random access memory, flash memory, or dynamic random access memory. To account for the fact that the phase change memory is not yet a high volume technology, an error correcting code may be incorporated. The error correcting code may be utilized in ways which do not severely negatively impact read access times, in some embodiments.
    Type: Grant
    Filed: August 11, 2009
    Date of Patent: October 22, 2013
    Assignee: Ovonyx, Inc.
    Inventor: Ward D. Parkinson
  • Publication number: 20130275836
    Abstract: A storage device includes a nonvolatile memory, a volatile memory, and a memory controller. The volatile memory includes a free block management table, and a worn block management table. If the number of free blocks is equal to or larger than a threshold value 1, and errors of the number of equal to or larger than a threshold value 2 but smaller than a threshold value 3 are included in the data read from the nonvolatile memory, the memory controller registers the block in the worn block management table as a worn block. If the number of free blocks becomes smaller than the threshold value 1, the memory controller registers the worn block registered in the worn block management table in the free block management table as the free block.
    Type: Application
    Filed: April 9, 2013
    Publication date: October 17, 2013
    Applicant: Hitachi, Ltd.
    Inventors: Ryoichi INADA, Ryo FUJITA, Yuzuru TAKAHASHI
  • Publication number: 20130275835
    Abstract: Embodiments of apparatus, methods and systems of solid state drive are disclosed. One embodiment of a solid state drive includes a non-blocking fabric, wherein the non-blocking fabric comprises a plurality of ports, wherein a subset of the plurality of ports are each connected to a flash controller that is connected to at least one array of flash memory. Further, this embodiment includes a flash scheduler for scheduling data traffic through the non-blocking fabric, wherein the data traffic comprises a plurality of data packets, wherein the flash scheduler extracts flash fabric header information from each of the data packets and schedules the data traffic through the non-blocking fabric based on the extracted flash fabric header information. The scheduled data traffic provides transfer of data packets through the non-blocking fabric from at least one array of flash memory to at least one other array of flash memory.
    Type: Application
    Filed: March 15, 2013
    Publication date: October 17, 2013
    Inventor: Ajoy Aswadhati
  • Patent number: 8560922
    Abstract: Bad block management for flash memory including a method for storing data. The method includes receiving a write request that includes write data. A block of memory is identified for storing the write data. The block of memory includes a plurality of pages. A bit error rate (BER) of the block of memory is determined and expanded write data is created from the write data in response to the BER exceeding a BER threshold. The expanded write data is characterized by an expected BER that is lower than the BER threshold. The expanded write data is encoded using an error correction code (ECC). The encoded expanded write data is written to the block of memory.
    Type: Grant
    Filed: March 4, 2011
    Date of Patent: October 15, 2013
    Assignee: International Business Machines Corporation
    Inventors: John A. Bivens, Michele M. Franceschini, Ashish Jagmohan
  • Patent number: 8560926
    Abstract: A data writing method for writing page data into a rewritable non-volatile memory module is provided, the rewritable non-volatile memory module has a plurality of physical blocks, and each of the physical blocks has a plurality of physical pages. The data writing method includes grouping the physical pages into a plurality of physical page groups according to write speed of each physical page. The data writing method also includes compressing the page data to generate compressed data and calculating a data compression ratio corresponding to the compressed data. The data writing method further includes writing the compressed data into one of the physical pages in a corresponding physical page group among the physical page groups according to the data compression ratio. Accordingly, the data writing method can effectively ensure the accuracy of data stored in the rewritable non-volatile memory module.
    Type: Grant
    Filed: May 23, 2011
    Date of Patent: October 15, 2013
    Assignee: Phison Electronics Corp.
    Inventor: Chih-Kang Yeh
  • Patent number: 8560925
    Abstract: A method and system for detecting and correcting a bad bit error in a solid-state nonvolatile memory device. The device includes a bad bit detection module that receives an old page from the memory device and determines whether a page has a bad bit. The device further includes a bad bit correction module that generates a new page, determines a location of the bad bit, determines a preferred value of the bad bit, determines a user value of the bad bit and inserts the preferred value into a string of bits corresponding to substantive data of the old page, recording the string of bits with the preferred value inserted therein and stores the new page at an address of the old page.
    Type: Grant
    Filed: April 5, 2011
    Date of Patent: October 15, 2013
    Assignees: DENSO International America, Inc., Denso Corporation
    Inventors: Brian William Hughes, Hiroaki Shibata, Wan-ping Yang
  • Publication number: 20130268825
    Abstract: A method and system are disclosed in which a first non-volatile memory includes blocks that store data, and a second memory that stores overhead information related to the blocks storing the data. The amount of the second memory storing the overhead information related to the at least one block of the plurality of blocks is varied.
    Type: Application
    Filed: May 31, 2013
    Publication date: October 10, 2013
    Inventors: Giovanni Campardo, Stefano Corno, Gian Pietro Vanalli, Manuela Scognamiglio, Danilo Caraccio, Frederico Tiziani, Massimiliano Magni, Andrea Ghilardelli
  • Patent number: 8555143
    Abstract: A flash memory controller comprises a flash memory interface controller, a host interface controller, a random-access memory (RAM) interface controller, an ECC encoder, an ECC divider, an ECC constructor and an ECC decoder. The ECC encoder is configured to receive a write information datum from the host interface controller and generate an ECC datum. The ECC divider is configured to divide the generated ECC datum into a plurality of ECC segments. The ECC constructor is configured to receive a plurality of ECC segments from the flash memory interface controller and construct an ECC datum. The ECC decoder is configured to correct errors of a read information datum based on a read information datum and the constructed ECC datum and forward the corrected read information datum to the host interface controller when operated in a read mode.
    Type: Grant
    Filed: September 7, 2010
    Date of Patent: October 8, 2013
    Assignee: Industrial Technology Research Institute
    Inventor: Shen Ming Chung
  • Patent number: 8555130
    Abstract: A method begins by a processing module receiving a write request that includes a batch of encoded data slices and a corresponding batch of slice names, wherein the batch of encoded data slices includes encoded data slices that have slices names that have a common data object storage name, a common slice storage name, and a different data segment storage name. The method continues with the processing module determining whether a storage file exists based on the common data object storage name. The method continues with the processing module creating the storage file based on the common data object storage name when the storage file does not exist. The method continues with the processing module storing the batch of encoded data slices in the storage file based on the corresponding batch of slice names.
    Type: Grant
    Filed: October 4, 2011
    Date of Patent: October 8, 2013
    Assignee: Cleversafe, Inc.
    Inventors: Andrew Baptist, Ilya Volvovski, Wesley Leggette, Greg Dhuse, Jason K. Resch
  • Patent number: 8555144
    Abstract: A memory system includes code data generating section which generates code data based on write data. A nonvolatile semiconductor memory stores the write data and the code data for the write data and outputs read data and the code data for the read data. An error correcting section is configured to correct an error bit included in the read data using the read data and the code data for the read data, and outputs the read data which includes the error bit in accordance with a setting. An interface section receives the write data from outside of the memory system, and outputs the read data to outside of the memory system.
    Type: Grant
    Filed: November 14, 2011
    Date of Patent: October 8, 2013
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Hideo Aizawa
  • Publication number: 20130262960
    Abstract: A solid-state mass storage device and method of operating the storage device to anticipate the failure of at least one memory device thereof before a write endurance limitation is reached. The method includes assigning at least a first memory block of the memory device as a wear indicator that is excluded from use as data storage, using pages of at least a set of memory blocks of the memory device for data storage, writing data to and erasing data from each memory block of the set in program/erase (P/E) cycles, performing wear leveling on the set of memory blocks, subjecting the wear indicator to more P/E cycles than the set of memory blocks, performing integrity checks of the wear indicator and monitoring its bit error rate, and taking corrective action if the bit error rate increases.
    Type: Application
    Filed: May 24, 2013
    Publication date: October 3, 2013
    Inventors: Franz Michael Schuette, Lutz Filor
  • Patent number: 8549381
    Abstract: The storage system includes a plurality of flash memory devices, each of the flash memory devices including a flash memory controller and flash memory chips, which are configured as a RAID group and a storage controller, coupled to the plurality of flash memory devices, configured to receive data from a computer and send the data to a first flash memory device of the plurality of flash memory devices. The flash memory controller of the flash memory device is configured to receive the data from the storage controller and execute a parity operation using the data.
    Type: Grant
    Filed: July 16, 2012
    Date of Patent: October 1, 2013
    Assignee: Hitachi, Ltd.
    Inventors: Jun Kitahara, Masanori Takada, Sadahiro Sugimoto
  • Patent number: 8549385
    Abstract: Systems, methods, and other embodiments associated with soft decoding for a quantized channel are described. According to one embodiment, an apparatus includes a soft decoder configured to decode a signal received from a quantized channel based, at least in part, on one or more log likelihood ratios (LLRs). The apparatus may also include a reliability memory configured to store one or more known LLRs, and a controller configured to repetitively and selectively provide the soft decoder with known LLRs chosen from the reliability memory, to control the soft decoder to decode the signal, and to selectively update the reliability memory upon determining that the soft decoder successfully decoded the signal.
    Type: Grant
    Filed: December 3, 2010
    Date of Patent: October 1, 2013
    Assignee: Marvell World Trade Ltd.
    Inventor: Xueshi Yang
  • Patent number: 8549384
    Abstract: Apparatus having corresponding methods and computer-readable media comprise an encoder configured to provide encoded data according to an error correction code; a flash memory interface configured to write the encoded data to a location in flash memory, and to read the encoded data from the location in the flash memory; a decoder configured to decode the encoded data read from the location in the flash memory, and to indicate a number of resulting decode errors; and a retirement module configured to retire the location responsive to a number of resulting decode errors reaching an error threshold T.
    Type: Grant
    Filed: June 24, 2010
    Date of Patent: October 1, 2013
    Assignee: Marvell International Ltd.
    Inventors: ChengKuo Huang, Sui-Hung Fred Au, Xueshi Yang, Lau Nguyen
  • Publication number: 20130254628
    Abstract: A semiconductor memory system may include a read data manager configured to store data read from a memory device, a likelihood value mapper configured to map likelihood values to the data output from the data manager and output mapping data, and a decoder configured to perform low density parity check decoding on the mapping data by using a parity check matrix. The parity check matrix may be a k*N×M matrix including k*N×M submatrices, where k, N and M are independently an integer equal to or greater than 2.
    Type: Application
    Filed: January 31, 2013
    Publication date: September 26, 2013
    Inventors: NAMSHIK KIM, SEONG IN HWANG, HANHO LEE