Solid State Memory Patents (Class 714/773)
  • Publication number: 20140157078
    Abstract: A data storage device may comprise a flash controller and an array of flash memory devices coupled to the flash controller. The array may comprise a plurality of S-Pages that may each comprise a plurality of F-Pages. In turn, each of the plurality of F-Pages may be configured to store a variable amount of data and a variable amount of error correction code. The flash controller may be configured to generate an error correction code across each F-Page of an S-Page and to store the generated error correction code within one or more F-Pages having the largest amount of data.
    Type: Application
    Filed: January 31, 2013
    Publication date: June 5, 2014
    Applicant: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventor: WESTERN DIGITAL TECHNOLOGIES, INC.
  • Publication number: 20140157085
    Abstract: A method for data storage includes storing data in a memory that includes one or more memory units, each memory unit including memory blocks. The stored data is compacted by copying at least a portion of the data from a first memory block to a second memory block, and subsequently erasing the first memory block. Upon detecting a failure in the second memory block after copying the portion of the data and before erasure of the first memory block, the portion of the data is recovered by reading the portion from the first memory block.
    Type: Application
    Filed: February 5, 2014
    Publication date: June 5, 2014
    Applicant: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Julian Vlaiko, Moshe Neerman
  • Publication number: 20140157090
    Abstract: A method for data storage includes storing first data bits in a set of multi-bit analog memory cells at a first time by programming the memory cells to assume respective first programming levels. Second data bits are stored in the set of memory cells at a second time that is later than the first time by programming the memory cells to assume respective second programming levels that depend on the first programming levels and on the second data bits. A storage strategy is selected responsively to a difference between the first and second times. The storage strategy is applied to at least one group of the data bits, selected from among the first data bits and the second data bits.
    Type: Application
    Filed: February 6, 2014
    Publication date: June 5, 2014
    Applicant: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
  • Publication number: 20140157086
    Abstract: Systems and methods of encoding and decoding shaped data include determining a bit representation corresponding to a bit in a representation of a codeword that is read from a non-volatile memory of a data storage device. A soft metric corresponding to the bit representation is determined at least partially based on an amount of shaping of data.
    Type: Application
    Filed: November 30, 2012
    Publication date: June 5, 2014
    Applicant: SANDISK TECHNOLOGIES INC.
    Inventors: ERAN SHARON, IDAN ALROD, OMER FAINZILBER, ARIEL NAVON
  • Publication number: 20140157088
    Abstract: Some aspects of the present disclosure relate a method. The method attempts to write an expected multi-bit word to a memory location in memory. After writing of the multi-bit word has been attempted, an actual multi-bit word is read from the memory location. The actual multi-bit word is then compared with the expected multi-bit word to identify a number of erroneous bits and a number of correct bits stored in the memory location. The number of erroneous bits is re-written to the memory location without attempting to re-write the correct bits to the memory location.
    Type: Application
    Filed: June 14, 2013
    Publication date: June 5, 2014
    Inventors: Yue-Der Chih, Hung-Chang Yu, Kai-Chun Lin, Chin-Yi Huang, Laun C. Tran
  • Publication number: 20140157087
    Abstract: In a flash memory, redundant columns are used alternatively as replacement columns for replacing bad columns or to provide additional redundancy for ECC encoding. Locations of bad columns are indicated to a soft-input ECC decoder so that data bits from bad columns are treated as having a lower reliability than data bits from other columns.
    Type: Application
    Filed: March 11, 2013
    Publication date: June 5, 2014
    Applicant: SanDisk Technologies, Inc.
    Inventors: Damian Pablo Yurzola, Eran Sharon, Idan Alrod, Michael Altshuler, Madhuri Kotagiri, Rajeev Nagabhirava
  • Publication number: 20140157089
    Abstract: Methods, systems, and devices are described for forward error correction for flash memory. Encoded data from flash memory may be used to generate a number of data streams. At each of a number of error detection sub-modules operating in parallel, a different one of the data streams is processed. Each error detection sub-module may detect whether a portion of the respective received stream contains an error, and forward the portion to an error correction module. The error correction module, physically separate from the error detection sub-modules, may correct the forwarded portions of the respective received streams containing an error. The age and error rate associated with the flash memory may be monitored, and a coding rate or other aspects may be dynamically adapted to account for these factors.
    Type: Application
    Filed: November 21, 2013
    Publication date: June 5, 2014
    Applicant: VIASAT, INC.
    Inventors: SAMEEP DAVE, RUSSELL FUERST, MARK KOHOOT, JIM KESZENHEIMER, WILLIAM H THESLING
  • Patent number: 8745464
    Abstract: Embodiments of the present disclosure describe methods, apparatus, and system configurations for providing rank-specific cyclic redundancy checks in memory systems.
    Type: Grant
    Filed: August 15, 2013
    Date of Patent: June 3, 2014
    Assignee: Intel Corporation
    Inventors: Ramesh Subashchandrabose, Tessil Thomas, Sambaran Mitra, Debaleena Das, Kai Cheng
  • Publication number: 20140149828
    Abstract: A joint encoding/decoding method for a solid state drive is provided. Firstly, a data-writing process is implemented for encoding a user data by a hard codec and a soft codec respectively, thereby generating a first number of parity bits and a second number of parity bits. Then, the user data, the first number of parity bits and the second number of parity bits are written into a flash memory module. Then, a data-reading process is implemented for decoding the user data by the hard codec according to the first number of parity bits. If the user data is successfully decoded, the user data is outputted. If the user data is unsuccessfully decoded, a step of decoding the user data by the soft codec according to the second number of parity bits is performed.
    Type: Application
    Filed: April 1, 2013
    Publication date: May 29, 2014
    Applicant: LITE-ON IT CORPORATION
    Inventors: Hsie-Chia Chang, Chi-Heng Yang, Shih-Jia Zeng
  • Patent number: 8739008
    Abstract: A method for determining a parity check matrix utilized in a flash memory system is disclosed. The parity check matrix comprises M×N blocks. The method includes generating a first set of candidate blocks as candidates of a first set of blocks of the M×N blocks; calculating a plurality of first estimated results corresponding to the first set of candidate blocks; determining content of a first block of the M×N blocks according to a best result of the first estimated results; generating a second set of candidate blocks as candidates of a second set of blocks of the M×N blocks; calculating a plurality of second estimated results corresponding to the second set of candidate blocks by considering the content of the first block; determining content a second block of the M×N blocks according to the second estimated results.
    Type: Grant
    Filed: February 22, 2012
    Date of Patent: May 27, 2014
    Assignee: Silicon Motion, Inc.
    Inventor: Zhen-U Liu
  • Patent number: 8739004
    Abstract: Various embodiments of the present inventions provide a symbol flipping LDPC decoding system. For example, a symbol flipping data processing system is disclosed that includes a low density parity check decoder operable to decode codewords and to identify unsatisfied parity checks, a symbol flipping controller operable to change values of at least one symbol in the codewords based on the unsatisfied parity checks to assist the low density parity check decoder to decode the codewords, a scheduler operable to control a decoding and symbol flipping mode in the low density parity check decoder and the symbol flipping controller, and a hard decision queue operable to store hard decisions for converged codewords from the low density parity check decoder.
    Type: Grant
    Filed: May 10, 2012
    Date of Patent: May 27, 2014
    Assignee: LSI Corporation
    Inventors: Sancar K. Olcay, Lei Chen, Madhusudan Kalluri, Johnson Yen, Ngok Ying Chu
  • Patent number: 8738996
    Abstract: A system includes a flash memory, an encoder, a first interface, a decoder and a controller. The encoder is configured to (i) receive data, and (ii) encode the data based on an error correction code. The first interface is configured to (i) write the encoded data to a memory cells in the flash memory, and (ii) read the encoded data back from the memory cells. The decoder is configured to (i) decode the encoded data read back from the memory cells, and (ii) based on the decoded data, determine a number of decoding errors for the plurality of memory cells. The controller is configured to, in response to the number of decoding errors being greater than or equal to a first threshold, cease accessing the memory cells. The first threshold is less than a maximum number of errors correctable by the error correction code for the memory cells.
    Type: Grant
    Filed: October 1, 2013
    Date of Patent: May 27, 2014
    Assignee: Marvell International Ltd.
    Inventors: Chen Kuo Huang, Sui-Hung Fred Au, Xueshi Yang, Lau Nguyen
  • Publication number: 20140143637
    Abstract: Described embodiments provide a media controller to read data stored in a media. The media controller determines a value for each bit of a shortened codeword from the media. The shortened codeword includes a plurality of non-shortened bits of a full codeword, where the full codeword includes the plurality of non-shortened bits and one or more shortened bits. Shortened bits correspond to bits unused in the shortened codeword. The media controller converts the determined values for each bit of the shortened codeword into a first set of log-likelihood ratio (LLR) values. The full codeword is decoded using the first set of LLR values for the shortened codeword. The media controller dampens one or more LLR values corresponding to non-shortened bits of the codeword to produce a second set of LLR values and decodes the second set of LLR values.
    Type: Application
    Filed: July 3, 2013
    Publication date: May 22, 2014
    Inventors: Earl T. Cohen, Erich F. Haratsch, Abdel-Hakim S. Alhussien
  • Patent number: 8732557
    Abstract: Data protection across multiple memory blocks can include writing a first portion of a codeword in a first memory block and writing a second portion of the codeword in a second memory block. The first memory block and the second memory block can be different memory blocks. The first portion of the codeword can be written in a different location in the first memory block than the second portion of the codeword is written in the second memory block.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: May 20, 2014
    Assignee: Micron Technology, Inc.
    Inventors: Sampath K. Ratnam, Troy D. Larsen, Doyle W. Rivers, Troy A. Manning, Martin L. Culley
  • Patent number: 8732544
    Abstract: A semiconductor memory device includes a plurality of detecting code generators configured to generate a plurality of detecting codes to detect errors in a plurality of data items, respectively, a plurality of first correcting code generators configured to generate a plurality of first correcting codes to correct errors in a plurality of first data blocks, respectively, each of the first data blocks containing one of the data items and a corresponding detecting code, a second correcting code generators configured to generate a second correcting code to correct errors in a second data block, the second data block containing the first data blocks, and a semiconductor memory configured to nonvolatilely store the second data block, the first correcting codes, and the second correcting code.
    Type: Grant
    Filed: February 4, 2013
    Date of Patent: May 20, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Shinichi Kanno, Hironori Uchikawa
  • Publication number: 20140136915
    Abstract: A memory device includes but is not limited to a non-volatile memory array and control logic integrated with and distributed over the non-volatile memory array. The control logic can be operable to maintain a plurality of copies of data in the non-volatile memory array and detect errors by comparison of selected ones of the plurality of copies.
    Type: Application
    Filed: November 28, 2012
    Publication date: May 15, 2014
    Applicant: Elwha LLC, a limited liability corporation of the State of Delaware
    Inventor: Elwha LLC, a limited liability corporation of the State of Delaware
  • Publication number: 20140136929
    Abstract: A storage medium receiving write data provided by a host device, providing read data to the host and including a first module and a second module is disclosed. The first module includes a first memory cell and a first controller. The first memory cell stores the write data. The first controller reads the first memory cell to generate a first accessing result. The second module includes a second memory cell and a second controller. The second memory cell stores the write data. The second controller reads the second memory cell. When the first accessing result has an error and the error cannot be corrected by the first controller, the first controller requests the second controller to read the second memory cell to generate a second accessing result, and the second controller serves the second accessing result as the read data and provides the read data to the host.
    Type: Application
    Filed: July 22, 2013
    Publication date: May 15, 2014
    Applicant: Silicon Motion, Inc.
    Inventors: Cheng-Wei LIU, Hsu-Ping OU
  • Publication number: 20140136928
    Abstract: A method of programming a non-volatile semiconductor memory device includes determining a number of bit cells that failed to program verify during a program operation. The bit cells are included in a subset of bit cells in an array of bit cells. The method further determines whether an Error Correction Code (ECC) correction has been previously performed for the subset of bit cells. The program operation is considered successful if the number of bit cells that failed to program verify after a predetermined number of program pulses is below a threshold number and the ECC correction has not been performed for the subset of bit cells.
    Type: Application
    Filed: November 12, 2012
    Publication date: May 15, 2014
    Inventors: FUCHEN MU, Chen He
  • Patent number: 8726127
    Abstract: A method begins by a computing device determining that dispersed storage network (DSN) memory is to be accessed regarding data. The method continues when the computing device is paired with a DSN access token module with the DSN access token module retrieving a plurality of sets of at least a threshold number of dispersed storage (DS) error coding function slices from the DSN memory via the computing device. The method continues with at least one of the computing device and the DSN access token module decoding the plurality of sets of the at least a threshold number of DS error coding function slices using a default DS error coding function to recapture a DS error coding function and executing, by one or more of the computing device and the DSN access token module, the DS error coding function to access the DSN memory regarding the data.
    Type: Grant
    Filed: January 10, 2012
    Date of Patent: May 13, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Wesley Leggette
  • Patent number: 8726130
    Abstract: An output buffer circuit for a non-volatile memory comprises an error check circuit, an error correction circuit, a switch circuit, and three storage circuits. The error check circuit receives the plurality of data bits and the plurality of ECC bits from the non-volatile memory to determine if the plurality of data bits need to be corrected and generates a correction signal. The error correction circuit receives the plurality of data bits and the plurality of ECC bits and generates a plurality of corrected data bits in response to the correction signal. A switch enables the output buffer circuit to concurrently performs operations of error check, error correction, and transfer of data bits out of the output buffer circuit on three distinct pluralities of data bits. The switch allows reallocation of storage circuits to different operations without any data transfer.
    Type: Grant
    Filed: June 1, 2010
    Date of Patent: May 13, 2014
    Assignee: Greenliant LLC
    Inventor: Siamak Arya
  • Patent number: 8726120
    Abstract: A method begins with a processing module receiving an access request for the data object. The method continues by ascertaining that the data object is divided into a plurality of data segments and that plurality of data segments are dispersed storage error encoded to produce a plurality of sets of encoded data slices. The method continues by ascertaining batching of the plurality of sets of encoded data slices, wherein the plurality of sets of encoded data slices are arranged into a set of batched encoded data slices. The method continues by outputting a set of access requests for the set of batched encoded data slices to storage units of the DSN.
    Type: Grant
    Filed: October 4, 2013
    Date of Patent: May 13, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Andrew Baptist, Ilya Volvovski, Wesley Leggette, Greg Dhuse, Jason K. Resch
  • Publication number: 20140129906
    Abstract: Memory devices and methods are described such as those that mix data and associated error correction code blocks between multiple memory device locations. Examples include mixing between multiple memory blocks, mixing between memory pages, mixing between memory chips and mixing between memory modules. In selected examples, memory blocks and associated error correction code are mixed between multiple levels of memory device hierarchy.
    Type: Application
    Filed: January 13, 2014
    Publication date: May 8, 2014
    Applicant: Micron Technology, Inc.
    Inventor: William Henry Radke
  • Patent number: 8719680
    Abstract: Methods and apparatus are disclosed related to a memory device, such as a flash memory device that includes an array of memory cells. One such method includes detecting values of charges stored in selected memory cells in the memory cell array. The method also includes processing the detected values in accordance with a Viterbi algorithm so as to determine data stored in the selected memory cells. In one embodiment, the flash memory cell array includes word lines and bit lines. Detecting the values of charges includes detecting values of charges stored in a selected row of memory cells by selecting one of the word lines. The Viterbi algorithm provides correct data where inter-signal interference between the cells affects the accuracy of read data.
    Type: Grant
    Filed: June 27, 2013
    Date of Patent: May 6, 2014
    Assignee: Micron Technology, Inc.
    Inventors: Frankie Roohparvar, Vishal Sarin, William Radke
  • Patent number: 8719670
    Abstract: A system for decoding data is disclosed. The system includes: an input interface configured to receive data associated with encoded data; a first decoder configured to decode a first subset of the encoded data to obtain a first portion of decoded data; a second decoder configured to decode a second subset of the encoded data to obtain a second portion of the decoded data, wherein the second portion includes decoded data not included in the first portion; and an output interface configured to output the decoded data.
    Type: Grant
    Filed: November 19, 2008
    Date of Patent: May 6, 2014
    Assignee: SK hynix memory solutions inc.
    Inventor: Marcus Marrow
  • Patent number: 8719663
    Abstract: Cross-decoding assists decoding of an otherwise uncorrectable error when decoding a desired page of a multi-level-cell technology flash memory. A solid-state disk (SSD) controller adjusts space allocated to redundancy respectively within various pages (e.g. upper, middle, and lower pages) such that the respective pages have respective effective Bit Error Rates (BER)s, optionally including cross-decoding, that approach one another. Alternatively the controller adjusts the allocation to equalize decoding time (or alternatively access time), optionally including decoding time (accessing time) accrued as a result of cross-decoding when there is an otherwise uncorrectable error. The adjusting is via (a) respective ratios between allocation for ECC redundancy and user data space, and/or (b) respective coding rates and/or coding techniques for each of the various pages.
    Type: Grant
    Filed: December 12, 2011
    Date of Patent: May 6, 2014
    Assignee: LSI Corporation
    Inventors: Yan Li, Hao Zhong
  • Patent number: 8719662
    Abstract: Data move operations in a memory device are described that enable identification of data errors. Error detection circuitry in the memory device can be operated using parity data or ECC data stored in the memory. Results of the error detection can be accessed by a memory controller for data repair operations by the controller.
    Type: Grant
    Filed: January 17, 2011
    Date of Patent: May 6, 2014
    Assignee: Micron Technology, Inc.
    Inventors: David Eggleston, Bill Radke
  • Publication number: 20140122974
    Abstract: A method of reading from a memory module which includes a plurality of memories is provided. The method includes reading data corresponding to a plurality of burst length units from the plurality of memories; correcting an error of the read data using a storage error correction code; and outputting the error corrected data by a unit of data corresponding to one burst length unit.
    Type: Application
    Filed: October 25, 2013
    Publication date: May 1, 2014
    Inventor: Eun-Jin YUN
  • Publication number: 20140122973
    Abstract: Embodiments of the present disclosure describe apparatus, methods, computer-readable media and system configurations for dividing error correcting code (“ECC”) codewords into portions and storing the portions among multiple memory components. For example, a device may include non-volatile memory (“NVM”) including m die. A memory controller may be configured to store portions of an ECC codeword among the m die. In various embodiments, a memory controller and/or an iterative decoder such as a low-density parity-check (“LDPC”) decoder may be configured to decode ECC codewords based at least in part on reliability metrics associated with the m die. Other embodiments may be described and/or claimed.
    Type: Application
    Filed: March 12, 2012
    Publication date: May 1, 2014
    Inventor: Ravi H. Motwani
  • Publication number: 20140122975
    Abstract: Approaches for decoding data read from memory cells of a nonvolatile, solid state memory involve attempting to decode hard data using a hard decoding process prior to a time that soft data is available to the decoder. The hard data includes information about the digital symbols stored in the memory cells without data confidence information. The soft data includes information about the digital symbols stored in the memory cells and data confidence information. In response to the hard decoding process failing to achieve convergence, after the soft data becomes available to the decoder, the soft data is decoded using a soft decoding process. The decoder generates an output of the decoded data after the hard decoding process or the soft decoding process achieves convergence.
    Type: Application
    Filed: January 7, 2014
    Publication date: May 1, 2014
    Applicant: Seagate Technology LLC
    Inventors: Ara Patapoutian, Bernardo Rub, Bruce D. Buch
  • Patent number: 8713330
    Abstract: A method for data storage includes scrambling data for storage in a memory device using a given scrambling seed. A statistical distribution of the scrambled data is assessed, and a measure of randomness of the statistical distribution is computed. A scrambling configuration of the data is modified responsively to the measure of randomness, and the data having the modified scrambling configuration is stored in the memory device.
    Type: Grant
    Filed: October 28, 2009
    Date of Patent: April 29, 2014
    Assignee: Apple Inc.
    Inventors: Naftali Sommer, Micha Anholt, Oren Golov, Uri Perlmutter, Shai Winter
  • Patent number: 8713410
    Abstract: According to one embodiment, a data storage apparatus includes a channel controller, an error correction controller, and an additional correction module. The channel controller is configured to control writing to and reading from the nonvolatile memories of respective channels. The error correction controller is configured to use inter-channel error correction codes during any read process, performing inter-channel correction process on those of the data items read under the control of the channel controller, which have been designated. The additional correction module is configured to designate, in accordance with errors detected by the channel controller, data items to additionally correct, and to notify the data items so designated to the error correction controller while the channel controller is reading the data necessary in the inter-channel correction process.
    Type: Grant
    Filed: November 21, 2011
    Date of Patent: April 29, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Kiyotaka Iwasaki
  • Patent number: 8713401
    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: Grant
    Filed: June 17, 2013
    Date of Patent: April 29, 2014
    Assignee: Micron Technology, Inc.
    Inventor: William H. Radke
  • Publication number: 20140115428
    Abstract: System and methods for proactively refreshing portions of a nonvolatile memory including a memory system that proactively refreshes a portion of nonvolatile memory based on data associated with the portion. The data may include the time elapsed since the portion was last refreshed, the number of times the portion has been cycled, and the average operating temperature of the nonvolatile memory. A portion of nonvolatile memory, when meeting certain criteria determined from the data, may be proactively refreshed during a downtime when the nonvolatile memory is not otherwise being accessed.
    Type: Application
    Filed: December 31, 2013
    Publication date: April 24, 2014
    Applicant: Apple Inc.
    Inventor: Anthony Fai
  • Publication number: 20140115427
    Abstract: A data storage system configured to adaptively code data is disclosed. In one embodiment, a data storage system controller determines a common memory page size, such as an E-page size, for a non-volatile memory array. Based on the common memory page size, the controller selects a low-density parity-check (LDPC) code word length from a plurality of pre-defined LDPC code word lengths. The controller determines LDPC coding parameters for coding data written to or read from the memory array based on the selected LDPC code word length. By using the plurality of pre-defined LDPC code word lengths, the data storage system can support multiple non-volatile memory page formats, including memory page formats in which the common memory page size does not equal any LDPC code word length of the plurality of pre-defined LDPC code word lengths. Flexibility and efficiency of data coding can thereby be achieved.
    Type: Application
    Filed: October 24, 2012
    Publication date: April 24, 2014
    Applicant: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventor: WESTERN DIGITAL TECHNOLOGIES, INC.
  • Publication number: 20140115425
    Abstract: The disclosure is related to an apparatus and methods for addressing variations in bit error rates amongst data storage segments. In a particular embodiment, an apparatus includes a controller that detects variations in bit error rates amongst different segments of a plurality of segments in a storage medium. The controller also adjusts a read/write operation parameter according to the detected variations amongst the bit error rates in the plurality of segments.
    Type: Application
    Filed: October 19, 2012
    Publication date: April 24, 2014
    Applicant: Seagate Technology LLC
    Inventors: Clifford Jayson Bringas Camalig, Mui Chong Chai
  • Patent number: 8707134
    Abstract: According to one embodiment, a data storage apparatus comprises a channel controller, an encoding module, and a data controller. The channel controller configured to control data input and output to and from nonvolatile memories for channels. The encoding module configured to generate encoded data for an interchannel error correction process, using data stored in each of the nonvolatile memories. The data controller configure to manage the encoded data in units of logical blocks when the channel controller writes the encoded data in parallel to the channels, and to allocate parity data contained in the encoded data to planes of the same channel in each logical block.
    Type: Grant
    Filed: December 7, 2011
    Date of Patent: April 22, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Kyosuke Takahashi, Motohiro Matsuyama
  • Publication number: 20140108891
    Abstract: Apparatuses, systems, and methods are disclosed to manage non-volatile media. A method includes determining a configuration parameter for a set of storage cells of a non-volatile recording medium. A method includes reading data from a set of storage cells using a determined configuration parameter. A method includes adjusting a configuration parameter based on read data.
    Type: Application
    Filed: December 13, 2013
    Publication date: April 17, 2014
    Applicant: Fusion-io, Inc.
    Inventors: John Strasser, David Flynn, Jeremy Fillingim, Robert Wood, Jea Hyun, Hairong Sun
  • Patent number: 8700839
    Abstract: A method for performing a static wear leveling on a flash memory is disclosed. Accordingly, a static wear leveling unit is disposed with a block reclamation unit of either a flash translation layer or a native file system in the flash memory, and utilizes less memory space to trace a distribution status of block leveling cycles of each physical block of the flash memory. Based on the distribution record of the block leveling cycles, the number of the leveling cycles less than a premeditated threshold would be found while the system idles. Then the static wear leveling unit requests the block reclamation unit to level the found blocks. Before leveling the found block, the rarely updated data is compelled to move from one block to another block which is leveled frequently, whereby accurate wear leveling cycles for the blocks can be averaged extremely.
    Type: Grant
    Filed: December 21, 2007
    Date of Patent: April 15, 2014
    Assignee: Genesys Logic, Inc.
    Inventors: Yuan-Hao Chang, Jen-Wei Hsieh, Tei-Wei Kuo, Cheng-Chih Yang
  • Publication number: 20140101519
    Abstract: A nonvolatile memory device comprises a memory cell array comprising a selected page comprising multiple error correction code (ECC) units, and a voltage generation unit configured to generate a read voltage to read data from the selected page. Read voltage levels are set individually for the respective ECC units according to data detection results for each of the ECC units. During a read retry section performed with respect to selected ECC units of the selected page for which read errors have been detected, a re-read operation of the selected ECC units is performed according to the respective read voltage levels set for the selected ECC units.
    Type: Application
    Filed: July 22, 2013
    Publication date: April 10, 2014
    Applicant: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: SEUNG-YEON LEE, HEE-WOONG KANG, JONG-NAM BAEK, SAN SONG
  • Patent number: 8694867
    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: September 26, 2012
    Date of Patent: April 8, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Christopher Bueb
  • Publication number: 20140095962
    Abstract: An operating method of a semiconductor device may comprise monitoring error handling information for a data read from a semiconductor memory device; and generating a refresh request for one or more memory cells of the semiconductor memory device according to the error handling information.
    Type: Application
    Filed: August 9, 2013
    Publication date: April 3, 2014
    Applicant: SK hynix Inc.
    Inventors: Young-Suk MOON, Yong-Kee KWON, Hong-Sik KIM
  • Patent number: 8689077
    Abstract: A computer system includes a memory controller coupled to a memory module containing several DRAMs. The memory module also includes a non-volatile memory storing row addresses identifying rows containing DRAM memory cells that are likely to lose data during normal refresh of the memory cells. Upon power-up, the data from the non-volatile memory are transferred to a comparator in the memory controller. The comparator compares the row addresses to row addresses from a refresh shadow counter that identify the rows in the DRAMs being refreshed. When a row of memory cells is being refreshed that is located one-half of the rows away from a row that is likely to loose data, the memory controller causes the row that is likely to loose data to be refreshed. The memory controller also includes error checking circuitry for identifying the rows of memory cells that are likely to lose data during refresh.
    Type: Grant
    Filed: November 10, 2010
    Date of Patent: April 1, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Dean A. Klein
  • Patent number: 8689082
    Abstract: A method of operating a memory controller includes reading data from a first block of a memory device; detecting degraded pages from a plurality of pages of the first block and counting a number of the degraded pages in the first block; and recharging or reclaiming the first block, which includes the degraded pages, based on the counted number of the degraded pages.
    Type: Grant
    Filed: July 16, 2012
    Date of Patent: April 1, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Eun-Chu Oh, Jae-Hong Kim, Yong-June Kim, Jun-Jin Kong
  • Publication number: 20140089765
    Abstract: The present invention relates to the field of data storage, and more particularly to an estimation technology in an error correction process of a flash memory. The present invention provides an error estimation module and an error estimation method thereof for a flash memory. The estimation module mainly includes a timer, a quantification index table, a storage page table, and an error index table. The error estimation method of a flash memory includes: creating rewriting and programming error a priori data, and estimating an error rate of the flash memory by using special physical signals in a flash memory device to provide proper error estimation for an error correction algorithm of the flash memory. The present invention is applicable to a solid-state hard disk controller, a flash memory controller, and the like, where the flash memory device is used as a storage medium, so that the reliability of the flash memory device is improved.
    Type: Application
    Filed: March 23, 2012
    Publication date: March 27, 2014
    Applicant: MEMORIGHT (WUHAN) CO., LTD.
    Inventors: Jipeng Xing, Wenjie Huo, Jie Zhang
  • Publication number: 20140089762
    Abstract: Examples are disclosed for techniques associated with a read and write window budget for a two level memory (2LM) system. In some examples, a read and write window budget may be established for the 2LM system that includes a first level memory and a second level memory. The established read and write window budget may include a combination of a first set of memory addresses and a second set of memory addresses of the second level of memory. The first set of memory addresses may be associated with non-volatile memory cells having wider cell threshold voltage distributions compared to cell threshold voltage distributions for non-volatile memory cells associated with the second set of memory addresses. According to some examples, the established read and write window budget may part of a strategy to meet both a completion time threshold for a given amount of memory and an acceptable error rate threshold for the given amount of memory when fulfilling read or write requests to the second level memory.
    Type: Application
    Filed: September 26, 2012
    Publication date: March 27, 2014
    Inventors: KIRAN PANGAL, PRASHANT DAMLE
  • Publication number: 20140089764
    Abstract: An apparatus may comprise a controller to retrieve data from a non-volatile memory, and an error correction module operable on the controller to read a memory cell of the non-volatile memory at a first set of sense conditions comprising a multiplicity of sense conditions. The error correction module may be further operable to set a first set of bits in an encoded output, the first set of bits comprising a logical state bit to indicate a logical state of the memory cell and one or more additional bits in the encoded output to indicate accuracy of the logical state bit based upon results of the read at the first set of sense conditions, the first set of sense conditions comprising a greater number than that of the first set of bits. Other embodiments are disclosed and claimed.
    Type: Application
    Filed: March 29, 2012
    Publication date: March 27, 2014
    Inventors: Matthew Goldman, Wayne D. Tran, Aliasgar S. Madraswala, Sungho Park
  • Publication number: 20140089763
    Abstract: A flash memory and an accessing method thereof are provided. The accessing method includes steps of receiving a plurality of contiguous accessing commands, sequentially selecting a plurality of word lines corresponding to the accessing commands, and accessing a plurality of memory cells on each of the word lines according to the accessing commands sequentially. Here, any two of the contiguously selected word lines do not neighbor with each other.
    Type: Application
    Filed: July 8, 2013
    Publication date: March 27, 2014
    Applicant: Asolid Technology Co., Ltd.
    Inventors: Fu-Kuo Ou, Ping-Huang Liao
  • Patent number: 8683298
    Abstract: The present disclosure includes methods, devices, and systems for error detection/correction based memory management. One embodiment includes performing a read operation with respect to a particular group of memory cells of a memory device and, if the read operation results in an uncorrectable error, determining whether to retire the particular group of memory cells in response to a status of an indicator corresponding to the particular group of memory cells, wherein the status of the indicator indicates whether the particular group of memory cells has a previous uncorrectable error associated therewith.
    Type: Grant
    Filed: November 13, 2012
    Date of Patent: March 25, 2014
    Assignee: Micron Technology, Inc.
    Inventors: Cory J. Reche, Laland R. Nevill, Timothy F. Martin
  • Patent number: 8683296
    Abstract: An accelerated erasure coding 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 processing core, storage medium, and computer instructions are configured to implement an erasure coding system, which includes: a data matrix for holding original data in the main memory; a check matrix for holding check data in the main memory; an encoding matrix for holding first factors in the main memory, the first factors being for encoding the original data into the check data; and a thread for executing on the processing core. The thread includes: a parallel multiplier for concurrently multiplying multiple entries of the data matrix by a single entry of the encoding matrix; and a first sequencer for ordering operations through the data matrix and the encoding matrix using the parallel multiplier to generate the check data.
    Type: Grant
    Filed: December 30, 2011
    Date of Patent: March 25, 2014
    Assignee: Streamscale, Inc.
    Inventors: Michael H. Anderson, Sarah Mann
  • Publication number: 20140082460
    Abstract: Methods and apparatus to provide dynamic window to improve NAND (Not And) memory endurance are described. In one embodiment, a program-erase window associated with a NAND memory device is dynamically varied by starting with a higher erase verify (TEV) voltage and lowering the TEV voltage with subsequent cycles over a life of the NAND memory device based on a current cycle count value. Alternatively, the program-erase window is dynamically varied by starting with a higher erase verify (PV) voltage and erase verify (TEV) voltage and lowering the PV and TEV voltages with subsequent cycles over a life of the NAND memory device based on the current cycle count value. Other embodiments are also disclosed and claimed.
    Type: Application
    Filed: December 29, 2011
    Publication date: March 20, 2014
    Inventors: Kiran Pangal, Ravi J. Kumar