Efficient convergence in iterative decoding

    公开(公告)号:US10128869B2

    公开(公告)日:2018-11-13

    申请号:US15156356

    申请日:2016-05-17

    Applicant: Apple Inc.

    Abstract: A decoder includes one or more Variable-Node Processors (VNPs) that hold respective variables, and logic circuitry. The logic circuitry is configured to decode a code word of an Error Correction Code (ECC), which is representable by a set of check equations, by performing a sequence of iterations such that each iteration involves processing of at least some of the variables, to hold one or more auxiliary equations derived from the check equations, so that a number of the auxiliary equations is smaller than a number of the check equations, to evaluate the auxiliary equations, during the sequence of iterations, using the variables, and, in response to detecting that the variables satisfy the auxiliary equations, to terminate the sequence of iterations and output the variables as the decoded code word.

    DATA ENCODING BY EFFICIENT INVERSION OF A PARITY-CHECK SUB-MATRIX
    2.
    发明申请
    DATA ENCODING BY EFFICIENT INVERSION OF A PARITY-CHECK SUB-MATRIX 审中-公开
    通过有效反转的奇偶校验子矩阵的数据编码

    公开(公告)号:US20170047948A1

    公开(公告)日:2017-02-16

    申请号:US14823061

    申请日:2015-08-11

    Applicant: APPLE INC.

    CPC classification number: H03M13/616 H03M13/116 H03M13/611 H03M13/6502

    Abstract: A method for data encoding includes receiving a data vector to be encoded into a code word in accordance with a code defined by a parity-check matrix H. An intermediate vector s is produced by multiplying the data vector by a data sub-matrix Hs of the parity-check matrix H. A parity part of the code word is derived by applying a sequence of operations to the intermediate vector s based on a decomposition of a parity sub-matrix Hp of the matrix H using matrices A, C, U and V, in which decomposition A is a block triangular matrix that has the same size as Hp, C is matrix that is smaller than Hp, and the matrices U and V are placement matrices that are selected so that A, C, U and V satisfy a matrix equation Hp=A+UCV.

    Abstract translation: 一种用于数据编码的方法包括:根据由奇偶校验矩阵H定义的代码,将要编码的数据向量接收到码字中。通过将数据矢量乘以数据子矩阵Hs 奇偶校验矩阵H.通过基于使用矩阵A,C,U的矩阵H的奇偶校验子矩阵Hp的分解,向中间向量s应用一系列操作来导出码字的奇偶校验部分, V,其中分解A是具有与Hp相同大小的块三角矩阵,C是小于Hp的矩阵,矩阵U和V是选择为使得A,C,U和V满足的放置​​矩阵 矩阵方程Hp = A + UCV。

    Efficient syndrome calculation in processing a GLDPC code

    公开(公告)号:US10193574B1

    公开(公告)日:2019-01-29

    申请号:US15158620

    申请日:2016-05-19

    Applicant: APPLE INC.

    Abstract: An apparatus includes an interface, main and secondary processing modules, and circuitry. The interface is configured to receive input data to be processed in accordance with a GLDPC code defined by a parity-check-matrix including multiple sub-matrices, each sub-matrix including a main diagonal and one or more secondary diagonals, and each of the main and secondary diagonals includes N respective block matrices. The main processing module is configured to calculate N first partial syndromes based on the input data and on the block matrices of the main diagonals. The secondary processing module is configured to calculate N second partial syndromes based on the input data and on the block matrices of the secondary diagonals. The circuitry is configured to produce N syndromes by respectively combining the N first partial syndromes with the N second partial syndromes, and to encode or decode the input data, based on the N syndromes.

    Error correction coding with high-degree overlap among component codes
    5.
    发明授权
    Error correction coding with high-degree overlap among component codes 有权
    组件代码之间高度重叠的纠错编码

    公开(公告)号:US09553611B2

    公开(公告)日:2017-01-24

    申请号:US14555608

    申请日:2014-11-27

    Applicant: APPLE INC.

    Abstract: A method for Error Correction Code (ECC) encoding includes receiving data to be encoded. The data is encoded to produce a composite code word that includes multiple component code words. Each component code word in at least a subset of the component code words is encoded in accordance with a respective component code and has at least one respective bit in common with each of the other component code words.

    Abstract translation: 用于纠错码(ECC)编码的方法包括接收要编码的数据。 数据被编码以产生包括多个分量码字的复合码字。 在分量码字的至少一个子集中的每个分量码字根据相应的分量码进行编码,并且具有至少一个与每个其它分量码字相同的相应位。

    THRESHOLD ADJUSTMENT USING DATA VALUE BALANCING IN ANALOG MEMORY DEVICE
    6.
    发明申请
    THRESHOLD ADJUSTMENT USING DATA VALUE BALANCING IN ANALOG MEMORY DEVICE 有权
    在模拟存储器件中使用数据值平衡进行阈值调整

    公开(公告)号:US20140325310A1

    公开(公告)日:2014-10-30

    申请号:US13908041

    申请日:2013-06-03

    Applicant: Apple Inc.

    Abstract: A method, in a memory including multiple analog memory cells, includes segmenting a group of the memory cells into a common section and at least first and second dedicated sections. Each dedicated section corresponds to a read threshold that is used for reading a data page to be stored in the group. Data to be stored in the group is jointly balanced over a union of the common section and the first dedicated section, and over the union of the common section and the second dedicated section, to create a balanced page such that for each respective read threshold an equal number of memory cells will be programmed to assume programming levels that are separated by the read threshold. The balanced page is stored to the common and dedicated sections, and the read thresholds are adjusted based on detecting imbalance between data values in readout results of the balanced page.

    Abstract translation: 一种在包括多个模拟存储器单元的存储器中的方法包括将一组存储器单元分成公共部分和至少第一和第二专用部分。 每个专用部分对应于用于读取要存储在组中的数据页的读取阈值。 要存储在组中的数据通过公共部分和第一专用部分的并集,并且在公共部分和第二专用部分的联合之间共同平衡,以创建平衡页面,使得对于每个相应的读取阈值 相同数量的存储器单元将被编程为假设由读取阈值分开的编程电平。 平衡页面存储到公共和专用部分,并且基于检测平衡页面的读出结果中的数据值之间的不平衡来调整读取阈值。

    Reading-threshold setting based on data encoded with a multi-component code

    公开(公告)号:US09971646B2

    公开(公告)日:2018-05-15

    申请号:US15169825

    申请日:2016-06-01

    Applicant: Apple Inc.

    Abstract: A storage device includes a memory that includes storage circuitry and a memory including multiple memory cells. The storage circuitry is configured to store in a group of the memory cells data that was encoded using an error correcting code (ECC) consisting of multiple component codes, to define multiple threshold settings, each specifying positions of one or more reading-thresholds, to read the data from the memory cells in the group using the threshold settings and decode the read data using the component codes, to calculate for the component codes respective component-code scores that are indicative of levels of confidence in the decoded data of the component-codes, to select, based on the component-code scores, a threshold setting that is expected to result in a best readout performance among the multiple threshold settings, and to read data from the memory using the selected threshold setting.

    Cubic root of a galois field element

    公开(公告)号:US09804828B2

    公开(公告)日:2017-10-31

    申请号:US14551110

    申请日:2014-11-24

    Applicant: APPLE INC.

    CPC classification number: G06F7/724 G06F7/552 G06F7/5525 G06F2207/5526

    Abstract: A method includes receiving a first element of a Galois Field of order qm, where q is a prime number and m is a positive integer. The first element is raised to a predetermined power so as to form a second element z, wherein the predetermined power is a function of qm and an integer p, where p is a prime number which divides qm−1. The second element z is raised to a pth power to form a third element. If the third element equals the first element, the second element multiplied by a pth root of unity raised to a respective power selected from a set of integers between 0 and p−1 is output as at least one root of the first element.

    Data Storage Management in Analog Memory Cells Using a Non-Integer Number of Bits Per Cell
    10.
    发明申请
    Data Storage Management in Analog Memory Cells Using a Non-Integer Number of Bits Per Cell 有权
    使用非整数每个单元的位数模拟存储单元中的数据存储管理

    公开(公告)号:US20150179265A1

    公开(公告)日:2015-06-25

    申请号:US14135881

    申请日:2013-12-20

    Applicant: Apple Inc.

    Abstract: A method for data storage includes, in a first programming phase, storing first data in a group of memory cells by programming the memory cells in the group to a set of initial programming levels. In a subsequent second programming phase, second data is stored in the group by identifying the memory cells in the group that were programmed in the first programming phase to respective levels in a predefined partial subset of the initial programming levels, and programming only the identified memory cells with the second data, so as to set at least some of the identified memory cells to one or more additional programming levels that are different from the initial programming levels. The memory cells to which the second data was programmed are recognized by reading only a partial subset of the first data. The second data is read from the recognized memory cells.

    Abstract translation: 一种用于数据存储的方法包括在第一编程阶段中通过将组中的存储器单元编程为一组初始编程级别来将第一数据存储在一组存储器单元中。 在随后的第二编程阶段,通过将在第一编程阶段中编程的组中的存储器单元识别为初始编程级的预定义部分子集中的相应级别,并且仅编程所识别的存储器,将第二数据存储在组中 具有第二数据的单元,以便将所识别的存储器单元中的至少一些设置为与初始编程电平不同的一个或多个附加编程电平。 通过仅读取第一数据的部分子集来识别第二数据被编程到的存储器单元。 从识别的存储器单元读取第二数据。

Patent Agency Ranking