Solid State Memory Patents (Class 714/773)
  • Publication number: 20150033096
    Abstract: A memory device has a plurality of individually erasable blocks of memory cells and a controller configured to configure a first block of memory cells in a first configuration comprising one or more groups of overhead data memory cells, and to configure a second block of memory cells in a second configuration comprising one or more groups of user data memory cells and at least one group of overhead data memory cells. The first configuration is different than the second configuration. At least one group of overhead data memory cells of the second block of memory cells comprises a different storage capacity than at least one group of overhead data memory cells of the first block of memory cells.
    Type: Application
    Filed: October 14, 2014
    Publication date: January 29, 2015
    Applicant: MICRON TECHNOLOGY, INC.
    Inventors: William H. Radke, Tommaso Vali, Michele Incarnati
  • Publication number: 20150026540
    Abstract: A flash device is provided. A flash memory includes a plurality of pages. A controller coupled to the flash memory includes an operating unit, an error correction code (ECC) decoder and a processing unit. The operating unit receives a plurality of bytes of the page which are from the flash memory and corresponding to a read command, and obtains an operating result according to a logic level of each bit of each of the bytes. The ECC decoder decodes the bytes of the page according to an ECC code. The processing unit determines whether the page is valid data according to the decoded bytes, and determines whether the page is an empty page according to the operating result when the page is not the valid data.
    Type: Application
    Filed: October 22, 2013
    Publication date: January 22, 2015
    Applicant: Silicon Motion, Inc.
    Inventor: Li-Shuo HSIAO
  • Patent number: 8938655
    Abstract: Providing for extended data retention of flash memory devices by program state rewrite is disclosed herein. By way of example, a memory cell or group of memory cells can be evaluated to determine a program state of the cell(s). If the cell(s) is in a program state, as opposed to a natural or non-programmed state, a charge level, voltage level and/or the like can be rewritten to a default level associated with the program state, without erasing the cell(s) first. Accordingly, conventional mechanisms for refreshing cell program state that require rewriting and erasing, typically degrading storage capacity of the memory cell, can be avoided. As a result, data stored in flash memory can be refreshed in a manner that mitigates loss of memory integrity, providing substantial benefits over conventional mechanisms that can degrade memory integrity at a relatively high rate.
    Type: Grant
    Filed: December 20, 2007
    Date of Patent: January 20, 2015
    Assignee: Spansion LLC
    Inventors: Darlene G. Hamilton, Mark W. Randolph, Don Carlos Darling, Ron Kornitz
  • Patent number: 8938659
    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: Grant
    Filed: January 30, 2013
    Date of Patent: January 20, 2015
    Inventors: YingQuan Wu, Earl T. Cohen
  • Publication number: 20150019922
    Abstract: Examples are given for generating or providing a moving read reference (MRR) table for recovering from a read error of non-volatile memory included in a storage device. In some examples, priorities may be adaptively assigned to entries included in the MRR table. The entries may be ordered for use based on the assigned priorities. In other examples, the MRR table may be ordered for use such that entries with a single MRR value for each read reference value may be used first over entries having multiple MRR values for each read reference value. For these other examples, the MRR table may be adaptively reordered based on which entries were successful or unsuccessful in recovering from a read error but may still be arranged to have single MRR value entries used first for use to recover from another read error.
    Type: Application
    Filed: September 26, 2014
    Publication date: January 15, 2015
    Inventors: Lark-Hoon Leem, Kiran Pangal, Xin Guo
  • Patent number: 8935595
    Abstract: A Solid-State Disk (SSD) controller uses LDPC decoding to enable flash memory accesses with improved latency and/or error correction capabilities. With SLC flash memory having a BER less than a predetermined value, the SSD controller uses a 1-bit read (single read) hard-decision LDPC decoder to access the flash memory. If the hard-decision LDPC decoder detects an uncorrectable error, then the SSD controller uses a 1.5-bit read (two reads) erasure-decision LDPC decoder to access the flash memory. With flash memory having a raw BER between two other predetermined values, the SSD controller omits the use of the hard-decision LDPC decoder and uses only the erasure-decision LDPC decoder to access the flash memory. Variations of the SSD controller similarly access MLC flash memory. Some SSD controllers dynamically switch between hard-decision and erasure-based decoders based on dynamic decoder selection criteria.
    Type: Grant
    Filed: March 11, 2011
    Date of Patent: January 13, 2015
    Assignee: LSI Corporation
    Inventors: Hao Zhong, Yan Li, Radoslav Danilak, Earl T Cohen
  • Patent number: 8935594
    Abstract: A structure of 3D memory comprises a plurality of stacking layers and a plurality of cells. The stacking layers are arranged in a three-dimensional array and disposed parallel to each other on a substrate, and the stacking layers comprises a plurality of stacking memory layers. The cells comprises a first group of cells (such as m of cells) for storing information data and a second group of cells (such as n of cells) for storing ECC (error checking and correcting) spare bits. All of the first group and the second group of cells are read out at the same time for performing an ECC function. The ECC spare bits in the 3D memory according to the present disclosure can be constructed at the same physical layer or at the different physical layers. The embodiments can be implemented, but not limited, by a vertical-gate (VG) structure or a finger VG structure.
    Type: Grant
    Filed: March 21, 2011
    Date of Patent: January 13, 2015
    Assignee: Macronix International Co., Ltd.
    Inventors: Shih-Hung Chen, Hang-Ting Lue, I-Jen Huang
  • Publication number: 20150012801
    Abstract: A method of detecting and correcting errors with BCH and LDPC engines for flash storage systems is provided and the steps of the method comprise: deciding the number i of sub-channels CH1˜CHi divided from the data channel depending on requirement; deriving the width selection of each sub-channel CHi; checking if the sum of width of each sub-channel CHi is equal to the length of the original channel 20 or not; if yes, run next step; if not, go back to the previous step and try again; and connecting each sub-channel CHi to a corresponding one of n BCH engines BCHn or a corresponding one of m LDPC engines Lm with a bus by one-by-one mapping, wherein i=n+m.
    Type: Application
    Filed: July 3, 2013
    Publication date: January 8, 2015
    Inventors: CHIH-NAN YEN, JUI-HUI HUNG, HSUEN-CHIH YANG
  • Publication number: 20150012802
    Abstract: Data that is stored in a higher error rate format in a nonvolatile memory is backed up in a lower error rate format. Data to be stored may be transferred once to on-chip data latches where it is maintained while it is programmed in both the high error rate format and the low error rate format without being resent to the nonvolatile memory.
    Type: Application
    Filed: May 19, 2014
    Publication date: January 8, 2015
    Applicant: SanDisk Technologies Inc.
    Inventors: Chris Avila, Gautam Dusija, Jian Chen, Mrinal Kochar, Abhijeet Manohar
  • Patent number: 8930778
    Abstract: An apparatus comprising a non-volatile memory and a controller. The controller is coupled to the non-volatile memory and configured to (i) accumulate a read disturb count for a first region of the non-volatile memory, (ii) accumulate error statistics for a second region of the non-volatile memory, (iii) determine, based upon both the read disturb count and the error statistics, whether the first region has reached a read disturb limit, and (iv) in response to determining that the first region has reached the read disturb limit, relocate at least some data of the first region.
    Type: Grant
    Filed: November 15, 2012
    Date of Patent: January 6, 2015
    Assignee: Seagate Technology LLC
    Inventor: Earl T. Cohen
  • Patent number: 8930780
    Abstract: The present invention is related to systems and methods for harmonizing testing and using a storage media. As an example, a data system is set forth that includes: a data decoder circuit, a data processing circuit, and a write circuit. The data decoder circuit is configured to decode a test data set to yield a result. The data processing circuit is configured to encode a user data set guided by the result to yield a codeword. The write circuit is configured to store an information set corresponding to the codeword to a storage medium.
    Type: Grant
    Filed: August 28, 2012
    Date of Patent: January 6, 2015
    Assignee: LSI Corporation
    Inventors: Shaohua Yang, Bruce A. Wilson
  • Publication number: 20150006998
    Abstract: A method, computer-readable storage media, and a system are provided for managing a scrub. The method may include detecting a trigger for the scrub. The trigger may be based upon a metric of a memory unit. The method may further include scrubbing the memory unit based upon the detection of the trigger.
    Type: Application
    Filed: June 28, 2013
    Publication date: January 1, 2015
    Inventors: Edgar R. Cordero, Gary A. Tressler, Diyanesh B. Vidyapoornachary
  • Publication number: 20150006999
    Abstract: A flash memory apparatus, a memory controller and a method for controlling a flash memory are provided. The memory controller includes a damaged-column manager, an error checking and correcting decoder (ECC decoder) and a damaged-column decision circuit. The damaged-column manager logs a damaged-column address information in the flash memory. The ECC decoder receives a read data read by the flash memory and generates an error information according to whether or not the read data has error. The damaged-column decision circuit receives the error-column address and counts the number of accumulated generated times corresponding to the error-column address. The damaged-column decision circuit updates the damaged-column address information according to an error information.
    Type: Application
    Filed: October 16, 2013
    Publication date: January 1, 2015
    Applicant: Asolid Technology Co., Ltd.
    Inventor: Chia-Ching Chu
  • Patent number: 8924824
    Abstract: An error management system for a data storage device can generate soft-decision log-likelihood ratios (LLRs) using multiple reads of memory locations. 0-to-1 and 1-to-0 bit flip count data provided by multiple reads of reference memory locations can be used to generate probability data that is used to generate possible LLR values for decoding target pages. Possible LLR values are stored in one or more look-up tables.
    Type: Grant
    Filed: March 12, 2013
    Date of Patent: December 30, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventor: Guangming Lu
  • Patent number: 8923066
    Abstract: A first read threshold associated with a first page in a block and a second read threshold associated with a second page in the block are received, where the first page has a first page number and the second page has a second page number. A slope and a y intercept are determined based at least in part on the first read threshold, the second read threshold, the first page number, and the second page number. The slope and the y intercept are stored with a block identifier associated with the block.
    Type: Grant
    Filed: March 28, 2013
    Date of Patent: December 30, 2014
    Assignee: SK hynix memory solutions inc.
    Inventors: Arunkumar Subramanian, Xiangyu Tang, Jason Bellorado, Lingqi Zeng, Frederick K. H. Lee
  • Patent number: 8924816
    Abstract: A method and system to improve the performance and/or reliability of a solid-state drive (SSD). In one embodiment of the invention, the SSD has logic to compress a block of data to be stored in the SSD. If it is not possible to compress the block of data below the threshold, the SSD stores the block of data without any compression. If it is possible to compress the block of data below the threshold, the SSD compresses the block of data and stores the compressed data in the SSD. In one embodiment of the invention, the SSD has logic to dynamically adjust or select the strength of the error correcting code of the data that is stored in the SSD. In another embodiment of the invention, the SSD has logic to provide intra-page XOR protection of the data in the page.
    Type: Grant
    Filed: August 9, 2013
    Date of Patent: December 30, 2014
    Assignee: Intel Corporation
    Inventor: Jawad B. Khan
  • Patent number: 8924832
    Abstract: A data storage system configured to efficiently search and update system data is disclosed. In one embodiment, the data storage system can attempt to correct errors in retrieved data configured to index system data. Metadata stored along with user data in a memory location can be configured to indicate a logical address associated in a logical-to-physical location mapping with a physical address at which user data and metadata are stored. The data storage system can generate modified versions of logical address indicated by the metadata and determine whether such modified versions match the physical address in the logical-to-physical mapping. Modified versions of the logical address can be generated by flipping one or more bits in the logical address indicated by the metadata. Efficiency can be increased and improved performance can be attained.
    Type: Grant
    Filed: June 26, 2012
    Date of Patent: December 30, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventor: Johnny A. Lam
  • Patent number: 8924820
    Abstract: According to one embodiment, a memory system includes a non-volatile semiconductor memory that includes memory cells each storing 3 bits, a control unit that writes data to the non-volatile semiconductor memory, and an encoding unit that generates a first parity for user data stored in the first page, a second parity for user data stored in the second page, and a third parity for user data stored in the third page. The user data, the first parity, the third parity, and a portion of the second parity are written to the non-volatile semiconductor memory by a first data coding and a portion of the second parity and a portion of the third parity are written to the non-volatile semiconductor memory by second data coding in which the first page is 0 bit, the second page is 2 bits, and the third page is 1 bit.
    Type: Grant
    Filed: February 8, 2013
    Date of Patent: December 30, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Tokumasa Hara, Osamu Torii
  • Publication number: 20140380129
    Abstract: Provided is a method of reading data in a memory system including a non-volatile memory device. The method includes reading first data stored in a first block using a first read scheme capable of detecting/correcting an error in the first data, and upon determining an uncorrected error in the first data, setting the first block as a first temporary bad block and reading second data stored in the first temporary bad block using a second read scheme different from the first read scheme.
    Type: Application
    Filed: June 23, 2014
    Publication date: December 25, 2014
    Inventors: HYUN-HO SHIN, HEUNG-SOO LIM
  • Publication number: 20140380130
    Abstract: In various embodiments, an apparatus, system, and method may increase data integrity in a redundant storage system. In one embodiment, a request is received for data stored at a storage system having a plurality of storage elements, where one or more of the plurality of storage elements include parity information. A determination is made that one of the plurality of storage elements is unavailable, the unavailable storage element being a functional storage element and including at least a portion of the data. Responsive to the determination, the data is reconstructed based on at least a portion of the parity information and data from one or more of the plurality of storage elements other than the unavailable storage element; a response is provided to the request such that the response includes the reconstructed data.
    Type: Application
    Filed: September 8, 2014
    Publication date: December 25, 2014
    Inventors: Jonathan Thatcher, David Flynn, Joshua Aune, Jeremy Fillingim, Bill Inskeep, John Strasser, Kevin Vigor
  • Patent number: 8918703
    Abstract: A memory system includes a link having at least one signal line and a controller. The controller includes at least one transmitter coupled to the link to transmit first data, and a first error protection generator coupled to the transmitter. The first error protection generator dynamically adds an error detection code to at least a portion of the first data. At least one receiver is coupled to the link to receive second data. A first error detection logic determines if the second data received by the controller contains at least one error and, if an error is detected, asserts a first error condition. The system includes a memory device having at least one memory device transmitter coupled to the link to transmit the second data. A second error protection generator coupled to the memory device transmitter dynamically adds an error detection code to at least a portion of the second data.
    Type: Grant
    Filed: December 29, 2012
    Date of Patent: December 23, 2014
    Assignee: Rambus Inc.
    Inventors: Ely K. Tsern, Mark A. Horowitz, Frederick A. Ware
  • Publication number: 20140372833
    Abstract: A data protecting method, a memory controller, and a memory storage device are provided. The data protecting method includes following steps. A first flush command and a first write command instructing to write a first data are received from a host system. A first error correcting code and a corresponding second error correcting code having different protection capabilities are generated according to the first data. A second write command instructing to write a second data is received. After the first write command is received, a second flush command is received from the host system, and the second error correcting code corresponding to the first data is then written into a rewritable non-volatile memory module. A second error correcting code corresponding to the second data is not generated or is generated but not written into the rewritable non-volatile memory module. Thereby, data from the host system is protected.
    Type: Application
    Filed: August 2, 2013
    Publication date: December 18, 2014
    Applicant: Phison Electronics Corp.
    Inventor: Ming-Jen Liang
  • Patent number: 8914708
    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: Grant
    Filed: June 15, 2012
    Date of Patent: December 16, 2014
    Assignee: International Business Machines Corporation
    Inventors: Patrick J. Meaney, Arthur J. O'Neill, Gary E. Strait
  • Patent number: 8914706
    Abstract: A system for software error-correcting code (ECC) protection or compression of original data using ECC data in a first memory is provided. The system includes a processing core for executing computer instructions and accessing data from a main memory, and a non-volatile storage medium for storing the computer instructions. The software ECC protection or compression includes: a data matrix for holding the original data in the first memory; a check matrix for holding the ECC data in the first memory; an encoding matrix for holding first factors in the main memory, the first factors being for encoding the original data into the ECC data; and a thread for executing on the processing core. The thread includes a Galois Field multiplier for multiplying entries of the data matrix by an entry of the encoding matrix, and a sequencer for ordering operations using the Galois Field multiplier to generate the ECC data.
    Type: Grant
    Filed: December 26, 2012
    Date of Patent: December 16, 2014
    Assignee: Streamscale, Inc.
    Inventor: Michael H. Anderson
  • Patent number: 8914702
    Abstract: An information processing apparatus has an error correction function for checking an error of stored data read out from a flash memory. If an error is found, error information thereof is temporarily stored into a register and then stored in a nonvolatile memory at an appropriate timing. At an appropriate timing such as power-on, the information processing apparatus reads the stored data in which the error is found again on the basis of the error information stored in the nonvolatile memory, corrects the error and then rewrites the stored data into the flash memory. It is thereby possible to repair a recoverable bit error such as a read disturb. Therefore, a normal read operation can be performed without a hitch, and this can avoid giving any uncomfortable feeling to users.
    Type: Grant
    Filed: January 25, 2008
    Date of Patent: December 16, 2014
    Assignee: MegaChips Corporation
    Inventor: Takashi Oshikiri
  • Patent number: 8910019
    Abstract: An apparatus and method which uses error correcting code for veiling and detecting data is provided. The method includes encoding protected data using an Error Correcting Code (ECC); inserting a progression to the encoded protected data according to a preset rule; combining an error with the progression-inserted protected data; and storing the error-combined protected data in an arbitrary position in the memory.
    Type: Grant
    Filed: August 22, 2012
    Date of Patent: December 9, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Seho Myung, Bogyeong Kang
  • Patent number: 8910000
    Abstract: Subject matter disclosed herein relates to a memory device, and more particularly to read or write performance of a phase change memory.
    Type: Grant
    Filed: May 17, 2012
    Date of Patent: December 9, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Ferdinando Bedeschi
  • Patent number: 8910023
    Abstract: Systems, methods, and other embodiments associated with soft decoding for a quantized channel are described. According to one embodiment, a method includes repetitively controlling the soft decoder to attempt to decode the signal based, at least in part, on a reliability measure selected from a pre-determined collection of reliability measures. When the soft decoder fails to decode the signal, the method includes computing a new reliability measure and repetitively controlling the soft decoder to attempt to decode the signal based, at least in part, on the new reliability measure. When the soft decoder decodes the signal with the new reliability measure, the method includes adding the new reliability to the pre-determined collection of reliability measures.
    Type: Grant
    Filed: September 23, 2013
    Date of Patent: December 9, 2014
    Assignee: Marvell World Trade Ltd.
    Inventor: Xueshi Yang
  • Publication number: 20140359399
    Abstract: This disclosure relates to validating data written to logical blocks on a storage subsystem adapted so that during write operations an additional sequence code is written to each logical block of data, where the sequence code remains constant for each write operation batch and where the sequence code is incremented for each new write operation batch. A sequence code verification system may comprise a data reader, a validity engine, and an error notifier. The data reader may read sequence codes from consecutive logical blocks. The validity engine may invalidate write operations in response to checking data validity by applying comparison operations to sequence codes and block offsets of batch write operations. The error notifier may notify a user of an error for each invalidated write operation batch.
    Type: Application
    Filed: April 22, 2014
    Publication date: December 4, 2014
    Applicant: International Business Machines Corporation
    Inventors: Huw Francis, David A. Sinclair
  • Publication number: 20140359398
    Abstract: Portions of data stored in a three dimensional memory array are selected based on their locations for calculation of redundancy data. Locations are selected so that no two portions in a set of portions for a given calculation are likely to become uncorrectable at the same time. Selected portions may be separated by at least one word line and separated by at least one string in a block.
    Type: Application
    Filed: June 3, 2013
    Publication date: December 4, 2014
    Inventors: Chris Nga Yee Avila, Gautam Ashok Dusija, Jian Chen, Yingda Dong, Man Lung Mui, Seungpil Lee, Alexander Kwok-Tung Mak
  • Publication number: 20140359400
    Abstract: Portions of data stored in a three dimensional memory array are selected based on their locations for calculation of redundancy data. Locations are selected so that no two portions in a set of portions for a given calculation are likely to become uncorrectable at the same time. Selected portions may be separated by at least one word line and separated by at least one string in a block.
    Type: Application
    Filed: May 19, 2014
    Publication date: December 4, 2014
    Applicant: SanDisk Technologies Inc.
    Inventors: Chris Avila, Gautam Dusija, Jian Chen, Yingda Dong, Man Mui, Seungpil Lee, Alex Mak
  • Publication number: 20140359401
    Abstract: The present invention discloses a field-repair system and method for three-dimensional mask-programmed memory (3D-MPROM). Most 3D-MPROM data are not checked in factory, but checked and repaired in field. The field-repair system comprises a playback device with a communicating means. Once the playback device detects bad data from the 3D-MPROM, it uses the communicating means to fetch good data to replace the bad data from a remote server, which stores at least a correct copy of the 3D-MPROM data.
    Type: Application
    Filed: August 18, 2014
    Publication date: December 4, 2014
    Applicant: HANGZHOU HAICUN INFORMATION TECHNOLOGY CO. LTD.
    Inventor: Guobiao ZHANG
  • Patent number: 8904260
    Abstract: The invention is a memory system having two memory banks which can store and recall with memory error detection and correction on data of two different sizes. For writing separate parity generators form parity bits for respective memory banks. For reading separate parity detector/generators operate on data of separate memory banks.
    Type: Grant
    Filed: September 23, 2011
    Date of Patent: December 2, 2014
    Assignee: Texas Instruments Incorporated
    Inventors: Jonathan (Son) Hung Tran, Abhijeet Ashok Chachad, Joseph Raymond Michael Zbiciak, Krishna Chaithanya Gurram
  • Patent number: 8904261
    Abstract: A mechanism is provided for controlling a solid state storage device in which the solid state storage comprises erasable blocks each comprising a plurality of data write locations. Input data is stored in successive groups of data write locations, each group comprising write locations in a set of erasable blocks in each of a plurality of logical subdivisions of the solid state storage. The input data is error correction encoded such that each group contains an error correction code for the input data in that group. Metadata, indicating the location of input data in the solid state storage, is maintained in memory. An indication of validity of data stored in each data write location is also maintained. Prior to erasing a block, valid input data is recovered from the each said group containing write locations in that block. The recovered data is then re-stored as new input data.
    Type: Grant
    Filed: December 16, 2010
    Date of Patent: December 2, 2014
    Assignee: International Business Machines Corporation
    Inventors: Roy D. Cideciyan, Evangelos S. Eleftheriou, Robert Haas, Xiao-Yu Hu, Ilias Iliadis
  • Publication number: 20140351675
    Abstract: In various embodiments, a single virtualized error correcting code (ECC) NAND controller executes an ECC algorithm and manages a stack of NAND flash memories. The virtualized ECC NAND controller allows the host processor to drive the stack of flash memory devices as a single NAND chip while the controller redirects the data to the selected NAND memory device in the stack. In various embodiments, a controller manages a plurality of NAND memory devices. The controller provides power to a select one of the plurality of NAND memory devices at a time to conserve overall power consumption of the storage system.
    Type: Application
    Filed: August 11, 2014
    Publication date: November 27, 2014
    Inventors: Federico Tiziani, Giovanni Campardo, Massimo Iaculo, Claudio Giaccio, Manuela Scognamiglio, Danilo Caraccio, Ornella Vitale, Antonino Pollio
  • Patent number: 8898545
    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: Grant
    Filed: May 18, 2012
    Date of Patent: November 25, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Takashi Tsunehiro, Akifumi Suzuki, Junji Ogawa
  • Patent number: 8898548
    Abstract: A data storage device may comprise an array of flash memory devices and a controller coupled thereto, configured to program and read data from the array responsive to received data access commands. The array may comprise a plurality of blocks, each comprising a plurality of flash pages (F-Pages), each of which comprising an integer number of one or more error correcting code pages (E-Pages), at least some of which comprising a data portion and an error correction code (ECC) portion. The controller may be configured to store a plurality of logical pages (L-Pages) in one or more of the plurality of E-Pages, at least some being unaligned with boundaries of the E-Pages; and to adjust, in at least one of the blocks, the size of the ECC portion and correspondingly adjust the size of the data portion of the E-Pages.
    Type: Grant
    Filed: August 24, 2012
    Date of Patent: November 25, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventors: Rodney N. Mullendore, Radoslav Danilak, Justin Jones, Andrew J. Tomlin
  • Patent number: 8898546
    Abstract: Data is processed by selecting one or more bits in a codeword to replace with an erasure. The selected bits in the codeword are replaced with the erasure and error correction decoding is performed on the codeword with the erasure in place for the selected bits.
    Type: Grant
    Filed: September 7, 2012
    Date of Patent: November 25, 2014
    Assignee: SK hynix memory solutions inc.
    Inventors: Yu Kou, Xiangyu Tang
  • Patent number: 8898542
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a partial task regarding an encoded data block grouping. The method continues with the DS processing module performing the partial task on the encoded data block grouping to produce a partial task result and determining subsequent treatment of the partial task result. When the subsequent treatment includes storage of the partial task result, the method continues with the DS processing module determining a manner in which the partial task result is to be stored. When the manner in which the partial task result is to be stored is dispersed storage, the method continues with the DS processing module dispersed storage error encoding the partial task result to produce one or more sets of encoded partial task result blocks and outputting the one or more sets of encoded partial task result blocks to a set of DST execution units.
    Type: Grant
    Filed: December 6, 2012
    Date of Patent: November 25, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Wesley Leggette, Andrew Baptist, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Manish Motwani, S. Christopher Gladwin, Gary W. Grube, Thomas Franklin Shirley, Jr.
  • Publication number: 20140344647
    Abstract: A controller for a nonvolatile memory device includes a transfer control module and a decoder module. The transfer control module is configured to request a read of data from a flash memory module. The data to be read includes data corresponding to a first codeword. The transfer control module is configured to receive hard decisions corresponding to the first codeword from the flash memory module. The transfer control module is configured to receive soft information corresponding to the first codeword from the flash memory module. Both the hard decisions corresponding to the first codeword and the soft information corresponding to the first codeword are received without receiving any intervening hard decisions or soft information corresponding to another codeword. The decoder module is configured to decode the first codeword using the hard decisions and the soft information corresponding to the first codeword.
    Type: Application
    Filed: May 1, 2014
    Publication date: November 20, 2014
    Applicant: Marvell World Trade LTD.
    Inventors: Shashi Kiran Chilappagari, Gregory Burd
  • Publication number: 20140337689
    Abstract: A method and system to improve the performance and/or reliability of a solid-state drive (SSD). In one embodiment of the invention, the SSD has logic compress a block of data to be stored in the SSD. If it is not possible to compress the block of data below the threshold, the SSD stores the block of data without any compression. If it is possible to compress the block of data below the threshold, the SSD compresses the block of data and stores the compressed data in the SSD. In one embodiment of the invention, the SSD has logic to dynamically adjust or select the strength of the error correcting code of the data that is stored in the SSD. In another embodiment of the invention, the SSD has logic to provide intra-page XOR protection of the data in the page.
    Type: Application
    Filed: July 23, 2014
    Publication date: November 13, 2014
    Inventor: Jawad B. KHAN
  • Patent number: 8887026
    Abstract: A method for error detection includes storing in an associative memory multiple data entries, each data entry including a data item together with one or more check symbols computed with respect to the data item. A predetermined sequence of search keys is applied to the memory, thereby causing the memory to generate, in parallel, match results with respect to the data entries. The match results are processed in order to identify an error in at least one of the data entries.
    Type: Grant
    Filed: April 12, 2010
    Date of Patent: November 11, 2014
    Assignees: Ben Gurion University of the Negev, Interdisciplinary Center Herzliya, Technion Research & Development Foundation Ltd.
    Inventors: Anat Bremler-Barr, David Hay, Danny Hendler, Ron M. Roth
  • Patent number: 8887028
    Abstract: Embodiments of the present disclosure provide methods, systems, and apparatuses related to multilevel encoding with error correction. In some embodiments, a plurality of bits may be encoded into a plurality of memory cells by responding to bits of the plurality of bits by changing the logic levels of corresponding groups of memory cells of the plurality of memory cells. Other embodiments may be described and claimed.
    Type: Grant
    Filed: February 21, 2014
    Date of Patent: November 11, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Christopher Bueb
  • Patent number: 8887027
    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: Grant
    Filed: May 24, 2013
    Date of Patent: November 11, 2014
    Assignee: OCZ Storage Solutions, Inc.
    Inventors: Franz Michael Schuette, Lutz Filor
  • Publication number: 20140331107
    Abstract: A method of storing system data, and a memory controller and a memory storage apparatus using the same are provided. The method includes determining whether the unused storage space of a system physical erase unit is enough for storing updated system data. The method further includes, if the unused storage space of the system physical erase unit is not enough for storing the updated system data, selecting an empty physical erase unit, writing the updated system data into at least one first physical program unit of the selected physical erase unit and writing dummy data into a second physical program unit of the selected physical erase unit.
    Type: Application
    Filed: July 21, 2014
    Publication date: November 6, 2014
    Inventor: Shun-Bin Cheng
  • Publication number: 20140325316
    Abstract: Data protection across multiple memory blocks can include writing a first portion of a codeword in a first location of a first memory block and writing a second portion of the codeword in a second location of a second memory block. The second location can be different than the first location with respect to the second and the first memory blocks.
    Type: Application
    Filed: April 17, 2014
    Publication date: October 30, 2014
    Applicant: Micron Technology, Inc.
    Inventors: Sampath K. Ratnam, Troy D. Larsen, Doyle W. Rivers, Troy A. Manning, Martin L. Culley
  • Publication number: 20140325317
    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: April 28, 2014
    Publication date: October 30, 2014
    Applicant: MICRON TECHNOLOGY, INC.
    Inventor: William H. Radke
  • Publication number: 20140325318
    Abstract: A first decoder performs decoding on each data set in a first plurality of data sets using a first code; each data set in the first plurality is stored on a different chip. It is determined if the first decoding is successful; if not, a second decoder performs a second decoding on each data set in a second plurality of data sets using a second code; each data set in the second plurality includes at least some data, after the first decoding using the first code, from each data set in the first plurality. The first decoder performs a third decoding on each data set in the first plurality using the first code, where each data set in the first plurality includes at least some data, after the second decoding using the second code, from each data set in the second plurality.
    Type: Application
    Filed: April 30, 2014
    Publication date: October 30, 2014
    Applicant: SK hynix memory solutions inc.
    Inventors: Marcus Marrow, Rajiv Agarwal
  • Patent number: 8874997
    Abstract: A system comprising a memory, and a control module external to the memory. The memory includes a plurality of cells. The control module is configured to receive user data to be stored in the plurality of cells, select one of a plurality of sequences of pilot data, based on the selected one of the plurality of sequences of pilot data, generate pilot data having a known predetermined sequence, combine the pilot data with the user data, and output the combined pilot data and user data. A write module is configured to write the combined pilot data and user data to the plurality of cells of the memory.
    Type: Grant
    Filed: January 17, 2014
    Date of Patent: October 28, 2014
    Assignee: Marvell International Ltd.
    Inventors: Xueshi Yang, Zining Wu
  • Patent number: 8874979
    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: Grant
    Filed: June 14, 2012
    Date of Patent: October 28, 2014
    Assignee: International Business Machines Corporation
    Inventors: Edgar R. Cordero, Anil B. Lingambudi, Saravanan Sethuraman, Kenneth L. Wright