H03M13/293

Consolidation of protection sets in a geographically diverse data storage environment

Erasure coding for scaling-out of a geographically diverse data storage system is disclosed. Chunks can be stored according to a first erasure coding scheme in zones of a geographically diverse data storage system. In response to scaling-out the geographically diverse data storage system, chunks can be moved to store data in a more diverse manner. The more diverse chunk storage can facilitate changing storage from the first erasure coding scheme to a second erasure coding scheme. The second erasure coding scheme can have a lower storage overhead than the first erasure coding scheme. In an aspect, the erasure coding scheme change can occur by combining erasure coding code chunks having complementary coding matrixes. Combining erasure coding code chunks having complementary coding matrixes can consume fewer computing resources than re-encoding data chunks for the second erasure coding scheme in a conventional manner.

Communication method and system with on demand temporal diversity

The disclosure may provide for a communication method and system. A transmitter of the communication system may include an interleaver and a first encoder for determining parity bits. The transmitter also may include a multiplexer for joining the parity bits with the data. A second encoder may be positioned after the multiplexer for implementing an error correcting code. A receiver of the communication system may include a decoder followed by an interleaver. When errors are detected in received data at the decoder, one or more processors of the receiver may be configured to correct portions of the received data and combine the corrected portions with the received data.

Consolidation of Protection Sets in a Geographically Diverse Data Storage Environment
20210132851 · 2021-05-06 ·

Erasure coding for scaling-out of a geographically diverse data storage system is disclosed. Chunks can be stored according to a first erasure coding scheme in zones of a geographically diverse data storage system. In response to scaling-out the geographically diverse data storage system, chunks can be moved to store data in a more diverse manner. The more diverse chunk storage can facilitate changing storage from the first erasure coding scheme to a second erasure coding scheme. The second erasure coding scheme can have a lower storage overhead than the first erasure coding scheme. In an aspect, the erasure coding scheme change can occur by combining erasure coding code chunks having complementary coding matrixes. Combining erasure coding code chunks having complementary coding matrixes can consume fewer computing resources than re-encoding data chunks for the second erasure coding scheme in a conventional manner.

Error correction code unit and error correction method
10917111 · 2021-02-09 · ·

An error correction code (ECC) unit includes an error correction code (ECC) encoder configured to perform error correction code (ECC) encoding for each of a first data group and a second data group sharing at least one data with the first data group; and an error correction code (ECC) decoder configured to perform error correction code (ECC) decoding for each of the first data group and the second data group. The ECC decoder performs the ECC decoding for the second data group when the ECC decoding for the first data group fails, and does not perform the ECC decoding for the second data group when the ECC decoding for the first data group succeeds.

Handling deletes with distributed erasure coding
10938905 · 2021-03-02 · ·

Inter-zone network traffic generated during deletion of a data chunk that has been replicated by employing geographically distributed (GEO) erasure coding is reduced. In one aspect, if a data chunk is to be deleted, partial coding chunks are generated by a source zone and provided to destination zones that store complete coding chunks for updating the complete coding chunks based on combining them with the received partial coding chunks. In another aspect, if a first data chunk is to be deleted and a second data chunk is to be replicated, partial coding chunks are generated by the source zone for each data chunk. Further, the partial coding chunks created for different data chunks can be combined to generate transforming chunks, which can then be transferred to the destination zones. The destination zones can then update the complete coding chunks based on combining them with the received transforming chunks.

Apparatuses and methods to encode column plane compression data

An exemplary memory includes a memory cell array configured to store a plurality of data bits each associated with a respective column plane, and an input/output circuit including a compression circuit configured to provide error data based on a comparison between a bit of the plurality of data bits received from the memory cell array and an expected value and based on a respective column plane of the memory cell array with which the bit is associated. The compression circuit is further configured to encode a column plane error code based on the error data for provision to a data terminal.

Data Recovery in a Geographically Diverse Storage System Employing Erasure Coding Technology and Data Convolution Technology
20210218420 · 2021-07-15 ·

Data convolution for geographically diverse storage is disclosed. Data and corresponding convolutions of data can employ erasure coding to improve robustness of access to information represented in the data. For a peer group of chunks employing a given erasure coding scheme, access to the information represented in the data can be via accessible chunks and/or recovery of a less-accessible chunk, e.g., via a deconvolution operation, via a decoding operation, via a mix of deconvolution and decoding operations. The mix of deconvolution and decoding operations can enable recovery of a less-accessible chunk that cannot be recovered by either a deconvolution or decoding operation alone. This can improve access to information represented in less-available data.

MESSAGE CORRECTION AND DYNAMIC CORRECTION ADJUSTMENT FOR COMMUNICATION SYSTEMS
20210028880 · 2021-01-28 · ·

A method for sending communications with dynamic data correction to at least one receiving device includes dividing a message into one or more message blocks and determining corresponding redundancy blocks for the one or more message blocks, the redundancy blocks to be used by at least one of the receiving devices for message block detection or message block correction. The method further includes constructing a data packet including a header and a data payload including the one or more message blocks and the corresponding redundancy blocks. The construction of the data packet is such that it is processable by receiving devices that are configured to recognize and process the corresponding redundancy blocks and also processable by other receiving devices that cannot recognize the presence of the corresponding redundancy blocks. The method further includes sending the constructed data packet to the at least one receiving device.

TECHNIQUES FOR IMPROVED ERASURE CODING IN DISTRIBUTED STORAGE SYSTEMS

A system and method for erasure coding. The method includes distributing a plurality of data chunks according to a mirroring scheme, wherein the plurality of data chunks is distributed as a plurality of rows among a plurality of non-volatile memory (NVM) nodes, wherein the mirroring scheme defines a plurality of groups, each group including a subset of the plurality of data chunks, wherein each data chunk in a group has a role corresponding to a relative position of the data chunk within the group, wherein data chunks included in the plurality of groups having the same relative positions within their respective groups have the same role, wherein each row of the plurality of rows includes at least one summation data chunk that is a function of at least one data chunk included in the row and of at least one extra data chunk included in at least one other row.

MEMORY SYSTEM

A memory system includes a non-volatile memory and a controller. The controller is configured to perform iterative correction on a plurality of frames of data read from the non-volatile memory. The iterative correction includes performing a first error correction on each of the frames including a first frame having errors not correctable by the first error correction, generating a syndrome on a set of second frames that include the first frame, performing a second error correction on the second frames using the syndrome, and performing a third error correction on the first frame. Each of the frames includes user data and first parity data used in the first error correction, the first parity data of the first frame also being used in the third error correction.