Check Bits Stored In Separate Area Of Memory Patents (Class 714/766)
  • Publication number: 20150039968
    Abstract: A memory 10 stores a data block comprising a plurality of data values DV. An error code, such as an error correction code ECC, is associated with the memory and has a value dependent upon the plurality of data values which form the data block stored within the memory. If a partial write is performed on a data block, then the ECC information becomes invalid and is marked with an ECC_invalid flag. The intent is avoiding the need to read all data values to compute the ECC and thus save time and energy. The memory may be a cache line 28 within a level 1 cache memory 10. Memory scrub control circuitry 38 performs periodic memory scrub operations which trigger flushing of partially written cache lines back to main memory.
    Type: Application
    Filed: May 21, 2014
    Publication date: February 5, 2015
    Applicant: ARM LIMITED
    Inventor: Luc ORION
  • Patent number: 8949691
    Abstract: The present invention relates to a data processing device and a data processing method capable of improving the resistance to data error. In a case where an LDPC code having a code length of 4,320 bits is mapped into 16 signal points, when a code bit of 4×2 bits and the (#i+1)-th bit from the most significant bit of symbol bits of 4×2 bits of two consecutive symbols are bits b#i and y#i, a demultiplexer performs an interchange process in which b0 is allocated to y0, b1 is allocated to y4, b2 is allocated to y1, b3 is allocated to y6, b4 is allocated to y2, b5 is allocated to y5, b6 is allocated to y3, and b7 is allocated to y7 for an LDPC code having a coded rate of 1/2, and b0 is allocated to y0, b1 is allocated to y4, b2 is allocated to y5, b3 is allocated to y2, b4 is allocated to y1, b5 is allocated to y6, b6 is allocated to y3, and b7 is allocated to y7 for an LDPC code having a coded rate of 7/12, 2/3, and 3/4.
    Type: Grant
    Filed: September 9, 2011
    Date of Patent: February 3, 2015
    Assignee: Sony Corporation
    Inventors: Yuji Shinohara, Makiko Yamamoto, Lui Sakai
  • Patent number: 8949684
    Abstract: A method for data storage includes assigning in a memory that includes one or more storage devices a first storage area for storage of user data, and a second storage area, which is separate from the first storage area, for storage of redundancy information related to the user data. Input data is processed to produce redundancy data, and the input data is stored in the first storage area using at least one first write command. The redundancy data is stored in the second storage area using at least one second write command, separate from the first write command.
    Type: Grant
    Filed: September 1, 2009
    Date of Patent: February 3, 2015
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Barak Rotbard, Oren Golov, Micha Anholt, Uri Perlmutter
  • Patent number: 8949692
    Abstract: A method and system for service-aware parity placement in a storage system, including after receiving the service notification specifying a target SD: writing a RAID stripe to the persistent storage, where the parity block of the RAID stripe is stored on the target SD and none of the data blocks in the RAID stripe are stored on the target SD. The method further includes performing a modified garbage collection operation that includes identifying a live RAID stripe in the persistent storage, writing a new RAID stripe to a new location in the persistent storage, where the new RAID stripe includes a copy of at least a portion of data from the live RAID stripe and a parity block in the new RAID stripe is stored on the target SD, and issuing a removal notification when the modified garbage collection operation is completed.
    Type: Grant
    Filed: January 23, 2014
    Date of Patent: February 3, 2015
    Assignee: DSSD, Inc.
    Inventor: Jeffrey S. Bonwick
  • Patent number: 8943239
    Abstract: A direct memory access controller for efficiently detecting a character string within memory, the direct memory access controller generating signatures of character strings stored within the memory and comparing the generated signatures with the signature of the character string for which detection is desired.
    Type: Grant
    Filed: July 30, 2012
    Date of Patent: January 27, 2015
    Assignee: Qualcomm Incorporated
    Inventors: Jian Shen, Jing Li
  • 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: 20150012799
    Abstract: A data protecting method, a memory storage device, and a memory controller are provided for a rewritable non-volatile memory module. The data protecting method includes: generating a first error correcting code by using data stored in first memory cells of a plurality of memory cells. The first memory cells are located on first word lines and first bit lines. Among the memory cells located on each of the first bit lines, only one of the memory cells stores the data used to generate the first error correcting code. Accordingly, the data in the memory cells is efficiently protected.
    Type: Application
    Filed: September 27, 2013
    Publication date: January 8, 2015
    Applicant: PHISON ELECTRONICS CORP.
    Inventor: Chih-Kang Yeh
  • Publication number: 20150006995
    Abstract: A nonvolatile memory includes a plurality of memory sets, wherein each of the memory sets includes a first memory cell suitable for storing a validity signal indicating data validity of the corresponding memory set, and second memory cells suitable for storing multi-bit data or one or more-bit defect information.
    Type: Application
    Filed: December 13, 2013
    Publication date: January 1, 2015
    Applicant: SK hynix Inc.
    Inventors: Hyun-Su YOON, Ki-Chang KWEAN
  • Publication number: 20150006996
    Abstract: A method begins by a processing module dispersed storage error encoding data to produce encoded data slices and updating directory metadata regarding storing the data in a dispersed storage network (DSN) memory to produce updated directory metadata. The method continues with the processing module dispersed storage error encoding the updated directory metadata to produce encoded directory metadata slices and transmitting one or more data slice write requests to the DSN that each include a first transaction number. The method continues with the processing module transmitting one or more directory metadata write requests to the DSN memory, wherein the one or more directory metadata write requests includes a second transaction number, and when a favorable write response condition exists, transmitting a commit request to the DSN memory to commit storage of at least one of: the encoded data slices and the encoded directory metadata slices.
    Type: Application
    Filed: September 8, 2014
    Publication date: January 1, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ilya Volvovski, Andrew Baptist, Wesley Leggette
  • Patent number: 8924834
    Abstract: An error detection/correction system provides an electronic circuit detecting and correcting transmission errors using linear programming. Linear programming techniques are made practical for real-time error correction and decoding by dividing the linear programming problem into independent parallelizable problems so that separate independent portions of the electronic circuit may simultaneously address solutions related to individual bits and/or parity rules.
    Type: Grant
    Filed: September 26, 2012
    Date of Patent: December 30, 2014
    Assignee: Wisconsin Alumni Research Foundation
    Inventors: Stark Draper, Benjamin Recht, Siddharth Barman
  • Publication number: 20140380126
    Abstract: In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk.
    Type: Application
    Filed: March 24, 2014
    Publication date: December 25, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: SERGEY YEKHANIN, HUSEYIN SIMITCI, AARON W. OGUS, JIN LI, CHENG HUANG, PARIKSHIT SANTHAN GOPALAN, BRADLEY G. CALDER
  • Publication number: 20140380125
    Abstract: In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk.
    Type: Application
    Filed: June 25, 2013
    Publication date: December 25, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: BRADLEY G. CALDER, PARIKSHIT SANTHANA GOPALAN, CHENG HUANG, JIN LI, AARON W. OGUS, HUSEYIN SIMITCI, SERGEY YEKHANIN
  • 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
  • Publication number: 20140365846
    Abstract: Subject matter disclosed herein relates to error protection of data stored in and/or read from a memory device.
    Type: Application
    Filed: July 21, 2014
    Publication date: December 11, 2014
    Inventor: Stephen P. Van Aken
  • Patent number: 8910031
    Abstract: A block CRC based fast data hash provides efficient data integrity verification functions. A hash word is generated from block CRCs that are stored along with data blocks in a hard drive for each data and/or parity track of a storage system, such as a RAID array. Each storage system member writes the hash word into a global memory. Thereafter, a director verifies data integrity using all member's hash words with one or more XOR operations. Use of the hash words for data integrity verification saves system bandwidth and CPU processing resources.
    Type: Grant
    Filed: March 29, 2011
    Date of Patent: December 9, 2014
    Assignee: EMC Corporation
    Inventors: ZhiGang Liu, Dale Elliott, Stephen Richard Ives, Shen Liu, Andrew Chanler
  • Patent number: 8910021
    Abstract: A method for data storage in a memory including multiple memory cells arranged in blocks, includes storing first and second pages in respective first and second groups of the memory cells within a given block of the memory. A pattern of respective positions of one or more defective memory cells is identified in the first group. The second page is recovered by applying the pattern identified in the first group to the second group of the memory cells.
    Type: Grant
    Filed: October 22, 2013
    Date of Patent: December 9, 2014
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Oren Golov
  • 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
  • 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.
  • 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: 8887025
    Abstract: A data storage system includes a memory circuit and a control circuit. The control circuit is operable to receive data bits provided for storage in memory cells of the memory circuit. The control circuit is operable to compare each of the data bits provided for storage in a corresponding one of the memory cells having a stuck-at fault to a value of the stuck-at fault, and to invert each of the data bits having a different value than the value of the stuck-at fault of the corresponding one of the memory cells to generate encoded data bits. The control circuit is operable to generate redundant bits that indicate the encoded data bits to invert to regenerate the data bits.
    Type: Grant
    Filed: October 10, 2012
    Date of Patent: November 11, 2014
    Assignee: HGST Netherlands B.V.
    Inventors: Robert Eugeniu Mateescu, Luiz Franca-Neto, Cyril Guyot, Hessam Mahdavifar, Zvonimir Bandic, Qingbo Wang
  • Publication number: 20140331106
    Abstract: A method includes, in a memory that includes two or more memory units, storing a code word of an Error Correction Code (ECC) that is representable by a plurality of check equations, such that a first part of the code word is stored in a first memory unit and a second part of the code word is stored in a second memory unit. A subset of the check equations, which operate only on code word bits belonging to the first part stored in the first memory unit, is identified. The first part of the code word is retrieved from the first memory unit, and a count of the check equations in the identified subset that are not satisfied by the retrieved first part of the code word is evaluated. One or more readout parameters, for readout from the first memory unit, are set depending on the evaluated count.
    Type: Application
    Filed: May 1, 2013
    Publication date: November 6, 2014
    Applicant: Apple Inc.
    Inventors: Barak Baum, Tomer Ish-Shalom, Micha Anholt, Eyal Gurgi, Yoav Kasorla
  • Patent number: 8874994
    Abstract: A method of storing data includes receiving data including a first group of bits and a second group of bits and initiating a shaping encoding operation on the second group of bits to generate a third group of bits. The third group of bits has more bits than the second group of bits. The shaping encoding operation is configured to produce a non-uniform probability distribution of bit values in the third group of bits. The first group of bits and first error correction coding (ECC) parity bits corresponding to the first group of bits are stored to a first logical page that is within a physical page of a MLC memory and the third group of bits and second ECC parity bits corresponding to the third group of bits are stored to a second logical page that is within the physical page of the MLC memory.
    Type: Grant
    Filed: December 19, 2011
    Date of Patent: October 28, 2014
    Assignee: Sandisk Technologies Inc.
    Inventors: Eran Sharon, Idan Alrod, Simon Litsyn
  • Patent number: 8874986
    Abstract: According to one embodiment, a storage device includes a first encoder, a storage medium, a second encoder, and a wireless communication unit. The first encoder generates a first codeword including a first information part corresponding to at least a part of write data, and a first redundant part used to correct the first information part. The storage medium stores the first codeword. The second encoder generates a second redundant part used to correct a second information part corresponding to the first codeword or the first information part. The wireless communication unit wirelessly transmits the second redundant part to an external storage device.
    Type: Grant
    Filed: March 22, 2012
    Date of Patent: October 28, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Ryo Yamaki
  • Patent number: 8862962
    Abstract: A system is described for recovering data from a number of sectors, such as the sectors of a hard disk drive (HDD) disk platter, and so forth. The system receives data from the sectors via a read channel and uses a layered data decoder to recover data from the sectors. A memory is coupled with the processor and configured to retain data received from one or more of the sectors, e.g., in retained sector reprocessing (RSR) embodiments. The system is configured to update messages in different circulant layers of the data decoder's parity-check matrix. The system uses one message update order in a processing iteration, and different message update orders in subsequent reprocessing iterations. In some embodiments, layer reordering is used for RSR. In some embodiments, circulant reordering is used for RSR.
    Type: Grant
    Filed: October 3, 2012
    Date of Patent: October 14, 2014
    Assignee: LSI Corporation
    Inventors: Fan Zhang, Jun Xiao
  • Patent number: 8843805
    Abstract: In general, techniques are described for efficiently and transparently partitioning a physical address space of a DRAM part lacking dedicated error protection circuitry to supply addressable error protection bytes for use in detecting and/or correcting bit errors elsewhere present in the physical address space. In one example, a network device includes a DRAM and a memory controller that receives a write command to write data to the DRAM. An address translation module of the memory controller logically partitions the DRAM to define a plurality of physically addressable sections that includes an error protection section for storing error protection bits and one or more data storage sections. The memory controller defines a contiguous logical address space representing the data storage sections. A DRAM controller of the network device communicates with the DRAM to store the data to one of the data storage sections in accordance with the contiguous logical address space.
    Type: Grant
    Filed: March 16, 2012
    Date of Patent: September 23, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Deepak Goel, Jeffrey G. Libby, Anurag P. Gupta, Abhijit Ghosh, David J. Ofelt
  • Publication number: 20140281815
    Abstract: A dispersed storage device manages a file system directory of a dispersed storage network by receiving a data object to be stored and a user file name of the data object, calculating a data compression function of the data object, creating a file identifier based on a result of the data compression function, creating a source name for the data object using the file identifier and linking the user file name to the source name in the file system directory.
    Type: Application
    Filed: May 30, 2014
    Publication date: September 18, 2014
    Applicant: CLEVERSAFE, INC.
    Inventors: Andrew Baptist, Manish Motwani
  • Publication number: 20140281814
    Abstract: Systems and methods are disclosed for correction of block errors for a system having non-volatile memory (“NVM”). In particular, the system can store a parity page per page-modulo, where a pre-determined number of pages of a block or a band of the NVM may be allocated as page-modulo XOR (“PMX”) parity pages. This can be a space efficient approach for recovering from single-block data errors such as, for example, single-page uncorrectable error-correcting codes (“uECCs”) and/or errors caused by word line shorts.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: APPLE INC.
    Inventors: Andrew W. Vogan, Daniel J. Post
  • Publication number: 20140281813
    Abstract: Data management logic allocates a portion such as a single plane of a respective multi-plane non-volatile memory device to store parity information for corresponding data striped across multiple planes of multiple non-volatile memory devices. According to one configuration, the data management logic as discussed herein generates parity data based on (a data stripe of) non-parity data stored in multiple planes of multiple different memory devices. The data management logic stores the parity data in the storage plane allocated to store the parity information. Additional configurations include: reserving a parity block amongst multiple non-parity data blocks to store parity data and reserving a parity page amongst multiple non-parity data pages to store parity data.
    Type: Application
    Filed: March 13, 2013
    Publication date: September 18, 2014
    Inventors: Yogesh B. Wakchaure, Xin Guo, Robert E. Frickey
  • Publication number: 20140258811
    Abstract: A device includes a memory array storing data and error correcting codes ECCs corresponding to the data, and a multi-level buffer structure between the memory array and an input/output data path. The memory array includes a plurality of data lines for page mode operations. The buffer structure includes a first buffer having storage cells connected to respective data lines in the plurality of data lines for a page of data, a second buffer coupled to the storage cells in the first buffer for storing at least one page of data, and a third buffer coupled to the second buffer and to the input/output data path. The device includes logic coupled to the multi-level buffer to perform a logical process over pages of data during movement between the memory array and the input/output path through the multi-level buffer for at least one of page read and page write operations.
    Type: Application
    Filed: July 25, 2013
    Publication date: September 11, 2014
    Applicant: Macronix International Co., Ltd.
    Inventors: Yi-Ching Liu, Chi Lo, Shuo-Nan Hung, Chun-Hsiung Hung
  • Publication number: 20140258810
    Abstract: The technology disclosed herein provides a method of verifying data read from a data block when the cell number of the data block does not match an ECC value stored in the data block. In particular, the method includes accessing a data block in an indexed sequence of data blocks based on a cell number, wherein each data block in the indexed sequence includes a stored ECC value; retrieving an offset associated with the cell number of the data block; generating an ECC value based on the cell number and the offset; and determining whether the generated ECC value and the stored ECC value satisfy an integrity condition.
    Type: Application
    Filed: March 11, 2013
    Publication date: September 11, 2014
    Applicant: SEAGATE TECHNOLOGY LLC
    Inventors: Daniel J. Coonen, Abhay T. Kataria
  • Patent number: 8832528
    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: Grant
    Filed: May 18, 2010
    Date of Patent: September 9, 2014
    Assignee: Fusion-io, Inc.
    Inventors: Jonathan Thatcher, David Flynn, Joshua Aune, Jeremy Fillingim, Bill Inskeep, John Strasser, Kevin Vigor
  • Publication number: 20140250346
    Abstract: A memory system includes: a first non-volatile memory used for storing data to be accessed in block units; a second non-volatile memory used for storing data to be accessed in word units in random accesses to the second non-volatile memory; and a control section configured to control operations of the first and second non-volatile memories, wherein error correction codes to be applied to data stored in the second non-volatile memory are held in the first non-volatile memory.
    Type: Application
    Filed: May 9, 2014
    Publication date: September 4, 2014
    Applicant: Sony Corporation
    Inventor: KENICHI NAKANISHI
  • Patent number: 8826101
    Abstract: A memory system and method using at least one memory device die stacked with and coupled to a logic die by interconnects, such as through silicon vias. One such logic die includes an ECC system generating error checking and correcting (“ECC) bits corresponding to write data. The write data are transmitted to the memory device dice in a packet containing a serial burst of a plurality of parallel data bits. The ECC bits are transmitted to the memory device dice using through silicon vias that are different from the vias through which data are coupled. Such a logic die could also include a data bus inversion (“DBI”) system encoding the write data using a DBI algorithm and transmitting to the memory device dice DBI bits indicating whether the write data have been inverted. The DBI bits are transmitted using through silicon vias that are shared with the ECC bits when they are unused for transferring the ECC bits.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: September 2, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Ebrahim Hargan
  • Patent number: 8826100
    Abstract: An apparatus may comprise a memory including a first area of total usable storage capacity of the memory reported to a host device, a second area occupied by error correction code (ECC) appended to data stored in the first area, and a third area of usable data storage capacity not reported to the host device. The apparatus may further comprise a controller configured to balance sizes of the second area and third area to maintain a size of the first area as the length of ECC of data stored in the first area increases. The controller may be further configured to exchange data having an ECC of a controllable length with the memory based on a data storage location, and adjust the controllable length of the ECC based on an error history of the data storage location.
    Type: Grant
    Filed: November 27, 2012
    Date of Patent: September 2, 2014
    Assignee: Seagate Technology LLC
    Inventor: Bernardo Rub
  • Publication number: 20140245107
    Abstract: This disclosure relates to avoiding a hard error in memory during write time by shifting data to be programmed to memory to mask the hard error. In one implementation, a method of programming data to a memory array includes obtaining error data corresponding to a selected memory cell, shifting a data pattern such that a value to be stored by the selected memory cell matches a value associated with a hard error, and programming the shifted data pattern to memory array such that the value programmed to the selected memory cell matches the value associated with the hard error.
    Type: Application
    Filed: February 27, 2013
    Publication date: August 28, 2014
    Applicant: MICRON TECHNOLOGY, INC.
    Inventors: Aswin Thiruvengadam, Angelo Visconti, Mauro Bonanomi, Richard E. Fackenthal, William Melton
  • Publication number: 20140237320
    Abstract: A memory system includes a controlling unit that configured to control data transfer between the first and the second memory. The controlling unit executes copy processing for, after reading out data stored in a first page of the second memory to the first memory, writing the data in a second page of the second memory, determines, when executing the copy processing, whether the error correction processing for the data read out from the first page is successful, stores, when the error correction processing is successful, corrected data in the first memory and writes the corrected data in the second page, and reads out, when the error correction processing is unsuccessful, the data from the first page to the first memory and writes the data not subjected to the error correction processing in the second page.
    Type: Application
    Filed: April 25, 2014
    Publication date: August 21, 2014
    Applicant: KABUSHIKI KAISHA TOSHIBA
    Inventors: Junji Yano, Hidenori Matsuzaki, Kosuke Hatsuda, Hiroki Matsudaira
  • Patent number: 8812933
    Abstract: A memory system includes a nonvolatile memory device and a memory controller configured to control the nonvolatile memory device and configured to provide the nonvolatile memory device with error flag information including error location information of an error of data read from the nonvolatile memory device.
    Type: Grant
    Filed: April 18, 2012
    Date of Patent: August 19, 2014
    Assignee: SAMSUNG Electronics Co., Ltd.
    Inventors: Sang-Hyun Joo, Kitae Park, Sangyong Yoon, Jinman Han
  • Publication number: 20140229797
    Abstract: Methods, techniques, systems and apparatuses for utilizing reserved space for error correcting functionality. A cache line (“reserved line”) in a plurality of cache lines to store error correcting code (ECC) data is utilized for storing ECC data corresponding to other cache lines within the plurality of cache lines when a memory device has failed.
    Type: Application
    Filed: March 30, 2012
    Publication date: August 14, 2014
    Inventors: Rajat Agrawal, Debaleena Das, Kai Cheng
  • Patent number: 8806298
    Abstract: Embodiments of the invention are generally directed to improving the reliability, availability, and serviceability of a memory device. In some embodiments, a memory device includes a memory core having a first portion to store data bits and a second portion to store error correction code (ECC) bits corresponding to the data bits. The memory device may also include error correction logic on the same die as the memory core. In some embodiments, the error correction logic enables the memory device to compute ECC bits and to compare the stored ECC bits with the computed ECC bits.
    Type: Grant
    Filed: June 28, 2010
    Date of Patent: August 12, 2014
    Assignee: Intel Corporation
    Inventor: Kuljit S. Bains
  • Patent number: 8799562
    Abstract: Data capacity efficiency is improved by de-duplicating data assigned with a code that is different for each data. A storage apparatus comprising a flash memory control device equipped with one or more flash memory modules, wherein the flash memory module comprises at least one flash memory chip for providing a storage area, and a controller for controlling writing/reading of data including user data and a guarantee code accompanying the user data to and from the storage area provided by the flash memory chip, wherein the controller respectively divides a plurality of the data having the common user data into the user data and the guarantee code, stores one of the user data in an area of a predetermined unit of the storage area, and links and stores each of the guarantee codes accompanying the plurality of user data in an area of a predetermined unit of the storage area.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: August 5, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Atsushi Kawamura, Junji Ogawa
  • Patent number: 8788908
    Abstract: A data storage device includes a multi-bit memory device including a memory cell array, the memory cell array including a first memory region and a second memory region, and a memory controller including a buffer memory and configured to control the multi-bit memory device. The memory controller is configured to control the multi-bit memory device to execute a buffer program operation in which data stored in the buffer memory is stored in the first memory region, and to control the multi-bit memory device to execute a main program operation in which the data stored in the first memory region is stored in the second memory region. The memory controller is further configured to generate parity data based upon the data stored to the first region, the parity data being copied from the first memory region to the second memory region via the main program operation.
    Type: Grant
    Filed: September 6, 2011
    Date of Patent: July 22, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sangyong Yoon, Kitae Park
  • Publication number: 20140201598
    Abstract: A data retention method is provided. After the solid state drive is powered on, a current date information is received from a host. If a control command is generated by the host and the control command is a write command, the control command is executed, so that a new data is written into a flash memory. If no control command is generated, a first stored data is read out from the flash memory. Then, a stored date information of the first stored data is compared with the current date information, thereby acquiring a calculated time period. If the calculated time period is larger than a predetermined time period, the first stored data is updated by changing the stored date information to the current date information, and the updated first stored data is written into another location of the flash memory.
    Type: Application
    Filed: June 13, 2013
    Publication date: July 17, 2014
    Inventor: Kun Chang Chang
  • Publication number: 20140195876
    Abstract: In accordance with some embodiments, memory modules containing phase change memory elements may be organized so that each memory integrated circuit includes both data and error correcting code. As a result of including the error correcting code in each integrated circuit, extra accesses of the memory module to extract the error correcting code can be avoided, improving the performance of the overall memory module in some embodiments.
    Type: Application
    Filed: December 28, 2011
    Publication date: July 10, 2014
    Inventors: Murugasamy K. Nachimuthu, Mohan J. Kumar, Debaleena Das, Dimitrios Ziakas
  • Patent number: 8775906
    Abstract: Mechanisms are provided for efficient storage of meta-bits within a system memory. The mechanisms combine an L/G bit and an SUE bit to form meta-bits. The mechanisms then determine the local/global state of a cache line on the first cycle of data. The mechanisms forward the data to the requesting cache, and the requesting cache may reissue the request globally based on the local/global state of the cache line. The mechanisms then determine the special uncorrectable error state of the cache line on the second or subsequent cycle of data. The mechanisms perform error processing regardless of whether the request was reissued globally.
    Type: Grant
    Filed: September 12, 2012
    Date of Patent: July 8, 2014
    Assignee: International Business Machines Corporation
    Inventors: John S. Dodson, Benjiman L. Goodman, Steven J. Hnatko, Kenneth L. Wright
  • Patent number: 8775905
    Abstract: A memory system includes: a first non-volatile memory used for storing data to be accessed in block units; a second non-volatile memory used for storing data to be accessed in word units in random accesses to the second non-volatile memory; and a control section configured to control operations of the first and second non-volatile memories, wherein error correction codes to be applied to data stored in the second non-volatile memory are held in the first non-volatile memory.
    Type: Grant
    Filed: December 16, 2011
    Date of Patent: July 8, 2014
    Assignee: Sony Corporation
    Inventor: Kenichi Nakanishi
  • Patent number: 8775904
    Abstract: Mechanisms are provided for efficient storage of meta-bits within a system memory. The mechanisms combine an L/G bit and an SUE bit to form meta-bits. The mechanisms then determine the local/global state of a cache line on the first cycle of data. The mechanisms forward the data to the requesting cache, and the requesting cache may reissue the request globally based on the local/global state of the cache line. The mechanisms then determine the special uncorrectable error state of the cache line on the second or subsequent cycle of data. The mechanisms perform error processing regardless of whether the request was reissued globally.
    Type: Grant
    Filed: December 7, 2011
    Date of Patent: July 8, 2014
    Assignee: International Business Machines Corporation
    Inventors: John S. Dodson, Benjiman L. Goodman, Steven J. Hnatko, Kenneth L. Wright
  • Patent number: 8769373
    Abstract: A method of identifying and protecting the integrity of a set of source data which produces and combines an identification signature with a detection and correction remainder and extends the existing capability of some information assurance methods.
    Type: Grant
    Filed: October 5, 2010
    Date of Patent: July 1, 2014
    Inventors: Cleon L. Rogers, Jr., Glen T. Logan
  • Patent number: 8769188
    Abstract: The invention provides a nonvolatile memory controller. In one embodiment, the nonvolatile memory controller receives new data for writing a nonvolatile memory from a host, and comprises a signature calculating circuit, a signature buffer, a signature comparison circuit, a data comparison circuit, and a nonvolatile memory interface circuit. The signature calculating circuit calculates a first signature according to the new data. The signature buffer outputs a second signature corresponding to old data stored in the nonvolatile memory, wherein the old data has the same logical address as that of the new data. The signature comparison circuit determines whether the first signature is identical to the second signature. The nonvolatile memory interface circuit writes the new data to the nonvolatile memory when the first signature is determined to be different from the second signature by the signature comparison circuit.
    Type: Grant
    Filed: November 18, 2009
    Date of Patent: July 1, 2014
    Assignee: Mediatek Inc.
    Inventors: Li-Chun Tu, Chao-Yi Wu, Ping-Sheng Chen
  • Patent number: 8756480
    Abstract: A method begins by a dispersed storage (DS) processing module monitoring storage of data, wherein the data is encoded using a dispersed storage error coding function to produce a plurality of sets of encoded data slices and is stored as the plurality of sets of encoded data slices. The method continues with the DS processing module determining analysis priority of the data in accordance with an analysis prioritization protocol. When the analysis priority of the data compares unfavorably to a first priority threshold, the method continues with the DS processing module issuing a command to delete an encoded data slice from each set of at least some of the plurality of sets of encoded data slices.
    Type: Grant
    Filed: May 4, 2012
    Date of Patent: June 17, 2014
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Thomas F. Shirley, Jr., Jason K. Resch
  • Patent number: 8745453
    Abstract: A system including a memory controller configured to identify a first memory cell of a first plurality of memory cells as defective and to store information about the first memory cell in a second memory cell of a second plurality of memory cells. The second plurality of memory cells is configured to store data at a lower density than the first plurality of memory cells. In response to (i) reading data from the first plurality of memory cells and (ii) the first memory cell of the first plurality of memory cells having been identified as defective, the memory controller is configured to read the information about the first memory cell stored in the second memory cell and to determine a location of the first memory cell in the first plurality of memory cells.
    Type: Grant
    Filed: July 22, 2013
    Date of Patent: June 3, 2014
    Assignee: Marvell International Ltd.
    Inventors: Pantas Sutardja, Zining Wu