Patent classifications
H03M13/2903
Low gate-count encoding algorithm and hardware of flexible rate GLDPC ECC
Systems, devices, and methods for encoding information bits for storage, including encoding information bits and balance bits to obtain a first bit chunk of a first arrangement; permuting the first bit chunk to obtain a second bit chunk of a second arrangement; encoding the second bit chunk to obtain a third bit chunk of the second arrangement; permuting a first portion of the third bit chunk to obtain a fourth bit chunk of the first arrangement, and encoding the fourth bit chunk to obtain a fifth bit chunk of the first arrangement; permuting a second portion of the third bit chunk, and adjusting the balance bits based on the fifth bit chunk and the permutated second portion of the third bit chunk; adjusting the first arrangement based on the adjusted balance bits, and obtaining a codeword based on the adjusted first arrangement; and transmitting the codeword to a storage device.
Zero padding apparatus for encoding variable-length signaling information and zero padding method using same
A zero padding apparatus and method for variable length signaling information are disclosed. A zero padding apparatus according to an embodiment of the present invention includes a processor configured to generate a LDPC information bit string by deciding a number of groups whose all bits are to be filled with 0 using a difference between a length of the LDPC information bit string and a length of a BCH-encoded bit string, selecting the groups using a shortening pattern order to fill all the bits of the groups with 0, and filling at least a part of remaining groups, which are not filled with 0, with the BCH-encoded bit string; and memory configured to provide the LDPC information bit string to an LDPC encoder.
Lookahead priority collection to support priority elevation
A queuing requester for access to a memory system is provided. Transaction requests are received from two or more requestors for access to the memory system. Each transaction request includes an associated priority value. A request queue of the received transaction requests is formed in the queuing requester. Each transaction request includes an associated priority value. A highest priority value of all pending transaction requests within the request queue is determined. An elevated priority value is selected when the highest priority value is higher than the priority value of an oldest transaction request in the request queue; otherwise the priority value of the oldest transaction request is selected. The oldest transaction request in the request queue with the selected priority value is then provided to the memory system. An arbitration contest with other requesters for access to the memory system is performed using the selected priority value.
HARD DECODING METHODS IN DATA STORAGE DEVICES
Various implementations described herein relate to systems and methods for decoding data stored in a non-volatile storage device, including determining error candidates and determining whether at least one first error candidate from the error candidates is found based on two of the component codes agreeing on a same error candidate. In addition, whether at least one second error candidate is found based on two of the component codes agreeing on a same error candidate is determined in response to implementing a suggested correction at one of the error candidates. Errors in the data are corrected based on at least one of whether the at least one first error candidate is found or whether the at least one second error candidate is found.
Transmitter and repetition method thereof
A transmitter is provided. The transmitter includes: a low density parity check (LDPC) encoder configured to encode input bits to generate an LDPC codeword including the input bits and parity bits; a repeater configured to select at least a part of bits constituting the LDPC codeword and add the selected bits after the input bits; and a puncturer configured to puncture at least a part of the parity bits.
Hard decoding methods in data storage devices
Various implementations described herein relate to systems and methods for decoding data stored in a non-volatile storage device, including determining error candidates and determining whether at least one first error candidate from the error candidates is found based on two of the component codes agreeing on a same error candidate. In addition, whether at least one second error candidate is found based on two of the component codes agreeing on a same error candidate is determined in response to implementing a suggested correction at one of the error candidates. Errors in the data are corrected based on at least one of whether the at least one first error candidate is found or whether the at least one second error candidate is found.
BINNED FEEDBACK FROM RECEIVING DEVICE TO NETWORK ENCODER
This disclosure provides systems, methods and apparatus, including computer storage media, for retransmission of sidelink transmissions using network coding with binned feedback. A transmitting device transmits a transport block and a request for a network coding (NC) encoding device to retransmit the transport block to a plurality of user equipment (UEs). The UEs decode the transport block and report an acknowledgment (ACK) or negative acknowledgment (NACK) on a physical sidelink feedback channel (PSFCH) resource associated with a bin for the UEs. The NC encoding device decodes the PSFCH resource for each bin to determine an ACK or NACK status for each bin, and determines whether to encode the transport block in a NC combination packet. The UEs receive the NC combination packet including an encoding of a subset of transport blocks. The receiving devices transmit an ACK or NACK on a PSFCH resource for a bin for each transport block.
Method for generating a signal by means of a turbo-encoder, and corresponding device and computer program.
A method for generating a signal, including turbo-coding a set of information symbols delivering, on the one hand, the information symbols and, on the other hand, redundancy symbols. The turbo-coding implementing, to obtain the redundancy symbols: an encoding of the set of information symbols by a first encoder, an interleaving of the set of information symbols, and an encoding of the set of information symbols interleaved by a second encoder. The turbo-coding also implements a bijective transformation of the information symbols, implemented before and/or after the interleaving, the transformation modifying a value of at least two of the information symbols prior to the coding of the information symbols by the first and/or the second coder.
METHOD OF USING A MEMORY DEVICE, MEMORY DEVICE AND MEMORY DEVICE ASSEMBLY
In various embodiments, a method of using a memory device is provided. The method may include storing data units, check units of a first code and check units of a second code in memory cells of the memory device, wherein the data units and the check units of the first code form code words of the first code, and wherein the data units and the check units of the second code form code words of the second code, applying the second code for error correction in at least a portion of the data units and/or in at least a portion of the check units of the first code, after the correcting the errors, retaining at least a retaining portion of the data units and of the check units of the first code and deleting at least a deleting portion of the check units of the second code, thereby freeing the memory cells that are occupied by the deleting portion of the check units of the second code, and during a subsequent using of the memory device, storing data in at least a reuse portion of the freed-up memory cells.
Selection of Memory for Data Storage in a Storage Network
Methods and apparatus for selection of memory devices in a distributed storage network. In an example, a computing device receives a data object for storage and selects a set of storage nodes of a plurality of sets of storage nodes for storing the data object. Selection of the set of storage nodes includes determining storage attributes associated with each set of storage nodes of the plurality of sets of storage nodes. Selection of the set of storage nodes additionally includes determining a storage preference associated with the data object, and comparing the storage preference with the storage attributes of the plurality of sets of storage nodes to determine a best match. Following selection of a set of storage nodes, the computing device facilitates storage of the data object in the selected set of storage nodes.