CN100479333C - 通过被恢复符号的钝化作用对链式反应代码解码的装置和方法 - Google Patents

通过被恢复符号的钝化作用对链式反应代码解码的装置和方法 Download PDF

Info

Publication number
CN100479333C
CN100479333C CNB038137968A CN03813796A CN100479333C CN 100479333 C CN100479333 C CN 100479333C CN B038137968 A CNB038137968 A CN B038137968A CN 03813796 A CN03813796 A CN 03813796A CN 100479333 C CN100479333 C CN 100479333C
Authority
CN
China
Prior art keywords
symbol
degree
output symbol
incoming
output
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.)
Expired - Lifetime
Application number
CNB038137968A
Other languages
English (en)
Other versions
CN1679243A (zh
Inventor
M·A·肖克罗拉西
S·拉森
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.)
Qualcomm Inc
Original Assignee
Digital Fountain Inc
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 Digital Fountain Inc filed Critical Digital Fountain Inc
Publication of CN1679243A publication Critical patent/CN1679243A/zh
Application granted granted Critical
Publication of CN100479333C publication Critical patent/CN100479333C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] 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/1191Codes on graphs other than 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/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
    • 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/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes

Abstract

一种用于处理链式反应代码的方法包括:首先选择与程度二或更高程度的输出符号(即本身与两个或更多的输入符号关联的输出符号)相关联的源符号;例如,通过解答线性方程系统,来恢复这个符号的值;随后,去活动这个所选择的源符号,以尝试产生程度一的输出符号。在识别程度一的输出符号之前,并且/或者无论何时该解码过程无法定位程度一的输出符号,可以接连地重复该钝化过程。

Description

通过被恢复符号的钝化作用对链式反应代码解码的装置和方法
对相关申请的交叉参考
本申请声明了2002年6月11日提交的、标题为《通过钝化作用而对链式反应代码的解码》的第60/388,129号美国临时申请的优点,该美国临时申请的内容被包括于此,用作各种目的的整体参考。
技术领域
本发明涉及用于为数据解码的系统和方法,更具体地说,涉及用于对信息附加代码和多阶段信息附加代码(在这里,被共同称作“链式反应代码”)进行解码的系统和方法。
背景技术
以前在该受让人的专利(例如,标题为《用于通信系统的信息附加代码生成程序和解码器》(在下文中,被称作“Luby I”)的第6,307,487号美国专利、以及标题为《用于通信系统的多阶段代码生成程序和解码器》(在下文中,被称作“Raptor”)的第10/032,156号美国专利申请)中,已描述链式反应代码。如其中所述,链式反应解码是允许从给定尺寸的被接收数据集中重构数据的一种独特形式的转送纠错,而不考虑所接收的这些特殊的数据包。如Luby I或Raptor中所述,与经由基于数据的传送带或确认的协议而加以传送的传统FEC代码相比,使用链式反应代码的通信系统能够更有效率地传达信息。
图1展示了使用链式反应代码来为数据编码的示范过程,其中,从几个输入符号中生成输出符号170。这些输入符号被表示为110(a)-110(f)。如Raptor中所述,在一些实施例中,该编码过程的第一个步骤是静态编码。这个步骤可以产生被表示为120(a)-120(f)和160(a)-160(c)的源符号。在一些实施例中,静态编码可能是系统化的,以便源符号120(a)-120(f)的值等于110(a)-110(f)的值。在一些实施例中,可能没有静态编码,在此情况下,这些输入符号与这些源符号相符。
一旦已创建这些源符号,就从这些源符号中生成这些输出符号。在下文中,如果使用输入符号的值来获得输出符号的值,则该输出符号和该输入符号被描述为“相关联”。定义这个联系的数学运算可能是任何特定的运算,并且,在一个实施例中,该输出符号的值是这些源符号中的一些源符号的值的XOR。关于每个输出符号,密钥生成器140产生密钥,从中,该输出符号的加权可从加权表格150中加以确定。一旦确定加权W,就选择W随机或伪随机源符号,并且,该输出符号的值被计算为这些源符号的各个值的XOR。例如,在图1中,输出符号170的加权等于3,它的值被确定为源符号120(a)、120(d)和160(b)的XOR。对应地,输出符号170与源符号120(a)、120(d)和160(b)相关联。在下文中,术语“程度”用作“加权”的同义词。
图2A展示了在链式反应代码的解码过程中所使用的解码图表。该解码图表包括两个符号集——源符号220(a)-(i)和输出符号230(a)-(1)。如上所述,如果源符号和输出符号“相关联”,则该输出符号与该源符号连接。
图2B展示了一种解码矩阵,该解码矩阵对应于可用于该解码过程中的、图2A的该解码图表。解码矩阵200具有和输出符号那样多的行,具有和源符号那样多的列,并且被填充有项目“0”和“1”。如果第j个源符号与第k个输出符号关联,则在该解码矩阵的位置(k,j)处输入“1”。
在典型的链式反应解码过程中,通过识别与单一源符号关联的输出符号O1,来开始解码。术语“程度一的输出符号”指的是只与一个源符号关联的该前述输出符号。同样,与两个源符号关联的输出符号将被称作“‘程度二’的输出符号”。源符号以类似的方式被提及对应于每个源符号与之关联的输出符号的数量。
一旦识别程度一的输出符号O1,就恢复O1的那个关联的源符号,并从该解码图表中除去它。通过识别另一个程度一的输出符号O2,该过程继续进行。例如,在图2中所描绘的情况中,O1可以是被表示为230(a)的输出符号。一旦从该“解码图表”中除去其关联的源符号220(b),就有三个程度一的输出符号——即230(c)、230(d)和230(k)。
该过程继续进行,直到恢复所有这些源符号为止,或者直到没有程度一的输出符号为止。例如,在图2的情况中,选择以下序列的输出符号,以恢复这些对应的源符号:
  输出符号   被恢复的源符号
  230(a)   220(b)
  230(c)   220(e)
  230(h)   220(h)
  230(d)   220(i)
  230(i)   220(d)
  230(b)   220(a)
  230(j)   220(f)
  230(g)   220(g)
  230(e)   220(c)
在此情况中,解码获得成功。
当没有发现程度一的输出符号时,上述链式反应解码过程会遇到困难。在一些实例中,该解码过程可能会过早地停止,并且,该解码器可能会标记错误。作为选择,如果可能的话,该解码器可能会使用其他更精细的算法(比如高斯消去法)来完成解码。但是,尤其当不再发现程度一的输出符号时,如果未恢复的输入符号的数量很大,则高斯消去法的运行时间对于需要快速解码的应用而言可能会惊人的多。这将会产生其计算的额外开销实质上大于链式反应解码器的解码算法,所以在某些应用中可能是不合需要的。
由于这个原因,通常用这样一种方法来设计链式反应编码系统,以保证该解码器不会过早地停止。这个要求可能对该链式反应代码的设计提出严格的条件,可能更甚于使用更加复杂的解码器。例如,它可能会迫使输出符号的平均程度更高,从而可能会导致该编码器和该解码器的性能降低。一般而言,这个解码程序迫使用这种方法来设计该加权表格,以保证上述解码算法的成功达到很高的概率,因此也许会对可能的加权表格的这个集合提出限制。
所以,需要一种新的解码算法,该解码算法提供与该链式反应解码器相类似的计算优点,并且,即使在该解码的某个阶段没有发现程度一的输出符号,它也能够继续解码。
发明内容
根据本发明的一个方面,提供一种用于解码器中链式反应代码解码的方法,所述解码器从通信信道接收输出符号并被配置为对所接收输出符号的输入符号序列解码,其中所述输入符号代表以编码形式在通信信道上传送的源数据,所述方法包括:
存储多个已经在通信信道上传送的已接收输出符号,每个已接收输出符号具有程度一或更高的程度,其中输出符号的程度代表与该输出符号相关联的输入符号的数目,而该输出符号是这样的,与该输出符号相关联的输入符号中的一个未知输入符号能够从该输出符号的值和与该输出符号相关联的数个其他输入符号的值被恢复,其他相关输入符号的个数比该输出符号的程度小一;
存储至少一些并且大于二的输入符号的状态,其中输入符号的状态是至少具有一个活动值或一个非活动值的值;
在链式反应过程中处理输出符号,其中输入符号是从程度一的输出符号恢复的,而与已恢复输入符号相关联的程度大于一的输出符号具有其相应减小的程度,由此产生能够被用于恢复输入符号的程度一的附加输出符号;
确定链式反应过程是否因缺少程度一的输出符号而停止恢复输入符号;
当解码器在所述确定步骤中确定没有程度一的输出符号保留作输入符号恢复时,将至少一个输入符号的状态从活动值调整为非活动值,由此使相关输出符号的减小的输出符号程度与去活动的输入符号相关联;
利用具有已关联、减小的程度一的输出符号在链式反应过程继续输出符号的处理;以及
从相关联的输出符号恢复去活动的输入符号。
根据本发明的另一方面,提供一种用于解码器中链式反应代码解码的方法,所述解码器从通信信道接收多级输出符号并被配置为对所接收多级输出符号的输入符号序列解码,其中所述输入符号代表以编码形式在通信信道上传送的源数据,而所述多级输出符号各包括一个输出符号或包括一个校验符号,所述方法包括:
存储多个已经在通信信道上传送的已接收多级输出符号,每个已接收多级输出符号具有程度一或更高的程度,其中多级输出符号的程度代表与该多级输出符号相关联的输入符号的数目,而该多级输出符号是这样的,与该多级输出符号相关联的输入符号中的一个未知输入符号能够从该多级输出符号的值和与该多级输出符号相关联的数个其他输入符号的值被恢复,其他相关输入符号的个数比该多级输出符号的程度小一;
存储至少一些并且大于二的输入符号的状态,其中输入符号的状态是至少具有一个活动值或一个非活动值的值;
在链式反应过程中处理多级输出符号,其中输入符号是从程度一的多级输出符号恢复的,而与已恢复输入符号相关联的程度大于一的多级输出符号具有其相应减小的程度,由此产生能够被用于恢复输入符号的程度一的附加多级输出符号;
确定链式反应过程是否因缺少程度一的多级输出符号而停止恢复输入符号;
当解码器在所述确定步骤中确定没有程度一的多级输出符号保留作输入符号恢复时,将至少一个输入符号的状态从活动值调整为非活动值,由此使相关的多级输出符号的减小的多级输出符号程度与去活动的输入符号相关联;
利用具有已关联、减小的程度一的多级输出符号,在链式反应过程重复多级输出符号的处理;以及
从已关联的多级输出符号恢复去活动的输入符号。
根据本发明的另一方面,提供一种从通信信道接收输出符号并被配置为对所接收输出符号的源符号序列解码的系统,其中所述源符号代表以编码形式在通信信道上传送的源数据,所述系统包括:
用于存储多个已经在通信信道上传送的已接收输出符号的装置,每个已接收输出符号具有程度一或更高的程度,其中输出符号的程度代表与该输出符号相关联的源符号的数目,而该输出符号是这样的,与该输出符号相关联的源符号中的一个未知源符号能够从该输出符号的值和与该输出符号相关联的数个其他源符号的值被恢复,其他源符号的个数比该输出符号的程度小一;
用于存储至少一些并且大于二的源符号的状态的装置,其中源符号的状态是至少具有一个活动值或一个非活动值的值;
用于在链式反应过程中处理输出符号的装置,其中源符号是从程度一的输出符号恢复的,而与已恢复源符号相关联的程度大于一的输出符号具有其相应减小的程度,由此产生能够被用于恢复源符号的程度一的附加输出符号;
用于确定链式反应过程是否因缺少程度一的输出符号而停止恢复源符号的装置;
当解码器在所述确定步骤中确定没有程度一的输出符号保留作源符号恢复时,用于将至少一个源符号的状态从活动值调整为非活动值,由此使相关输出符号的减小的输出符号程度与去活动的源符号相关联的装置;
利用具有已关联、减小的程度一的输出符号在链式反应过程继续输出符号的处理的装置;以及
从相关联的输出符号恢复去活动的源符号的装置。
根据本发明的另一方面,提供一种被配置为利用与输入符号相关联的接收输出符号对输入符号解码的解码器,所述解码器包括一处理器,当利用所述输出符号执行对所述输入符号解码的指令代码时,所述处理器进行以下操作,所述操作包括:
确定对输入符号解码所需的一组输出符号的接收开销数目,其中接收开销数目大于预定的解码处理失败阈值;
对于包含大于预定的接收开销数目的数个输出符号的一组输出符号,将这组输出符号分为一组程度一的输出符号和一组程度二或程度更高的输出符号;
处理这组程度一的输出符号,以恢复相关联的输入符号直到没有保留的程度一的输出符号为止;
对至少一个活动输入符号去活动,由此将至少一个程度二的输出符号变换为程度一的输出符号;以及
恢复与已变换的具有程度一的输出符号相关联的输入符号。
本发明提供了用于为链式反应代码解码的系统和过程,即使在该代码中没有发现程度一的输出符号,也是如此。通过选择与程度二或更高的输出符号(即本身与两个或更多的输入符号关联的输出符号)相关联的源符号,可在一个实施例中实现这一点。然后,去活动与程度二或更高的该输出符号相关联的源符号,以尝试产生程度一的输出符号。在识别程度一的输出符号之前,并且/或者无论何时该解码过程无法定位程度一的输出符号,可以接连地重复该钝化过程。这里呈现这些过程和系统的各种实施例。
附图说明
图1展示了使用链式反应代码来为数据编码的示范过程。
图2A展示了用于对链式反应编码的输出符号进行解码的示范过程。
图2B展示了与图2A中的该解码图表相对应的解码矩阵。
图3展示了根据本发明的一个实施例的、被用来为链式反应代码解码的这些过程的纵览。
图4A展示了图3所示的该启动过程的第一个实施例。
图4B展示了图3所示的启动过程310的第二个实施例。
图5展示了图3所示的该源符号选择与去活动过程的第一个实施例。
图6展示了图3所示的该源符号恢复过程的一个实施例。
图7A展示了图3所示的该源符号选择过程的第二个实施例。
图7B展示了根据本发明的一个实施例的、关于程度2链式结构的解码图表。
图8A展示了根据本发明的修改过的解码矩阵。
图8B展示了根据本发明的一个实施例的、将高斯消去法应用于该解码矩阵的过程。
图9A和9B展示了根据本发明的一个实施例的、使用解码图表和矩阵的钝化解码的例子。
图10A展示了根据本发明的一个实施例的、可用于为多阶段链式反应代码解码的过程中的修改过的解码图表。
图10B展示了与修改过的解码图表10A相对应的修改过的解码矩阵。
图11A展示了根据本发明的示范计算机系统,该示范计算机系统可用于执行与所描述的这些方法的过程相对应的指令代码。
图11B展示了根据本发明的、该示范计算机系统的简化系统框图,该示范计算机系统被用来执行与所描述的这些方法相对应的指令代码。
图12A-12B表现了一些标绘图,这些标绘图描述关于输入符号数量N的各个值的该钝化解码器的几千个计算机模拟。
为清楚和方便起见,在较前面的附图中被加以识别的特点和部件在随后的附图中保留其参考数字。
具体实施方式
以下术语贯穿该申请而加以运用,并意在具有该指示的含义:
术语“活动”指的是源符号的可能的状态。源符号的活动状态不是永久的,并且,如这些术语的以下定义,源符号的活动状态可能会变成“不活动”状态、“可恢复状态”或“被恢复”状态。
术语“去活动”或“不活动”指的是源符号的另一种状态。被去活动的源符号的状态不一定是永久的,并且,在本发明之下的过程中,可能使不活动的源符号再活化。
术语“可恢复”指的是源符号的另一种状态,它指出:如果恢复一些其他的源符号的值,则可以恢复该源符号的值。在本发明的特殊实施例中,通过一个或多个源符号的钝化作用,源符号可能会变成“可恢复的”。
术语“被恢复的源符号”指的是其值已被确定的源符号。源符号的那个值要么可以直接加以确定(例如,从单独与之关联的输出符号的值中加以确定),要么可以间接加以确定(例如,从去活动的源符号的值中加以确定)。
图3展示了根据本发明的一个实施例的、被用来为链式反应代码解码的这些过程的纵览。示范解码例行程序300中所包括的这些过程包括启动过程310、源符号选择与去活动过程320、以及源符号值恢复过程330。
图4A展示了图3所展示的启动过程310的第一个实施例。最初,在311处,确定是否存在任何程度一的输出符号。如果存在,则在312处恢复与那个输出符号关联的该源符号。然后,该过程返回到311,在那里,随后确定是否有任何其他的程度一的输出符号保留在该代码中。如果在311处没有保留程度一的输出符号,则该过程进行到以下进一步加以描述的源符号选择与去活动过程320。
图4B展示了图3所展示的启动过程310的第二个实施例。在这个实施例中,在315处识别程度一的输出符号。随后,在316处,恢复与这个被识别的输出符号关联的该源符号。接下来,在317处,确定是否保留任何其他的程度一的输出符号。如果是,则该过程返回到316,在那里,恢复该关联的源符号。如果不是,该过程进行到以下所描述的该源符号选择与去活动过程。
在本发明的一个实施例中,在320中所提及的去活动和可恢复的源符号的恢复之前,暂时发生310中所描述的源符号的恢复。但是,本发明并不局限于此,并且,实质上在发生310中所识别的这些源符号的恢复的同时,可能会在本发明的选择性实施例中的过程330中发生这些去活动和可恢复的源符号的恢复。
图5展示了图3所展示的源符号选择与去活动过程320的第一个实施例。最初,在321处,选择与程度二或更高的输出符号(即与两个或更多的源符号关联的输出符号)相关联的活动源符号。以下更详细地描述从许多类似的源符号之中选择特殊的源符号的方式。接下来,在322处,去活动所选择的那个特殊的源符号。随后,在323处,确定是否存在用于解码的任何程度一的输出符号。在一些实施例中,前述去活动作用将产生一个或多个程度一的输出符号。在其他实施例中,前述去活动作用将不会产生程度一的输出符号。在以后的情况中,如下所述,该过程重复321-323的过程。
如果322的去活动过程导致一个或多个程度一的输出符号的产生,则该过程在324处继续进行,在那里,与程度一的输出符号关联的该源符号被宣布为“可恢复”。然后,该过程返回到323,在那里,确定是否保留任何额外的程度一的输出符号。重复323和324的过程,直到前述去活动过程所产生的所有程度一的输出符号都被宣布为“可恢复”。
如果322处的那个所选择的源符号的去活动没有产生程度一的输出符号,或者,一旦与程度一的输出符号关联的所有这些源符号在324处都被宣布为“可恢复”,该过程就从323继续进行到325,在那里,确定是否保留与程度二或更高的输出符号关联的任何源符号。如果是,则该过程返回到321,在那里,选择、去活动与程度二或更高的输出符号关联的另一个活动源符号,并检验程度一的输出符号存在与否。例如,可能会发生这些过程的一次或多次迭代,在那里,与程度二或更高的输出符号关联的第一个源符号的去活动作用不会产生程度一的输出符号,但保留与程度二(或更高)的输出符号关联的额外的源符号。在此情况下,与程度二(或更高)的输出符号关联的另一个源符号的随后的去活动作用可能会产生一个或多个程度一的输出符号。该过程重复进行,直到所有源符号都已被恢复(经由启动过程310)、去活动(经由322)、或被宣布为“可恢复”(经由325),那时,该过程进行到源符号值恢复过程330。
图6展示了图3所展示的源符号恢复过程330的一个实施例。最初,在332处,恢复在322中去活动的一个或多个源符号的值。在特殊实施例中,例如,其中,高斯消去法被用于该解码过程中,去活动的源符号的所有值在这个过程中得到恢复。随后,在334处,使用这些去活动的源符号的这些被恢复的值,来确定在过程325中被宣布为“可恢复”的一个或多个源符号的值。在一项实施(例如,其中使用高斯消去法的前述实施)中,在此过程中确定所有可恢复的源符号的值。在332和334的选择性实施例中,确定一个或多个、但少于所有这些可恢复的源符号的值。当出于必要性、便利、成本等原因而不要求该链式反应代码的完全解码或者该完全解码不可能时,这可能是有利的。在以下的特殊实施例中,进一步展示了332和336的过程。
图7A展示了源符号选择过程321的第二个实施例,由此,为去活动作用而选择至少与程度的输出符号关联的活动源符号。最初,在702处,识别与程度二或更高的输出符号关联的活动源符号。接下来,在704处,如果去活动过这个被识别的源符号,则确定潜在地可恢复的源符号(即无需进一步的源符号钝化作用就可能变成“可恢复”的源符号)的数量。接下来,在706处,在潜在地可恢复的源符号的数量与预定义的数量之间进行比较,由此,如果潜在地可恢复的源符号的数量超过该预定义的数量,则在322中,为去活动作用而选择这个被识别的源符号。如果潜在地可恢复的源符号的数量不符合或超过该预定义的数量,那么,该过程返回到702,在那里,识别与程度二或更高的输出符号关联的另一个源符号。
精通该技术领域的人将会理解:可以使用其他选择标准来选择源符号,以获得最大数量的程度一的输出符号。例如,在一个过程中,为去活动作用而选择与最大数量的输出符号关联的该源符号。在另一个实施例中,从与两个或更多的输出符号关联的一组那些源符号中任意选择源符号。在另外一个实施例中,识别与预定数量的源符号(例如,最少的源符号)关联的输出符号。随后,只为去活动作用而选择这些源符号之一。
在该源符号选择过程的另一个实施例中,可能会恢复一串源符号。在这个过程中,将要识别程度二的输出符号,以便其关联的源符号之一本身与程度二的第二个输出符号相关联,并且以便其关联的源符号之一本身与程度二的第三个输出符号相关联,等等。这种输出符号链将在下文中被称作“程度二链”。
图7B展示了根据本发明的一个实施例的程度二链的解码图表。参与一个可能的程度2链的输出符号是720(a)、720(c)、720(d)、720(e)和720(h)。通过去活动(例如)源符号710(a),可将输出符号720(c)的程度降低到一,这使源符号710(f)成为可恢复的,而这又将输出符号720(e)的程度降低到一。这样,使源符号710(b)成为可恢复的,而这将720(a)和720(d)的程度降低到一,并且,这些使710(g)和710(e)成为可恢复的。可见,如果这种链中的输出符号的数量是k,并且如果去活动这种链中的任何这些输出符号的任何这些关联的源符号,那么,为钝化解码的k个连续步骤而保证程度一的输出符号存在。这个过程可能进一步包括:识别可产生最大长度的程度2链的程度二的输出符号,并去活动与这个被识别的输出符号关联的源符号。
任何这些源符号选择过程可能进一步包括通过其而使该去活动的源符号再活化的“反向跟踪过程”,并且,根据这里所呈现的各种方法,为去活动作用而选择另一个源符号。本发明不局限于通过其来为去活动作用而选择源符号的这些示范过程,并且,在本发明中,可以使用选择与两个或更多的输出符号关联的源符号的任何方法。
如以上参照图2B所解释的,解码矩阵可用于链式反应代码的解码过程中。特别关于使用钝化作用的该解码过程,可以修改图2B中的解码矩阵200,以适应包括不活动的源符号。明确地说,如果该解码过程期间的不活动的源符号的索引序列是序列i1、i2、...、in,并且源符号的数量是K,那么,钝化解码产生置换矩阵P和Q,其中的Q交换列i1和K-n+1、i2和K-n+2、...、以及in和K,以便P·M·Q具有图8B中给出的形状。图8A所示的修改过的解码矩阵包括较低三角形矩阵L、以及子矩阵A、B和C。子矩阵A的各个列对应于这些不活动的源符号。该解码器的任务是:解答有K个未知数x1、...、xk的K’个线性方程的系统,如下所示:
P·M·Q·(Q-1·x)=P·b
其中,x是列向量(x1,...,xk),b是包括该K’个接收的输出符号的各个值的向量。在实践中,矩阵P和Q可能不被存储为完全矩阵,而是被存储为通过跟踪该“钝化解码”的过程而加以计算的置换。这个形式所要求的存储空间通常比完全矩阵的存储空间小得多。精通该技术领域的人会理解:该恢复过程不取决于所展示的解码矩阵的各个列的特殊置换,并且,在本发明之下的选择性实施例中,可以使用其他列置换。
在可能用于计算以上给出的方程式系统的解答x的许多方法中,我们将在下面展示一种可能性。这只是起描述的作用,而并不意在限制本发明的范围。
关于该算法的核心的说明,有利的是,用y表示向量Q-1·x,并且将该解码任务重新定义为计算向量y的任务。一旦计算y,x就可以被有效率地计算为用Q来描述的y的置换。另外,用N表示矩阵P·M·Q,用c表示向量P·b,也就是说,c是用P来描述的b的置换,这对于计算而言又是有效率的。然后,该任务是:计算满足N·y=c的向量y,其中的N具有图8A中给出的形状。
为了解答这个系统,高斯消去法可能被应用于矩阵N。由较低三角形矩阵L的各行来消去子矩阵B的各行。相同的变换被应用于向量c。这个动作将矩阵B变换成包括一些零的矩阵,并且,矩阵C被变换成不同的矩阵D,通过将这些相同的消去步骤应用于矩阵A和C,可获得这个不同的矩阵D。图8B示出这种变换。假设:已去活动n个源符号,并且,有K个源符号和K’个输出符号;那么,子矩阵L具有(K-n)个行和(K-n)个列,矩阵A具有(K-n)个行和n个列,并且,矩阵D具有(K’-K+n)个行和n个列。该变换的矩阵内的子矩阵L和A等同于矩阵N内的对应的子矩阵。向量b也被变换成具有两个成分的另一个向量f,这两个成分是:包括f的前K-n个成分的、在870中给出的向量d,以及包括f的剩余成分的、875中的向量e。对应地,820中的未知向量y被再划分为两个子向量。向量u包括y的前K-n个项目,向量z包括剩余的n个项目。
这种消去将该原始方程式系统变换成两个单独的系统:由D·z=e给出的系统和系统L·u+A·z=d。未知向量z的各个值对应于与这些被钝化的源符号相对应的这些源符号的各个值。一旦从方程式集D·z=e中发现这些值,就可以用各种方法来发现由u给出的剩余的值。在本发明的一些实施例中,通过将矩阵A乘以z、对得到的该向量和d实行“异或”逻辑运算来获得向量g、并解答方程式系统L·u=g,可以发现这些值。在一些实施例中,可以使用链式反应解码器来解答后一种系统。在其他实施例中,与不活动的源符号相对应的每个源符号的那个值跟对应于和所述源符号关联的那些邻近输出符号的输出符号的各个值实行“异或”逻辑运算,并且,从该对应的解码图表(未示出)中除去该不活动的源符号。这会产生新的受限制的解码图表——所有这些不活动的源符号都被除去。然后,标准链式反应解码可以被应用于该受限制的“解码图表”,以恢复其他的源符号。
可以用各种方法来解答方程式系统D·z=e。在一些实施例中,可以使用高斯消去法算法来解答这个系统。在其他实施例中,可以按递归的方式来应用该钝化解码,以获得这些不活动的源符号的未知值。也可以应用用于解答线性方程系统的其他方法。
在该钝化解码器的一些实施例中,在所有这些输出符号都已被输入该解码图表之前,可以开始该解码过程。在这些实施例中,只要该解码图表不再有程度一的输出符号并且至少具有一个活动源符号,就可以使用上述策略来确定:是否钝化源符号;或者,如果存在这种输出符号,是否将另一个输出符号输入该“解码图表”。如果在已收集所有这些输出符号之前开始该解码过程,那么,实质上在该接收过程的同时,可以创建该解码矩阵,并发生关于该解码矩阵的该消去过程——随着每个新的输出符号的接收,执行该消去过程的一个或多个步骤。作为选择,可以每次收集一个以上的输出符号,并且,解码可以继续进行,直到所有这些所述输出符号都被处理为止;如果这时并非所有的源符号都被恢复,则可以请求和处理另一个输出符号集,直到所有这些源符号都已被恢复为止。
图9A和9B展示了根据本发明的一个实施例的、使用前述解码图表和矩阵的钝化解码的例子。图9A中的该原始解码图表包含被表示为910(a)-910(f)的六个源符号、以及被表示为920(a)-920(g)的七个输出符号。可见,传统的链式反应解码甚至无法在这个图表上开始,因为没有程度一的输出符号。通过去活动源符号910(f),链式反应解码可以开始,并且在每个阶段发现程度一的输出符号。
图9B展示了作为该钝化过程的结果的、在该解码矩阵内发生的置换。去活动符号910(f)会导致去活动该矩阵的最后一列。然后,剩余的列可以被变换成较低三角形式。通过表明需要用这个新的较低三角形矩阵的位置(k,k)来置换第k个箭头所指向的位置,该序列的圆圈和箭头指出必须置换这些行和列的顺序。例如,必须实行这些置换,以便位置(2,4)变成位置(1,1),位置(1,1)变成位置(2,2),位置(3,5)变成位置(3,3),等等。
图10A展示了可用于对多阶段链式反应代码进行解码的过程中的修改过的解码图表1000(例如,Raptor中所描述的解码图表)。图表1000包括多个源符号1020(a)-(f)和多阶段输出符号1050,它们共同包括以前描述的输出符号1052(a)-(g)、以及检验符号1055(a)-(d)。如前所述,输出符号1052每个与一个或多个源符号关联。检验符号1055中的每个检验符号也与一个或多个源符号关联,并描述两个或更多的源符号之间的数学关系。例如,符号1055(a)意味着:与源符号1020(a)、1020(b)、1020(e)和1020(f)相对应的这些源符号的各个值的该XOR是零。源符号之间的相互关系可以由静态编码过程(例如,低密度奇偶校验码等)来给予。
作为特殊的例子,如果低密度奇偶校验码被用于该静态编码过程,那么,等于这个代码中的检验符号数量的许多多阶段输出符号可以被加入该解码图表,其值被设置为0,并且,该解码图表可以由这些源符号与这些检验符号之间的该低密度奇偶校验码的图表来增大,并且,该解码图表可以由这个新的图表来取代。低密度奇偶校验码的选择对于本应用而言并非至关重要。一般而言,关于任何类型的静态编码,该对应的奇偶校验矩阵定义通过其可增大该解码图表的偶图。
图10B展示了与修改过的解码图表10A相对应的修改过的解码矩阵1070。修改过的解码矩阵1070被填充有零和一,并具有和源符号那样多的列、以及和输出符号与检验符号的总数那样多的行。对应地,修改过的解码矩阵1070包括两个行集——一个对应于这些输出符号,一个对应于这些检验符号。如果有K’个输出符号、C个检验符号和K个源符号,则可以将该修改过的解码矩阵分解为包括K’个行和K个列的子矩阵Mo、以及包括C个行和K个列的矩阵Mc。如果x1、...、xk表示这些源符号的未知值,并且b1、...、bk,表示所接收的这些输出符号的已知值,那么,该解码器的任务可能是:解答由Mo·x=b和Mc·x=0给出的该方程式系统。该组合的方程式系统将会如图10B中给出的那样。
在本发明的一些实施例中,钝化解码可以按与如上所述的相同的方式进行——图9A中的该解码图表由图10A中的该修改过的解码图表来取代,并且,图8B中的该解码矩阵由图10B中的该修改过的解码矩阵来取代。在其他实施例中,修改过的解码图表1000的这些不同的符号在该解码的不同阶段期间可能会被提供不同的优先级。例如,通过只处理输出符号,并且,只有当没有留下程度一的输出符号时,才采用程度一的检验符号,该解码可以开始。在一些应用中,这可能会导致较低的存储和计算资源,因为检验符号在按需要的基础上被加入该修改过的解码图表。
可以用许多不同的方法(即软件、硬件或两者的组合)并在各种系统中实践这里所描述的这些方法中的每一种方法。在一个实施例中,这些所描述的方法可以作为要么被存储在计算机可读磁盘上、存储器(易失或非易失)中、要么驻留在处理器(计算机、嵌入式处理器等)内的指令代码来加以实施。此外,用于使用这里所描述的这些钝化技术来为链式反应代码解码的系统可能包括计算机或具有可用于存储和/或执行对应于这里所描述的这些过程的指令代码的存储器的其他这样的可编程机器。
图11A展示了可用于执行与这些所描述的方法的过程相对应的指令代码的示范计算机系统。计算机系统1110包括监视器1114、屏幕1112、机壳1118和键盘1134。鼠标(未示出)、光笔或其他I/O接口(例如,虚拟真实接口)也可以被包括在内,用于提供I/O命令。机壳1118收容关于可移动介质(例如,CD或DVD)的驱动器1116、以及硬驱动器(未示出)。计算机系统1110可能包括可用于在其上记录或从中读取数据、指令代码和执行本发明的各种方法所需要的其他信息的驱动器和/或驱动器接口。机壳1118也收容诸如处理器、存储器等常见的计算机部件(未示出)。
图11B展示了被用来执行对应于这些所描述的方法的指令代码的示范计算机系统1110的简化系统框图。如图11A所示,计算机系统1110包括监视器1114,监视器1114随意地与I/O控制器1124相互作用。计算机系统1110进一步包括诸如系统存储器1126、中央处理器1128、扬声器1130、可移动磁盘1136、键盘1134、固定磁盘1137和网络接口1138等子系统。适用于这些所描述的方法的其他计算机系统可能包括额外的或较少的子系统。例如,另一个计算机系统可以包括额外的处理器。诸如1140的箭头表示计算机系统1110的该系统总线结构。但是,这些箭头1140说明用于连接这些子系统的任何互连图。例如,可以利用局域总线来将中央处理器1128连接到系统存储器1126。图11B所示的计算机系统1110只是适用于本发明的计算机系统的例子。掌握该技术领域的普通技能的人将会容易明白适用于本发明的子系统的其他配置。
相应地,在本发明的一些实施例中,当需要重建该全部的原始内容时,使用该钝化解码机制来减少链式反应编码的接收的额外开销。
在本发明的其他实施例中,该钝化解码器被用来降低输出符号的平均程度,从而减少被用于创建输出符号的计算资源。
使用钝化解码器的链式反应编码系统的另一个属性是:加权表格可以被设计成:其中,这些输出符号可能都不属于程度一。这意味着:这种编码系统的这些输出符号不包含输入符号的那个值。在一些实施例中,这个属性可以被用来降低这些输出符号的平均程度,从而减少该编码器上的计算负荷。而且,在一些应用中,这个属性可以被用来依照对该原始数据的未经授权的访问而为该传输提供较低等级的安全性。
钝化解码例子
如Raptor中所揭示的链式反应编码系统的实施例通过被表示为N的数据符号数量、生成R个静态编码符号的静态编码、以及由加权表格描述的动态编码器来加以描述。在一些实施例中,也可以规定接收的额外开销对该解码器的成功提供良好的概率保证。在其他实施例中,可以收集输出符号,直到可能存在完全解码并且不需要规定接收的额外开销为止。
以下的表格描述关于示范钝化解码器的各种参数——第一列提供关于值N的范围,第二列提供关于静态编码符号的生成的信息,第三列提供关于动态编码符号的生成的该加权表格,最后,第四列提供所计算的静态编码符号的数量。
Figure C0381379600251
例如,该表格中的第九行意味着:如果N在5000与8100之间,那么,静态编码符号的数量R是大于或等于0.05*N+100的最小整数。在所有这些情况中,如Raptor中所描述的,该静态编码器的第一个阶段可以首先使用汉明码来为这些原始符号编码。第二个阶段可以使用低密度奇偶校验码。在第九行给出的那个例子中,这个代码的该奇偶校验矩阵包括两个子矩阵。第一个子矩阵具有
Figure C0381379600252
个行和N+R个列,其中的
Figure C0381379600253
表示小于或等于a的最大整数。第二个子矩阵具有
Figure C0381379600254
个行和N+R个列。在“在第一个矩阵中,每个列正好具有1个非零项目,并且,在第二个矩阵中,每个列正好具有7个非零项目”的条件下,任意挑选这些子矩阵中的每个子矩阵。
对应于S0、S1和S2的加权表格如下所示:
关于S0的加权表格
  加权   概率
  7   1
关于S1的加权表格
  加权   概率
1 0.0221538
  2   0.492912
  3   0.166059
  4   0.0768401
  5   0.0803003
  8   0.0636444
  9   0.0353027
  19   0.0439408
  20   0.0188495
关于S2的加权表格
  加权   概率
  1   0.008199
  2   0.507871
  3   0.171036
  4   0.074750
  5   0.084950
  8   0.057682
  9   0.038307
  19   0.057200
S1和S2的平均加权分别是4.254和4.154。
如果该接收的额外开销固定在5%或50(无论哪一个更大),那么,可以在数学上证明:该钝化解码的失败概率小于10-13。这里给出的这个具体的例子只是出于说明的目的。这些实际数字的变更会产生处于本发明的范围以内的设计。
图12A-12B表现了一些标绘图,它们描述关于输入符号数量N的各个值的该钝化解码器的几千个计算机模拟。该水平轴表示N,该垂直轴表示该“修改过的解码图表”中的不活动的源符号的数量。每个点表示一轮模拟。图10(a)表现了关于1与140,000之间的N的范围的各种结果。图10(b)是关于1与16,000之间的N的范围的、图10(a)的放大。
可见,在部分的这些运行中,不活动的源符号的数量是零,从而意味着:该标准链式反应解码器将会已完成该解码。但是,如果N在1与10,000之间,那么,在大多数情况下,不活动的源符号的数量大于一。在这些情况下,该标准链式反应解码器将会已出故障。如果源符号的数量N大于20,000,则被钝化的源符号的数量常常是零。在这些情况下,该解码器特别快速,同时对成功的解码提供格外好的概率保证。
上文的呈现是出于说明和描述的目的。并不意在做到彻底详尽,也不意在将本发明局限于所揭示的精确形式,显然,按照以上教导,可以执行许多修改和变更。选择了这些所描述的实施例,以便最好地解释本发明的原理及其实际应用,从而允许精通该技术领域的其他人在各种实施例中最好地利用本发明并执行适合所计划的特殊运用的各种修改。本发明的范围意在由这里所附的权利要求书来定义。
这里并入的参考资料
以下参考资料被包括于此,用作各种目的的整体参考:
标题为《用于通信系统的信息附加代码生成程序和解码器》的第6,307,487号美国专利标题为《用于通信系统的多阶段代码生成程序和解码器》的第10/032,156号美国专利申请。

Claims (41)

1.一种用于解码器中链式反应代码解码的方法,所述解码器从通信信道接收输出符号并被配置为对所接收输出符号的输入符号序列解码,其中所述输入符号代表以编码形式在通信信道上传送的源数据,所述方法包括:
存储多个已经在通信信道上传送的已接收输出符号,每个已接收输出符号具有程度一或更高的程度,其中输出符号的程度代表与该输出符号相关联的输入符号的数目,而该输出符号是这样的,与该输出符号相关联的输入符号中的一个未知输入符号能够从该输出符号的值和与该输出符号相关联的数个其他输入符号的值被恢复,其他相关输入符号的个数比该输出符号的程度小一;
存储大于二的输入符号的状态,其中输入符号的状态是至少具有一个活动值或一个非活动值的值;
在链式反应过程中处理输出符号,其中输入符号是从程度一的输出符号恢复的,而与已恢复输入符号相关联的程度大于一的输出符号具有其相应减小的程度,由此产生能够被用于恢复输入符号的程度一的附加输出符号;
确定链式反应过程是否因缺少程度一的输出符号而停止恢复输入符号;
当解码器在所述确定步骤中确定没有程度一的输出符号保留作输入符号恢复时,将至少一个输入符号的状态从活动值调整为非活动值,由此使相关输出符号的减小的输出符号程度与去活动的输入符号相关联;
利用具有已关联、减小的程度一的输出符号在链式反应过程继续输出符号的处理;以及
从相关联的输出符号恢复去活动的输入符号。
2.如权利要求1的方法,其特征在于,从相关联的输出符号恢复去活动的输入符号是利用高斯消除法进行的。
3.如权利要求1的方法,其特征在于,一个输入符号的值是数个输入符号的XOR,而输入符号的个数是输出符号的程度。
4.如权利要求1的方法,其特征在于进一步包括重复进行调整状态步骤和继续处理步骤以进一步恢复输入符号。
5.如权利要求1的方法,其特征在于,所述的调整状态包括:
选择与最大数目的输出符号关联的活动输入符号;以及
当解码器在所述确定步骤中确定没有程度一的输出符号保留作输入符号恢复,调整该活动所选输入符号的状态。
6.如权利要求1的方法,其特征在于,所述的调整状态包括:
根据随机或伪随机选择法在与程度二的输出符号相关联的输入符号当中选择一个活动输入符号;以及
当解码器在所述确定步骤中确定没有程度一的输出符号保留作输入符号恢复,调整该所选输入符号的状态。
7.如权利要求1的方法,其特征在于进一步包括将任何非活动输入符号的至少一个输入符号的状态调整为活动值以及将另一个活动输入符号调整为非活动值。
8.如权利要求1的方法,其特征在于,在链式反应过程处理输出符号包括:使与输出符号相关联的至少一个输入符号去活动,该输出符号自身与预定数目的活动输入符号关联。
9.如权利要求1的方法,其特征在于,从相关联的输出符号恢复去活动的输入符号包括:在恢复未去活动的输入符号之前恢复所有的去活动输入符号的值。
10.一种用于解码器中链式反应代码解码的方法,所述解码器从通信信道接收多级输出符号并被配置为对所接收多级输出符号的输入符号序列解码,其中所述输入符号代表以编码形式在通信信道上传送的源数据,而所述多级输出符号各包括一个输出符号或包括一个校验符号,所述方法包括:
存储多个已经在通信信道上传送的已接收多级输出符号,每个已接收多级输出符号具有程度一或更高的程度,其中多级输出符号的程度代表与该多级输出符号相关联的输入符号的数目,而该多级输出符号是这样的,与该多级输出符号相关联的输入符号中的一个未知输入符号能够从该多级输出符号的值和与该多级输出符号相关联的数个其他输入符号的值被恢复,其他相关输入符号的个数比该多级输出符号的程度小一;
存储大于二的输入符号的状态,其中输入符号的状态是至少具有一个活动值或一个非活动值的值;
在链式反应过程中处理多级输出符号,其中输入符号是从程度一的多级输出符号恢复的,而与已恢复输入符号相关联的程度大于一的多级输出符号具有其相应减小的程度,由此产生能够被用于恢复输入符号的程度一的附加多级输出符号;
确定链式反应过程是否因缺少程度一的多级输出符号而停止恢复输入符号;
当解码器在所述确定步骤中确定没有程度一的多级输出符号保留作输入符号恢复时,将至少一个输入符号的状态从活动值调整为非活动值,由此使相关的多级输出符号的减小的多级输出符号程度与去活动的输入符号相关联;
利用具有已关联、减小的程度一的多级输出符号,在链式反应过程重复多级输出符号的处理;以及
从已关联的多级输出符号恢复去活动的输入符号。
11.如权利要求10的方法,其特征在于,从相关联的多级输出符号恢复去活动的输入符号是利用高斯消除法进行的。
12.如权利要求10的方法,其特征在于,一个输入符号的值是数个输入符号的XOR,而输入符号的个数是多级输出符号的程度。
13.如权利要求10的方法,其特征在于进一步包括重复进行调整状态步骤和继续处理步骤以进一步恢复输入符号。
14.如权利要求10的方法,其特征在于,所述的调整状态包括:
选择与最大数目的多级输出符号关联的活动输入符号;以及
当解码器在所述确定步骤中确定没有程度一的多级输出符号保留作输入符号恢复,调整该活动所选输入符号的状态。
15.如权利要求10的方法,其特征在于,所述的调整状态包括:
根据随机或伪随机选择法,在与程度二的多级输出符号相关联的输入符号当中,选择一个活动输入符号;以及
当解码器在所述确定步骤中确定没有程度一的多级输出符号保留作输入符号恢复,调整该所选输入符号的状态。
16.如权利要求10的方法,其特征在于进一步包括将任何非活动输入符号的至少一个输入符号的状态调整为活动值以及将另一个活动输入符号调整为非活动值。
17.如权利要求10的方法,其特征在于,在链式反应过程处理多级输出符号包括:使与多级输出符号相关联的至少一个输入符号去活动,该多级输出符号自身与预定数目的活动输入符号关联。
18.如权利要求10的方法,其特征在于,从相关联的多级输出符号恢复去活动的输入符号包括:恢复所有的去活动输入符号的值。
19.一种从通信信道接收输出符号并被配置为对所接收输出符号的源符号序列解码的系统,其中所述源符号代表以编码形式在通信信道上传送的源数据,所述系统包括:
用于存储多个已经在通信信道上传送的已接收输出符号的装置,每个已接收输出符号具有程度一或更高的程度,其中输出符号的程度代表与该输出符号相关联的源符号的数目,而该输出符号是这样的,与该输出符号相关联的源符号中的一个未知源符号能够从该输出符号的值和与该输出符号相关联的数个其他源符号的值被恢复,其他源符号的个数比该输出符号的程度小一;
用于存储大于二的源符号的状态的装置,其中源符号的状态是至少具有一个活动值或一个非活动值的值;
用于在链式反应过程中处理输出符号的装置,其中源符号是从程度一的输出符号恢复的,而与已恢复源符号相关联的程度大于一的输出符号具有其相应减小的程度,由此产生能够被用于恢复源符号的程度一的附加输出符号;
用于确定链式反应过程是否因缺少程度一的输出符号而停止恢复源符号的装置;
当解码器在所述确定步骤中确定没有程度一的输出符号保留作源符号恢复时,用于将至少一个源符号的状态从活动值调整为非活动值,由此使相关输出符号的减小的输出符号程度与去活动的源符号相关联的装置;
利用具有已关联、减小的程度一的输出符号在链式反应过程继续输出符号的处理的装置;以及
从相关联的输出符号恢复去活动的源符号的装置。
20.如权利要求19的系统,其特征在于,从相关联的输出符号恢复去活动的源符号是利用高斯消除法进行的。
21.如权利要求19的系统,其特征在于,一个源符号的值是数个源符号的XOR,而源符号的个数是输出符号的程度。
22.如权利要求19的系统,其特征在于进一步包括重复进行调整状态步骤和继续处理步骤以进一步恢复源符号的装置。
23.如权利要求19的系统,其特征在于,所述的调整状态的装置包括:
选择与最大数目的输出符号关联的活动源符号的装置;以及
当解码器在所述确定步骤中确定没有程度一的输出符号保留作源符号恢复,调整该活动所选源符号的状态的装置。
24.如权利要求19的系统,其特征在于,所述的调整状态的装置包括:
根据随机或伪随机选择法在与程度二的输出符号相关联的源符号当中选择一个活动源符号的装置;以及
当解码器在所述确定步骤中确定没有程度一的输出符号保留作源符号恢复,调整该所选源符号的状态的装置。
25.如权利要求19的系统,其特征在于进一步包括:
将任何非活动源符号的至少一个源符号的状态调整为活动值的装置;以及
将另一个活动源符号调整为非活动值的装置。
26.如权利要求19的系统,其特征在于,在链式反应过程处理输出符号的装置包括:使与输出符号相关联的至少一个源符号去活动的装置,该输出符号自身与预定数目的活动源符号关联。
27.如权利要求19的系统,其特征在于,从相关联的输出符号恢复去活动的源符号的装置包括:恢复所有的去活动源符号的值的装置。
28.一种被配置为利用与输入符号相关联的接收输出符号对输入符号解码的解码器,所述解码器包括:
用以确定对输入符号解码所需的一组输出符号的接收开销数目的装置,其中接收开销数目大于预定的解码处理失败阈值;
用以对包含大于预定的接收开销数目的数个输出符号的一组输出符号,将这组输出符号划分为一组程度一的输出符号和一组程度二或程度更高的输出符号的装置;
用以处理这组程度一的输出符号,以恢复相关联的输入符号直到没有保留的程度一的输出符号为止的装置;
用以对至少一个活动输入符号去活动,由此将至少一个程度二的输出符号变换为程度一的输出符号的装置;以及
用以恢复与已变换的具有程度一的输出符号相关联的输入符号的装置。
29.如权利要求28的解码器,其特征在于,用以确定接收开销数目的装置包括:用以建立所述输入符号和相关联输出符号的矩阵以及建立相对于该矩阵的预定大小的接收开销数目的装置。
30.如权利要求28的解码器,其特征在于,用以划分所述一组输出符号的装置包括:用以形成两个或多个矩阵的装置,其中所述两个或多个矩阵中的第一个对应于输入符号和与该输入符号相关联的输出符号的第一矩阵,其中所述输出符号为程度一,而第二矩阵,输出符号为程度二或者更高。
31.如权利要求28的解码器,其特征在于,用以使至少一个活动输入符号去活动的装置包括:用以使第二矩阵中至少一个列去活动,以便于至少一个程度二的输出符号变换到程度一的输出符号的装置。
32.如权利要求31的解码器,其特征在于,用以使第二矩阵中至少一个列去活动的装置包括:用以将所述矩阵置换为其较低三角形式的装置。
33.如权利要求28的解码器,其特征在于,所述解码器包括一个被配置为使与多个输出符号相关联的平均程度减小至少一个程度的去活动解码器。
34.如权利要求33的解码器,其特征在于,所述去活动解码器包括一个被配置为仅解码与程度二或程度更高的输出符号相关联的输入符号的解码系统。
35.一种解码方法,所述解码方法应用于被配置为利用与输入符号相关联的接收输出符号对输入符号解码的解码器,所述方法包括:
确定对输入符号解码所需的一组输出符号的接收开销数目,其中接收开销数目大于预定的解码处理失败阈值;
对包含大于预定的接收开销数目的数个输出符号的一组输出符号,将这组输出符号划分为一组程度一的输出符号和一组程度二或程度更高的输出符号;
处理这组程度一的输出符号,以恢复相关联的输入符号直到没有保留的程度一的输出符号为止;
对至少一个活动输入符号去活动,由此将至少一个程度二的输出符号变换为程度一的输出符号;以及
恢复与已变换的具有程度一的输出符号相关联的输入符号。
36.如权利要求35的方法,其特征在于,确定接收开销数目包括:建立所述输入符号和相关联输出符号的矩阵以及建立相对于该矩阵的预定大小的接收开销数目。
37.如权利要求35的方法,其特征在于,划分所述一组输出符号包括:形成两个或多个矩阵,其中所述两个或多个矩阵中的第一个对应于输入符号和与该输入符号相关联的输出符号的第一矩阵,其中所述输出符号为程度一,而第二矩阵,输出符号为程度二或者更高。
38.如权利要求35的方法,其特征在于,使至少一个活动输入符号去活动包括:使第二矩阵中至少一个列去活动,以便于至少一个程度二的输出符号变换到程度一的输出符号。
39.如权利要求38的方法,其特征在于,使第二矩阵中至少一个列去活动包括:将所述矩阵置换为其较低三角形式。
40.如权利要求35的方法,其特征在于,所述解码器包括一个被配置为使与多个输出符号相关联的平均程度减小至少一个程度的去活动解码器。
41.如权利要求40的方法,其特征在于,所述去活动解码器包括一个被配置为仅解码与程度二或程度更高的输出符号相关联的输入符号的解码系统。
CNB038137968A 2002-06-11 2003-06-10 通过被恢复符号的钝化作用对链式反应代码解码的装置和方法 Expired - Lifetime CN100479333C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US38812902P 2002-06-11 2002-06-11
US60/388,129 2002-06-11
US10/459,370 US6856263B2 (en) 2002-06-11 2003-06-10 Systems and processes for decoding chain reaction codes through inactivation
US10/459,370 2003-06-10

Publications (2)

Publication Number Publication Date
CN1679243A CN1679243A (zh) 2005-10-05
CN100479333C true CN100479333C (zh) 2009-04-15

Family

ID=29736429

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038137968A Expired - Lifetime CN100479333C (zh) 2002-06-11 2003-06-10 通过被恢复符号的钝化作用对链式反应代码解码的装置和方法

Country Status (8)

Country Link
US (5) US6856263B2 (zh)
EP (6) EP2278718B1 (zh)
JP (1) JP4224022B2 (zh)
CN (1) CN100479333C (zh)
AU (1) AU2003253635A1 (zh)
ES (5) ES2400239T3 (zh)
HK (1) HK1082127A1 (zh)
WO (1) WO2003105350A1 (zh)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7243285B2 (en) * 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US7068729B2 (en) * 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US20020129159A1 (en) * 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
US9240810B2 (en) * 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
ES2400239T3 (es) * 2002-06-11 2013-04-08 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena mediante la inactivación de símbolos recuperados
KR101143282B1 (ko) * 2002-10-05 2012-05-08 디지털 파운튼, 인크. 연쇄 반응 코드의 체계적 인코딩 및 디코딩
EP1665539B1 (en) 2003-10-06 2013-04-10 Digital Fountain, Inc. Soft-Decision Decoding of Multi-Stage Chain Reaction Codes
US8374284B2 (en) * 2004-02-12 2013-02-12 Apple, Inc. Universal decoder
US7418651B2 (en) 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
US7203871B2 (en) 2004-06-03 2007-04-10 Cisco Technology, Inc. Arrangement in a network node for secure storage and retrieval of encoded data distributed among multiple network nodes
US7721184B2 (en) * 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
US7596673B2 (en) 2005-12-08 2009-09-29 Sony Corporation Failure tolerant data storage
FR2895176B1 (fr) * 2005-12-21 2008-02-22 St Microelectronics Sa Transmission securisee avec code correcteur d'erreur
WO2007095550A2 (en) 2006-02-13 2007-08-23 Digital Fountain, Inc. Streaming and buffering using variable fec overhead and protection periods
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
JP4808054B2 (ja) * 2006-03-17 2011-11-02 富士通株式会社 データ転送方法及び,これを適用する通信システム及びプログラム
JP4696008B2 (ja) * 2006-03-20 2011-06-08 富士通株式会社 Ip送信装置およびip送信方法
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9178535B2 (en) * 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9432433B2 (en) * 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US20100211690A1 (en) * 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
WO2008003094A2 (en) 2006-06-29 2008-01-03 Digital Fountain, Inc. Efficient representation of symbol-based transformations with application to encoding and decoding of forward error correction codes
US8181093B2 (en) * 2006-12-29 2012-05-15 Interdigital Technology Corporation Method and apparatus for transmitting and receiving multimedia broadcast multicast services via a dedicated downlink carrier
DE602008004346D1 (de) * 2007-06-19 2011-02-17 France Telecom Für multimedia-datenstrom mit varbiabler rate geeignetes verfahren auf der basis von fehlerkorrekturcodes
CA2697764A1 (en) * 2007-09-12 2009-03-19 Steve Chen Generating and communicating source identification information to enable reliable communications
TWI357245B (en) * 2007-12-31 2012-01-21 Ind Tech Res Inst System and method for downloading real-time intera
US9281847B2 (en) * 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9015564B2 (en) 2009-08-19 2015-04-21 Qualcomm Incorporated Content delivery system with allocation of source data and repair data among HTTP servers
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
KR101154818B1 (ko) * 2009-10-06 2012-06-08 고려대학교 산학협력단 랩터 부호 사용 시스템을 위한 복호화 방법
KR101615384B1 (ko) * 2010-04-05 2016-04-25 삼성전자주식회사 통신 시스템에서의 채널 부호화 장치 및 방법
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
DE102010035210B4 (de) * 2010-08-24 2012-08-30 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Rückgewinnung verlorener Daten und zur Korrektur korrumpierter Daten
TWI445323B (zh) 2010-12-21 2014-07-11 Ind Tech Res Inst 資料傳送的混合式編解碼裝置與方法
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9134378B2 (en) * 2011-03-14 2015-09-15 Synopsys, Inc. Linear decompressor with two-step dynamic encoding
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
JP5795446B2 (ja) 2011-11-01 2015-10-14 クゥアルコム・インコーポレイテッドQualcomm Incorporated Httpサーバの間でのソースデータおよび修復データの割り当てを伴うコンテンツ配送システム
US9612902B2 (en) 2012-03-12 2017-04-04 Tvu Networks Corporation Methods and apparatus for maximum utilization of a dynamic varying digital data channel
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
US10345369B2 (en) 2012-10-02 2019-07-09 Synopsys, Inc. Augmented power-aware decompressor
US10015486B2 (en) * 2012-10-26 2018-07-03 Intel Corporation Enhanced video decoding with application layer forward error correction
US10511331B2 (en) * 2013-08-16 2019-12-17 Nippon Telegraph And Telephone Corporation Channel decoding method and channel decoding device
EP2858286A1 (en) * 2013-10-04 2015-04-08 Alcatel Lucent Rateless decoding
US9374552B2 (en) 2013-11-11 2016-06-21 Amazon Technologies, Inc. Streaming game server video recorder
US9634942B2 (en) 2013-11-11 2017-04-25 Amazon Technologies, Inc. Adaptive scene complexity based on service quality
US9805479B2 (en) 2013-11-11 2017-10-31 Amazon Technologies, Inc. Session idle optimization for streaming server
US9582904B2 (en) 2013-11-11 2017-02-28 Amazon Technologies, Inc. Image composition based on remote object data
US9578074B2 (en) 2013-11-11 2017-02-21 Amazon Technologies, Inc. Adaptive content transmission
US9604139B2 (en) 2013-11-11 2017-03-28 Amazon Technologies, Inc. Service for generating graphics object data
US9641592B2 (en) 2013-11-11 2017-05-02 Amazon Technologies, Inc. Location of actor resources
TWI523465B (zh) * 2013-12-24 2016-02-21 財團法人工業技術研究院 檔案傳輸系統和方法
WO2015155316A1 (de) * 2014-04-09 2015-10-15 Hirschmann Automation And Control Gmbh Verfahren für ein redundantes übertragungssystem mit prp und energieeinsparung
WO2015178018A1 (ja) 2014-05-22 2015-11-26 日本電気株式会社 端末、パケット復号方法、および、プログラムが記憶された記憶媒体
US10903858B2 (en) * 2015-05-27 2021-01-26 Quantum Corporation Dynamically variable error correcting code (ECC) system with hybrid rateless reed-solomon ECCs
US10380303B2 (en) 2015-11-30 2019-08-13 Synopsys, Inc. Power-aware dynamic encoding
WO2017196946A1 (en) 2016-05-12 2017-11-16 Sharp Laboratories Of America, Inc. Communication methods and apparatus employing rateless codes
TWI602409B (zh) * 2016-08-15 2017-10-11 國立交通大學 資料傳輸方法與系統
KR20200036338A (ko) * 2018-09-28 2020-04-07 삼성전자주식회사 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3215601A (en) 1963-02-07 1965-11-02 Warner Lambert Pharmaceutical Antacid composition and method of making same
GB8815978D0 (en) * 1988-07-05 1988-08-10 British Telecomm Method & apparatus for encoding decoding & transmitting data in compressed form
US6079042A (en) 1995-04-27 2000-06-20 The Trustees Of The Stevens Institute Of Technology High integrity transport for time critical multimedia networking applications
US6073250A (en) * 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US7068729B2 (en) * 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US7243285B2 (en) * 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US6320520B1 (en) * 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US6618451B1 (en) * 1999-02-13 2003-09-09 Altocom Inc Efficient reduced state maximum likelihood sequence estimator
US6748441B1 (en) * 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6678855B1 (en) * 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
US6738942B1 (en) * 2000-06-02 2004-05-18 Vitesse Semiconductor Corporation Product code based forward error correction system
US6486803B1 (en) * 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
US6411223B1 (en) * 2000-10-18 2002-06-25 Digital Fountain, Inc. Generating high weight encoding symbols using a basis
US7072971B2 (en) * 2000-11-13 2006-07-04 Digital Foundation, Inc. Scheduling of multiple files for serving on a server
US6820221B2 (en) * 2001-04-13 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for detecting process and network failures in a distributed system
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US6677864B2 (en) * 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
ES2400239T3 (es) 2002-06-11 2013-04-08 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena mediante la inactivación de símbolos recuperados
KR101143282B1 (ko) * 2002-10-05 2012-05-08 디지털 파운튼, 인크. 연쇄 반응 코드의 체계적 인코딩 및 디코딩
WO2004068715A2 (en) * 2003-01-29 2004-08-12 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
EP1665539B1 (en) * 2003-10-06 2013-04-10 Digital Fountain, Inc. Soft-Decision Decoding of Multi-Stage Chain Reaction Codes
EP1673690B1 (en) * 2003-10-14 2010-08-25 Panasonic Corporation Data converter
US7721184B2 (en) * 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
US7644335B2 (en) * 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
US7164370B1 (en) * 2005-10-06 2007-01-16 Analog Devices, Inc. System and method for decoding data compressed in accordance with dictionary-based compression schemes
US9270414B2 (en) * 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
CA2697764A1 (en) * 2007-09-12 2009-03-19 Steve Chen Generating and communicating source identification information to enable reliable communications
US8151174B2 (en) * 2008-02-13 2012-04-03 Sunrise IP, LLC Block modulus coding (BMC) systems and methods for block coding with non-binary modulus

Also Published As

Publication number Publication date
ES2445116T3 (es) 2014-02-28
EP2278719B1 (en) 2013-12-18
EP2278719A2 (en) 2011-01-26
US20050206537A1 (en) 2005-09-22
EP2306652B1 (en) 2014-03-19
ES2443823T3 (es) 2014-02-20
AU2003253635A1 (en) 2003-12-22
EP2278720A3 (en) 2011-03-30
US6856263B2 (en) 2005-02-15
JP4224022B2 (ja) 2009-02-12
EP1506621A1 (en) 2005-02-16
EP2278717A3 (en) 2011-03-30
ES2459065T3 (es) 2014-05-07
ES2445761T3 (es) 2014-03-05
EP2278720B1 (en) 2013-12-25
CN1679243A (zh) 2005-10-05
ES2400239T3 (es) 2013-04-08
US20040075592A1 (en) 2004-04-22
US7265688B2 (en) 2007-09-04
EP2278719A3 (en) 2011-03-30
US20100103001A1 (en) 2010-04-29
EP1506621B1 (en) 2013-01-02
EP2278718B1 (en) 2013-12-18
EP2278718A3 (en) 2011-03-30
HK1082127A1 (en) 2006-05-26
WO2003105350A1 (en) 2003-12-18
EP2278720A2 (en) 2011-01-26
US7633413B2 (en) 2009-12-15
EP2278717A2 (en) 2011-01-26
US7956772B2 (en) 2011-06-07
US20080169945A1 (en) 2008-07-17
JP2006512790A (ja) 2006-04-13
EP2278718A2 (en) 2011-01-26
US20060227022A1 (en) 2006-10-12
US7030785B2 (en) 2006-04-18
EP2306652A1 (en) 2011-04-06

Similar Documents

Publication Publication Date Title
CN100479333C (zh) 通过被恢复符号的钝化作用对链式反应代码解码的装置和方法
US9240810B2 (en) Systems and processes for decoding chain reaction codes through inactivation
CN100386735C (zh) 对存储于存储设备中的数据进行编码和解码的方法
US8775860B2 (en) System and method for exact regeneration of a failed node in a distributed storage system
Cluzeau Block code reconstruction using iterative decoding techniques
WO2014102565A1 (en) Polar codes for efficient encoding and decoding in redundant disk arrays
CN111625394B (zh) 基于纠删码的数据恢复方法、装置、设备及存储介质
CN105353974B (zh) 一种适用于磁盘阵列及分布式存储系统的二容错编码方法
CN112000512B (zh) 一种数据修复方法及相关装置
EP1100207A2 (en) System and method for providing error correction coding with selectively variable redundancy
CN1048607C (zh) 数字信息中纠错和纠正删除的方法及适于实现此方法的装置
KR102007163B1 (ko) 인코더, 디코더 및 이를 포함하는 반도체 장치
CN107665152B (zh) 一类纠删码的译码方法
Lala A single error correcting and double error detecting coding scheme for computer memory systems
KR100950186B1 (ko) 복구된 심볼들의 비활성화를 통한 연쇄 반응 코드들의디코딩
CN111143108A (zh) 一种降低阵列码Xcode修复的编译码方法及装置
CN101695002A (zh) 一种基于理德-所罗门码的编码电路
JP2524119B2 (ja) 誤り訂正方法
CN112953552A (zh) Q-learning辅助的连续消除翻转译码器及其译码方法
Rahman et al. A Minimal Delay Decoder Design for Block Codes of Small Lengths
KR20180093493A (ko) 정규화 알고리즘을 이용한 디코딩 방법 및 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1082127

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1082127

Country of ref document: HK

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180419

Address after: California, USA

Patentee after: QUALCOMM Inc.

Address before: California, USA

Patentee before: Digital Fountain, Inc.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20090415