CN101176263B - 用于解码前向纠错码的系统和方法 - Google Patents

用于解码前向纠错码的系统和方法 Download PDF

Info

Publication number
CN101176263B
CN101176263B CN2006800165417A CN200680016541A CN101176263B CN 101176263 B CN101176263 B CN 101176263B CN 2006800165417 A CN2006800165417 A CN 2006800165417A CN 200680016541 A CN200680016541 A CN 200680016541A CN 101176263 B CN101176263 B CN 101176263B
Authority
CN
China
Prior art keywords
decoder
information
bit
late
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2006800165417A
Other languages
English (en)
Other versions
CN101176263A (zh
Inventor
阿德里安·埃文斯·康韦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Verizon Services Organization Inc
Original Assignee
Verizon Services Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Verizon Services Corp filed Critical Verizon Services Corp
Publication of CN101176263A publication Critical patent/CN101176263A/zh
Application granted granted Critical
Publication of CN101176263B publication Critical patent/CN101176263B/zh
Expired - Fee Related 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
    • 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/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • 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
    • 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/3723Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using means or methods for the initialisation of the decoder
    • 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/373Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种通过利用到达的滞后数据分组中包含的信息来更新(或重算)解码器状态以改进前向纠错解码的解码器性能的系统和方法。实施例公开的系统和方法通常应用于解码器,该解码器在对连续比特或帧信息进行解码时维持状态信息。在此公开的系统和方法可以提高解码器的性能(即,比特误差率),因所述重算的状态就是当所述滞后数据分组所包含信息起初准时到达并且按通常方式被解码的情况下该解码器所应具有的状态。实际上,在滞后数据分组到达后的解码器状态的更新终止了滞后数据分组擦除对解码器状态影响的时间传播。

Description

用于解码前向纠错码的系统和方法
技术领域
本发明涉及解码前向纠错码的系统和方法。
背景技术
在分组网络中,非实时数据信号和实时数据信号,例如声音、视频和音频,在对其进行分组划分和通过数据分组网络传输之前,可通过纠错编码来进行编码。这可以通过各种前向纠错(FEC)方案实现。总体而言,FEC方案在信号(或消息)被发送前引入充分的冗余,以使得在传输过程中丢失或破坏的分组能够在接收器中被重构。换句话说,FEC的目的在于,通过对信道中传输的数据附加一些精心设计的冗余信息来提高信道的容量。这种利用前向纠错码的信号编码能保护被传输信号,避免数据分组丢失、数据分组擦除、比特误差以及在实时数据中的数据分组延迟。
在使用前向纠错码进行编码和数据分组划分的传输的接收端,到达的数据分组通常首先被存储在分组接收缓冲器中(或“重放(playout)”缓冲器)。根据“流水线”处理过程,从缓冲器中周期性读出(或“重放”)被缓冲的数据分组,从分组有效载荷(payload)中提取比特或帧,所述比特或帧已使用对应于数据分组划分前在发送端已经应用的编码方法的解码方法来解码,以及已经解码的数字信号被重放到该接收机构(或装置、过程或人)。当该缓冲器已满时,或者如果是实时信号,当调度(或要求)的重放时间已过,到达数据分组接收缓冲器的数据分组可能被擦除。滞后数据分组的丢弃导致包含在滞后分组中的比特或者帧数据的丢弃(或)擦除。滞后数据分组的丢弃是除数据分组网络中可能已经产生的任何数据分组丢弃、数据分组擦除或数据分组破坏之外的丢弃。
可以向解码器指出已经被擦除或者丢弃的比特或者帧数据,应用在已经接收的比特或者帧数据的解码方法可以校正已经被擦除、丢失或破坏的比特或帧数据。然而,即使使用FEC方案,仍然会在解码过程中出现误差。因此,仍然需要其它方案和方法以提高前向纠错码性能(即,比特误差率)。
发明内容
本发明的第一方面提供一种数据分组解码系统,包括:前向纠错解码器,用于解码包含了利用前向纠错码编码的信息的已接收数据分组,并且维持表示该前向纠错解码器在对所述已接收数据分组所包含的信息进行连续解码后的一系列状态的状态信息;滞后数据分组到达处理单元,用于至少部分地根据在预定重放时间之后到达所述数据分组解码器系统的滞后数据分组中包含的信息来更新所述前向纠错解码器的所述状态信息;以及数据分组接收缓冲器,用于在把已接收数据分组提供给所述前向纠错解码器之前来接收和缓冲这些已接收数据分组。其中所述滞后数据分组到达处理单元包括:比特/帧缓冲器,用于存储已经提供给所述前向纠错解码器的最近历史信息;比特/帧缓冲器更新单元,用于响应所述滞后数据分组的到达来更新所述比特/帧缓冲器;解码器状态缓冲器,用于存储所述前向纠错解码器的所述状态的最近历史;以及解码器状态缓冲器更新单元,用于至少部分地根据所述比特/帧缓冲器中的更新信息来更新所述解码器状态缓冲器,其中在所述比特/帧缓冲器中的所述更新信息至少部分基于所述滞后数据分组中所包含的信息。
根据本发明的第一方面,其中所述比特/帧缓冲器更新单元用于确定所述滞后数据分组中所述信息对应的至少一个时间点,以及利用所述滞后数据分组中的相应信息来替换所述比特/帧缓冲器中对应于这种时间点的任何现有项。
根据本发明的第一方面,其中所述解码器状态缓冲器更新单元用于至少部分基于所述比特/帧缓冲器中的所述更新信息来递归重算所述前向纠错解码器的过去状态,从而更新所述解码器状态缓冲器。
根据本发明的第一方面,其中所述前向纠错解码器是用于解码按卷积纠错码编码的信息的Viterbi解码器。
本发明的第二方面提供一种用于数据分组解码的方法,包括:接收和缓冲已经使用前向纠错码编码的多个已接收数据分组;对所述多个已接收数据分组所包含的信息进行解码;维持用来表示在对所述多个已接收数据分组的每个所包含的信息进行连续解码后的一系列状态的状态信息;接收滞后数据分组,所述滞后数据分组在预定重放时间之后到达并且包含利用所述前向纠错码编码的信息;以及至少部分地基于所述滞后数据分组中包含的信息来更新所述状态信息。其中更新所述状态信息包括至少部分地基于所述滞后数据分组中包含的信息来更新比特/帧缓冲器,其中所述比特/帧缓冲器用于存储已经提供给所述前向纠错解码器的最近历史信息。以及其中更新所述状态信息还包括至少部分地基于所述比特/帧缓冲器中的更新信息来更新解码器状态缓冲器,其中所述解码器状态缓冲器保存所述状态信息的最近历史。
根据本发明的第二方面的方法,其中更新所述比特/帧缓冲器包括确定所述滞后数据分组中的信息所对应的时间点,以及利用所述滞后数据分组中的相应信息来替换所述比特/帧缓冲器中对应于这种时间点的任何现有项。
根据本发明的第二方面的方法,其中更新所述解码器状态缓冲器包括至少部分地基于所述比特/帧缓冲器中所述更新信息来递归重算所述过去状态信息。
根据本发明的第二方面的方法,其中所述前向纠错码是卷积纠错码。
本发明的第三方面提供一种数据分组解码系统,包括:前向纠错解码器,用于对包含了利用前向纠错码编码的信息的已接收数据分组进行解码,以及维持用来表示所述前向纠错码解码器在对所述已接收数据分组所包含的信息进行连续解码后的一系列状态的状态信息;比特/帧缓冲器,用于存储已经提供给所述前向纠错解码器的所述信息的最近历史;解码器状态缓冲器,用于存储所述前向纠错解码器的所述状态的最近历史;比特/帧缓冲器更新单元,用于响应在预定重放时间后到达所述数据分组解码系统的所述滞后数据分组的到达而更新所述比特/帧缓冲器,所述滞后数据分组包括滞后数据分组信息;解码器状态缓冲器更新单元,用于至少部分地基于所述比特/帧缓冲器中的更新信息来更新所述解码器状态缓冲器;解码器状态更新单元,用于至少部分的基于所述解码器状态缓冲器中的更新信息以及所述比特/帧缓冲器的更新信息来更新所述前向纠错解码器的所述状态信息。
根据本发明的第三方面的系统,其中所述比特/帧缓冲器更新单元用于确定所述滞后数据分组中所述滞后数据分组信息所对应的时间点,以及利用所述滞后数据分组信息来替换所述比特/帧缓冲器中对应于这种时间点的任何现有项。
根据本发明的第三方面的系统,其中所述解码器状态缓冲器更新单元用于至少部分地基于所述比特/帧缓冲器中的更新信息来递归重算所述解码器的过去状态。
根据本发明的第三方面的系统,其中所述前向纠错解码器是对利用卷积纠错码编码的信息进行解码的Viterbi解码器。
根据本发明的第三方面的系统,还包括数据分组接收缓冲器,用于在已接收数据分组被提供给所述前向纠错解码器之前接收并缓冲这些已接收数据分组。
附图说明
将参考以下附图,这些附图无需按比例绘制,其中:
图1示出了用于接收数据分组以及对已经利用纠错码编码的比特信息或者帧信息进行解码的传统技术;
图2示出了根据本发明一个实施例实现的解码技术实例的高级框图;和
图3示出了根据本发明一个实施例实现的解码技术的更详细的实例,其中在对纠错码的解码中利用所到达的滞后数据分组所包含的信息。
具体实施方式
以下将要参考附图描述根据本发明的优选实施例,示出本发明的其中一些但并非所有可能的实施例。当然,本发明可以按不同形式实现,且本发明不限于所列出的实施例;这些提供的实施例仅使得本公开达到法定要求,全文用同一标记标识同一部件。
根据本发明实现的一个实施例,其公开了一种方法和系统,利用所到达滞后数据分组中所包含的信息来更新(或重算)解码器状态,因此改进前向纠错码解码器性能。以下通过例子中参考的已知纠错码为传统纠错码编码,当然根据本发明的实施例中的方法和系统也可以使用其他纠错码。如以下所述,该方法和系统通常应用于在对连续比特/帧数据做解码时保存状态信息的解码器中。一种公知的解码器根据Viterbi算法操作,当然该方法或系统也可以使用其他类型的解码器。该方法或系统通常改进该解码器的性能(即,比特误差率),因所述重算的状态就是在所述滞后数据分组所包含信息起初是准时到达并且按通常方式被解码的情况下该解码器所应具有的状态。实际上,在滞后数据分组到达后的解码器状态的更新终止了滞后数据分组擦除在解码器状态产生影响的时间上的传播。
以下详细描述该方法和系统,按照解码器优先于数据分组接收缓冲器的顺序介绍。注意该分组接收缓冲器的尺寸(按分组为单位)可以是0、1或更多。因此,所描述的方法或系统也包括不含接收缓冲器的情况,在这种情况下,到达的比特或帧数据被立即从到达的数据分组中提取并在流水线过程中被解码。
用于接收数据分组和对已经利用前向纠错码编码的比特/帧信息进行解码的现有技术如图1所示。在图1中,从网络来到的数据分组通常首先存储在数据分组接收缓冲器12中。在缓冲器已满时,到达的数据分组被丢弃(例如,擦除,阻塞)。数据分组,例如,滞后数据分组在调度的或要求的重放时间之后到达也被丢弃。在接收缓冲器12中保存的数据分组根据数据分组重放调度表被重放。如通常所知,在传输的接收端处可以利用重放调度表来连续重放被传输的信号(包含在各接收的数据分组中)而不管网络延迟的变化。在存在延迟变化的情况下(公知为延迟抖动),在接收端的重放调度表可以大大地影响数据分组网络中的丢失和等待时间之间的平衡。因此,在输出解码信号x(k)之前,通常使用数据分组接收缓冲器12来吸收延迟抖动,此处k表示离散的时间点。晚于调度(或要求)的重放期限到达的任何数据分组将会被丢弃,其导致丢失。而调度更迟的期限以增加重放更多数据分组以及更低丢失率的可能性,要以付出更高的缓冲器延迟为代价。
当重放数据分组时,从数据分组中提取信息比特/帧数据f(k),并且通过纠错解码器14一次一比特或一帧地对信息比特/帧数据进行解码(在一些实施例,可以按组对比特或帧进行解码)。解码器14的输出是已经解码的输出信号x(k)。注意,当数据分组需重放时,如果分组缓冲器12为空(缺省),或如果一个或多个数据分组在分组缓冲器中的分组时间序列中遗失,例如由于到达滞后,则通常在已经接收的比特/帧数据数据流插入比特/帧数据的擦除指示标志,以保持进入到解码器的信息的连续比特/帧数据流。
更正式地说,如果f(k)是第k个比特或帧信息(即,在离散的时间点k到达的比特或帧信息),则该对应于该第k个时间间隔的被解码输出信号为x(k),这里x(k)=D(f(k),S(k-1)),D(.)为纠错解码运算符,且S(k-1)是解码了前一信息帧f(k-1)之后的该纠错解码器14的状态。在解码了f(k)之后的解码器14的状态是S(k)。注意,对于比特的情况,f(k)可以对应1、0,或者指出的擦除。对于帧的情况,f(k)可以对应比特的帧或指出帧擦除。
如以上所述,用于接收和解码利用纠错码编码的比特/帧信息的现有技术因延迟到达的数据分组而造成丢失。为了至少部分弥补这种丢失而不增加缓冲器的延迟,图2示出了根据本发明一个实施例实现的解码技术实例的高级框图。更具体地说,图2示出了一种解码技术,在对纠错码进行解码过程中,使用到达的滞后数据分组所包含信息。在图1所示的传统解码技术中,到达的滞后数据分组仅仅被丢弃(或擦除)。然而,在图2所示的实施例中,到达的滞后数据分组被传输到以26标记的滞后数据分组到达处理单元26。以下将详细描述,滞后数据分组到达处理单元26可以利用包含在所到达的滞后数据分组中的信息来更新(或重算)纠错解码器24的状态。滞后数据分组到达处理单元26及其构成元件如图3的实例所示,可以包括存储在解码器中存储器内的软件以及通过解码器的处理元件例如控制器、微处理器或其他计算装置来获取和执行。可替换地,滞后数据分组到达处理单元26以及其组成元件可以包含硬件或固件,或包含软件、硬件和固件的任意结合,如本领域技术人员可理解的。
图3示出了根据本发明的实施例实现的解码技术的更详细的实例,该解码技术在对前向纠错码进行解码的过程中使用包含在到达的滞后数据分组中的信息。在图3中,从网络到达的分组首先被置于数据分组接收缓冲器22中,除非数据分组在其调度(或要求)的重放时间之后到达,或除非该数据分组接收缓冲器已满。如果该数据分组接收缓冲器22已满,该到达的数据分组可仅仅被丢弃或阻塞。如图1所示,在数据分组接收缓冲器22中的数据分组根据数据分组重放调度表来重放。当数据分组被重放,从数据分组中提取比特/帧数据信息并且利用纠错解码器一次一比特/帧地对比特/帧数据信息进行解码(或者,在一些实施例中,按比特/帧的组进行解码)。解码器24的输出为已经解码的输出信号x(k),此处x(k)=D(f(k),S(k-1))。当数据分组应当被重放时,如果数据分组缓冲器22为空(缺省),则可插入所擦除的比特/帧数据,以保持进入解码器24的连续信息流。
不同于图1所示通常技术,如图3所示实施例包括滞后数据分组到达处理单元26,用于帮助实现一系列附加步骤,在当滞后数据分组到来时,可以执行所述附加步骤。在图1中的现有技术中,滞后数据分组仅仅被丢弃(或擦除)。然而,在图3所示实施例的实例中,在到达的滞后数据分组中的比特/帧数据信息可被用于:(i)如步骤29所示,更新辅助比特/帧数据缓冲器28;(ii)如步骤31所示,更新辅助解码器状态缓冲器30;以及(iii)如步骤33所示,更新纠错解码器状态S(k)。比特/帧数据缓冲器28保存最近输入的M-1个比特/帧数据,以及当数据分组缓冲器空时已经被插入的比特/帧数据擦除指示。换句话说,比特/帧数据缓冲器28保存了已经提供给纠错解码器24的比特/帧数据的最近历史记录。当比特/帧数据提供给纠错解码器24时,该比特/帧数据也被复制到比特/帧数据缓冲器28中。因此,比特/帧数据缓冲器28在时间k的状态可以定义成一组比特/帧数据A(k)={f(k),f(k-1),...,f(k-M)}。解码器状态缓冲器30保存纠错解码器24的最近M个状态。换句话说,解码器状态缓冲器30保存解码器状态的最新历史记录。在对连续比特/帧数据进行解码时,随着解码器24的状态改变,解码器的每个新状态也被复制到解码器状态缓冲器30。因此,解码器状态缓冲器30在时间k的状态可以定义成一组解码器状态B(k)={S(k),S(k-1),...,S(k-M-1)}。
当滞后数据分组到来时,滞后数据分组到达处理单元26通常首先确定时间点,步骤29更新该比特/帧数据缓冲器期间,滞后数据分组中的比特/帧对应于所述时间点。这可以根据包含在滞后数据分组的头部字段中的序列号和/或时间戳信息来确定。在滞后数据分组中比特/帧的集合g(.)因此由{g(e),g(e+1),...,g(e+n+1)}给出,其中n是该滞后数据分组中比特/帧的数量并且e是该滞后数据分组中第一个比特/帧数据的时间点。通过如滞后分组那样替换A(k)中那些对应于滞后数据分组中相同时间点的比特/帧数据,比特/帧数据缓冲器A(k)(28)因此被更新。例如,如果f(e)在A(k)中,f(e)可以被g(e)替换,如果f(e+1)在A(k)中,f(e+1)可以被g(e+1)替换,...,如果f(e+n-1)在A(k)中,f(e+n-1)可以被g(e)替换。如以上所指出的,擦除的比特/帧数据最初可以被插入到比特/帧数据缓冲器A(k)中代替滞后到达数据分组,以保持对解码器24的输入是连续信息流。例如,如果f(i)在A(k)中,且滞后数据分组包含g(i),则f(i)是所指出的比特/帧数据擦除,其最初用作该擦除的占位符。随后的更新包括滞后到达的数据分组,比特/帧数据缓冲器28可以被定义为A*(k)={f*(k),f*(k-1),...,f*(k-M)}.
当更新了比特/帧数据缓冲器28,考虑更新后的比特/帧数据缓冲器A*(k),递归重算(更新)解码器的过去状态,因此解码器状态缓冲器30也被更新。对此,设f(j)是在更新比特/帧缓冲器28时被g(j)替换的A(k)中最早的比特/帧。S(j)重算为S*(j)=D(f*(j),S(j-1)),S(j+1)重算为S*(j+1)=D(f*(j+1),S)j)),等等,直至S(k)重算为S*(k)=D(f*(k),S(k-1)),由此解码器状态缓冲器30被递归更新。最终,通过把解码器24的当前状态设置成重算后(更新后)状态S*(k),解码器24的当前状态本身被更新。解码器24的性能,至少就比特误差率而言,可以因此得到提高。因重算的解码器状态就是当包含在滞后数据分组中的信息最初是准时到达且按通常方式被解码时该解码器应有的状态。通过根据接收的滞后数据分组来更新解码器的状态,根据本发明优选实施例的方法和系统可以终止滞后数据分组擦除在解码器的状态上产生效应的时间上的传播。
如以上所指出,根据本发明实现的实施例利用了在到达的滞后数据分组中包含的信息,可用于纠错解码器中,在对连续比特/帧数据进行解码时用于保存状态信息。用于卷积纠错码的Viterbi解码器即是一个例子。然而,本发明的实施例在应用中不限于任何特定的纠错码方案或解码方案,只要在对连续比特/帧数据进行解码时该解码器保存状态信息。还存在可以应用本发明实施例的方法和系统的许多其他解码器,例如用于卷积turbo码的解码器。此处描述的这些实施例可以被应用到未来可能发明的任何新的纠错码解码器中,在对连续的比特/帧数据进行解码时保存状态信息。
在前述说明书中,由于参照特定实施例来描述本发明。因此,该相关领域的技术人员容易理解对具体描述实施例的任何的变动或改动也可以在本发明的精神和范围内,本发明的范围仅由权利要求书限定。说明书和附图应相应地被理解为仅起说明作用而并非限制。

Claims (13)

1.一种数据分组解码系统,包括:
前向纠错解码器,用于解码包含了利用前向纠错码编码的信息的已接收数据分组,并且维持表示该前向纠错解码器在对所述已接收数据分组所包含的信息进行连续解码后的一系列状态的状态信息;
滞后数据分组到达处理单元,用于至少部分地根据在预定重放时间之后到达所述数据分组解码器系统的滞后数据分组中包含的信息来更新所述前向纠错解码器的所述状态信息;以及
数据分组接收缓冲器,用于在把已接收数据分组提供给所述前向纠错解码器之前来接收和缓冲这些已接收数据分组,
其中所述滞后数据分组到达处理单元包括:
比特/帧缓冲器,用于存储已经提供给所述前向纠错解码器的最近历史信息;
比特/帧缓冲器更新单元,用于响应所述滞后数据分组的到达来更新所述比特/帧缓冲器;
解码器状态缓冲器,用于存储所述前向纠错解码器的所述状态的最近历史;以及
解码器状态缓冲器更新单元,用于至少部分地根据所述比特/帧缓冲器中的更新信息来更新所述解码器状态缓冲器,其中在所述比特/帧缓冲器中的所述更新信息至少部分基于所述滞后数据分组中所包含的信息。
2.如权利要求1所述的系统,其中所述比特/帧缓冲器更新单元用于确定所述滞后数据分组中所述信息对应的至少一个时间点,以及利用所述滞后数据分组中的相应信息来替换所述比特/帧缓冲器中对应于这种时间点的任何现有项。
3.如权利要求1所述的系统,其中所述解码器状态缓冲器更新单元用于至少部分基于所述比特/帧缓冲器中的所述更新信息来递归重算所述前向纠错解码器的过去状态,从而更新所述解码器状态缓冲器。
4.如权利要求1所述系统,其中所述前向纠错解码器是用于解码按卷积纠错码编码的信息的Viterbi解码器。
5.一种用于数据分组解码的方法,包括:
接收和缓冲已经使用前向纠错码编码的多个已接收数据分组;
对所述多个已接收数据分组所包含的信息进行解码;
维持用来表示在对所述多个已接收数据分组的每个所包含的信息进行连续解码后的一系列状态的状态信息;
接收滞后数据分组,所述滞后数据分组在预定重放时间之后到达并且包含利用所述前向纠错码编码的信息;以及
至少部分地基于所述滞后数据分组中包含的信息来更新所述状态信息,
其中更新所述状态信息包括至少部分地基于所述滞后数据分组中包含的信息来更新比特/帧缓冲器,其中所述比特/帧缓冲器用于存储已经提供给所述前向纠错解码器的最近历史信息,
其中更新所述状态信息还包括至少部分地基于所述比特/帧缓冲器中的更新信息来更新解码器状态缓冲器,其中所述解码器状态缓冲器保存所述状态信息的最近历史。
6.如权利要求5所述的方法,其中更新所述比特/帧缓冲器包括确定所述滞后数据分组中的信息所对应的时间点,以及利用所述滞后数据分组中的相应信息来替换所述比特/帧缓冲器中对应于这种时间点的任何现有项。
7.如权利要求5所述的方法,其中更新所述解码器状态缓冲器包括至少部分地基于所述比特/帧缓冲器中所述更新信息来递归重算所述过去状态信息。
8.如权利要求5所述的方法,其中所述前向纠错码是卷积纠错码。
9.一种数据分组解码系统,包括:
前向纠错解码器,用于对包含了利用前向纠错码编码的信息的已接收数据分组进行解码,以及维持用来表示所述前向纠错码解码器在对所述已接收数据分组所包含的信息进行连续解码后的一系列状态的状态信息;
比特/帧缓冲器,用于存储已经提供给所述前向纠错解码器的所述信息的最近历史;
解码器状态缓冲器,用于存储所述前向纠错解码器的所述状态的最近历史;
比特/帧缓冲器更新单元,用于响应在预定重放时间后到达所述数据分组解码系统的所述滞后数据分组的到达而更新所述比特/帧缓冲器,所述滞后数据分组包括滞后数据分组信息;
解码器状态缓冲器更新单元,用于至少部分地基于所述比特/帧缓冲器中的更新信息来更新所述解码器状态缓冲器;
解码器状态更新单元,用于至少部分的基于所述解码器状态缓冲器中的更新信息以及所述比特/帧缓冲器的更新信息来更新所述前向纠错解码器的所述状态信息。
10.如权利要求9所述的系统,其中所述比特/帧缓冲器更新单元用于确定所述滞后数据分组中所述滞后数据分组信息所对应的时间点,以及利用所述滞后数据分组信息来替换所述比特/帧缓冲器中对应于这种时间点的任何现有项。
11.如权利要求9所述的系统,其中所述解码器状态缓冲器更新单元用于至少部分地基于所述比特/帧缓冲器中的更新信息来递归重算所述解码器的过去状态。
12.如权利要求9所述的系统,其中所述前向纠错解码器是对利用卷积纠错码编码的信息进行解码的Viterbi解码器。
13.如权利要求9所述的系统,还包括数据分组接收缓冲器,用于在已接收数据分组被提供给所述前向纠错解码器之前接收并缓冲这些已接收数据分组。
CN2006800165417A 2005-05-13 2006-05-11 用于解码前向纠错码的系统和方法 Expired - Fee Related CN101176263B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/128,986 US7447983B2 (en) 2005-05-13 2005-05-13 Systems and methods for decoding forward error correcting codes
US11/128,986 2005-05-13
PCT/US2006/018215 WO2006124504A2 (en) 2005-05-13 2006-05-11 Systems and methods for decoding forward error correcting codes

Publications (2)

Publication Number Publication Date
CN101176263A CN101176263A (zh) 2008-05-07
CN101176263B true CN101176263B (zh) 2012-06-13

Family

ID=37420632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800165417A Expired - Fee Related CN101176263B (zh) 2005-05-13 2006-05-11 用于解码前向纠错码的系统和方法

Country Status (7)

Country Link
US (1) US7447983B2 (zh)
EP (1) EP1880472B1 (zh)
JP (1) JP5065254B2 (zh)
KR (1) KR101004573B1 (zh)
CN (1) CN101176263B (zh)
CA (1) CA2607088C (zh)
WO (1) WO2006124504A2 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783482B2 (en) * 2004-09-24 2010-08-24 Alcatel-Lucent Usa Inc. Method and apparatus for enhancing voice intelligibility in voice-over-IP network applications with late arriving packets
US7924711B2 (en) * 2004-10-20 2011-04-12 Qualcomm Incorporated Method and apparatus to adaptively manage end-to-end voice over internet protocol (VolP) media latency
JP4983435B2 (ja) * 2007-06-27 2012-07-25 富士通株式会社 パケット通信品質計測装置及び方法
US9184874B2 (en) * 2008-03-31 2015-11-10 Qualcomm Incorporated Storing log likelihood ratios in interleaved form to reduce hardware memory
US8059687B2 (en) * 2008-12-16 2011-11-15 Intel Corporation Algorithm for managing data loss in software demodulators
US8543893B2 (en) * 2009-09-02 2013-09-24 Agere Systems Llc Receiver for error-protected packet-based frame
KR101917174B1 (ko) * 2012-02-24 2018-11-09 삼성전자주식회사 전자 장치 사이의 스트림 전송 방법 및 그 방법을 처리하는 전자 장치
US9537779B2 (en) * 2013-10-11 2017-01-03 Huawei Technologies Co., Ltd. System and method for real-time traffic delivery
US20150169406A1 (en) * 2013-12-16 2015-06-18 Sandisk Technologies Inc. Decoding techniques for a data storage device
US9553608B2 (en) 2013-12-20 2017-01-24 Sandisk Technologies Llc Data storage device decoder and method of operation
CN105187156B (zh) * 2015-06-12 2018-06-08 北京理工大学 一种前向纠错码处理器
US9448887B1 (en) * 2015-08-22 2016-09-20 Weka.IO Ltd. Distributed erasure coded virtual file system
US10037761B1 (en) * 2017-06-05 2018-07-31 Intel IP Corporation Audio decoder state update for packet loss concealment
CN107294544B (zh) * 2017-06-27 2020-09-01 唯思泰瑞(北京)信息科技有限公司 卷积码的前向纠错方法、装置及译码器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6366959B1 (en) * 1997-10-01 2002-04-02 3Com Corporation Method and apparatus for real time communication system buffer size and error correction coding selection
CN1353895A (zh) * 1999-04-01 2002-06-12 诺基亚移动电话有限公司 用于数字数据传送的方法与设备
CN1441949A (zh) * 2000-05-11 2003-09-10 艾利森电话股份有限公司 语音编码中的前向纠错

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4726019A (en) * 1986-02-28 1988-02-16 American Telephone And Telegraph Company, At&T Bell Laboratories Digital encoder and decoder synchronization in the presence of late arriving packets
JPH07221789A (ja) * 1994-01-27 1995-08-18 Hitachi Ltd 連続データ伝送方法および連続データ伝送システム
DE69633164T2 (de) 1995-05-22 2005-08-11 Ntt Mobile Communications Network Inc. Tondekoder
JPH1198188A (ja) * 1997-09-22 1999-04-09 Nippon Telegr & Teleph Corp <Ntt> パケット損失特性算出システムおよびそれを備えたパケット通信網
US7058568B1 (en) * 2000-01-18 2006-06-06 Cisco Technology, Inc. Voice quality improvement for voip connections on low loss network
US7746953B1 (en) * 2000-09-12 2010-06-29 Alcatel-Lucent Usa Inc. Method and apparatus for asynchronous incremental redundancy transmission in a communication system
US6952407B2 (en) * 2001-02-22 2005-10-04 Snowshore Networks, Inc. Minimizing latency with content-based adaptive buffering
US7362770B2 (en) * 2002-09-06 2008-04-22 Lsi Logic Corporation Method and apparatus for using and combining sub-frame processing and adaptive jitter-buffers for improved voice quality in voice-over-packet networks
US7447978B2 (en) * 2004-11-16 2008-11-04 Nokia Corporation Buffering packets of a media stream
US9385843B2 (en) * 2004-12-22 2016-07-05 Qualcomm Incorporated Method and apparatus for using multiple modulation schemes for a single packet
WO2006072265A1 (en) * 2005-01-10 2006-07-13 Ntt Docomo, Inc. Apparatus for predictively encoding a sequence of frames

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6366959B1 (en) * 1997-10-01 2002-04-02 3Com Corporation Method and apparatus for real time communication system buffer size and error correction coding selection
CN1353895A (zh) * 1999-04-01 2002-06-12 诺基亚移动电话有限公司 用于数字数据传送的方法与设备
CN1441949A (zh) * 2000-05-11 2003-09-10 艾利森电话股份有限公司 语音编码中的前向纠错

Also Published As

Publication number Publication date
EP1880472B1 (en) 2013-05-01
KR101004573B1 (ko) 2010-12-30
JP5065254B2 (ja) 2012-10-31
JP2008541627A (ja) 2008-11-20
US20060259849A1 (en) 2006-11-16
KR20080004603A (ko) 2008-01-09
US7447983B2 (en) 2008-11-04
CA2607088A1 (en) 2006-11-23
CA2607088C (en) 2012-01-03
CN101176263A (zh) 2008-05-07
WO2006124504A3 (en) 2007-11-22
EP1880472A4 (en) 2010-07-21
WO2006124504A2 (en) 2006-11-23
EP1880472A2 (en) 2008-01-23

Similar Documents

Publication Publication Date Title
CN101176263B (zh) 用于解码前向纠错码的系统和方法
US8555146B2 (en) FEC streaming with aggregation of concurrent streams for FEC computation
US8218666B2 (en) Advanced-VSB system (A-VSB)
JP4980567B2 (ja) 動的なネットワーク損失状態に対する簡単な適応を備えたマルチメディアサーバ
US8855145B2 (en) Jitter buffer
US8832519B2 (en) Method and apparatus for FEC encoding and decoding
JP3701956B2 (ja) パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体
CN103918209A (zh) 在多媒体通信系统中发送和接收应用层-前向纠错分组的装置和方法
JP2005223433A (ja) ストリーミングデータ送信装置およびストリーミングデータ受信装置
CN101931492A (zh) 数据块前向纠错算法的确定方法与装置
RU2711354C1 (ru) Способ передачи данных по асинхронным сетям связи с возможностью восстановления данных при их потере из-за наличия ошибок соединения в сетях связи
JP2000209273A (ja) ディジタルデ―タ放送信号中継装置
CN101162966A (zh) 一种将纠错码技术用于数据传输的方法及系统
JP4392174B2 (ja) デジタルデータ配信システム
CN114337917B (zh) 基于前向纠错数据传输方法和短报文发送方法
CN102170583A (zh) 一种移动多媒体广播中恢复并播放音频段的方法和系统
KR100996619B1 (ko) 순방향 소거 정정을 이용한 동기 손실에 탄력적인 디지털 통신 시스템
Gotta et al. Quality of Experience in Satellite video streaming transmissions in urban vehicular environment
WO2011034844A2 (en) Apparatus and method for synchronization of trellis states in a network
JP2008005030A (ja) パケット送受信装置
JP2006080610A (ja) パリティ時差送信システム、送信装置、及び受信装置
Vadakital et al. Geo-Predictive error correction adaptation for broadcast services

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: VERIZON SERVICES ORG INC.

Free format text: FORMER OWNER: VERIZON SERVICES CORP.

Effective date: 20130222

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

Effective date of registration: 20130222

Address after: American New Jersey

Patentee after: Verizon Services Org Inc.

Address before: American Virginia

Patentee before: Verizon Services Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120613

Termination date: 20150511

EXPY Termination of patent right or utility model