CN101427495A - 用于通信系统的基于多域的码生成器的解码器 - Google Patents

用于通信系统的基于多域的码生成器的解码器 Download PDF

Info

Publication number
CN101427495A
CN101427495A CNA2007800139722A CN200780013972A CN101427495A CN 101427495 A CN101427495 A CN 101427495A CN A2007800139722 A CNA2007800139722 A CN A2007800139722A CN 200780013972 A CN200780013972 A CN 200780013972A CN 101427495 A CN101427495 A CN 101427495A
Authority
CN
China
Prior art keywords
finite field
symbol
input symbols
array
symbols
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
CNA2007800139722A
Other languages
English (en)
Other versions
CN101427495B (zh
Inventor
M·A·肖克洛拉希
M·G·卢比
M·沃森
L·明德
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 CN101427495A publication Critical patent/CN101427495A/zh
Application granted granted Critical
Publication of CN101427495B publication Critical patent/CN101427495B/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
    • 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/0041Arrangements at the transmitter end
    • 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
    • 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
    • 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
    • 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

用于通信系统的基于多域的码生成器和解码器
交叉引用
本申请要求提交于2006年2月21日的美国临时专利申请No.60/775,528的优先权并且是其非临时申请。
以下引用出于所有用途被包括和结合于此。
授予Luby的题为“Information Additive Code Generator and Decoder forCommunication Systems(用于通信系统的信息加性码生成器和解码器)”的美国专利No.6,307,487(以下称为“Luby I”);
授予Luby等人的题为“Information Additive Group Code Generator andDecoder for Communication Systems(用于通信系统的信息加性群码生成器和解码器)”的美国专利No.6,320,520(以下称为“Luby II”);
授予Shokrollahi等人的题为“Multi-Stage Code Generator and Decoder forCommunication Systems(用于通信系统的多级码生成器和解码器)”的美国专利No.7,068,729(以下称为“Shokrollahi I”);
授予Shokrollahi等人的题为“Systematic Encoding and Decoding of ChainReaction Codes(连锁反应码的系统编码和解码)”的美国专利No.6,909,383(以下称为“Shokrollahi II”);
授予Shokrollahi等人的题为“System and Processes for Decoding ChainReaction Codes through Inactivation(通过钝化解码连锁反应码的系统和过程)”的美国专利No.6,856,263(以下称为“Shokrollahi III”);以及
Shokrollahi于2004年12月1日提交的题为“Protection of Data from erasuresUsing Subsymbol Based Codes(使用子码元基础码以防止数据被删除)”的美国专利公开No.2005/0219070 A1(以下称为“Shokrollahi IV”)。
发明领域
本发明涉及通信系统内的编码和解码,尤其涉及对数据进行编码和解码以考虑传达的数据内的差错和间隙的通信系统。通信是在广泛意义上使用的,包括但并不限于任何形式的数字数据通过空间和/或时间的传输。
发明背景
通信信道上发送方和接收者方之间的文件传输是许多文献的主题。较优地,接收方期望能以一定的确信度接收到发送方在信道上传送的数据的精确副本。当信道没有完美的保真度时(这是大多数物理可实现系统的情况),要考虑的问题是如何处理传输中的数据丢失或误传的数据。丢失的数据(删除)比受损的数据(差错)要更容易处理,因为接收方不能总是分辨何时接收到了错误的受损数据。研发了许多纠错码以纠正删除和/或差错。一般,使用的特定码是基于关于正通过其传送数据的信道的不保真度和正在传送的数据的性质的信息来选择的。例如,在已知信道有较长时间的不保真度时,最适合该情况的是突发差错码。在预期只有较短不频繁的差错时,最好是简单的奇偶校验码。
当发射机和接收机具有用于通信所需的全部计算功率和电功率且发射机与接收机之间的信道足够干净以允许相对无误差的通信时,数据传输是简单的。当信道处于不利环境中或者发射机和/或接收机具有有限能力时,数据传输的问题变得较为困难。
一种方案是使用前向纠错(FEC)技术,其中数据在发射机处被编码以使得接收机可从传输的删除和差错中进行恢复。在可行情况下,从接收机到发射机的反向信道允许接收机针对差错向发射机进行传达,发射机随后可相应地调节其传输过程。然而,常常反向信道是不可用或不可行的,或者仅在有限容量下可用。例如,在发射机正向大量接收机传送的情况下,发射机可能没有能力处理来自所有接收机的反向信道。作为另一示例,通信信道可以是存储介质,由此数据的传输在时间上往前的,从而除非有人发明出回到从前的时间穿梭机,否则该信道的反向信道是不可行的。因此,常需要在没有反向信道或在有限容量的反向信道的情况下设计通信协议,由此,发射机不得不在没有关于变化较大的信道状况的全景了解的情况下处理这些信道状况。
当接收机需要为可能是便携式或移动的低功率小型设备并且需要以高带宽接收数据时,发射机与接收机之间的数据传输问题变得更为困难。例如,无线网络可能被建立成从固定发射机向大量或不确定数目的便携式或移动接收机递送文件或流送——作为广播或多播,其中接收机受限于其计算能力、存储器大小、可用电力、天线尺寸、设备尺寸和其它设计约束。另一示例是在存储应用中,其中接收机从在原始数据的再现上呈现不保真度的存储介质检索数据。这种接收机常与其存储介质被嵌入在设备中,例如在计算能力和电力上高度受约束的盘驱动器。
在这种系统中,所要解决的是考虑包括具有极小或没有反向信道、有限的存储器、有限的计算周期、功率、移动性和定时。较优地,设计应最小化向潜在的大量接收机递送数据所需的传输时间量,其中个别接收机可能在不可预测的时间被转为开或关,移进和移出范围,遭遇由于链路差错、移动性、拥塞而造成的丢失,从而迫使较低优先级文件或流送分组被临时丢弃等。
在可能丢失分组的信道上的数据传输所用的分组协议的情况下,文件、流送或将在分组网络上传送的其它数据块被划分成相等大小的输入码元,使用FEC码从输入码元生成与输入码元相等大小的编码码元,且编码码元被放在分组中发送。不管码元是否实际被分成比特流,码元的“大小”可以用比特测量,其中当码元从2M码元的字母表中选出时该码元大小为M比特。在这种基于分组的通信系统中,面向分组的删除FEC编码方案可能是合适的。如果目标接收方能在网络内即使有删除的情况下也能以及时方式恢复流送的每个部分的精确副本,则称该流送传输是可靠的。文件传输和流送传输两者也可以是一定程度上可靠的,在这个意义上,文件或流送的某些部分是不可恢复的,或者对于流送,如果该流送的某些部分不能以及时方式恢复。由于不定时的拥塞导致路由器中的缓冲机制接近其容量进而迫使丢弃传入的分组,所以经常发生分组丢失。传输期间针对删除进行保护已经是许多研究的主题。
在会损坏比特的有噪信道上的数据传输所用的协议的情况下,将在数据传输信道上传送的数据块划分成相等大小的输入码元,从输入码元生成相同大小的编码码元并且在该信道上发送编码码元。对于这种有噪信道而言,码元的大小通常是1比特或几比特,不论码元是否被实际分成比特流。在这种通信系统中,面向比特流的纠错FEC编码方案可能是合适的。如果允许目标接收方能够在有差错(不论在该信道中检测或是未检测到的码元损坏)的情况下恢复原始块的精确副本,则该数据传输被称为是可靠的。该传输也可以是一定程度上可靠的,在这种意义上,块的某些部分在恢复以后仍然损坏。码元经常由于不定时的噪声、周期性噪声、干扰、弱信号、信道堵塞、以及各种其它因素而被损坏。传输期间针对数据损坏进行保护已经成为许多研究的主题。
连锁反应码是允许从文件或流送的固定输入码元生成任意数目的输出码元的FEC码。有时,它们被称为喷泉或无率FEC码,因为该码没有先验固定的传输率。连锁反应码具有许多用途,包括相比于信息复制方式以信息加性方式生成任意数目的输出码元,其中后者是接收机在能够恢复输入码元之前接收到的输出码元复制已接收到的信息并由此不提供可用于恢复输入码元的信息。用于生成、使用和操作连锁反应码的新颖技术在例如Luby I、Luby II、Shokrollahi I和Shokrollahi II中示出。
连锁反应码生成的输出码元的一个属性是接收机能够一旦接收到足够的输出码元就能恢复原始文件或原始流送的块。具体而言,为了以较高概率恢复原始的K个输入码元,接收机需要约K+A个输出码元。比率A/K被称为“相对接收开销”。相对接收开销取决于输入码元的数目K和解码器的可靠性。
还已知可使用多级连锁反应(“MSCR”)码,诸如在Shokrollahi I和/或II中所描述且由数字方敦公司所研发的商标名为“Raptor”码的码。多级连锁反应码被用于例如从源文件或源流送接收输入码元、从输入码元生成中间码元并使用连锁反应码将中间码元编码的编码器中。特别地,从要被传送的输入码元的有序集生成多个冗余码元。从包括输入码元和冗余码元的组合码元集生成多个输出码元,其中可能输出码元的数目远大于该组合码元集中码元的数目,其中至少一个输出码元是从该组合码元集中一个以上的码元和从该组合码元集中不足所有的码元生成的,并使得输入码元的有序集可从任意数目N个输出码元被再生至所需的精确度。还已知可使用以上所述的技术来编码和解码系统码,其中输入码元被包括在该码的可能输出码元当中。这可以如在ShokrollahiII中所述的通过在上述步骤之前对输入码元应用变换实现,所述增强过程导致该码生成的第一输出码元等于输入码元。如差错或删除编码领域的技术人员所明了的,Shokrollahi II的技术可直接应用到本文所述或建议的码。
对于某些应用,码的其它变形可能更为适合或优选。
上述MSCR码和连锁反应码在它们的编码和解码复杂度方面是极为有效的。它们这种效率的原因之一是所执行的操作是域GF(2)上的线性操作,GF(2)即一个比特上的简单域,其中将两个域元素相加的操作是简单的逻辑XOR(异或)操作,而将两个域元素相乘的操作是简单的逻辑AND(与)操作。一般而言,这些操作在多个比特上并发地执行,例如一次32比特或一次4字节,并且这些操作在所有现代CPU处理器上是自然地受支持的。另一方面,当用作删除FEC码时,由于GF(2)上的操作,使得对于超出前K个码元之外的每个额外码元,接收机能够解码所有输入码元的机会下降至多约一半,其中K是原始输入码元的数目。例如,如果K+A个编码码本被接收,则恢复过程无法恢复这K个原始输入码元的机会至少为2-A。如果解码失败的机会作为A的函数下降得更快那么这将是更有利的行为。
存在其它在较大的域上操作的删除和纠错FEC码,例如在GF(4)上、或在GF(8)上、或在GF(256)上、或者更一般地在GF(2L)上(L>1)操作的Reed-Solomon码,以及还有在较大域上操作的LDPC码。这些FEC码的优点在于,例如在删除FEC码的情况下,解码失败的机会作为A的函数比GF(2)上的FEC码下降得更快。另一方面,这些FEC码在编码和解码复杂度上通常效率低得多,并且主要原因之一是较大域上的操作更为复杂和/或在现代CPU上不是自然地被支持,且复杂度通常随域大小而增长。因此,域在GF(2)上操作的FEC码相比,在较大有限域上操作的FEC码常常较慢或不切实际。
因此,所需要的是在其编码和解码复杂度方面极具效率同时,又具有解码失败的机会作为超出理想FEC码恢复原始输入码元所需的最小数目之外的收到码元的数目的函数非常快速地降低这样的属性的纠删和纠错FEC码。
发明简要
根据本发明的一个实施例,提供了一种用于编码数据以便在通信信道上从源传输至目的地的方法。该方法对输入码元的有序集操作并且可从输入码元生成零个或多个冗余码元,每个冗余码元等于具有取自一个或多个有限域的系数的多个输入码元的线性组合,其中所用的有限域在不同输入码元之间和在不同的冗余码元之间可不同。该方法包括从包括输入码元和冗余码元(如果有任何冗余码元)的码元组合集生成多个输出码元,其中每个输出码元可从所组合的输入和冗余码元中的一个或多个生成,其中每个输出码元是作为具有选自一个或多个有限域的系数的多个输入码元和冗余码元的线性组合而生成的,其中所用的有限域在不同输入和冗余码元之间、在不同的输出码元之间以及在输出码元与冗余码元之间可以不同,并使得可从任意预定数目的输出码元再生输入码元的有序集至所需的精确度。
该方法还可被用来生成输出码元,其中可从输入码元的固定集合生成的可能的输出码元的数目可以比输入码元的数目大得多。
根据本发明的另一实施例,该方法包括在目的地接收通过通信信道发送来自源的输出码元中的至少部分,其中信道上的传输可导致部分发送码元的丢失或损坏并且一些收到的码元已知被正确接收且关于码元的损坏程度的信息也可被提供。该方法包括在目的地再生输入码元的有序集至所需的精确度——这取决于接收到多少码元以及收到码元的损坏的知识。
该实施例还可包括在目的地接收输出码元的至少部分,其中可接收到的可能输出码元的数目可以比输入码元的数目大得多。
根据本发明的另一实施例,提供了一种用于编码数据以便在通信信道上从源发送到目的地的方法。该方法对输入码元的有序集操作并包括从输入码元生成多个冗余码元。该方法还包括从包括输入码元和冗余码元的码元组合集生成多个输出码元,其中在生成输出码元时所应用的操作是在较小的有限域(例如,GF(2))上,并且使得可从任意预定数目的输出码元再生输入码元的有序集至所需的精确度。这多个冗余码元是从输入码元的有序集生成的,其中生成冗余码元的操作是在并非为GF(2)的有限域上或者是在一个以上的有限域的混合上(例如,一些操作在GF(2)上,一些操作在GF(256)上)。
根据本发明的又一实施例,使用类似技术提供了一种用于接收通过通信信道传送来自源的数据的系统。该系统包括耦合至通信信道的用于接收通过通信信道传送的输出码元的接收模块,其中每个输出码元是从包括输入码元和冗余码元的码元组合集中的至少一个码元生成的,其中在生成输出码元时所应用的操作是在较小的有限域(例如,GF(2))上,并且使得可从任意预定数目的输出码元再生输入码元的有序集至所需的精确度,其中输入码元是来自输入码元的有序集,其中冗余码元是从输入码元生成的,且其中这多个冗余码元是从输入码元的有序集生成的,其中生成冗余码元的操作是在并非为GF(2)的有限域上(例如,GF(256))或者是在一个以上的有限域的混合上(例如,一些操作在GF(2)上,一些操作在GF(256)上)。
根据本发明的其它实施例,提供了一种内含在载波中的计算机数据信号。
通过本发明实现了许多益处。例如,在一特定实施例中,用于编码数据以便在信道上传输的计算开销被降低。在另一特定实施例中,解码这些数据的计算成本被降低。在其它特定实施例中,解码器的差错概率被降低,同时保持了较低的编解码计算开销。取决于实施例,可实现这些益处中的一个或多个。这些和其它益处将在本说明书中更具体地提供。
所公开的本发明的性质和优点的进一步理解可参照说明书和附图的剩余部分来了解。
附图简述
图1是根据本发明的一个实施例的通信系统的框图。
图2是根据本发明的一个实施例的编码器的框图。
图3是根据本发明的一个实施例生成冗余码元的方法的简易框图。
图4是根据本发明的一个实施例的静态编码器的基本操作的简易框图。
图5是根据本发明的一个实施例的动态编码器的简易框图。
图6是根据本发明的一个实施例的动态编码器的基本操作的简易框图。
图7是根据本发明的一个实施例的静态编码器的简易框图。
图8是根据本发明的一个实施例的静态编码器的基本操作的简易框图。
图9是根据本发明的一个特定实施例用于计算编码参数的方法的简易框图。
图10是根据本发明的另一实施例的静态编码器的简易流程图。
图11是根据本发明的一个实施例的解码器的简易框图。
图12是根据本发明的一个实施例的解码器的操作的简易流程图。
图13是根据本发明的另一实施例的解码器的操作的简易流程图。
图14是根据本发明的又一实施例的解码器的操作的简易流程图。
图15是根据本发明的一个实施例的动态解码器的简易框图。
图16是根据本发明的一个实施例的静态解码器的简易框图。
图17示出了来自子码元映射的源码元。
图18示出了各种文件大小的文件下载参数的可能设置。
图19示出了各种源块大小的流送参数的可能设置。
图20示出了表示源码元与中间码元之间的关系的矩阵的形式。
图21示出了幂度生成器的幂度分配。
图22示出了可被用于解码的矩阵A的形式。
图23示出了可被用于解码的矩阵A的块分解。
图24a示出了可被用于解码的矩阵A的块分解。
图24b示出了在解码过程的第一阶段的若干步骤之后矩阵X的块分解。
图25示出了在某些消去步骤之后矩阵X的块分解。
图26示出了在进一步消去步骤之后X的子矩阵的块分解。
图27示出了在消去和删除步骤之后矩阵A的块分解。
图28示出了在进一步消去和删除步骤之后矩阵A的块分解。
图29示出了在进一步消去步骤之后矩阵A的块分解。
图30示出了在又某些其它消去步骤之后矩阵A的块分解。
图31示出了根据本发明的一个优选实施例构造的(120,100)码的码失败概率的表。
图32示出了根据本发明的一个优选实施例构造的(110,100)码的码失败概率的表。
具体描述之后跟有三个附录:附录A包含系统索引J(K)的示例值;附录B.1包含表V0的示例值;以及附录B.2包含表V1的示例值。
特定实施例的具体描述
本文所描述的发明利用数学运算来基于一个或多个有限域中的运算进行编码和解码。有限域是为其定义了四种算术运算有限代数结构,并且形成关于这些操作的域。它们的理论和它们的构造是本领域的技术人员所熟知的。
在以下描述中,我们将需要在有限域的元素与表示将被编码或解码的数据或从其导出的码元之间定义乘法过程。在以下描述中考虑三种不同类型的码元:输入码元包括发送方已知的将被传达给接收方的信息,冗余码元包括从输入码元导出的码元,而输出码元包括发送方传送给接收方的码元。定义这种乘法过程的许多可能性当中,我们集中在特定两种:简单变换,以及交织变换。
简单变换
在该情形中,乘法过程是在来自有限域GF(2M)的元素a与长度为M比特的码元S之间定义的。如在此所使用的,“码元”是指通常小于源块的一段数据。码元的大小通常可用比特来衡量,其中码元具有M比特的大小且该码元选自2M个码元的字母表。在分组网络上可靠传输信息的应用中,例如码元的大小可以等于分组大小,或者可以比分组大小要小,以使得每个分组包含一个或多个码元。
在简单变换的情形中,码元S被解释为GF(2M)的元素,而乘法a*S被定义为域GF(2M)中的标准乘法。对码元执行的操作被称为码元的“简单变换”。作为说明性示例,考虑域GF(4)。GF(4)的元素例如根据其二进制展开可用2比特来表示。域GF(4)具有四个域元素00、01、10、11,其中加法是比特串的标准异或,而乘法经由下表来定义:
 
00 01 10 11
00 00 00 00 00
01 00 10 10 11
10 00 10 11 10
11 00 11 10 10
根据以上乘法表,10*01的结果将是10,因为01是该域中的乘法中性元素(有时被称为单位元素)。
交织变换
为了示出交织变换,我们将利用环的数学概念。如本领域的技术人员所公知的,环是其上定义了满足分配律的加法和乘法这两种运算的集合。此外,仅考虑加法的该集合构成了阿贝尔群(abelian group),即加法的结果与被加数的顺序无关,对于加法有一中性元素0,以及对于每个元素都存在另一元素以使得这些元素的和为0。其它要求是乘法具有中性元素1,以使得任何元素与1的乘积不会改变该元素的值。对于普通环而言,我们不要求任何非零元素都具有乘法逆元素,也不要求乘法是可交换的。然而当满足了这两个条件时,则我们将该环称为“域”。此概念是代数学中的一个标准概念。
映射是可以硬件、软件、数据存储等来实现的一种逻辑构造,它将相同大小的码元对映射到该大小的另一码元。我们用“⊕”来标示该映射,并用S⊕T来标示对码元对(S,T)的这种映射的映像。这种映射的一个示例是逐位的异或(XOR)。
这里使用的另一构造是一特殊类型的集合对码元的“动作”。假定A是具备了可交换加法运算(“+”)的集合,该加法运算具有中性元素并且对于每一元素都包含其加法逆元素。这样一个集合通常也被称为阿贝尔群。该群对码元集合的“动作”是将由群元素r和码元S组成的对映射为另一码元的映射。当该映射在群中遵守加法时,即对于群A中的每对元素a和b,都有 ( a + b ) * S = a * S ⊕ b * S , 我们用r*S来标示这种映像。如果A是环且该动作还在A中遵守乘法,在乘法运算符在A中为“·”的情形中即(a·b)*S=a*(b*S),则该动作就是有限域的元素域码元之间所要求的乘法过程。这样我们说域对码元集“操作”。以这种方式对码元执行的操作被称为“交织变换”。
这种乘法过程还有众多示例。以下仅提及了少量示例。该示例列表仅用于说明的目的,而不应被考虑为穷尽性列表,也不应被理解为限制本发明的范围。
由域元素0和1组成的域GF(2),其中加法为异或(XOR)且乘法为逻辑运算AND(与),通过定义1*S=S且0*S=0来对码元集合进行运算,其中S标示任意码元而0标示全部由0组成的码元。
域GF(4)可按以下方式对偶数大小的码元操作:对于码元S,我们分别用S[0]和S[1]来标示其前一半和后一半,从而使得S=(S[0],S[1])是S[0]和S[1]的级联。随后,我们定义
00*S=0
01*S=S
10 * S = ( S [ 1 ] , S [ 0 ] ⊕ S [ 1 ] )
11 * S = ( S [ 0 ] ⊕ S [ 1 ] , S [ 0 ] ) .
可以很快核实这确实是有效运算。可看出,该域的乘法表描述了与以上在2比特码元情形中所定义的运算相一致的运算。
或者,域GF(4)可按以下方式对偶数大小的码元操作:对于码元S,我们用S[0]标示S内偶数位置上比特的级联,类似地我们用S[1]标示S内奇数位置上比特的级联(其中各位置是以0开始顺序编号的)。对于两个相等长度的比特串A和B,令(A|B)被定义为两倍长度的比特串C,其中C的位置2*i中的比特是A的位置i中的比特,而C的位置2*i+1中的比特是B的位置i+1中的比特。然后,我们定义
00*S=0
01*S=S
10 * S = ( S [ 1 ] | S [ 0 ] ⊕ S [ 1 ] )
11 * S = ( S [ 0 ] ⊕ S [ 1 ] , S [ 0 ] ) .
可以很快核实这确实是有效运算。可看出,以上所定义的所有运算在域2比特码元情形中相同。
上述交织变换可被视为交织变换的特例,其中域的元素的二进制长度与该码元按比特计的长度相一致,且域元素对码元的操作与该有限域中的乘法相同。
更一般地,如果K是幂度(degree)为d的GF(2)的扩展域,则可在其大小可被d除尽的码元上定义该域的一种运算。这种运算在作为1995年伯克利的国际计算机科学协会的技术报告编号TR-95-048出版的Bloemer、Kalfane、Karpinksi、Karp、Luby、以及Zuckerman的“An XOR-Based Erasure ResilientCoding Scheme(基于XOR的删除弹性编码方案)”中进行了描述。这种方案使用了对作为具有二进制项的d×d矩阵的域K的所谓“正规表示(regularrepresentation)”。
对于这些广义化,第一交织变换将长度为d*I比特的串的S分割为d个相等大小的部分,其中第一部分S[0]是S的第一I个比特,S[1]是S的下一I个比特,S[d-1]是S的最后I个比特。该变换对S的d个部分操作并生成被级联在一起以形成操作结果的d个部分。或者,第二交织变换将S分割成d个相等大小的部分,其中第一部分S[0]是S中以位置0开始的每个第d个比特的级联,第二部分S[1]是S中以位置1开始的每个第d个比特的级联,第d部分S[d-1]是S中以位置L-1开始的每个第d个比特的级联。该第二变换对S的d个部分操作(与第一变换完全相同)并生成被交织在一起以形成操作结果的d个部分。
注意,第一交织变换可通过将原始串S的连续比特一起XOR来计算,并且这对于软件实现是一优点,因为通常CPU自然地支持这种运算。另一方面,运算结果中特定位置中比特的值取决于原始串S的长度,并且如果希望在支持可变长度码元的硬件中实现该运算,这在某种程度上将是一缺点,因为硬件的操作将取决于码元长度而有所不同。注意,第二交织变换涉及原始串当中非连续比特的一起XOR,并且这对于软件实现而言在某种程度上是一缺点,因为CPU并不是将这种XOR作为自然操作来支持。不过,对码元的有限域元素直接工作的软件操作可用软件非常高效地实现,因此第二交织变换的软件实现是可能的。此外,对于第二交织变换,运算结果中特定位置中比特的值不依赖于原始串S的长度,如果想要以支持可变长度码元的硬件实现该操作那么这是一优点,因为硬件的操作可独立于码元长度。因此,第二交织变换相对于第一交织变换确实具有一定总体优势。
线性变换
“线性变换”的概念可参照简单或交织变换来定义。对于给定的整数m和n,由该运算导出的线性变换使用具有指定域中的项的矩阵空间将n个码元的向量映射为m个码元的向量。域F上的矩阵是项的2维集,其中每项都属于F。如果矩阵具有m行和n列,则其通常被称为m×n矩阵。对(m,n)被称为该矩阵的“格式”。具有相同格式的多个矩阵可使用底层域或环中的加法和减法而被加或减。如所公知的,格式(m,n)的矩阵可被乘以格式为(n,k)的矩阵。
在运算中,如果B标示格式为(m,n)的矩阵,且B[j,k]标示B中在位置(j,k)上的项,并且如果S标示包含码元S1,S2,...,Sn的列向量,而X标示包含码元X1,X2,...,Xm的列向量,则该变换可被表达成:
X = B ⊗ S
因此,以下关系成立:
对于从1到m的所有j, X j = B [ j , 1 ] * S 1 ⊕ B [ j , 2 ] * S 2 ⊕ . . . ⊕ B [ j , n ] * S n
其中,“*”标示简单变换或交织变换。
以上公式描述了在编码器或解码器中称为“简单变换过程”的从B和S计算X的过程,它可由以下步骤执行:
1.将j设为1以及Xj设为0。
2.对于k的值从1到n,作 X j = X j ⊕ B [ j , k ] * S k .
3.将j递增1。如果j大于m,则停止,否则转到步骤2。
这种线性变换在各种应用中是常见的。例如,在使用线性码来对一段数据或源块进行编码时,S可以是要编码的源块的源码元,X可以是S的经编码的版本,而B可以是该码的生成矩阵。例如在所用码是系统性的其它应用中,X可以是S的编码的冗余码元,而B可以是描述冗余码元对源码元的相关性的矩阵。
如本领域的技术人员所已知的,通过提供通用处理器内所执行的指令、通过专门设计成执行这些运算的硬件、或这两者的组合来执行上述运算的方法是已知的。在所有情形下,当使用了较大的有限域时,在所需的指令数目、所需的硬件量等方面的运算成本、硬件成本、运算所消耗的电功率和/或执行运算所需的时间一般也较大。特别地,在域GF(2)的情形中,所需操作等价于在通用处理器内广泛提供的逐位的AND和XOR运算,并且在需要时可在硬件中简单、快速且廉价地实现。相反,使用大于GF(2)的有限域的运算很少在通用处理器中直接提供并且要求专用硬件或大量处理器指令和存储器操作来实现。
多域纠删和纠错码
本文参照广义矩阵描述对多域纠删和纠错码的诸多特定实施例进行了描述。本方法仅被采用作为描述性工具而不表示描述本文所述的各实施例的唯一方法,也不应将其理解为限制本发明的范围。在广义描述中,这样来构造矩阵,其元素是取自一个或多个有限域。不同元素可取自不同的有限域,它们具有一种属性,即存在一单个域,可将所有的域嵌入在其中并且选择特定的这种嵌入。如以下进一步示出的,输出码元的部分或所有可与输入或冗余码元的部分相同,或者可与输入和冗余码元不同,这取决于所选择的特定实施例。
在码的输入码元与矩阵的某些列之间作出一一对应关系。在码的冗余码元与矩阵的剩余列之间作出又一个一一对应关系。此外,矩阵当中等于冗余码元数目的这些数目的行被指定为静态行。矩阵当中剩余的行被指定为动态行。在矩阵的动态行与码的输出码元之间作出一一对应关系。在该描述中,静态行表示在输入和冗余码元之间成立所需的约束,且这些静态行完全定义输入码元和冗余码元之间的关系,以使得输入码元和静态行的知识足以构建冗余码元。动态行表示在信道上实际发送的输出码元。在许多码中,输入和/或冗余码元自身被发送,且在本描述中这通过针对要传送的每个输入和冗余码元添加一动态行来表示,所述动态行在对应该所要求的输入或冗余码元的列中具有非零项而在其余列中具有零项。在某些实施例中,该非零项是单位元素。在其它实施例中,该非零项无需是单位元素。
上述矩阵形式可被用来确定用于将要在通信信道上从源向目的地传输的数据进行编码的方法,该方法包括从输入码元的有序集生成多个冗余码元,其中每个冗余码元是基于具有有限域上的系数的一个或多个输入码元和其它冗余码元的一组线性约束生成的,所述线性约束对应于矩阵描述的静态行,从输入和冗余码元的组合集生成多个输出码元,其中每个输出码元是被生成为该输入和冗余码元的组合集当中具有从有限域选出的系数的一个或多个的线性组合,所述线性约束对应于矩阵描述的动态行,以及发送这多个生成的输出码元中的至少部分。
相反,包括以上步骤的方法可用以上所述的这种矩阵形式来描述,其中静态行对应于对一个或多个输入码元和冗余码元的线性约束,而动态行对应于被用来形成输出码元的输入和冗余码元的线性组合。实际上,上述方法的实施例可以不涉及所述矩阵的显式或隐式表示或构造。
如所公知的,在矩阵的所有元素都取自域GF(2)的情形中,可以用这种方式来描述一大类的公知纠错和纠删码。例如,对于低密度奇偶校验(LDPC)码的情形,包括例如在V.Roca和C.Neumann在2004年6月作为INRIA研究报告RR-5225出版的题为“Design,Evaluation and Comparison of FourLarge Block FEC Codecs,LDPC,LDGM,LDGM Staircase and LDGMTriangle,plus a Reed-Solomon Small Block FEC Codec(LDPC、LDGM、LDGM阶梯和LDGM三角等四种大型块FEC编解码器加上Reed-Solomon小型块FEC编解码器的设计、评估和比较)”的文献(可在www.inrialpes.fr得到)(在此被称为“Roca”)中所述的情形,广义矩阵可通过将奇偶校验矩阵的每一行指定为静态行并如上所述地针对每个输入和冗余码元添加另一动态行来从奇偶校验矩阵构造。另一示例可使用如在Luby I和Luby II中所述的单级连锁反应码,其中矩阵中静态行的数目为零且动态行包括标准连锁反应矩阵。另一示例是MSCR码的使用,在这种情形中,这里的广义描述等价于这些码的标准矩阵表示。
较大域上的其它码也可以这种方式表示。例如,诸如从其中输入码元是源码元的Vandermonde矩阵导出的Reed-Solomon码,广义矩阵等于Vandermonde矩阵且所有行都是动态的,在这种情形下,每项是来自在其乘法群中至少具有所存在的总共的行和列数个元素的域的有限域元素,例如当总共的行和列数小于256时的有限域GF(256)。另一示例是从Vandermonde矩阵导出的诸如GF(256)的有限域上的系统性Reed-Solomon码,在这种情形下,输入码元是源码元,冗余码元是奇偶码元,而矩阵是Vandermonde矩阵的系统性形式内对应这些奇偶码元的行,且所有这些行被考虑为静态并且如上所述地针对每个源码元和奇偶码元添加额外动态行,因为这些正好是在信道上发送的码元。
如纠错和纠删码领域的技术人员所公知的,纠错和纠删的共同所需要属性包括低编码复杂度、低解码复杂度、低解码差错概率和低差错基底。码的复杂度是对该码进行编解码所需的计算资源的衡量。低复杂度在其中编码或解码将由诸如移动终端、消费电子设备、存储设备或可同时处理许多编码或解码操作的设备等资源受限设备执行的情况下具有由其具有价值。计算复杂度部分地是用以对该码进行编解码的矩阵的密度以及从其取用矩阵元素的有限域的大小的函数。密集矩阵通常会导致较高复杂度,且这已经导致许多基于稀疏矩阵的码设计,例如低密度奇偶校验码和连锁反应码。较大的有限域也会导致较高复杂度,这已经导致基于小型域——最常见的是GF(2)——的码设计。
该上下文中指的差错概率是不可能完全成功解码的概率。给定纠错或纠删码的差错概率是信道上所接收到的信息以及用于解码的特定算法的函数。在纠删码的情形中,只要接收少于输入码元数目的码元,则差错概率即为1。理想删除码具有这样的属性,即只要接收到大于或等于输入码元数目的码元则差错概率为零。其它码在这种情形下具有非零的失败概率。
已知理想删除码可使用密集矩阵来构造,特别是Reed-Solomon码。然而,在Reed-Solomon码的情形中,所需的域的大小是作为输入码元和冗余码元的数目的和的码大小的函数,并且这一事实与矩阵的密度一起导致通常较高的计算复杂度,特别是在码大小增长时。此外,在低密度码的情形中,已知可使用较大的有限域来降低纠错码(例如在M.C Davey和D.J.C MacKay的论文“LowDensity Parity Check Codes over GF(q)(GF(q)上的低密度奇偶校验码)”中所示例,该论文出现在IEEE Communications Letters,第二卷,第六期,165-167页,1998)和删除码的差错概率。另外,已知在低密度码中引入少量高密度矩阵行或列可改善差错概率,在差错概率与复杂度之间提供折衷(MSCR码和连锁反应码)。然而,所有这些码的缺点在于在低复杂度与低差错概率之间总是有显著的权衡。
对于许多FEC码——即LDPC码和连锁反应码和MSRC码,随着接收到比输入码元数目更多的输出码元,成功解码的差错概率以一定速率呈指数下降。这种码的差错基底是额外输出码元的接收使得差错概率以比在接收到的输出码元的数目刚开始超过输入码元的数目时慢得多的速率使差错概率下降时的差错概率。已知少量高密度行或列的使用和/或对矩阵使用较大的有限域可以较高的计算复杂度为代价得到较低的差错基底。许多具有低复杂度的已知纠错和纠删码的缺点是差错基底较高而不太理想。
这里,针对解决了上述部分缺点的纠错和纠删码的构造描述新的方法。用于对这些码进行高效编解码的方法是关于本文作为示例描述的特定实施例来呈现的。
如本文所述从一个以上可能的域的集合当中选择用于矩阵元素的域允许这样一种码的设计,即具有较大的域上码的低差错概率和差错基底的情况下保留小型域上码的低计算复杂度,由此表现了相对于现有技术的显著优势。
将在以下具体描述的一个优选实施例中,对于大多数行而言,各项选自GF(2),而对于剩余行,各项选自GF(256)。在另一实施例中,对于每一行,一项选自GF(256)而剩余元素选自GF(2)。
与本领域中从同一域中选择所有元素的码相比,有许多使用来自一个以上的域的元素的其它可能实施例,这将导致计算复杂度与差错概率和差错基底之间权衡的改善。
如本文所使用的,术语“文件”是指存储在一个或多个源上并将作为单元递送至一个或多个目的地的任何数据。因此,文档、图像和来自文件服务器或计算机存储设备的文件都是可递送的“文件”的示例。文件可以具有已知大小(诸如存储在硬盘上的一兆字节的图像)或可以具有未知大小(诸如从流送源的输出所取出的文件)。总之,文件是输入码元的序列,其中每个输入码元具有该文件中的位置和值。
如本文所使用的,术语“流送”是指在一个或多个源上存储或生成并按其生成的次序在每个时间点以特定的速率被递送至一个或多个目的地的任何数据。流送可以是固定速率或可变速率。因此,MPEG视频流送、AMR音频流送、以及用以控制远程设备的数据流送都是可递送的“流送”的示例。流送在每一时间点的速率可能是已知的(诸如每秒4兆比特)或未知的(诸如每个时间点的速率事先未知的可变速率流送)。总之,流送是输入码元的序列,其中每个输入码元在该流送中具有位置和值。
传输是通过信道将数据从一个或多个发送方传送至一个或多个接收方以递送文件或流送的过程。发送方有时也被称为编码器。如果一个发送方通过完美信道被连接至任意数目的接收方,则收到数据可以是输入文件或流送的精确副本,因为所有数据将被正确接收。这里,我们假定信道是不完美的,这是大多数现实世界信道的情形。在许多信道缺陷中,两种感兴趣的缺陷是数据删除和数据不完整性(可视为数据删除的特例)。数据删除发生在信道丢失或丢弃数据时。数据不完整性在以下情形中发生:接收方直到部分数据已经传过才开始接收数据,接收方在传输结束之前停止接收数据,接收方选择仅接收传送数据的一部分,和/或接收方间歇地停止并再次开始接收数据。作为数据不完整性的示例,移动卫星发送方可能正在传送表示输入文件或流送的数据并且在接收方在范围内之前开始传输。一旦接收方在范围内,就可以接收数据直至卫星移出范围,此时接收方可将其卫星盘式天线重新定向(在此期间不接收数据)以开始接收关于已移进范围的另一卫星所传送的同一输入文件或流送的数据。如从阅读该描述所应明了的,数据不完整性是数据删除的特例,因为接收方可将数据不完整性作为就像该接收方一直都在范围内但信道丢失了直到接收方开始接收数据时所有的数据这种情形来处理(且该接收方具有同样问题)。同时,如通信系统设计中所公知的,可检测的差错可通过简单地丢弃具有可检测差错的所有数据块或码元而被考虑成等价于删除。
在某些通信系统中,接收方接收多个发送方生成、或由一个发送方使用多个连接生成的数据。例如,为了加速下载,接收方可能同时连接至传送关于相同文件的数据的一个以上的发送方。作为另一示例,在多播传输中,可传送多个多播数据流送以允许各接收方连接至这些流送中的一个或多个以使得总传输速率与将它们连接至发送方的信道的带宽相匹配。在所有这些情形中,所要考虑的是确保所有传送的数据对于接收方独立使用,即多个源数据在各流送之间不是冗余的,即使在传输速率对于不同流送差异极大时以及在有随意的丢失模式时也是如此。
一般而言,通信信道是将发送方与接收方相连以进行数据传输之用。通信信道可能是实时信道,其中该信道在得到数据是将该数据从发送方移到接收方,或者通信信道可能是在从发送方到接收方的传送中存储部分或所有数据的存储信道。后者的示例是盘存储或其它存储设备。在该示例中,产生数据的程序或设备可被视为向存储设备传送数据的发送方。接收方是从该存储设备读取数据的程序或设备。发送方用以将数据放至存储设备上的机制、存储设备本身以及接收方用以从存储设备获得数据的机制一起形成信道。如果这些机制或存储设备有丢失数据的可能,则这将被示为通信信道中的数据删除。
当发送方和接收方相隔其中码元可能被删除的通信信道时,较优地是不传送输入文件或流送的精确副本,而是传送从该输入文件或流送生成的有助于恢复删除的数据(可能包括输入文件或流送本文的全部或部分)。编码器是处理该任务的电路、设备、模块或代码段。一种查看编码器的操作的方法是编码器从输入码元生成输出码元,其中输入码元值的序列代表输入文件或流送的块。每个输入码元将由此在该输入文件或流送块中具有位置以及值。解码器是从接收方接收到的输出码元重构输入码元的电路、设备、模块或代码段。在多级编码中,编码器和解码器被进一步分为各自执行不同任务的子模块。
在多级编码系统的实施例中,编码器和解码器可被分为各自执行不同任务的子模块。例如,在某些实施例中,编码器包括本文所称的静态编码器和动态编码器。如本文所使用的,“静态编码器”是从输入码元集生成多个冗余码元的编码器,其中冗余码元的数目是编码之前确定的。静态编码码的示例包括Reed-Solomon码、Tornado码、Hamming码、低密度奇偶校验(LDPC)码等。术语“静态解码器”在本文被用于表示可将由静态编码器编码的数据解码的解码器。
如本文所使用的,“动态编码器”是从输入码元集以及可能的冗余码元集生成输出码元的编码器。在本文所述的一个优选实施例中,可能的输出码元的数目大于输入码元数目的量级,且要生成的输出码元的数目无需固定。这种动态编码器的一个示例是连锁反应编码器,诸如Luby I和Luby II中所述的编码器。术语“动态解码器”在本文用来表示可将由动态编码器编码的数据解码的解码器。
多域编码的实施例无需限于特定类型的输入码元。通常,输入码元的值是从针对某一正数值M的2M个码元的字母表中选出的。在这种情形下,输入码元可用来自输入文件或流送的数据的M个比特的序列来表示。M的值常基于例如应用的使用、通信信道、和/或输出码元的大小来确定。另外,输出码元的大小常基于应用、信道、和/或输入码元的大小来确定。在某些情形下,如果输出码元值和输入码元值具有相同的大小(即可由相同数目的比特来表示或选自同一字母表)则编码过程可以被简化。如果是这种情形,则当输出码元值大小有限时输入码元值大小也是有限的。例如,可能希望将输出码元放在有限大小的分组中。如果关于与输入码元相关联的键有关的某些数据要被传送以在接收机处恢复该键,则输出码元较优地小到足以在一个分组中容纳输出码元值以及关于该键的数据。
作为示例,如果输入文件是若干兆字节的文件,则输入文件可被分裂成数千、数万、或数十万个输入码元,其中每个输入码元编码数千、数百、或仅数个字节。作为另一示例,对于基于分组的因特网信道,具有1024字节大小的有效载荷的分组可能是合适的(1字节为8比特)。在该示例中,假定每个分组包含一个输出码元和8字节的附属信息,8128比特((1024-8)*8)的输出码元大小将是合适的。因此,输入码元大小可被选为M=(1024-8)*8或8128个比特。作为另一示例,某些视频分发系统使用MPEG分组标准,其中每个分组的有效载荷包括188个字节。在该示例中,假定每个分组包含一个输出码元和4字节的附属信息,1472比特((188-4)*8)的输出码元大小将是合适的。因此,输入码元大小可被选为M=(188-4)*8或1472个比特。在使用多级编码的通用通信系统中,诸如输入码元大小(即,输入码元所编码的比特的数目M)等应用专属参数可以是根据应用所设的变量。
作为另一示例,对于使用可变大小源分组发送的流送,码元大小可被选成相当小,以使得每个源分组可用总大小至多略大于该源分组的整数个输入码元来覆盖。
每个输出码元具有一值。在以下我们所考虑的一优选实施例中,每个输出码元还具有与其相关联的标识符——被称为“键”。较优地,每个输出码元的键可被接收方容易地确定以允许接收方将一个输出码元从其它输出码元当中区别开。较优地,输出码元的键与所有其他输出码元的键不同。在现有技术中讨论了各种形式的键控。例如,Luby I描述了可在本文所述的实施例中采用的各种形式的键控。
在有数据删除的预料或接收方没有正好在传输开始和结束时开始和结束接收的情形下,多域多级编码尤其有用。后者情形在本文被称为“数据不完整性”。关于删除事件,多级编码享有Luby I中所述的连锁反应码的许多益处。特别地,多级码可以是喷泉码、或无率码,在这种情形下,针对固定值的输入码元集可生成比输入码元多许多倍的不同输出码元,并且可使用任意合适数目的不同输出码元来将输入码元恢复至所需的精确度。当使用了多域多级编码时,这些情形不会有害地影响通信过程,因为用多域多级编码生成的输出码元是信息加性的。例如,如果由于噪声突发而引起一百个分组丢失从而导致数据删除,则可在该突发之后拾取额外的一百个分组来代替所被删除的分组的丢失。如果由于接收机在发射机开始发射时没有调谐至该发射机而使得数千个分组丢失,则接收机可仅从任何其它传输期或甚至从另一发射机拾取这数千个分组。采用多域多级编码,接收机不局限于拾取任何特定的分组集合,所以它能从一个发射机接收某些分组,切换到另一发射机,丢失某些分组,错过给定传输的开始或结束,且仍然恢复输入文件或流送块。在无需接收机-发射机协调的情况下加入和离开传输的能力有助于简化通信过程。
在某些实施例中,使用多域多级编码传送文件或流送可包括从输入文件或流送块生成、形成或提取输入码元,计算冗余码元,将输入和冗余码元编码为一个或多个输出码元,其中每个输出码元是基于键独立于所有其它输出码元而生成的,以及在信道上向一个或多个接收方传送输出码元。另外,在某些实施例中,使用多域多级编码接收(并重构)输入文件或流送块的副本可包括从一个或多个数据流送接收输出码元的某些集或子集,并从接收到的输出码元的值和键来解码输入码元。
本文所述的合适FEC删除码可被用来克服上述困难并且将在包括多媒体广播和多播系统及服务的众多领域中找到用途。以下称为“多域多级连锁反应码”的FEC删除码具有满足这些系统和服务的许多当前和将来要求的属性。
多域多级连锁反应码的某些基本属性是对于任何分组丢失情况和对于任何相关大小的源文件或任何相关速率的流送的递送:(a)每个个体接收机设备(“RD”)的接收开销被最小化;(b)将源文件递送至任意数目的RD所需的总传输时间可被最小化;(c)在选择合适的传输调度的情况下对于相对于输入码元的数目所发送的输出码元的数目能够使得递送至任意数目的RD的流送的质量被最大化。RD可能是手持设备,被嵌入到车辆中、便携式的(即,可移动但在使用时通常不移动)或者被固定到一位置上。
解码所需的工作存储器的量较低且仍然能够提供以上属性,且编解码所需的计算量最小。在该文档中,我们为多域多级连锁反应码的某些变形提供了简易实现的描述。
多域多级连锁反应码是喷泉码,即可在过程中根据需要生成编码分组,其中每个包含对于恢复源文件或流送块同样有用的唯一编码码元。相比于其它类型的FEC码,使用喷泉码有许多优点。一个优点是不论分组丢失情况和RD可用性如何,喷泉码将每个RD用以重构源文件或流送块所需要接收的编码分组的数目最小化。这即使在较差的分组丢失情况下和当例如移动RD在较长的文件下载会话期间仅间歇地开启或可用时也是如此。
另一优点是正好生成所需要的数目个编码分组的能力,从而在传输正在进行时关于在过程中生成多少编码分组作出决策。这在例如有来自RD的指示它们是否接收到足以恢复源文件或流送块的反馈的情况下是有用的。当分组丢失情况比预期的较轻时,传输可以及早终止。当分组丢失情况比预期更严重或RD比预期更频繁地不可用时,传输可被无缝地延长。
另一优点是逆多路复用的能力。逆多路复用是在RD能够组合所接收到的在独立发送方处生成的编码分组以重构源文件或流送块时。逆多路复用的一个实际用途将在以下参照从不同发送方接收编码分组来进行描述。
在将来的分组丢失、RD可用性以及应用状况难以预测的情况下,选择尽可能灵活的FEC方案以在不可预测的状况下良好工作是非常重要的。多级连锁反应码提供了其它类型的FEC码所无法媲美的灵活性程度。
多域多级码的又一优点是该码的差错概率和差错基底比具有等价计算复杂度的先前已知的码低得多。同样,多域多级连锁反应码的计算复杂度比具有等价差错概率和/或差错基底的先前已知的码低得多。
多域多级连锁反应码的另一优点是诸如码元大小和域大小等参数可以灵活选择,以在计算复杂度与差错概率和/或差错基底之间实现任何所需的平衡。
系统概述
图1是使用多级编码的通信系统100的框图。在通信系统100内,向输入码元生成器110提供输入文件101或输入流105。输入码元生成器110从输入文件或流生成一个或多个输入码元的序列(IS(0),IS(1),IS(2),...),每个输入码元有值和位置(在图1内用括号内的整数表示)。如上所述,对于输入码元的可能值,即其字母表一般是2M个码元,使得每个输入码元编码为输入文件的M个比特。值M一般通过使用通信系统100确定,但通用系统可以包括输入码元生成器110的码元大小输入,使得M可以随每次使用而改变。输入码元生成器110的输出可以被提供给编码器115。
静态键生成器130生成静态键S0,S1...的流送。生成的静态键数一般是有限的,且取决于编码器115的特定实施例。静态键的生成在以下将接着更详细地描述。动态键生成器120为每个要由编码器115生成的输出码元生成一动态键。每个动态键被生成使得同一输入文件或流送块的动态键的很大部分是唯一的。例如,Luby I描述可以使用的键生成器的实施例。动态键生成器120和静态键生成器130的输出被提供给编码器115。
从动态键生成器120提供的每个键I,编码器115从输入码元生成器提供的输入码元生成输出码元,其值为B(I)。编码器115的操作在以下将详述。每个输出码元的值是基于其键、一个或多个输入码元的某些函数以及可能从输入码元计算出的一个或多个冗余码元被生成。产生特定输出码元的输入码元和冗余码元的集合在此被称为输出码元的“关联码元”或就是其“关联”。函数(“值函数”)的选择以及相关是根据以下更详细描述的过程完成的。一般,但不总是,M对于输入和输出码元是相同的,即它们都编码为相同数目的比特。
在某些实施例中,输入码元数K被编码器115用于选择关联。如果K事先未知,诸如输入是流文件,则K可以只是一个估计。值K还可以被编码器115用于为输入码元和任何由编码器115生成的中间码元分配存储。
编码器115提供输出码元给发射模块140。发射模块140还被提供了来自动态键生成器120的每个该种输出码元的键。发射模块140发送输出码元,且取决于使用的键方法,发送模块140可能在信道145上将某些关于发送的输出码元的键的某些数据发送到接收模块150。信道145被假设为删除信道,但这不是通信系统100的合适操作的需要。模块140、145和150还可以是任何合适的硬件组件、软件组件、物理介质或其任何组合,只要发射模块140用于将输出码元和任何关于键需要的数据发送到信道145,且接收模块150用于从信道145接收码元,以及潜在的某些关于其键的数据。K的值如果被用于确定关联,则可以在信道145上被发送,或可以事先按照编码器115和解码器155的同意而被设定。
如上解释的,信道145可以是实时信道,诸如通过因特网的路径或从电视发射机到电视接收机或从一点到另一点的电话连接的广播链路,或信道145可以是存储信道,诸如CD-ROM、盘驱动、万维网站等。信道145甚至可以是实时信道和存储信道的组合,诸如当个人将输入文件在电话线上从个人计算机发送到因特网服务提供商(ISP)时形成的信道,输入文件被存储在万维网服务器上,接着通过因特网被发送到接收者。
由于信道145被假设是删除信道,通信系统100不假设从接收模块150出来的输出码元和进入发射模块140的输出码元间的一对一对应。实际上,当信道145包括分组网络时,通信系统100可能甚至不能假设在通过信道145时保留了任何两个或多个分组的相对顺序。因此,使用一个或多个上述的键方案的输出码元的键被确定,且不需要按输出码元离开接收模块150的顺序确定。
接收模块150将输出码元提供给解码器155,且任何数据接收模块150接收这些输出码元的键,这些键被提供给动态键再生器160。动态键再生器160再生接收到的输出码元的动态键并将这些动态键提供给解码器155。静态键生成器163再生静态键S0,S1,...并将其提供给解码器155。静态键生成器访问在编码和解码过程中都使用的随机数生成器135。如果随机数就在该种设备上生成,则这可以是以对该相同物理设备访问的形式,或是以该相同算法访问的形式来用于生成随机数以获得相同的行为。解码器155使用动态键生成器160和静态键生成器163提供的键连同对应的输出码元以恢复输入码元(同样IS(0),IS(1),IS(2),...)。解码器155将恢复的输入码元提供给输入文件重编器165,该重编器生成输入文件101或输入流105的副本170。
连锁反应编码器生成的输出码元的一个属性是接收机能够一旦已经接收到足够的输出码元就能够恢复原始文件或原始流送的块。特别地,为了以较高概率恢复原始K个输入码元,接收机需要近似K+A个输出码元。比率A/K被称为“相对接收开销”。相对接收开销取决于输入码元的数目、以及解码器的可靠性。Luby I、Luby II以及Shokrollahi I提供了可在特定实施例中使用的系统和方法的教学。然而应该理解的是,这些系统和方法并不是本发明所必需的,也可使用许多其它变形、修改、或替换方案。
编码器
图2是图1内示出的编码器115的一个特定实施例框图。编码器115包括静态编码器210、动态编码器220以及冗余计算器230。静态编码器210接收以下输入:a)由输入码元生成器110提供并存储在输入码元缓冲器205内的原始输入码元(IS(0),IS(1),...,IS(K-1));b)原始输入码元数K;c)由静态键生成器130提供的静态键S0,S1,...;以及d)冗余码元数R。在接收到这输入后,静态编码器205计算R个冗余码元RE(0),RE(1),...,RE(R-1),如下描述。一般但不总是冗余码元与输入码元有相同大小。在一特定实施例中,静态编码器210生成的冗余码元被存储在输入码元缓冲器205内。输入码元缓冲器205可以只是逻辑的,即文件或流送块可以物理地被存储在一个地方,而码元缓冲器205内的输入码元的位置可能只是原始文件或流送块内的这些码元位置的重命名。
动态编码器接收输入码元和冗余码元,且如以下详述地生成输出码元。在一实施例中,其中冗余码元被存储到输入码元缓冲器205内,动态编码器220从输入码元缓冲器205接收输入码元和冗余码元。
冗余计算器230从输入码元的数目K计算冗余码元的数目R。该计算在以下详述。
静态编码器概览
静态编码器210的一般操作参考图3和4示出。图3是说明静态编码方法的一实施例的简化流程图。在步骤305,变量j跟踪已生成多少冗余码元,该值被设定为零。然后,在步骤310,第一冗余码元RE(0)作为输入码元IS(0),...,IS(K-1)的至少某些的函数F0被计算。然后在步骤315,变量j递增。接着,在步骤320,测试是否所有的冗余码元均被生成了(即j是否大于R-1?)。如果是,则流程结束。否则,流程进行到步骤325。在步骤325,RE(j)作为输入码元IS(0),...,IS(K-1)和先前生成的冗余码元RE(0),...,RE(j-1)的函数Fj被计算,其中Fj不需要是取决于每个输入码元或每个冗余码元的函数。步骤315、320和325经重复直到已计算了R个冗余码元。
再次回到图1和2,在某些实施例中,静态编码器210从静态键生成器130接收一个或多个静态键S0,S1,...。在这些实施例中,静态编码器210使用静态键以确定某些或所有的函数F0,F1,...Fj-1。例如,静态S0可以用于确定函数F0,静态键S1可以被用于确定函数F1等。或一个或多个静态键S0,S1,...可以被用于确定函数F0,一个或多个静态键S0,S1,...可以用于确定函数F1等。在其他实施例中,不需要静态键,因此不需要静态键生成器130。
回到图2和3,在某些实施例中,静态编码器210生成的冗余码元可以被存储在输入码元缓冲器205中。图4是静态编码器210的一实施例的操作的简化说明。尤其是,静态编码器210用从输入码元缓冲器205接收到的输入码元IS(0),...,IS(K-1),RE(0),...,RE(j-1)的函数Fj生成冗余码元RE(j),并将其存储回输入码元缓冲器205。函数F0,F1,...FR-1的准确形式取决于特定应用。一般但不总是,函数F0,F1,...FR-1包括某些或所有它们对应的参变量的异或。如上描述,这些函数可以实际上采用或可不采用图1的静态键生成器130生成的静态键。例如,在以下描述的一个特定实施例,开始一些函数实现Hamming码且不使用任何静态键S0,S1,...,而剩余函数实现低密度奇偶校验编码并显式使用静态键。
多级编码器概览
再次参照图2,动态编码器220接收输入码元IS(0),...,IS(K-1)以及冗余码元RE(0),...,RE(R-1)以及要生成的每个输出码元的键I。该集合包括原始输入码元及冗余码元,此后会被称为“动态输入码元”集合。图5是动态编码器的一个实施例的简易框图,包括权重选择器510、关联器515、值函数选择器520以及计算器525。如图5所示,K+R个动态输入码元被存储在动态码元缓冲器505中。实际上,动态编码器500执行图6中所示的动作,即作为所选输入码元的某一值函数生成输出码元值B(I)。
图7是静态编码器的一个特定实施例的简易框图。静态编码器600包括参数计算器605、低密度奇偶校验(LDPC)编码器610、以及高密度奇偶校验(HDPC)编码器620。LDPC编码器610被耦合用以从输入码元缓冲器625接收输入码元IS(0),...IS(K-1),输入码元的数目K、以及参数E。作为响应,LDPC编码器610根据LDPC码生成E个冗余码元LD(0),...,LD(E-1)。接着,HDPC编码器620被耦合以接收K+E个码元IS(0),...IS(K-1),LD(0),...,LD(E-1)中的多个以及参数D来根据HDPC码生成D个冗余码元HA(0),HA(1),...,HA(D-1)。
图8示出了采用图7中所示的静态编码器的一个实施例的操作。
图9是示出了诸如图7的参数计算器605的参数计算器的一个实施例的简易流程图,当HDPC码为Hamming码时该参数计算器计算如上所述的参数D和E。首先,在步骤705,参数D被初始化为1。然后,在步骤710,确定2D-D-1是否小于K。如果为否,则流程行进到步骤730。如果为是,则流程行进到步骤720,其中参数D递增。然后,流程回到步骤710。一旦D已经确定,则在步骤730将参数E计算为R-D-1。
图10是根据本发明的一个实施例的编码器的简易流程图,现在将对其进行描述。首先在步骤805,变量i被初始化为0。变量i跟踪已经生成的冗余码元的数目。在步骤810,数目t被计算为大于或等于K/2的最小奇数整数。在步骤815,基于K、t、以及静态键Si生成值P1,P2,...,Pt。值P1,P2,...,Pt指示将被用来生成冗余码元的输入码元的位置。在一个特定实施例中,诸如图5的关联器515的关联器被用来生成P1,P2,...,Pt。特别地,值t可被提供作为W(I)输入,值K可被提供作为K+R输入,而静态键Si可被提供作为键I输入。应该注意,许多不同的t值将产生类似的编码效果,因此该特定选择仅是示例。在步骤820,RE(i)的值被计算为值IS(P1),IS(P2),...,IS(Pt)的XOR。在步骤825,变量i被递增1以准备下一冗余码元的计算,而在步骤830,确定是否已生成所有的冗余码元。如果为否,则流程返回步骤815。
图11是示出了根据本发明的解码器的一个实施例的简易框图。解码器900可被用于例如实现图1的解码器155。
解码器900包括动态解码器905和静态解码器910。动态解码器905恢复的输入码元和冗余码元被存储在重构缓冲器915中。一旦完成动态解码,静态解码器910尝试恢复动态解码器905所未恢复的任何输入码元(若有)。特别地,静态解码器910从重构缓冲器915接收输入码元和冗余码元。
图12是示出了根据本发明的用于解码的方法的一个实施例的简易流程图。在步骤1005,解码器接收到Q个输出码元。Q的值可取决于输入码元的数目和所使用的该具体的动态编码器。Q的值还取决于解码器能够恢复输入码元所需达到的精确度。例如,如果希望解码器能够以较高概率恢复所有输入码元,则Q应被选成大于输入码元的数目。特别地,在特定实现中,当输入码元的数目较大时,Q可以比原始输入码元的数目大不超过3%。在其它应用中,当输入码元的数目较小时,Q可以比输入码元的数目大至少10%。特别地,Q可被选为输入码元的数目K加上数目A,其中A被选成确保解码器能够以较高概率再生所有输入码元。数目A的确定在以下具体描述。如果解码器不能解码所有输入码元(或者有时或者总是)是可接受的,则Q可以小于K+A、等于K、或甚至小于K。显然,总体编码系统的一个目标将是尽可能地减小数目Q,同时保持解码过程关于所需精确度的成功有较佳的概率保证。
在步骤1010,动态解码器905从Q个接收到的输出码元再生输入码元和冗余码元。应该理解的是,步骤1005和1010可基本同时执行。例如,动态解码器905可在解码器接收Q个输出码元之前再生输入码元和冗余码元。
在动态解码器905已经处理Q个输出码元之后,则确定输入码元是否已被恢复到所需的精确度。所需精确度可以是例如所有输入码元、或者某一数目或百分比地少于所有输入码元。如果是,则流程结束。如果否,则流程行进到步骤1020。在步骤1020,静态解码器910尝试恢复动态解码器未能恢复的任何输入码元。在静态编码器910已经处理动态编码器905所恢复的输入码元和冗余码元之后,则流程结束。
图13是根据本发明的用于解码的方法的另一实施例的简易流程图。该实施例类似于关于图11所述的实施例,并且包括相同步骤1005、1010、1015、和1025。但在步骤1025之后,流程行进到步骤1030,其中确定输入码元是否已经被恢复到所需的精确度。如果是,则流程结束。如果否,则流程行进到步骤1035。在步骤1035,接收到一个或多个额外输入码元。然后,流程行进返回步骤1010,从而使得动态解码器905和/或静态解码器910可尝试恢复剩余未恢复的输入码元。
图14是示出根据本发明的用于解码的又一实施例的简易流程图。在步骤1055中,解码器接收到输出码元,并且在步骤1060,动态解码器905从接收到的输出码元再生输入码元和冗余码元。然后,在步骤1065,确定动态解码是否应结束。该确定可基于经处理的输出码元的数目、所恢复的输入码元的数目、额外输入码元正被恢复的当前速率、处理输出码元所费的时间等中的一个或多个。
在步骤1065,如果确定将不停止动态解码,则流程行进返回到步骤1055。但如果在步骤1065确定要结束动态解码,则流程行进到步骤1070。在步骤1070,确定输入码元是否已被恢复到所需的精确度。如果是,则流程结束。如果否,则流程行进到步骤1075。在步骤1075,静态解码器910尝试恢复动态解码器905未能恢复的任何输入码元。在静态编码器910已经处理动态编码器905所恢复的输入码元和冗余码元之后,流程结束。
图15示出了根据本发明的动态解码器的一个实施例。动态解码器1100包括如图5中所示的动态编码器500的相似组件。解码器1100类似于LubyI和Luby II中所述连锁反应解码器的实施例。动态解码器1100包括权重选择器510、关联器515、值函数选择器520、输出码元缓冲器1105、减缩器1115、重构器1120以及重构缓冲器1125。
图16是示出了静态解码器的一个实施例的简易框图。该实施例可在数据用诸如参照图7所述的静态编码器编码时使用。静态解码器1200包括LDPC解码器1205和Hamming解码器1210。LDPC解码器1205从重构缓冲器1215接收输入码元和冗余码元,并重试恢复重构缓冲器1215当中在动态解码器的解码步骤之后未能恢复的那些码元。在某些实施例中,重构缓冲器1215是重构缓冲器1125(图15)。
LDPC解码器和HDPC解码器的许多变形是本领域的技术人员已知的,并且可在根据本发明的各种实施例中采用。在一个特定实施例中,HDPC解码器是使用高斯消去算法实现的。高斯消去算法的许多变形是本领域的技术人员所公知的,并且可在根据本发明的各种实施例中采用。
HDPC编码的变形
现在描述另一类型的HDPC编码。在该HDPC编码的实施例中,用于从给定数据集创建冗余码元的数学运算是基于有限域中的运算。
在该HDPC编码的实施例中,有限域的元素被用来获得冗余码元HD[0],...,HD[D-1]。这些码元是通过如上所述地在码元IS[0],...,IS[K-1],LD[0],...,LD[E-1]与有限域的元素之间定义乘法过程获得的。
HDPC编码
当使用HDPC编码时,该码可通过有限域GF(2M)上的生成矩阵来描述。在码是系统性的时,在优选实施例中即这种情形,生成矩阵可以仅使用K+E个输入码元IS[0],...,IS[K-1],LD[0],...,LD[E-1]与冗余码元HD[0],...,HD[D-1]之间的关系来描述。这一被称为G的矩阵其形式为Dx(K+E)。如果X标示包括码元HD[0],...,HD[D-1]的列向量且S标示包括码元IS[0],...,IS[K-1],LD[0],...,LD[E-1]的列向量,则得到
Figure A200780013972D00341
。以下描述矩阵G的更具体的实施例以及用于高效计算码元的各种方法。
变形
上述多级连锁反应码不是系统性码,即源块的所有原始源码元不一定要在发送的编码码元当中。然而,系统性FEC码对于文件下载系统或服务是有用的,且对于流送系统或服务非常重要。如以下实现中所示的,一种经过修改的码可被制成系统性的且仍然保持喷泉码和其它所述属性。
为何容易使用多级码构造各种补充服务的一个原因在于它可以组合从多个发送方接收到的编码码元以重构源文件或流送而无需各发送方之间的协调。唯一要求是发送方使用不同的键集来生成它们在编码分组中向该码发送的编码码元。实现这一点的方法包括指定不同范围的键空间以供每个发送方使用,或在每个发送方处随机地生成键。
作为这种能力使用的示例,考虑向文件下载服务提供一种补充服务,以允许没有接收到足够的编码分组的多级连锁反应码,可从文件下载会话请求例如经由HTTP会话从制作发送方发送附加的编码分组,以重构源文件。制作发送方从源文件生成编码码元并例如使用HTTP发送它们,且所有这些编码码元可与从文件下载会话接收的编码码元相组合以恢复源文件。使用该方法允许不同的发送方提供递增的源文件递送服务而无需各发送方之间的协调,并确保每个个体接收机仅需要接收恢复每个源文件所要的最少数目的编码分组。
在源码元的数目较小时——例如在数百到几千个源码元的量级时,如上所述的多级连锁反应码的解码可要求相对较大的开销。在这种情形下,一种不同的解码器是较优的,诸如Shokrollahi III中所公开的解码器。如以下实现所示,可以为本文所公开的这类码——使用Shokrollahi III中公开的码特征和概念并在维持解码效率的同时为非常小数目的源码元提供了低解码误差概率——设计了一种经修改的解码算法。
多域多级码的各级的实现
FEC方案定义
使用这些技术的分组可用诸如包括源块编号(SBN)(该分组内的编码码元相关的源块的16比特整数标识符)和编码码元ID(ESI)(该分组内的编码码元的16比特整数标识符)的四个八位位组的FEC有效载荷ID等报头信息来表示。源块编号和编码码元标识符的一种合适解释在以下B节中定义。FEC对象传输信息可包括FEC编码ID、传送长度(F)以及以下定义的参数T、Z、N和A。参数T和Z是16比特无符号整数,N和A是8比特无符号整数。根据需要,可使用其它整数。
前向纠错的FEC编码方案在以下章节定义。其定义了两种不同的FEC有效载荷ID格式,一种用于FEC源分组以及另一种用于FEC修复分组,但非系统性码的变形也是可能的。
源FEC有效载荷ID可包括源块编号(SBN)(该分组内的编码码元相关的源块的16比特整数标识符)和编码码元ID(ESI)(该分组内的编码码元的16比特整数标识符),而修复FEC有效载荷ID可包括源块编号(SBN)(该分组内的修复码元相关的源块的16比特整数标识符)、编码码元ID(ESI)(该分组内的修复码元的16比特整数标识符)、以及源块长度(SBL)(16比特,表示源块中源码元数目)。源块编号、编码码元标识符以及源块长度的解释在以下定义。
FEC对象传输信息可包括FEC编码ID、以码元计的最大源块长度、和以字节计的码元大小。码元大小和最大源块长度可包括四个八位位组——码元大小(T)(16比特,表示以字节计的编码码元的大小的)和最大源块长度(16比特,表示以码元计的源块最大长度的)。
以下章节规定了系统性多域MSCR前向纠错码。多域MSCR码是喷泉码,即编码器可在过程中从块的源码元生成如所需要的数目的编码码元。解码器能够从仅略多于源码元数目的编码码元集恢复出源块。本文档中描述的码是系统性码,即原始源码元未经修改的与一定数目的修复码元被从发送方发送到接收方。
B.1定义、码元和缩写
B.1.1定义
出于描述的目的,应用以下术语和定义。
源块:被一起考虑以作MSCR编码之用的K个源码元的块。
源码元:在编码过程中使用的最小数据单元。源块内的所有源码元具有相同大小。
编码码元:包括在数据分组中的码元。编码码元包括源码元和修复码元。从源块生成的修复码元具有与源块的源码元相同的大小。
系统性码:其中源码元被包括作为针对源块所发送的编码码元的一部分的码。
修复码元:针对源块所发送的编码码元当中不是源码元的那些码元。修复码元是基于源码元生成的。
中间码元:使用逆编码过程从源码元生成的码元。随后直接从中间码元生成修复码元。编码码元不包括中间码元,即中间码元不包括在数据分组中。
码元:数据单元。以字节计的码元的大小被称为码元大小。
编码码元组:一起发送的一组编码码元,即同一分组内其与源码元的关系可从单个编码码元ID导出的一组编码码元。
编码码元ID:定义编码码元组的各码元与源码元之间的关系的信息。
编码分组:包含编码码元的数据分组
子块:源块有时被分裂为数个子块,其中每一个子块小到足以在工作存储器中被解码。对于包括K个源码元的源块,每个子块包括K个子码元,源块的每个码元由来自每个子块的一个子码元构成。
子码元:码元的一部分。源块中有多少个子块,每个源码元就由多少个子码元构成。
源分组:包含源码元的数据分组。
修复分组:包含修复码元的数据分组。
B.1.2.码元
 
i,j,x,h,a,b,d,v,m 表示正整数
ceil(x) 标示大于或等于x的最小正整数
choose(i,j) 标示可从i个对象当中选出j个对象而不重复的方法的数目
floor(x) 标示小于或等于x的最大正整数
i%j 标示i mod j
X^Y 标示,对于等长的比特串X和Y,X和Y的逐位异或
A 标示码元对准参数。码元和子码元大小限于A的倍数
AT 标示矩阵A的转置
A-1 标示矩阵A的逆矩阵
K 标示单个源块中的码元数目
 
KMAX 标示能够在单个源块中的最大码元数目。设为8192。注意可使用其它值。
L 标示单个源块的预编码码元的数目
S 标示单个源块的LDPC码元的数目
H 标示单个源块的一半码元的数目
C 标示中间码元数组C[0],C[1],C[2],...,C[L-1]
C′ 标示源码元数组C′[0],C′[1],C′[2],...,C′[K-1]
X 非负整数值
V0,V1 两个4字节整数数组V0[0],V0[1],...,V0[255];V1[0],V1[1],...,V1[255]
Rand[X,i,m] 伪随机数生成器
Deg[v] 幂度生成器
LTEnc[K,C,(d,a,b)] LT编码码元生成器
Trip[K,X] 三元组生成器函数
G 编码码元组内码元的数目
N 源块内子块的数目
T 按比特计的码元大小。如果源块被分割为子块,则T=T′·N
T′ 按比特计的子码元大小。如果源块未被分割为子块,则T′是无关的。
F 按比特计的文件下载的大小
I 按比特计的子块的大小
P 对于文件下载,按比特计的每个分组的有效载荷大小,被用在文件下载传输参数的一个较优推导中。对于流送,按比特计的每个修复分组的大小,被用在流送传输参数的一个较优推导中。
Q Q=65521,即Q小于216的最大质数。注意也可使用其它值代替216
Z 对于文件下载,源块的数目
J(K) 与K相关联的系统性索引
G 标示任何生成器矩阵
IS 标示SxS单位矩阵
 
0SxH 标示SxH零矩阵
B.1.3缩写
出于本文献的目的,应用以下缩写:
ESI:编码码元ID
LDPC:低密度奇偶校验
LT:Luby变换
SBN:源块编号
SBL:源块长度(以码元为单位)
B.2.概览
MSCR前向纠错码可应用于文件递送和流送应用两者。专属于这些应用的每一个的MSCR码特征在本文的B.3和B.4节中讨论。
系统性MSCR码的组件是B.5节中描述的基本编码器。首先,描述如何从原始源码元导出中间码元集的值以使得中间码元的知识足以重构源码元。其次,编码器产生各自为数个中间码元的异或的修复码元。编码码元是源码元和修复码元的组合。修复码元是以使得中间码元以及由此源码元能够从任何充分大的编码码元集恢复的方式产生的。
本文定义了系统性MSCR码编码器。众多可能的解码算法是可能的。B.6节提供了高效解码算法。
中间码元和修复码元的构造部分地基于B.5中所述的伪随机数生成器。该生成器是基于发送方和接收方都可得到的512个随机数的固定集合。附录B.1和B.2中提供的是这些数的示例集合。
最后,从源码元构造中间码元是由“系统性索引”掌控的。在附录A中针对从4个源码元到KMAX=8192个源码元的源块大小示出了系统性索引的值的示例集合。
B.3.文件下载
B.3.1.源块构造
B.3.1.1.概要
为了对源文件应用MSCR编码器,文件可被分裂为Z≥1个块,被称为源块。MSCR编码器独立于每个源块被应用。每个源块由唯一的整数源块编号(SBN)来标识,其中第一源块具有SBN为零,第二源块具有SBN为一,以此类推。每个源块被分为各自大小为T个字节的K个源码元。每个源码元由唯一的整数编码码元标识符(ESI)标识,其中源块的第一源码元具有ESI零,第二源码元具有ESI一,以此类推。
具有K个源码元的每个源块被分为小到足以在工作存储器中被解码的N≥1个子块。每个子块被分为大小为T′的K个子码元。
注意K的值不一定对于文件的每个源块都相同,且T′的值对于源块的每个子块并不一定相同。然而,码元大小T对于文件的所有源块是相同的,且码元的数目K对于源块的每个子块是相同的。以下B.3.1.2节描述了将文件精确分割成源块和子块。
图17示出了放在两维数组中的示例源块,其中每项是T′字节的子码元,每行是子块且每列是源码元。在该示例中,T′的值对于每个子块相同。每个子码元项中所示的数字指示它们在源块内的原始次序。例如,编号为K的子码元包含源块的字节T′·K到T′·(K+1)-1。然后,源码元i是来自子块中每一个的第i个子码元的级联,这些子码元对应于源块当中编号为i,K+i,2·K+i,...,(N-1)·K+i。
B.3.1.2源块和子块分割
源块和子块的构造是基于5个输入参数F、A、T、Z和N以及函数Partition(分割)[]确定的。这五个输入参数定义如下:
F    按比特计的文件大小
A    按比特计的码元对准参数
T    按比特计的码元大小——优选地为A的倍数
Z    源块的数目
N    每个源块中子块的数目
这些参数可被设成使得ceil(ceil(F/T)/Z)≤KMAX。这些参数的一些适当推导的示例在B.3.4节中给出。
函数Partition[]取用一对整数(I,J)作为输入并导出四个整数(IL,IS,JL,JS)作为输出。具体而言,Partition[I,J]的值是四个整数(IL,IS,JL,JS)的序列,其中IL=ceil(I/J),IS=floor(I/J),JL=I-IS·J,以及JS=J-JL。Partition[]导出用于将大小为I的块分割成J个近似相等大小的块。具体而言,长度为IL的JL个块和长度为IS的JS个块。
源文件可被如下分割成源块和子块:
令,
Kt=ceil(F/T)
(KL,KS,ZL,ZS)=Partition[Kt,Z]
(TL,TS,NL,NS)=Partition[T/A,N]
则,文件可被分割成Z=ZL+ZS个连续源块,前ZL个源块各自具有长度KL·T个字节,剩余ZS个源块各自具有KS·T个字节。
如果Kt·T>F,则出于编码目的,最后的码元可在末尾处用Kt·T-F个零字节填充。
接着,每个源块可被划分为N=NL+NS个连续子块,前NL个子块各自包括大小为TL·A的K个连续子码元,而剩余的NS个子块各自包括大小为TS·A的K个连续子码元。码元对准参数A确保各子码元总是为A个字节的倍数。
最后,源块的第m个码元包括来自N个子块中每一个的第m个子码元的级联。
B.3.2.编码分组构造
B.3.2.1.概要
每个编码分组包含源块编号(SBN)、编码码元ID(ESI)和编码码元。每个源块相互间独立地进行编码。各源块从零连续编号。从0到K-1的编码码元ID值标识各源码元。从K向前的编码码元ID标识修复码元。
B.3.3.2.编码分组构造
每个编码分组较优地或者包含源码元(源分组)或包含修复码元(修复分组)。分组可包含来自同一源块的任意数目的码元。在分组中的最后一个码元包括出于FEC编码目的而添加的填充字节的情况下,这些字节无需被包括在该分组中。否则,可包括仅所有码元。
每个源分组中所携带的编码码元ID,X,是该分组中所携带的第一个源码元的编码码元ID。分组中的后续源码元顺序地具有编码码元ID,X+1到X+G-1,其中G是该分组中码元的数目。
类似地,被置于修复分组中的编码码元ID,X,是该修复分组中第一个修复码元的编码码元ID,且该分组中后续修复码元顺序地具有编码码元IDs,X+1到X+G-1,其中G是该分组中码元的数目。
注意接收方无需知道修复码元的总数。被置于具有ESIX的修复分组中的修复码元的G个修复码元三元组(d[0],a[0],b[0]),...,(d[G-1],a[G-1],b[G-1])是使用B.5.3.4中定义的三元组生成器如下计算出的:
对于每个i=0,...,G-1
(d[i],a[i],b[i])=Trip[K,X+i]
将被置于具有ESIX的修复分组中的G个修复码元是使用中间码元C和LT编码器LTenc[K,C,(d[i],a[i],b[i])]如B.5.3节中所述地基于修复码元三元组计算出的。
B.3.3.传输
该节描述MSCR编码器/解码器与利用MSCR前向纠错进行文件递送的任何传输协议之间的信息交换。
用于文件递送的MSCR编码器和解码器要求来自传输协议的以下信息:以字节计的文件大小F、码元对准参数A、为A的倍数且以字节计的码元大小、源块数目Z、每个源块中子块的数目N。用于文件递送的MSCR编码器另外要求被编码的F个字节的文件。
MSCR编码器向传输协议提供编码分组信息,包括针对每个分组的SBN、ESI以及编码码元。传输协议可将该信息透明地传达给MSCR解码器。
B.3.4.参数具体示例的细节
B.3.4.1参数导出算法
该节提供用于四个传输参数——提供良好结果的A、T、Z和N——的导出的示例。这些是基于以下输入参数:
F   以字节计的文件大小
W   以字节计的子块大小的目标指标
P   以字节计的最大的分组有效载荷大小——被假定为A的倍数
A   以字节计的码元对准因子
KMAX  每源块的最大源码元数目
KMIN  每源块码元数目的最小目标指标
GMAX  每分组的码元数目的最大目标指标
基于以上输入,传输参数T、Z和N被计算如下:
令,
G=min{ceil(P·KMIN/F),P/A,GMAX}-每分组的近似码元数目
T=floor(P/(A·G))·A
Kt=ceil(F/T)-文件中的码元总数
Z=ceil(Kt/KMAX)
N=min{ceil(ceil(Kt/Z)·T/W),T/A}
以上导出的G和N的值应被考虑为下限。这对于将这些值增加至例如最近的2的幂是有利的。特别地,以上算法不保证码元大小T除尽最大分组大小P,所以可能不能够使用正好为P大小的分组。而如果G被选择为除尽P/A的值,则码元大小T将是P的约数,且可使用大小为P的分组。
输入参数的合适值可以为W=256KB、A=4、KMIN=4、以及GMAX=1。
B.3.4.2示例
以上算法导致如图18中所示的传输参数,假定上述W、A、KMIN、GMAX的值与P=512一起使用。
B.4.流送
B.4.1.源块构造
源块是由例如本文中所定义的传输协议来构造的,以利用系统性MSCR前向纠错码。将用于源块构造和修复码元构造的码元大小T是由传输协议提供的。参数T可被设成使得任何源块中的源码元数目最大为KMAX
工作良好的参数的示例在B.4.4中呈现。
B.4.2.编码分组构造
如B.4.3中所述,每个修复分组包含SBN、ESI、SBL以及修复码元。修复分组内所含的修复码元的数目是从分组长度计算出的。置于各修复分组中的ESI值和用以生成修复码元的修复码元三元组是如B.3.2.2节中计算出的。
B.4.3.传输
该节描述MSCR编码器/解码器与利用MSCR前向纠错进行流送的任何传输协议之间的信息交换。用于流送的MSCR编码器可使用来自传输协议的关于每个源块的以下信息:以字节计的码元大小T、源块中码元的数目K、源块编号(SBN)以及要编码的源码元K·T个字节。MSCR编码器向传输协议提供编码分组信息,包括针对每个分组的SBN、ESI、SBL以及修复码元。传输协议可将该信息透明地传达给MSCR解码器。
B.4.4.参数选择
可使用多种参数选择方法。以下具体示出了其中一些。
B.4.4.1参数导出算法
该节解释了基于以下输入参数的传输参数T的导出:
 
B 以字节计的最大源块大小
Pmax 无填充情况下的最大源分组信息大小
Pr 无填充情况下的第x个百分点源分组信息大小(即使得分组的x%预期具有源分组信息大小n或更少。在一个实施例中,x的值为30)。
A 以字节计的码元对准因子
KMAX 每源块的最大源码元数目
KMIN 每源块的码元数目的最小目标指标
GMAX 每修复分组的码元数目的最大目标指标
对这些输入的要求是ceil(B/P)≤KMAX。基于以上输入,传输参数T被计算如下:
令G=min{max{ceil(P·KMIN/B),floor(Px/Pmax)},P/A,GMAX}-每SPI的码元数目
T=floor(P/(A·G))·A
以上导出的T值应被考虑为所使用的真实T值的向导。这对于确保T除尽P是有利的,或者当完整大小的修复码元被用于恢复丢失的源分组末尾处的部分源码元时,将T的值设置得更小是有利最小化损耗的(只要源块中的最大源码元数目不超过KMAX)。此外,T的选择可取决于源分组大小分配,例如如果所有分组为相同大小则这对于选择T以使得修复分组P′的实际有效载荷大小(其中P′是T的倍数)等于(或大尽可能少的字节)每个源分组在源块中所占的字节数目是有利的。
输入参数的合适值可以为A=16、KMIN=4、以及GMAX=4。
B.4.4.2示例
以上算法导致如图19所示的传输参数,假定上述A、KMIN、和GMAX的值以及假定P=1424。
B.5.系统性多域MSCR编码器
B.5.1.编码概览
系统性MSCR编码器被用来从包括K个源码元的源块生成修复码元。
码元是编解码过程的基本数据单元。对于每个源块(子块),所有码元(子码元)大小相同。针对编解码对码元(子码元)执行的基本操作是异或操作。
令C′[0],...,C′[K-1]标示K个源码元。
令C[0],...,C[L-1]标示L个中间码元。
编码的第一步是从这K个源码元生成L>K个中间码元。在该步骤中,K个源三元组(d[0],a[0],b[0]),...,(d[K-1],a[K-1],b[K-1])是使用如B.5.4.4节中所述的Trip[]生成器来生成的。这K个源三元组与这K个源码元相关联并随后被用来使用逆编码过程从源码元确定L个中间码元C[0],...,C[L-1]。该过程可通过MSCR解码过程来实现。
特定的“预编码关系“较优地在这L个中间码元内成立。B.5.2节描述了这些关系以及中间码元是如何从源码元生成的。
一旦已经生成中间码元,则修复码元被生成并且一个或多个修复码元作为一组被置于单个数据分组中。每个修复码元组与编码码元ID(ESI)和G个编码码元相关联。ESI被用来再次使用B.5.4.4节中所述的Trip[]生成器来为每个 修复码元生成三个整数的三元组(d,a,b)。这是使用B.5.4节中所述的生成器如B.3和B.4节中所述而实现的。然后,每个(d,a,b)三元组被用来使用B.5.4.3中所述的LTEnc[K,C[0],...,C[L-1],(d,a,b)]生成器从中间码元生成相应的修复码元。
B.5.2.第一编码步骤:中间码元生成
B.5.2.1概要
第一编码步骤是从源码元C′[0],...,C′[K-1]生成L个中间码元C[0],...,C[L-1]的预编码步骤。中间码元是由两组约束唯一地定义的:
1.中间码元通过一组源码元三元组与源码元相关。源码元三元组的生成是在B.5.2.2节中使用B.5.4.4节中所述的Trip[]生成器来定义的。
2.一组预编码关系在中间码元自身内成立。
这些是在B.5.2.3节中定义的。L个中间码元的生成是随后在5.2.4节中定义的。
B.5.2.2源码元三元组
这K个源码元中的每一个与三元组(d[i],a[i],b[i])相关联,其中0≤i≤K。源码元三元组是使用B.5.4.4节中定义的三元组生成器如下确定的:
对于每个i,0≤i<K
(d[i],a[i],b[i])=Trip[K,i]
B.5.2.3预编码关系
这L个中间码元之间的预编码关系是通过根据前K个中间码元来表示后L-K个中间码元定义的。
后L-K个中间码元C[K],...,C[L-1]包括S个LDPC码元以及H个HDPC码元。S和H的值是如下所述地从K确定的。则L=K+S+H。
X   使得X·(X-1)>=2·K的最小正整数。
S   使得S≥ceil(0.01·K)+X的最小质数
H   使得choose(H,ceil(H/2))≥K+S的最小整数
H’ =ceil(H/2)
L   =K+S+H
C[0],...,C[K-1]标示前K个中间码元
C[K],...,C[K+S-1]标示S个LDPC码元,初始化为零
C[K+S],...,C[L-1]标示H个HDPC码元,初始化为零
该S个LDPC码元被定义为以下过程结束时C[K],...,C[K+S-1]的值:
For i=0,...,K-1   do
a=1+(floor(i/S)%(S-1))
b=i% S
C[K+b]=C[K+b]^C[i]
b=(b+a)%S
C[K+b]=C[K+b]^C[i]
b=(b+a)%S
C[K+b]=C[K+b]^C[i]
对于H个HDPC码元的构造,系统使用域GF(256)。该域可用关于域GF(2)上的不可约多项式f=x8+x4+x3+x2+1来表示。令α标示元素x对f取模。如本领域的普通技术人员所公知的,元素是基本的,即α的255个一次方与255个GF(256)的255个非零元素一致。在一个实施例中,系统选择K+S个整数a[0],...,a[K+S-1],且用β[0],...,β[K+S-1]标示元素αa[0],...,αa[K+S-1]。此外,选择另外H个整数b[0],...,b[H-1]并用Γ[0],...,Γ[H-1]标示元素αb[0],...,αb[H-1]。本发明的其它优选实施例将指定这些整数的特定选择。然而,应该注意这些整数有许多等价选择。令对于所有正整数i,g[i]=i^(floor(i/2))。注意g[i]是Gray序列,其中每个元素与前一个元素在单个比特位置上有所不同。此外,令g[j,k]标示其元素在二进制表示中正好有k个非零比特的序列g[i]的第j个元素,j=0,1,2,...。如本领域的技术人员所公知的,序列g[j,k]具有这样的属性,即g[j,k]和g[j+1,k]的二进制表示在精确地两个位置中有所不同。我们用p[j,k,1]和p[j,k,2]来标示这些位置。
HDPC码元的值被定义为在以下过程之后C[K+S],...,C[L-1]的值。
将码元U初始化为0。该码元的大小与源码元、LDPC码元、以及HDPC码元的公共大小相同。
接着,对于从0到K+S-2的变量h,执行以下:变量U被更新为U=U*β[h]^C[h]。同时,设定C[K+S+p[j,H’,1]]=C[K+S+p[j,H’,1]]^U,以及C[K+S+p[j,H’,2]]=C[K+S+p[j,H’,2]]^U。
在另一步骤中,将U变形为U*β[K+S-1]^C[K+S-1]。
接着对于从0到H-1的变量h,更新C[K+S+h]=C[K+S+h]^Γ[h]*U。这完成了HDPC编码过程的描述。
在优选实施例中,系统选择以下整数a[0],...,a[K+S-1]和b[0],...,b[H-1]:a[0]=a[1]=...=a[K+S-1]=1以及b[0]=1,b[1]=2,...b[i]=i+1等。有利地,在该优选实施例中,HDPC码元的构造可仅使用基本元素α的动作以及伴随码元之间的逐位异或操作来执行。以上给出的不可约多项式的选择允许α的动作的高效实现,由此降低HDPC构造算法的计算复杂度。如本领域的技术人员所显而易见的,上述构造算法可容易地适用于执行多级码解码器内的所需解码操作,由此在解码器处也实现上述计算复杂度的降低。
B.5.2.4 中间码元
B.5.2.4.1 定义
给定K个源码元C′[0],C′[1],...,C′[K-1],L个中间码元C[0],C[1],...,C[L-1]是满足下列条件的唯一定义的码元值:
1.K个源码元C′[0],C′[1],...,C′[K-1]满足K个约束C′[i]≡LTEnc[K,(C[0],...,C[L-1]),(d[i],a[i],b[i])],对于0≤i<K的所有i。
2.L个中间码元C[0],C[1],...,C[L-1]满足B.5.2.3中定义的预编码关系。
B.5.2.4.2 中间码元的计算
该小节描述了用于计算满足B.5.2.4.1中的约束的L个中间码元C[0],C[1],...,C[L-1]的可能的方法。
从K个输入码元生成N个输出码元的码生成器矩阵G是GF(2)上的NxK矩阵,其中每行对应输出码元中的一个而每列对应于输入码元中的一个,且其中第i个输出码元等于第i行中其列包含非零项的那些输入码元的和。
然后,L个中间码元可计算如下:
C标示L个中间码元的列向量C[0],C[1],...,C[L-1]。
D标示包含其后跟随K个源码元C′[0],C′[1],...,C′[K-1]的S+H个零码元的列向量
然后,以上约束定义GF(2)上的LxL矩阵A,使得:
A·C=D
矩阵A可如下构造:
令:
GLDPC为LDPC码元的S x K生成器矩阵。所以,
GLDPC·(C[0],...,C[K-1])T=(C[K],...,C[K+S-1])T
GHDPC为半数码元的H x(K+S)生成器矩阵,所以,
G HDPC &CircleTimes; ( C [ 0 ] , . . . , C [ S + K - 1 ] ) T = ( C [ K + S ] , . . . , C [ K + S + H - 1 ] ) T
IS为S x S单位矩阵
IH为H x H单位矩阵
0SxH为S x H零矩阵
GLT为LT编码器生成的编码码元的K x L生成器矩阵。所以,
GLT·(C[0],...,C[L-1])T=(C′[0],C′[1],...,C′[K-1])T
即,在且仅在C[i]被包括在被异或以产生LTEnc[K,(C[0],...,C[L-1]),(d[i],a[i],b[i])]的码元中的情况下,GLTi,j=1。
则:
A的前S行等于GLDPC|IS|ZSxH
A的接下来H行等于GHDPC|IH
A的剩余K行等于GLT
矩阵A在图20中绘出。中间码元随后可被计算为“
C=A-1·D
源三元组被生成使得对于任意K,矩阵A具有满秩并因此不可逆。该计算可通过向K个源码元C′[0],C′[1],...,C′[K-1]应用MSCR解码过程来实现以产生L个中间码元C[0],C[1],...,C[L-1]。
为了从源码元高效地生成中间码元,可使用诸如B.6节中所述的高效解码器实现。源码元三元组被设计成有助于使用该算法对源码元进行高效解码。
B.5.3.第二编码步骤:连锁反应编码
在第二编码步骤中,通过使用根据B.3.2.2和B.4.2节生成的三元组(d,a,b)=Trip[K,X]向L个中间码元C[0],C[1],...,C[L-1]应用B.5.4节中定义的生成器矩阵LTEnc[K,(C[0],C[1],...,C[L-1]),(d,a,b)]来生成具有ESI X的修复码元。
B.5.4.生成器
B.5.4.1 随机生成器
随机数生成器Rand[X,i,m]被定义如下,其中X是非负整数,i是非负整数,而m是正整数,且生成的值是0与m-1之间的整数。令V0和V1是256项的数组,其中每项是4字节无符号整数。合适的随机数数组在附录B.1和B.2中作为示例提供,这些示例不应被理解为限制本发明的范围。给定这些假设,Rand[X,i,m]=(V0[(X+i)%256]^V1[(floor(X/256)+i)%256])%m。如本文所使用的,除非另有指示,否则“随机”应被假定为包括“伪随机”和“基本随机”。
B.5.4.2 幂度生成器
幂度生成器Deg[v]被定义如下,其中v是至少为0且小于220=1048576的整数。
在图21中,找到使得f[j-1]≤v<f[j]的索引j
Deg[v]=d[j]
B.5.4.3 连锁反应编码码元生成器
编码码元生成器LTEnc[K,(C[0],C[1],...,C[L-1]),(d,a,b)]取以下输入:
K是源块(子块)的源码元(或子码元)的数目。令L如B.5.2节中所述地从K导出,且令L’为大于或等于L的最小质数整数。
(C[0],C[1],...,C[L-1])是如B.5.2节中所述地生成的L个中间码元(子码元)的数组。
(d,a,b)是使用B.5.3.4节中定义的三元组生成器确定的源三元组,由此d是标示编码码元幂度的整数,a是1与L’-1(内包含)之间的整数,而b是0与L’-1(内包含)之间的整数。
编码码元生成器根据以下算法生成单个编码码元作为输出:
While(b≥L)do b=(b+a)%L’
LTEnc[K,(C[0],C[1],...,C[L-1]),(d,a,b)]=C[b].
For j=1,...,min(d-1,L-1)do
b=(b+a)%L′
While(b≥L)dob=(b+a)%L’
LTEnc[K,(C[0],C[1],...,C[L-1]),(d,a,b)]=LTEnc[K,(C[0],C[1],...,C[L-1]),(d,a,b)]^C[b]
B.5.4.4 三元组生成器
三元组生成器Trip[K,X]取以下输入:
K  源码元的数目
X  编码码元ID
L如B.5.2节中所述地从K确定
L’为大于或等于L的最小质数
Q=65521,小于216的最大质数
J(K)为与K相关联的系统性索引。系统性索引是被选成使得以下过程连同用于构造本文所述的矩阵A的剩余过程得到不可逆的矩阵B的数。合适的系统性索引在附录A中仅作为示例被提供,这些示例不应被理解为限制本发明的范围。
三元组生成器的输出是如下确定的三元组(d,a,b):
I.A=(53591+J(K)·997)%Q
2.B=10267·(J(K)+1)%Q
3.Y=(B+X·A)%Q
4.v=Rand[Y,0,220]
5.d=Deg[v]
6.a=1+Rand[Y,1,L’-1]
7.b=Rand[Y,2,L’]
B.6 FEC解码器实现
B.6.1 概要
该节描述了用于本说明书中所述的MSCR码的高效解码算法。注意,每个接收到的编码码元可被考虑为中间码元之间的方程的值。从这些联立方程以及中间码元之间已知的预编码关系,用于求解联立方程的任何算法都可成功地解码中间码元以及由此解码出源码元。然而,所选的算法对解码的计算效率有很大影响。
B.6.2 解码源块
B.6.2.1 概要
假定解码器知道其要解码的源块的结构,包括码元大小T、以及源块中码元的数目K。
从B.5节中所述的算法,MSCR解码器可计算预编码码元的总数L=K+S+H并确定它们是如何从要解码的源块生成的。在该描述中,假定要解码的源块的收到编码码元已被传递给解码器。此外,对于每个这种编码码元假定其异或等于编码码元的中间码元的数目和集合已被传递给解码器。在源码元的情形中,如B.5.2.2节中所述的源码元三元组指示共计给出每个源码元的中间码元的数目和集合。
令N≥K为源块的收到编码码元的数目并令M=S+H+N。以下MxL矩阵A可从针对要解码的源块被传递给解码器的信息导出。令C为L个中间码元的列向量,并令D为具有接收机已知的值的M个码元的列向量,其中这M个码元当中的最后S+H个是对应于LDPC和HDPC码元的零值码元(这些是LDPC和HDPC码元的校验码元而不是LDPC和HDPC码元本身),M个码元当中剩余的N个是源块的接收到的编码码元。然后,A是满足A·C=D的矩阵,其中这里·标示G(256)上的矩阵乘法。矩阵A具有如图23所示的块结构。该块结构包括N行和L列的矩阵F,S行和L-S-H列的矩阵E,S x S单位矩阵I,S行和H列全零的矩阵0,H行和L-H列的矩阵B,以及H x H的单位矩阵J。子矩阵B具有在域GF(256)上定义的项,而矩阵E和F具有0/1项,即在域GF(2)中的项。矩阵F定义动态编码过程,矩阵E定义如上所述的LDPC编码过程,以及矩阵B定义HDPC编码过程。特别地,如果对应索引j的中间码元在编码中被异或成为对应索引i的编码码元,则F[i,j]=1。对于所有的其它i和j,F[i,j]=0。类似地,如果对应索引j的中间码元被异或成对应索引i的LDPC码元,则E[i,j]=1。最后,如果对应索引j的中间码元的动作β的结果被异或成对应索引i的HDPC码元,则B[i,j]=β。
解码源块等价于从已知的A和D解码C。显然在且仅在GF(256)上A的秩为L的情况下C是可解码的。一旦C已被解码,丢失的源码元可通过使用源码元三元组确定中间码元的数目和集合——其被异或以获得每个丢失的源码元——来获得。
解码C中的第一步骤是形成解码调度。在该步骤中A被使用高斯消元(使用行操作以及行与列的重排序)并在丢弃M-L行之后被转换成L x L单位矩阵。解码调度包括高斯消元过程中行操作的序列以及行与列重排序,并且仅取决于A而不取决于D。从D解码C可与解码调度的形成同时进行,或者解码过程可基于解码调度在之后进行。
C的解码调度与解码之间的一一对应关系如下。首先令c[0]=0,c[1]=1...,c[L-1]=L-1且d[0]=0,d[1]=1...,d[M-1]=M-1。
每次A的行i在解码调度中被异或为行i’,然后在解码过程中码元D[d[i]]被异或为码元D[d[i’]]。我们将该操作称为GF(2)-行操作。
每次A的行i的α倍(GF(256)中的某一α)在解码调度中被异或成i’,然后在解码过程中码元α*D[d[i]]被异或成码元D[d[i’]]。我们将该操作称为GF(256)-行操作。注意GF(2)-行操作是其中元素α为1的GF(256)-行操作的特例。
每次行i在解码调度中与行i’交换,然后在解码过程中d[i]的值与d[i’]的值交换。
每次列j在解码调度中与列j’交换,然后在解码过程中c[j]的值与c[j’]的值交换。
从该对应关系可以看出,源块的解码中码元异或的总数与高斯消元中行操作(不是交换)的数目有关。由于A在高斯消元及丢弃最后M-L行之后是L xL单位矩阵,显然在成功解码结束时,L个码元D[d[0]],D[d[1]],...,D[d[L-1]]是L个码元C[c[0]],C[c[1]],...,C[c[L-1]]的值。
执行高斯消元以形成解码调度的次序对该解码是否成功没有关系。然而,解码的速度很大地依赖于执行高斯消元的次序。(此外,维持A的稀疏表示是至关重要的,尽管这里并未描述)。执行GF(2)-行操作比执行GF(256)-行操作更有效率也是显然的。因此,在执行高斯消元时,以矩阵A当中具有取自域GF(2)的元素的行为中心进行操作是较佳的。将矩阵当中对应于HDPC码元的行的消元留到高斯消元过程的末尾也是有利的。该节的剩余部分描述了可相对高效地执行高斯消元的次序。
B.6.2.2 第一阶段
参照图23,用X表示包括如图24a所示的F、E、I和0的矩阵。
高斯消元的第一阶段,矩阵X在概念上被分割成多个子矩阵。这些子矩阵大小通过被初始化为0的非负整数i和u来参数化。X的子矩阵为:
(1)由前i行与前i列的交集限定的子矩阵。这在该阶段中每一步骤的结束时是单位矩阵。
(2)由前i行与除前i列和最后u列的所有列的交集限定的子矩阵。该子矩阵的所有项为零。
(3)由前i列与除前i行之外的所有行的交集限定的子矩阵,该子矩阵的所有项为零。
(4)由所有行与最后u列的交集限定的子矩阵U。
(5)由除前i列和最后u列之外的所有列与除前i行之外的所有行的交集形成的子矩阵V。
图22示出了X的子矩阵。在第一阶段的开始,V=X。在每一步骤,选择X的一行。由V的结构限定的以下图形被用来确定选择X的哪一行。与V相交的列是该图形中的节点,而在V中正好具有两个1的行是该图形中连接这两个1的位置上的两列(节点)的边。该图形中的分量是使得在该图形中的每对节点/边之间存在路径的节点(列)和边(行)的最大集合。分量的大小是该分量中节点(列)的数目。该图形按Y标示如下:
在第一阶段至多有L个步骤。当V或者消失或者变为零矩阵时,该阶段结束。在每一步骤中,如下选择X的行:
如果V的所有项为零,则选择该行并且第一阶段结束。
否则,令r为使得X中的至少一行在V中正好有r个1的最小正整数。
如果r=1,则选择在V中正好具有一个1的行。
如果r=2,则选择作为由Y定义的图形中最大大小分量的一部分、在V中正好具有两个1的任意行。
如果r>2,则选择在V中正好具有r个1且在这些行中具有最小的原始权重的行。
在该步骤中选择出该行之后,X当中与V相交的第一行与该被选行相交换以使得所选行是与V相交的第一行。X当中与V相交的那些列被重排序以使得所选行中r个1当中的一个出现在V的第一列并且使得剩余的r-1个1出现在V的最后列中。然后,所选行被异或到X当中该所选行以下在V的第一列具有1的所有其它行中。换言之,我们在该步骤中执行了GF(2)-行操作。最后,i被递增1且u被增加r-1,结束步骤。
令v标示该阶段结束时矩阵V的列数。在对矩阵B的各列转置以使得V的各列对应于X的最后v列之后,矩阵X将具有图24b中给定的形式。
B.6.2.3 第二阶段
我们修改矩阵U以使其另外包括矩阵X的最后v行,并且相应地用u+v代替u。子矩阵U被进一步分割成前i行U以及剩余的N+S-i行U,如图25所示。在第二阶段对U执行高斯消元。在该步骤之后,矩阵U将具有图26中给定的形式,即在行和列的转置之后,前s行与前s列的交集是单位矩阵——被称为I,最后m行是零,而前s行与最后u-s列的交集形成矩阵W。注意,s+m等于矩阵U的行数N+S-i。如果s的值为u,则可跳过下一阶段。如果m的值大于H-v,则返回解码差错,因为在此情形中矩阵A的秩小于L。矩阵X的最后m行被丢弃,以使得在该阶段之后A具有图27中给出的形式。在该图中,B1,...,B3是各自具有H行和GF(256)中的项的矩阵。接着,对矩阵B1和B2执行G(256)-行操作以将它们消零。这可以两种方式之一来实现。第一种方法中,A的前i行被用来借助GF(256)-行操作对矩阵B1消零。然后A的下s行被用来对矩阵B2消零。在第二种方法中,行i到i+s-1(内包含)被用来借助GF(2)-行操作对U的前s列消零并随后X的前i+s行被用来借助GF(256)-行操作对B1和B2消零。如对本领域的普通技术人员显而易见的,上述用于构造HDPC码元的方法算法导致用于矩阵B1的消零(在第一种方法中)或B1和B2两者的消零(在第二种方法中)的类似算法。该算法对于GF(256)元素对码元的动作的计算的要求仅为每矩阵列一次加H的每行一次。因此,上述第二种方法在对矩阵B1和B2消零方面导致总体较少的操作。
在该步骤之后,矩阵A具有图28中所给的形式。矩阵T具有H行和u-s列。对矩阵T执行高斯消元以将其变为其后跟有H-u+s行的单位矩阵。如果这不可能,即如果T的秩小于u-s,则标志解码差错。在该级结束时,在丢弃最后H-u+s行后矩阵A具有图29中给出的形式。在该图中,I标示s x s单位矩阵,而J标示u-s x u-s单位矩阵。
B.6.2.4 第三阶段
在第二阶段之后,A当中需要被消零以完成将A转换成L x L单位矩阵的部分在跟随有将B1和B2消零的第一方法的情形下是W和U的所有u列,或者在跟随有将B1和B2消零的第二方法的情形下是W和U的最后u-s列。在前一情形中,由于矩阵W通常较小,所以可使用元素GF(2)-行操作来消零。在该步骤之后,矩阵A具有图30中给出的形式。在这两种情形下,矩阵当中需要消零的剩余部分现在是矩形。在前一情形下,其大小为i行和u列,在后一情形中,其大小为i+s行和u-s列。在下面,我们将i’用于该矩阵中的行数以及将u’用于列数并用
Figure A200780013972D0055152706QIETU
标示该矩阵。
剩余子矩阵
Figure A200780013972D0055152706QIETU
的行数i’一般远大于列数u’。有多种方法可用来将
Figure A200780013972D0055152706QIETU
高效地消零。在一种方法中,以下预计算矩阵U’被基于A的最后u行和列(我们将其标示为Iu)计算出,并且随后U’被用于将
Figure A200780013972D0055152706QIETU
消零。Iu的u行被分割成各自为z行的ceil(u/z)组(针对每一整数z)。然后,对于每一组的z行,计算出z行的所有非零组合,得到2z-1行(这可以用每组的各行的2z-z-1次异或来实现,因为Iu中出现的Hamming权重一的组合无需重新计算)。因此,得到的预计算矩阵U’具有ceil(u/z)·2z-1行和u列。注意U’不是矩阵A的正式的一部分,但随后将被用来将U消零。在一优选实施例中,z=8。
对于
Figure A200780013972D0055152706QIETU
的i’行中的每一行,对于该行的
Figure A200780013972D0055152706QIETU
子矩阵的每一组的z列,如果
Figure A200780013972D0055152706QIETU
中的z列项的集合不是全零,则该预计算矩阵U’当中匹配这z列中的模式的那一行被异或到该行,由此以将U’的1行异或到该行为代价将该行中的这z列消零。
在该阶段后,A是L x L单位矩阵且已经成功形成完整的解码调度。然后,可执行包括将已知编码码元异或的相应解码以基于该解码调度来恢复中间码元。
与所有源码元相关联的三元组是根据B.5.2.2计算出的。接收到的源码元的三元组被用于解码中。丢失的源码元的三元组被用来确定哪些中间码元需要被异或以恢复丢失的源码元。
多域、单级连锁反应编码器/解码器
多域单级(MFSS)码具有本文所公开或暗示的有用属性。MFSS码、编码器以及解码器的新颖设计在本文进行描述。在一个实施例中,数据被编码以从源被传输到目的地,其中每个输出码元是作为输入码元中的一个或多个用取自有限域的系数的线性组合生成的,对于每个输出码元:
—根据随机过程选择大于0的整数d——被称为输出码元的幂度,
—根据随机过程选择大小为d的输入码元的集合,该输入码元集合被称为输出码元的近邻集合,
—选择有限域集合以使得对于至少一个输出码元该集合包含至少两个有限域,
—针对输出码元的近邻集合中的每个输入码元,从所选择的可能有限域集合中选择有限域,
—针对输出码元的近邻集合中的每个输入码元根据随机过程从以上所选的有限域中选择非零元素。
用于选择输出码元的幂度的随机过程可以是Luby I和Luby II中所述的过程,其中幂度是根据幂度分配来选择的。用于选择与每个输出码元相关联的输入码元的随机过程可以是Luby I和Luby II中所述的过程,其中输入码元是随机且唯一地选择的。如本文所使用的,“随机”可包括“伪随机”、“有偏随机”等。
该可能有限域的集合可以是集合{GF(2),GF(256)}。
用于选择有限域的过程可以基于参数d1,以使得对于幂度小于d1的输出码元,为该输出码元的近邻集合中的所有输入码元选择域GF(2),而对于幂度为d1或更大的输出码元,为该输出码元的近邻集合中的至少一个、一些或所有成员选择域GF(256)并根据需要为该近邻集合中的剩余元素选择域GF(2)。
用于从所选域中选择有限域元素的过程可以是简单随机过程,其中元素是从该域的非零元素当中随机唯一地选出的。
接收由如上所述的MFSS编码器编码的数据的解码器可通过以下操作解码输出码元以再生输入码元:根据上述方法形成表示该码的矩阵,该矩阵不包括静态行而包括对应该码的每个输出码元的一个动态行,并随后应用高斯消元以找到该矩阵的逆,以确保在高斯消元过程的每一级最小幂度的中枢行被选择。
如本领域的普通技术人员所清楚的,Luby I和Luby II中所述的码的许多公知属性可同等地应用于上述码并且特别是对合适的幂度分配的选择可确保高斯消元过程能够以较高概率标识剩余幂度一的行并且由此该解码过程如Luby I和Luby II中所述的连锁反应过程那样操作。
该MFSS码相对于本领域已知的码具有许多其它优点。首先,包括来自GF(256)的元素显著降低了任意接收到的输出码元相对于先前接收到的输出码元不是加性信息的概率。因此,该码的解码差错概率比先前的码低得多。例如,在一些情形下,Luby I和Luby II中所述的码的失败概率得以改进。
该码相对于基于较大域的其它码的优点是较低幂度的输出码元一般首先将由高斯消元过程进行处理,因此包括的来自GF(256)的元素可以无需考虑推迟到之后解码过程。由于GF(256)上的操作相比于GF(2)上的操作是相对昂贵的,这与其中许多或所有元素都是使用来自GF(256)或其它较大有限域的元素构造的码相比极大地降低了计算复杂度。
相对于基于较大域的其它码的另一优点是对于使用较大域生成的输出码元,近邻集合中仅一个元素具有取自较大域的系数,由此对于每个这样的输出码元仅需要码元与有限域元素之间的一个操作。这导致总体较低的计算复杂度。
已知使用内码和外码来使用两个(或多个)编码过程编码输入码元导致提供常在更为复杂的码中找到的益处的简单码方案。通过内码和外码的使用,源码元首先被使用其中一种码进行编码,并且第一编码器的输出被提供给根据另一种码进行编码的编码器,而该结果被输出作为输出码元。使用MFSS当然与内/外码的使用不同。举例来说,输出码元是从输入码的近邻集合导出的。在本文所述的许多实施例中,每个输出码元都是输入码元的线性组合。在多级码情形下,每个输出码元可以是输入码元和/或冗余码元和/或中间码元的线性组合。
密集多域码和用于这种码的编码器/解码器
在上述讲授的变形中,码的矩阵表示是密集矩阵。如所公知的,纠错码可从有限域上的密集随机矩阵构造出。例如,可构造出广义矩阵,其中没有静态行且每个动态行包括来自GF(2q)的元素,其中每个元素是随机选取的。然后可以构造出固定率的码,其中每个输出码元对应动态行之一并且是作为对于其在矩阵的该行的相应列中具有非零元素的那些输入码元的线性组合——使用这些元素作为线性组合过程中的系数——生成的。
本领域的技术人员公知的是随机选取的具有K行和K+A列并具有从GF(2q)独立且随机选取的系数的矩阵具有小于K的秩的概率至多为2-qA。因此,具有K个输入和K/R个输出码元的码的解码差错概率——其中输出码元是使用从GF(2q)随机选择的系数从输入码元独立且随机地生成的——至多为2-qA,如果接收到的编码码元的数目为K+A。
在q=1的情形下,上述码具有合理的计算复杂度的优点,因为所有操作都在域GF(2)内,由此对应常规XOR操作。然而,在该情形下,一旦接收到A个额外码元那么失败概率的下限2-A比所需的高得多。
在q=8的情形下,上述码具有较低失败概率的优点(对于接收到A个额外码元则以2-8A为限度)。然而,在该情形下,所有操作都在域GF(256)内,由此在计算上相对较昂贵。
另一实施例允许用接近于以较小的q值可实现的计算复杂度来实现接近于使用较大q值实现的解码差错概率。在该实施例中,输出码元是作为具有取自或者GF(2p)或者GF(2q)的系数的输入码元的线性组合生成的,其中p<q。在一个特定实施例中,正好(K-2p/q)/R个输出码元是使用来自GF(2p)的系数生成的,剩余的2p/(qR)个输出码元是使用来自GF(2q)的系数生成的。
在目的地接收到的数据可通过确定该码的收到输出码元与输入码元之间的关系并求解该线性关系集以确定输入码元来解码。
该码的解码差错概率至多为其中所有系数是选自域GF(2p)的码的解码差错概率,并且取决于使用来自较大的域GF(2q)的系数生成的码元的数目可显著地更低。然而,由于大多数输出码元是使用来自GF(2p)的系数生成的,编码的计算复杂度仅比其中所有码元都是使用来自GF(2p)的系数生成的码的计算复杂度稍大。此外,解码方法可以如此设计以使得用来自GF(2p)的系数生成的码元被首先处理,由此大多数解码操作是完全以GF(2p)中的操作来执行的。因此,解码方法的计算复杂度类似接近于仅使用GF(2p)构造的码的计算复杂度。在一特定优选实施例中,p=1且q=8。
某些多域码的一些属性
在上述大多数示例中,输入和输出码元针对相同数目的比特进行编码并且每个输出码元被置于一个分组中(作为或者全部接收或者全部丢失的传输单元的分组)。在一些实施例中,通信系统被修改以使得每个分组包含若干输出码元。输出码元值的大小被设成基于多个因素由在文件或流送块到输入码元的原始拆分中的输入码元值大小确定的大小。解码过程基本保持不变,除非在接收到每个分组时输出码元大量到达。
输入码元和输出码元大小的设置通常由文件或流送块的大小以及将在其上传送输出码元的通信系统指定。例如,如果通信系统将数据比特编组在具有定义大小的分组中或者以其它方式编组,则码元大小的设计以该分组或编组大小开始。从此,设计者将确定在一个分组或组中将携带多少输出码元并确定该输出码元大小。为了简单起见,设计者可能将输入码元大小设置成等于输出码元大小,但如果输入数据使得不同的输入码元大小更为方便,则可使用不同的输入码元大小。
上述编码过程基于原始文件或流送的块来产生包含输出码元的分组流送。该流送中的每个输出码元是独立于所有其它输入码元生成的,因此对于可创建的输出码元的数目没有上下限。键与每个输出码元相关联。该键、输入文件或流送块的一些内容决定输入码元的值。连续生成的输出码元无需具有连续的键,并且在一些应用中,随机生成键序列或伪随机地生成该序列将是较优的。
多级解码具有这样的属性,即K个等大小的输入码元的块平均可以非常高的概率从K+A个输出码元恢复,其中A相对于K较小。例如,在以上首先描述的优选实施例中,当K=100时,图31示出了根据从生成的前120个输出码元当中随机选出的K+A个输出码元解码的失效的概率,而图32的表示出了根据从生成的前110个输出码元当中随机选出的K+A个输出码元解码的失效的概率。
由于特定输出码元是以随机或伪随机次序生成的,并且传输中特定输出码元的丢失通常与码元的值无关,所以需要接收以恢复输入文件或块的输出码元的实际数目的方差较小。在K+A个输出码元的特定集合不足以将块解码的许多情形中,如果接收机能够从一个或多个源接收更多输出码元则该块仍是可恢复的。
由于输出码元的数目仅受I的分辨率限制,将可生成大于K+A个输出码元。例如,例如,如果I是32比特数,则可生成四十亿个不同输出码元,而文件或流送块可包括K=50,000个输入码元。在一些应用中,这四十亿个输出码元中仅一些可被生成并传送,且输入文件或流送块可使用可能输出码元中的非常小的少部分来恢复,并且输入文件或块可用稍大于K个输出码元的码元来恢复的概率非常优良(假定输入码元大小与输出码元大小相同)。
在一些应用中,没有能将所有输入码元解码或者以相对较低的概率将所有输入码元解码是可接受的。在这种应用中,接收机可在接收到K+A个输出码元之后停止尝试将所有输入码元解码。或者接收机可在接收到少于K+A个输出码元之后停止接收输出码元。在一些应用中,接收机甚至可仅接收K个或更少的输出码元。因此,应该理解在本发明的一些实施例中,所需的精确度可以不是所有输入码元的完全恢复。
此外,在一些可接受不完整恢复的情形中,数据可被编码成使得不是所有输入码元都可被恢复或者使得输入码元的完全恢复将要求接收比输入码元多得多的输出码元。这种编码一般将要求较少的计算开销,由此是降低编码计算开销的可接受方式。
应该理解上述附图中各种功能块可以用硬件和/或软件的组合来实现,且在特定实现中一些块的部分或所有功能可以被组合。类似地,应该理解本文所述的各种方法可通过硬件和/或软件的组合来实现。
以上描述是说明性而非限制性的。本发明的许多变形对于本领域的技术人员而言在阅读本公开的基础上是显而易见的。因此,本发明的范围不应参照以上描述确定,而应参照所附权利要求以及其等效方案的全部范围来确定。
附录A.用于系统性索引J(K)的值
对于K的每个值,系统性索引J(K)被设计成具有这样的属性,即源码元三元组(d[0],a[0],b[0]),...,(d[L-1],a[L-1],b[L-1])的集合使得L个中间码元被唯一地定义,即B.5.2.4.2中的矩阵A具有满秩并因此不可逆。以下是4与8192之间(内包含)的K值的合适系统性索引列表且是作为示例给出的。这些值的次序是按照阅读的次序,即从第一行的第一个数到第一行的最后一个数,其后是第二行上的第一个数,以此类推。
22,   1486,  2151,  2239,  4286,  3887,  2016,  3247,  4531,  490,  2223,
705,  1243,  2241,  3457,  3030,  1918,  2349,  455,   1745,  182,
1130, 29,    381,   1088,  23,    1147,  353,   951,   161,   56,
421,  401,   1141,  557,   75,    611,   409,   828,   1514,  2722,
1044, 718,   768,   1696,  2145,  2515,  57,    43,    136,   438,
815,  540,   88,    270,   364,   236,   158,   14,    49,    160,
203,  49,    93,    104,   83,    567,   322,   143,   77,    29,
70,   37,    333,   120,   5,     5,5,  408,           183,   356,
110,  233,   4,     251,   90,    1170,  322,   245,   664,   1057,
95,   512,   184,   1551,  1477,  778,   1038,  809,   719,   1025,
768,  1127,  689,   76,    1367,  172,   1313,  1557,  311,   311,
559,  1145,  624,   234,   172,   913,   1555,  1555,  1134,  692,
687,  692,   1501,  692,   1106,  1040,  195,   25,    1127,  1234,
1404, 1125,  798,   1511,  75,    947,   671,   1049,  385,   1273,
834,  1116,  1386,  1386,  399,   84,    1563,  365,   1563,  611,
611,  611,   1020,  819,   1688,  1688,  1550,  19,    1600,  1600,
796,  19,    1469,  1571,  1571,  1117,  1059,  476,   789,   1117,
1207, 1117,  1163,  1163,  512,   1719,  1719,  1719,  1719,  100,
623,  623,   623,   1567,  1567,  623,   876,   876,   876,   876,
816,  816,   814,   814,   431,   323,   1,     220,   1286,  1286,
623,  1286,  1286,  1286,  228,   1642,  1642,  1642,  259,   1410,
259,  259,   259,   353,   122,   826,   522,   826,   485,   1260,
1061, 1061,  1260,  1260,  1260,  1678,  353,   870,   870,   870,
714,  145,   3,     991,   211,   1644,  1644,  288,   288,   857,
1413, 1413,  1677,  857,   242,   242,   1565,  1565,  1677,  1810,
714,  714,   714,   714,   714,   1757,  714,   714,   964,   666,
964,  964,   1432,  219,   219,   908,   365,   679,   80,    1286,
1432, 1432,  579,   966,   62,    62,    62,    75,    62,    62,
62,   1261,  62,    62,    62,    62,    62,    894,   690,   690,
456,  538,   538,   1115,  1999,  1999,  102,   102,   1137,  1115,
102,  579,   579,   783,   783,   96,    1535,  1073,  1073,  612,
612,  1386,  1197,  690,   690,   690,   690,   690,   690,   690,
690,  968,   244,   244,   1812,  244,   968,   160,   656,   160,
160,  160,   656,   263,   263,   815,   146,   1099,  1074,  1099,
1099, 1099,  972,   1876,  222,   1994,  222,   327,   327,   1400,
1441, 1898,  1292,  1400,  1066,  1066,  1755,  54,    54,    54,
54,   54,    54,    54,    54,    1791,  1791,  1781,  554,   1047,
1047, 1047,  1047,  1047,  1047,  631,   1219,  289,   289,   1321,
1191, 6,     1781,  184,   184,   6,     2030,  1704,  1704,  1704,
1704, 1088,  1088,  1088,  1088,  1223,  1223,  2053,  2053,  8,
1704, 2053,  2053,  8,     1704,  1969,  770,   1969,  1969,  1371,
1371, 1353,  1810,  1810,  1810,  652,   652,   652,   652,   652,
652,  652,   652,   652,   423,   652,   1566,  1566,  1566,  1566,
1566, 1566,  1566,  1566,  1617,  965,   965,   965,   1267,  1267,
1267, 1267,  1892,  1699,  1699,  1267,  981,   1091,  981,   981,
2053, 2053,  510,   510,   510,   510,   927,   1843,  1843,  2203,
234,  234,  865,  1800,  865,  944,  927,  927,  1693,  1967,
1379, 1379, 1379, 1379,  1379, 843,  1441, 499,  1441,  160,
601,  1828, 675,  675,   601,  675,  675,  160,  2338,  203,
1138, 1138, 1244, 1244,  1244, 1244, 346,  323,  850,   850,
870,  870,  927,  927,   927,  408,  677,  677,  677,   677,
1166, 762,  677,  131,   965,  965,  965,  965,  233,   965,
540,  540,  540,  540,   540,  540,  540,  540,  540,   540,
411,  411,  81,   411,   411,  411,  943,  943,  91,    1067,
943,  1067, 304,  304,   949,  1046, 916,  751,  751,   1046,
576,  1193, 576,  576,   1193, 1208, 375,  1089, 1089,  375,
945,  945,  540,  540,   540,  540,  540,  540,  540,   540,
540,  540,  81,   41,    571,  571,  571,  723,  723,   723,
723,  723,  723,  723,   589,  589,  403,  403,  403,   1044,
980,  488,  698,  132,   1187, 1219, 1219, 1219, 1219,  1219,
851,  231,  929,  929,   929,  929,  929,  929,  929,   929,
929,  929,  929,  929,   8,    8,    8,    8,    540,   973,
973,  973,  973,  1,     983,  1144, 1071, 1071, 37,    37,
37,   173,  173,  173,   173,  665,  173,  173,  918,   918,
1310, 1297, 1297, 1297,  699,  662,  547,  882,  1234,  1234,
29,   29,   1228, 459,   547,  365,  34,   34,   34,    34,
34,   34,   34,   34,    317,  317,  317,  317,  317,   15,
242,  242,  242,  242,   437,  242,  292,  292,  292,   385,
753,  1061, 1061, 1061,  1061, 37,   906,  37,   1191,  1191,
1012, 1327, 869,  869,   266,  769,  41,   266,  120,   506,
506,  506,  943,  506,   506,  715,  1155, 142,  142,   142,
375,  375,  375,  375,   375,  375,  375,  375,  375,   375,
690,  375,  375,  375,   548,  939,  94,   94,   94,    939,
939,  939,  939,  94,    1219, 1219, 1219, 1219, 1219,  1219,
1253, 359,  666,  666,   94,   666,  666,  666,  94,    666,
666,  666,  633,  477,   968,  498,  968,  968,  865,   8,
165,  1219, 1219, 165,   165,  165,  842,  842,  1219,  1219,
343,  343,  987,  920,   987,  987,  987,  987,  139,   522,
522,  522,  522,  522,   640,  640,  640,  640,  173,   173,
365,  487,  487,  487,   965,  120,  120,  965,  120,   120,
120,  120,  965,  120,   1269, 1269, 965,  965,  1187,  1187,
1187, 1187, 481,  481,   1209, 663,  823,  823,  1143,  46,
46,   46,   46,   46,    46,   46,   46,   46,   46,    46,
46,   46,   46,   46,    46,   46,   46,   939,  757,   757,
757,  757,  902,  902,   1446, 902,  351,  1446, 351,   1446,
1222, 1222, 716,  1222,  1222, 1222, 1222, 833,  833,   833,
912,  912,  912,  912,   94,   912,  915,  808,  1163,  808,
1421, 443,  443,  443,   443,  443,  443,  432,  905,   366,
366,  366,  366,  408,   408,  408,  408,  408,  408,   1156,
1156, 145,  1156, 973,   973,  476,  476,  867,  634,   1077,
1077, 375,  375,  375,   375,  375,  375,  1371, 1371,  1371,
1371, 1371, 1371, 1371,  1371, 522,  383,  148,  1267,  522,
522,  1298, 674,  1298,  939,  674,  674,  674,  674,   1298,
1298, 1298, 1298, 197,   197,  197,  197,  120,  918,   918,
918,  918,  918,  47,    47,   1065, 1308, 1065, 1065,  1308,
1308, 1308, 1308, 1308,  1308, 1415, 1415, 417,  417,   417,
417,  417,  417,  1206,  613,  537,  1437, 1437, 476,   476,
476,  476,  1437, 669,   669,  558,  303,  303,  902,   902,
902,  902,  125,  902,   10,   1501, 1472, 535,  535,   535,
535,  535,  535,  977,   977,  977,  977,  409,  1309,  1309,
1309, 1309, 1309, 1309,  1309, 1309, 1309, 1309, 1309,  1309,
1309, 796,  796,  796,   716,  617,  694,  973,  973,   973,
973,  1054, 1054, 1054,  1054, 662,  662,  447,  447,   447,
447,  447,  447,  634,   634,  634,  634,  634,  634,   634,
37,   1459, 949,  1459,  1459, 1459, 1459, 634,  565,   565,
777,  634,  777,  977,   977,  1057, 1057, 657,  657,   657,
657,  1057, 1057, 1057,  657,  657,  657,  657,  657,   657,
657,  657,  657,  657,   657,  1437, 1500, 263,  263,   263,
70,     570,   570,    70,    70,    70,    70,  1497,  1497,  1497
1497,   883,   364,    883,   883,   1128,  1390,1390,  1390,  1390
1032,   1032,  1032,   1338,  1338,  1338,  1338,1338,  1338,  1166
1166,   1166,  1166,   1166,  1166,  983,   983, 983,   983,   71
983,    983,   983,    1137,  1137,  1137,  1137,1137,  1137,  1137,
1137,   1137,  1137,   1137,  871,   571,   571, 571,   571,   918,
571,    918,   571,    571,   571,   118,   118, 118,   118,   118,
118,    809,   809,    1437,  1437,  1437,  1437,1437,  1437,  537,
206,    206,   206,    206,   537,   537,   537, 537,   206,   537,
537,    498,   120,    498,   120,   566,   566, 1219,  566,   1219,
566,    566,   1219,   1219,  1219,  1219,  1219,1219,  1219,  1219,
1219,   1219,  1219,   95,    550,   1367,  1367,1367,  1367,  1705,
1230,   1230,  1407,   1230,  1230,  363,   363, 1539,  1539,  1539,
1539,   1539,  1539,   1380,  1380,  1380,  1380,1152,  1455,  1345,
1345,   366,   366,    1308,  1308,  1308,  1308,1308,  1308,  1308,
1308,   1219,  1219,   1219,  1219,  871,   871, 581,   581,   581,
581,    581,   581,    1,     1,     121,   1,   1,     1,     121,
1249,   1,     1249,   1249,  441,   1249,  1249,1249,  1249,  1249,
1495,   1653,  1249,   1249,  1249,  615,   1064,1249,  615,   615,
1249,   615,   221,    615,   615,   615,   98,  723,   723,   723,
723,    723,   723,    1533,  1533,  106,   106, 106,   106,   1232,
1232,   1864,  1232,   1232,  1232,  1864,  912, 918,   273,   273,
273,    273,   273,    918,   273,   273,   273, 273,   273,   273,
273,    273,   273,    273,   273,   1348,  1348,1348,  1348,  1348,
1466,   1348,  1466,   1466,  160,   1460,  1460,1460,  1460,  1460,
1792,   1792,  473,    473,   473,   1460,  473, 1792,  1792,  1009,
1009,   1009,  1009,   106,   106,   1434,  902, 1434,  1434,  1387,
1387,   1387,  1387,   1387,  1387,  1042,  1512,1512,  1512,  1512,
1047,   1512,  1512,   1588,  1588,  1550,  662, 927,   628,   103,
222,    103,   103,    1313,  980,   980,   662, 980,   980,   980,
980,    980,   980,    632,   1107,  1048,  632, 1107,  1107,  1620,
632,    1067,  1620,   963,   963,   94,    94,  94,    514,   1725,
1257,   1676,  1676,   1676,  1676,  1437,  1437,1417,  1417,  681,
1437,   1064,  1064,   1117,  1117,  1064,  1064,1117,  1117,  1117,
1064,   1117,  1117,   453,   677,   871,   871, 871,   871,   871,
871,    871,   313,    313,   677,   1259,  1259,118,   1259,  1259,
1707,   441,   441,    1766,  1766,  1766,  1766,1766,  1766,  1766,
1766,   1766,  1766,   1766,  1766,  1767,  1767,1767,  935,   1767,
935,    549,   549,    549,   159,   873,   1868,1868,  1868,  1598,
1868,   1140,  1587,   1587,  1587,  1587,  1587,1140,  1140,  1457,
1457,   1457,  1457,   1937,  1253,  1937,  1937,1253,  1937,  1195,
1937,   986,   986,    1821,  1821,  1797,  41,  1439,  1011,  1011,
1011,   1011,  1011,   1011,  1011,  1439,  1439,1381,  1381,  1381,
1381,   1200,  1200,   1200,  1200,  1200,  1200,858,   858,   1077,
1669,   1669,  1669,   108,   108,   968,   690, 108,   968,   973,
343,    1313,  1313,   1313,  1313,  1313,  1313,949,   949,   949,
949,    949,   949,    716,   949,   716,   716, 1581,  1431,  1431,
1431,   1431,  1431,   1431,  1431,  1581,  1581,1431,  1431,  1581,
1581,   664,   1581,   845,   396,   664,   664, 650,   650,   650,
814,    814,   1973,   461,   461,   461,   492, 1997,  306,   1114,
865,    865,   1820,   865,   865,   865,   1104,952,   952,   1104,
1104,   1257,  1306,   1306,  968,   952,   952, 175,   175,   175,
175,    1066,  1632,   452,   902,   902,   902, 902,   1067,  243,
243,    1067,  243,    1360,  408,   408,   408, 498,   498,   4,
498,    498,   498,    498,   498,   1218,  1218,1165,  6,     6,
1165,   6,     1381,   1165,  1165,  1165,  1725,1725,  164,   1725,
1725,   1725,  54,     1725,  716,   716,   1114,1114,  1114,  1114,
1067,   1426,  1426,   1426,  1426,  1426,  2162,2162,  2162,  2162,
2162,   2162,  243,    243,   243,   243,   1095,243,   1095,  243,
243,    243,   243,    243,   243,   1982,  243, 243,   243,   243,
347,    347,   347,    347,   347,   347,   1823,1069,  1823,  1069,
1671,   1745,  2179,   376,   623,   2179,  376, 376,   2179,  376,
2179,  2179,  2179,  376,  756,  571,  2159,  2159,  1125,  2159,
1125,  1125,  2159,  2159, 1322, 180,  977,   180,   180,   977,
180,   977,   180,   565,  180,  977,  2124,  857,   2124,  857,
2124,  2124,  857,   2124, 842,  842,  842,   842,   842,   842,
62,    62,    1390,  62,   1390, 1420, 62,    62,    62,    62,
1055,  1055,  1055,  1055, 1055, 1055, 175,   1055,  1055,  1055,
1055,  1055,  175,   1055, 918,  918,  718,   233,   233,   718,
1263,  1263,  1263,  1263, 757,  2048, 70,    1723,  1723,  1723,
2154,  2154,  1532,  233,  1532, 1532, 1532,  1532,  1532,  1532,
1532,  1532,  888,   888,  888,  888,  888,   888,   689,   689,
1546,  1546,  1546,  1546, 1546, 1546, 1896,  1896,  662,   662,
450,   264,   1430,  1430, 1430, 1430, 1430,  1430,  1430,  1430,
1430,  1430,  1430,  1430, 1430, 30,   30,    1710,  1710,  1710,
2234,  2101,  498,   432,  498,  498,  1677,  947,   947,   1677,
1677,  498,   947,   498,  1283, 498,  1677,  498,   530,   533,
960,   960,   960,   960,  960,  960,  1099,  960,   960,   1215,
475,   960,   960,   960,  1215, 960,  960,   960,   960,   960,
960,   960,   1553,  1309, 1553, 1553, 1309,  1309,  94,    1647,
94,    94,    94,    94,   94,   1647, 935,   935,   140,   508,
508,   1511,  95,    95,   95,   95,   1306,  1169,  1431,  1431,
1431,  1431,  1176,  1176, 1176, 1176, 1176,  1176,  1176,  1416,
1839,  1839,  1839,  1839, 2324, 1839, 2425,  1744,  723,   2506,
2506,  2506,  2506,  2506, 2506, 2506, 1823,  1823,  1079,  130,
1838,  1838,  508,   1838, 1838, 1838, 1838,  1838,  424,   424,
424,   424,   424,   424,  424,  424,  424,   424,   424,   582,
582,   1867,  582,   582,  582,  582,  2326,  1091,  1091,  1091,
1091,  1091,  1462,  1462, 1462, 1462, 1462,  1462,  850,   1462,
850,   850,   850,   1413, 2374, 2374, 740,   740,   740,   740,
572,   572,   1084,  415,  2426, 2426, 1134,  2426,  2426,  2426,
2426,  2426,  270,   270,  270,  270,  270,   270,   270,   270,
270,   270,   270,   270,  1165, 1165, 975,   32,    975,   975,
32,    975,   975,   975,  975,  975,  975,   975,   975,   975,
975,   975,   157,   1066, 160,  669,  160,   160,   160,   160,
461,   834,   834,   834,  292,  36,   156,   27,    27,    27,
27,    27,    27,    27,   27,   27,   645,   690,   690,   1237,
690,   1106,  1106,  690,  949,  550,  949,   550,   949,   550,
949,   949,   949,   949,  949,  949,  949,   949,   949,   949,
949,   949,   273,   273,  273,  273,  273,   273,   273,   273,
273,   273,   273,   273,  273,  273,  273,   273,   273,   273,
273,   273,   273,   273,  353,  353,  306,   306,   306,   396,
355,   355,   355,   192,  355,  355,  918,   918,   918,   918,
918,   918,   918,   918,  970,  970,  970,   970,   970,   970,
970,   490,   970,   970,  490,  490,  970,   490,   490,   490,
807,   273,   374,   118,  374,  374,  1237,  675,   1237,  675,
1144,  1144,  1144,  675,  273,  273,  1251,  1251,  1251,  1251,
1251,  1251,  1251,  1251, 1251, 1251, 1251,  1251,  1251,  1251,
11,    11,    1157,  1157, 1157, 1157, 784,   784,   784,   784,
784,   951,   1259,  951,  1012, 1012, 1012,  1012,  808,   1012,
812,   812,   812,   812,  812,  812,  1206,  1206,  1206,  1206,
734,   482,   482,   482,  1043, 1313, 166,   166,   166,   166,
675,   166,   166,   675,  166,  675,  675,   675,   675,   675,
675,   675,   675,   166,  675,  675,  166,   166,   968,   968,
968,   968,   968,   968,  1311, 1311, 538,   538,   538,   538,
538,   538,   582,   582,  582,  582,  347,   347,   347,   347,
347,   347,   21,    21,   21,   21,   21,    21,    21,    21,
21,    21,    21,    645,  645,  21,   29,    29,    1312,  1312,
1380,  1380,  1411,  1120, 1411, 1411, 306,   306,   806,   806,
669,   669,   669,   681,  1253, 1253, 876,   876,   1036,  1036,
1036,  1036,  1036,  1036, 233,  233,  233,   233,   233,   233,
233,   233,   233,   233,  233,  233,  271,   271,   271,   271,
271,   271,   871,   871,  871,  871,  871,   871,   1268,  1268,
1268,  1268,  1268,  1268, 1268, 1268, 1268,  1268,  1268,  1268,
1268,  1268,  1194,  1125,  1125,  1125,  353,  353,  353,  353,
353,   353,   865,   865,   913,   865,   865,  913,  865,  865,
865,   913,   913,   913,   409,   409,   409,  409,  409,  409,
409,   409,   954,   954,   954,   954,   954,  954,  159,  159,
159,   159,   585,   585,   585,   585,   585,  585,  585,  585,
585,   585,   585,   585,   585,   585,   585,  585,  585,  585,
585,   585,   585,   585,   585,   585,   585,  103,  529,  529,
529,   529,   529,   529,   529,   529,   529,  529,  529,  529,
529,   529,   529,   529,   529,   529,   871,  694,  310,  871,
871,   310,   310,   310,   310,   1526,  1194, 1194, 1194, 1194,
698,   1194,  1194,  1194,  770,   770,   770,  1103, 1367, 1367,
1367,  361,   1367,  1367,  850,   850,   1420, 1420, 1420, 1420,
1420,  1420,  353,   353,   353,   353,   353,  353,  514,  514,
514,   353,   353,   353,   353,   723,   514,  11,   723,  514,
11,    11,    723,   723,   538,   538,   538,  538,  538,  538,
538,   538,   538,   538,   538,   538,   1379, 1379, 1523, 850,
850,   850,   321,   850,   850,   850,   850,  1523, 1523, 1523,
1523,  1523,  1523,  1523,  1444,  1550,  1550, 1550, 70,   690,
690,   690,   415,   415,   415,   415,   415,  518,  725,  725,
415,   415,   415,   415,   1036,  353,   1036, 353,  353,  353,
1012,  1036,  353,   1036,  353,   353,   1671, 1671, 935,  935,
935,   935,   159,   935,   935,   935,   935,  935,  832,  832,
1283,  1283,  1283,  1283,  121,   121,   121,  121,  121,  121,
121,   121,   756,   756,   1380,  756,   756,  756,  1413, 1413,
1413,  1413,  1413,  1413,  308,   308,   481,  1219, 662,  662,
1512,  1512,  1512,  986,   21,    21,    1144, 1144, 21,   21,
920,   585,   585,   920,   920,   920,   920,  920,  871,  871,
871,   871,   582,   1333,  353,   353,   353,  353,  353,  353,
1244,  1244,  1244,  1244,  1244,  1244,  1244, 1244, 1244, 1244,
316,   316,   918,   918,   918,   918,   918,  918,  918,  918,
918,   1032,  1508,  671,   671,   671,   671,  819,  1437, 1437,
55,    960,   960,   960,   970,   481,   481,  1114, 1114, 1114,
1114,  481,   1114,  481,   1556,  1114,  1556, 1556, 627,  627,
627,   627,   627,   627,   627,   627,   627,  627,  871,  871,
871,   871,   871,   871,   871,   871,   871,  871,  871,  871,
1160,  1160,  1448,  361,   361,   396,   396,  361,  994,  994,
994,   994,   717,   717,   663,   663,   1016, 663,  663,  663,
663,   496,   663,   663,   663,   663,   161,  161,  230,  230,
230,   1348,  230,   230,   1149,  230,   230,  1348, 1348, 1348,
1348,  1348,  1197,  1197,  1197,  1197,  1429, 1429, 1429, 1429,
36,    36,    1707,  1707,  1707,  1707,  1707, 1707, 1707, 1707,
1586,  1586,  1174,  1174,  1174,  1586,  681,  1707, 681,  681,
1314,  1314,  1314,  1314,  1512,  1314,  1314, 1512, 1314, 31,
1512,  1314,  1314,  1512,  1314,  1314,  1314, 1314, 1434, 1434,
1434,  1434,  1434,  1434,  1434,  1434,  353,  1592, 1592, 1592,
1592,  1592,  30,    62,    62,    62,    62,   62,   1485, 1485,
1485,  740,   807,   1485,  963,   963,   963,  963,  832,  832,
963,   963,   1444,  1591,  1444,  1444,  1444, 1444, 1444, 1591,
1591,  1591,  842,   1586,  842,   842,   1586, 842,  842,  1586,
1586,  1776,  1586,  1586,  968,   968,   968,  968,  968,  968,
968,   968,   968,   968,   968,   968,   968,  968,  992,  1362,
992,   992,   983,   983,   983,   983,   983,  983,  1521, 1521,
1521,  1521,  1521,  1165,  1158,  1158,  91,   91,   91,   91,
91,    91,    91,    820,   91,    91,    1069, 1069, 1069, 1069,
91,    91,    91,    91,    91,    91,    91,   91,   91,   91,
91,    91,    91,    91,    1825,  1825,  1432, 1432, 1432, 1432,
1432,  1432,  1432,  1432,  1432,  1432,  30,   30,   30,   30,
30,    30,    30,    30,    1675,  1508,  1675, 1508, 1620, 1620,
1620,  1620,  1620,  1620,  1620,  1620,  1620, 1620, 1620, 1620,
1620,  1620,  1221,  1620,  1221,  935,   334,  334,  334,  231,
334,   334,   952,   952,   952,   952,   554,  952,  1164, 952,
952,   952,   1338,  952,   1832,  1832,  1832, 1832, 1832, 1832,
355,  355,  355,  355,  355,  355,  355,  355,  355,  355,
355,  355,  1741, 383,  1741, 1741, 1748, 1748, 1748, 1748,
1748, 1748, 550,  550,  550,  550,  550,  550,  550,  550,
550,  550,  550,  1669, 1669, 1669, 1669, 1669, 550,  1669,
1669, 550,  1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588,
1588, 1588, 1669, 1669, 368,  368,  368,  368,  1313, 1313,
368,  1313, 1313, 1313, 1313, 1313, 1221, 1221, 1221, 1221,
1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221,
1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221,
1221, 1221, 1671, 1671, 1671, 1671, 832,  832,  963,  963,
963,  963,  1822, 963,  1381, 963,  522,  963,  963,  522,
6,    6,    6,    6,    6,    6,    1009, 1009, 1009, 1009,
1839, 1839, 1839, 1707, 1839, 1839, 1707, 1839, 1839, 1707,
1839, 1707, 1827, 1916, 1089, 1457, 1827, 1089, 64,   64,
64,   64,   64,   64,   64,   64,   22,   22,   22,   22,
740,  1087, 740,  740,  35,   35,   740,  740,  1221, 1221,
1706, 1706, 1706, 1221, 1011, 1706, 1706, 1011, 1706, 1011,
1706, 1706, 1706, 1706, 1706, 1706, 1706, 1011, 1011, 1403,
265,  265,  121,  1099, 121,  1099, 582,  2018, 1972, 1373,
1373, 1972, 415,  415,  1256, 1256, 1256, 1936, 1936, 1256,
1797, 1797, 1797, 740,  740,  935,  935,  1797, 935,  1797,
935,  935,  1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797,
6,    1797, 1797, 1797, 1797, 1797, 1797, 1797, 1795, 1795,
1727, 1727, 1727, 1727, 1727, 582,  375,  375,  375,  375,
1176, 67,   81,   1915, 81,   81,   81,   81,   740,  740,
740,  740,  1564, 1564, 1564, 1564, 158,  158,  136,  136,
136,  136,  1598, 1598, 1598, 1598, 1875, 1505, 1598, 1875,
1773, 1773, 1773, 175,  461,  780,  1952, 1952, 312,  312,
1219, 1219, 1219, 312,  312,  1952, 1947, 1727, 492,  30,
492,  492,  492,  492,  492,  388,  492,  492,  388,  388,
388,  388,  492,  492,  1382, 1382, 424,  424,  424,  424,
424,  424,  424,  424,  1592, 554,  424,  1592, 424,  424,
1592, 1592, 516,  516,  516,  516,  516,  516,  625,  625,
625,  625,  625,  625,  625,  625,  625,  625,  625,  625,
625,  625,  625,  625,  625,  625,  625,  625,  1809, 183,
1809, 183,  183,  183,  1809, 1562, 1562, 1562, 1562, 1562,
1562, 1562, 1562, 1779, 1779, 1779, 1779, 1779, 1779, 1779,
1779, 1158, 1158, 1158, 1158, 1592, 1592, 63,   63,   63,
63,   1448, 1448, 538,  751,  538,  538,  751,  751,  538,
538,  538,  751,  751,  751,  751,  751,  538,  751,  538,
538,  538,  538,  538,  538,  1089, 1089, 1089, 1089, 1089,
1089, 1089, 1089, 948,  948,  948,  948,  948,  948,  948,
948,  948,  948,  948,  948,  1617, 1617, 1617, 1617, 1617,
1617, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958,
1958, 409,  409,  1362, 1661, 1362, 1362, 2283, 850,  2283,
2283, 2283, 2283, 865,  1464, 1592, 2174, 1592, 784,  784,
784,  1060, 1060, 1060, 1060, 1060, 1060, 241,  1060, 241,
1060, 736,  736,  442,  442,  442,  442,  442,  442,  442,
442,  442,  442,  442,  442,  271,  271,  271,  271,  271,
271,  271,  271,  271,  271,  353,  353,  1222, 2224, 1222,
1222, 1222, 1222, 1222, 1222, 1222, 1222, 755,  755,  755,
755,  755,  755,  1331, 1331, 1331, 1331, 1331, 1331, 1331,
1331, 1569, 1569, 1569, 1569, 1569, 1569, 1219, 2138, 1219,
1219, 35,   265,  409,  409,  409,  35,   22,   22,   812,
812,  154,  1023, 812,  409,  1916, 1916, 1916, 1916, 1916,
1916, 2047, 2047, 2047, 2047, 1448, 1448, 299,  299,  299,
299,  299,  299,  299,  299,  299,  1745, 299,  299,  299,
299,  299,  299,  1764, 1764, 1764, 1764, 1764, 1764, 1764,
1764, 1764, 1764, 1764, 1764, 1514, 1514, 552,  552,  552,
552,  1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687,
1687, 1687, 1687, 1687, 1687, 172,  172,  172,  172,  172,
172,  2115, 2115, 2115, 2115, 196,  1858, 196,  1858, 1858,
1858,  1858,  1858,  364,  364,  364,  364,  364,  364,  364,
364,   1517,  364,   646,  646,  646,  646,  646,  646,  646,
646,   128,   128,   128,  128,  128,  128,  1163, 1163, 427,
427,   427,   427,   1371, 1371, 1371, 1868, 1868, 1868, 960,
1868,  1868,  1371,  960,  694,  1371, 425,  694,  694,  694,
694,   425,   1540,  694,  694,  1466, 1466, 1466, 1466, 1466,
1466,  1604,  1604,  334,  334,  334,  334,  334,  334,  30,
30,    30,    30,    1851, 83,   83,   1629, 1851, 1629, 784,
1629,  1629,  1629,  1629, 1629, 1629, 1629, 391,  178,  178,
2044,  398,   1947,  398,  398,  398,  398,  1641, 1641, 1641,
1641,  1641,  1641,  1641, 1641, 30,   30,   30,   30,   30,
1779,  30,    1779,  1779, 1779, 1707, 1707, 1128, 1128, 1128,
1128,  1128,  1128,  1128, 1128, 1128, 1128, 1569, 420,  1569,
420,   1569,  420,   420,  420,  420,  420,  420,  420,  420,
420,   1592,  2086,  1429, 1347, 2011, 2011, 2161, 1448, 1448,
1448,  1448,  1448,  1448, 1448, 1448, 1448, 1457, 1457, 1457,
1457,  1457,  1457,  1457, 1457, 1457, 1457, 1457, 1457, 1457,
1457,  998,   998,   998,  998,  749,  749,  749,  2305, 295,
2441,  2441,  2441,  159,  159,  886,  886,  886,  886,  159,
2201,  886,   886,   886,  159,  2201, 886,  2201, 2201, 886,
2201,  2346,  2131,  2131, 2131, 514,  2075, 2075, 2075, 2075,
2075,  1188,  1188,  1444, 1444, 1444, 1444, 2263, 2263, 2263,
2263,  2263,  2263,  1125, 1125, 933,  933,  933,  933,  933,
933,   364,   933,   1128, 933,  933,  933,  818,  1926, 1926,
1926,  1128,  2440,  1128, 1128, 1128, 1128, 1128, 1128, 1128,
1128,  1128,  1128,  1128, 1128, 1128, 1128, 1128, 1128, 1128,
1128,  2174,  1651,  1651, 1651, 1651, 1651, 1651, 2174, 2174,
1651,  1651,  1651,  1651, 1651, 1651, 1651, 1651, 1651, 22,
22,    22,    22,    2263, 22,   22,   2263, 2263, 22,   22,
22,    2548,  2548,  2665, 1998, 2427, 2053, 920,  920,  920,
920,   920,   36,    13,   19,   1790, 2471, 1197, 1197, 2502,
2502,  266,   266,   266,  266,  266,  266,  521,  521,  521,
521,   521,   521,   521,  521,  521,  521,  521,  521,  521,
521,   521,   521,   521,  521,  521,  521,  521,  521,  1418,
1418,  2232,  2232,  2232, 2232, 2232, 2232, 2806, 2806, 2806,
2806,  2878,  2806,  2806, 2878, 174,  2636, 2636, 2878, 1450,
2878,  2806,  2878,  253,  253,  253,  253,  253,  253,  979,
979,   979,   979,   979,  979,  979,  979,  979,  979,  979,
979,   552,   552,   295,  295,  295,  295,  295,  295,  1707,
2465,  1707,  1707,  1707, 978,  1707, 1707, 1707, 2465, 1707,
1707,  132,   132,   2842, 130,  132,  132,  130,  130,  130,
132,   132,   130,   132,  132,  132,  132,  1495, 1495, 1973,
1973,  1973,  1973,  723,  912,  2482, 2482, 2482, 723,  89,
89,    89,    89,    89,   89,   1671, 89,   89,   89,   1767,
89,    1009,  1009,  1177, 1177, 1177, 1177, 1177, 1177, 1177,
1177,  1177,  1177,  1177, 1177, 1177, 1177, 1177, 1177, 1177,
1744,  2076,  2076,  2076, 2076, 2811, 2076, 2076, 2076, 2811,
2076,  607,   2076,  2076, 2076, 2076, 2076, 2076, 2076, 607,
2076,  2076,  2076,  2076, 2076, 2306, 2306, 2306, 2306, 2306,
2306,  2306,  2306,  2306, 2306, 770,  1514, 1514, 770,  1514,
1514,  1421,  1616,  2110, 2110, 2110, 2110, 2110, 2110, 2110,
2110,  2110,  2110,  127,  127,  2521, 2521, 2521, 2521, 2521,
2521,  2521,  2521,  2521, 2521, 1588, 1588, 1505, 1505, 272,
272,   1505,  1505,  1505, 1505, 1505, 1505, 2961, 695,  695,
1174,  1174,  695,   2135, 2135, 838,  838,  2155, 2155, 2155,
2155,  2155,  2122,  2122, 2122, 465,  465,  583,  583,  583,
583,   583,   583,   583,  583,  583,  583,  2451, 1845, 1845,
1617,  2451,  1845,  978,  978,  978,  978,  978,  978,  978,
978,   1197,  1197,  1197, 1197, 1197, 1197, 1197, 1197, 1197,
1197,  1197,  1197,  1197, 1197, 1197, 1197, 3017, 1197, 1197,
1197,  3017,  1197,  3017, 1197, 1197, 1197, 1197, 1197, 1197,
1197,  2863,  2863,  2863, 2863, 2863, 2863, 2863, 2863, 2863,
2863,  852,  852,  1168,  1168,  1168,  1168,  1168,  1168,  2748,
1168,  1168, 1168, 1495,  1495,  1495,  1495,  1495,  1669,  1669,
1669,  1329, 1329, 1329,  1329,  1329,  1329,  1727,  1727,  2441,
1532,  1532, 1532, 1727,  2441,  1727,  1727,  550,   550,   550,
550,   550,  550,  550,   550,   550,   550,   550,   2263,  550,
2263,  550,  550,  550,   550,   353,   353,   353,   353,   353,
353,   2245, 1592, 1612,  2245,  1834,  2245,  1612,  1822,  1612,
2826,  2245, 1592, 477,   477,   477,   477,   477,   477,   477,
477,   477,  477,  477,   477,   2724,  2724,  353,   209,   486,
353,   1485, 2113, 353,   353,   2113,  1485,  353,   353,   353,
1485,  1485, 2113, 2113,  2113,  2811,  2811,  2811,  2811,  2811,
2811,  2308, 1587, 3336,  1587,  1401,  1285,  1285,  1285,  1099,
1099,  1099, 1099, 1099,  1099,  21,    21,    21,    21,    21,
21,    21,   21,   21,    21,    21,    21,    21,    21,    21,
21,    21,   21,   2071,  2071,  1188,  1188,  1188,  1188,  1188,
1188,  1188, 1188, 2494,  2494,  2963,  2963,  2963,  2963,  2963,
2963,  2963, 2963, 2963,  2963,  2963,  2963,  2963,  2963,  398,
398,   398,  398,  398,   398,   3153,  3102,  3153,  169,   2089,
2089,  2273, 1530, 1530,  3307,  1222,  1222,  1222,  1222,  1222,
1222,  1222, 1222, 1222,  1222,  1222,  1222,  1222,  1222,  1222,
1222,  1222, 1222, 1222,  1222,  1222,  1222,  1222,  1222,  1118,
1118,  492,  492,  492,   492,   492,   1489,  1489,  1489,  555,
555,   2645, 555,  555,   555,   555,   555,   555,   555,   555,
555,   555,  555,  555,   555,   2656,  2656,  2656,  2656,  2656,
1015,  1015, 1015, 2619,  2619,  2619,  2619,  2619,  2619,  1401,
1118    140127 801    118     1118    1778    1778    1778    1778    1778
1118,  1401, 2780, 1118,  1118,  1778,  1778,  1778,  1778,  1778,
1778,  1778, 1778, 1778,  1778,  1778,  1778,  1778,  1778,  1778,
1778,  1778, 1778, 1263,  1263,  1263,  1263,  1263,  1263,  1263,
1263,  1263, 1263, 1263,  1263,  1263,  1263,  3649,  1263,  2860,
2860,  2924, 1592, 1592,  3223,  1490,  9,     2620,  954,   1490,
954,   785,  785,  2627,  772,   772,   2627,  772,   772,   2347,
2347,  2347, 2347, 2347,  2347,  2534,  2534,  2534,  2534,  2534,
2534,  2534, 2534, 2534,  2534,  1260,  1260,  1260,  1260,  1260,
1260,  647,  647,  647,   647,   647,   647,   647,   647,   647,
647,   647,  647,  2282,  2282,  2282,  2282,  2282,  2282,  2282,
2282,  2282, 2282, 2282,  2282,  960,   960,   960,   960,   960,
960,   960,  960,  960,   960,   960,   960,   960,   960,   960,
960,   960,  960,  2263,  2263,  287,   287,   287,   287,   287,
287,   1797, 1797, 572,   1797,  1179,  1179,  1179,  1179,  1179,
1179,  1179, 1179, 1179,  1179,  1179,  1179,  1179,  1179,  1179,
1179,  3355, 1179, 784,   784,   784,   364,   1381,  1381,  1381,
364,   647,  647,  647,   647,   647,   647,   647,   647,   647,
647,   647,  647,  647,   647,   647,   647,   647,   647,   647,
647,   647,  647,  647,   647,   112,   112,   112,   2626,  1490,
2179,  2041, 2041, 2041,  2041,  481,   2094,  2094,  2094,  514,
2094,  2455, 2455, 582,   306,   306,   306,   306,   306,   306,
306,   306,  306,  306,   2076,  3103,  3103,  3103,  3103,  488,
488,   488,  488,  488,   488,   488,   488,   488,   488,   488,
488,   82,   82,   241,   241,   241,   241,   241,   241,   3535,
241,   241,  241,  241,   241,   241,   241,   241,   241,   241,
241,   3535, 241,  241,   3535,  241,   241,   241,   241,   241,
241,   241,  241,  891,   285,   285,   285,   1188,  1188,  1188,
1188,  1188, 1188, 3011,  1325,  1325,  567,   1325,  3549,  1367,
1367,  1367, 1367, 1367,  1367,  1367,  1367,  1367,  1367,  1367,
1367,  2665, 23,   23,    3017,  3017,  3017,  3017,  3017,  3017,
3017,  3017, 3017, 3017,  3017,  1423,  2897,  1423,  1423,  918,
918,   166,  166,  166,   166,   166,   166,   2815,  166,   166,
166,   2282, 2282, 2282,  2282,  2282,  2282,  2282,  2282,  2282,
2282,  2282, 2282, 2619,  2619,  2161,  2161,  2161,  2161,  2696,
2814,  3336, 3336, 2814,  2696,  2452,  2452,  2452,  3482,  2452,
1392,  2452, 2452, 1229,  1229,  2627,  303,   2263,  2263,  3346,
838,   838,  3346, 838,   3346,  838,   2583,  2583,  2583,  3232,
3232,  1596,  1720,  1720,  1720,  2044,  2044,  409,  2044,  2044,
2044,  2044,  2044,  409,   21,    409,   2044,  409,  2044,  21,
21,    21,    21,    21,    21,    3268,  3268,  1727, 1727,  3994,
3268,  1335,  1335,  1335,  1335,  3547,  3547,  393,  1069,  3547,
1260,  465,   465,   2041,  2656,  2656,  2656,  2656, 2656,  2656,
2656,  2656,  2656,  1355,  2185,  1260,  1260,  1260, 1260,  1260,
1260,  1260,  1260,  1260,  1571,  1778,  1778,  1778, 1571,  1260,
1260,  2294,  2294,  2294,  2294,  2294,  2294,  2294, 2294,  2294,
2294,  2294,  2294,  516,   2214,  1811,  1811,  1811, 1811,  1811,
1811,  420,   420,   420,   420,   420,   420,   420,  420,   420,
420,   420,   420,   420,   420,   420,   420,   1086, 1086,  1086,
1086,  1104,  1610,  1610,  1610,  1610,  1610,  1404, 1404,  1404,
1404,  1404,  1404,  1404,  1404,  1404,  1404,  1404, 3811,  4368,
4368,  1338,  1338,  1338,  1338,  1338,  1338,  1260, 1260,  550,
1260,  1260,  550,   920,   2161,  920,   2161,  920,  920,   3641,
3357,  3641,  3641,  3641,  3641,  3641,  3357,  3357, 3641,  3641,
3641,  3641,  3641,  3641,  998,   3641,  3641,  3641, 3641,  3641,
3641,  3641,  3641,  3641,  3641,  3641,  3641,  231,  231,   231,
231,   231,   231,   1457,  1457,  1457,  1457,  3525, 1457,  3525,
1457,  1457,  1457,  1457,  1457,  1457,  409,   409,  409,   1423,
409,   4075,  409,   2968,  2968,  2968,  2968,  2968, 2968,  2968,
2968,  2968,  2968,  3676,  3676,  2386,  3676,  3676, 3676,  3676,
3676,  1129,  1129,  1129,  1129,  1129,  1129,  1129, 1129,  1129,
1129,  1129,  1129,  1650,  1650,  1650,  1650,  4246, 4246,  4246,
4246,  1650,  1650,  1650,  4246,  4246,  4246,  4246, 4246,  4246,
4246,  2224,  2224,  2224,  425,   2220,  826,   663,  663,   663,
2423,  2707,  2707,  2707,  2707,  2707,  2707,  2707, 2707,  2707,
2707,  2707,  2707,  2707,  2707,  2707,  2707,  2707, 2707,  2707,
2707,  2707,  2707,  2707,  2707,  3178,  2519,  2519, 3178,  3178,
3178,  51,    3178,  51,    3178,  4507,  4507,  2437, 2437,  2521,
231,   231,   2521,  2854,  2854,  3019,  3019,  3611, 3611,  3019,
918,   3019,  3545,  3545,  3545,  3545,  3545,  3611, 3611,  3611,
3611,  2514,  2514,  2514,  2514,  2514,  2514,  4151, 4151,  4151,
4151,  4151,  4151,  586,   586,   4343,  2664,  2664, 2664,  586,
2664,  2664,  2664,  2679,  2664,  2664,  2664,  1017, 1423,  1423,
1423,  1017,  1423,  1017,  1017,  1423,  2665,  1888, 1888,  788,
788,   788,   788,   788,   788,   1888,  788,   788,  1888,  788,
788,   871,   871,   954,   871,   1477,  4453,  4241, 4453,  1477,
4453,  4453,  4241,  4453,  4453,  4241,  838,   4241, 4453,  4453,
4241,  4241,  3726,  838,   4241,  3726,  1477,  1477, 1477,  4968,
3726,  4968,  4968,  1477,  4968,  2444,  2444,  2444, 2444,  2444,
2444,  1429,  1429,  1429,  1429,  1429,  1429,  893,  893,   893,
893,   893,   893,   4101,  2263,  4101,  4101,  2263, 4101,  2263,
2263,  4173,  4173,  4173,  4173,  4173,  4173,  4620, 3269,  3461,
4394,  3830,  3830,  423,   423,   423,   423,   423,  423,   423,
423,   423,   423,   423,   423,   3220,  3220,  3220, 3220,  3220,
2081,  1599,  3780,  1599,  3780,  2311,  2311,  2632, 2632,  2632,
2632,  2632,  2632,  3360,  1158,  3360,  3085,  3085, 1158,  3360,
3085,  3085,  3085,  2464,  3085,  2464,  3085,  2464, 2464,  3085,
3085,  3085,  3085,  3085,  3085,  734,   3285,  920,  920,   920,
920,   364,   364,   364,   364,   364,   364,   364,  364,   364,
364,   364,   364,   364,   364,   364,   364,   364,  364,   4978,
4978,  4131,  4131,  4131,  4131,  2903,  303,   303,  303,   1189,
303,   1189,  1189,  1189,  303,   1189,  303,   2263, 2263,  2599,
2599,  2599,  2599,  2599,  3029,  1060,  1060,  1060, 1060,  1727,
1727,  1727,  1727,  1727,  1727,  1727,  1727,  1727, 1727,  1727,
1727,  1727,  1727,  1727,  1727,  1727,  1727,  1727, 1727,  1727,
1727,  1727,  1727,  1727,  1727,  2831,  2728,  2831, 3421,  3421,
3421,  2582,  2582,  2582,  2582,  1333,  1965,  465,  465,   465,
465,   5182,  5182,  5182,  5182,  5182,  5182,  73,   5182,  398,
398,   3619,  398,   398,   398,   398,   398,   398,  398,   4554,
4554,  5110,  5110,  5110,  5110,  4554,  5110,  5110, 5110,  5110,
5110,  5110,  5110,  2907,  2907,  2907,  2907,  2907,  2907,  2907
2907,  2907,  2907,  2907,  2907,  5110,  2907,  2907,  2907,  2907
2907,  784,   784,   784,   3138,  3138,  784,   3138,  3138,  3138
1710,  3138,  1710,  3138,  3138,  1710,  1710,  1367,  1367,  4114
4114,  1614,  4114,  4114,  4114,  5082,  1778,  1778,  1778,  2562
2562,  780,   780,   780,   780,   2843,  2843,  4642,  3355,  3355
3355,  3355,  3355,  3355,  4478,  3355,  3355,  2665,  2665,  4274
4274,  4274,  2665,  4274,  4274,  4274,  4274,  4274,  4274,  4274
4274,  325,   325,   325,   325,   325,   325,   1222,  1222,  1222
1222,  2665,  2665,  2665,  2665,  3351,  2665,  2665,  2665,  2359
1053,  2359,  2294,  2359,  3599,  3599,  2359,  2359,  2359,  2831
2831,  3672,  2831,  3672,  1335,  2160,  2160,  2160,  4009,  4240 ,
4240,  4240,  4240,  4240,  4240,  4009,  4240,  4240,  4240,  4009,
4240,  4009,  4240,  2160,  2160,  2386,  681,   681,   2386,  3270,
3270,  2631,  2631,  2631,  2631,  2631,  2631,  2434,  2434,  2434,
2434,  2434,  2434,  2434,  2434,  2434,  2434,  2434,  2434,  2434,
2434,  2434,  2434,  2434,  2434,  2434,  1514,  2434,  2434,  2434,
2434,  2434,  2434,  2434,  2434,  2434,  4465,  3926,  3926,  3926,
3926,  3926,  3926,  3926,  3926,  1275,  266,   266,   1275,  1275,
1275,  266,   1275,  266,   1275,  5397,  1879,  1879,  1879,  1879,
1879,  1331,  681,   681,   1331,  1275,  1275,  5208,  5208,  5208,
5208,  3399,  3399,  3399,  5208,  327,   327,   327,   327,   327,
327,   496,   496,   496,   496,   496,   496,   496,   496,   496,
496,   496,   496,   691,   4587,  4642,  691,   3767,  2607,  2607,
4527,  4527,  3767,  3946,  3946,  960,   2194,  2194,  2194,  2194,
960,   4282,  55,    55,    55,    920,   550,   920,   920,   957,
920,   822,   822,   5031,  5031,  5031,  5031,  5031,  5031,  5031,
4850,  5031,  5031,  5164,  5332,  3277,  3277,  3277,  3277,  3277,
3277,  3277,  3277,  3277,  3277,  3277,  3277,  3277,  3277,  3277,
3277,  2116,  2116,  2116,  4467,  4418,  4467,  1896,  1596,  1596,
1596,  1596,  1596,  1596,  1896,  1896,  4129,  4129,  4129,  4129,
4129,  4129,  4129,  4129,  4129,  4129,  4129,  1780,  1780,  1780,
1780,  1367,  1367,  1367,  2162,  1367,  2162,  2162,  2162,  2162,
2162,  2162,  2162,  238,   238,   238,   238,   238,   238,   238,
238,   238,   238,   238,   238,   238,   238,   3830,  3830,  3533,
3533,  3533,  3732,  3533,  3533,  3533,  3533,  3533,  3533,  3533,
3533,  3533,  3533,  3533,  3533,  3533,  3533,  3533,  3533,  3533,
3533,  3533,  3533,  3470,  3533,  4588,  355,   3591,  3591,  355,
355,   355,   355,   355,   355,   355,   355,   355,   355,   355,
355,   355,   355,   355,   355,   3268,  1877,  1877,  1877,  4001,
4001,  4001,  4001,  4001,  4001,  4001,  4001,  4001,  4001,  4001,
4001,  4001,  4001,  4001,  4001,  4001,  4001,  656,   656,   4713,
4713,  656,   4713,  4713,  4713,  322,   322,   322,   322,   322,
322,   4218,  4218,  4218,  4218,  5182,  5182,  2845,  5182,  5182,
5182,  4518,  4518,  4518,  2069,  4518,  4518,  4518,  4518,  4518,
2069,  2069,  2069,  2069,  2069,  4650,  759,   4650,  759,   759,
4650,  552,   552,   552,   552,   552,   552,   2331,  2331,  2331,
2331,  2331,  2331,  2331,  2331,  2331,  2331,  6187,  6187,  5172,
5842,  5842,  5842,  5842,  5842,  5842,  5842,  5842,  5842,  2162,
2162,  2162,  2162,  2162,  5031,  2162,  2162,  2162,  2162,  2162,
2162,  3832,  2386,  5945,  6126,  3832,  5945,  5945,  5945,  1283,
1283,  1283,  1283,  1283,  1283,  1283,  1283,  1283,  1592,  4352,
4352,  3349,  3349,  6917,  6917,  3349,  6917,  3349,  2751,  3349,
3349,  6135,  2837,  2837,  6135,  6135,  6135,  2794,  6135,  4780,
4780,  4780,  4780,  4780,  4780,  4780,  4780,  4780,  4780,  4780,
4780,  1060,  1060,  1060,  1060,  1060,  2764,  1060,  1060,  1060,
1060,  1489,  308,   1423,  1423,  1423,  1423,  1423,  1423,  1423,
1423,  1423,  1423,  1423,  1423,  1423,  1423,  1423,  1423,  1423,
1423,  1423,  1423,  1423,  1423,  4558,  4330,  1654,  1654,  1654,
1654,  5061,  5061,  5061,  5061,  1425,  5061,  1425,  1425,  971,
971,   971,   716,   971,   971,   2814,  2616,  2814,  2814,  308,
308,   308,   308,   308,   308,   308,   308,   5380,  785,   5380,
5380,  5380,  5380,  5380,  1592,  5380,  5380,  5380,  5380,  5380
5380,  5380,  3464,  4468,  4468,  2244,  2244,  2244,  2244,  2244
2244,  2244,  2244,  2244,  2244,  3880,  3880,  3880,  3880,  3880
3880,  60,    60,    60,    60,    60,    60,    734,   734,   5647
5647,  5647,  5647,  5647,  5647,  3145,  6661,  3145,  3145,  3145
3145,  3145,  3145,  3145,  3145,  2071,  2071,  2071,  2071,  2071
2071,  4680,  4680,  676,   676,   676,   676,   676,   676,   676
676,   676,   676,   2641,  2641,  2641,  2641,  2641,  2641,  6532
6532,  6532,  6532,  6532,  6532,  5098,  5098,  5098,  5098,  1628
5098,  1592,  1592,  1592,  1592,  1592,  1592,  1592,  1592,  55
6221,  6221,  6221,  6221,  6221,  3977,  550,   550,   550,   550
550,   3977,  550,   550,   3977,  4055,  3651,  3651,  3651,  3651
550,   21,    21,    2639,  2639,  2639,  2639,  2639,  2639,  863
863,   863,   863,   863,   1086,  4557,  4557,  4557,  4557,  5449
5449,  277,   1497,  1497,  277,   1497,  1497,  277,   277,   1497
277,   2432,  2432,  2432,  2432,  2432,  2432,  2432,  2432,  2603
2603,  3041,  3041,  3041,  3041,  2603,  3041,  3041,  2702,  2702
2603,  2603,  2603,  2603,  2603,  2603,  3041,  3041,  3041,  2702
3041,  3041,  3041,  6043,  6043,  6043,  6043,  6043,  6043,  2365
784,   784,   2365,  2365,  2365,  2365,  2365,  2365,  784,   784
784,   2365,  784,   784,   4718,  4718,  4718,  4718,  4718,  4718
4718,  55,    681,   681,   5658,  5658,  5658,  5658,  5658,  681
5658,  681,   5658,  5658,  5658,  681,   681,   5658,  5658,  5658,
6510,  6510,  6510,  7236,  5014,  5014,  5014,  5014,  5014,  5014,
5014,  5014,  4116,  4116,  4116,  4116,  4116,  4116,  4116,  4116,
4116,  4116,  4885,  5997,  4885,  4885,  5997,  5997,  4885,  4885,
4885,  7266,  7266,  7266,  7266,  7266,  7266,  4885,  4885,  5997,
4885,  4885,  5997,  4885,  4885,  4885,  4885,  4885,  4885,  4885,
4885,  4885,  327,   327,   327,   327,   327,   327,   327,   327,
4650,  4650,  4650,  2396,  4650,  4650,  4650,  4650,  4650,  4650,
4650,  3676,  4650,  4650,  3676,  4650,  4650,  4650,  6481,  7188,
6481,  7188,  1195,  4368,  5475,  4518,  4518,  4518,  4518,  4518,
4518,  4518,  4518,  4518,  425,   425,   425,   425,   4272,  4272,
6009,  6009,  4650,  4650,  4650,  4650,  4650,  4650,  1267,  1267,
1267,  1267,  1229,  1229,  1229,  1229,  1229,  1229,  1229,  1229,
1229,  1229,  1229,  1229,  3357,  1229,  1229,  1229,  1229,  3357,
6476,  6476,  6476,  6476,  6476,  6476,  6476,  6476,  6305,  6305,
6305,  6305,  6305,  6305,  6305,  6305,  6305,  6305,  6305,  6305,
8903,  8903,  8903,  8903,  8903,  36,    8903,  36,    36,    36,
36,    36,    36,    36,    36,    36,    8903,  425,   425,   425,
425,   425,   425,   425,   425,   425,   425,   425,   425,   425,
425,   425,   6380,  6380,  6380,  367,   6380,  2877,  1916,  1916,
4512,  4195,  4195,  4512,  4195,  4195,  4195,  4512,  4512,  4771,
4771,  4771,  7692,  7692,  7692,  7692,  7692,  7692,  1839,  1839,
1839,  1839,  5201,  1839,  5201,  5201,  5201,  1953,  1413,  1413,
5740,  5957,  5740,  5740,  5740,  5740,  5957,  5957,  5957,  5740,
3017,  4290,  759,   759,   759,   1066,  1066,  759,   6569,  6569,
6569,  7782,  6569,  6569,  6569,  6569,  7782,  7782,  3651,  3651,
3651,  3651,  427,   427,   427,   3651,  427,   427,   427,   427,
427,   427,   2622,  2107,  2107,  2107,  7035,  7035,  7035,  7334,
7334,  7035,  7334,  7334,  7035,  7035,  7035,  7035,  7035,  7035,
7035,  6186,  3300,  3300,  7031,  3300,  3300,  7031,  3300,  3300,
3300,  3300,  3300,  3300,  7031,  3300,  3300,  3300,  6835,  6835,
5164,  5164,  5164,  7092,  7092,  5164,  5164,  5164,  5164,  5164,
3722,  3722,  869,   869,   869,   869,   869,   869,   869,   869,
869,   869,   5122,  5122,  5122,  5122,  5122,  4840,  5122,  5122,
5122,  5122,  5122,  5122,  5122,  5122,  4840,  4840,  5122,  5122,
3743,  5122,  5658,  5658,  5658,  5658,  2388,  5475,  4805,  4805,
4805,  4805,  2597,  2597,  2597,  6009,  6009,  6009,  3606,  6009,
1778,  1778,  1778,  1778,  1778,  1778,  1778,  1778,  1778,  1778,
4645,  1778,  1778,  1778,  1778,  2751,  4364,  4364,  4094,  4364,
4094,  4094,  1222,  1222,  1222,  1222,  1222,  1222,  5041,  5041,
5110,  5110,  5110,  5110,  1335,  5110,  5110,  5110,  5110,  5110,
383,   5110,  3610,  3610,  3610,  3610,  3610,  3610,  3610,  3610,
7965,  7965,  7965,  7965,  7965,  3610,  7965,  3610,  2814,  2814,
2814,  8731,  2814,  2814,  2814,  2814,  1335,  1026,  1026,  1026,
6683,  2129,  6683,  6683,  2129,  2129,  827,   827,   827,   827,
827,   827,   827,   827,   827,   827,   827,   827,   827,   827,
827,   827,   827,   827,   827,   827,   827,   827,   5723,  5017,
5723,  5723,  5723,  5723,  5723,  5017,  4055,  4055,  3756,  3756,
3756,  3756,  3756,  3756,  3756,  3756,  3756,  3756,  616,   6933,
7871,  7871,  7871,  7871,  7871,  7871,  5846,  5846,  5846,  5846,
2019,  2019,  2019,  2019,  2019,  2019,  5261,  5261,  5261,  5261,
5261,  5261,  1737,  1737,  2041,  1737,  6532,  6532,  6532,  5676,
442,   442,   442,   1859,  1859,  442,   3101,  3101,  3101,  3101,
4143,  4143,  4143,  4143,  4143,  4143,  4143,  4143,  4143,  4143,
4143,  4143,  5726,  3102,  3102,  3102,  3102,  3102,  4880,  4880,
4880,  4880,  4880,  4880,  2595,  2595,  7052,  7052,  7052,  4885,
7052,  7052,  7052,  7052,  5177,  7052,  7052,  7052,  691,   691,
691,   691,   2000,  2000,  2000,  2000,  2000,  2000,  5999,  2000,
2000,  2000,  2000,  2000,  2000,  2000,  3692,  3692,  3692,  3692,
3692,  3692,  6111,  6111,  3692,  6111,  3692,  3692,  5741,  5741,
5741,  5741,  5741,  5741,  5741,  5741,  5741,  5741,  8670,  10473,
8670,  8670,  8670,  10473, 8670,  4035,  4035,  8670,  5261,  8670,
4035,  4035,  5261,  4035,  4035,  8670,  4035,  5261,  5261,  4035,
6497,  10666, 734,   734,   734,   734,   734,   734,   9318,  9318,
8980,  8980,  9155,  9155,  9155,  9318,  5991,  9318,  314,   9318,
2378,  2378,  3102,  2378,  3102,  2378,  2854,  5416,  2889,  2889,
2889,  2889,  2889,  2889,  2889,  2889,  2889,  2889,  2889,  2889,
2889,  2889,  2889,  2889,  2931,  2931,  2889,  2889,  2889,  2889,
4240,  4240,  4240,  4240,  4240,  2162,  9862,  2162,  7246,  7246,
7246,  7246,  7434,  7246,  7246,  7246,  7246,  7246,  7246,  7246,
7246,  7246,  7246,  7246,  7246,  7246,  4333,  4333,  4333,  4333,
4333,  4333,  4333,  4333,  4333,  4333,  5244,  5244,  5244,  5244,
5244,  5244,  51,    51,    51,    51,    51,    51,    51,    51,
51,    51,    51,    51,    51,    51,    6447,  6810,  6810,  6447,
2921,  2921,  2046,  2046,  3424,  2046,  2046,  2046,  6599,  1911,
6599,  6599,  1911,  1911,  6599,  1911,  6599,  1911,  327,   327,
327,   327,   327,   327,   327,   327,   2678,  4094,  4094,  4094,
4094,  4094,  5633,  5633,  5633,  5985,  7152,  7152,  7152,  7152,
7152,  7152,  8279,  5283,  5283,  32,    5283,  32,    32,    32,
32,    32,    32,    32,    32,    32,    32,    32,    32,    32,
32,    32,    5283,  32,    32,    32,    5283,  32,    32,    32,
32,    32,    3634,  3634,  3634,  3634,  1158,  3634,  3634,  3634,
3634,  3634,  3634,  3634,  3634,  3634,  3101,  3101,  3101,  1392,
1392,  1392,  3101,  3101,  3101,  1392,  4929,  4929,  4929,  4929,
4929,  4929,  4929,  4929,  4929,  4929,  4929,  4929,  1803,  1803,
1803,  9232,  9232,  9232,  9232,  1803,  9232,  9232,  7228,  7228,
2129,  3435,  2129,  2129,  2129,  2641,  9158,  3351,  2641,  9158,
9158,  3351,  7167,  9158,  2129,  2129,  10358, 10358, 4330,  4330,
3814,  4330,  6012,  6012,  6012,  6012,  6012,  3814,  3814,  6012,
6012,  4330,  4330,  7264,  4330,  6012,  1446,  1446,  1446,  1446,
1446,  1446,  1446,  1446,  1446,  1446,  1446,  1446,  11793, 1446,
1446,  1446,  1446,  1446,  1446,  1446,  1446,  1446,  1446,  1446,
8729,  8729,  427,   8729,  8729,  8729,  8729,  427,   8729,  8729,
8729,  8729,  8729,  8729,  8729,  8729,  7741,  7741,  7741,  7741,
4400,  4400,  4400,  4400,  4400,  4400,  4400,  4400,  4400,  4400,
4400,  4400,  4400,  4400,  4400,  4400,  11052, 5355,  5355,  11052,
11052, 11052, 11052, 5355,  11052, 11052, 11052, 11052, 11052, 11052,
11052, 11052, 11052, 11052, 3090,  2757,  3090,  3090,  5310,  5310,
7829,  7829,  4155,  4155,  5740,  5740,  4155,  5740,  4155,  5740,
4155,  4155,  4155,  4155,  4155,  4155,  4155,  4155,  5740,  5740,
3017,  3017,  3017,  3017,  5920,  2420,  4001,  5920,  4001,  4001,
1641,  1641,  6807,  6807,  6807,  6807,  6807,  6807,  6807,  6807,
6807,  6807,  4460,  4460,  4460,  4460,  4460,  4460,  4460,  4460,
9860,  9860,  9860,  9860,  9860,  9860,  9860,  9860,  9860,  9860,
6596,  6596,  6596,  6596,  5190,  5190,  2599,  3921,  2599,  2599,
6569,  6569,  8982,  8982,  8982,  8982,  8982,  8982,  8982,  8982,
10063, 1655,  10063, 10063, 11787, 11787, 11787, 11787, 11787, 11787,
85,    85,    550,   550,   550,   550,   550,   550,   550,   550,
550,   550,   4328,  1089,  10623, 10623, 10623, 10623, 10623, 10623,
10623, 10623, 10623, 10623, 8757,  8757,  5876,  6540,  4682,  4682,
2308,  2308,  6219,  2308,  2308,  4664,  3360,  3360,  3360,  3360,
3360,  3360,  7152,  7152,  6024,  6024,  6024,  6024,  6024,  6024,
6024,  6024,  6024,  6024,  6024,  6024,  5319,  5319,  5319,  5319,
713,   713,   713,   713,   713,   713,   10037, 713,   10037, 10037,
10037, 10037, 10950, 10900, 10950, 10950, 10900, 10950, 10950, 10950,
10950, 10950, 10950, 10950, 10950, 10950, 10950, 10950, 10950, 10950,
4518,  4518,  4518,  4518,  2263,  2263,  9473,  9473,  9473,  7371,
3818,  3818,  3818,  3818,  3818,  7505,  3818,  3818,  3818,  3818,
7505,  3818,  3818,  3818,  7505,  3818,  3818,  3818,  3818,  3818,
6810,  6810,  6810,  6810,  1790,  1118,  1118,  1790,  1118,  1790,
1118,  1790,  8982,  8982,  8982,  8982,  1165,  8982,  9317,  9317,
9317,  9317,  173,   173,   173,   173,   173,   173,   173,   173,
5069,  5069,  5069,  5069,  8058,  8058,  8058,  8058,  8058,  8058,
8058,  8058,  8058,  8058,  8058,  8058,  8058,  8058,  6230,  6574,
6574,  6574,  6574,  6574,  6574,  6574,  6574,  6574,  6574,  6574,
3101,  3101,  3101,  3101,  3101,  3101,  3101,  3101,  3101,  3101,
3101,  3101,  7502,  7502,  7502,  7502,  6313,  6313,  4518,  4518,
4518,  1606,  1606,  1606,  1606,  1606,  9284,  9284,  9284,  9837,
3830,  3269,  3269,  1606,  1606,  1606,  9284,  1606,  6912,  9284,
6912,  6912,  9284,  9284,  1606,  9284,  6545,  9284,  8502,  8502,
8502,  8502,  398,   398,   398,   398,   398,   398,   398,   398,
398,   398,   398,   398,   398,   398,   398,   398,   398,   398,
398,   398,   398,   398,   398,   398,   9158,  5275,  5275,  5275,
5275,  5275,  8169,  8169,  8169,  8169,  8169,  8169,  8962,  11967,
11967, 11967, 8962,  8962,  8962,  8962,  11967, 11967, 8962,  8962,
12618, 12618, 12618, 12618, 12618, 12618, 12618, 12618, 12618, 12618,
12618, 12618, 7414,  7414,  7414,  7414,  7414,  7414,  7414,  7414,
7414,  7414,  7414,  7414,  7414,  7414,  1426,  1426,  1426,  1426,
1426,  1426,  7020,  8968,  8731,  8968,  6251,  6251,  327,   327,
327,   327,   3649,  3649,  3649,  4765,  4765,  4765,  4765,  7688,
4765,  7688,  4765,  4765,  4765,  4765,  4765,  4765,  3267,  7688,
4682,  3115,  3115,  3115,  3115,  3115,  5929,  5929,  5929,  5929,
5929,  5929,  5929,  5929,  5929,  5929,  9332,  5929,  5321,  5321,
5321,  5321,  5321,  5321,  5321,  8753,  4410,  4410,  4410,  4410,
4410,  4410,  3300,  3300,  3300,  3300,  4069,  4069,  4069,  818,
818,   818,   4069,  4069,  4069,  4069,  4069,  10900, 656,   656,
3830,  3830,  3830,  3830,  3830,  3830,  3830,  3830,  3830,  3830,
3830,  3830,  9632,  9632,  9632,  9632,  9632,  7871,  9632,  7871,
9632,  9632,  7871,  7871,  7871,  7871,  7871,  9632,  7871,  7871,
7871,  7871,  7871,  7871,  7871,  7871,  7871,  7871,  7871,  7871,
7871,  7871,  5261,  10356, 5261,  5261,  5261,  5261,  5261,  5261,
5261,  5261,  5261,  5261,  6979,  10356, 10010, 10356, 5846,  10089,
5267,  5267,  5267,  5267,  4823,  5267,  10958, 11674, 11674, 11674,
11674, 11674, 11674, 11674, 10958, 10958, 11674, 11674, 11674, 11674,
8410,  11674, 8410,  734,   734,   734,   1885,  8410,  7020,  7020,
7020,  7020,  7020,  7020,  7020,  7020,  7020,  7020,  7020,  7020,
7020,  7020,  1055,  1055,  1055,  1055,  1055,  1055,  7167,  7167,
7167,  7167,  7167,  7167,  7167,  7167,  7167,  7167,  8443,  8443,
7471,  7471,  7471,  7471,  8443,  8443,  7471,  8443,  8443,  8443,
3269,  3269,  3269,  3269,  3269,  3269,  8286,  8286,  5925,  5925,
5925,  5925,  4901,  4901,  4901,  4901,  4901,  4901,  4901,  4901,
13343, 13343, 13343, 13343, 13343, 13343, 13343, 13343, 13343, 13343,
8111,  8111,  8111,  8111,  8952,  6978,  2484,  7742,  2484,  7742,
2484,  7742,  1953,  1953,  1953,  1953,  1953,  1953,  1953,  1953,
1953,  1953,  1953,  1953,  1953,  1953,  1953,  1953,  1953,  1953,
1953,  1953,  1953,  1964,  1201,  1964,  1501,  1501,  9004,  1501,
1501,  1501,  1501,  1501,  1501,  1501,  1501,  1501,  1501,  1501,
9497,  9497,  9497,  9497,  9497,  9497,  7751,  7751,  7751,  7751,
13738, 13738, 13738, 13738, 13738, 13738, 13738, 13738, 2387,  2387,
2387,  2387,  2387,  2387,  10089, 10245, 10245, 10245, 10245, 10245,
14486, 767,   8427,  767,   767,   8427,  1099,  8427,  8427,  8427,
8427,  8427,  767,   8427,  767,   767,   767,   767,   450,   15435,
8482,  8482,  8482,  4195,  18171, 15435, 15435, 450,   6203,  6203,
13051, 13051, 6143,  13051, 13051, 13051, 13051, 7956,  7218,  7218,
14111, 14111, 8643,  8643,  8643,  8643,  5832,  5832,  5832,  5832,
5832,  5832,  12089, 12089, 12089, 12089, 12089, 12089, 12089, 12089,
12089, 12089, 12089, 12089, 12089, 12089, 12089, 12089, 12089, 12089,
12089, 12089, 585,   585,   585,   585,   585,   585,   6468,  6468,
6468,  6468,  795,   10272, 10272, 1620,  10272, 12097, 12097, 12097,
12097, 12097, 10272, 12097, 10272, 12097, 1997,  5561,  5474,  5474,
14969, 14969, 11391, 11391, 11391, 11391, 2518,  2518,  2518,  2518,
2518,  2518,  2518,  2518,  2518,  2518,  2518,  2518,  2518,  2518,
6594,  6594,  6594,  6594,  6594,  6594,  6170,  16423, 6170,  6170,
16423, 16423, 16423, 6170,  16423, 16423, 6170,  16423, 5601,  5601,
5601,  5601,  5601,  5601,  5601,  5601,  1934,  5601,  5601,  5601,
5601,  5601,  5601,  5601,  5601,  5601,  5601,  5601,  5601,  8349,
8349,  8349,  10612, 3223,  10612, 10612, 10612, 10612, 10612, 7965,
10612, 3223,  3830,  3830,  3830,  3830,  3830,  3830,  10583, 10583,
10583, 10583, 10583, 10583, 516,   10583, 11222, 11222, 11222, 1373,
11222, 11222, 11222, 11222, 11222, 11222, 7871,  7871,  17470, 17470,
17470, 17470, 17470, 17470, 17470, 17431, 17431, 17431, 17470, 17470,
17470, 8502,  17470, 17431, 17470, 17470, 17431, 17431, 17431, 17470,
17470, 17431, 17470, 17431, 17470, 17470, 17431, 17470
附录B.1表V 0 的值
这些值表示在B.5.4.1中的上述应用中所述的表V0的值的示例集合。每项是以十进制表示的32比特整数。这些值应从第一列由上至下、然后第二列由上至下的读取,以此类推。
251291136        2581671944        1521339547        2068983570        2859178611
3952231631       3312220480        3041843489        2247491078        3284308411
3370958628       681232419         420130494         3669524410        3819792700
4070167936       307306866         10677091          1575146607        3557526733
123631495        4112503940        515623176         828029864         451874476
3351110283       1158111502        3457502702        3732001371        1740576081
3218676425       709227802         2115821274        3422026452        3592838701
2011642291       2724140433        2720124766        3370954177        1709429513
774603218        4201101115        3242576090        4006626915        3702918379
2402805061       4215970289        854310108         543812220         3533351328
1004366930       4048876515        425973987         1243116171        1641660745
1843948209       3031661061        325832382         3928372514        179350258
428891132        1909085522        1796851292        2791443445        2380520112
3746331984       510985033         2462744411        4081325272        3936163904
1591258008       1361682810        1976681690        2280435605        3685256204
3067016507       129243379         1408671665        885616073         3156252216
1433388735       3142379587        1228817808        616452097         1854258901
504005498        2569842483        3917210003        3188863436        2861641019
2032657933       3033268270        263976645         2780382310        3176611298
3419319784       1658118006        2593736473        2340014831        834787554
2805686246       932109358         2471651269        1208439576        331353807
3102436986       1982290045        4291353919        258356309         517858103
3808671154       2983082771        650792940         3837963200        3010168884
2501582075       3007670818        1191583883        2075009450        4012642001
3978944421       3448104768        3046561335        3214181212        2217188075
246043949        683749698         2466530435        3303882142        3756943137
4016898363       778296777         2545983082        880813252         3077882590
649743608        1399125101        969168436         1355575717        2054995199
1974987508       1939403708        2019348792        207231484         3081443129
2651273766       1692176003        2268075521        2420803184        3895398812
2357956801       3868299200        1169345068        358923368         1141097543
689605112        1422476658        3250240009        1617557768        2376261053
715807172        593093658         3963499681        3272161958        2626898255
2722736134       1878973865        2560755113        1771154147        2554703076
191939188        2526292949        911182396         2842106362        401233789
3535520147       1591602827        760842409         1751209208        1460049922
3277019569       3986158854        3569308693        1421030790        678083952
1470435941       3964389521        2687243553        658316681         1064990737
3763101702       2695031039        381854665         194065839         940909784
3232409631       1942050155        2613828404        3241510581        1673396780
122701163        424618399         2761078866        38625260          528881783
3920852693       1347204291        1456668111        301875395         1712547446
782246947        2669179716        883760091         4176141739        3629685652
372121310        2434425874        3294951678        297312930         1358307511
2995604341       2540801947        1604598575        2137802113
2045698575       1384069776        1985308198        1502984205
2332962102       4123580443        1014570543        3669376622
4005368743       1523670218        2724959607        3728477036
218596347        2708475297        3062518035        234652930
3415381967       1046771089        3115293053        2213589897
4207612806       2229796016        138853680         2734638932
861117671        1255426612        4160398285        1129721478
3676575285       4213663089        3322241130        3187422815
附录B.2表V 1 的值
这些值表示在B.5.4.1中的上述应用中所述的表V1的值的示例集合。每项是以十进制表示的32比特整数。这些值应从第一列由上至下、然后第二列由上至下的读取,以此类推。
807385413        3843885867        3545667983        644189126        922673938
2043073223       4201106668        332038910         226475395        3877430102
3336749796       415906198         976628269         307789415        3422391938
1302105833       19296841          3123492423        1196105631       1414347295
2278607931       2402488407        3041418372        3191691839       1971054608
541015020        2137119134        2258059298        782852669        3061798054
1684564270       1744097284        2139377204        1608507813       830555096
372709334        579965637         3243642973        1847685900       2822905141
3508252125       2037662632        3226247917        4069766876       167033190
1768346005       852173610         3674004636        3931548641       1079139428
1270451292       2681403713        2698992189        2526471011       4210126723
2603029534       1047144830        3453843574        766865139        3593797804
2049387273       2982173936        1963216666        2115084288       429192890
3891424859       910285038         3509855005        4259411376       372093950
2152948345       4187576520        2358481858        3323683436       1779187770
4114760273       2589870048        747331248         568512177        3312189287
915180310        989448887         1957348676        3736601419       204349348
3754787998       3292758024        1097574450        1800276898       452421568
700503826        506322719         2435697214        4012458395       2800540462
2131559305       176010738         3870972145        1823982          3733109044
1308908630       1865471968        1888833893        27980198         1235082423
224437350        2619324712        2914085525        2023839966       1765319556
4065424007       564829442         4161315584        869505096        3174729780
3638665944       1996870325        1273113343        431161506        3762994475
1679385496       339697593         3269644828        1024804023       3171962488
3431345226       4071072948        3681293816        1853869307       442160826
1779595665       3618966336        412536684         3393537983       198349622
3068494238       2111320126        1156034077        1500703614       45942637
1424062773       1093955153        3823026442        3019471560       1324086311
1033448464       957978696         1066971017        1351086955       2901868599
4050396853       892010560         3598330293        3096933631       678860040
3302235057       1854601078        1979273937        3034634988       3812229107
420600373        1873407527        2079029895        2544598006       19936821
2868446243       2498544695        1195045909        1230942551       1119590141
311689386        2694156259        1071986421        3362230798       3640121682
259047959        1927339682        2712821515        159984793        3545931032
4057180909       1650555729        3377754595        491590373        2102949142
1575367248       183933047         2184151095        3993872886       2828208598
4151214153       3061444337        750918864         3681855622       3603378023
110249784        2067387204        2585729879        903593547        4135048896
3006865921       228962564         4249895712        3535062472
4293710613       3904109414        1832579367        1799803217
3501256572       1595995433        1192240192        772984149
998007483        1780701372        946734366         895863112
499288295        2463145963        31230688          1899036275
1205710710       307281463         3174399083        4187322100
2997199489       3237929991        3549375728        101856048
640417429        3852995239        1642430184        234650315
3044194711       2398693510        1904857554        3183125617
486690751        3754138664        861877404         3190039692
2686640734       522074127         3277825584        525584357
2394526209       146352474         4267074718        1286834489
2521660077       4104915256        3122860549        455810374
49993987         3029415884        666423581         1869181575

Claims (31)

1.一种用于编码数据以便在预期至少部分地如删除信道一样执行的通信信道上从源传输至目的地的方法,所述方法包括:
获得表示所述要被编码的数据的输入码元的有序集;
选择多个域数组值,其中每个域数组是从有限域数组导出的并且至少两个不同的有限域数组被表示;
生成表示系数矩阵——其表示所述多个域数组中的至少两个——的数据结构,其中这些域数组中的至少两个是从彼此不同的有限域数组导出的;
生成作为输入码元的线性组合的输出码元,其中特定组合是依据于表示所述系数矩阵的所述数据结构;以及
使用所生成的输出码元并对所述数据编码。
2.如权利要求1所述的方法,其特征在于,所述表示系数矩阵的数据结构是单元值的二维数组,每个单元值表示在一个输出码元的生成中一个输入码元的系数以使得当系数为非零或以某一基数为模取余不为零时,该相应输出码元的值依赖于该相应输入码元的值。
3.如权利要求1所述的方法,其特征在于,所述表示系数矩阵的数据结构是指定系数值的规则集,且其中规则指示系数不为零或以某一基数为模取余不为零,则相应输出码元的值依赖于该相应输入码元的值。
4.如权利要求1所述的方法,其特征在于,针对所述输入码元的固定值的任意集合能够从所述输入码元集合生成的唯一性输出码元的数目独立于所述域数组大小。
5.如权利要求1所述的方法,其特征在于,表示系数矩阵——其表示所述多个域数组中的至少两个——的数据结构的所述生成是使用从第一有限域数组导出的第一域数组和从第二有限域数组导出的第二域数组的生成,其中这些域数组中的至少两个是从彼此不同的有限域数组导出的,其中所述第一有限域数组和所述第二有限域数组是不同的,且此外所述第一有限域和所述第二有限域各自是从包含GF(2)、GF(4)、GF(16)、GF(256)的域集合中选出的。
6.如权利要求5所述的方法,其特征在于,所述第一有限域数组是GF(2)而所述第二有限域数组为GF(256)。
7.如权利要求5所述的方法,其特征在于,所述第一有限域数组是GF(2)而所述第二有限域数组为GF(4)。
8.如权利要求5所述的方法,其特征在于,所述第一有限域数组是GF(4)而所述第二有限域数组为GF(16)。
9.如权利要求5所述的方法,其特征在于,所述第一有限域数组是GF(16)而所述第二有限域数组为GF(256)。
10.如权利要求5所述的方法,其特征在于,所述第一有限域数组小于所述第二有限域数组。
11.如权利要求5所述的方法,其特征在于,所述第一有限域数组大于所述第二有限域数组。
12.一种用于将在目的地处通过预期至少部分地如删除信道一样执行的通信信道从源接收到的传输的数据解码的方法,所述方法包括:
接收多个输出码元——从被编码为所述多个输出码元的输入码元的有序集生成——的至少部分,其中每个输出码元是作为具有选自有限域的系数的所述输入码元中一个或多个的线性组合而生成的,其中至少一个系数是第一有限域的成员且至少另一系数是第二有限域的成员而不是所述第一有限域的成员;以及
从任意预定数目的输出码元的接收再生所述输入码元的有序集至所需的精确度。
13.如权利要求12所述的方法,其特征在于,针对所述输入码元的固定值的任意集合可能已从所述输入码元集合生成的唯一性输出码元的数目独立于所述域数组大小。
14.如权利要求12所述的方法,其特征在于,所述有限域是使得第一有限域数组和第二有限域数组是不同的且所述第一有限域和所述第二有限域各自是从包含GF(2)、GF(4)、GF(16)、GF(256)的域集合中选出的。
15.如权利要求14所述的方法,其特征在于,所述第一有限域数组是GF(2)而所述第二有限域数组为GF(256)。
16.如权利要求14所述的方法,其特征在于,所述第一有限域数组是GF(2)而所述第二有限域数组为GF(4)。
17.如权利要求14所述的方法,其特征在于,所述第一有限域数组是GF(4)而所述第二有限域数组为GF(16)。
18.如权利要求14所述的方法,其特征在于,所述第一有限域数组是GF(16)而所述第二有限域数组为GF(256)。
19.如权利要求14所述的方法,其特征在于,所述第一有限域数组小于所述第二有限域数组。
20.如权利要求14所述的方法,其特征在于,所述第一有限域数组大于所述第二有限域数组。
21.一种用于编码数据以便在预期至少部分地如删除信道一样执行的通信信道上从源传输至目的地的方法,所述方法包括:
获得表示所述要被编码的数据的输入码元的有序集;
选择多个域数组的值,其中每个域数组是从有限域数组导出的并且至少两个不同的有限域数组被表示;
生成表示系数矩阵——其表示所述多个域数组中的至少两个——的数据结构,其中这些域数组中的至少两个是从彼此不同的有限域数组导出的;
从所述输入码元的有序集生成多个冗余码元,其中每个冗余码元是基于具有有限域上的系数的所述输入码元中的一个或多个与其它冗余码元的一组线性约束而生成的;
生成作为输入码元的线性组合的输出码元,其中特定组合是根据表示所述系数矩阵的所述数据结构;
从输入码元和冗余码元的组合集生成多个输出码元,其中每个输出码元是作为具有选自有限域的系数的所述输入码元和冗余码元的组合集中的一个或多个的线性组合而生成的;
使用所生成的输出码元并对所述数据编码。
22.如权利要求21所述的方法,其特征在于,针对所述输入码元的固定值的任意集合可从所述输入码元集合生成的冗余码元的数目独立于所述域数组大小。
23.如权利要求21所述的方法,其特征在于,所述有限域是使得第一有限域数组和第二有限域数组是不同的,且所述第一有限域和所述第二有限域各自是从包含GF(2)、GF(4)、GF(16)、GF(256)的域集合中选出的。
24.一种用于将在目的地处通过预期至少部分地如删除信道一样执行的通信信道从源接收到的传输的数据解码的方法,所述方法包括:
接收从输入和冗余码元的组合集生成的多个输出码元中的至少部分,其中每个输出码元是作为具有选自有限域的系数的输入码元和冗余码元的组合集中的一个或多个的线性组合而生成的,
其中所述多个冗余码元是从所述输入码元的有序集生成的,其中每个冗余码元是基于具有有限域上的系数的所述输入码元中的一个或多个与其它冗余码元的一组线性约束而生成的,
其中至少一个系数是第一有限域的成员且至少另一系数是第二有限域的成员而不是所述第一有限域的成员;以及
从任意预定数目的输出码元的接收再生所述输入码元的有序集至所需的精确度。
25.如权利要求24所述的方法,其特征在于,针对所述输入码元的固定值的任意集合可能已从所述输入码元集合生成的唯一性输出码元的数目独立于所述域数组大小。
26.如权利要求24所述的方法,其特征在于,所述第一有限域是GF(2)。
27.如权利要求24所述的方法,其特征在于,所述第二有限域是GF(256)。
28.如权利要求24所述的方法,其特征在于,所述第二有限域是GF(4)。
29.如权利要求24所述的方法,其特征在于,所述第一有限域是GF(4)。
30.如权利要求24所述的方法,其特征在于,所述第一有限域是GF(16)。
31.如权利要求24所述的方法,其特征在于,所述第二有限域是GF(16)。
CN2007800139722A 2006-02-21 2007-02-16 用于通信系统的基于多域的码生成器和解码器 Active CN101427495B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US77552806P 2006-02-21 2006-02-21
US60/775,528 2006-02-21
US11/674,655 US9270414B2 (en) 2006-02-21 2007-02-13 Multiple-field based code generator and decoder for communications systems
US11/674,655 2007-02-13
PCT/US2007/062302 WO2007098397A2 (en) 2006-02-21 2007-02-16 Multiple-field based code generator and decoder for communications systems

Publications (2)

Publication Number Publication Date
CN101427495A true CN101427495A (zh) 2009-05-06
CN101427495B CN101427495B (zh) 2013-12-25

Family

ID=38428179

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800139722A Active CN101427495B (zh) 2006-02-21 2007-02-16 用于通信系统的基于多域的码生成器和解码器

Country Status (7)

Country Link
US (1) US9270414B2 (zh)
EP (1) EP1980041B1 (zh)
JP (1) JP5329239B2 (zh)
KR (1) KR101355761B1 (zh)
CN (1) CN101427495B (zh)
ES (1) ES2563290T3 (zh)
WO (1) WO2007098397A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799495A (zh) * 2011-05-25 2012-11-28 英飞凌科技股份有限公司 用于生成校验和的装置
CN107534449A (zh) * 2015-05-12 2018-01-02 日本电信电话株式会社 解码装置、解码方法、及程序
US10785098B1 (en) 2019-04-30 2020-09-22 Alibaba Group Holding Limited Network configuration using multicast address modulation
WO2020220756A1 (zh) * 2019-04-30 2020-11-05 创新先进技术有限公司 一种配网方法和装置
CN112134573A (zh) * 2019-06-25 2020-12-25 三星电子株式会社 用于将数据存储在存储器装置内的方法和检索数据的方法

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
EP2278719B1 (en) * 2002-06-11 2013-12-18 Digital Fountain, Inc. Decoding of chain reaction codes through inactivation
KR101143282B1 (ko) 2002-10-05 2012-05-08 디지털 파운튼, 인크. 연쇄 반응 코드의 체계적 인코딩 및 디코딩
KR101183843B1 (ko) 2003-10-06 2012-09-19 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러정정 다중-스테이지 코드 생성기 및 디코더
KR101205758B1 (ko) 2004-05-07 2012-12-03 디지털 파운튼, 인크. 파일 다운로드 및 스트리밍 시스템
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
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
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
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
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
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
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
CN105406941B (zh) 2006-12-14 2019-05-10 汤姆逊许可证公司 通信系统的调制指示方法和装置
JP5286278B2 (ja) 2006-12-14 2013-09-11 トムソン ライセンシング 通信システムのための無レート符号復号法
KR101784078B1 (ko) 2006-12-14 2017-10-10 톰슨 라이센싱 통신 시스템에서의 레이트리스 인코딩
US20090304117A1 (en) * 2006-12-14 2009-12-10 Joshua Lawrence Koslov Concatenated coding/decoding in communication systems
US9729280B2 (en) * 2006-12-14 2017-08-08 Thomson Licensing ARQ with adaptive modulation for communication systems
MX2010002829A (es) 2007-09-12 2010-04-01 Digital Fountain Inc Generacion y comunicacion de informacion para identificacion de fuentes para permitir comunicaciones seguras.
US8370711B2 (en) 2008-06-23 2013-02-05 Ramot At Tel Aviv University Ltd. Interruption criteria for block decoding
KR101531184B1 (ko) * 2008-11-28 2015-06-24 에스케이 텔레콤주식회사 상하위 계층 간의 연동을 이용한 복호화 방법 및 장치와 그를 이용하여 데이터 송수신 시스템
GB2454606C (en) * 2009-02-02 2017-01-25 Skype Ltd Method of transmitting data in a communication system
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9298722B2 (en) * 2009-07-16 2016-03-29 Novell, Inc. Optimal sequential (de)compression of digital data
US9015564B2 (en) 2009-08-19 2015-04-21 Qualcomm Incorporated Content delivery system with allocation of source data and repair data among HTTP servers
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
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
KR101154818B1 (ko) * 2009-10-06 2012-06-08 고려대학교 산학협력단 랩터 부호 사용 시스템을 위한 복호화 방법
US9225961B2 (en) 2010-05-13 2015-12-29 Qualcomm Incorporated Frame packing for asymmetric stereo video
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
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
TWI445323B (zh) * 2010-12-21 2014-07-11 Ind Tech Res Inst 資料傳送的混合式編解碼裝置與方法
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
KR101258958B1 (ko) * 2011-08-23 2013-04-29 고려대학교 산학협력단 랩터 부호를 이용하는 부호화 장치 및 부호화 방법
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
DE102011115100B3 (de) * 2011-10-07 2012-12-27 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Wiederherstellen von verloren gegangenen und/oder beschädigten Daten
IN2014CN02992A (zh) 2011-11-01 2015-07-03 Qualcomm Inc
DE102012200134B4 (de) * 2012-01-05 2013-08-22 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Übertragen eines analogen oder digitalen Signals
US8953612B2 (en) * 2012-03-07 2015-02-10 Cmmb Vision Usa Inc Efficient broadcasting via random linear packet combining
DE102012203653B3 (de) * 2012-03-08 2013-07-18 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Wiederherstellen von verloren gegangenen und/oder beschädigten Daten
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
CN102833051B (zh) * 2012-08-24 2014-12-10 北京理工大学 基于反馈的喷泉编码广播方法
TWI485992B (zh) * 2012-08-31 2015-05-21 Ind Tech Res Inst 猛禽碼之編碼加速裝置與方法
US10015486B2 (en) * 2012-10-26 2018-07-03 Intel Corporation Enhanced video decoding with application layer forward error correction
CN103051424B (zh) * 2013-01-07 2015-11-18 北京理工大学 一种不等错误保护喷泉码的无线传输方法
CA2820637A1 (en) * 2013-06-19 2014-12-19 The Governors Of The University Of Alberta Network coding using an outer coding process
JP6539209B2 (ja) * 2013-11-15 2019-07-03 日本放送協会 符号化器、復号器、送信装置及び受信装置
TWI523465B (zh) * 2013-12-24 2016-02-21 財團法人工業技術研究院 檔案傳輸系統和方法
GB2527602A (en) 2014-06-27 2015-12-30 Norwegian University Of Science And Technology Galois field coding techniques
US9590657B2 (en) 2015-02-06 2017-03-07 Alcatel-Lucent Usa Inc. Low power low-density parity-check decoding
US9935654B2 (en) * 2015-02-06 2018-04-03 Alcatel-Lucent Usa Inc. Low power low-density parity-check decoding
US10084567B2 (en) 2015-03-04 2018-09-25 Qualcomm Incorporated Early termination in enhanced multimedia broadcast-multicast service reception
JP6693508B2 (ja) * 2015-04-03 2020-05-13 日本電気株式会社 秘密計算システム、サーバ装置、秘密計算方法、および、プログラム
US9672030B2 (en) * 2015-10-14 2017-06-06 International Business Machines Corporation Generating comprehensive symbol tables for source code files
US10009152B2 (en) * 2016-03-04 2018-06-26 Huawei Technologies Co., Ltd. System and method for rate-less multiple access
DE102017203202A1 (de) * 2017-02-28 2018-08-30 Robert Bosch Gmbh Verfahren zum Übertragen von Nachrichten in einem Kommunikationsnetzwerk, Gateway und Kommunikationsnetzwerk
CN107332647B (zh) * 2017-06-12 2020-09-22 华南理工大学 一种Raptor码的高效HARQ方法
WO2019011219A1 (zh) 2017-07-11 2019-01-17 上海交通大学 基于媒体内容的自适应系统码fec编译码方法、装置、系统及介质
EP3457601B1 (en) * 2017-09-13 2019-12-25 Siemens Aktiengesellschaft A method for sending digital data over a number of channels
JP2019057752A (ja) 2017-09-19 2019-04-11 東芝メモリ株式会社 メモリシステム
JP6818667B2 (ja) 2017-09-20 2021-01-20 キオクシア株式会社 メモリシステム
RU2674316C1 (ru) * 2017-12-29 2018-12-06 Общество с ограниченной ответственностью "Радио Гигабит" Способ реализации гибридного автоматического запроса на передачу при использовании многоуровневого кодирования данных
US11271685B2 (en) 2017-12-29 2022-03-08 Limited Liability Company “Radio Gigabit” Method of hybrid automatic repeat request implementation for data transmission with multilevel coding
SG11202100370TA (en) * 2018-08-07 2021-03-30 Qualcomm Inc Adaptive modulo base selection for non-linear precoding introduction
US10673463B2 (en) * 2018-10-25 2020-06-02 Hewlett Packard Enterprise Development Lp Combined blocks of parts of erasure coded data portions
CN112953568B (zh) * 2021-02-02 2023-11-17 国家广播电视总局广播电视科学研究院 一种用于删除信道的前向纠错码及其构造方法

Family Cites Families (551)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3909721A (en) 1972-01-31 1975-09-30 Signatron Signal processing system
US4365338A (en) 1980-06-27 1982-12-21 Harris Corporation Technique for high rate digital transmission over a dynamic dispersive channel
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4589112A (en) * 1984-01-26 1986-05-13 International Business Machines Corporation System for multiple error detection with single and double bit error correction
US4901319A (en) * 1988-03-18 1990-02-13 General Electric Company Transmission system with adaptive interleaving
GB8815978D0 (en) 1988-07-05 1988-08-10 British Telecomm Method & apparatus for encoding decoding & transmitting data in compressed form
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
US7594250B2 (en) 1992-04-02 2009-09-22 Debey Henry C Method and system of program transmission optimization using a redundant transmission sequence
US5421031A (en) * 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US5329369A (en) 1990-06-01 1994-07-12 Thomson Consumer Electronics, Inc. Asymmetric picture compression
US5455823A (en) 1990-11-06 1995-10-03 Radio Satellite Corporation Integrated communications terminal
US5164963A (en) 1990-11-07 1992-11-17 At&T Bell Laboratories Coding for digital transmission
US5465318A (en) 1991-03-28 1995-11-07 Kurzweil Applied Intelligence, Inc. Method for generating a speech recognition model for a non-vocabulary utterance
US5379297A (en) * 1992-04-09 1995-01-03 Network Equipment Technologies, Inc. Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode
EP0543070A1 (en) 1991-11-21 1993-05-26 International Business Machines Corporation Coding system and method using quaternary codes
US5371532A (en) 1992-05-15 1994-12-06 Bell Communications Research, Inc. Communications architecture and method for distributing information services
US5425050A (en) 1992-10-23 1995-06-13 Massachusetts Institute Of Technology Television transmission system using spread spectrum and orthogonal frequency-division multiplex
US5372532A (en) 1993-01-26 1994-12-13 Robertson, Jr.; George W. Swivel head cap connector
EP0613249A1 (en) 1993-02-12 1994-08-31 Altera Corporation Custom look-up table with reduced number of architecture bits
DE4316297C1 (de) 1993-05-14 1994-04-07 Fraunhofer Ges Forschung Frequenzanalyseverfahren
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
US5590405A (en) 1993-10-29 1996-12-31 Lucent Technologies Inc. Communication technique employing variable information transmission
JP2576776B2 (ja) * 1993-11-10 1997-01-29 日本電気株式会社 パケット伝送方法・パケット伝送装置
US5517508A (en) * 1994-01-26 1996-05-14 Sony Corporation Method and apparatus for detection and error correction of packetized digital data
CA2140850C (en) 1994-02-24 1999-09-21 Howard Paul Katseff Networked system for display of multimedia presentations
US5566208A (en) 1994-03-17 1996-10-15 Philips Electronics North America Corp. Encoder buffer having an effective size which varies automatically with the channel bit-rate
US5432787A (en) 1994-03-24 1995-07-11 Loral Aerospace Corporation Packet data transmission system with adaptive data recovery method
US5757415A (en) * 1994-05-26 1998-05-26 Sony Corporation On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks are re-arranged for storage to data storage means
US5802394A (en) 1994-06-06 1998-09-01 Starlight Networks, Inc. Method for accessing one or more streams in a video storage system using multiple queues and maintaining continuity thereof
US5739864A (en) 1994-08-24 1998-04-14 Macrovision Corporation Apparatus for inserting blanked formatted fingerprint data (source ID, time/date) in to a video signal
US5568614A (en) 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5668948A (en) 1994-09-08 1997-09-16 International Business Machines Corporation Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports
US5926205A (en) 1994-10-19 1999-07-20 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
US5659614A (en) 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US5617541A (en) * 1994-12-21 1997-04-01 International Computer Science Institute System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionalized priority level and received fractionalized packets
JP3614907B2 (ja) 1994-12-28 2005-01-26 株式会社東芝 データ再送制御方法及びデータ再送制御システム
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
US5835165A (en) 1995-06-07 1998-11-10 Lsi Logic Corporation Reduction of false locking code words in concatenated decoders
US5805825A (en) 1995-07-26 1998-09-08 Intel Corporation Method for semi-reliable, unidirectional broadcast information services
JP3167638B2 (ja) * 1995-08-04 2001-05-21 三洋電機株式会社 ディジタル変調方法と復調方法及びディジタル変調回路と復調回路
US6079041A (en) 1995-08-04 2000-06-20 Sanyo Electric Co., Ltd. Digital modulation circuit and digital demodulation circuit
US5754563A (en) * 1995-09-11 1998-05-19 Ecc Technologies, Inc. Byte-parallel system for implementing reed-solomon error-correcting codes
KR0170298B1 (ko) 1995-10-10 1999-04-15 김광호 디지탈 비디오 테이프의 기록 방법
US5751336A (en) * 1995-10-12 1998-05-12 International Business Machines Corporation Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems
JP3305183B2 (ja) 1996-01-12 2002-07-22 株式会社東芝 ディジタル放送受信端末装置
US6012159A (en) * 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5852565A (en) 1996-01-30 1998-12-22 Demografx Temporal and resolution layering in advanced television
US5936659A (en) 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
US5903775A (en) * 1996-06-06 1999-05-11 International Business Machines Corporation Method for the sequential transmission of compressed video information at varying data rates
US5745504A (en) 1996-06-25 1998-04-28 Telefonaktiebolaget Lm Ericsson Bit error resilient variable length code
US5940863A (en) 1996-07-26 1999-08-17 Zenith Electronics Corporation Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators
US5936949A (en) 1996-09-05 1999-08-10 Netro Corporation Wireless ATM metropolitan area network
KR100261706B1 (ko) 1996-12-17 2000-07-15 가나이 쓰도무 디지탈방송신호의 수신장치와 수신 및 기록재생장치
US6011590A (en) * 1997-01-03 2000-01-04 Ncr Corporation Method of transmitting compressed information to minimize buffer space
US6044485A (en) * 1997-01-03 2000-03-28 Ericsson Inc. Transmitter method and transmission system using adaptive coding based on channel characteristics
US6141053A (en) 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
EP0854650A3 (en) 1997-01-17 2001-05-02 NOKIA TECHNOLOGY GmbH Method for addressing a service in digital video broadcasting
US5946357A (en) 1997-01-17 1999-08-31 Telefonaktiebolaget L M Ericsson Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
US6014706A (en) * 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
EP1024672A1 (en) 1997-03-07 2000-08-02 Sanyo Electric Co., Ltd. Digital broadcast receiver and display
US6115420A (en) 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
DE19716011A1 (de) 1997-04-17 1998-10-22 Abb Research Ltd Verfahren und Vorrichtung zur Informationsübertragung über Stromversorgungsleitungen
US6226259B1 (en) 1997-04-29 2001-05-01 Canon Kabushiki Kaisha Device and method for transmitting information device and method for processing information
US5970098A (en) 1997-05-02 1999-10-19 Globespan Technologies, Inc. Multilevel encoder
US5844636A (en) 1997-05-13 1998-12-01 Hughes Electronics Corporation Method and apparatus for receiving and recording digital packet data
JP4110593B2 (ja) 1997-05-19 2008-07-02 ソニー株式会社 信号記録方法及び信号記録装置
JPH1141211A (ja) 1997-05-19 1999-02-12 Sanyo Electric Co Ltd ディジタル変調回路と変調方法、ディジタル復調回路と復調方法
WO1998053454A1 (fr) 1997-05-19 1998-11-26 Sanyo Electric Co., Ltd. Modulation et demodulation numeriques
US6128649A (en) 1997-06-02 2000-10-03 Nortel Networks Limited Dynamic selection of media streams for display
US6081907A (en) 1997-06-09 2000-06-27 Microsoft Corporation Data delivery system and method for delivering data and redundant information over a unidirectional network
US5917852A (en) 1997-06-11 1999-06-29 L-3 Communications Corporation Data scrambling system and method and communications system incorporating same
KR100240869B1 (ko) 1997-06-25 2000-01-15 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
US6175944B1 (en) * 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US6047069A (en) 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
US6904110B2 (en) 1997-07-31 2005-06-07 Francois Trans Channel equalization system and method
US6178536B1 (en) * 1997-08-14 2001-01-23 International Business Machines Corporation Coding scheme for file backup and systems based thereon
FR2767940A1 (fr) * 1997-08-29 1999-02-26 Canon Kk Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre
EP0903955A1 (en) 1997-09-04 1999-03-24 STMicroelectronics S.r.l. Modular architecture PET decoder for ATM networks
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
US6134596A (en) 1997-09-18 2000-10-17 Microsoft Corporation Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
US6272658B1 (en) 1997-10-27 2001-08-07 Kencast, Inc. Method and system for reliable broadcasting of data files and streams
US6163870A (en) 1997-11-06 2000-12-19 Compaq Computer Corporation Message encoding with irregular graphing
US6195777B1 (en) * 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
US6081918A (en) 1997-11-06 2000-06-27 Spielman; Daniel A. Loss resilient code with cascading series of redundant layers
JP3472115B2 (ja) 1997-11-25 2003-12-02 Kddi株式会社 マルチチャンネルを用いるビデオデータ伝送方法及びその装置
US5870412A (en) * 1997-12-12 1999-02-09 3Com Corporation Forward error correction system for packet based real time media
US6243846B1 (en) 1997-12-12 2001-06-05 3Com Corporation Forward error correction system for packet based data and real time media, using cross-wise parity calculation
US6849803B1 (en) * 1998-01-15 2005-02-01 Arlington Industries, Inc. Electrical connector
US6097320A (en) 1998-01-20 2000-08-01 Silicon Systems, Inc. Encoder/decoder system with suppressed error propagation
US6226301B1 (en) 1998-02-19 2001-05-01 Nokia Mobile Phones Ltd Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system
US6141788A (en) 1998-03-13 2000-10-31 Lucent Technologies Inc. Method and apparatus for forward error correction in packet networks
US6278716B1 (en) 1998-03-23 2001-08-21 University Of Massachusetts Multicast with proactive forward error correction
EP1075762A1 (en) 1998-04-02 2001-02-14 Sarnoff Corporation Bursty data transmission of compressed video data
US6185265B1 (en) * 1998-04-07 2001-02-06 Worldspace Management Corp. System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload
US6067646A (en) * 1998-04-17 2000-05-23 Ameritech Corporation Method and system for adaptive interleaving
US6018359A (en) * 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system
US6445717B1 (en) 1998-05-01 2002-09-03 Niwot Networks, Inc. System for recovering lost information in a data stream
US6421387B1 (en) 1998-05-15 2002-07-16 North Carolina State University Methods and systems for forward error correction based loss recovery for interactive video transmission
US6937618B1 (en) 1998-05-20 2005-08-30 Sony Corporation Separating device and method and signal receiving device and method
US6333926B1 (en) 1998-08-11 2001-12-25 Nortel Networks Limited Multiple user CDMA basestation modem
EP1110344A1 (en) 1998-09-04 2001-06-27 AT&T Corp. Combined channel coding and space-block coding in a multi-antenna arrangement
US6415326B1 (en) 1998-09-15 2002-07-02 Microsoft Corporation Timeline correlation between multiple timeline-altered media streams
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
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
US6704370B1 (en) * 1998-10-09 2004-03-09 Nortel Networks Limited Interleaving methodology and apparatus for CDMA
IT1303735B1 (it) 1998-11-11 2001-02-23 Falorni Italia Farmaceutici S Acidi ialuronici reticolati e loro usi medici.
US6408128B1 (en) 1998-11-12 2002-06-18 Max Abecassis Replaying with supplementary information a segment of a video
US7157314B2 (en) 1998-11-16 2007-01-02 Sandisk Corporation Vertically stacked field programmable nonvolatile memory and method of fabrication
JP2000151426A (ja) 1998-11-17 2000-05-30 Toshiba Corp インターリーブ・デインターリーブ回路
US6166544A (en) 1998-11-25 2000-12-26 General Electric Company MR imaging system with interactive image contrast control
US6876623B1 (en) 1998-12-02 2005-04-05 Agere Systems Inc. Tuning scheme for code division multiplex broadcasting system
DE69808809T2 (de) 1998-12-03 2003-06-18 Fraunhofer Ges Forschung Vorrichtung und verfahren zur datenübermittlung und zum datenempfang
US6637031B1 (en) * 1998-12-04 2003-10-21 Microsoft Corporation Multimedia presentation latency minimization
US6496980B1 (en) 1998-12-07 2002-12-17 Intel Corporation Method of providing replay on demand for streaming digital multimedia
US6223324B1 (en) * 1999-01-05 2001-04-24 Agere Systems Guardian Corp. Multiple program unequal error protection for digital audio broadcasting and other applications
JP3926499B2 (ja) 1999-01-22 2007-06-06 株式会社日立国際電気 畳み込み符号軟判定復号方式の受信装置
US6618451B1 (en) 1999-02-13 2003-09-09 Altocom Inc Efficient reduced state maximum likelihood sequence estimator
US6041001A (en) * 1999-02-25 2000-03-21 Lexar Media, Inc. Method of increasing data reliability of a flash memory device without compromising compatibility
EP1083496A1 (en) 1999-03-03 2001-03-14 Sony Corporation Transmitter, receiver, transmitter/receiver system, transmission method and reception method
US6785323B1 (en) * 1999-11-22 2004-08-31 Ipr Licensing, Inc. Variable rate coding for forward link
US6466698B1 (en) 1999-03-25 2002-10-15 The United States Of America As Represented By The Secretary Of The Navy Efficient embedded image and video compression system using lifted wavelets
JP3256517B2 (ja) 1999-04-06 2002-02-12 インターナショナル・ビジネス・マシーンズ・コーポレーション 符号化回路、回路、パリティ生成方法及び記憶媒体
US6535920B1 (en) * 1999-04-06 2003-03-18 Microsoft Corporation Analyzing, indexing and seeking of streaming information
US6609223B1 (en) 1999-04-06 2003-08-19 Kencast, Inc. Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter
US6804202B1 (en) 1999-04-08 2004-10-12 Lg Information And Communications, Ltd. Radio protocol for mobile communication system and method
US7885340B2 (en) 1999-04-27 2011-02-08 Realnetworks, Inc. System and method for generating multiple synchronized encoded representations of media data
FI113124B (fi) 1999-04-29 2004-02-27 Nokia Corp Tiedonsiirto
EP1051027B1 (en) 1999-05-06 2006-05-24 Sony Corporation Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media
KR100416996B1 (ko) 1999-05-10 2004-02-05 삼성전자주식회사 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법
US6229824B1 (en) 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and interleaving
AU5140200A (en) 1999-05-26 2000-12-18 Enounce, Incorporated Method and apparatus for controlling time-scale modification during multi-media broadcasts
US6154452A (en) 1999-05-26 2000-11-28 Xm Satellite Radio Inc. Method and apparatus for continuous cross-channel interleaving
JP2000353969A (ja) 1999-06-11 2000-12-19 Sony Corp デジタル音声放送の受信機
US6577599B1 (en) 1999-06-30 2003-06-10 Sun Microsystems, Inc. Small-scale reliable multicasting
IL141800A0 (en) 1999-07-06 2002-03-10 Samsung Electronics Co Ltd Rate matching device and method for a data communication system
US6643332B1 (en) 1999-07-09 2003-11-04 Lsi Logic Corporation Method and apparatus for multi-level coding of digital signals
US6279072B1 (en) 1999-07-22 2001-08-21 Micron Technology, Inc. Reconfigurable memory with selectable error correction storage
JP3451221B2 (ja) 1999-07-22 2003-09-29 日本無線株式会社 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
US6453440B1 (en) 1999-08-04 2002-09-17 Sun Microsystems, Inc. System and method for detecting double-bit errors and for correcting errors due to component failures
JP2001060934A (ja) 1999-08-20 2001-03-06 Matsushita Electric Ind Co Ltd Ofdm通信装置
US6430233B1 (en) 1999-08-30 2002-08-06 Hughes Electronics Corporation Single-LNB satellite data receiver
US6332163B1 (en) 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
JP4284774B2 (ja) * 1999-09-07 2009-06-24 ソニー株式会社 送信装置、受信装置、通信システム、送信方法及び通信方法
US7529806B1 (en) 1999-11-04 2009-05-05 Koninklijke Philips Electronics N.V. Partitioning of MP3 content file for emulating streaming
JP2003510734A (ja) 1999-09-27 2003-03-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ストリーミングのエミュレート用ファイル分割
JP2001094625A (ja) 1999-09-27 2001-04-06 Canon Inc データ通信装置、データ通信方法及び記憶媒体
US20050160272A1 (en) 1999-10-28 2005-07-21 Timecertain, Llc System and method for providing trusted time in content of digital data files
US6523147B1 (en) * 1999-11-11 2003-02-18 Ibiquity Digital Corporation Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system
US6678855B1 (en) * 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6798791B1 (en) 1999-12-16 2004-09-28 Agere Systems Inc Cluster frame synchronization scheme for a satellite digital audio radio system
US6487692B1 (en) 1999-12-21 2002-11-26 Lsi Logic Corporation Reed-Solomon decoder
US6965636B1 (en) 2000-02-01 2005-11-15 2Wire, Inc. System and method for block error correction in packet-based digital communications
US20020009137A1 (en) * 2000-02-01 2002-01-24 Nelson John E. Three-dimensional video broadcasting system
WO2001057667A1 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Data streaming
US7304990B2 (en) 2000-02-03 2007-12-04 Bandwiz Inc. Method of encoding and transmitting data over a communication medium through division and segmentation
IL140504A0 (en) 2000-02-03 2002-02-10 Bandwiz Inc Broadcast system
JP2001251287A (ja) 2000-02-24 2001-09-14 Geneticware Corp Ltd ハードウエア保護内部秘匿鍵及び可変パスコードを利用する機密データ伝送方法
DE10009443A1 (de) 2000-02-29 2001-08-30 Philips Corp Intellectual Pty Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals
US6765866B1 (en) 2000-02-29 2004-07-20 Mosaid Technologies, Inc. Link aggregation
US6384750B1 (en) 2000-03-23 2002-05-07 Mosaid Technologies, Inc. Multi-stage lookup for translating between signals of different bit lengths
US6510177B1 (en) * 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
JP2001274776A (ja) 2000-03-24 2001-10-05 Toshiba Corp 情報データ伝送システムとその送信装置及び受信装置
AU2001244007A1 (en) 2000-03-31 2001-10-15 Ted Szymanski Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link
US6473010B1 (en) 2000-04-04 2002-10-29 Marvell International, Ltd. Method and apparatus for determining error correction code failure rate for iterative decoding algorithms
US8572646B2 (en) 2000-04-07 2013-10-29 Visible World Inc. System and method for simultaneous broadcast for personalized messages
WO2001077870A2 (en) 2000-04-08 2001-10-18 Sun Microsystems, Inc. Method of streaming a single media track to multiple clients
US6631172B1 (en) * 2000-05-01 2003-10-07 Lucent Technologies Inc. Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels
US6742154B1 (en) 2000-05-25 2004-05-25 Ciena Corporation Forward error correction codes for digital optical network optimization
US6738942B1 (en) 2000-06-02 2004-05-18 Vitesse Semiconductor Corporation Product code based forward error correction system
US6694476B1 (en) * 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder
GB2366159B (en) 2000-08-10 2003-10-08 Mitel Corp Combination reed-solomon and turbo coding
US6834342B2 (en) 2000-08-16 2004-12-21 Eecad, Inc. Method and system for secure communication over unstable public connections
KR100447162B1 (ko) 2000-08-19 2004-09-04 엘지전자 주식회사 래디오 링크 콘트롤(rlc)에서 프로토콜 데이터 유닛(pdu) 정보의 길이 지시자(li) 처리방법
JP2002073625A (ja) 2000-08-24 2002-03-12 Nippon Hoso Kyokai <Nhk> 放送番組に同期した情報提供の方法、サーバ及び媒体
US7340664B2 (en) 2000-09-20 2008-03-04 Lsi Logic Corporation Single engine turbo decoder with single frame size buffer for interleaving/deinterleaving
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
US7031257B1 (en) 2000-09-22 2006-04-18 Lucent Technologies Inc. Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol
US7151754B1 (en) 2000-09-22 2006-12-19 Lucent Technologies Inc. Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
US7490344B2 (en) 2000-09-29 2009-02-10 Visible World, Inc. System and method for seamless switching
US6411223B1 (en) 2000-10-18 2002-06-25 Digital Fountain, Inc. Generating high weight encoding symbols using a basis
US7613183B1 (en) 2000-10-31 2009-11-03 Foundry Networks, Inc. System and method for router data aggregation and delivery
US6694478B1 (en) 2000-11-07 2004-02-17 Agere Systems Inc. Low delay channel codes for correcting bursts of lost packets
US6732325B1 (en) 2000-11-08 2004-05-04 Digeo, Inc. Error-correction with limited working storage
US20020133247A1 (en) 2000-11-11 2002-09-19 Smith Robert D. System and method for seamlessly switching between media streams
US7072971B2 (en) 2000-11-13 2006-07-04 Digital Foundation, Inc. Scheduling of multiple files for serving on a server
US7240358B2 (en) * 2000-12-08 2007-07-03 Digital Fountain, Inc. Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources
KR100908954B1 (ko) 2000-12-15 2009-07-22 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니 오디오 또는 비디오 자료의 전송방법 및 장치
WO2002049343A1 (en) 2000-12-15 2002-06-20 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
US6850736B2 (en) * 2000-12-21 2005-02-01 Tropian, Inc. Method and apparatus for reception quality indication in wireless communication
US7143433B1 (en) 2000-12-27 2006-11-28 Infovalve Computing Inc. Video distribution system using dynamic segmenting of video data files
US20020085013A1 (en) 2000-12-29 2002-07-04 Lippincott Louis A. Scan synchronized dual frame buffer graphics subsystem
NO315887B1 (no) * 2001-01-04 2003-11-03 Fast Search & Transfer As Fremgangsmater ved overforing og soking av videoinformasjon
US8595340B2 (en) * 2001-01-18 2013-11-26 Yahoo! Inc. Method and system for managing digital content, including streaming media
DE10103387A1 (de) 2001-01-26 2002-08-01 Thorsten Nordhoff Windkraftanlage mit einer Einrichtung zur Hindernisbefeuerung bzw. Nachtkennzeichnung
FI118830B (fi) 2001-02-08 2008-03-31 Nokia Corp Tietovirran toisto
US6868083B2 (en) 2001-02-16 2005-03-15 Hewlett-Packard Development Company, L.P. Method and system for packet communication employing path diversity
US20020129159A1 (en) 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
KR100464360B1 (ko) 2001-03-30 2005-01-03 삼성전자주식회사 고속 패킷 데이터 전송 이동통신시스템에서 패킷 데이터채널에 대한 효율적인 에너지 분배 장치 및 방법
US20020143953A1 (en) 2001-04-03 2002-10-03 International Business Machines Corporation Automatic affinity within networks performing workload balancing
US6785836B2 (en) 2001-04-11 2004-08-31 Broadcom Corporation In-place data transformation for fault-tolerant disk storage systems
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
US7010052B2 (en) * 2001-04-16 2006-03-07 The Ohio University Apparatus and method of CTCM encoding and decoding for a digital communication system
US7035468B2 (en) 2001-04-20 2006-04-25 Front Porch Digital Inc. Methods and apparatus for archiving, indexing and accessing audio and video data
US20020191116A1 (en) 2001-04-24 2002-12-19 Damien Kessler System and data format for providing seamless stream switching in a digital video recorder
US6497479B1 (en) 2001-04-27 2002-12-24 Hewlett-Packard Company Higher organic inks with good reliability and drytime
US7962482B2 (en) 2001-05-16 2011-06-14 Pandora Media, Inc. Methods and systems for utilizing contextual feedback to generate and modify playlists
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US7076478B2 (en) 2001-06-26 2006-07-11 Microsoft Corporation Wrapper playlists on streaming media services
US6745364B2 (en) 2001-06-28 2004-06-01 Microsoft Corporation Negotiated/dynamic error correction for streamed media
JP2003018568A (ja) 2001-06-29 2003-01-17 Matsushita Electric Ind Co Ltd 再生システム、サーバ装置及び再生装置
US6895547B2 (en) 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US6928603B1 (en) 2001-07-19 2005-08-09 Adaptix, Inc. System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system
US6961890B2 (en) * 2001-08-16 2005-11-01 Hewlett-Packard Development Company, L.P. Dynamic variable-length error correction code
US7110412B2 (en) 2001-09-18 2006-09-19 Sbc Technology Resources, Inc. Method and system to transport high-quality video signals
FI115418B (fi) 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
US6990624B2 (en) 2001-10-12 2006-01-24 Agere Systems Inc. High speed syndrome-based FEC encoder and decoder and system using same
US7480703B2 (en) 2001-11-09 2009-01-20 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user
US7003712B2 (en) 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
US7363354B2 (en) 2001-11-29 2008-04-22 Nokia Corporation System and method for identifying and accessing network services
JP2003174489A (ja) 2001-12-05 2003-06-20 Ntt Docomo Inc ストリーミング配信装置、ストリーミング配信方法
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
KR100959573B1 (ko) 2002-01-23 2010-05-27 노키아 코포레이션 비디오 코딩시 이미지 프레임들의 그루핑
CN1625880B (zh) * 2002-01-30 2010-08-11 Nxp股份有限公司 在具有可变带宽的网络上流式传输多媒体数据
AU2003211057A1 (en) 2002-02-15 2003-09-09 Digital Fountain, Inc. System and method for reliably communicating the content of a live data stream
JP4126928B2 (ja) 2002-02-28 2008-07-30 日本電気株式会社 プロキシサーバ及びプロキシ制御プログラム
JP4116470B2 (ja) 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
FR2837332A1 (fr) 2002-03-15 2003-09-19 Thomson Licensing Sa Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants
JP2005522965A (ja) * 2002-04-15 2005-07-28 ノキア コーポレイション 通信局のrlp論理層
US6677864B2 (en) * 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
JP3629008B2 (ja) 2002-04-19 2005-03-16 松下電器産業株式会社 データ受信装置及びデータ配信システム
JP3689063B2 (ja) 2002-04-19 2005-08-31 松下電器産業株式会社 データ受信装置及びデータ配信システム
EP1501318A4 (en) 2002-04-25 2006-12-06 Sharp Kk BILDCODER, IMAGE DECODER, RECORDING MEDIA AND IMAGE RECORDER
US20030204602A1 (en) 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
US7177658B2 (en) 2002-05-06 2007-02-13 Qualcomm, Incorporated Multi-media broadcast and multicast service (MBMS) in a wireless communications system
US7200388B2 (en) 2002-05-31 2007-04-03 Nokia Corporation Fragmented delivery of multimedia
EP2278719B1 (en) 2002-06-11 2013-12-18 Digital Fountain, Inc. Decoding of chain reaction codes through inactivation
WO2003105484A1 (en) 2002-06-11 2003-12-18 Telefonaktiebolaget L M Ericsson (Publ) Generation of mixed media streams
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US6956875B2 (en) 2002-06-19 2005-10-18 Atlinks Usa, Inc. Technique for communicating variable bit rate data over a constant bit rate link
JP4154569B2 (ja) 2002-07-10 2008-09-24 日本電気株式会社 画像圧縮伸長装置
JP4120461B2 (ja) 2002-07-12 2008-07-16 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
EP1547382A4 (en) 2002-07-16 2013-10-30 Nokia Corp METHOD FOR DIRECT ACCESS AND UNIQUE IMAGE REFRESHING IN VIDEO CODING
AU2003252347A1 (en) 2002-07-31 2004-03-11 Sharp Kabushiki Kaisha Data communication device, its intermittent communication method, program describing its method, and recording medium on which program is recorded
JP2004070712A (ja) 2002-08-07 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム
MXPA05001714A (es) 2002-08-13 2005-04-19 Nokia Corp Intercalacion de simbolo.
US6985459B2 (en) * 2002-08-21 2006-01-10 Qualcomm Incorporated Early transmission and playout of packets in wireless communication systems
JP3836858B2 (ja) 2002-09-27 2006-10-25 富士通株式会社 データ配信方法、システム、伝送方法及びプログラム
JP3534742B1 (ja) 2002-10-03 2004-06-07 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
KR101143282B1 (ko) 2002-10-05 2012-05-08 디지털 파운튼, 인크. 연쇄 반응 코드의 체계적 인코딩 및 디코딩
JP2004135013A (ja) 2002-10-10 2004-04-30 Matsushita Electric Ind Co Ltd 伝送装置及び伝送方法
FI116816B (fi) 2002-10-14 2006-02-28 Nokia Corp Median suoratoisto
US8320301B2 (en) 2002-10-25 2012-11-27 Qualcomm Incorporated MIMO WLAN system
US7289451B2 (en) 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
WO2004040831A1 (en) 2002-10-30 2004-05-13 Koninklijke Philips Electronics N.V. Adaptative forward error control scheme
JP2004165922A (ja) 2002-11-12 2004-06-10 Sony Corp 情報処理装置および方法、並びにプログラム
CA2505853A1 (en) 2002-11-18 2004-06-03 British Telecommunications Public Limited Company Transmission of video
GB0226872D0 (en) 2002-11-18 2002-12-24 British Telecomm Video transmission
KR100502609B1 (ko) 2002-11-21 2005-07-20 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
US7086718B2 (en) 2002-11-23 2006-08-08 Silverbrook Research Pty Ltd Thermal ink jet printhead with high nozzle areal density
JP2004192140A (ja) 2002-12-09 2004-07-08 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP2004193992A (ja) 2002-12-11 2004-07-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US8135073B2 (en) 2002-12-19 2012-03-13 Trident Microsystems (Far East) Ltd Enhancing video images depending on prior image enhancements
US7164882B2 (en) 2002-12-24 2007-01-16 Poltorak Alexander I Apparatus and method for facilitating a purchase using information provided on a media playing device
US7293222B2 (en) 2003-01-29 2007-11-06 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
US7756002B2 (en) 2003-01-30 2010-07-13 Texas Instruments Incorporated Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer
US7525994B2 (en) * 2003-01-30 2009-04-28 Avaya Inc. Packet data flow identification for multiplexing
US7231404B2 (en) 2003-01-31 2007-06-12 Nokia Corporation Datacast file transmission with meta-data retention
US7062272B2 (en) 2003-02-18 2006-06-13 Qualcomm Incorporated Method and apparatus to track count of broadcast content recipients in a wireless telephone network
EP1455504B1 (en) 2003-03-07 2014-11-12 Samsung Electronics Co., Ltd. Apparatus and method for processing audio signal and computer readable recording medium storing computer program for the method
JP4173755B2 (ja) 2003-03-24 2008-10-29 富士通株式会社 データ伝送サーバ
US7610487B2 (en) * 2003-03-27 2009-10-27 Microsoft Corporation Human input security codes
US7266147B2 (en) 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
US7408486B2 (en) 2003-04-21 2008-08-05 Qbit Corporation System and method for using a microlet-based modem
JP2004343701A (ja) 2003-04-21 2004-12-02 Matsushita Electric Ind Co Ltd データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム
US20050041736A1 (en) * 2003-05-07 2005-02-24 Bernie Butler-Smith Stereoscopic television signal processing method, transmission system and viewer enhancements
KR100492567B1 (ko) 2003-05-13 2005-06-03 엘지전자 주식회사 이동통신 시스템의 http 기반 비디오 스트리밍 장치및 방법
US7113773B2 (en) 2003-05-16 2006-09-26 Qualcomm Incorporated Reliable reception of broadcast/multicast content
JP2004348824A (ja) 2003-05-21 2004-12-09 Toshiba Corp Eccエンコード方法、eccエンコード装置
US8161116B2 (en) 2003-05-23 2012-04-17 Kirusa, Inc. Method and system for communicating a data file over a network
JP2004362099A (ja) 2003-06-03 2004-12-24 Sony Corp サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
WO2004109538A1 (en) 2003-06-07 2004-12-16 Samsung Electronics Co. Ltd. Apparatus and method for organization and interpretation of multimedia data on a recording medium
KR101003413B1 (ko) 2003-06-12 2010-12-23 엘지전자 주식회사 이동통신 단말기의 전송데이터 압축/해제 방법
US7603689B2 (en) 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
RU2265960C2 (ru) 2003-06-16 2005-12-10 Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" Способ передачи информации с использованием адаптивного перемежения
US7391717B2 (en) 2003-06-30 2008-06-24 Microsoft Corporation Streaming of variable bit rate multimedia content
US20050004997A1 (en) 2003-07-01 2005-01-06 Nokia Corporation Progressive downloading of timed multimedia content
US8149939B2 (en) 2003-07-07 2012-04-03 Samsung Electronics Co., Ltd. System of robust DTV signal transmissions that legacy DTV receivers will disregard
US7254754B2 (en) 2003-07-14 2007-08-07 International Business Machines Corporation Raid 3+3
KR100532450B1 (ko) 2003-07-16 2005-11-30 삼성전자주식회사 에러에 대해 강인한 특성을 가지는 데이터 기록 방법,이에 적합한 데이터 재생 방법, 그리고 이에 적합한 장치들
US20050028067A1 (en) * 2003-07-31 2005-02-03 Weirauch Charles R. Data with multiple sets of error correction codes
CN1864359B (zh) 2003-08-21 2012-04-18 高通股份有限公司 用于广播和组播内容跨小区边界和/或不同传送方案之间的无缝传送的方法和相关装置
US8694869B2 (en) 2003-08-21 2014-04-08 QUALCIMM Incorporated Methods for forward error correction coding above a radio link control layer and related apparatus
IL157886A0 (en) * 2003-09-11 2009-02-11 Bamboo Mediacasting Ltd Secure multicast transmission
IL157885A0 (en) 2003-09-11 2004-03-28 Bamboo Mediacasting Ltd Iterative forward error correction
JP4183586B2 (ja) 2003-09-12 2008-11-19 三洋電機株式会社 映像表示装置
WO2005029237A2 (en) 2003-09-15 2005-03-31 Digital Networks North America, Inc. Method and system for adaptive transcoding and transrating in a video network
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
DE60307852D1 (de) 2003-09-30 2006-10-05 Ericsson Telefon Ab L M In-place Entschachtelung von Daten
US7559004B1 (en) 2003-10-01 2009-07-07 Sandisk Corporation Dynamic redundant area configuration in a non-volatile memory system
KR101183843B1 (ko) 2003-10-06 2012-09-19 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러정정 다중-스테이지 코드 생성기 및 디코더
US7516232B2 (en) 2003-10-10 2009-04-07 Microsoft Corporation Media organization for distributed sending of media data
US7614071B2 (en) 2003-10-10 2009-11-03 Microsoft Corporation Architecture for distributed sending of media data
DE602004028849D1 (de) * 2003-10-14 2010-10-07 Panasonic Corp Datenumsetzer
US7650036B2 (en) * 2003-10-16 2010-01-19 Sharp Laboratories Of America, Inc. System and method for three-dimensional video coding
US7168030B2 (en) * 2003-10-17 2007-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Turbo code decoder with parity information update
US8132215B2 (en) 2003-10-27 2012-03-06 Panasonic Corporation Apparatus for receiving broadcast signal
JP2005136546A (ja) 2003-10-29 2005-05-26 Sony Corp 送信装置および方法、記録媒体、並びにプログラム
EP1528702B1 (en) 2003-11-03 2008-01-23 Broadcom Corporation FEC (forward error correction) decoding with dynamic parameters
US20050102371A1 (en) 2003-11-07 2005-05-12 Emre Aksu Streaming from a server to a client
CN100505552C (zh) * 2003-12-01 2009-06-24 数字方敦股份有限公司 使用基于子码元的代码来保护数据不被删除
US7428669B2 (en) 2003-12-07 2008-09-23 Adaptive Spectrum And Signal Alignment, Inc. Adaptive FEC codeword management
US7574706B2 (en) 2003-12-15 2009-08-11 Microsoft Corporation System and method for managing and communicating software updates
US7590118B2 (en) 2003-12-23 2009-09-15 Agere Systems Inc. Frame aggregation format
JP4536383B2 (ja) 2004-01-16 2010-09-01 株式会社エヌ・ティ・ティ・ドコモ データ受信装置およびデータ受信方法
KR100770902B1 (ko) 2004-01-20 2007-10-26 삼성전자주식회사 고속 무선 데이터 시스템을 위한 가변 부호율의 오류 정정부호 생성 및 복호 장치 및 방법
KR100834750B1 (ko) 2004-01-29 2008-06-05 삼성전자주식회사 엔코더 단에서 스케일러빌리티를 제공하는 스케일러블비디오 코딩 장치 및 방법
JP4321284B2 (ja) 2004-02-03 2009-08-26 株式会社デンソー ストリーミングデータ送信装置、および情報配信システム
US7599294B2 (en) 2004-02-13 2009-10-06 Nokia Corporation Identification and re-transmission of missing parts
KR100586883B1 (ko) 2004-03-04 2006-06-08 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법
KR100596705B1 (ko) 2004-03-04 2006-07-04 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템
US7609653B2 (en) 2004-03-08 2009-10-27 Microsoft Corporation Resolving partial media topologies
WO2005094020A1 (en) 2004-03-19 2005-10-06 Telefonaktiebolaget Lm Ericsson (Publ) Higher layer packet framing using rlp
US7240236B2 (en) 2004-03-23 2007-07-03 Archivas, Inc. Fixed content distributed data storage using permutation ring encoding
JP4433287B2 (ja) 2004-03-25 2010-03-17 ソニー株式会社 受信装置および方法、並びにプログラム
US8842175B2 (en) 2004-03-26 2014-09-23 Broadcom Corporation Anticipatory video signal reception and processing
US20050216472A1 (en) 2004-03-29 2005-09-29 David Leon Efficient multicast/broadcast distribution of formatted data
KR20070007810A (ko) 2004-03-30 2007-01-16 코닌클리케 필립스 일렉트로닉스 엔.브이. 디스크 기반 멀티미디어 콘텐츠에 대한 개선된 트릭 모드수행을 지원하는 시스템 및 방법
TW200534875A (en) 2004-04-23 2005-11-01 Lonza Ag Personal care compositions and concentrates for making the same
FR2869744A1 (fr) 2004-04-29 2005-11-04 Thomson Licensing Sa Methode de transmission de paquets de donnees numeriques et appareil implementant la methode
KR101205758B1 (ko) 2004-05-07 2012-12-03 디지털 파운튼, 인크. 파일 다운로드 및 스트리밍 시스템
US7633970B2 (en) 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
US20060037057A1 (en) * 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
US8331445B2 (en) 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US7139660B2 (en) 2004-07-14 2006-11-21 General Motors Corporation System and method for changing motor vehicle personalization settings
US8112531B2 (en) 2004-07-14 2012-02-07 Nokia Corporation Grouping of session objects
US8544043B2 (en) 2004-07-21 2013-09-24 Qualcomm Incorporated Methods and apparatus for providing content information to content servers
US7409626B1 (en) 2004-07-28 2008-08-05 Ikanos Communications Inc Method and apparatus for determining codeword interleaver parameters
US7590922B2 (en) 2004-07-30 2009-09-15 Nokia Corporation Point-to-point repair request mechanism for point-to-multipoint transmission systems
US7376150B2 (en) 2004-07-30 2008-05-20 Nokia Corporation Point-to-point repair response mechanism for point-to-multipoint transmission systems
US7930184B2 (en) 2004-08-04 2011-04-19 Dts, Inc. Multi-channel audio coding/decoding of random access points and transients
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
JP4405875B2 (ja) * 2004-08-25 2010-01-27 富士通株式会社 エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体
JP2006074335A (ja) 2004-09-01 2006-03-16 Nippon Telegr & Teleph Corp <Ntt> 伝送方法、伝送システム及び伝送装置
JP4576936B2 (ja) 2004-09-02 2010-11-10 ソニー株式会社 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム
JP2006115104A (ja) 2004-10-13 2006-04-27 Daiichikosho Co Ltd 高能率符号化された時系列情報をパケット化してリアルタイム・ストリーミング送信し受信再生する方法および装置
US7529984B2 (en) 2004-11-16 2009-05-05 Infineon Technologies Ag Seamless change of depth of a general convolutional interleaver during transmission without loss of data
US7751324B2 (en) 2004-11-19 2010-07-06 Nokia Corporation Packet stream arrangement in multimedia transmission
CN101061718B (zh) 2004-11-22 2010-10-13 汤姆森研究基金有限公司 用于数字订户线路系统中的频道改变的方法和设备
EP1817859A1 (en) 2004-12-02 2007-08-15 THOMSON Licensing Adaptive forward error correction
KR20060065482A (ko) 2004-12-10 2006-06-14 마이크로소프트 코포레이션 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
JP2006174045A (ja) 2004-12-15 2006-06-29 Ntt Communications Kk 画像配信装置、プログラム及び方法
JP2006174032A (ja) 2004-12-15 2006-06-29 Sanyo Electric Co Ltd 画像データ伝送システム、画像データ受信装置及び画像データ送信装置
US7398454B2 (en) 2004-12-21 2008-07-08 Tyco Telecommunications (Us) Inc. System and method for forward error correction decoding using soft information
JP4391409B2 (ja) 2004-12-24 2009-12-24 株式会社第一興商 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置
WO2006084503A1 (en) 2005-02-08 2006-08-17 Telefonaktiebolaget Lm Ericsson (Publ) On-demand multi-channel streaming session over packet-switched networks
US7925097B2 (en) 2005-02-18 2011-04-12 Sanyo Electric Co., Ltd. Image display method, image coding apparatus, and image decoding apparatus
US7822139B2 (en) 2005-03-02 2010-10-26 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems, methods and computer products for providing a virtual enhanced training sequence
WO2006096104A1 (en) 2005-03-07 2006-09-14 Telefonaktiebolaget Lm Ericsson (Publ) Multimedia channel switching
US8028322B2 (en) 2005-03-14 2011-09-27 Time Warner Cable Inc. Method and apparatus for network content download and recording
US7418649B2 (en) * 2005-03-15 2008-08-26 Microsoft Corporation Efficient implementation of reed-solomon erasure resilient codes in high-rate applications
US7219289B2 (en) 2005-03-15 2007-05-15 Tandberg Data Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
US7450064B2 (en) 2005-03-22 2008-11-11 Qualcomm, Incorporated Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system
JP4487028B2 (ja) 2005-03-31 2010-06-23 ブラザー工業株式会社 配信速度制御装置、配信システム、配信速度制御方法、及び配信速度制御用プログラム
US7715842B2 (en) 2005-04-09 2010-05-11 Lg Electronics Inc. Supporting handover of mobile terminal
WO2006108917A1 (en) 2005-04-13 2006-10-19 Nokia Corporation Coding, storage and signalling of scalability information
JP4515319B2 (ja) 2005-04-27 2010-07-28 株式会社日立製作所 コンピュータシステム
US8683066B2 (en) * 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US7961700B2 (en) 2005-04-28 2011-06-14 Qualcomm Incorporated Multi-carrier operation in data transmission systems
JP2006319743A (ja) 2005-05-13 2006-11-24 Toshiba Corp 受信装置
US8228994B2 (en) 2005-05-20 2012-07-24 Microsoft Corporation Multi-view video coding based on temporal and view decomposition
US20090222855A1 (en) 2005-05-24 2009-09-03 Jani Vare Method and apparatuses for hierarchical transmission/reception in digital broadcast
US7676735B2 (en) * 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
US7644335B2 (en) 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
JP2007013436A (ja) 2005-06-29 2007-01-18 Toshiba Corp 符号化ストリーム再生装置
US20070006274A1 (en) 2005-06-30 2007-01-04 Toni Paila Transmission and reception of session packets
JP2007013675A (ja) 2005-06-30 2007-01-18 Sanyo Electric Co Ltd ストリーミング配信システム及びサーバ
US7725593B2 (en) * 2005-07-15 2010-05-25 Sony Corporation Scalable video coding (SVC) file format
US20070022215A1 (en) * 2005-07-19 2007-01-25 Singer David W Method and apparatus for media data transmission
EP1755248B1 (en) 2005-08-19 2011-06-22 Hewlett-Packard Development Company, L.P. Indication of lost segments across layer boundaries
JP3996631B2 (ja) * 2005-09-09 2007-10-24 松下電器産業株式会社 画像処理方法、画像記録方法、画像処理装置および画像ファイルフォーマット
US7924913B2 (en) 2005-09-15 2011-04-12 Microsoft Corporation Non-realtime data transcoding of multimedia content
US20070067480A1 (en) 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US8879856B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using content information
US20070078876A1 (en) * 2005-09-30 2007-04-05 Yahoo! Inc. Generating a stream of media data containing portions of media files using location tags
US7720062B2 (en) 2005-10-05 2010-05-18 Lg Electronics Inc. Method of processing traffic information and digital broadcasting system
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
DE602006051050C5 (de) 2005-10-11 2022-10-27 Nokia Technologies Oy System and method for efficient scalable stream adaptation
CN100442858C (zh) * 2005-10-11 2008-12-10 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
US7720096B2 (en) 2005-10-13 2010-05-18 Microsoft Corporation RTP payload format for VC-1
EP1946563A2 (en) 2005-10-19 2008-07-23 Thomson Licensing Multi-view video coding using scalable video coding
JP4727401B2 (ja) 2005-12-02 2011-07-20 日本電信電話株式会社 無線マルチキャスト伝送システム、無線送信装置及び無線マルチキャスト伝送方法
FR2894421B1 (fr) 2005-12-07 2008-01-18 Canon Kk Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique
KR100759823B1 (ko) 2005-12-08 2007-09-18 한국전자통신연구원 제로 복귀 신호 발생 장치 및 그 방법
JP4456064B2 (ja) 2005-12-21 2010-04-28 日本電信電話株式会社 パケット送信装置、受信装置、システム、およびプログラム
US20070157267A1 (en) 2005-12-30 2007-07-05 Intel Corporation Techniques to improve time seek operations
ES2383230T3 (es) 2006-01-05 2012-06-19 Telefonaktiebolaget Lm Ericsson (Publ) Gestión de archivos contenedores de medios
US8214516B2 (en) 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
MY148628A (en) 2006-01-11 2013-05-15 Nokia Corp Backward-compatible aggregation of pictures in scalable video coding
EP1982517A4 (en) 2006-01-12 2010-06-16 Lg Electronics Inc MULTIVATE VIDEO PROCESSING
WO2007086654A1 (en) 2006-01-25 2007-08-02 Lg Electronics Inc. Digital broadcasting system and method of processing data
RU2290768C1 (ru) 2006-01-30 2006-12-27 Общество с ограниченной ответственностью "Трафиклэнд" Система медиавещания в инфраструктуре оператора мобильной связи
US7262719B2 (en) 2006-01-30 2007-08-28 International Business Machines Corporation Fast data stream decoding using apriori information
GB0602314D0 (en) 2006-02-06 2006-03-15 Ericsson Telefon Ab L M Transporting packets
US8990153B2 (en) 2006-02-07 2015-03-24 Dot Hill Systems Corporation Pull data replication model
WO2007092214A1 (en) * 2006-02-08 2007-08-16 Thomson Licensing Decoding of raptor codes
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
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
JP2007228205A (ja) 2006-02-23 2007-09-06 Funai Electric Co Ltd ネットワークサーバ
US8320450B2 (en) 2006-03-29 2012-11-27 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
WO2007127741A2 (en) 2006-04-24 2007-11-08 Sun Microsystems, Inc. Media server system
US20080010153A1 (en) 2006-04-24 2008-01-10 Pugh-O'connor Archie Computer network provided digital content under an advertising and revenue sharing basis, such as music provided via the internet with time-shifted advertisements presented by a client resident application
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
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
US7525993B2 (en) 2006-05-24 2009-04-28 Newport Media, Inc. Robust transmission system and method for mobile television applications
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
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
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
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
TWM302355U (en) * 2006-06-09 2006-12-11 Jia-Bau Jeng Fixation and cushion structure of knee joint
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
JP2008011404A (ja) 2006-06-30 2008-01-17 Toshiba Corp コンテンツ処理装置及びコンテンツ処理方法
JP4392004B2 (ja) 2006-07-03 2009-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション パケット回復のための符号化および復号化技術
WO2008011549A2 (en) 2006-07-20 2008-01-24 Sandisk Corporation Content distribution system
US7711797B1 (en) 2006-07-31 2010-05-04 Juniper Networks, Inc. Optimizing batch size for prefetching data over wide area networks
US8209736B2 (en) * 2006-08-23 2012-06-26 Mediatek Inc. Systems and methods for managing television (TV) signals
US20080066136A1 (en) 2006-08-24 2008-03-13 International Business Machines Corporation System and method for detecting topic shift boundaries in multimedia streams using joint audio, visual and text cues
RU2435235C2 (ru) 2006-08-24 2011-11-27 Нокиа Корпорейшн Система и способ указания взаимосвязей треков в мультимедийном файле
JP2008109637A (ja) 2006-09-25 2008-05-08 Toshiba Corp 動画像符号化装置及びその方法
US8428013B2 (en) 2006-10-30 2013-04-23 Lg Electronics Inc. Method of performing random access in a wireless communcation system
JP2008118221A (ja) 2006-10-31 2008-05-22 Toshiba Corp 復号装置及び復号方法
WO2008054100A1 (en) 2006-11-01 2008-05-08 Electronics And Telecommunications Research Institute Method and apparatus for decoding metadata used for playing stereoscopic contents
JP5378227B2 (ja) 2006-11-14 2013-12-25 クゥアルコム・インコーポレイテッド チャネルスイッチングのためのシステムと方法
US8027328B2 (en) 2006-12-26 2011-09-27 Alcatel Lucent Header compression in a wireless communication network
EP2122482B1 (en) 2007-01-05 2018-11-14 Sonic IP, Inc. Video distribution system including progressive playback
US20080168516A1 (en) 2007-01-08 2008-07-10 Christopher Lance Flick Facilitating Random Access In Streaming Content
RU2009127603A (ru) 2007-01-09 2011-02-20 Нокиа Корпорейшн (Fi) Способ поддержки контроля версий файлов при исправлении файлов в mbms
CA2656144A1 (en) 2007-01-11 2008-07-17 Panasonic Corporation Method for trick playing on streamed and encrypted multimedia
US20080172430A1 (en) 2007-01-11 2008-07-17 Andrew Thomas Thorstensen Fragmentation Compression Management
CN101543018B (zh) 2007-01-12 2012-12-26 庆熙大学校产学协力团 网络提取层单元的分组格式、使用该格式的视频编解码算法和装置以及使用该格式进行IPv6标签交换的QoS控制算法和装置
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
US7949195B2 (en) 2007-01-16 2011-05-24 Cisco Technology, Inc. Per block breakpoint determining for hybrid variable length coding
US7721003B2 (en) 2007-02-02 2010-05-18 International Business Machines Corporation System and method to synchronize OSGi bundle inventories between an OSGi bundle server and a client
US20080192818A1 (en) 2007-02-09 2008-08-14 Dipietro Donald Vincent Systems and methods for securing media
US20080232357A1 (en) 2007-03-19 2008-09-25 Legend Silicon Corp. Ls digital fountain code
JP4838191B2 (ja) 2007-05-08 2011-12-14 シャープ株式会社 ファイル再生装置、ファイル再生方法、ファイル再生を実行させるプログラム及びそのプログラムを記録した記録媒体
JP2008283571A (ja) 2007-05-11 2008-11-20 Ntt Docomo Inc コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信方法
WO2008140261A2 (en) 2007-05-14 2008-11-20 Samsung Electronics Co., Ltd. Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
MX2009012361A (es) 2007-05-16 2009-12-01 Thomson Licensing Aparato y metodo para codificar y descodificar señales.
FR2917262A1 (fr) 2007-06-05 2008-12-12 Thomson Licensing Sas Dispositif et procede de codage d'un contenu video sous la forme d'un flux scalable.
US8487982B2 (en) 2007-06-07 2013-07-16 Reald Inc. Stereoplexing for film and video applications
EP2393301A1 (en) 2007-06-11 2011-12-07 Samsung Electronics Co., Ltd. Method and apparatus for generating header information of stereoscopic image
CA2691085C (en) 2007-06-20 2016-12-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for improved media session management
US9712833B2 (en) * 2007-06-26 2017-07-18 Nokia Technologies Oy System and method for indicating temporal layer switching points
US7917702B2 (en) 2007-07-10 2011-03-29 Qualcomm Incorporated Data prefetch throttle
JP2009027598A (ja) 2007-07-23 2009-02-05 Hitachi Ltd 映像配信サーバおよび映像配信方法
US8327403B1 (en) 2007-09-07 2012-12-04 United Video Properties, Inc. Systems and methods for providing remote program ordering on a user device via a web server
MX2010002829A (es) * 2007-09-12 2010-04-01 Digital Fountain Inc Generacion y comunicacion de informacion para identificacion de fuentes para permitir comunicaciones seguras.
US8233532B2 (en) 2007-09-21 2012-07-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal
US8346959B2 (en) 2007-09-28 2013-01-01 Sharp Laboratories Of America, Inc. Client-controlled adaptive streaming
EP2046044B1 (en) 2007-10-01 2017-01-18 Cabot Communications Ltd A method and apparatus for streaming digital media content and a communication system
EP2181541B1 (en) 2007-10-09 2018-12-05 Samsung Electronics Co., Ltd. Apparatus and method for generating mac pdu in a mobile communication system
WO2009054907A2 (en) * 2007-10-19 2009-04-30 Swarmcast, Inc. Media playback point seeking using data range requests
US8706907B2 (en) 2007-10-19 2014-04-22 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US20090125636A1 (en) 2007-11-13 2009-05-14 Qiong Li Payload allocation methods for scalable multimedia servers
WO2009065526A1 (en) 2007-11-23 2009-05-28 Media Patents S.L. A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems
WO2009075766A2 (en) 2007-12-05 2009-06-18 Swarmcast, Inc. Dynamic bit rate scaling
JP5385598B2 (ja) 2007-12-17 2014-01-08 キヤノン株式会社 画像処理装置及び画像管理サーバ装置及びそれらの制御方法及びプログラム
US9313245B2 (en) 2007-12-24 2016-04-12 Qualcomm Incorporated Adaptive streaming for on demand wireless services
KR101506217B1 (ko) 2008-01-31 2015-03-26 삼성전자주식회사 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치
EP2086237B1 (en) 2008-02-04 2012-06-27 Alcatel Lucent Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions
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
US20090219985A1 (en) 2008-02-28 2009-09-03 Vasanth Swaminathan Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File
US7984097B2 (en) 2008-03-18 2011-07-19 Media Patents, S.L. Methods for transmitting multimedia files and advertisements
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US20090257508A1 (en) 2008-04-10 2009-10-15 Gaurav Aggarwal Method and system for enabling video trick modes
WO2009128642A2 (en) 2008-04-14 2009-10-22 Lg Electronics Inc. Method and apparatus for performing random access procedures
WO2009127961A1 (en) * 2008-04-16 2009-10-22 Nokia Corporation Decoding order recovery in session multiplexing
US8855199B2 (en) * 2008-04-21 2014-10-07 Nokia Corporation Method and device for video coding and decoding
JP5847577B2 (ja) 2008-05-07 2016-01-27 デジタル ファウンテン, インコーポレイテッド より低いレベルのパケット構造から導かれる記号識別子を用いた放送チャネル上の高品質ストリーム保護
US7979570B2 (en) 2008-05-12 2011-07-12 Swarmcast, Inc. Live media delivery over a packet-based computer network
JP5022301B2 (ja) 2008-05-19 2012-09-12 株式会社エヌ・ティ・ティ・ドコモ プロキシサーバおよび通信中継プログラム、並びに通信中継方法
CN101287107B (zh) 2008-05-29 2010-10-13 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
US7925774B2 (en) 2008-05-30 2011-04-12 Microsoft Corporation Media streaming using an index file
US20100011274A1 (en) * 2008-06-12 2010-01-14 Qualcomm Incorporated Hypothetical fec decoder and signalling for decoding control
US8775566B2 (en) 2008-06-21 2014-07-08 Microsoft Corporation File format for media distribution and presentation
US8387150B2 (en) 2008-06-27 2013-02-26 Microsoft Corporation Segmented media content rights management
US8468426B2 (en) 2008-07-02 2013-06-18 Apple Inc. Multimedia-aware quality-of-service and error correction provisioning
US8539092B2 (en) 2008-07-09 2013-09-17 Apple Inc. Video streaming using multiple channels
US20100153578A1 (en) 2008-07-16 2010-06-17 Nokia Corporation Method and Apparatus for Peer to Peer Streaming
US8638796B2 (en) * 2008-08-22 2014-01-28 Cisco Technology, Inc. Re-ordering segments of a large number of segmented service flows
KR101019634B1 (ko) 2008-09-04 2011-03-07 에스케이 텔레콤주식회사 미디어 전송 시스템 및 방법
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US8016422B2 (en) * 2008-10-28 2011-09-13 Eastman Kodak Company Etendue maintaining polarization switching system and related methods
US8370520B2 (en) 2008-11-24 2013-02-05 Juniper Networks, Inc. Adaptive network content delivery system
US8099476B2 (en) 2008-12-31 2012-01-17 Apple Inc. Updatable real-time or near real-time streaming
US8743906B2 (en) 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
KR101676059B1 (ko) 2009-01-26 2016-11-14 톰슨 라이센싱 비디오 코딩을 위한 프레임 패킹
CN105376549B (zh) 2009-01-29 2017-08-11 杜比实验室特许公司 视频编码方法及解码视频信号的方法
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8909806B2 (en) 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
KR20120015443A (ko) 2009-04-13 2012-02-21 리얼디 인크. 향상된 해상도의 스테레오스코픽 비디오의 엔코딩, 디코딩 및 배포
US9807468B2 (en) 2009-06-16 2017-10-31 Microsoft Technology Licensing, Llc Byte range caching
US8903895B2 (en) 2009-07-22 2014-12-02 Xinlab, Inc. Method of streaming media to heterogeneous client devices
US8355433B2 (en) 2009-08-18 2013-01-15 Netflix, Inc. Encoding video streams for adaptive video streaming
US20120151302A1 (en) 2010-12-10 2012-06-14 Qualcomm Incorporated Broadcast multimedia storage and access using page maps when asymmetric memory is used
US9288010B2 (en) * 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
WO2012037635A1 (en) 2009-09-02 2012-03-29 Nortel Networks Limited Mac packet data unit construction for wireless systems
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
US9438861B2 (en) * 2009-10-06 2016-09-06 Microsoft Technology Licensing, Llc Integrating continuous and sparse streaming data
JP2011087103A (ja) 2009-10-15 2011-04-28 Sony Corp コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供
EP2491495A4 (en) 2009-11-04 2013-01-02 Huawei Tech Co Ltd SYSTEM AND METHOD FOR DIFFUSION OF CONTINUOUS MULTIMEDIA CONTENT
KR101786050B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 전송 방법 및 장치
KR101786051B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치
CN101729857A (zh) 2009-11-24 2010-06-09 中兴通讯股份有限公司 一种接入视频服务的方法及视频播放系统
US8510375B2 (en) 2009-12-11 2013-08-13 Nokia Corporation Apparatus and methods for time mapping media segments in streaming media files
KR101624013B1 (ko) 2010-02-19 2016-05-24 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
KR101628432B1 (ko) 2010-02-19 2016-06-21 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 레프리젠테이션 스위칭을 위한 방법 및 장치
JP5071495B2 (ja) 2010-03-04 2012-11-14 ウシオ電機株式会社 光源装置
JP2013522949A (ja) 2010-03-11 2013-06-13 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート Mimoシステムにおけるデータを送受信する方法及び装置
US9225961B2 (en) 2010-05-13 2015-12-29 Qualcomm Incorporated Frame packing for asymmetric stereo video
US9497290B2 (en) 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
US8918533B2 (en) * 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) * 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
KR20120010089A (ko) 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US9131033B2 (en) 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8711933B2 (en) 2010-08-09 2014-04-29 Sony Computer Entertainment Inc. Random access point (RAP) formation using intra refreshing technique in video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
KR101737325B1 (ko) * 2010-08-19 2017-05-22 삼성전자주식회사 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
US8615023B2 (en) 2010-10-27 2013-12-24 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving data in communication system
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
US20120208580A1 (en) 2011-02-11 2012-08-16 Qualcomm Incorporated Forward error correction scheduling for an improved radio link protocol
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
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799495A (zh) * 2011-05-25 2012-11-28 英飞凌科技股份有限公司 用于生成校验和的装置
CN102799495B (zh) * 2011-05-25 2015-09-23 英飞凌科技股份有限公司 用于生成校验和的装置
CN107534449A (zh) * 2015-05-12 2018-01-02 日本电信电话株式会社 解码装置、解码方法、及程序
US10785098B1 (en) 2019-04-30 2020-09-22 Alibaba Group Holding Limited Network configuration using multicast address modulation
WO2020220756A1 (zh) * 2019-04-30 2020-11-05 创新先进技术有限公司 一种配网方法和装置
CN112134573A (zh) * 2019-06-25 2020-12-25 三星电子株式会社 用于将数据存储在存储器装置内的方法和检索数据的方法
CN112134573B (zh) * 2019-06-25 2024-02-23 三星电子株式会社 用于将数据存储在存储器装置内的方法和检索数据的方法

Also Published As

Publication number Publication date
ES2563290T3 (es) 2016-03-14
JP2009527949A (ja) 2009-07-30
KR20080100455A (ko) 2008-11-18
EP1980041B1 (en) 2015-12-09
KR101355761B1 (ko) 2014-01-24
EP1980041A4 (en) 2013-02-27
WO2007098397A3 (en) 2008-02-28
US20070195894A1 (en) 2007-08-23
CN101427495B (zh) 2013-12-25
JP5329239B2 (ja) 2013-10-30
WO2007098397A2 (en) 2007-08-30
US9270414B2 (en) 2016-02-23
EP1980041A2 (en) 2008-10-15

Similar Documents

Publication Publication Date Title
CN101427495B (zh) 用于通信系统的基于多域的码生成器和解码器
JP5485302B2 (ja) ファイルダウンロードおよびストリーミングのシステム
JP5819495B2 (ja) 符号化および復号プロセスのためにシンボルの永久的非活動化とともにfec符号を採用する方法および装置
JP5675876B2 (ja) 連鎖的暗号化反応の系統的記号化および復号化
CN101432969A (zh) 前向纠错(fec)编码和流送

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180418

Address after: American California

Patentee after: Qualcomm Inc.

Address before: American California

Patentee before: Digital Fountain Inc.