CN101310447B - 用于mpe-fec帧解码的存储效率擦除信息表 - Google Patents

用于mpe-fec帧解码的存储效率擦除信息表 Download PDF

Info

Publication number
CN101310447B
CN101310447B CN2006800428164A CN200680042816A CN101310447B CN 101310447 B CN101310447 B CN 101310447B CN 2006800428164 A CN2006800428164 A CN 2006800428164A CN 200680042816 A CN200680042816 A CN 200680042816A CN 101310447 B CN101310447 B CN 101310447B
Authority
CN
China
Prior art keywords
datagram
wiping
wipe
subclauses
clauses
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
CN2006800428164A
Other languages
English (en)
Other versions
CN101310447A (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.)
NXP BV
Original Assignee
ST Ericsson SA
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 ST Ericsson SA filed Critical ST Ericsson SA
Publication of CN101310447A publication Critical patent/CN101310447A/zh
Application granted granted Critical
Publication of CN101310447B publication Critical patent/CN101310447B/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
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/154Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • H03M13/6505Memory efficient implementations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Circuits Of Receivers In General (AREA)

Abstract

一种接收器(120),其被配置以接收在通信链路上的数据。一种解包器(122),其被耦接至接收器,被配置以生成数据报和与数据报相关的擦除属性。一种解码器(124),其被耦接至解包器,并被配置以将数据报存储在帧表(400)内并生成代码字,解码器将数据报存储在表列中以在表行中生成代码字,并对代码字纠错,该解码器并被配置以将擦除属性存储在擦除表(552)中。擦除表的特征是它包括多个条目(560),每个条目均与帧表中的列相关。每个条目均由多个单元组成。

Description

用于MPE-FEC帧解码的存储效率擦除信息表
技术领域
无线环境对高质量通信提出了挑战。本发明涉及改进移动无线应用中的纠错,同时,减小对存储器、计算开销和功耗的要求。
背景技术
半导体制造技术和数字系统架构的发展导致了非常高集成度的电路,其包含百万量级的晶体管,此外,还有各种其他元件和互连线。由上述发展产生的集成电路以相对低的成本提供了巨大的计算资源。反过来,这种集成电路的可获得性赋予了消费电子产品、特别是移动无线产品更高的性能和多样性。消费电子产品的一个特别的方面是移动电话和便携TV接收器。
由于持续增加的对改进的接收质量的需要,在最先进的移动电话和便携TV接收器产品中采用了越来越复杂的技术,这些产品合并或包括了纠错功能或能力。采用这些复杂技术通常会导致在成本和功耗方面的不理想的结果。例如,这种信号处理能力通常需要大量的存储器来存储输入数据,通常还需要快速计算资源。额外的存储器和高速计算资源增大了那些合并了纠错性能的产品的成本和功耗。
在一些对大量输入数据进行运算并产生很多输出数据(包括中间结果,其被存储以做后续处理)的复杂处理算法中,需要的存储容量已经变得特别的大。
所需要的是提供纠错能力而同时降低并入这种能力的产品的成本和功耗的方法和设备。
发明内容
本发明提供了改善无线装置中的接收质量的设备和方法。
接收器被配置以接收通信链路上的数据。解包器,其耦接至接收器,被配置以生成数据报和与数据报相关的擦除属性。解码器被耦接至解包器,并被配置以将数据报存储在帧表内并生成代码字,解码器将数据报存储在表列中以在表行中生成代码字,并且对代码字纠错,该解码器被配置以将擦除属性存储在擦除表中。用户接口被耦接至解码器,并被配置以将对应于已纠错的数据报的图像再现在用户接口上。本发明的优点包括改进的信号接收和处理以及延长移动无线装置中的电池寿命。
在本发明的一个方面,擦除表包括多个条目,每个条目均与帧表中的列相关,其中,每个条目包括多个单元,其中,每个单元包括多个字段,其存储与数据报相关的擦除属性。在本发明一个方面中,配置解包器以产生至少三个与数据报相关的擦除属性层次,配置擦除表单元以存储至少三个与数据报相关的擦除属性层次。在本发明的一个方面,该装置包括一个指针表,其被配置以识别条目的单元在擦除表中的位置。在本发明一个方面中,该装置包括一个擦除发生器,其包括多个耦接至选择器并被配置以为擦除表中的每个条目产生擦除赋值的比较器。在一个方面中,通信链路是无线链路,数据是数字电视数据。
本发明的优点包括改进的信号接收和信号处理,以及在移动无线装置中的延长的电池寿命。
附图说明
参照以下附图对本发明进行描述。
图1描述了根据本发明实施例的一个示范性无线网络。
图2A描述了根据本发明实施例的一个示范性装置。
图2B描述了示出在根据本发明实施例的示范性装置中执行的方法的流程图。
图3A描述了根据本发明实施例的Reed-Solomon代码字。
图3B和图3C描述了传输包和根据本发明的MPE-FEC段之间的关系。
图4A和图4B描述了根据本发明实施例的存储表。
图5描述了根据本发明实施例的自适应MPE-FEC解码器的逻辑架构。
图6A-图6D描述了根据本发明实施例的擦除表。
图7描述了根据本发明实施例的擦除发生器。
具体实施方式
参照特定实施例对本发明进行描述。本领域技术人员将认识到这些描述是为了解释,并提供了实现本发明的最佳模式。参照特定的无线装置和协议,本发明适用于很多不同类型的通信媒介、装置和协议。例如,虽然这里描述的是一种无线协议,但是本发明也适于其他的诸如有线通信之类的协议和通信技术,以及模拟和数字变种。同样,虽然描述了Reed-Solomon纠错,但是在本发明中也可以实现其他的纠错技术。另外,虽然这里描述了诸如包大小和存储器大小之类的特定参数,但是这些只是为了示例的需要,这是因为本发明也可以采用其他的包大小、存储器大小等等。
在本发明中,通过合并特定的擦除表来表示擦除信息,显著地降低了对数字信号处理操作的存储装置的需求。代替分别指定代码字的每个符号(或字节)的擦除信息,擦除表允许多个符号的擦除信息由(或者例如数据结构的)单个条目来表示。这允许表基本上在很多符号之间共享同一存储空间。另外,介绍了一种在解码操作期间将数据结构转换为与单个符号相关的擦除信息的技术。
图1描述了一个示范性无线网络100,其示出了广播电台110和多个从广播电台接收信号的无线装置112a-112b。这些装置具有与其他装置通信的能力。例如,装置112a-112b是电视接收器,但还可以是其他的移动装置,例如电话、个人数字助理(PDA)、便携式电脑或其他电子装置。而且,这些装置的一些是基于电池供电的,而其他的是由可得到的电源引出线供电的。在一些情况下,这些装置还可以通过有线网络(例如以太网或电缆连接)被连接至网络。
图2A描述了根据本发明实施例的示范性装置112。图2B描述了一个流程图,该流程图示出了在示范性装置中执行的方法。接收器和解调器120接收入站信号,将该信号变换为较低的频率,并生成传输流,使该信号可以被处理。在一个方面,该接收器包括一个纠错电路,其对解调后的包执行最初的纠错,并在TS包已损坏不能被纠错时设置传输错误指示符(TEI)。通过将入站信息解码为连同擦除信息的多协议封装前向纠错(MPE-FEC)段,以及分析MPE-FEC段来提取原始IP数据报,IP解包器122对传输流执行最初的处理。MPE-FEC解码器124接收MPE-FEC段,并处理根据本发明的实施例的Reed-Solomon代码字,产生已经纠错的IP数据报。用户接口126(例如,信源解码和呈现电路)处理在例如电视显示的用户接口上显示的信息。
对于纠错,示范性实施例采用Reed-Solomon代码。Reed-Solomon编码器采用数字数据块,并添加额外“冗余”位。由于多个原因(例如噪声或干扰、CD上的划痕等),在传送或存储期间发生错误。Reed-Solomon解码器对每个块进行处理,试图纠正错误并复原原始数据。可被纠正的错误的数量和类型取决于Reed-Solomon代码的特性。
Reed-Solomon代码被表示为具有s位符号的RS(n,k)。这意味着编码器采用k个均为s位的数据符号,并添加奇偶符号来形成一个n符号代码字。这些奇偶符号是每个均为s位的n-k个奇偶符号。Reed-Solomon解码器可以至多纠正代码字中的t个包含错误的符号,这里,2t=n-k。
图3A描述了根据本发明实施例的Reed-Solomon代码字。用在MPE-FEC中的Reed-Solomon代码被表示为具有8位符号的RS(255,191)。这意味着每个代码字包含255个代码字字节,其中,191个字节是数据,64个字节是奇偶符号。即,n=255,k=191,s=8,2t=64,以及t=32。解码器可以纠正在代码字中的任何32个符号错误,即:可以自动纠正在代码字中任何位置的32个字节的错误。假定符号大小为s,则Reed-Solomon代码的最大代码字长度n=2s-1。例如,具有8位符号(s=8)的代码的最大长度是255字节。编码和解码Reed-Solomon代码所需要的处理能力大小与每个代码字的奇偶符号的数量相关。t值大意味着大量的错误可以被纠正,但是比t值小需要更大的计算能力。当符号中的任意数量的位错误时,一个符号错误出现。
Reed-Solomon代数解码可以纠正错误和擦除。当已知出错符号的位置时,发生擦除。解码器至多可以纠正t个错误或2t个擦除。在示范性实施例中,擦除信息被估计,并被用来辅助识别接收到的有可能包含错误的符号。当代码字被解码时,如果2x+y<2t(x为错误,y为擦除),那么,可以复原最初传送的代码字。
应当注意的是,已知越多的擦除,就可以纠正越多的错误。从而,希望能够在Reed-Solomon解码之前能识别出尽可能多的擦除。另一方面,如果符号被错误地标示为擦除,将减少Reed-Solomon解码器可以纠正的错误量。例如,假定有8个擦除,其中6个不是错误代码,但被错误地标示为擦除。Reed-Solomon解码器只能纠正(64-8)/2=28个错误和2个擦除。另一方面,如果起初只识别出了两个擦除,那么Reed-Solomon可以纠正(64-2)/2=31个错误和两个擦除。从而,希望提供可靠的算法来可靠地标示擦除。
图3B-C描述了传输包与根据本发明实施例的MPE-FEC包之间的关系(未按比例绘制)。在表1和表2中分别示出了传输流(TS)包和数据报部分的格式。注意,在图3A中不需要TS包与MPE包之间的直接对应关系,MPE包可以穿过一个或多个TS包之间的边界。本发明的一个方面是在任意条件下如何协调和重建图4A中示出的MPE-FEC帧表400。
表1传输包格式(以它们出现在传输包中的顺序。第一行,即首先出现的同步字节)。
 名称   位数   描述
 同步字节   8   0×47的固定值
 传输错误指示符(TEI)   1   ‘0’值表示没有错误,‘1’值表示在传输包中至少有一位错误
  有效单元开始指示符(PUSI)   1   ‘1’值表示在这个传输包的有效部分中至少有一个MPE节头
  传输优先权   1
  PID   13   0×0000:PAT0×0001:CAT0×0010-0×1FFE:网络、程序映射PID、基本PID或者其他0×1FFF:无效
  传输扰码控制   2   00
  调整字段控制   2   00:预留01:没有调整字段,只有有效负载10:只有调整字段,没有有效负载11:具有调整字段和有效负载
  连续性计数器   4
  调整字段   0或8   调整+填充
  有效负载   183或184   PES包或PSI段或包的填充字节或私有数据
表2——MPE段格式
Figure S2006800428164D00061
图4A-B描述了根据本发明实施例的存储器帧表400。该存储器表包括多个对应于目的代码字长度的列,其中,在这种情况下N=255字节。该表包括多个对应于存储器中的表的目的大小的行。
存储MPE-FEC解码器输入数据的MPE-FEC帧表的结构是一个具有255列和可变行数的矩阵。在一个为数字视频广播-手持(DVB-H)发送参数信令(TPS)设计的实施例中,no_of_rows(RowN)的最大允许值是1024,这使总的MPE-FEC帧大小几乎为2M比特。
矩阵中的每个位置均包含一个信息字节。由最左边的191个列组成的MPE-FEC帧的最后部分是用于IP数据报和可能的填充,被称为应用数据表。由最右边的64个列组成的MPE-FEC帧的右部分是用于FEC码的奇偶校验信息,被称为Reed-Solomon(RS)数据表。在应用数据表中的每个字节位置均具有从0到191×RowN的地址范围。以同样的方式,RS数据表中的每个字节位置均具有从0到64×RowN的地址范围。
图4A示出了每个由本发明重建的代码字的存储器400的MPE部分和FEC部分。图4B示出了IP数据报如何被接收被如何被编译进帧表400的列中的。
当IP数据报被提取出,从矩阵的左上角中的第一个数据报的第一个字节开始向第一列的下方行进,这些数据报被一个接一个地引出。数据报的长度可以在数字报之间任意变化。在一个数据报结束之后,立即开始下一个数据报。如果数据报没有在一个列的末端精确地结束,它会在下一列的顶端继续。当所有的数据报已经进入了应用数据表,用零字节填充任何没有被填充的字节位置,使最左边的191列被完全填充。
在所有最左边的191列被填充后,将64个奇偶校验字节填充到MPE-FEC帧中。采用的代码是Reed-Solomon RS(255,191)。那么,MPE-FEC表的每一行都包含一个RS代码字。如图4C所示,为了可以在解码后进行去校验位,RS数据表的最右边的一些列可能被丢弃掉而不被传送。RS列被去除的校验位的确切数字不需要很明确地标示出来,并可以在帧之间动态变化。这样,RS数据表也可以被完全填充,MPE-FEC帧是完整的。
MPE部分可以包括填充字节,其要在TS中被传送来填充表的部分,这些字节可能以可变的长度出现,这是因为MPE段长度是可变的。FEC段包通常是全长度,这是因为旨在尽可能高效地将他们插入到表的FEC部分。FEC部分可以包括在解码后被去除的奇偶校验位的字节来填充表的FEC部分,这些字节不被传送。
关于擦除,Reed-Solomon编码RS(255,191)可以至多纠正在255字节代码字中的32个错误,该编码是由DVB-H标准制定的示范性MPE-FEC解码功能。然而,如果提供了擦除,RS(255,191)可以至多纠正64个擦除。擦除指示被认为是错误的代码字的字节。从而,利用擦除属性可以充分地增强Reed-Solomon解码器的纠错性能。
由于MPE-FEC解码始于MPE-FEC帧表400被填充时,所以至少2M比特的存储器在示范性实施例中用于只存储MPE-FEC帧数据,但可以采用其他大小的存储器。如果支持移交功能,则对MPE-FEC帧数据存储器进行加倍。
为了将代码字的每个字节的擦除信息存储在MPE-FEC帧中,直接方法或传统方法存储代码字每个字节的至少1个比特(‘0’表示没有擦除,‘1’表示擦除)。这意味着对于该擦除表,至少采用255×1024比特=255k比特的存储器大小。如果采用两个位来表示代码字的每个字节的擦除,则采用510k比特的存储器。此外,如果支持移交功能,则加倍擦除表的存储器容量。
图5描述了MPE-FEC解码器124的概念性层次结构,该解码器包括RS解码器510、MPE-FEC帧表400、擦除表存储器552、擦除发生器554和擦除缓存器556。MPE-FEC帧表被存储在存储器中,该存储器提供了具有输入代码字字节的RS解码器,并存储了来自RS解码器的已纠正代码字。擦除信息被存储在擦除表存储器中。在RS解码过程中,擦除发生器提取擦除信息,该擦除信息被编码在代码字的每个字节的2个比特中。然后,它将该2个比特映射为1-位擦除,并将它存储在擦除缓存器中。擦除缓存器包含完整代码字的擦除。
在一个方面,通过引入特殊格式的数据结构来表示擦除信息,来减小擦除表存储器的大小。取代分离地表示代码字的每个字节的擦除信息,该数据结构允许由数据结构的单个实例来表示大量字节的擦除信息,来在很多字节之间共享同一存储器空间,该数据结构还被已知为在下列段中所描述的单元。然后,擦除发生器将数据结构转换为每个单个字节的擦除信息,这些单个字节的擦除信息是在MPE-FEC解码操作中所需要的。
在一个方面,解包器被配置以至少产生三个与如表3所示的数据报相关的擦除属性的层次,这导致2比特的擦除属性。在这个方面,解码器可以被配置为选择性地处理代码字来生成已经纠错的代码字,其中,该选择至少部分地基于擦除表中存储的属性。另外,解码器还可以被配置为选择性地绕过擦除表识别为已经纠错的或有太多错误需要纠正的代码字。在这个方面,引入了软擦除的概念。软擦除描述了错误的代价字中的符号的相似性。
例如,可以从接收到的传输包中提取代码字中的每个符号的软擦除值。例如,如果传输包的TEI(传输错误指示符)位被置为1,则在传输包中的有效负载的软擦除值可以被指定为2,如果TEI位被置为0,则软擦除值被指定为1。例如,对于MPE应用数据表的填充位,或通过CRC(循环冗余码校验和)校验的传输包的有效负载,指定软擦除值为0。例如,对于MPE-FEC Reed-Solomon数据表的编码后去除奇偶校验位去除的字节,指定软擦除值为3。
这些示例示出了如何确定软擦除值。对于软擦除值,其他的情况也是可能的。例如,可以利用传输包的连续性计数位来确定是否有任何包丢失了。在丢失一个包的情况下,整个包的软擦除值可以被指定为3,这是因为可以确定所有的符号都是错误的。
虽然存在多种技术来构建软擦除表,但是以可以为每个代码字产生硬擦除并使表的大小最小的方式来构建表是有用的。简化的硬擦除发生器和小的软擦除表转化为成本和功耗的降低。
在本发明的一个方面,在完全构建MPE-FEC帧和填充软擦除表之后,产生硬擦除。硬擦除值是二进制的。当它的值为1时,表示代码字的当前符号是一个擦除。当它的值为0时,表示代码字的当前符号不是一个擦除。随后,硬擦除为Reed-Solomon解码器所采用。然而,本发明不局限于特定的Reed-Solomon解码器实现。
硬擦除发生器通常与如何构建软擦除表有关。在本发明的一个方面,硬擦除发生器在每次执行中产生一个完整的代码字的硬擦除。结束执行时,硬擦除发生器确定如果满足下列条件中的任何一个,则不必进行Reed-Solomon解码:(a)在代码字中的每个符号的硬擦除是0;或(b)硬擦除为1的符号数超过了Reed-Solomon解码器的极限,即在DVB-H的情况下为64。通常,当且仅当代码字中的所有符号的软擦除均为0时满足第一条件,当且仅当代码字中的至少65个符号(在DVB-H的情况下)的软擦除不为0时满足第二条件。
应该注意到,本发明还可以采用不使用擦除的Reed-Solomon解码来实现。在这种情况下,硬擦除发生器的唯一功能是确定是否需要Reed-Solomon解码。没有硬擦除被输出到Reed-Solomon解码子模块。
图6A描述了根据本发明实施例的擦除表。在本发明的一个方面中,配置解包器来产生与IP数据报相关的擦除属性,配置解码器来将擦除属性存储在擦除表中。可以配置解码器,以选择性地处理代码字来产生已经纠错的代码字,其中,该选择至少是部分基于存储在擦除表中的属性的。
随着从输入的传输流包中解包出IP数据报,提取出了擦除信息。将擦除表实现为存储整个MPE-FEC帧的擦除信息。
擦除表的布置如图6A所示。擦除表550包括255个条目。每个条目均与图4A中所示的MPE-FEC表的列相关。即,条目1与MPE-FEC表的第1列相关,条目2与MPE-FEC表的第2列相关,依此类推。
擦除表的每个条目由16个单元560组成。在示范性实施例中选择这个数字的原因是假定最小IP包的大小是40字节,一个列可以包含最多26个IP包。假定接收到的每个其他IP包都是不可靠的(即,在IP包中存在CRC错误),13个擦除单元用于每个擦除表条目,或用于MPE-FEC表的每个列。就由于TEI=1而被要求来修改和前一个条目存储在一起的擦除层次的单元而言,对于一个列,16个单元是足够的。
擦除表条目的每个单元都包括3个字段570:10位行开始地址、8位长度和2位擦除层次值。当示范性实施例被实现为存储器时,擦除表具有20比特×16×255=81600比特的大小。
由标准规定,MPE-FEC表的行数和列数都是从0开始的。假定MPE-FEC包的开始位置是X,则它开始的行数是(X/(MPE-FEC表的总行数))的余数,它开始的列数是(X/(MPE-FEC表的总行数))的商。列数将是擦除表的条目数。
图6B描述了一个示例,如果MPE-FEC表的总行数为1024,并且如果接收到具有TEI=1并且只包含一个IP数据报的传输流包(假定IP数据报处于位置200),那么,开始行数是200,即十六进制的C8,列数是0。从而,将对应的单元放入擦除表的第一个条目中,擦除表具有如图6A所示的内容。在这种情况下,擦除层次是11b。
如果在一个存储器中被实现,则擦除缓存器的端口宽度是320比特。这不是一个在当前技术下的好的高宽比。从而,提出了执行表映射和实现具有4个存储器的擦除表,每个存储器均具有255×80比特的大小。擦除表的每个条目被均匀地分布,并被分别存储在四个存储器中,第一组四单元被存储被第一存储器中,第二组四单元被存储被第二存储器中,依此类推。图6C示出了这种布局。
以仅当接收到不可靠的IP数据报时产生单元的方式来填充擦除表,不为被认为是可靠的IP数据报产生条目。从而,如果一整列中没有出现不可靠的IP数据报,则在擦除表中根本就没有对应条目的单元。当然,存在只有一些单元有效的情况。从而,本发明的一个方面标示出在条目中的哪一个单元是有效的。图6D描述了这种目的的指针表590。
如图6D所示,指针表590包括255个条目:每个条目对应于擦除表中的一个条目。一个条目包括5个比特,并被定义为如表4所示的结构。这些5比特被用于决定在擦除表中的什么位置写入条目的下一个单元。
表4指针表条目定义
  位  描述
  4  0值表示在擦除表的对应条目中无有效单元,因此,下一个单元应当被写入第一个存储器中的条目的第一个单元位置的擦除表中。1值表示在擦除表的对应条目中至少有一个有效单元,因此,下一个单元应当被写入最后被写入单元的位置的下一个位置。
  3:2  如果条目的位4是1,这两位表示在下一次写入时在哪一个
  存储器中写入。当位[3:2]=00时,它表示存储器1;当位[3:2]=01时,它表示存储器2;当位[3:2]=10时,它表示存储器3;当位[3:2]=11时,它表示存储器4。
  1:0   这两位表示在下一次写入时,在擦除表中的对应条目的哪一个单元要被写入。当位[1:0]=00时,它表示存储器E1;当位[1:0]=01时,它表示存储器E2;当位[1:0]=10时,它表示存储器E3;当位[1:0]=11时,它表示存储器E4。
图7描述了根据本发明实施例的擦除发生器600。该擦除发生器主要由以下几方面组成:具有从0到15标号的16个比较器CMP 612、选择单元SEL 614、擦除层次缓存器616和擦除赋值逻辑618。擦除发生器采用256个周期来产生255个用于对代码字进行解码的擦除位。应该注意到,比较器的标号在确定擦除发生器的输出中是非常重要的。
在每个周期,比较器,也就是CMPn(0至15)从擦除表的条目中提出一个单元。比较器的另一个输入是当前代码字的行数。按顺序从擦除表中提取条目。即,在第一个周期,提取和处理擦除表的条目1,在第二个周期,处理条目2,依此类推,最后,处理条目255。在每个周期,比较器产生标志位和擦除层次。下文描述了如何确定这两个输出。
每个单元是如下的三元组:
(start_row,length,erasure level)
比较器检查擦除发生器输入的行数是否在start_row和start_row+length之间。如果是,则比较器设置它的输出擦除层次等于单元的擦除层次,设置它的输出标志位为1。否则,设置标志位为0。
在每个周期,选择单元614采用16对标志位和擦除层次,并产生擦除层次输出。如果来自比较器的所有标志位都为0,则选择单元输出擦除层次00b。否则,选择单元从具有最高标号以及其标志位被置为0的比较器的输出中选择擦除层次。在移位寄存器中对该选择单元的擦除层次输出进行缓存。
在255个迭代循环之后,255个擦除层次均被存储在缓存器616的移位寄存器中。然后,擦除赋值逻辑取用擦除层次并将它们转化为二进制擦除值。下面描述了这种转化。
1.如果擦除层次为00b,则擦除层次被指定为0;
2.如果擦除层次为11b,则擦除层次被指定为1;
3.如果擦除层次为01b或10b,那么,如果1的总数小于编程值(最大为64),则擦除值被指定为1,否则,擦除值被指定为0。
擦除缓存器616由一个255个触发器阵列组成,每个触发器均存储擦除信息的1位。当擦除位为0时,它表示当前的代码字节是可靠的(不是擦除),否则,它表示当前的代码字节是不可靠的(擦除)。
在Reed-Solomon解码器开始对代码字进行解码前,擦除产生擦除位,并将这些擦除位存储在擦除缓存器中。当解码开始时,擦除缓存器移位出触发器的值,并将一个擦除位提供给代码字中的每一个对应的应用代码字节。
作为存储器保存的示例,提供一种方案来计算擦除表所需的存储器的大小,以及确定利用本发明实施例所节省的存储器。
传统的擦除表的存储器大小是255×1024×2=522240比特=510K比特。
利用本发明,存储器大小是255×16×20比特=81600比特=79.68K比特。
节省的存储器为:522240-81600=440640比特=430K比特,转化为84.375%的节省。
表5总结计算——擦除表所需的存储器比较
  不采用本发明所需的存储器   510K比特
  采用本发明所需的存储器   79.68K比特
  采用本发明节省的存储器   430K比特
本发明的优点包括改进的信号接收和信号处理,以及在移动无线装置中延长的电池寿命。
在公开了示范性实施例和最佳模式之后,可以对公开的实施例进行很多修改和变化,但是,这些修改和变化仍然在附属权利要求限定的本发明的主题和精神内。

Claims (12)

1.一种支持纠错的装置,其包括:接收器(120),其被配置以接收在通信链路上的数据;解包器(122),其被耦接至所述接收器,并被配置以生成数据报和与数据报相关的擦除属性;解码器(124),其被耦接至所述解包器,并被配置以将数据报存储在帧表内并生成代码字,解码器将数据报存储在表列中来生成表行中的代码字,对代码字纠错,并被配置以将所述擦除属性存储在擦除表中;以及用户接口(126),其被耦接至所述解码器,并被配置以将与已纠错的数据报对应的图像呈现在用户接口上,
其中,所述擦除表包括多个条目,每个条目均与帧表中的列相关,其中,每个条目均包括多个单元,其中每个单元均包括多个字段,这些字段存储与数据报相关的擦除属性。
2.根据权利要求1所述的装置,其中,解包器被配置以生成至少三个与数据报相关的擦除属性的层次,并且擦除表单元被配置以存储至少三个与数据报相关的擦除属性的层次之一。
3.根据权利要求1所述的装置,其中使用指针表(590)来识别擦除表中的条目的单元位置。
4.根据权利要求1所述的装置,其中,所述解码器包括具有多个耦接至选择器的比较器并且配置为产生擦除表中的每个条目的擦除赋值的擦除发生器(600)。
5.根据权利要求3所述的装置,其中,所述解码器包括具有多个耦接至选择器的比较器并且配置为产生擦除表中的每个条目的擦除赋值的擦除发生器(600)。
6.根据权利要求1所述的装置,其中,所述通信链路是无线链路,所述数据是数字电视数据。
7.一种处理纠错方法,其包括:接收通信链路上的数据;对所述数据进行解包,以生成数据报以及与所述数据报相关的擦除属性;通过将所述数据报存储在帧表中并生成代码字,来对所述数据报进行解码,解码器将数据报存储在表列中来生成表行中的代码字,对代码字纠错,并被配置以将擦除属性存储在擦除表中;以及将已纠错的数据报相对应的图像呈现在用户接口上,
其中,擦除表包括多个条目,每个条目均与帧表中的列相关,其中每个条目均包括多个单元,其中每个单元均包括多个字段,这些字段存储与数据报相关的擦除属性。
8.根据权利要求7所述的方法,还包括生成至少三个与数据报相关的擦除属性的层次,以及所述擦除表单元被配置以存储至少三个与数据报相关的擦除属性的层次之一。
9.根据权利要求7所述的方法,还包括识别擦除表中的条目的单元位置。
10.根据权利要求7所述的方法,还包括产生擦除表中的每个条目的擦除赋值。
11.根据权利要求9所述的方法,还包括产生擦除表中的每个条目的擦除赋值。
12.根据权利要求7所述的方法,其中,所述通信链路是无线链路,所述数据是数字电视数据。
CN2006800428164A 2005-09-19 2006-09-19 用于mpe-fec帧解码的存储效率擦除信息表 Expired - Fee Related CN101310447B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US71869005P 2005-09-19 2005-09-19
US60/718,690 2005-09-19
PCT/IB2006/053380 WO2008038067A1 (en) 2005-09-19 2006-09-19 Memory efficient erasure information table for decoding of mpe-fec frames

Publications (2)

Publication Number Publication Date
CN101310447A CN101310447A (zh) 2008-11-19
CN101310447B true CN101310447B (zh) 2012-06-20

Family

ID=37949663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800428164A Expired - Fee Related CN101310447B (zh) 2005-09-19 2006-09-19 用于mpe-fec帧解码的存储效率擦除信息表

Country Status (6)

Country Link
US (1) US8255757B2 (zh)
EP (1) EP1932242B1 (zh)
JP (1) JP4844629B2 (zh)
CN (1) CN101310447B (zh)
TW (1) TWI415416B (zh)
WO (1) WO2008038067A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI415416B (zh) 2005-09-19 2013-11-11 St Ericsson Sa 在包含消除表格資料的移動式無線應用中用於校正錯誤的裝置及方法
TWI401910B (zh) 2005-09-19 2013-07-11 St Ericsson Sa 在包含多層級與可適性消除資料的移動式無線應用中用來校正錯誤的裝置與方法
TWI430611B (zh) 2005-09-19 2014-03-11 St Ericsson Sa 在包含旁路校正的移動式無線應用中用來校正錯誤的裝置與方法
US8691151B2 (en) * 2006-08-31 2014-04-08 Massachusetts Institute Of Technology Opto-fluidic architecture for particle manipulation and sorting
EP2145391A1 (en) * 2007-04-04 2010-01-20 Freescale Semiconductor, Inc. Integrated circuit comprising error correction logic, and a method of error correction
JP2010538535A (ja) * 2007-08-30 2010-12-09 トムソン ライセンシング 様々なデータ損失保護を行うための方法及びシステム
US8250441B2 (en) 2007-12-11 2012-08-21 Wi-Lan Inc. Outer coding framework for application packet error rate minimization
US8245095B2 (en) 2008-04-30 2012-08-14 Futurewei Technologies, Inc. Upgraded codeword lock state machine

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1340923A (zh) * 2000-07-07 2002-03-20 国际商业机器公司 软纠错代数解码器
CN1485848A (zh) * 2002-08-12 2004-03-31 国际商业机器公司 代数解码器和用于纠正任意组合的突发和随机错误的方法
WO2004066301A1 (en) * 2003-01-21 2004-08-05 Lg Electronics Inc. Method for encoding and decoding error correction block
GB2407946A (en) * 2003-11-05 2005-05-11 Nokia Corp Forward Error Correction decoder suitable for use with data comprising variable padding

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5224106A (en) * 1990-05-09 1993-06-29 Digital Equipment Corporation Multi-level error correction system
EP1599961A1 (en) 2003-03-05 2005-11-30 Nokia Corporation Method and system for forward error correction
SE0300832D0 (sv) 2003-03-25 2003-03-25 Teracom Ab Data Transmisson system
GB2402307A (en) 2003-05-30 2004-12-01 Nokia Corp Encapsulating irregular burst transmissions with overhead information specifying the timing interval to the next burst
GB2415873A (en) * 2004-06-30 2006-01-04 Nokia Corp Erasure information generation in Forward Error Correction decoding
WO2006062040A1 (ja) * 2004-12-08 2006-06-15 Matsushita Electric Industrial Co., Ltd. 受信装置、集積回路、プログラムおよび受信方法
US8166355B2 (en) 2005-02-10 2012-04-24 Siano Mobile Silicon Ltd. System and method for mitigating memory requirements
WO2006125157A2 (en) * 2005-05-18 2006-11-23 Telegent Systems, Inc. Erasure generation in a forward-error-correcting communication system
TWI415416B (zh) 2005-09-19 2013-11-11 St Ericsson Sa 在包含消除表格資料的移動式無線應用中用於校正錯誤的裝置及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1340923A (zh) * 2000-07-07 2002-03-20 国际商业机器公司 软纠错代数解码器
CN1485848A (zh) * 2002-08-12 2004-03-31 国际商业机器公司 代数解码器和用于纠正任意组合的突发和随机错误的方法
WO2004066301A1 (en) * 2003-01-21 2004-08-05 Lg Electronics Inc. Method for encoding and decoding error correction block
GB2407946A (en) * 2003-11-05 2005-05-11 Nokia Corp Forward Error Correction decoder suitable for use with data comprising variable padding

Also Published As

Publication number Publication date
EP1932242B1 (en) 2013-07-31
TW200729817A (en) 2007-08-01
TWI415416B (zh) 2013-11-11
WO2008038067A1 (en) 2008-04-03
JP2009509480A (ja) 2009-03-05
US20090177940A1 (en) 2009-07-09
EP1932242A1 (en) 2008-06-18
JP4844629B2 (ja) 2011-12-28
CN101310447A (zh) 2008-11-19
US8255757B2 (en) 2012-08-28

Similar Documents

Publication Publication Date Title
CN101310447B (zh) 用于mpe-fec帧解码的存储效率擦除信息表
US7447980B2 (en) Error detection and correction in data transmission packets
US20080052596A1 (en) Method and device for decoding blocks encoded with an ldpc code
US20180167088A1 (en) Error-Correcting Code Method and System with Hybrid Block Product Codes
CN101667887A (zh) 编码方法及其装置、解码方法及其装置
CN101268646B (zh) 用于在移动无线应用中纠错的设备及方法
CN101882467B (zh) Ecc参数可配置的存储器控制装置
CN109361403A (zh) Ldpc译码方法、ldpc译码器及其存储设备
US20080022345A1 (en) Demodulator and demodulation method
US20100017682A1 (en) Error correction code striping
US6370671B1 (en) Configurable decoder and method for decoding a reed-solomon codeword
CN115632662B (zh) 一种rs译码中的伴随式计算方法、装置、设备及介质
CN102437896B (zh) 一种比特交织及星座映射的方法及装置
CN101227618B (zh) 可执行前向纠错的手持式数字视频广播系统及其方法
US20130198582A1 (en) Supercharged codes
CN101510782A (zh) 译码方法和系统
US7796600B2 (en) Compact MPE-FEC erasure location cache memory for DVB-H receiver
CN101268645A (zh) 合并纠错旁路的用于在移动无线应用中纠错的设备和方法
CN103532666A (zh) 提高分布式传输中数据传输效率和lt码性能的方法
US6542553B1 (en) Device and method for transmitting digital data, device and method for receiving digital data and communication devices using them
JPH10229425A (ja) 送信装置及び受信装置及びそれらの方法
CN111010200B (zh) 基于异构多核的卫星气象数据喷泉解码算法硬件化系统
WO2004047306A1 (en) Two-fold sesqui rs codes and decoding thereof
CN113360264A (zh) 一种纠删处理系统、方法及分布式存储系统
KR100900329B1 (ko) 리드솔로몬 복호 방법 및 장치

Legal Events

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

Owner name: NXP BV

Free format text: FORMER OWNER: KONINKL PHILIPS ELECTRONICS NV

Effective date: 20101213

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: EINDHOVEN, NETHERLANDS TO: PLAN-LES-OUATES, SWITZERLAND

TA01 Transfer of patent application right

Effective date of registration: 20101213

Address after: Swiss Prang Eli Ute

Applicant after: NXP BV

Address before: Holland Ian Deho Finn

Applicant before: Koninkl Philips Electronics NV

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120620

Termination date: 20180919