CN103187979B - 基于混合域fft的非二进制ldpc解码器 - Google Patents

基于混合域fft的非二进制ldpc解码器 Download PDF

Info

Publication number
CN103187979B
CN103187979B CN201210420896.XA CN201210420896A CN103187979B CN 103187979 B CN103187979 B CN 103187979B CN 201210420896 A CN201210420896 A CN 201210420896A CN 103187979 B CN103187979 B CN 103187979B
Authority
CN
China
Prior art keywords
circuit
value
domain
check
current layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210420896.XA
Other languages
English (en)
Other versions
CN103187979A (zh
Inventor
陈蕾
李宗旺
袁强生
杨少华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Avago Technologies Fiber IP Singapore Pte Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avago Technologies Fiber IP Singapore Pte Ltd filed Critical Avago Technologies Fiber IP Singapore Pte Ltd
Publication of CN103187979A publication Critical patent/CN103187979A/zh
Application granted granted Critical
Publication of CN103187979B publication Critical patent/CN103187979B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/114Shuffled, staggered, layered or turbo decoding schedules
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1125Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1171Parity-check or generator matrices with non-binary elements, e.g. for non-binary LDPC codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6331Error control coding in combination with equalisation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/6583Normalization other than scaling, e.g. by subtraction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)

Abstract

本公开涉及基于混合域FFT的非二进制LDPC解码器。本发明的各个实施例涉及解码数据的方法和装置,并且更具体地涉及在基于混合域FFT的非二进制LDPC解码器中解码数据的方法和装置。例如,在一个实施例中,装置包括消息处理电路,可操作地用来在对数域中处理变量节点消息和校验节点消息,以及低密度奇偶校验解码器中的校验节点计算电路,可操作地用来在实域中执行基于快速傅里叶变换的校验节点计算。消息处理电路和校验节点计算电路执行迭代层解码。

Description

基于混合域FFT的非二进制LDPC解码器
背景技术
已经开发了包括存储系统、蜂窝电话系统和无线传输系统的各种数据传输系统。在这些系统的每一个中,经由某些介质将数据从发送方传输到接收方。例如,在存储系统中,经由存储介质将数据从发送方(即,写功能)发送到接收方(即,读功能)。因为以数字数据的形式存储和传输信息,所以引入了错误,该错误如果不更正可能损坏数据并且使信息不可用。任何传输的效率都受到由各种因素所导致的任何数据丢失的影响。已经开发了很多类型的错误检查系统来检测和校正数字数据中的错误。例如,在可能最简单的系统中,可以添加奇偶位到一组数据位,以保证该组数据位(包括奇偶位)具有偶数或者奇数个1。当使用奇数奇偶性时,在准备存储或者传输数据的时候,对该组中设为1的数据位的数量进行计数,如果该组中存在偶数个1,则将奇偶位设为1,以保证该组具有奇数个1。如果该组中存在奇数个1,则将奇偶位设为0,以保证该组具有奇数个1。在从存储设备获得数据或者通过传输接收数据之后,可以再次校验奇偶性,如果该组中具有偶数奇偶性,则数据中引入了至少一个错误。在这种简单级别上,可以检测到某些错误但不能进行校正。
还可以在误差校正系统(包含于LDPC解码器中)中使用奇偶位。LDPC码是能够被可视地表示在图1所示的Tanner图100中的基于奇偶性的码。在LDPC解码器中,针对一组变量节点110、112、114、116、118、120、122和124,在若干校验节点102、104、106和108中执行多次奇偶校验。在设计LDPC码时选择变量节点110-124和校验节点102-108之间的连接(或者边),以均衡码的强度和获得数据时执行LDPC码所需的解码器的复杂度。在设计LDPC码时选择该组中奇偶位的数量和位置。以迭代过程在相互连接的变量节点110-124和校验节点102-108之间传递消息,将与应当出现在变量节点110-124中的值有关的置信度传递到所连接的校验节点102-108。基于这些消息在校验节点102-108中执行奇偶校验,并且如果有必要的话,将结果返回到所连接的变量节点110-124以更新置信度。可以以二进制或者非二进制方式来实现LDPC解码器。在二进制LDPC解码器中,变量节点110-124包含基于从存储设备获取的、由传输系统接收的或者以某些其它方式获得的一组数据和奇偶位的标量值。二进制LDPC解码器中的消息是作为表示正在进行发送的变量节点包含特定值的概率的空似然(plain-likelihood)概率值或者对数似然比率(LLR)值来传输的标量值。在非二进制LDPC解码器中,变量节点110-124包含来自伽罗华域(包含有限个元素、由大小pk来特征化的有限域GF(pk),其中p是质数,而k是正整数)的符号。非二进制LDPC解码器中的消息是多维向量(一般为空似然概率向量或者LLR向量)。
可以按照如下的矩阵形式来表示变量节点110-124和校验节点102-108之间的连接,其中列表示变量节点,行表示校验节点,并且处于变量节点列和校验节点行的交叉点的来自伽罗华域随机非零元素a(i,j)表示变量节点和校验节点之间的连接并且提供变量节点和校验节点之间的消息的置换:
通过为一组变量节点110-124提供多个校验节点102-108,提供了错误校验中的冗余,使得能够很好地检测以及校正错误。每个校验节点102-108对作为来自其相邻(或者相连)变量节点的消息来传递的位或者符号执行奇偶校验。在与图1的Tanner图100对应的示例性LDPC码中,校验节点102校验变量节点110、116、120和122的奇偶性。以迭代过程在相连的变量节点110-124和校验节点102-108之间来回传递值,直到LDPC码收敛在一组数据的值和变量节点110-124中的奇偶位上。例如,变量节点110传递消息到校验节点102和106。校验节点102将消息传回变量节点110、116、120和122。变量节点110-124和校验节点102-108之间的消息是概率或者置信度,因而LDPC解码算法也被称为置信传播算法。来自节点的每个消息表示位或者符号具有特定值的概率,该特定值基于节点的当前值和节点的前一个消息。
基于变量节点的当前值和从相邻校验节点到变量节点的最后消息(除非从计算中忽略来自该特定校验节点的最后消息以防止正反馈),使用多种算法中的任何一种来计算从变量节点到任何特定相邻校验节点的消息。类似地,基于校验节点的当前值和从相邻变量节点到校验节点的最后消息(除非从计算中忽略来自该特定变量节点的最后消息以防止正反馈)计算从校验节点到任何特定相邻变量节点的消息。随着在系统中执行迭代,消息在变量节点110-124和校验节点102-108之间来回传递,基于所传递的消息调整节点102-124中的值,直到值收敛并且停止改变或者直到处理停止。
仍然需要更有效和更精确的LDPC解码器。
发明内容
本发明的各个实施例涉及解码数据的方法和装置,并且更具体地涉及在基于混合域FFT的非二进制LDPC解码器中解码数据的方法和装置。例如,在一个实施例中,装置包括:消息处理电路,可操作地用来在对数域中处理变量节点消息和校验节点消息;以及低密度奇偶校验解码器中的校验节点计算电路,可操作地用来在实域中执行基于快速傅里叶变换的校验节点计算。消息处理电路和校验节点计算电路执行迭代层解码。在某些实施例中,消息处理电路包括:加法电路,将连接层的变量节点值和连接层的校验节点值相加来产生连接层的伽罗华域中每个符号的软对数似然比率值。消息处理电路还包括:移位器,按照当前层和连接层之间的差别来对软对数似然比率值进行移位以产生当前层的总软对数似然比率值;以及减法电路,从当前层的总软对数似然比率值中减去当前层的校验节点值以产生当前层的变量节点值。在某些情况下,变换电路将当前层的变量节点值从对数域变换为实域或者概率域。在某些实施例中,校验节点计算电路包括在实域中于当前层的变量节点值上操作的FFT电路;可操作地用来确定FFT电路输出的符号和幅值的幅值和符号计算电路;以及存储符号和幅值的校验节点存储器。某些实施例基于校验节点存储器中的值、通过使用指数计算电路计算幅值的指数值以及向相应的指数值施加符号来计算相连层和当前层的校验节点值。在快速傅里叶逆变换电路中处理结果并且将结果从实域变换为对数域。
本发明内容仅仅提供根据本发明的某些实施例的概要。根据以下详细描述、所附权利要求和附图,本发明的许多其它目的、特征、优点和其它实施例将变得更加完全地明了。
附图说明
通过参考本说明书剩余部分所描述的附图,可以实现对本发明各个实施例的进一步理解。附图中,可以在多幅附图中始终使用相同的附图标记来指相同的组件。在某些情况下,包含小写字母的子标记与附图标记相关联,以指明多个相同组件中的一个。当在没有指定现有子标记的情况下对附图标记进行引用时,其意在指所有这样的多个相同组件。
图1描述了示例性现有技术LDPC码的Tanner图;
图2描述了根据本发明各个实施例的可以用来获取或者接收所存储或者所传输的数据的读通道的框图;
图3描述了根据本发明各个实施例的基于混合域FFT的非二进制LDPC解码器;
图4描述了根据本发明各个实施例的例示FFT计算的蝶形图;
图5描述了显示根据本发明各个实施例的在基于混合域FFT的非二进制LDPC解码器中解码数据的方法的流程图;
图6描述了包括根据本发明某些实施例的基于混合域FFT的非二进制LDPC解码器的存储系统;
图7描述了包括根据本发明某些实施例的基于混合域FFT的非二进制LDPC解码器的虚拟存储系统;以及
图8描述了包括根据本发明某些实施例的基于混合域FFT的非二进制LDPC解码器的示例性数据传输设备。
具体实施方式
本发明的各个实施例涉及解码数据的方法和装置,并且更具体地涉及在基于混合域快速傅里叶变换(FFT)的非二进制LDPC解码器中解码数据的方法和装置。混合域LDPC解码器在对数域中执行解码操作的一部分并且在概率域中执行一部分,从而实现非二进制LDPC码的置信传播(BP)解码和基于FFT的解码的一些好处,而同时避免纯BP解码器或者FFT解码器可能所固有的一些缺点。例如,混合域LDPC解码器受益于变量节点和校验节点消息的对数域处理的稳定性和简单性(使用加法和减法而不是乘法和除法来处理消息),以及在对数域中工作时对有限精度的灵敏性的降低。通过使用概率的概率域FFT计算,混合域LDPC解码器的复杂度从BP解码器中的Nt(2P)2降低到Nt(2P)P,其中N是码长,t是列的平均权重,而P定义伽罗华域GF(2P)的维度。FFT计算是使用加法和减法的p维2点计算。混合域LDPC解码器还实现了FFT计算的优良误差性能,与诸如最小-最大(min-max)解码的其它复杂度降低的算法相比,该FFT计算不使用近似值。通过在概率域中执行FFT计算并且在对数域中处理变量节点消息和校验节点消息,混合域LDPC解码器提供具有相对简单和稳定的硬件的优良误差性能。
混合域LDPC解码器使用规则或者不规则奇偶校验H矩阵来解码准循环LDPC码,该矩阵具有循环子矩阵阵列、或者具有不同循环移位的单位矩阵和零矩阵的循环移位版本。基于有限伽罗华域GF(2P)构建H矩阵,例如,具有如下形式:
尽管在此公开的混合域LDPC解码器不限于任何特定应用,但在此描述了受益于本发明实施例的应用的几个示例。转向图2,使用读通道200来处理模拟信号202以及从模拟信号202无误地获取用户数据位。在某些情况下,从磁存储介质的读/写头组件得到模拟信号202。在其它情况下,从可操作地用来从传输介质接收信号的接收器电路得到模拟信号202。传输介质可以是无线或者有线的,诸如(但不限于)电缆或者光学连接。基于在此提供的公开内容,本领域的普通技术人员将认识到可以得到模拟信号202的各种源。
读通道200包括接收和处理模拟信号202的模拟前端204。模拟前端204可以包括(但不限于)本领域所公知的模拟滤波器和放大器电路。基于在此提供的公开内容,本领域的普通技术人员将认识到可以作为模拟前端204的一部分来包含的各种电路。在某些情况下,作为模拟前端204的一部分来包含的可变增益放大器的增益是可修改的,并且模拟前端204中包含的模拟滤波器的截止频率和升压是可修改的。模拟前端204接收和处理模拟信号202,并且提供已处理的模拟信号206到模数转换器210。
模数转换器210将已处理的模拟信号206转换为相应的一系列数字采样212。模数转换器210可以是本领域所公知的能够产生与模拟输入信号对应的数字采样的任何电路。基于在此提供的公开内容,本领域的普通技术人员将认识到可以与本发明的不同实施例相关地使用的各种模数转换器电路。将数字采样212提供给均衡器214。均衡器214向数字采样212施加均衡算法以产生均衡输出216。在本发明的某些实施例中,均衡器214是本领域所公知的数字有限脉冲响应滤波器电路。可以在缓冲器218中存储均衡输出216中包含的数据或者码字,直到数据检测器220可用于处理。
数据检测器220对所接收的输入执行数据检测处理,产生检测输出222。在本发明的某些实施例中,数据检测器220是Viterbi算法数据检测器电路,或者在某些情况下,更具体地是本领域所公知的最大后验(MAP)数据检测器电路。在这些实施例中,检测输出222包含与每一位或者符号具有特定值的似然有关的对数似然比率(LLR)信息。基于在此提供的公开内容,本领域的普通技术人员将认识到可以与本发明的不同实施例相关地使用的各种数据检测器。数据检测器220基于缓冲器218中来自均衡器214或者其它源的数据集的可用性而启动。数据检测器220产生包括软数据的检测输出222。如在此使用的那样,在其最宽泛的含义上使用短语“软数据”,以指可靠性数据,可靠性数据的每个实例指示已经正确检测相应的比特位置或者一组比特位置的似然。在本发明的某些实施例中,软数据或者可靠性数据是本领域所公知的对数似然比率数据。
将来自数据检测器220的检测输出222提供给相对于突发错误来保护数据的交织器224。突发错误重写已定位的一组或者一串位。因为LDPC解码器最适合于校正更加均匀分布的错误,所以突发错误可能淹没(overwhelm)LDPC解码器。交织器224通过交织或者混合来自数据检测器220的检测输出222以产生存储器230中存储的交织输出226来防止这种情况。交织器224可以是本领域所公知的能够混合数据集以产生重新排列的数据集的任何电路。将来自存储器230的交织输出226提供给对交织输出226执行奇偶校验的混合域LDPC解码器232,以保证满足LDPC编码器(未示出)在存储或者传输之前建立的奇偶约束条件,以便检测和校正在存储或传输期间或者在读通道200的其它部件处理的期间可能在数据中出现的任何错误。
可以在读通道200中执行多个检测和解码迭代,在此被称为全局迭代。(相比而言,局部迭代是在混合域LDPC解码器232中执行的解码迭代)。为了执行全局迭代,在存储器230中存储来自混合域LDPC解码器232的LLR值234,在解交织器236中对该值进行解交织以逆转由交织器224所施加的处理,并且再次将该值提供给数据检测器220以允许数据检测器220重复数据检测处理(由来自混合域LDPC解码器232的LLR值234辅助)。依此,读通道200可以执行多个全局迭代,以允许数据检测器220和混合域LDPC解码器232收敛在正确的数据值上。
混合域LDPC解码器232还产生与交织器224的交织输出226中包含的数据位或者符号的值有关的硬判决240。对于二进制数据位,硬判决可以表示为0和1。对于非二进制或者多级符号,在GF(8)LDPC解码器中,硬判决可以由域元素000、001、010…111表示。
在硬判决解交织器242中对来自混合域LDPC解码器232的硬判决240进行解交织(以逆转在交织器224中施加的处理),并且在将该硬判决提供给用户或者进行进一步处理之前在硬判决存储器244中存储该硬判决。例如,可以进一步处理读通道200的输出246以逆转在磁存储介质中存储数据或者通过传输通道传输数据之前施加的格式改变。
现在转向图3,公开了根据本发明各个实施例的基于混合域FFT的非二进制LDPC层解码器300的示例。混合模式LDPC解码器300逐层地处理H矩阵的循环子矩阵,在迭代过程中组合来自前一层或者连接层的值和当前层的那些值,以更新指示已经根据GF(2P)中每个元素的特定值正确检测相应比特位置或者一组比特位置的似然的软LLR输出P值。
混合模式LDPC解码器300包括存储来自输入304的软LLR输入值、Q值和软LLR输出P值的解码器存储器302。解码器存储器302是具有多个存储体的乒乓(ping pong)存储器。加法电路306分别将一个循环行列式中每个符号的连接层变量节点值(来自解码器存储器302的Q值310,或者,在第一次局部迭代中,来自输入304的软LLR输入值)和连接层校验节点值(连接层R值312)相加,以获得连接层的每个符号的软LLR值314。在某些实施例中,加法电路306针对GF(2P)的每个元素包括一个加法器,以将每个元素的连接层Q值和该元素的连接层R值相加来获得该符号中GF(2P)的每个元素的软LLR值。对于GF(8)混合模式LDPC解码器300,符号可以具有GF(8)的8个元素中任何一个的值,并且加法电路306包括8个加法器来产生表示该符号的GF(8)中每个元素的软LLR值。在某些实施例中,加法电路306根据等式1执行变量节点更新:
(等式1)
其中是进入dv度变量节点的一组消息。例如,如果三个校验节点连接到变量节点,在H矩阵的列中具有三个非零元素,则变量节点的度dv为3。因此,是行p中的1…dv组非零V消息。L是通道似然(输入304处的初始通道LLR值)。是该变量节点的一组输出消息。是dc度校验节点的一组输入消息。是dc度校验节点的一组输出消息。
将来自加法电路306的软LLR值314提供给归一化电路316,其比较软LLR值314中的每一个来识别最小值和硬判决,并且其从每个符号的剩余软LLR值中减去该最小值,从而将软LLR值314归一化到它们的最小值并且产生归一化的变量节点值318。
将归一化的变量节点值318提供给重排器320,其重新排列归一化的变量节点值318以准备用于校验节点更新并且其施加由H矩阵的非零元素指定的置换(permutation)。置换是伽罗华域中的乘法。例如,GF的元素2乘以元素1、2、3、4、5、6和7产生元素2、3、4、5、6、7和1(其为元素1、2、3、4、5、6和7的置换)。在某些实施例中,重排器320施加根据等式2的置换:
vec(Upc)=Ph(x)vec(Utp)(等式2)
其中Ph(x)是H矩阵指定的置换。
将来自重排器320的重新排列的变量节点值322提供给移位器324,其按照当前层和连接层之间的差别对重新排列的变量节点值322进行移位,相对于H矩阵有效地将重新排列的变量节点值322从列顺序变换为行顺序。移位器324是循环移位器或者桶式移位器,其对重新排列的变量节点值322中的符号值进行移位以生成下一个循环子矩阵,产生包含当前层的总软LLR值的当前层P值326。
将当前层P值326提供给减法电路328,其从当前层P值326中减去当前层校验节点值或者当前层的符号的R值330以产生更新的当前层的符号的变量节点值,或者当前层Q值332。
多路复用器(MUX)334使能解码器存储器302中当前层软LLRP值326和当前层Q值332的存储。基于在此提供的公开内容,本领域的普通技术人员将认识到可以在解码器存储器302中存储当前层P值326和当前层Q值332的各种方式(诸如多路复用器334或者多端口存储器的使用)。
在计算校验节点消息之前,在变换电路336中将当前层Q值332从对数域变换到实域或者概率域,以准备用于校验节点更新中的FFT处理。变换电路336对输入x应用指数函数ex,其中当前层Q值332是输入x。变换电路336将概率域Q值338提供给FFT电路340以执行校验节点计算。FFT电路340对概率域Q值338执行FFT运算,产生FFT输出342。
在某些实施例中,FFT电路340是GF(8)上非二进制LDPC码的3维两点FFT。图4的附图中例示了FFT电路340执行的计算的示例。以加法和减法操作成对地组合符号的GF(8)中8个元素400中的每一个。例如,将元素402和404相加以产生元素406并且相减以产生元素408。在每个阶段改变配对。在第二阶段,将元素406和410相加以产生元素412并且相减以产生元素414。在第三阶段,将元素412和416相加以产生元素418并且相减以产生元素420。
转回图3,将FFT输出342提供给幅值/符号电路344,其产生将要存储在校验节点存储器350中的FFT输出342的绝对值和符号346。校验节点存储器350存储H矩阵中每个非零元素的LLR值(在概率域中)或者概率值。幅值/符号电路344可以组合在单个电路中或者可以包含幅值计算电路和符号计算电路。从校验节点存储器350获取前一层的绝对值和符号346并且将其提供给乘法器352(其将FFT输出342的绝对值的指数函数ex与FFT输出342的符号相乘)。将乘法器352的输出354提供给逆FFT电路356(其执行FFT电路340的逆运算)。在某些实施例中,逆FFT电路356是GF(8)上非二进制LDPC码的3维两点逆FFT(IFFT)。逆FFT电路356向变换电路360产生概率域中的连接层R值358,该变换电路360通过施加log(x)函数将连接层R值358从概率域变换到对数域,以产生对数域中的连接层R值312。
从校验节点存储器350获取当前层的绝对值和符号346并且将其提供给乘法器362(其将FFT输出342的绝对值的指数函数ex与FFT输出342的符号相乘)。将乘法器362的输出364提供给IFFT电路366(其执行FFT电路340的逆运算)。在某些实施例中,逆FFT电路366是GF(8)上非二进制LDPC码的3维两点逆FFT(IFFT)。IFFT电路366向变换电路370产生概率域中的当前层R值368,该变换电路370通过施加log(x)函数将当前层R值368从概率域变换到对数域,以产生对数域中的当前层R值330。可以将FFT电路340、幅值/符号电路344、校验节点存储器350、乘法器352、逆FFT电路356、乘法器362和IFFT电路366共同称为校验节点计算电路。可以将加法电路306、归一化电路316、重排器320、移位器324和减法电路328共同称为消息处理电路。尽管将乘法器352和362称为乘法器,但它们可以实现为向结果施加所存储的符号的指数计算电路,并且在某些实施例中,并不在常规的乘法电路中将值进行相乘。
基于来自加法电路306的软LLR值在校验子(syndrome)计算电路中执行校验子计算,并且提供硬判决374。
等式3中描述了dc度校验节点的概率域消息更新:
(等式3)
通过等式4给出Upc的傅里叶变换:
F(Upc)=Upc×12F...×pF (等式4)
其中F是由等式5给出的二阶傅里叶变换的2×2矩阵:
(等式5)
并且其中对于(i1...ik-1,ik+1,...ip)∈{0,1}p-1,Z=U×kF被定义为,
(等式6)
(等式7)
然而,注意到,对于GF(8),p=3,FFT是3维两点FFT。
转向图5,流程图500描述了根据本发明各个实施例的在基于混合域FFT的非二进制LDPC解码器中解码数据的方法。可以在诸如图3所示的那些解码器的混合域LDPC解码器中执行图5的方法(或者其变形)。按照流程图500,从解码器存储器获取H矩阵的前一层的Q值。(块502)将前一层的R值和前一层的Q值相加来产生伽罗华域中每个符号的软LLR值。(块504)重新排列软LLR值来产生重新排列的软LLR值。(块506)按照当前层和前一层之间的差别对重新排列的软LLR值进行移位。(块508)从经移位的重新排列的软LLR值中减去当前层的R值以产生伽罗华域中每个符号的当前层的Q值,并且在解码器存储器中更新当前层的Q值。(块510)将当前层的Q值从对数域变换到实域,(块512)使用快速傅里叶变换来执行校验节点计算以产生当前层和前一层的R值。(块514)在某些实施例中,这包括执行GF(8)上非二进制LDPC码的3维两点FFT、找出结果的幅值和符号、计算结果幅值的符号倍指数以及执行逆FFT。将当前层和前一层的R值从实域变换到对数域。(块516)确定是否完成了H矩阵的局部解码迭代。(块520)如果没有,则准备下一个循环并且处理继续。如果是,则确定是否完成了解码操作。(块522)当执行了最大数量的局部解码迭代或者当检测到数据收敛时,可以确定完成了解码操作。如果解码操作没有完成,则准备下一个循环并且处理继续。(块504)如果是,结束解码。(块524)执行校验子计算并且在混合域LDPC解码器的输出处提供硬判决。
尽管在此公开的混合域LDPC解码器不限于任何特定应用,但在此描述了受益于本发明实施例的应用的几个示例。图6显示了包括读通道电路602的存储系统600,该读通道电路602具有根据本发明某些实施例的混合域LDPC解码器。例如,存储系统600可以是硬盘驱动器。存储系统600还包括前置放大器604、接口控制器606、硬盘控制器610、马达控制器612、主轴马达614、盘片(disk platter)616和读/写头组件620。接口控制器606控制到/来自盘片616的数据的寻址和时序。盘片616上的数据由当组件适当地位于盘片616上时可以由读/写头组件620检测的一组磁信号构成。在一个实施例中,盘片616包括依据或者纵向或者垂直的记录方案来记录的磁信号。
在典型的读操作中,通过马达控制器612将读/写头组件620精确地定位于盘片616的期望数据磁道上。马达控制器612不仅相对于盘片616定位读/写头组件620,并且还在硬盘控制器610的指导下通过移动读/写头组件620到盘片616上的适当数据磁道来驱动主轴马达614。主轴马达614以确定的旋转速度(RPM)旋转盘片616。一旦将读/写头组件620放置于邻近适当的数据磁道,则随着主轴马达614旋转盘片616,读/写头组件620读取表示盘片616上的数据的磁信号。将所读取的磁信号作为表示盘片616上的磁数据的连续、微小模拟信号来提供。将该微小模拟信号从读/写头组件620通过前置放大器604传输到读通道电路602。前置放大器604可操作地用来放大可从盘片616访问的微小模拟信号。读通道电路602依次解码和数字化所接收的模拟信号,以重现原始写入盘片616的信息。将该数据作为读数据622提供给接收电路。作为对所接收的信息进行解码的一部分,读通道电路602使用混合域LDPC解码器处理所接收的信号。可以与以上关于图3所公开的解码器一致地来实现这类混合域LDPC解码器。在某些情况下,可以与以上关于图5所公开的流程图一致地来完成混合域LDPC解码。写操作基本上与在前读操作相反,其中写数据624被提供给读通道电路602。接着解码该数据并且将其写入盘片616。应当注意到,可以以软件或者固件实现存储系统600的各种功能或块,而以硬件实现其它功能或块。
转向图7,可以将混合域LDPC解码器集成在诸如基于RAID(廉价磁盘冗余阵列或者独立磁盘冗余阵列)的存储系统700的虚拟存储系统中,该存储系统700通过冗余(将多个磁盘组合为一个逻辑单元)增加稳定性和可靠性。数据可以分布在根据多种算法而被包含在RAID存储系统700中并且操作系统可以将其作为单个磁盘来访问的多个磁盘702、704、706、708上。例如,可以将数据镜像到RAID存储系统700中的多个磁盘702-908上,或者可以按照多种技术将数据分段并且分布在多个磁盘702-908上。如果RAID存储系统700中的少量磁盘(例如,702)故障或者变得不可用,则可以使用错误校正技术基于来自RAID存储系统700中其它磁盘(例如,704-908)的剩余数据部分来重现丢失数据。RAID存储系统700中的磁盘702-908可以是(但不限于)诸如以上关于图8所公开的存储系统的单个存储系统,并且可以相互靠近或者为了增加安全性而分布得更广。在写操作中,将写数据710提供给控制器712,其在磁盘702-908上存储写数据710(例如通过镜像或者通过条带化(stripe)写数据710)。在读操作中,控制器712从磁盘702-908获取数据,通过在控制器712或者磁盘702-908或者两者中使用混合域LDPC解码来执行错误校正,并且可能的话重现任何丢失数据。控制器712接着将RAID存储系统700作为单个磁盘而产生所生成的读数据714。
转向图8,显示了根据本发明某些实施例的包括具有混合域LDPC解码器的接收器804的无线通信系统800或者数据传输设备。通信系统800包括可操作地用来经由本领域所公知的传输介质806发射编码信息的发射器802。通过接收器804从传输介质806接收编码数据。接收器804集成有混合域LDPC解码器。可以与以上关于图3所公开的解码器一致地来实现这类混合域LDPC解码器。在某些情况下,可以与以上关于图5所公开的流程图一致地来完成解码。
在此公开的混合域LDPC解码器通过主要使用加法器、比较器和减法器并且与纯粹基于FFT的解码器相比具有更小面积和功耗的相对简单的硬件而提供了优良的错误性能。
应当注意到,上面应用中所述的各种块可以与其它功能一同以集成电路来实现。这样的集成电路可以包括特定块、特定系统或者特定电路的全部功能,或者仅仅块、系统或电路的子集。而且,可以跨越多个集成电路来实现块、系统或者电路的元件。这样的集成电路可以是现有技术中已知的任何类型的集成电路,包括但不限于单片集成电路、倒装芯片集成电路、多芯片模块集成电路和/或混合信号集成电路。还应当注意到,可以以软件或者固件来实现在此所述的块、系统或者电路的各种功能。在某些这样的情况下,可以使用其软件或者固件等同方式来实现整个系统、块或者电路。在其它情况下,可以以软件或者固件来实现特定系统、特定块或者特定电路的一个部分,而以硬件来实现其它部分。
总之,本发明提供了新的在基于混合域FFT的非二进制LDPC解码器中解码数据的方法和装置。尽管以上给出了本发明一个或多个实施例的详细描述,但对于本领域技术人员而言,在不脱离本发明实质的前提下,各种替代、修改和等同形式将是明了的。因此,以上描述不应当被用来限制本发明的范围,本发明的范围由所附权利要求来限定。

Claims (18)

1.一种用于低密度奇偶校验编码数据的非二进制解码的装置,包含:
低密度奇偶校验解码器中的消息处理电路,可操作地用来在对数域中处理变量节点消息和校验节点消息;
所述低密度奇偶校验解码器中的校验节点计算电路,可操作地用来在实域中执行基于快速傅里叶变换的校验节点计算,其中所述校验节点计算电路包含:
快速傅里叶变换电路,其可操作地用来在所述实域中对当前层的变量节点值执行快速傅里叶变换;
第一快速傅里叶逆变换电路,其可操作地执行快速傅里叶逆变换以产生所述实域中的连接层的校验节点值;以及
第二快速傅里叶逆变换电路,其可操作地执行快速傅里叶逆变换以产生所述实域中的所述当前层的校验节点值;以及
其中所述消息处理电路和所述校验节点计算电路可操作地用来执行迭代层解码。
2.如权利要求1所述的装置,其中所述消息处理电路包含:
加法电路,可操作地用来在对数域中将连接层的变量节点值和所述连接层的校验节点值相加,以产生所述连接层的伽罗华域中每个符号的软对数似然比率值;
移位器,可操作地用来以当前层和所述连接层之间的差别对所述软对数似然比率值进行移位,以产生所述当前层的总软对数似然比率值;以及
减法电路,可操作地用来在所述对数域中从所述当前层的所述总软对数似然比率值中减去所述当前层的校验节点值,以产生所述当前层的变量节点值。
3.如权利要求1所述的装置,其中所述校验节点计算电路包含:
幅值计算电路,可操作地用来提供来自所述快速傅里叶变换电路的输出值的幅值;
符号计算电路,可操作地用来提供来自所述快速傅里叶变换电路的所述输出值的符号;以及
校验节点存储器,可操作地用来存储所述幅值和所述符号。
4.如权利要求3所述的装置,其中所述校验节点计算电路进一步包含指数计算电路,可操作地用来计算连接层的所述幅值的指数值并且将所述符号施加到相应指数值。
5.如权利要求3所述的装置,其中所述校验节点计算电路进一步包含:指数计算电路,可操作地用来计算所述当前层的所述幅值的指数值并且施加所述符号到相应指数值。
6.如权利要求1所述的装置,其中所述校验节点计算电路进一步包含变换电路,用来将所述连接层的所述校验节点值从所述实域变换到所述对数域。
7.如权利要求1所述的装置,其中所述校验节点计算电路进一步包含:变换电路,用来将所述当前层的所述校验节点值从所述实域变换到所述对数域。
8.如权利要求1所述的装置,进一步包含:第一变换电路,可操作地用来将当前层的变量节点值从所述对数域变换到所述实域。
9.如权利要求1所述的装置,其中所述消息处理电路和所述校验节点计算电路作为集成电路来实现。
10.如权利要求1所述的装置,其中将所述装置集成在存储设备中。
11.如权利要求1所述的装置,其中将所述装置集成在包含独立磁盘冗余阵列的存储系统中。
12.如权利要求1所述的装置,其中将所述装置集成在数据传输设备中。
13.一种在混合域非二进制低密度奇偶校验解码器中解码数据的方法,包含:
在对数域中于混合域低密度奇偶校验解码器中处理变量节点消息和校验节点消息;
将变量节点消息从所述对数域变换到实域;
在所述实域中对当前层的变量节点值执行基于快速傅里叶变换的校验节点计算,其中所述处理和所述校验节点计算包含迭代层解码;
执行快速傅里叶逆变换以产生所述实域中的当前层的校验节点值;
执行快速傅里叶逆变换以产生所述实域中的连接层的校验节点值;以及
将所述当前层的实域校验节点值和所述连接层的实域校验节点值从所述实域变换到所述对数域。
14.如权利要求13所述的方法,其中在所述对数域中的所述处理包含:
在所述对数域中将连接层的变量节点值和所述连接层的校验节点值相加,以产生所述连接层的伽罗华域中每个符号的软对数似然比率值;
按照当前层和所述连接层之间的差别对所述软对数似然比率值进行移位,以产生所述当前层的总软对数似然比率值;以及
在所述对数域中从所述当前层的所述总软对数似然比率值中减去所述当前层的校验节点值,以产生所述当前层的变量节点值。
15.如权利要求13所述的方法,其中所述校验节点计算包含在所述实域中使用快速傅里叶变换对变量节点值执行校验节点计算,以产生所述实域中连接层的校验节点值和所述实域中当前层的校验节点值,其中变换所述实域校验节点消息包含变换所述连接层的所述校验节点值和所述当前层的所述校验节点值。
16.一种存储系统,包含:
保持数据集的存储介质;
写头,可操作地用来将所述数据集磁性记录到所述存储介质;以及
混合域非二进制低密度奇偶校验解码器,可操作地用来执行分层解码,包含:
消息处理电路,可操作地用来在对数域中处理变量节点消息和校验节点消息;以及
校验节点计算电路,可操作地用来在实域中执行基于快速傅里叶变换的校验节点计算,其中所述校验节点计算电路包含:
快速傅里叶变换电路,其可操作地用来在所述实域中对当前层的变量节点值执行快速傅里叶变换;
第一快速傅里叶逆变换电路,其可操作地执行快速傅里叶逆变换以产生所述实域中的连接层的校验节点值;以及
第二快速傅里叶逆变换电路,其可操作地执行快速傅里叶逆变换以产生所述实域中的所述当前层的校验节点值。
17.如权利要求16所述的存储系统,其中所述消息处理电路包含:
加法电路,可操作地用来在对数域中将连接层的变量节点值和所述连接层的校验节点值相加,以产生所述连接层的伽罗华域中每个符号的软对数似然比率值;
移位器,可操作地用来以当前层和所述连接层之间的差别对所述软对数似然比率值进行移位,以产生所述当前层的总软对数似然比率值;以及
减法电路,可操作地用来在所述对数域中从所述当前层的所述总软对数似然比率值中减去所述当前层的校验节点值,以产生所述当前层的变量节点值。
18.如权利要求16所述的存储系统,其中所述校验节点计算电路包含:
幅值计算电路,可操作地用来提供来自所述快速傅里叶变换电路的输出值的幅值;
符号计算电路,可操作地用来提供来自所述快速傅里叶变换电路的所述输出值的符号;以及
校验节点存储器,可操作地用来存储所述幅值和所述符号。
CN201210420896.XA 2011-12-30 2012-10-29 基于混合域fft的非二进制ldpc解码器 Active CN103187979B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/340,951 US8819515B2 (en) 2011-12-30 2011-12-30 Mixed domain FFT-based non-binary LDPC decoder
US13/340,951 2011-12-30

Publications (2)

Publication Number Publication Date
CN103187979A CN103187979A (zh) 2013-07-03
CN103187979B true CN103187979B (zh) 2017-08-11

Family

ID=47044883

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210420896.XA Active CN103187979B (zh) 2011-12-30 2012-10-29 基于混合域fft的非二进制ldpc解码器

Country Status (6)

Country Link
US (1) US8819515B2 (zh)
EP (1) EP2611037B1 (zh)
JP (1) JP2013141204A (zh)
KR (1) KR20130079134A (zh)
CN (1) CN103187979B (zh)
TW (1) TWI540425B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9385753B2 (en) * 2013-02-14 2016-07-05 Marvell World Trade Ltd. Systems and methods for bit flipping decoding with reliability inputs
WO2014138246A1 (en) 2013-03-07 2014-09-12 Marvell World Trade Ltd. Systems and methods for decoding with late reliability information
KR20150131370A (ko) 2013-03-21 2015-11-24 마벨 월드 트레이드 리미티드 멀티-스테이지 소프트 입력 디코딩을 위한 방법 및 시스템
US9048867B2 (en) * 2013-05-21 2015-06-02 Lsi Corporation Shift register-based layered low density parity check decoder
CN103731159A (zh) * 2014-01-09 2014-04-16 北京邮电大学 一种对先验信息迭代应用的混合域fft多进制和积译码算法
US9378765B2 (en) 2014-04-03 2016-06-28 Seagate Technology Llc Systems and methods for differential message scaling in a decoding process
US9734129B2 (en) 2014-04-22 2017-08-15 Sandisk Technologies Llc Low complexity partial parallel architectures for Fourier transform and inverse Fourier transform over subfields of a finite field
US9444493B2 (en) 2014-06-26 2016-09-13 Sandisk Technologies Llc Encoder with transform architecture for LDPC codes over subfields using message mapping
US9432055B2 (en) * 2014-06-26 2016-08-30 Sandisk Technologies Llc Encoder for quasi-cyclic low-density parity-check codes over subfields using fourier transform
KR102372362B1 (ko) 2015-09-22 2022-03-08 삼성전자주식회사 부호화된 크기 방식을 이용한 디지털 신호 프로세서 및 이를 포함하는 무선 통신 수신기
CN107026654B (zh) * 2016-02-02 2019-06-18 中国科学院声学研究所 一种准循环多进制低密度奇偶校验码的快速频域编码方法
KR102626162B1 (ko) * 2016-06-14 2024-01-18 삼성전자주식회사 연산 복잡도를 감소시킬 수 있는 디코더의 동작 방법과 이를 포함하는 데이터 저장 장치의 동작 방법
EP3419179B1 (en) * 2017-06-19 2022-11-02 Universite De Bretagne Sud Hybrid architectures for check node processing of extended min-sum (ems) decoding of non-binary ldpc codes
CN112118013A (zh) * 2019-06-20 2020-12-22 南京大学 一种适用于多进制ldpc码的高性能、低复杂度的迭代大数逻辑译码方法
TWI717171B (zh) * 2019-12-26 2021-01-21 大陸商深圳大心電子科技有限公司 資料讀取方法、儲存控制器與儲存裝置
CN117785025B (zh) * 2023-11-17 2024-05-10 青海师范大学 Ecc与raid5混合编码优化ssd读性能的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1348171A (zh) * 2000-10-10 2002-05-08 骆俊光 记忆硬盘的存取方法及装置
CN1989696A (zh) * 2004-07-19 2007-06-27 德克萨斯仪器股份有限公司 对低密度奇偶校验码的分层解码方法的改进
CN101073205A (zh) * 2004-12-08 2007-11-14 韩国电子通信研究院 低密度奇偶校验编码器和解码器以及低密度奇偶校验编码和解码方法
CN101305575A (zh) * 2005-11-11 2008-11-12 三星电子株式会社 无线通信系统中归一化到信道解码器的输入度量的方法和装置
US7730377B2 (en) * 2004-07-22 2010-06-01 Texas Instruments Incorporated Layered decoding of low density parity check (LDPC) codes

Family Cites Families (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0443721A (ja) 1990-06-11 1992-02-13 Matsushita Electric Ind Co Ltd ディジタル信号復号装置
US5612964A (en) 1991-04-08 1997-03-18 Haraszti; Tegze P. High performance, fault tolerant orthogonal shuffle memory and method
US5325402A (en) 1991-04-30 1994-06-28 Nec Corporation Method and arrangement for estimating data sequences transmsitted using Viterbi algorithm
US5278703A (en) 1991-06-21 1994-01-11 Digital Equipment Corp. Embedded servo banded format for magnetic disks for use with a data processing system
US5392299A (en) 1992-01-15 1995-02-21 E-Systems, Inc. Triple orthogonally interleaed error correction system
US5317472A (en) 1992-03-17 1994-05-31 Schweitzer Engineering Laboratories, Inc. Apparatus for insuring the security of output signals from protective relays used in electric power systems
US5513192A (en) 1992-08-28 1996-04-30 Sun Microsystems, Inc. Fault tolerant disk drive system with error detection and correction
GB9317604D0 (en) 1993-08-24 1993-10-06 Philips Electronics Uk Ltd Receiver for ds-cdma signals
US5417500A (en) 1993-09-13 1995-05-23 Reliance Electric Industrial Company Bearing assembly utilizing improved clamping collar
ZA947317B (en) 1993-09-24 1995-05-10 Qualcomm Inc Multirate serial viterbi decoder for code division multiple access system applications
US5523903A (en) 1993-12-23 1996-06-04 International Business Machines Corporation Sector architecture for fixed block disk drive
US5550870A (en) 1994-03-02 1996-08-27 Lucent Technologies Inc. Viterbi processor
JPH07245635A (ja) 1994-03-04 1995-09-19 Sony Corp 信号点マッピング方法および信号点検出方法
EP0677967A3 (en) 1994-04-12 1997-07-23 Gold Star Co Viterbi decoder for high-definition television.
US5898710A (en) 1995-06-06 1999-04-27 Globespan Technologies, Inc. Implied interleaving, a family of systematic interleavers and deinterleavers
JPH09232973A (ja) 1996-02-28 1997-09-05 Sony Corp ビタビ復号器
US6023783A (en) 1996-05-15 2000-02-08 California Institute Of Technology Hybrid concatenated codes and iterative decoding
US5978414A (en) 1996-07-03 1999-11-02 Matsushita Electric Industrial Co., Ltd. Transmission rate judging unit
US5802118A (en) 1996-07-29 1998-09-01 Cirrus Logic, Inc. Sub-sampled discrete time read channel for computer storage systems
JP3310185B2 (ja) 1996-11-21 2002-07-29 松下電器産業株式会社 誤り訂正装置
US6377610B1 (en) 1997-04-25 2002-04-23 Deutsche Telekom Ag Decoding method and decoding device for a CDMA transmission system for demodulating a received signal available in serial code concatenation
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
US6029264A (en) 1997-04-28 2000-02-22 The Trustees Of Princeton University System and method for error correcting a received data stream in a concatenated system
KR100484127B1 (ko) 1997-08-07 2005-06-16 삼성전자주식회사 비터비디코더
US6005897A (en) 1997-12-16 1999-12-21 Mccallister; Ronald D. Data communication system and method therefor
JP3900637B2 (ja) 1997-12-19 2007-04-04 ソニー株式会社 ビタビ復号装置
US6535553B1 (en) 1998-06-19 2003-03-18 Samsung Electronics Co., Ltd. Passband equalizers with filter coefficients calculated from modulated carrier signals
US6145110A (en) 1998-06-22 2000-11-07 Ericsson Inc. Digital data decoder that derives codeword estimates from soft data
KR100277764B1 (ko) 1998-12-10 2001-01-15 윤종용 통신시스템에서직렬쇄상구조를가지는부호화및복호화장치
US6381726B1 (en) 1999-01-04 2002-04-30 Maxtor Corporation Architecture for soft decision decoding of linear block error correcting codes
US6216249B1 (en) 1999-03-03 2001-04-10 Cirrus Logic, Inc. Simplified branch metric for reducing the cost of a trellis sequence detector in a sampled amplitude read channel
US6216251B1 (en) 1999-04-30 2001-04-10 Motorola Inc On-chip error detection and correction system for an embedded non-volatile memory array and method of operation
US6266795B1 (en) 1999-05-28 2001-07-24 Lucent Technologies Inc. Turbo code termination
US6351832B1 (en) 1999-05-28 2002-02-26 Lucent Technologies Inc. Turbo code symbol interleaver
US6473878B1 (en) 1999-05-28 2002-10-29 Lucent Technologies Inc. Serial-concatenated turbo codes
US6810502B2 (en) 2000-01-28 2004-10-26 Conexant Systems, Inc. Iteractive decoder employing multiple external code error checks to lower the error floor
US7184486B1 (en) 2000-04-27 2007-02-27 Marvell International Ltd. LDPC encoder and decoder and method thereof
US6757862B1 (en) 2000-08-21 2004-06-29 Handspring, Inc. Method and apparatus for digital data error correction coding
US6970511B1 (en) 2000-08-29 2005-11-29 Lucent Technologies Inc. Interpolator, a resampler employing the interpolator and method of interpolating a signal associated therewith
JP4324316B2 (ja) 2000-10-23 2009-09-02 株式会社日立グローバルストレージテクノロジーズ 垂直磁気記録再生装置
WO2002078196A1 (en) 2001-03-22 2002-10-03 University Of Florida Method and coding means for error-correction utilizing concatenated parity and turbo codes
US7295623B2 (en) 2001-07-11 2007-11-13 Vativ Technologies, Inc. High-speed communications transceiver
US6904084B2 (en) 2001-09-05 2005-06-07 Mediatek Incorporation Read channel apparatus and method for an optical storage system
US7073118B2 (en) 2001-09-17 2006-07-04 Digeo, Inc. Apparatus and method for saturating decoder values
US6986098B2 (en) 2001-11-20 2006-01-10 Lsi Logic Corporation Method of reducing miscorrections in a post-processor using column parity checks
JP3917624B2 (ja) 2002-07-03 2007-05-23 ヒューズ・エレクトロニクス・コーポレーション 低密度パリティチェック(ldpc)デコーダにおける経路指定方法およびシステム
US6785863B2 (en) 2002-09-18 2004-08-31 Motorola, Inc. Method and apparatus for generating parity-check bits from a symbol set
US7058873B2 (en) 2002-11-07 2006-06-06 Carnegie Mellon University Encoding method using a low density parity check code with a column weight of two
US7702986B2 (en) 2002-11-18 2010-04-20 Qualcomm Incorporated Rate-compatible LDPC codes
US7047474B2 (en) 2002-12-23 2006-05-16 Do-Jun Rhee Decoding concatenated codes via parity bit recycling
US7117427B2 (en) 2003-07-09 2006-10-03 Texas Instruments Incorporated Reduced complexity decoding for trellis coded modulation
US7313750B1 (en) 2003-08-06 2007-12-25 Ralink Technology, Inc. Efficient soft decision demapper to minimize viterbi decoder complexity
US7133228B2 (en) 2003-10-10 2006-11-07 Seagate Technology Llc Using data compression to achieve lower linear bit densities on a storage medium
JP4296949B2 (ja) * 2004-02-03 2009-07-15 ソニー株式会社 復号装置及び方法、並びに情報処理装置及び方法
US7958425B2 (en) 2004-02-19 2011-06-07 Trelliware Technologies, Inc. Method and apparatus for communications using turbo like codes
US7243287B2 (en) * 2004-05-03 2007-07-10 Broadcom Corporation Decoding LDPC (Low Density Parity Check) code and graphs using multiplication (or addition in log-domain) on both sides of bipartite graph
US7415651B2 (en) 2004-06-02 2008-08-19 Seagate Technology Data communication system with multi-dimensional error-correction product codes
WO2006039801A1 (en) 2004-10-12 2006-04-20 Nortel Networks Limited System and method for low density parity check encoding of data
US7646829B2 (en) 2004-12-23 2010-01-12 Agere Systems, Inc. Composite data detector and a method for detecting data
US7779325B2 (en) 2005-01-24 2010-08-17 Agere Systems Inc. Data detection and decoding system and method
US7475103B2 (en) * 2005-03-17 2009-01-06 Qualcomm Incorporated Efficient check node message transform approximation for LDPC decoder
US7370258B2 (en) 2005-04-28 2008-05-06 Sandbridge Technologies Inc. Iterative concatenated convolutional Reed-Solomon decoding method
US7587657B2 (en) 2005-04-29 2009-09-08 Agere Systems Inc. Method and apparatus for iterative error-erasure decoding
US7802172B2 (en) 2005-06-20 2010-09-21 Stmicroelectronics, Inc. Variable-rate low-density parity check codes with constant blocklength
US7523375B2 (en) 2005-09-21 2009-04-21 Distribution Control Systems Set of irregular LDPC codes with random structure and low encoding complexity
JP2007087529A (ja) * 2005-09-22 2007-04-05 Rohm Co Ltd 信号復号装置、信号復号方法、および記憶システム
US7752523B1 (en) 2006-02-13 2010-07-06 Marvell International Ltd. Reduced-complexity decoding of parity check codes
KR100933139B1 (ko) * 2006-02-22 2009-12-21 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
JP4992900B2 (ja) 2006-08-02 2012-08-08 富士通株式会社 受信装置及びその復号方法
US8705752B2 (en) 2006-09-20 2014-04-22 Broadcom Corporation Low frequency noise reduction circuit architecture for communications applications
FR2909499B1 (fr) 2006-12-01 2009-01-16 Commissariat Energie Atomique Procede et dispositif de decodage pour codes ldpc, et appareil de communication comprenant un tel dispositif
US20080304558A1 (en) 2007-06-06 2008-12-11 Hong Kong University Of Science And Technology Hybrid time-frequency domain equalization over broadband multi-input multi-output channels
US7752531B2 (en) * 2007-09-12 2010-07-06 Seagate Technology Llc Defect sensing Viterbi based detector
US8711984B2 (en) 2008-01-22 2014-04-29 Agere Systems Llc Methods and apparatus for map detection with reduced complexity
CN101981932B (zh) * 2008-03-27 2013-03-13 汤姆森特许公司 用于对信号译码的装置和方法
US8201051B2 (en) 2008-10-15 2012-06-12 Lsi Corporation Method for detecting short burst errors in LDPC system
JP5173021B2 (ja) 2008-05-19 2013-03-27 アギア システムズ インコーポレーテッド データ検出器フィードバックループにおいて遅延を軽減するためのシステム及び方法
US7952824B2 (en) 2009-03-06 2011-05-31 Agere Systems Inc. Systems and methods for defective media region identification
JP5148586B2 (ja) * 2009-12-01 2013-02-20 株式会社東芝 復号装置および復号方法
US8578253B2 (en) 2010-01-04 2013-11-05 Lsi Corporation Systems and methods for updating detector parameters in a data processing circuit
WO2011127287A1 (en) 2010-04-08 2011-10-13 Marvell World Trade Ltd. Non-binary ldpc code decoder
CN102859885B (zh) * 2010-04-09 2015-10-07 Sk海尼克斯存储技术公司 Ldpc选择性解码调度的实现
US8443249B2 (en) 2010-04-26 2013-05-14 Lsi Corporation Systems and methods for low density parity check data encoding
US8295001B2 (en) 2010-09-21 2012-10-23 Lsi Corporation Systems and methods for low latency noise cancellation
US8237597B2 (en) 2010-09-21 2012-08-07 Lsi Corporation Systems and methods for semi-independent loop processing
US8667039B2 (en) 2010-11-17 2014-03-04 Lsi Corporation Systems and methods for variance dependent normalization for branch metric calculation
US8325433B2 (en) 2011-01-19 2012-12-04 Lsi Corporation Systems and methods for reduced format data processing
US8261171B2 (en) 2011-01-27 2012-09-04 Lsi Corporation Systems and methods for diversity combined data detection
US8699167B2 (en) 2011-02-16 2014-04-15 Lsi Corporation Systems and methods for data detection using distance based tuning
US8446683B2 (en) 2011-02-22 2013-05-21 Lsi Corporation Systems and methods for data pre-coding calibration
US8611033B2 (en) 2011-04-15 2013-12-17 Lsi Corporation Systems and methods for selective decoder input data processing
US8670955B2 (en) 2011-04-15 2014-03-11 Lsi Corporation Systems and methods for reliability assisted noise predictive filtering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1348171A (zh) * 2000-10-10 2002-05-08 骆俊光 记忆硬盘的存取方法及装置
CN1989696A (zh) * 2004-07-19 2007-06-27 德克萨斯仪器股份有限公司 对低密度奇偶校验码的分层解码方法的改进
US7730377B2 (en) * 2004-07-22 2010-06-01 Texas Instruments Incorporated Layered decoding of low density parity check (LDPC) codes
CN101073205A (zh) * 2004-12-08 2007-11-14 韩国电子通信研究院 低密度奇偶校验编码器和解码器以及低密度奇偶校验编码和解码方法
CN101305575A (zh) * 2005-11-11 2008-11-12 三星电子株式会社 无线通信系统中归一化到信道解码器的输入度量的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Hardware Implementation of GF(2m) LDPC Decoders;christian Spagnol et al.;《IEEE Transactions on Circuits and Systems I: Regular Papers》;20090306;第56卷(第12期);正文第2612页右栏第20行-第2613页第左栏最后一行,第2616页左栏第1行-第2618页左栏第5行,图5、图14-15 *

Also Published As

Publication number Publication date
TW201331750A (zh) 2013-08-01
EP2611037A1 (en) 2013-07-03
JP2013141204A (ja) 2013-07-18
EP2611037B1 (en) 2016-04-13
US20130173988A1 (en) 2013-07-04
KR20130079134A (ko) 2013-07-10
US8819515B2 (en) 2014-08-26
TWI540425B (zh) 2016-07-01
CN103187979A (zh) 2013-07-03

Similar Documents

Publication Publication Date Title
CN103187979B (zh) 基于混合域fft的非二进制ldpc解码器
US8756478B2 (en) Multi-level LDPC layer decoder
US9015550B2 (en) Low density parity check layer decoder for codes with overlapped circulants
US9459956B2 (en) Data decoder with trapping set flip bit mapper
US9015547B2 (en) Multi-level LDPC layered decoder with out-of-order processing
US9130590B2 (en) Non-binary layered low density parity check decoder
US10367526B2 (en) Irregular low density parity check processing system with non-uniform scaling
US8566666B2 (en) Min-sum based non-binary LDPC decoder
US8656249B2 (en) Multi-level LDPC layer decoder
US8930788B2 (en) LDPC decoder with fractional unsatisfied check quality metric
US9048874B2 (en) Min-sum based hybrid non-binary low density parity check decoder
US20140164866A1 (en) Low Density Parity Check Decoder With Miscorrection Handling
US9048867B2 (en) Shift register-based layered low density parity check decoder
US20130139022A1 (en) Variable Sector Size LDPC Decoder
US20140082449A1 (en) LDPC Decoder With Variable Node Hardening
US20160020783A1 (en) Low Density Parity Check Decoder With Relative Indexing
TW201417514A (zh) 具分級局部迭代之ldpc(低密度奇偶校驗)解碼器
US20160191079A1 (en) Low Dynamic Power Check Node Processor For Low Density Parity Check Decoder
US8719686B2 (en) Probability-based multi-level LDPC decoder
US20160277035A1 (en) Non-Binary Low Density Parity Check Decoder With Format Transforming Variable Node Processor

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) CORPORAT

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES CORP.

Effective date: 20150804

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150804

Address after: Singapore Singapore

Applicant after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: California, USA

Applicant before: LSI Corp.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20181019

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Singapore Singapore

Patentee before: Avago Technologies General IP (Singapore) Pte. Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201027

Address after: Singapore Singapore

Patentee after: Broadcom International Pte. Ltd.

Address before: Singapore Singapore

Patentee before: Avago Technologies General IP (Singapore) Pte. Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230417

Address after: Singapore, Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Singapore, Singapore

Patentee before: Broadcom International Pte. Ltd.

TR01 Transfer of patent right