CN101572553A - 用于基于队列的数据检测和解码的系统和方法 - Google Patents

用于基于队列的数据检测和解码的系统和方法 Download PDF

Info

Publication number
CN101572553A
CN101572553A CNA2009101370128A CN200910137012A CN101572553A CN 101572553 A CN101572553 A CN 101572553A CN A2009101370128 A CNA2009101370128 A CN A2009101370128A CN 200910137012 A CN200910137012 A CN 200910137012A CN 101572553 A CN101572553 A CN 101572553A
Authority
CN
China
Prior art keywords
output
data set
detector
decoder
data
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.)
Granted
Application number
CNA2009101370128A
Other languages
English (en)
Other versions
CN101572553B (zh
Inventor
杨少华
钟浩
谭卫军
R·劳舍梅尔
李元兴
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
Infineon Technologies North America Corp
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 Infineon Technologies North America Corp filed Critical Infineon Technologies North America Corp
Publication of CN101572553A publication Critical patent/CN101572553A/zh
Application granted granted Critical
Publication of CN101572553B publication Critical patent/CN101572553B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/07Arithmetic 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
    • H03M13/2978Particular arrangement of the component decoders
    • H03M13/2987Particular arrangement of the component decoders using more component decoders than component codes, e.g. pipelined turbo iterations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • 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/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/63Joint error correction and other techniques
    • H03M13/6337Error control coding in combination with channel estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/185Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using an low density parity check [LDPC] code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks
    • 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
    • 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
    • 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] 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/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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon 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/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/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP 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/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
    • H03M13/4138Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions
    • H03M13/4146Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions soft-output Viterbi decoding according to Battail and Hagenauer in which the soft-output is determined using path metric differences along the maximum-likelihood path, i.e. "SOVA" decoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

本发明的各种实施例提供了用于数据处理的系统和方法。例如,公开了一种可变迭代数据处理系统,该系统至少包括第一检测器、第二检测器、解码器和排队缓冲器。该第一检测器可操作以第一次对输入数据组执行数据检测。该解码器接收来自该第一检测器的输出的派生且执行解码处理。当该解码处理不收敛时,该解码器输出被传递到该第二检测器以用于第二次的后续检测和解码处理。

Description

用于基于队列的数据检测和解码的系统和方法
技术领域
本发明涉及用于检测和/或解码信息的系统和方法,且尤其涉及用于执行迭代的数据解码和/或检测的系统和方法。
背景技术
已经开发出各种数据传输系统,包括存储系统、蜂窝电话系统和无线电传输系统。在每个系统中,数据经由某些介质从发送者传输到接收者。例如,在存储系统中,数据经由存储介质从发送者(即,写功能)发送到接收者(即,读功能)。任何传输的效率都受到各种因素导致的任何数据丢失的影响。在某些情况下,编码/解码处理用于增强检测数据错误和校正这种数据错误的能力。作为示例,可以执行简单数据检测和解码,然而这种简单处理通常缺少在收敛到校正的数据流上的能力。
为了提升收敛可能性,各种现有处理使用两次或更多次检测和解码迭代。转向图1,示出了示例性现有技术的两级数据检测和解码电路100。两级数据检测和解码电路100接收应用于检测器110的数据输入105。检测器110的硬和软输出被提供到LDPC解码器115。输入105经由缓冲器130前馈到另一检测器120。检测器120使用LDPC解码器115的软输出和输入105执行附加数据检测处理。检测器120的硬和软输出被提供到执行第二解码处理且提供输出135的LDPC解码器125。在检测器110和LDPC解码器115提供的初始检测和解码不收敛时,检测器120和LDPC解码器125提供的后续检测和解码提供附加的收敛机会。然而,这种方法需要对作为输入105引入的每个输入数据组进行两次迭代。在输入能够在单次迭代中收敛时,这会浪费大量功率且引入不必要的延迟。而且,在某些情况下,两次迭代不足以导致收敛。因而,这种方法在某些情况下是浪费的且在其他情况下是不足的。
因此,至少由于上述原因,在现有技术中,对用于数据处理的高级系统和方法存在需求。
发明内容
本发明涉及用于检测和/或解码信息的系统和方法,且具体涉及用于执行迭代数据解码和/或检测的系统和方法。
本发明的某些实施例提供可变迭代数据处理系统。这种系统至少包括第一检测器、第二检测器、解码器和排队缓冲器。该第一检测器能够操作以第一次对输入数据组执行数据检测。解码器接收来自该第一检测器的输出的派生且执行解码处理。当解码处理不收敛时,解码器输出被传递到第二检测器以用于第二次的后续检测和解码处理。在某些情况下,解码器的输出包括硬输出和软输出。在这些情况下,软输出经由排队缓冲器被提供到第二检测器。在具体例子中,第二检测器的输出进一步被传递到解码器以用于另一次解码尝试。
上述实施例的各种例子包括只要解码器的输出收敛就存储硬输出的输出数据缓冲器。在这些情况下,输出数据缓冲器能够操作以重新排列无序接收的一系列解码器输出。上述实施例的某些例子包括输入数据缓冲器,其将输入数据组存储至少对应于第二次和第一次之间的差的周期。在这种情况下,输入数据组从输入数据缓冲器被提供到第二检测器。在具体例子中,输出数据缓冲器大小决定了检测器和解码器可以处理输入数据组的最大时间期。一旦输入数据组到达系统中的最大允许时间,在解码器处理完数据组之后,不管解码是否收敛,相应的输出数据都被写入到输出数据缓冲器。
在上述实施例的某些例子中,系统还包括交织器,该交织器交织来自第一检测器的输出且提供结果作为来自第一检测器的输出的派生。交织器还可以交织来自第二检测器的输出且提供结果作为来自第二检测器的输出的派生。上述系统可以结合到很多不同类型的设备中,包括但不限于存储设备或通信设备。
本发明的其他实施例提供用于处理数据输入的方法。这些方法包括提供第一检测器和第二检测器。使用第一检测器对输入数据组执行数据检测,其中产生检测的数据组。该方法还包括交织检测数据组,其中产生交织的数据组,以及解码交织的数据组,其中产生解码的数据组。判断解码数据组是否收敛。解码的数据组不收敛的,提供解码的数据组以使用第二检测器进行后续处理。在某些情况下,上述实施例受限于最大解码延迟未达到且用于保存解码的数据组的队列缓冲器未满的情形。在上述实施例的某些例子中,提供解码的数据组以使用第二检测器进行后续处理包括向排队缓冲器写入解码的数据组,且解交织解码的数据组。当排队缓冲器满时,即使先前解码不收敛,系统仍输出先前解码的数据组。在某些情况下,该先前解码的数据组通过解码器处理至少两次。在某些情况下,这可以受限于数据组在第一解码尝试后不收敛的情况。
在上述实施例的某些例子中,该方法还包括判定先前解码的数据组是否收敛。当确定先前解码的数据组收敛时,先前解码数据组被提供到输出缓冲器。在某些情况下,输出数据缓冲器能够操作以对先前解码的数据组相对于其他解码的数据组排序。在本发明的上述实施例的具体例子中,数据检测是第一数据检测且检测的数据组是第一检测的数据组。在这些例子中,该方法还包括存储输入数据组,解交织解码的数据组,其中产生解交织的数组,使得解码数据组对准于存储的输入数据组,且使用第二检测器对存储的输入数据组和解交织数据组执行第二数据检测。
该发明内容仅提供本发明的某些实施例的一般描述。本发明的很多其他目的、特征、优点和其他实施例将从下面的详细描述、所附的权利要求和附图中更充分地显现。
附图说明
通过参考说明书的剩余部分中描述的附图可以实现进一步理解本发明的各种实施例。在附图中,相同的参考标记遍及附图用于表示相似的组件。在某些例子中,由小写字母组成的子标与参考标记关联以表示多个相似组件其中之一。当参照参考标记而不存在子标时,旨在表示所有这些多个相似的组件。
图1示出了现有技术的两级数据检测和解码系统;
图2a-2b示出了根据本发明的某些实施例的使用排队检测和解码方法的数据传输系统;
图3a-3b示出了根据本发明的各个实施例的排队检测和解码电路的两种不同实施例;
图4是示出根据本发明的一个或多个实施例的排队检测和解码电路的操作的时序图;
图5是根据本发明的某些实施例的用于执行可变迭代检测和解码处理的方法的流程图。
具体实施方式
本发明涉及用于检测和/或解码信息的系统和方法,且具体涉及用于执行迭代数据解码和/或检测的系统和方法。
本发明的各种实施例提供适用于读取信道、无线传输和其他应用的迭代解码的紧凑硬件解决方案。在某些情况下,本发明的实施例提供一种算法,该算法能够使用馈入至少一个解码器的两个或更多个数据检测器实现与数据相关的多次全局迭代。在这种情况下,解码器可以是单个解码器或者两个独立的解码器,或者是以处理来自单个检测器的数据所需速度的两倍工作的单个解码器。在单个解码器系统中,解码器提供在单个码字时间内的两个正在执行的检测和解码处理之间的时间共享解码功率的能力。通过写入相应的结果到排队缓冲器且随后使用一个或多个后续全局迭代再次处理码字,这种实施例作为例外提供处理“坏”码字(即,在单次全局迭代之后不收敛的码字)的能力。当排队缓冲器变得太满而不能再次重新处理码字或者当码字收敛时,坏码字的结果被无序提供。对坏码字的全局迭代的最大次数取决于连续码字中有多少坏码字、队列存储器大小以及解码延迟的限制。因为本发明的前述实施例允许报告码字处理无序的结果,下游硬判决缓冲器可用于重新排列接收的结果为代表它们原始顺序的顺序。在其他情况下,无序结果只是被报告给接收装置,而不进行重新排序。
转向图2a,示出了根据本发明的某些实施例的包括排队检测/解码电路210的存储系统200。存储系统200包括控制器230、信道240和物理存储介质220。物理存储介质220可以是但不限于磁盘。基于此处提供的公开,本领域技术人员将意识到可以结合本发明的不同实施例使用各种物理存储介质。控制器230包括纠错编码和解码。具体而言,控制器230包括纠错编码器204。纠错编码器204可以是本领域已知的任意纠错编码器,包括但不限于Reed Solomon编码器或CRC编码器,且纠错解码器224可以是但不限于相应的Reed Solomon解码器或CRC解码器。上述编码器和解码器可以是本领域中已知的能够执行编码和解码处理的任意电路或系统。信道240包括数据编码器206和预处理电路208。在某些情况下,数据编码器206是低密度奇偶校验(LDPC)编码器。基于此处提供的公开,本领域技术人员将意识到根据本发明的不同实施例可以实施各种编码处理和相应的解码处理。预处理电路208包括本领域公知的各种预处理电路。后处理电路222包括本领域公知的各种后处理电路,该后处理电路用于从物理存储介质接收数据和准备用于数据检测和解码的接收数据。
另外,信道240包括能够取决于处理可用性和/或收敛性而执行可变次数的检测和解码迭代的排队检测和/解码电路210。这种排队检测/解码电路210允许对给定输入执行可变次数的迭代,同时最小化必须执行的迭代的次数。为执行该功能,可以无序地完成输入处理,结果在以后重新排列。
在操作中,数据输入202被接收。数据输入202可以是要存储在物理存储介质220上的任意数据组。如本领域所已知的,数据输入202使用纠错编码器204编码。纠错编码器204的输出被提供到例如可以执行数据的LDPC编码的数据编码器206。数据编码器206的输出被提供到预处理电路208,该预处理电路208可以将输出从数字输出转化为满足用于向物理存储介质220写入所需的模拟输出。
原先写入到物理存储介质220的数据可以在后来被后处理电路222取出和处理。在一种情况下,后处理电路222对从物理存储介质220取出的模拟数据信号进行放大,且将放大的模拟信号转化成输出到排队检测/解码电路210的数字信号。进而,排队检测/解码电路210执行可变次数的数据检测和数据解码处理,直到处理的输出收敛(即,其足以代表数据编码器206编码的原始数据)或者没有足够的资源剩余来执行附加处理为止。排队检测/解码电路210将其结果作为输出提供到纠错解码器224。纠错解码器224执行指定的纠错处理以判断是否还有任何错误,且如果检测出错误则试图纠正错误。一旦纠错处理完成,纠错解码器224提供数据输出226。一般而言,数据输出226对应于原始向物理存储介质220写入的数据输入202。
转向图2b,示出了根据本发明的某些实施例的包括排队检测/解码电路211的传输系统201。传输系统201包括传输控制器231、发射器241、传输信道251、接收器243和接收器控制器233。传输信道可以是但不限于RF传输信道。基于此处提供的公开,本领域技术人员将意识到可以结合本发明的不同实施例使用各种传输信道。传输控制器231包括例如可实施为Reed Solomen编码器或CRC编码器的纠错编码器。类似地,接收器控制器233包括对应于纠错编码器205的纠错解码器225。因而,纠错解码器225例如可以是CRC解码器或Reed Solomon解码器。上述编码器和解码器可以是本领域中已知的能够执行编码和解码器处理的任意电路或系统。基于此处提供的公开,本领域技术人员将意识到可以结合本发明的不同实施例使用各种纠错编码器/解码器方案。
发射器241包括数据编码器245和预处理电路247。在某些情况下,数据编码器245是LDPC编码器。基于此处提供的公开,本领域技术人员将意识到可以根据本发明的不同实施例实施各种编码处理。预处理电路247包括本领域中公知的各种预处理电路。在一种具体情况下,预处理电路247可操作以将来自数据编码器245的数字数据组转化为适于经由传输信道251传输的相应的RF信号。使用接收器243的后处理电路249接收经由传输信道251传输的数据组。后处理电路249包括本领域公知的各种后处理电路,以用于从传输信道接收数据且用于准备所接收的数据以用于数据检测和解码。
另外,接收器243包括能够取决于处理可用性和/或收敛性而执行可变次数的检测和解码迭代的排队检测/解码电路211。这种排队检测/解码电路211允许对给定输入执行可变次数的迭代,同时最小化必须执行的迭代次数。为了执行该功能,无序地完成输入处理,在以后重新排列结果。
操作中,数据输入203被接收。数据输入203可以是要经由传输信道231传输的任意数据组。如本领域中已知的,数据输入203使用纠错编码器205编码。纠错编码器205的输出被提供到例如可执行数据的LDPC编码的数据编码器245。数据编码器245的输出被提供到预处理电路247,该预处理电路247可以将输出从数字输出转化为满足用于经由传输信道251传输所需的模拟输出。
经由传输信道251发射的数据被接收器243的后处理电路249接收和处理。在一种情况下,后处理电路249对从传输信道251取出的模拟数据信号进行放大,且将放大的模拟信号转化成输出到排队检测/解码电路211的数字信号。进而,排队检测/解码电路211执行可变次数的数据检测和数据解码处理,直到处理的输出收敛(即,其足以代表数据编码器245编码的原始数据)或者没有足够的资源剩余来执行附加处理为止。排队检测/解码电路211将其结果作为输出提供到纠错解码器225。纠错解码器225执行指定的纠错处理以判断是否还有任何错误,且如果检测出错误则试图纠正错误。一旦纠错处理完成,纠错解码器225提供数据输出227。一般而言,数据输出227对应于最初原始提供以经由传输信道251传输的数据输入203。
应当注意,尽管图2a-2b示出了可以应用排队检测/解码电路和/或处理的存储系统和传输系统,根据本发明的不同实施例,存在可以应用排队检测/解码电路的各种系统。基于此处提供的公开,根据本发明的不同实施例,本领域技术人员将意识到通过使用排队检测/解码电路和/或处理而受益的各种系统。
转向图3a,示出了根据本发明的某些实施例的排队检测/解码电路300的一种实施方式。排队检测/解码电路300包括馈入信道检测器308的数据输入304。信道检测器308可以是本领域中已知的任意类型的信道检测器,包括但不限于,软输出维特比(Viterbi)算法检测器(SOVA)或最大后验概率(MAP)检测器。基于此处提供的公开,本领域技术人员应当意识到根据本发明的不同实施例可以使用各种信道检测器。另外,数据输入304被提供到输入数据缓冲器312,该输入数据缓冲器312被设计为保存从数据输入304接收的大量数据组。输入数据缓冲器312的大小可被选择以提供足够的缓冲,使得经由数据输入304输入的数据组保持可用,至少直到相同数据组的第一次迭代处理完成且处理的数据在乒乓缓冲器(ping pong buffer)348(即排队缓冲器)中可用为止,如下面进一步充分描述的。输入数据缓冲器312提供数据组到信道检测器316。类似于信道检测器308,信道检测器316可以是本领域已知的任意信道检测器,包括但不限于SOVA检测器或MAP检测器。同样,基于此处提供的公开,本领域技术人员将意识到根据本发明的不同实施例可以使用各种信道检测器。
信道检测器308和信道检测器316的输出经由复用器320提供到交织器电路328。这些输出例如可以是对数似然比值。交织器电路320交织信道检测器308的输出且分别使用两个乒乓缓冲器324、332交织信道检测器316的输出。对信道检测器308的输出的先前交织处理的结果保存在乒乓缓冲器324中的一个缓冲器,且被卸载到LDPC检测器336,同时乒乓缓冲器324的另一缓冲器保存来自信道检测器308当前被交织的数据组。类似地,对信道检测器316的输出的先前交织处理的结果保存在乒乓缓冲器332中的一个缓冲器,且被卸载到LDPC解码器336,同时乒乓缓冲器324的另一缓冲器保持来自信道检测器316的当前交织的数据组。
LDPC解码器336能够同时解码一个或多个数据组。作为示例,LDPC解码器336可以被设计成解码来自乒乓缓冲器324的交织数据组,或者来自乒乓缓冲器332的交织数据组或者同时解码来自乒乓缓冲器324和乒乓缓冲器332的交织数据组。解码的数据提供为硬判决输出340和/或提供到解交织器电路344,该解交织器电路334使用乒乓缓冲器348以解交织解码的数据且将解交织的数据作为输入提供到信道检测器316。乒乓缓冲器348中的一个缓冲器保存先前解交织处理的结果被且被卸载到信道检测器316,而乒乓缓冲器338的另一缓冲器保存当前解交织的解码数据组。硬判决输出340被提供到解交织器电路356,该解交织器电路356解交织硬判决输出340且在输出数据缓冲器360中保存解交织的结果。最后,解交织器电路356提供输出数据缓冲器360中存储的解交织数据作为输出370。
操作中,第一数据组经由数据输入304引入信道检测器308。信道检测器308执行其信道检测算法且提供硬输出和软输出到复用器320。硬和软判决数据被写入到乒乓缓冲器324的一个缓冲器。同时,检测器输出被写入到缓冲器,交织器328基于交织器算法/映射通过将连续数据写入到不连续存储器/缓冲器地址而交织数据组。一旦交织器324完成其交织处理,交织的数据被LDPC解码器336解码。当数据收敛时,LDPC解码器336将其输出作为硬判决输出340写到输出数据缓冲器360且完成对于特定数据组的处理。作为替代地,当数据不收敛时,LDPC解码器336将其输出(软和硬二者)写到乒乓缓冲器348。如下面将更加充分描述的,时序安排确保存在至少一个空缓冲器用于保存该新的数据组,且该策略保证每个数据输入被确保可能进行至少两次全局迭代(即,两次经过检测器和解码器对)。
写入到乒乓缓冲器348的数据被反馈回信道检测器316。信道检测器316从输入数据缓冲器312选择对应于乒乓缓冲器348中的输出的数据组并且通过从乒乓缓冲器348反馈回来的LDPC解码器336产生的软输出数据辅助执行后续数据检测。通过使用前面产生的保存在输入数据缓冲器312中的数据的软数据,信道检测器316一般执行具有高精确度的连续信道检测。该连续信道检测的输出经由复用器320传递给交织器328。数据被写入到乒乓缓冲器332的一个缓冲器,且交织器328交织该数据。交织的数据然后被传递到LDPC解码器336,在那里它被第二次解码。类似于第一次迭代,判断数据是否收敛或者在乒乓缓冲器348中是否存在足够的空间来处理数据。当情况确实如此时,LDPC解码器336将其输出作为硬判决输出340写入到输出数据缓冲器360且对该特定数据组的处理结束。作为替代地,当数据不收敛且在乒乓缓冲器348中存在足够的缓冲器空间来接收附加数据组时,写入其输出(软和硬二者)到乒乓缓冲器348,在那里,它被传递回信道检测器316以用于第三次经过。乒乓缓冲器348中足够的空间被定义为,在来自第二检测器和解码器的数据组被写入到乒乓缓冲器之后,至少具有预留空间用于来自第一检测器和解码器的数据组。
应当注意,作为示例,尽管在数据输入304处应用的所有的后续数据组在第一次经过时就收敛(即,单次迭代),第一数据组可能应用在数据输入304且花费多次迭代才达到收敛。在这种情况下,第一数据组可以被处理多次(即,多次迭代),该次数由输出数据缓冲器360中可用存储量限制。一旦输出数据缓冲器360满或者一旦有序输出组可用,对应于第一数据组的最新的硬判决输出被提供为硬判决输出且解交织器356对输出重新排序,安排第一输出在第一位置上。这样,输出数据缓冲器360作为输出370被清空。在本发明的某些实施例中,解交织器356不执行重新排序功能且输出数据缓冲器360大小十分有限。在这种情况下,可以预见,数据组将被处理很多次(即,非常多次迭代),所述次数仅由输出370的接收方原意等待数据多长时间来限制。作为另一示例,作为数据输入304应用的所有数据可能在其第一次经过时收敛。在这种情况下,信道检测器316、LDPC解码器336和/或解交织器344可以被设置成节电模式以节省功率。作为另一示例,存在这样的情况:即在数据输入304处应用的所有数据组未能在第一次经过(即,单次迭代)时收敛。在这种情况下,所有数据组将迭代两次。应当注意,沿着乒乓缓冲器324、332、248中附加空间可以添加一个或多个附加信道检测器,这在很多数目的紧邻数据组不收敛的情况下将有利于更多次迭代。在这种情况下,可以确保使用与检测器数目相同次数的迭代解码所有数据组。
基于此处提供的公开,应当意识到,队列检测/解码电路300允许取决于引入的数据而执行可变次数的检测和解码迭代。而且,在某些情况下,通过使用排队检测/解码电路300可以实现显著的功率节省。再者,在某些情况下,在基本上存在第一次迭代数据收敛而不需要多次迭代时,可以实施较快的LDPC解码器以允许增加吞吐量。另外,通过允许LDPC解码器336的结果被无序报告,上游处理不必等待下游处理的完成。无序结果的重新排列可以通过排队检测/解码电路300或者通过输出370的下游接收方完成。
转向图3b,示出了根据本发明的各种其他实施例的排队检测/解码电路301的另一实现。排队检测/解码电路301包括馈入到信道检测器309的数据输入305。信道检测器309可以是本领域中已知的任意类型的信道检测器,包括但不限于软输出维特比算法检测器(SOVA)或最大后验概率(MAP)检测器。基于此处提供的公开,本领域技术人员将意识到根据本发明的不同实施例可以使用的各种信道检测器。另外,数据输入305被提供到存储缓冲器313,该存储缓冲器313被设计成保存从数据输入305接收的多个数据组。存处缓冲器313的大小可以选择为提供足够的缓冲,使得经由数据输入305输入的数据组至少到相同数据组的第一次迭代处理完成且处理的数据在乒乓缓冲器349中可用为止都保持可用,如下面更全面描述的。存储器缓冲器313提供数据组到信道检测器317。类似于信道检测器309,信道检测器317可以是本领域中已知的任意类型的信道检测器,包括但不限于SOVA检测器或MAP检测器,同样,基于此处提供的公开,本领域技术人员将意识到根据本发明的不同实施例可以使用各种信道检测器。
信道检测器309的输出被提供到交织器电路392,且信道检测器317的输出被提供到另一交织器电路394。交织器电路392使用乒乓缓冲器396交织信道检测器309的输出,且交织器电路394使用乒乓缓冲器394交织信道检测器317的输出。乒乓缓冲器396的一个缓冲器保存来自信道检测器309的输出的先前交织处理的结果,且经由复用器321卸载到LDPC解码器337,同时乒乓缓冲器396的另一缓冲器保存当前交织的来自信道检测器309的数据组。类似地,乒乓缓冲器398的一个缓冲器保存来自信道检测器317的输出的先前交织处理的结果,且经由复用器321卸载到LDPC解码器337,同时乒乓缓冲器398的另一缓冲器保存当前交织的来自信道检测器317的数据组。
LDPC解码器337能够同时解码一个或多个数据组。作为示例,LDPC解码器337可以被设计成解码来自乒乓缓冲器396的交织数据组,以解码来自乒乓缓冲器398的交织数据组,或者同时解码来自乒乓缓冲器396和乒乓缓冲器398的交织数据组。解码的数据作为硬判决输出341被提供或者提供到使用乒乓缓冲器349的解交织器电路345以解交织解码的数据且提供解交织数据作为信道检测器317的输入。乒乓缓冲器349的其中一个缓冲器保存先前解交织处理的结果且卸载到信道检测器317,同时乒乓缓冲器349的另一缓冲器保存当前解交织的解码数据组。硬判决输出341被提供到解交织硬判决输出341的解交织器电路357,且保存解交织结果在多个存储缓冲器361之一中。最终,解交织器电路357提供内存器缓冲器361中存储的解交织数据作为输出371。
排队检测/解码电路301类似于排队检测/解码电路300那样工作。因而,排队检测/解码电路301允许取决于引入数据而执行可变次数的检测和解码迭代。而且,在某些情况下,通过使用排队检测/解码电路301可以实现可观的功率节省。而且,在某些情况下,在基本第一次迭代数据收敛存在而不需要多次迭代时,可以实施较快速的LDPC解码器,以允许增加吞吐量。另外,通过允许LDPC解码器337的结果被无序报告,上游处理不必等待下游处理的完成。无序结果的重新排列可以通过排队检测/解码电路301或者通过输出371的下游接收方完成。
应当注意,尽管此处公开了排队检测/解码电路的两个具体实施例,应当注意,根据本发明的不同实施例,很多其他变型例是可行的。例如,可以实施分离的解码器,每个解码器对应于相应的信道检测器。作为另一示例,乒乓缓冲器349可被设计为包括三个或更多数据组。缓冲器349中的数据组区域之一总是被保留以用于保存来自第一检测器和第一解码器的新数据组,且剩余区域用于保存具有不收敛解码的数据组。一旦缓冲器349满,在缓冲器中停留最长时间的数据组需要从解码器输出到输出缓冲器,即使它在解码之后未收敛。在某些情况下,控制器判断第一检测器可以跳过解码码字。基于此处提供的公开,本领域技术人员将意识到根据本发明的一个或者多个实施例可以实现各种其他修改例。
图3a-3b的电路提供了排队能力,允许多个码字的可变全局迭代,其中全局迭代包括连续检测和解码处理。两次全局迭代的可能性被确保,但并不被要求。在图3a-3b的电路所支持的排队系统中,输入码字可以最初使用Map4解码器和后续的LDPC解码器处理。如果码字不收敛,其软信息可以存储到LDPC软输出(即排队缓冲器)存储器中,且该排队的码字然后可以通过第二检测器和LDPC解码器在后续全局迭代中被处理,直到它收敛或者由于延迟限制或存储器缺少而必须作为输出传递为止。后续的处理继续,直到下述条件至少之一有效:LDPC解码器成功地解码码字(即,所有奇偶校验被满足);队列存储器满而早先入队的码字必须让道于新进入的码字;和/或入队的码字在系统中已超过最大延迟。如果使用硬判决缓冲器(以码字数量度量),最大延迟时间由硬判决缓冲器(即,输出缓冲器)的大小决定。当用作再排序缓冲器时,最小有意义大小是足以保存两个码字。当码字在LDPC解码收敛之前被推出到硬判定缓冲器时发生解码失败。
转向图4,示出了具体应用于硬盘驱动中的实施的根据本发明的一个或多个实施例的排队检测/解码电路301的示例性操作的时序图400。使用排队检测/解码电路300可以实现类似的示例性时序,且用于其他系统实施。在该示例性说明中,假设乒乓缓冲器349具有保存3个坏码字的空间。遵循时序图400,一系列数据位被提供到信道检测器309(由403表示)。接收的一系列数据位通过信道检测器309处理,且输出被装载到乒乓缓冲器396的一个缓冲器(由405表示)。交织器397卸载上述缓冲器到LDPC解码器337(由407表示),且LDPC解码器337提供所得的解码输出(由413表示)。同时,后续的一系列数据位被提供到信道检测器309(由409表示)且信道检测器309处理最新接收的一系列数据位到乒乓缓冲器396的另一个缓冲器(由411表示)中。在这种情况下,判断LDPC解码器337的输出未收敛,且因而LDPC解码器337的输出被写入到乒乓缓冲器349的一个缓冲器,其可作为信道检测器317的输入(由415表示)。来自乒乓缓冲器349的数据(由415表示)通过信道检测器317处理且其输出被载入乒乓缓冲器398的缓冲器(由417表示)。
同时,交织器397卸载乒乓缓冲器396到LDPC解码器337(由419表示),且LDPC解码器337提供所得到的解码输出(由421表示)。而且,后续的一系列数据位被提供到信道检测器309(由423表示)且信道检测器309处理最新接收的一系列数据位到乒乓缓冲器396的另一缓冲器中(由425表示)。同样,在这种情况下,LDPC解码器337的输出不收敛,且因而LDPC解码器337的输出被写入到乒乓缓冲器349的一个缓冲器,其可用作信道检测器317的输入(由427表示)。来自乒乓缓冲器349的数据(由427表示)通过信道检测器317处理,且其输出被装载到乒乓缓冲器398的缓冲器中(由429表示)。对应于第一数据组的数据(由403表示)然后被从乒乓缓冲器398拉出且通过LDPC解码器337被再次处理(由431、433表示)。在这种情况下,LDPC解码器337仍不收敛,且因而LDPC解码器337的输出被写入到乒乓缓冲器349的一个缓冲器,其可作为信道检测器317的输入(由435表示)。该数据然后从乒乓缓冲器349被拉出且通过信道检测器317被再次处理(由437表示)。
同时,后续的一系列数据通过信道检测器309处理且呈现给LDPC解码器337(由439、441、443、445表示)。这些后续的系列数据通过LDPC解码器337被处理,且因为结果不收敛,输出被写入到乒乓缓冲器349(由447、449、453表示)。对应于第二数据组的数据(由409表示)然后从乒乓缓冲器398中被拉出且通过LDPC解码器337被再次处理(由461、463表示)。在这种情况下,LDPC解码器337收敛且LDPC解码器337的输出作为硬判决输出写入(由465表示)。对应于第四数据组的数据(由439表示)然后从乒乓缓冲器396中被拉出且通过LDPC解码器337被处理(由467、469表示)。接下来,对应于第一数据组的数据(由405表示)从乒乓缓冲器398中被拉出且通过LDPC解码器337被再次处理(由471、473表示)。在这种情况下,LDPC解码器337再次不收敛,但是乒乓缓冲器349必须为来自乒乓存储器396的输入数据组保留一个空间(由475、477表示),且因而队列(乒乓)缓冲器349被认为已满。因此,解码的码字(由471、473表示)必须被指定为完成且报告为系统的输出。这样,对应于第一数据组的现有硬判决输出(由405表示)作为硬判决输出被写入(由485表示)。
注意,对应于第一数据组的数据(由403表示)的处理在对应于第二数据组的数据(由409表示)的处理之后完成。因为这种无序处理数据组的能力,对应于其特定需要和可用内存容量,使得每个数据组可以被多次迭代处理。这被称为排队能力且提供各种处理优点。应当注意,时序图400的时序是示例性的,且取决于呈现的特定数据组可以实现各种不同的情形。
时序图指定接收数据输入的时间期为区段时间(Ts)。而且,通过信道检测器317进行处理所需的时间被指定为Lv。码字在队列中花费的时间(例如,被填充到乒乓缓冲器349中,且等待第二检测器从处理其他排队码字中变为可用)被指定为Q,且对于特定数据输入执行的迭代次数被指定为M。基于这些变量,可以近似地推导出下面的解码延迟:
(2M+Q-(M>1?0.5:0))*Ts+Lv
在上述时序中,当将引入输入码字时,排队检测/解码电路可以不控制。解码器共享方案可以包括预算最小N1次局部迭代用于解码新接收的码字,N1是可编程值。解码时间帧对准于下一码字时间的结尾。码字时间的前半部分(N2次局部迭代)被预算以用于处理来自第二解码器的软信息(即,进行在前面处理的码字的稍后的全局迭代)。如果来自等待稍后全局迭代的乒乓缓冲器的码字在稍后全局迭代开始(即,N2次局部迭代)之前收敛,则解码器将早于预定开始的时间而立即开始解码新输入码字。这导致对于新输入码字的>N1次的局部迭代。在没有为后续(多次)全局迭代而排队的码字的极端情况下,因为解码器对处理变为可用,解码器开始处理来自新输入码字的软信息。这样,解码器不晚于保存新检测的码字的乒乓缓冲器变满时完成处理,因为检测器现在需要切换到当前乒乓存储器。
在存在多个分量编码的码字被交织以形成较大码字的情况下,对交织分量检测结果的解码逐一地完成。在这种情况下,每个解码字将设有相等的最大解码时间。如果特定的解码字早于预算解码时间收敛,节省的时间可用于解码下一解码字。以此方式,“好”码字(即在一次全局迭代之后收敛的码字)比“坏”码字(即,需要两次或更多次全局迭代的码字)消耗较少的时间来解码。一旦分配给对解码字进行解码的时间耗尽或者解码字收敛,则来自解码器的外部软信息被写入到队列存储器。该写入处理可以在后续码字的第一局部迭代期间完成。如果解码收敛,则对应于收敛码字的硬判决被写入到硬判决缓冲存储器中。作为替代地,在后解码器队列中的一个或多个码字不收敛的,码字可以保留在队列中以用于附加的全局迭代,直到超过最大解码延时为止,在最大解码延时点上,可用结果作为硬判决书输出被报告。另外,可以维护一个或多个标志以指示各个码字的收敛性,使得原先收敛的码字将不投入后续的全局迭代。在某些情况下,给定码字将总是占用队列中相同存储器单元,直到它最终被后续码字代替为止。
在后解码器队列具有全码字(full codeword)的软信息且与稍后的迭代解码器相关联的乒乓存储器在其乒乓存储器中具有开放缓冲器时,稍后的迭代检测器开始处理存储在前面队列存储器中的软信息,且还将检测器软信息写入到乒乓存储器中的开放缓冲器。当乒乓存储器满时,在解码器必须开始解码来自与第一次经过的检测器相关联的乒乓存储器的新码字之前,如果解码器具有关于排队的码字的至少某些局部迭代的空闲时间,则解码器立即开始处理乒乓存储器中的码字。如果来自稍后的迭代检测器的任意码字在后续解码处理中不收敛,则如果队列缓冲器满,或者特定码字的延迟超过了预定最大值,则硬判决被输出。作为替代地,与不收敛码字相关联的软信息返回到队列中的原始位置以等待附加的全局迭代。
转向图5,时序图500描述了用于执行可变迭代检测和解码处理的根据本发明的某些实施例的方法。遵循流程图500,数据输入被接收(方框520)。该数据输入可以是但不限于从磁性记录介质接收的一系列数据位或者从传输信道接收的一系列位。基于此处提供的公开,本领域技术人员将意识到所接收的数据输入的各种源和格式。接收数据的样本被存储在缓冲器中且被保存以用于后续处理(方框525)。对接收数据执行数据检测处理(方框555),检测的数据被交织(方框560),且交织的数据被解码(方框565)。然后判断解码处理是否收敛(方框545),且是否存在足够的缓存可用以再处理数据(方框550)。
当解码处理收敛(方框45)或可用缓存不足(方框550)时,解码的数据被解交织(方框570)且被存储在缓冲器中(方框575)。缓冲器包括无序可用的各种结果,且如此,各种结果在缓冲器中重新排序以表示相应数据输入原始接收的顺序(方框580)。然后,判断完整时间集是否在缓冲器中可用(方框585)。完整时间集包括给定时间期上对应于接收的输入的每一个结果。因而,例如,当第一结果被延时而两个后来的结果被报告时,一旦第一结果最终在缓冲器中可用,对于三个结果而言就存在完整时间集。应当注意,在本发明的某些实施例中,结果无序地报告给接收方。在这种情况下,不需要对结果进行重排序或者判断完整时间集是否可用。当完整时间集可用(方框585)或者当结果像它们被接收时一样被报告而不关心其顺序时,(多个)结果被输出到接收方(方框590)。
作为替代地,当解码处理未能收敛(方框545)且不存在足够的缓存可用(方框550)时,检测和解码的处理被重复。具体而言,解码的数据被解交织(方框505)且所得的解交织数据被存储到缓冲器(方框510)。一旦数据检测器可用,解交织的数据对准于数据输入的相应取样(方框515)。当使用相同数据输入的早先处理中发展的软输入(方框555、560、565、545、550、505、510、515)对原始存储的数据输入样本(方框525)执行后续数据检测时(方框530),解交织的数据和相应的样本数据输入被提供到数据检测器。数据检测处理的结果被交织(方框535)且交织的数据被解码(方框540)。此时,判断数据检测和解码处理是否要被重复(方框505、510、515、530、535、540)或者结果是否要被报告(方框570、575、580、585、590)。总而言之,本发明提供用于执行迭代数据解码和/或检测的新颖的系统、装置、方法和配置。尽管上面给出了本发明的一个或多个实施例的详细描述,对于本领域技术人员而言,不偏离本发明的精神的各种替代、修改和等价是显见的。例如,本发明的一个或多个实施例可应用于各种数据存储系统和数字通信系统,例如,磁带记录系统、光盘驱动器、无线系统以及数字订阅线系统。因而,上述描述不应视为限制由所附权利要求限定的本发明的范围。

Claims (20)

1.一种可变迭代数据处理系统,该系统包括:
第一检测器,其中该第一检测器能够操作以第一次对输入数据组执行数据检测;
第二检测器;
解码器,其中该解码器能够操作以接收来自该第一检测器的输出的派生和来自该第二检测器的输出的派生;
排队缓冲器,其中该排队缓冲器存储对应于该输入数据组的解码器的输出;并且
其中该第二检测器能够操作以仅当该解码器的输出不收敛时使用该解码器的输出第二次对该输入数据组执行数据检测,且其中该第二次跟随在该第一次之后。
2.根据权利要求1所述的系统,其中该解码器的输出包括硬输出和软输出,且其中该软输出经由该排队缓冲器被提供到该第二检测器。
3.根据权利要求2所述的系统,该系统还包括:
输出数据缓冲器,其中只要该解码器的输出收敛,该输出数据缓冲器就存储该硬输出。
4.根据权利要求3所述的系统,其中该输出数据组是第一输入数据组,其中该解码器输出是对应于该第一输入数据组的第一解码器输出,其中该解码器提供对应于第二输入数据组的第二解码器输出,且其中该输出数据缓冲器能够操作以相对于该第二解码器输出对该第一解码器输出进行排序。
5.根据权利要求1所述的系统,该系统还包括:
输入数据缓冲器,其中该输入数据缓冲器存储该输入数据组至少对应于该第二次和第一次之间的差的时段,且其中该输入数据组被从该输入数据缓冲器提供到该第二检测器。
6.根据权利要求1所述的系统,其中该系统还包括交织器,其中该交织器交织来自该第一检测器的输出且提供结果作为来自该第一检测器的输出的派生。
7.根据权利要求6所述的系统,其中该交织器还交织来自该第二检测器的输出且提供结果作为来自该第二检测器的输出的派生。
8.根据权利要求1所述的系统,其中该输入数据组是第一输入数据组,其中该第一检测器能够操作以第三次对第二输入数据组执行数据检测,其中,该解码器能够操作以接收对应于该第二输入数据组的来自第一检测器的输出的派生,且其中该排队缓冲器能够操作以使用对应于该第二输入数据组的解码器的输出重写对应于该第一输入数据组的解码器的输出。
9.根据权利要求8所述的系统,其中即使对应于该第一输入数据组的解码器的输出不收敛,对应于该第一输入数据组的该解码器的输出被写入到输出数据缓冲器。
10.根据权利要求8所述的系统,其中该第二检测器能够操作以仅在该解码器的输出不收敛时使用对应于第二输入数据组的解码器的输出对该第二输入数据组执行数据检测,且其中该第二次跟随在该第一次之后。
11.根据权利要求1所述的系统,其中该系统结合到一设备中,该设备选自包括存储设备和通信设备的组。
12.一种处理数据输入的方法,该方法包括:
提供第一检测器和第二检测器;
使用该第一检测器对输入数据组执行数据检测,其中产生检测的数据组;
交织该检测的数据组,其中产生交织的数据组;
解码该交织的数据组,其中产生解码的数据组;
判断该解码的数据组是否收敛;以及
至少部分地基于对收敛性的判断,提供该解码的数据组以使用该第二检测器进行后续处理。
13.根据权利要求12所述的方法,其中提供该解码的数据组以使用该第二检测器进行后续处理包括将该解码的数据组写入到排队缓冲器。
14.根据权利要求13所述的方法,其中提供该解码的数据组以使用该第二检测器进行后续处理包括解交织该解码的数据组到排队缓冲器。
15.根据权利要求13所述的方法,其中当向该排队缓冲器写入该解码的数据组时,该排队缓冲器将满,且其中,即使解码的数据组不收敛,经过第二检测器的解码的数据组也被输出到硬判决缓冲器。
16.根据权利要求15所述的方法,其中当码字不收敛时,该先前解码的数据组通过该解码器被处理至少两次。
17.根据权利要求12所述的方法,其中该方法还包括:
判断先前解码的数据组是否收敛;以及
至少部分地基于对该先前解码的数据组的所述收敛性判断,向输出缓冲器提供该先前解码的数据组。
18.根据权利要求17所述的方法,其中该输出数据缓冲器能够操作以相对于其他解码的数据组对该先前解码的数据组排序。
19.根据权利要求12所述的方法,其中该数据检测是第一数据检测,其中检测的数据组是第一检测的数据组,且其中,该方法还包括:
存储该输入数据组;
解交织该解码的数据组,其中产生解交织的数据组;
使得解码的数据组对准于存储的输入数据组;以及
使用该第二检测器对存储的输入数据组和解交织数据组执行第二数据检测,其中产生第二检测的数据组。
20.一种数据处理电路,该电路包括:
第一检测器,其中该第一检测器能够操作以第一次对第一输入数据组且第二次对第二输入数据组执行数据检测;
第二检测器;
解码器,其中该解码器能够操作以接收来自对应于该第一数据组的来自第一检测器的输出的派生、对应于该第二数据组的来自第一检测器的输出,以及来自该第二检测器的输出的派生;
其中该第二检测器能够操作以仅当该解码器的输出不收敛时使用对应于该第一输入数据组的解码器的输出第三次对该第一输入数据组执行数据检测,且其中该第三次跟随在该第一次和该第二次之后;以及
输出数据缓冲器,其中该输出数据缓冲器在接收对应于该第二输入数据组的解码器的输出之后,接收对应于该第一输入数据组的解码器的输出,且其中该输出数据缓冲器能够操作以相对于该第二解码器输出对该第一解码器输出进行排序。
CN200910137012.8A 2008-05-02 2009-04-27 用于基于队列的数据检测和解码的系统和方法 Active CN101572553B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/114,462 US8245104B2 (en) 2008-05-02 2008-05-02 Systems and methods for queue based data detection and decoding
US12/114,462 2008-05-02

Publications (2)

Publication Number Publication Date
CN101572553A true CN101572553A (zh) 2009-11-04
CN101572553B CN101572553B (zh) 2015-05-13

Family

ID=40674230

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910137012.8A Active CN101572553B (zh) 2008-05-02 2009-04-27 用于基于队列的数据检测和解码的系统和方法

Country Status (6)

Country Link
US (2) US8245104B2 (zh)
EP (1) EP2114014B1 (zh)
JP (1) JP5384187B2 (zh)
KR (1) KR101629008B1 (zh)
CN (1) CN101572553B (zh)
TW (1) TWI488445B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377007A (zh) * 2012-04-12 2013-10-30 Lsi公司 以无序方式传输的数据处理系统
CN103546238A (zh) * 2012-07-10 2014-01-29 株式会社东芝 接收机以及接收方法
CN111162794A (zh) * 2018-11-08 2020-05-15 北京忆芯科技有限公司 译码数据缓存方法和译码器
CN113239655A (zh) * 2020-05-21 2021-08-10 台湾积体电路制造股份有限公司 半导体电路的约束确定系统和方法

Families Citing this family (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359522B2 (en) 2007-05-01 2013-01-22 Texas A&M University System Low density parity check decoder for regular LDPC codes
US8707146B2 (en) * 2008-02-05 2014-04-22 Ericsson Modems Sa Method and system for stopping execution of a turbo decoder
US8245104B2 (en) 2008-05-02 2012-08-14 Lsi Corporation Systems and methods for queue based data detection and decoding
EP2181504A4 (en) 2008-08-15 2010-07-28 Lsi Corp DECODING LIST OF CODED WORDS CLOSE IN A ROM MEMORY
US8161345B2 (en) 2008-10-29 2012-04-17 Agere Systems Inc. LDPC decoders using fixed and adjustable permutators
US9356623B2 (en) 2008-11-26 2016-05-31 Avago Technologies General Ip (Singapore) Pte. Ltd. LDPC decoder variable node units having fewer adder stages
US8621312B2 (en) * 2009-01-16 2013-12-31 Intel Corporation Transceiver that serves LDPC codewords for decoding including clock cycle budgeting based on block transmission length
JP5506828B2 (ja) 2009-03-05 2014-05-28 エルエスアイ コーポレーション 繰り返し復号器のための改良ターボ等化方法
JP2010212934A (ja) * 2009-03-10 2010-09-24 Toshiba Corp 半導体装置
US8347155B2 (en) * 2009-04-17 2013-01-01 Lsi Corporation Systems and methods for predicting failure of a storage medium
WO2010123493A1 (en) 2009-04-21 2010-10-28 Agere Systems, Inc. Error-floor mitigation of codes using write verification
US8578256B2 (en) * 2009-04-22 2013-11-05 Agere Systems Llc Low-latency decoder
US8250434B2 (en) * 2009-06-18 2012-08-21 Lsi Corporation Systems and methods for codec usage control during storage pre-read
US8266505B2 (en) 2009-08-12 2012-09-11 Lsi Corporation Systems and methods for retimed virtual data processing
US8625474B2 (en) * 2009-09-09 2014-01-07 Qualcomm Incorporated System and method for the simultaneous reception of FLO and FLO-EV data
US8677209B2 (en) * 2009-11-19 2014-03-18 Lsi Corporation Subwords coding using different encoding/decoding matrices
US8359515B2 (en) * 2009-12-02 2013-01-22 Lsi Corporation Forward substitution for error-correction encoding and the like
US8743936B2 (en) 2010-01-05 2014-06-03 Lsi Corporation Systems and methods for determining noise components in a signal set
US8161351B2 (en) 2010-03-30 2012-04-17 Lsi Corporation Systems and methods for efficient data storage
US9343082B2 (en) 2010-03-30 2016-05-17 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for detecting head contact
US8418019B2 (en) 2010-04-19 2013-04-09 Lsi Corporation Systems and methods for dynamic scaling in a data decoding system
US8464142B2 (en) 2010-04-23 2013-06-11 Lsi Corporation Error-correction decoder employing extrinsic message averaging
US8443249B2 (en) 2010-04-26 2013-05-14 Lsi Corporation Systems and methods for low density parity check data encoding
US8527831B2 (en) 2010-04-26 2013-09-03 Lsi Corporation Systems and methods for low density parity check data decoding
US8381071B1 (en) 2010-05-21 2013-02-19 Lsi Corporation Systems and methods for decoder sharing between data sets
US8381074B1 (en) 2010-05-21 2013-02-19 Lsi Corporation Systems and methods for utilizing a centralized queue based data processing circuit
US8208213B2 (en) 2010-06-02 2012-06-26 Lsi Corporation Systems and methods for hybrid algorithm gain adaptation
US8499226B2 (en) 2010-06-29 2013-07-30 Lsi Corporation Multi-mode layered decoding
US8458555B2 (en) 2010-06-30 2013-06-04 Lsi Corporation Breaking trapping sets using targeted bit adjustment
US8504900B2 (en) 2010-07-02 2013-08-06 Lsi Corporation On-line discovery and filtering of trapping sets
US8621289B2 (en) 2010-07-14 2013-12-31 Lsi Corporation Local and global interleaving/de-interleaving on values in an information word
US8379498B2 (en) 2010-09-13 2013-02-19 Lsi Corporation Systems and methods for track to track phase alignment
US9219469B2 (en) 2010-09-21 2015-12-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for filter constraint estimation
US8295001B2 (en) 2010-09-21 2012-10-23 Lsi Corporation Systems and methods for low latency noise cancellation
US8661071B2 (en) 2010-10-11 2014-02-25 Lsi Corporation Systems and methods for partially conditioned noise predictive equalization
US8443250B2 (en) 2010-10-11 2013-05-14 Lsi Corporation Systems and methods for error correction using irregular low density parity check codes
US8385014B2 (en) 2010-10-11 2013-02-26 Lsi Corporation Systems and methods for identifying potential media failure
US8560930B2 (en) 2010-10-11 2013-10-15 Lsi Corporation Systems and methods for multi-level quasi-cyclic low density parity check codes
US8750447B2 (en) 2010-11-02 2014-06-10 Lsi Corporation Systems and methods for variable thresholding in a pattern detector
US8667039B2 (en) 2010-11-17 2014-03-04 Lsi Corporation Systems and methods for variance dependent normalization for branch metric calculation
US8566379B2 (en) 2010-11-17 2013-10-22 Lsi Corporation Systems and methods for self tuning target adaptation
US8810940B2 (en) 2011-02-07 2014-08-19 Lsi Corporation Systems and methods for off track error recovery
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
US8854753B2 (en) 2011-03-17 2014-10-07 Lsi Corporation Systems and methods for auto scaling in a data processing system
US8693120B2 (en) * 2011-03-17 2014-04-08 Lsi Corporation Systems and methods for sample averaging in data processing
US8670955B2 (en) 2011-04-15 2014-03-11 Lsi Corporation Systems and methods for reliability assisted noise predictive filtering
US8611033B2 (en) 2011-04-15 2013-12-17 Lsi Corporation Systems and methods for selective decoder input data processing
US8887034B2 (en) 2011-04-15 2014-11-11 Lsi Corporation Systems and methods for short media defect detection
US8566665B2 (en) 2011-06-24 2013-10-22 Lsi Corporation Systems and methods for error correction using low density parity check codes using multiple layer check equations
US8499231B2 (en) 2011-06-24 2013-07-30 Lsi Corporation Systems and methods for reduced format non-binary decoding
US8560929B2 (en) 2011-06-24 2013-10-15 Lsi Corporation Systems and methods for non-binary decoding
US8595576B2 (en) 2011-06-30 2013-11-26 Lsi Corporation Systems and methods for evaluating and debugging LDPC iterative decoders
US8819527B2 (en) 2011-07-19 2014-08-26 Lsi Corporation Systems and methods for mitigating stubborn errors in a data processing system
US8830613B2 (en) 2011-07-19 2014-09-09 Lsi Corporation Storage media inter-track interference cancellation
US8879182B2 (en) 2011-07-19 2014-11-04 Lsi Corporation Storage media inter-track interference cancellation
US8854754B2 (en) 2011-08-19 2014-10-07 Lsi Corporation Systems and methods for local iteration adjustment
US8539328B2 (en) 2011-08-19 2013-09-17 Lsi Corporation Systems and methods for noise injection driven parameter selection
US9026572B2 (en) 2011-08-29 2015-05-05 Lsi Corporation Systems and methods for anti-causal noise predictive filtering in a data channel
US8681441B2 (en) 2011-09-08 2014-03-25 Lsi Corporation Systems and methods for generating predictable degradation bias
US8661324B2 (en) 2011-09-08 2014-02-25 Lsi Corporation Systems and methods for non-binary decoding biasing control
US8767333B2 (en) 2011-09-22 2014-07-01 Lsi Corporation Systems and methods for pattern dependent target adaptation
US8850276B2 (en) 2011-09-22 2014-09-30 Lsi Corporation Systems and methods for efficient data shuffling in a data processing system
US8689062B2 (en) 2011-10-03 2014-04-01 Lsi Corporation Systems and methods for parameter selection using reliability information
US8479086B2 (en) 2011-10-03 2013-07-02 Lsi Corporation Systems and methods for efficient parameter modification
US8578241B2 (en) 2011-10-10 2013-11-05 Lsi Corporation Systems and methods for parity sharing data processing
US8862960B2 (en) 2011-10-10 2014-10-14 Lsi Corporation Systems and methods for parity shared data encoding
US8443271B1 (en) 2011-10-28 2013-05-14 Lsi Corporation Systems and methods for dual process data decoding
US8527858B2 (en) 2011-10-28 2013-09-03 Lsi Corporation Systems and methods for selective decode algorithm modification
US8683309B2 (en) 2011-10-28 2014-03-25 Lsi Corporation Systems and methods for ambiguity based decode algorithm modification
US8768990B2 (en) 2011-11-11 2014-07-01 Lsi Corporation Reconfigurable cyclic shifter arrangement
US8531320B2 (en) 2011-11-14 2013-09-10 Lsi Corporation Systems and methods for memory efficient data decoding
US8751913B2 (en) 2011-11-14 2014-06-10 Lsi Corporation Systems and methods for reduced power multi-layer data decoding
KR101968746B1 (ko) * 2011-12-30 2019-04-15 삼성전자주식회사 저장 장치로부터 데이터를 읽는 읽기 방법, 에러 정정 장치, 그리고 에러 정정 코드 디코더를 포함하는 저장 시스템
US8743500B2 (en) * 2012-06-19 2014-06-03 International Business Machines Corporation Adaptive soft-output detector for magnetic tape read channels
US8743498B2 (en) * 2012-06-19 2014-06-03 International Business Machines Corporation Adaptive soft-output detector for magnetic tape read channels
US8797670B2 (en) * 2012-06-19 2014-08-05 International Business Machines Corporation Adaptive soft-output detector for magnetic tape read channels
US8972832B2 (en) * 2012-09-04 2015-03-03 Lsi Corporation Optimized scheme and architecture of hard drive queue design
US20140082450A1 (en) * 2012-09-17 2014-03-20 Lsi Corp. Systems and Methods for Efficient Transfer in Iterative Processing
US9219504B2 (en) * 2012-10-29 2015-12-22 Avago Technologies General Ip (Singapore) Pte. Ltd. LEH memory module architecture design in the multi-level LDPC coded iterative system
RU2012146685A (ru) 2012-11-01 2014-05-10 ЭлЭсАй Корпорейшн База данных наборов-ловушек для декодера на основе разреженного контроля четности
US9298369B2 (en) * 2013-02-14 2016-03-29 Avago Technologies General Ip (Singapore) Pte. Ltd. Modify priority of dataset based on number of times the data set is processed by both a data detector circuit and a data decoder circuit
US9214959B2 (en) 2013-02-19 2015-12-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for skip layer data decoding
US9362954B1 (en) * 2013-03-15 2016-06-07 Seagate Technology Llc Digital communications channel
US9274889B2 (en) * 2013-05-29 2016-03-01 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for data processing using global iteration result reuse
US8959414B2 (en) 2013-06-13 2015-02-17 Lsi Corporation Systems and methods for hybrid layer data decoding
EP2819310A1 (en) * 2013-06-26 2014-12-31 Alcatel Lucent Iterative error decoder with cascaded decoding blocks and a feedback decoding block
US8917466B1 (en) 2013-07-17 2014-12-23 Lsi Corporation Systems and methods for governing in-flight data sets in a data processing system
US8817404B1 (en) 2013-07-18 2014-08-26 Lsi Corporation Systems and methods for data processing control
US9196299B2 (en) 2013-08-23 2015-11-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for enhanced data encoding and decoding
US8908307B1 (en) 2013-08-23 2014-12-09 Lsi Corporation Systems and methods for hard disk drive region based data encoding
US9298720B2 (en) 2013-09-17 2016-03-29 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for fragmented data recovery
US9219503B2 (en) 2013-10-16 2015-12-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for multi-algorithm concatenation encoding and decoding
US9323606B2 (en) 2013-11-21 2016-04-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for FAID follower decoding
RU2014104571A (ru) 2014-02-10 2015-08-20 ЭлЭсАй Корпорейшн Системы и способы для эффективного с точки зрения площади кодирования данных
US9384778B2 (en) 2014-03-07 2016-07-05 Avago Technologies General Ip (Singapore) Pte Ltd. Online iteration resource allocation for large sector format drive
US9378765B2 (en) 2014-04-03 2016-06-28 Seagate Technology Llc Systems and methods for differential message scaling in a decoding process
US9525514B2 (en) * 2015-01-26 2016-12-20 Mitsubishi Electric Research Laboratories, Inc. System and method for decoding block of data received over communication channel
US9785504B2 (en) * 2015-11-23 2017-10-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for overlapping parity sectors
US10075192B2 (en) * 2016-05-09 2018-09-11 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for data processing with folded parity sector

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010017904A1 (en) * 2000-02-25 2001-08-30 Markku Pukkila Adaptive method and arrangement for implementing incremental redundancy in reception
US20060140311A1 (en) * 2004-12-23 2006-06-29 Agere Systems Inc. Composite data detector and a method for detecting data
WO2008015742A1 (fr) * 2006-08-02 2008-02-07 Fujitsu Limited Appareil récepteur et son procédé de décodage

Family Cites Families (134)

* 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
CA2067669C (en) * 1991-04-30 1997-10-28 Akihisa Ushirokawa Method and apparatus of estimating data sequence transmitted 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
US5311087A (en) 1991-07-12 1994-05-10 Pioneer Electronic Corporation Noise removing circuit
US5392299A (en) * 1992-01-15 1995-02-21 E-Systems, Inc. Triple orthogonally interleaed error correction system
US5513192A (en) * 1992-08-28 1996-04-30 Sun Microsystems, Inc. Fault tolerant disk drive system with error detection and correction
EP0631277A3 (en) 1993-06-22 1995-02-22 Quantum Corp Data sector format without identity code and data control unit for disk drive.
AU665716B2 (en) * 1993-07-05 1996-01-11 Mitsubishi Denki Kabushiki Kaisha A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame
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 信号点マッピング方法および信号点検出方法
US5471500A (en) 1994-03-08 1995-11-28 At&T Ipm Corp. Soft symbol decoding
EP0677967A3 (en) * 1994-04-12 1997-07-23 Gold Star Co Viterbi decoder for high-definition television.
JP3328093B2 (ja) 1994-07-12 2002-09-24 三菱電機株式会社 エラー訂正装置
US5898710A (en) * 1995-06-06 1999-04-27 Globespan Technologies, Inc. Implied interleaving, a family of systematic interleavers and deinterleavers
US5701314A (en) * 1995-12-21 1997-12-23 Cirrus Logic, Inc. On-the-fly error correction using thermal asperity erasure pointers from a sampled amplitude read channel in a magnetic disk drive
US5666513A (en) * 1996-01-05 1997-09-09 Unisys Corporation Automatic reconfiguration of multiple-way cache system allowing uninterrupted continuing processor operation
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
SG52990A1 (en) 1996-07-09 1998-09-28 Ibm Improvements to radial self-propagation pattern generation for disk file servowriting
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
US6671404B1 (en) * 1997-02-14 2003-12-30 Hewlett-Packard Development Company, L.P. Method and apparatus for recognizing patterns
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 ソニー株式会社 ビタビ復号装置
JP2912323B1 (ja) * 1998-01-29 1999-06-28 日本放送協会 デジタルデータの受信装置
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
GB2350531B (en) * 1999-05-26 2001-07-11 3Com Corp High speed parallel bit error rate tester
US6266795B1 (en) * 1999-05-28 2001-07-24 Lucent Technologies Inc. Turbo code termination
US6473878B1 (en) * 1999-05-28 2002-10-29 Lucent Technologies Inc. Serial-concatenated turbo codes
SE516157C2 (sv) 1999-05-28 2001-11-26 Ericsson Telefon Ab L M Rättning av statiska fel i en AD-omvandlare
US6351832B1 (en) * 1999-05-28 2002-02-26 Lucent Technologies Inc. Turbo code symbol interleaver
JP3407703B2 (ja) * 1999-09-29 2003-05-19 日本電気株式会社 データ通信方法及びデータ通信システム
KR100561798B1 (ko) 1999-11-22 2006-03-21 시게이트 테크놀로지 엘엘씨 결함 임계값 검출기 및 비터비 이득을 사용하는 데이터 에러 복구 방법 및 장치
US6810502B2 (en) * 2000-01-28 2004-10-26 Conexant Systems, Inc. Iteractive decoder employing multiple external code error checks to lower the error floor
JP2001274698A (ja) * 2000-03-24 2001-10-05 Sony Corp 符号化装置、符号化方法及び符号化プログラムが記録された記録媒体、並びに、復号装置、復号方法及び復号プログラムが記録された記録媒体
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
JP4324316B2 (ja) 2000-10-23 2009-09-02 株式会社日立グローバルストレージテクノロジーズ 垂直磁気記録再生装置
US7093179B2 (en) * 2001-03-22 2006-08-15 University Of Florida Method and coding means for error-correction utilizing concatenated parity and turbo codes
US20030112896A1 (en) 2001-07-11 2003-06-19 Raghavan Sreen A. Multi-channel communications transceiver
US7295623B2 (en) 2001-07-11 2007-11-13 Vativ Technologies, Inc. High-speed communications transceiver
US7236757B2 (en) 2001-07-11 2007-06-26 Vativ Technologies, Inc. High-speed multi-channel communications transceiver with inter-channel interference filter
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
US7173783B1 (en) 2001-09-21 2007-02-06 Maxtor Corporation Media noise optimized detector for magnetic recording
US6731442B2 (en) 2001-10-02 2004-05-04 Seagate Technologies Llc Method and apparatus for detecting media defects
JP3759711B2 (ja) 2001-11-09 2006-03-29 富士通株式会社 磁気ディスクシステム
US6986098B2 (en) * 2001-11-20 2006-01-10 Lsi Logic Corporation Method of reducing miscorrections in a post-processor using column parity checks
KR100925672B1 (ko) 2001-11-21 2009-11-10 코닌클리케 필립스 일렉트로닉스 엔.브이. 데이터 전송속도에 비동기적인 샘플링속도에서 동작하는적응형 등화기
US7136244B1 (en) 2002-02-22 2006-11-14 Western Digital Technologies, Inc. Disk drive employing data averaging techniques during retry operations to facilitate data recovery
CA2456485C (en) * 2002-07-03 2011-11-15 Hughes Electronics Corporation Method and system for providing low density parity check (ldpc) encoding
JP2004080210A (ja) 2002-08-13 2004-03-11 Fujitsu Ltd デジタルフィルタ
US7113356B1 (en) 2002-09-10 2006-09-26 Marvell International Ltd. Method for checking the quality of servo gray codes
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
JP4118127B2 (ja) 2002-11-14 2008-07-16 システムエルエスアイ株式会社 データの復号方法およびそれを用いたディスク装置
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
US7505537B1 (en) 2003-03-25 2009-03-17 Marvell International Ltd. System and method for controlling gain and timing phase in a presence of a first least mean square filter using a second adaptive filter
US7117427B2 (en) 2003-07-09 2006-10-03 Texas Instruments Incorporated Reduced complexity decoding for trellis coded modulation
JP4095504B2 (ja) 2003-07-31 2008-06-04 株式会社東芝 ディスク記憶装置及びシンクマーク書込み方法
US7313750B1 (en) 2003-08-06 2007-12-25 Ralink Technology, Inc. Efficient soft decision demapper to minimize viterbi decoder complexity
KR100510549B1 (ko) 2003-09-26 2005-08-26 삼성전자주식회사 코채널 간섭을 검출하고 경감시키는 디지털 비디오 방송수신기의 채널 상태 평가 장치 및 그 방법
US7133228B2 (en) 2003-10-10 2006-11-07 Seagate Technology Llc Using data compression to achieve lower linear bit densities on a storage medium
EP1528702B1 (en) * 2003-11-03 2008-01-23 Broadcom Corporation FEC (forward error correction) decoding with dynamic parameters
US7233164B2 (en) 2003-12-17 2007-06-19 Rambus Inc. Offset cancellation in a multi-level signaling system
US7673213B2 (en) * 2004-02-19 2010-03-02 Trellisware Technologies, Inc. Method and apparatus for communications using improved turbo like codes
US7958425B2 (en) * 2004-02-19 2011-06-07 Trelliware Technologies, Inc. Method and apparatus for communications using turbo like codes
AU2005201005A1 (en) 2004-03-05 2005-09-22 General Dynamics C4 Systems, Inc A method and system for capacity analysis for on the move adhoc wireless packet-switched networks
US7415651B2 (en) * 2004-06-02 2008-08-19 Seagate Technology Data communication system with multi-dimensional error-correction product codes
US7346832B2 (en) * 2004-07-21 2008-03-18 Qualcomm Incorporated LDPC encoding methods and apparatus
KR101208546B1 (ko) 2004-08-09 2012-12-05 엘지전자 주식회사 저밀도 패리티 체크 행렬을 이용한 부호화 및 복호화 방법
US7996746B2 (en) 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
US20060123285A1 (en) 2004-11-16 2006-06-08 De Araujo Daniel F Dynamic threshold scaling in a communication system
US7779325B2 (en) * 2005-01-24 2010-08-17 Agere Systems Inc. Data detection and decoding system and method
US7213767B2 (en) 2005-02-23 2007-05-08 Sdgi Holding, Inc. Sleeve-type RFID tag
US7730384B2 (en) * 2005-02-28 2010-06-01 Agere Systems Inc. Method and apparatus for evaluating performance of a read channel
US7889823B2 (en) 2005-03-03 2011-02-15 Seagate Technology Llc Timing recovery in a parallel channel communication system
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
KR100629509B1 (ko) 2005-05-16 2006-09-28 삼성전자주식회사 광디스크에서 독출된 신호의 신호대 잡음비 측정 장치 및그 방법
US7502982B2 (en) 2005-05-18 2009-03-10 Seagate Technology Llc Iterative detector with ECC in channel domain
JP2006352218A (ja) * 2005-06-13 2006-12-28 Nagaoka Univ Of Technology ターボ等化システム及び受信機
US7802172B2 (en) * 2005-06-20 2010-09-21 Stmicroelectronics, Inc. Variable-rate low-density parity check codes with constant blocklength
US20070047635A1 (en) * 2005-08-24 2007-03-01 Stojanovic Vladimir M Signaling system with data correlation detection
US7394608B2 (en) 2005-08-26 2008-07-01 International Business Machines Corporation Read channel apparatus for asynchronous sampling and synchronous equalization
US7861131B1 (en) * 2005-09-01 2010-12-28 Marvell International Ltd. Tensor product codes containing an iterative code
JP4356670B2 (ja) 2005-09-12 2009-11-04 ソニー株式会社 雑音低減装置及び雑音低減方法並びに雑音低減プログラムとその電子機器用収音装置
US7523375B2 (en) 2005-09-21 2009-04-21 Distribution Control Systems Set of irregular LDPC codes with random structure and low encoding complexity
US7590927B1 (en) 2005-11-14 2009-09-15 Link —A—Media Devices Corporation Soft output viterbi detector with error event output
US7929597B2 (en) 2005-11-15 2011-04-19 Qualcomm Incorporated Equalizer for a receiver in a wireless communication system
US7712008B2 (en) 2006-01-26 2010-05-04 Agere Systems Inc. Systems and methods for error reduction associated with information transfer
JP2007214783A (ja) * 2006-02-08 2007-08-23 Kddi Corp 送信装置、受信装置及び伝送方法
US7752523B1 (en) 2006-02-13 2010-07-06 Marvell International Ltd. Reduced-complexity decoding of parity check codes
US7808956B2 (en) 2006-03-31 2010-10-05 Motorola, Inc. Dynamic, adaptive power control for a half-duplex wireless communication system
US7802163B2 (en) 2006-07-31 2010-09-21 Agere Systems Inc. Systems and methods for code based error reduction
US7801200B2 (en) 2006-07-31 2010-09-21 Agere Systems Inc. Systems and methods for code dependency reduction
US7738201B2 (en) 2006-08-18 2010-06-15 Seagate Technology Llc Read error recovery using soft information
US20080049825A1 (en) * 2006-08-25 2008-02-28 Broadcom Corporation Equalizer with reorder
US8705752B2 (en) 2006-09-20 2014-04-22 Broadcom Corporation Low frequency noise reduction circuit architecture for communications applications
US7702989B2 (en) 2006-09-27 2010-04-20 Agere Systems Inc. Systems and methods for generating erasure flags
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
US7971125B2 (en) * 2007-01-08 2011-06-28 Agere Systems Inc. Systems and methods for prioritizing error correction data
US8359522B2 (en) 2007-05-01 2013-01-22 Texas A&M University System Low density parity check decoder for regular LDPC codes
KR20100061409A (ko) 2007-09-28 2010-06-07 에이저 시스템즈 인크 복잡성이 감소된 데이터 프로세싱을 위한 시스템들 및 방법들
CN101647203B (zh) 2007-10-01 2014-07-09 艾格瑞系统有限公司 介质缺陷检测系统及方法
US8711984B2 (en) 2008-01-22 2014-04-29 Agere Systems Llc Methods and apparatus for map detection with reduced complexity
US8161348B2 (en) 2008-02-05 2012-04-17 Agere Systems Inc. Systems and methods for low cost LDPC decoding
US8161357B2 (en) 2008-03-17 2012-04-17 Agere Systems Inc. Systems and methods for using intrinsic data for regenerating data from a defective medium
US8095855B2 (en) 2008-03-17 2012-01-10 Agere Systems Inc. Systems and methods for regenerating data from a defective medium
US7872978B1 (en) 2008-04-18 2011-01-18 Link—A—Media Devices Corporation Obtaining parameters for minimizing an error event probability
US8599973B2 (en) 2008-04-30 2013-12-03 HGST Netherlands B.V. Detection of synchronization mark from output of matched filter upstream of Viterbi detector
US8245104B2 (en) 2008-05-02 2012-08-14 Lsi Corporation Systems and methods for queue based data detection and decoding
US8176399B2 (en) * 2008-05-02 2012-05-08 Lsi Corporation Using short burst error detector in a queue-based system
CN101743690B (zh) 2008-05-19 2014-05-28 艾格瑞系统有限公司 用于缩减数据检测器反馈回路中等待时间的系统和方法
EP2181504A4 (en) 2008-08-15 2010-07-28 Lsi Corp DECODING LIST OF CODED WORDS CLOSE IN A ROM MEMORY
US8660220B2 (en) 2008-09-05 2014-02-25 Lsi Corporation Reduced frequency data processing using a matched filter set front end
US8245120B2 (en) * 2008-09-17 2012-08-14 Lsi Corporation Power reduced queue based data detection and decoding systems and methods for using such
US20110080211A1 (en) 2008-11-20 2011-04-07 Shaohua Yang Systems and Methods for Noise Reduced Data Detection
US8443267B2 (en) * 2009-04-28 2013-05-14 Lsi Corporation Systems and methods for hard decision assisted decoding
US8250434B2 (en) * 2009-06-18 2012-08-21 Lsi Corporation Systems and methods for codec usage control during storage pre-read
US8683306B2 (en) 2010-01-04 2014-03-25 Lsi Corporation Systems and methods for data detection including dynamic scaling

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010017904A1 (en) * 2000-02-25 2001-08-30 Markku Pukkila Adaptive method and arrangement for implementing incremental redundancy in reception
US20060140311A1 (en) * 2004-12-23 2006-06-29 Agere Systems Inc. Composite data detector and a method for detecting data
WO2008015742A1 (fr) * 2006-08-02 2008-02-07 Fujitsu Limited Appareil récepteur et son procédé de décodage

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377007A (zh) * 2012-04-12 2013-10-30 Lsi公司 以无序方式传输的数据处理系统
CN103546238A (zh) * 2012-07-10 2014-01-29 株式会社东芝 接收机以及接收方法
CN111162794A (zh) * 2018-11-08 2020-05-15 北京忆芯科技有限公司 译码数据缓存方法和译码器
CN111162794B (zh) * 2018-11-08 2023-10-20 北京忆芯科技有限公司 译码数据缓存方法和译码器
CN113239655A (zh) * 2020-05-21 2021-08-10 台湾积体电路制造股份有限公司 半导体电路的约束确定系统和方法
CN113239655B (zh) * 2020-05-21 2024-06-28 台湾积体电路制造股份有限公司 半导体电路的约束确定系统和方法

Also Published As

Publication number Publication date
US8468418B2 (en) 2013-06-18
US8245104B2 (en) 2012-08-14
KR101629008B1 (ko) 2016-06-09
EP2114014A2 (en) 2009-11-04
TW201004155A (en) 2010-01-16
EP2114014B1 (en) 2014-06-18
JP5384187B2 (ja) 2014-01-08
EP2114014A3 (en) 2011-12-14
KR20090115677A (ko) 2009-11-05
US20090273492A1 (en) 2009-11-05
US20120284585A1 (en) 2012-11-08
CN101572553B (zh) 2015-05-13
JP2009273123A (ja) 2009-11-19
TWI488445B (zh) 2015-06-11

Similar Documents

Publication Publication Date Title
CN101572553B (zh) 用于基于队列的数据检测和解码的系统和方法
US8245120B2 (en) Power reduced queue based data detection and decoding systems and methods for using such
CN102223203B (zh) 用于数据解码系统中的动态定标的系统和方法
US8688873B2 (en) Systems and methods for monitoring out of order data decoding
US8578253B2 (en) Systems and methods for updating detector parameters in a data processing circuit
US8443267B2 (en) Systems and methods for hard decision assisted decoding
TWI495272B (zh) 於讀取資料處理系統中作動態縮放的系統與方法
US20120119928A1 (en) Systems and methods for performing efficient decoding using a hybrid decoder
US8527831B2 (en) Systems and methods for low density parity check data decoding
WO2016099646A1 (en) Gldpc soft decoding with hard decision inputs
US8854754B2 (en) Systems and methods for local iteration adjustment
US8595576B2 (en) Systems and methods for evaluating and debugging LDPC iterative decoders
CN103368687A (zh) 用于 turbo 解码器的存储结构
US8312343B2 (en) Systems and methods for re-using decoding parity in a detector circuit
US8402348B1 (en) Systems and methods for variable data processing using a central queue
US8381074B1 (en) Systems and methods for utilizing a centralized queue based data processing circuit
US9219504B2 (en) LEH memory module architecture design in the multi-level LDPC coded iterative system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
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: 20150819

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

Effective date of registration: 20150819

Address after: Singapore Singapore

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

Address before: California, USA

Patentee before: LSI Corp.

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: 20201028

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: 20230323

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