用于固态存储器件的两级BCH码

    公开(公告)号:CN102823141A

    公开(公告)日:2012-12-12

    申请号:CN201180016566.8

    申请日:2011-03-23

    IPC分类号: H03M13/15 H03M13/29 G06F11/10

    摘要: 提供了用于对输入数据进行编码以记录在固态存储器件(1)的s级存储器(2)中的方法和装置,其中s≥2。根据第一和第二BCH码在包含M个输入数据字的组中对输入数据字进行编码,以针对每个组产生所述第一BCH码的M个第一码字的一个集合。产生M个第一码字的所述集合,使得所述M个第一码字的至少一个预定线性组合产生所述第二BCH码的第二码字,此第二BCH码是所述第一BCH码的子码。然后在所述s级存储器(2)中记录M个第一码字的各集合。如果所述第一和第二码字均包括N个q元符号,其中q=pk,k是正整数并且p是素数,则通过确保q和s分别是公共基数r的u和v次幂,可以使q元码字母与所述s元存储器(2)匹配,其中u和v是正整数并且k≥u,由此p(k/u)v=s。

    固态存储系统中的数据管理

    公开(公告)号:CN102656566A

    公开(公告)日:2012-09-05

    申请号:CN201080056483.7

    申请日:2010-12-16

    IPC分类号: G06F11/10

    摘要: 提供了用于控制数据管理操作的方法和装置,所述数据管理操作包括将数据存储在固态存储系统(5)的固态存储器(6)中。将输入数据存储在所述固态存储器(6)中的连续多组数据写入位置中。每个组包括在所述固态存储器(6)的多个逻辑子区中的每个子区内的一组写入位置。根据第一和第二线性错误校正码对要存储在每个组中的输入数据进行编码。通过从要存储在每个组中的输入数据构建包括数据符号行和列的逻辑阵列来执行编码。分别根据所述第一和第二线性错误校正码对所述行和列进行编码,以产生其中所有行对应于相应第一码字而列对应于相应第二码字的编码阵列。执行所述编码和存储操作以使得在每个所述组中,编码后的输入数据包括在多个所述逻辑子区中的每个子区内的多个第一码字,并且每个逻辑子区包含该组的每个所述第二码字的一部分。

    固态存储器件内的数据管理

    公开(公告)号:CN102656567A

    公开(公告)日:2012-09-05

    申请号:CN201080056683.2

    申请日:2010-12-16

    IPC分类号: G06F11/10

    摘要: 提供了用于控制固态存储器件(5)的方法和装置,其中固态存储器(6)包括可擦除块,每个块包括多个数据写入位置。将输入数据存储在连续的多组数据写入位置中,每个组包括位于所述固态存储器(6)的多个逻辑子区中的每个子区内的一组可擦除块中的写入位置。在所述输入数据内编入错误校正码,使得每个组包含该组内的输入数据的错误校正码。在存储器(13)中维护指示输入数据在所述固态存储器(6)中的位置的元数据。还维护存储在每个数据写入位置内的数据的有效性的指示。在擦除块之前,从包含该块中的写入位置的一个或每个所述组恢复有效输入数据。所恢复的数据接着被重新存储为新输入数据。

    数据存储系统
    5.
    发明授权

    公开(公告)号:CN100426407C

    公开(公告)日:2008-10-15

    申请号:CN200480009769.4

    申请日:2004-05-06

    IPC分类号: G11B20/10 G11B20/18

    摘要: 本发明描述了一种用于解码数据存储系统中的数据的方法和装置。在运行中,根据从所述数据存储系统的存储子系统接收的数据块,检测器生成输出位流。根据所述输出位流和所述数据块,与所述检测器相连的后处理器生成第一纠错位流。根据所述第一纠错位流,与所述后处理器相连的纠错解码器生成第二纠错位流,并且还根据所述第二纠错位流来生成校验和。当所述校验和指示所述第二纠错位流中的错误并且所述第二纠错位流包括至少一个正确的交织时,反馈路径从所述纠错解码器向所述后处理器提供指示所述第二纠错位流中正确位的位置的钉住数据。根据从所述纠错解码器接收的所述钉住数据,所述后处理器重新生成所述第一纠错位流。

    数据存储系统
    6.
    发明公开

    公开(公告)号:CN1774756A

    公开(公告)日:2006-05-17

    申请号:CN200480009769.4

    申请日:2004-05-06

    IPC分类号: G11B20/10 G11B20/18

    CPC分类号: G11B20/1833

    摘要: 本发明描述了一种用于解码数据存储系统中的数据的方法和装置。在运行中,根据从所述数据存储系统的存储子系统接收的数据块,检测器生成输出位流。根据所述输出位流和所述数据块,与所述检测器相连的后处理器生成第一纠错位流。根据所述第一纠错位流,与所述后处理器相连的纠错解码器生成第二纠错位流,并且还根据所述第二纠错位流来生成校验和。当所述校验和指示所述第二纠错位流中的错误并且所述第二纠错位流包括至少一个正确的交织时,反馈路径从所述纠错解码器向所述后处理器提供指示所述第二纠错位流中正确位的位置的钉住数据。根据从所述纠错解码器接收的所述钉住数据,所述后处理器重新生成所述第一纠错位流。

    用于乘积码的组合纠错和擦除解码的系统和方法

    公开(公告)号:CN105453439B

    公开(公告)日:2019-05-17

    申请号:CN201480044152.X

    申请日:2014-07-28

    IPC分类号: H03M13/00

    摘要: 在一个实施例中,用于乘积码的组合纠错和擦除解码的系统包括处理器以及与所述处理器集成和/或可由所述处理器执行的逻辑,所述逻辑配置成:接收捕获的数据,为捕获的数据生成擦除旗标并将所述擦除旗标提供给C2解码器,将停止参数设定成等于用于对所述捕获的数据进行编码的码字交织中的C1码字的长度,以及在迭代过程中,选择性地执行后面跟随着纠错或擦除C2解码的纠错或擦除C1解码,直到解码成功或不成功。在另外的实施例中,一种方法和/或计算机程序产品可用于乘积码的组合纠错和擦除解码。

    固态存储系统中的数据管理

    公开(公告)号:CN102656566B

    公开(公告)日:2015-12-16

    申请号:CN201080056483.7

    申请日:2010-12-16

    IPC分类号: G06F11/10

    摘要: 提供了用于控制数据管理操作的方法和装置,所述数据管理操作包括将数据存储在固态存储系统(5)的固态存储器(6)中。将输入数据存储在所述固态存储器(6)中的连续多组数据写入位置中。每个组包括在所述固态存储器(6)的多个逻辑子区中的每个子区内的一组写入位置。根据第一和第二线性错误校正码对要存储在每个组中的输入数据进行编码。通过从要存储在每个组中的输入数据构建包括数据符号行和列的逻辑阵列来执行编码。分别根据所述第一和第二线性错误校正码对所述行和列进行编码,以产生其中所有行对应于相应第一码字而列对应于相应第二码字的编码阵列。执行所述编码和存储操作以使得在每个所述组中,编码后的输入数据包括在多个所述逻辑子区中的每个子区内的多个第一码字,并且每个逻辑子区包含该组的每个所述第二码字的一部分。

    用于固态存储器件的两级BCH码

    公开(公告)号:CN102823141B

    公开(公告)日:2015-09-16

    申请号:CN201180016566.8

    申请日:2011-03-23

    IPC分类号: H03M13/15 H03M13/29 G06F11/10

    摘要: 提供了用于对输入数据进行编码以记录在固态存储器件(1)的s级存储器(2)中的方法和装置,其中s≥2。根据第一和第二BCH码在包含M个输入数据字的组中对输入数据字进行编码,以针对每个组产生所述第一BCH码的M个第一码字的一个集合。产生M个第一码字的所述集合,使得所述M个第一码字的至少一个预定线性组合产生所述第二BCH码的第二码字,此第二BCH码是所述第一BCH码的子码。然后在所述s级存储器(2)中记录M个第一码字的各集合。如果所述第一和第二码字均包括N个q元符号,其中q=pk,k是正整数并且p是素数,则通过确保q和s分别是公共基数r的u和v次幂,可以使q元码字母与所述s元存储器(2)匹配,其中u和v是正整数并且k≥u,由此p(k/u)v=s。

    固态存储器件内的数据管理

    公开(公告)号:CN102656567B

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

    申请号:CN201080056683.2

    申请日:2010-12-16

    IPC分类号: G06F11/10

    摘要: 提供了用于控制固态存储器件(5)的方法和装置,其中固态存储器(6)包括可擦除块,每个块包括多个数据写入位置。将输入数据存储在连续的多组数据写入位置中,每个组包括位于所述固态存储器(6)的多个逻辑子区中的每个子区内的一组可擦除块中的写入位置。在所述输入数据内编入错误校正码,使得每个组包含该组内的输入数据的错误校正码。在存储器(13)中维护指示输入数据在所述固态存储器(6)中的位置的元数据。还维护存储在每个数据写入位置内的数据的有效性的指示。在擦除块之前,从包含该块中的写入位置的一个或每个所述组恢复有效输入数据。所恢复的数据接着被重新存储为新输入数据。