WO2007072332A2 - Device providing a datagram recovery - Google Patents

Device providing a datagram recovery Download PDF

Info

Publication number
WO2007072332A2
WO2007072332A2 PCT/IB2006/054817 IB2006054817W WO2007072332A2 WO 2007072332 A2 WO2007072332 A2 WO 2007072332A2 IB 2006054817 W IB2006054817 W IB 2006054817W WO 2007072332 A2 WO2007072332 A2 WO 2007072332A2
Authority
WO
WIPO (PCT)
Prior art keywords
error
information
datagram
erasure
frame
Prior art date
Application number
PCT/IB2006/054817
Other languages
French (fr)
Other versions
WO2007072332A3 (en
Inventor
Onno Eerenberg
Arie G. C. Koppelaar
Armand Stuivenwold
Original Assignee
Koninklijke Philips Electronics N.V.
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 Koninklijke Philips Electronics N.V. filed Critical Koninklijke Philips Electronics N.V.
Publication of WO2007072332A2 publication Critical patent/WO2007072332A2/en
Publication of WO2007072332A3 publication Critical patent/WO2007072332A3/en

Links

Classifications

    • 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
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/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/6522Intended application, e.g. transmission or communication standard
    • H03M13/6541DVB-H and DVB-M
    • 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

Definitions

  • the present invention relates to a device and method for receiving bursts in a communications network. More particularly, the present invention relates to a mobile device, especially a handheld terminal, to receive multimedia services over digital terrestrial broadcasting networks.
  • ETSI EN 302 304 Vl.1.1 (2004-11) with the title "Digital Video Broadcasting (DVB); Transmission System for Handheld Terminals (DVB- H)" of the European Broadcasting Union describes the transmission system using digital video broadcasting standards to provide an efficient way of carrying multimedia services over digital terrestrial broadcasting networks to handheld terminals (DVB-H).
  • a full DVB-H system is defined by combining elements in the physical and link layers as well as service information.
  • the link layer for DVB-H makes use of time-slicing in order to reduce the average power consumption of the terminal and enabling smooth and seamless frequency handover, and of multiprotocol encapsulation for transmission of IP -based data and Reed- Solomon parities.
  • Forward error correction is applied on a multiprotocol encapsulation and forward error correction (MPE-FEC) frame for an improvement in the carrier to noise performance and Doppler performance in mobile channels, also improving tolerance to impulse interference resulting in a more robust receiver.
  • MPE-FEC multiprotocol encapsul
  • the conceptual structure of a DVB-H receiver includes a time-slicing module and a MPE-FEC module.
  • the time-slicing module aims to save receiver power consumption while enabling to perform smooth and seamless frequency handover.
  • the MPE-FEC module offers over the physical layer transmission, a complementary forward error correction allowing the receiver to cope with particularly difficult receiving conditions.
  • State-of-the-art document GB 2 406 483 A describes a method of transmitting bursts in a terrestrial digital video broadcasting network being used to transmit internet protocol datagrams to receiving devices using multiprotocol encapsulation.
  • application data is transmitted in bursts different from bursts for forward error correction data.
  • a controller instructs the receiver to listen for forward error correction data and receives forward error correction data, but if no error is detected in the application data burst, then to listen for application data only and skip the forward error correction data burst.
  • the method known from GB 2 406 483 A has the disadvantage that reception of the forward error correction data is necessary most of the time, because the multiprotocol encapsulation data is hardly error free. Furthermore, when the forward error correction fails, the correctly received internet protocol datagrams are lost due to unreliable parsing of the stored internet protocol datagrams.
  • the present invention has the further advantage that it guarantees retrieval of the datagrams send to the memory unit regardless the outcome of an error correction.
  • all datagrams can be sent toward an application engine.
  • all correctly received datagrams can be retrieved using the entry table and there is a possibility that corrupted received datagrams have been corrected by the error correction and can be retrieved from the frame of the memory unit.
  • the measure as defined in claim 2 has the advantage that a memory consumption of the entry table is reduced.
  • the first datagram of the frame can be accessed with the starting address of the frame.
  • the retrieval mechanism of a succeeding datagram may be based on a datagram length stored in a datagram length field of the datagram. Hence, the next datagram can be accessed, and this mechanism may be repeated until occurrence of an erroneous datagram.
  • the address information of the entry table provides access to a following readable datagram. Further, in case of an erroneous datagram, readout of the datagram length field may even be possible to provide access to the succeeding datagram.
  • This succeeding datagram may be error-free or may at least provide access to the next datagram of the frame.
  • a retrieval mechanism on the basis of the entry table and the described method may provide access to a large number of datagrams, even when an error correction has not been able to completely correct the frame comprising the datagrams.
  • the measure as defined in claim 3 has the advantage that, if possible, the address of an incorrect received datagram is used to provide further information for retrieval of the datagrams after error correction.
  • the entry table provides a direct access on a corrected datagram and at least an indirect access to datagrams succeeding the corrected datagram.
  • a datagram length field of the erroneous datagram may be correct at least after error correction and provides an indirect access to the succeeding datagram. Therefore, the number of datagrams that can be accessed after error correction is further increased.
  • the measure as defined in claim 4 has the advantage that it can be decided, whether a datagram is erroneous or not. Especially, after error processing, it can be decided on the basis of the correction table whether at least a datagram length information of a datagram is error-free. Hence, by scanning the correction table, generated by the decoder unit, an attempt can be made to try to recover the incorrectly received datagrams. By scanning the header, and the corresponding information of the correction table, the datagram length can be determined. With aid of this datagram length and the information of the correction table the datagram is recovered. If the correction table indicates that a part of the datagram has not been corrected, the parsing process is aborted and the entry table indicates the next correct datagram.
  • the correction table may indicate that a row of the frame has not been corrected. When at least a part of the datagram is arranged on this row, then it is determined that the datagram is erroneous. Regardless of the characteristic features of the error correction, the memory consumption is reduced when the correction table indicates correct rows instead of, for example, correct symbols of the frame.
  • the measure as defined in claim 9 has the advantage that it can be decided, whether a datagram is erroneous or not. Especially, after error processing, it can be decided on the basis of the correction table in combination with the erasure table whether at least a datagram length information of a datagram is error- free. Hence, by scanning the correction table, generated by the decoder unit and the erasure table, generated by the erasure flag generation unit, an attempt can be made to try to recover the incorrectly received datagrams. This recovery concept is enhanced by using the correction table combined with the erasure table.
  • the combination of the two tables provides information regarding an MPE-FEC row, defect or not defect and in column direction each byte position is characterized by first error information, second error information and primary error information.
  • the datagram length can be determined. With aid of this datagram length and the information of the correction table the datagram is recovered. If the correction table in combination with the erasure table indicates that a part of the datagram has not been corrected, the parsing process is aborted and the entry table indicates the next correct datagram. Thereby, according to the measure as defined in claim 10, the combination of the correction table and erasure table indicates the reliability of each MPE-FEC frame symbol in column direction. When at least a part of the datagram is arranged on the symbols of this column, then it is determined that the datagram is erroneous.
  • the error correction is the forward error correction.
  • the datagrams are stored in an application data table and Reed-Solomon parities in a Reed-Solomon data table of a multiprotocol encapsulation and forward error correction frame.
  • the retrieval mechanism may be based on a direct access on the basis of the address information of the entry table or an at least indirect access also on the basis of a datagram length information of not corrected datagrams.
  • the measures as defined in claims 11 to 13 have the advantage that the performance of the decoder unit, especially for a forward error correction on the multiprotocol encapsulation data stored in the frame of the memory unit, is improved.
  • Fig. 1 shows a block diagram of a device for receiving bursts according to a preferred embodiment of the present invention
  • Fig. 2A illustrates an entry table generated by an entry table generation unit of the device, as shown in Fig. 1, according to a first preferred embodiment of the present invention
  • Fig. 2B illustrates an entry table generated by an entry table generation unit according to a second preferred embodiment
  • Fig. 2C illustrates an entry table generated by an entry table generation unit according to a third preferred embodiment
  • Fig. 2D illustrates an entry table generated by an entry table generation unit according to a fourth preferred embodiment
  • Fig. 3 illustrates a correction table generated by a decoder unit of a device, as shown in Fig. 1, according to a preferred embodiment of the present invention
  • Fig. 4 illustrates a column of a frame in the memory unit of a device, as shown in Fig. 1, according to a preferred embodiment of the present invention
  • Fig. 5 illustrates an erasure information generated by an erasure information generation unit of the device associated to sectors of the frame of the memory unit according to the preferred embodiment of the present invention
  • Fig. 6 shows a flow chart illustrating generation of erasure information by the erasure information generation unit, as shown in Fig. 5;
  • Figs. 7 A and 7B illustrate an erasure information generated by an erasure information generation unit of the device associated to the correction table generated by the decoder unit according to the preferred embodiment of the present invention.
  • Fig. 8 shows a flow chart illustrating a decision process of an internet protocol readout unit of the device to determine the reliability of the individual MPE-FEC symbols.
  • Fig. 1 shows a schematic block diagram of a link-layer of a device 1 for receiving bursts in a communications network.
  • the device 1 can be used in a transmission system using digital video broadcasting standards to provide a way of carrying multimedia services over digital terrestrial broadcasting networks.
  • the device 1 may be a part of a handheld terminal, or a mobile phone or another, especially battery powered, apparatus. But, the device 1 and the method of the invention can also be included in or processed by other equipments.
  • the device 1 according to the preferred embodiment comprises a receiving unit 2.
  • the receiving unit 2 receives consecutive bursts via the communications network and outputs a transport stream over a channel 3.
  • each of the bursts may comprise multiprotocol encapsulation data containing IP-data as possible forward error correction data.
  • different bursts may be transmitted over different channels.
  • Timing offset information may be provided to indicate the timing between succeeding bursts. In case of digital video broadcasting for handheld terminals, such a timing offset information is known as "delta-t".
  • the device 1 comprises a demultiplexer 4.
  • the demultiplexer 4 is, for example, arranged as a MPEG-2 demultiplexer, wherein the moving picture compression standard MPEG-2 targets studio-quality television and multiple CD-quality audio channels at 4 to 6 Mbps and has also been extended to optimally address high-definition television (HDTV). But, other coding standards, especially for coding of moving pictures and associated audio, may also be provided by the demultiplexer 4.
  • the demultiplexer 4 receives the transport stream over the channel 3.
  • the demultiplexer 4 comprises packet identifier (PID) filters 5, selecting the transport stream packets of an elementary stream.
  • PID packet identifier
  • the packet identifier filters 5 are used in combination with service information (SI) and program specific information (PSI) filters 6 and de-encapsulation filters 7 for filtering of service information, program specific information and application information.
  • SI/PSI sections are stored in their corresponding queues 8 and transmitted by a queue manager 9.
  • the selected service information is subjected to several operations before it is transmitted via a serial peripheral interface (SPI) 10 and a channel 11 to an application engine.
  • SPI serial peripheral interface
  • Sections filtering of the service information and program specific information filters 6 are accompanied by a cyclic redundancy check (CRC) 12.
  • De-encapsulator filtering by the de-encapsulation filter 6 is accompanied by a cyclic redundancy check 13 as well as a check sum calculation 14.
  • the cyclic redundancy check 12, the cyclic redundancy check 13 and the check sum calculation 14 are sources for error information.
  • a further source for error information is a transport error indicator in a transport stream main header.
  • an error flag generation unit 20 of the demultiplexer 4 When an error occurs, an error flag generation unit 20 of the demultiplexer 4 generates an erasure flag for the corresponding datagram fragments.
  • a datagram is a network layer data frame. In the case of internet protocol, a datagram is an internet protocol datagram.
  • a datagram is a network layer packet with full address information enabling it to be routed to the endpoint without further information.
  • the receiving unit 2 receives burst comprising sections. Datagrams are encapsulated in sections, and when an error occurs in anyone of those sections, the erasure flag generation unit 20 generates an erasure for the datagram of the erroneous section. During the reception of the sections it may occur that the section header is received in a proper way. If one or more transport stream packets of that particular section are lost or corrupted, the multiprotocol encapsulated data start address of that particular multi protocol section may still be used. In such a case, an entry table generation unit 21 may store the address information of this datagram in an entry table.
  • the received data may be written in a frame of a memory unit 22 via a router 23.
  • Datagrams of correctly received sections are also stored in the memory unit 22, wherein the entry table generation unit 21 stores an address information of at least a part of the datagrams in the entry table.
  • the entry table generation unit 21 and the entry table generated by the entry table generation unit 21 are described in further detail with reference to Figs. 2A, 2B, 2C and 2D.
  • the device 1 comprises internet protocol readout unit 24 and a decoder unit 25.
  • the decoder unit 25 is adapted to perform a forward error correction on multiprotocol encapsulation data stored in the frame of the memory unit 22. After forward error correction processing, the multiprotocol encapsulation data is sent to the queue manager 9 via the internet protocol readout unit 24.
  • the internet protocol readout unit 24 identifies datagrams in the MPE-FEC memory of the memory unit 22. Therefore, it analyses a header information of each of the datagrams and reads its length information.
  • a control and power saving unit 26 is connected with the demultiplexer 4, the memory unit 22, the decoder unit 25, the internet protocol readout unit 24, the queue manager 9 and the SPI 10 for control and power saving operation.
  • control and power saving unit 26 is connected with the receiving unit 2 to switch off the receiving unit 2 between the bursts received.
  • the control and power saving unit 26 receives data from an interchip communication channel (I2C) 27.
  • I2C interchip communication channel
  • the control and power saving unit 26 receives internet protocol entry data from the entry table generation unit 21 and sends those data to the internet protocol readout unit for internet protocol readout.
  • the demultiplexer 4 may have one or more outputs, for example an output 28 for a partial or full transport stream for other services, such as terrestrial digital video broadcasting.
  • the decoder unit 25 comprises a correction table generation unit 29, which correction table generation unit 29 is adapted to generate a correction table indicating which parts of the frame stored in the memory unit 22 are correct after error correction performed by the decoder unit 25.
  • the correction table generated by the correction table generation unit 29 can indicate which rows of the frame are correct after the forward error correction. It should be noted that correct rows are not necessarily corrected rows, but, the correction table may indicate a difference according to this point.
  • the correction table generated by the correction table generation unit 29 and the utilization thereof is described in further detail with reference to Figs. 3 and 4.
  • the control and power saving unit 26 receives data from the correction table of the generation unit 29 and outputs those data to the internet protocol readout unit 24. Further, the control and power saving unit 26 determines, whether individual symbols of the application data table are erroneous on the basis of the data from the correction table and erasure table.
  • the device 1 comprises an erasure information generation unit 30, which erasure information generation unit 30 is adapted to generate an erasure information on the basis of erasure information stored in an erasure memory unit 31 and received via the router 23 of the demultiplexer 4.
  • the decoder unit 25 aborts decoding when the erasure information provided by the erasure information generation unit 30 indicates an erasure overflow.
  • the correction table generation unit 29 adds this row to the correction table. Then, forward error correction of the decoder unit 25 is continued with reference to the next or another row.
  • the erasure information generation unit 30 and the erasure information generated by the erasure information generation unit 30 are described in further detail with reference to Figs. 5 and 6.
  • the erasure information is also provided for the internet protocol readout unit 24 to enable readout of the datagrams from the multiprotocol encapsulation data stored in the frame of the memory unit 22.
  • Fig. 2A illustrates an entry table 35 generated by the entry table generation unit 21 according to a first preferred embodiment.
  • DVB-H multiprotocol encapsulation sections are equipped with real-time parameters.
  • Real-time parameters are delta-t, a table- boundary, a frame-boundary and an address information.
  • the address is used to correctly position the datagram in the multiprotocol encapsulation forward error correction frame of the memory unit 22.
  • the entry table 35 generated by the entry table generation unit 21, comprises the address information of all correctly received datagrams.
  • the first addresses are 0, 137, 256 and 1308.
  • the datagrams having starting addresses in the frame of 0, 137, 256 and 1308 can be read out from the frame after forward error correction, even when some erroneous datagrams are left in the multiprotocol encapsulation data.
  • a datagram between the datagram with starting address 256 and the datagram with starting address 1308 may be erroneous.
  • an indirect access onto the datagram with starting address 1308 may not be possible from the beginning of the frame, i.e. starting address 0.
  • the entry table 35 enables access to the following datagram with starting address 1308.
  • Fig. 2B illustrates the entry table 35 generated by the entry table generation unit 21 according to a second preferred embodiment.
  • the entry table generation unit 21 stores only address information of correctly received datagrams that follow a corrupted or missing datagram.
  • the datagram with starting address 1308 is the first correctly received datagram following an erroneous datagram.
  • the frame begins with address 0, and hence, the first datagram starts at address 0.
  • a datagram length information is then derived from the header of the first datagram. Therefore, information about the datagram type, for example, internet protocol version 4 or internet protocol version 6, may be necessary, before readout of the datagram length field is possible.
  • the starting address 137 of the succeeding datagram can be calculated.
  • This retrieval mechanism is repeated. Due to a corrupted or erroneous datagram, indicated after MPE-FEC by the correction table or correction table in combination with the erasure table the retrieval mechanism may fail, for example, before the starting address 1308 is reached.
  • the entry table 35 enables processing of the datagram with starting address 1308 and, probably, further datagrams succeeding the datagram with starting address 1308. Further, the entry table 35 comprises starting addresses 2738, 3056 and 3702, so that the multiprotocol encapsulation data in the frame is partially processed, when the decoder unit 25 has not been able to correct all errors. Further, the entry table 35 generated by the entry table generation unit 21, as shown in Fig.
  • the entry table 35 generated by the entry table generation unit 21 according to the second preferred embodiment is preferred due to the reduced memory consumption.
  • Fig. 2C shows an entry table 35 generated by an entry table generation unit 21 according to a third preferred embodiment of the invention.
  • the entry table 35 of this embodiment also comprises address information of corrupted datagrams.
  • the entry table generation unit 21 is adapted to store such a start address in the entry table 35.
  • the error flag generation unit 20 generates an error flag, for example, on the basis of the section cyclic redundancy check, and an associated error flag 36 is set.
  • an error flag for example, on the basis of the section cyclic redundancy check
  • an associated error flag 36 is set.
  • the starting address 638 of a corrupted datagram is stored in the entry table 35 together with the associated error flag 36.
  • the values of the entry table 35 may consist of a 18 Bit address plus a 1 Bit value to indicate that the address is associated to a correct ("0") or incorrect ("1") datagram.
  • the device 1 according to the third preferred embodiment of the invention may provide a better performance for the situation that consecutive datagrams, which were incorrectly received, are not all corrected.
  • Fig. 2D shows an entry table 35 generated by an entry table generation unit 21 according to a fourth preferred embodiment.
  • the entry table 35 generated by the entry table generation unit 21 of the fourth preferred embodiment comprises address information also of incorrect datagrams if the address information is readable.
  • the address information of only one correct datagram is stored in the entry table 35.
  • an error flag 36, 37, 38, 39 and 40 is set to indicate the corresponding address information as an address information of a corrupted datagram.
  • the address information of incorrect received datagrams provides additional starting addresses for retrieval of multiprotocol encapsulation data.
  • Fig. 3 illustrates a correction table generated by the correction table generation unit 29 of the decoder unit 25.
  • the frame of the memory unit 22 for storing multiprotocol encapsulation and forward error correction data is organized in columns and rows. A number k of rows depends on the service and can be 256, 512, 768 or 1024. The number of columns depends on the burst size and the number of bursts to be stored temporarily in the memory unit 22.
  • the frame of the memory unit 22 of the device 1 according to the preferred embodiment of the invention comprises 255 columns.
  • the correction table 45 allocates k Bit of memory. Hence, each Bit of the correction table 45 is associated to a row of the frame.
  • the decoder unit 25 performs a forward error correction and each Bit of the correction table 45 that corresponds to a correct or corrected row is set to 0 by the correction table generation unit 29. In case that the decoder unit 25 is not able to correct a row of the frame, the associated Bit of the correction table 45 is set to 1.
  • the rows Ti 1 of the frame are erroneous, wherein i is greater or equal than 0 and less or equal than I - 1. If the decoder unit 25 has corrected all rows, then the number I of erroneous rows vanishes and all Bits of the correction table 45 are set to 0.
  • the number I of erroneous rows is greater or equal than 1 and smaller or equal to the number k of rows of the frame. But, a threshold for the number I of erroneous rows that is smaller than the number k of rows may be provided, and in case that the number I of erroneous rows is greater than this threshold, the whole multiprotocol encapsulation and forward correction data of the frame may be discarded.
  • Fig. 4 illustrates a column m of the frame in the memory unit 22, wherein m is greater or equal than 0 and less or equal than 190.
  • the column m comprises k sectors numbered from 0 to k - 1.
  • Each of the sectors 0 to k - 1 is a part of a row of the frame. Since the rows Ti 1 are erroneous, the sectors 41, 42 and 43 are part of an erroneous row n,, n J+ i and n J+ 2, respectively. Thereby, j is greater or equal than 0 and j + 2 is less or equal than I - 1.
  • the sectors in rows ro to ri build up a datagram 46. Since the datagram 46 comprises no sector that is in an erroneous row n l5 the datagram 46 is determined as error- free.
  • the sectors r 2 to r 3 build up a further datagram 47.
  • This further datagram 47 comprises a sector 43 that is in the erroneous row n J+ 2.
  • the datagram 47 is determined as erroneous. But, if corresponding erasure information is equal to '01 ', ' 10' or ' 11 ', otherwise one can still determine datagram 47 as being error-free, as described with reference to Figs. 7A and 7B.
  • the datagram 46 or 47 is determined as an erroneous datagram 47, when the datagram 47 comprises at least a sector having an address in the frame of the memory unit 22, which address is congruent to at least a number Xi 1 of an erroneous row modulo k, and else it is determined as an error-free datagram 46.
  • the address in the frame is counted row-wise and that the above definition also holds when a datagram branches two columns.
  • Fig. 5 illustrates erasure information generated by the erasure information generation unit 30 of the device 1 according to a preferred embodiment of the invention.
  • erasure information consists of 1 Bit information per symbol and is used for informing the decoder unit 25 about a possible corruption of a symbol in a received word.
  • Ideal erasure information i.e., a flag which is equal to 1 if the corresponding symbol is erroneous and which is equal to 0 if the corresponding symbol is error- free, doubles the decoding capacity of a Reed-Solomon decoder.
  • a decoder unit 25 using the error only strategy can correct up to 32 errors. However, with ideal erasure information up to 64 errors can be corrected. This is called erasure decoding and the with erasure flag designated positions are called erasures. In general, it can be possible that not all erroneous symbols are marked with an erasure flag. Error and erasure decoding is therefore the most general decoding approach. With such a decoding approach, t errors and e erasures can be corrected provided that 2t + e ⁇ 65.
  • erasure information can be extracted from several sources.
  • the Reed-Solomon decoder in the channel demodulator can detect whether a 204 Byte word, from which 188 Byte correspond to a transport stream packet, contains 8 or less symbol errors. If so, the transport error indicator, i.e. 1 Bit in the transport stream main header, is set to the value 0. If 9 or more errors are present in the received word, then either the Reed-Solomon decoder detects this as a decoder failure or with a small probability, i.e. a miss-correction probability, a miss-correction will take place. In case of a decoder failure, the transport error indicator Bit is set to the value 1. A miss- correction cannot be detected by the Reed-Solomon decoder, so the transport error indicator Bit is then set to the value 0.
  • a second source of erasure information can be extracted from the cyclic redundancy check 12, 13, respectively.
  • the section cyclic redundancy check 12, 13 consists of 32 Bits and covers both the section header and the section payload. Sections or parts of sections are carried as payload in transport stream packets. Therefore, miss-corrections that took place in the Reed-Solomon decoder of the channel demodulator can be detected later on by the section cyclic redundancy check or checksum. If for one or more of the transport stream packets that carry the section, the transport error indicator is equal to 1 , the calculation of the section cyclic redundancy check or checksum is obsolete and can be discarded.
  • the cyclic redundancy check calculation or checksum is only used, if the transport error indicator is 0 for the corresponding transport stream packets and a cyclic redundancy check or checksum failure means that for one or more transport stream packets a miss-correction took place in the Reed-Solomon decoder of the channel demodulator.
  • a third source of erasure information is the continuity counter in the transport stream packet header, which can be used to detect gaps in the reception of transport stream packets.
  • a discontinuity can happen due to corruption of the packet identifier (PID) of a transport stream packet such that the transport stream de-multiplexer discards the corresponding packet. Resulting gaps in the received data should be identified as being erroneous with an error flag.
  • PID packet identifier
  • the first and second source for errors are combined to a first error information and a second error information by the erasure information generation unit 30.
  • the erasure information generation unit 30 generates the first error information with respect to the transport error indicator so that the first error information indicates an error for sections from a transport stream packet payload having a transport error indicator that is equal 1.
  • the erasure information generation unit 30 generates a second error information with respect to a cyclic redundancy check or checksum and the transport error indicator so that the second error information indicates an error of a section when a cyclic redundancy check or checksum error occurs, while the transport error indicator is O.
  • the third source of an error is regarded as a primary error information.
  • the erasure information generation unit 30 generates the primary error information with respect to a discontinuity in a transport stream comprising sections so that the primary error information indicates an error for those sections where the continuity counter shows a discontinuity.
  • Fig. 5 shows the frame in the memory unit 22, wherein the rows are numbered i and the columns are numbered j. Thereby, j is equal or greater than 0 and less or equal than 254, and i is equal or greater than 0 and less or equal than k - 1.
  • the elements of the frame are the sectors Sy.
  • Each of the sectors S y may, for example, allocate 1 Byte of the memory of the memory unit 22.
  • the erasure information generation unit 30 calculates an erasure information E y for each of the sectors S y on the basis of the first error information, the second error information and the primary error information.
  • the erasure information generation unit 30 provides a mapping of the described sources of errors onto a set comprising the four values OO', Ol', '10' and '11'.
  • '00' denotes no error for the respective sector S y
  • '01' is a second error information
  • '10' is a first error information
  • '11' is a primary error information.
  • the erasure information generation unit 30 calculates the number of sections S y in a specific row i that have an error according to the first, second or primary error information, respectively.
  • Ni be the number of errors of the second error information type in the row number i
  • N 2 be the number of errors of the first error information type in row number i
  • N 3 be the number of primary errors in row i.
  • the symbol "0” means "false” or "no”
  • the symbol "1" means "true” or "yes”.
  • the value P is preset to the error decoding capacity of the decoding unit 25, and may be up to 64 in case of the RS [255, 191, 65] code due to the availability of erasure information stored in the erasure memory unit 31.
  • step 50 it is decided in step 51, whether the number of primary errors is less or equal than the error decoding capacity P. If not ("0"), then an erasure overflow is generated for the row number i in step 52 and the decoder unit 25 skips the row with number i. But, if the decision in step 51 is answered to the affirmative ("1"), then the erasure information generation unit 30 continues with step 53. In step 53 it is determined, whether the sum of the number N 2 of first errors and the number N3 of primary errors is less or equal than the decoding capacity P. If not ("0"), at least a part of the first error information '10' is reduced and all second error information is ignored.
  • the erasure information generation unit 30 may set at least a number of '10' values to 0 that the condition as stated in step 53 holds. This means that the number N 2 of the remaining first errors plus the number N3 of primary errors equals the decoding capacity. The number N3 of primary errors is unchanged so that '11' is mapped onto 1. As a result, the erasure information generation unit 30 has set all erasure information values E y in row i, as shown in step 54, and the erasure information generation ends in step 58. Then, the decoder unit 25 performs a forward error correction on row i.
  • step 55 it is determined whether the sum of the number Ni of secondary errors, the number N 2 of first errors and the number N3 of primary errors is less or equal than the decoding capacity P. If not ("0"), both, the primary error information and the first error information is not reduced, respectively. This means that '11' and '10' are both mapped onto 1, as shown in step 56. Further, the second error information is reduced so that at least a part of the second error values '01' is set to 0. Further, '00' is mapped onto 0.
  • the erasure information generation unit 30 has determined all erasure information values E y for row i in step 56, and the erasure information generation ends in step 58. Then, the decoder unit 25 can perform a forward error correction on row i.
  • step 55 If the condition in step 55 is answered to the affirmative ("1"), then neither the first error information nor the second error information is reduced. Obviously, the primary error information is also not reduced. Hence, each considered source of an error, i.e. '11', '10', 'Or, is mapped to 1, and only '00' is set to 0, as shown in step 57. Hence, the erasure information generation unit 30 has set all erasure information values E y in row i, and the erasure information generation ends in step 58, and the decoder unit 25 may then perform a forward error correction on row i.
  • Fig. 7A shows a correction table 45 generated by the correction table generation unit 29, wherein the correction table 45 is locally stored in the correction table generation unit 29.
  • the number i shows the number of the row of the frame of the memory of the memory unit 22
  • C 1 is a bit of the correction table 45, as shown in Fig. 3, associated to row number i.
  • the row numbered 0 comprises erroneous symbols.
  • Co 1.
  • Fig. 7B shows the m-th column of the erasure table E 1 ,, as shown in Fig. 5.
  • This m-th column of the erasure table E y comprises the values E im , wherein m is fixed and i is greater than 0 and less than k.
  • the erasure information 48 relates to a datagram comprising the symbols from row 0 to row n + 2 in the m-th column of the application data table of the frame.
  • the symbol in row 0 and column m is the first symbol of this datagram.
  • the erasure table element Eo m indicates that the symbol in row 0 and column m is correct.
  • the control and power saving unit 26 determines that readout of this first symbol is possible.
  • the last symbol of the datagram starting with the symbol in row 0 and column m is the symbol in row n + 2 and column m.
  • the control and power saving unit 26 determines that a correct readout of this datagram is possible.
  • the correction table 45 indicates that the row numbered n + 2 is correct. Hence, each of the symbols in row n + 2 was correct or has been corrected. Therefore, the symbol in row n + 2 and column m has also been corrected.
  • Fig. 8 shows a flow chart illustrating a decision process of the internet protocol readout unit 24 to determine the reliability of an individual MPE-FEC symbol in row i and column m.
  • the process starts in step 60.
  • step 61 it is determined, whether the bit C 1 of the correction table 45 is equal to 1. If not ("0"), then the row i is correct, and the Byte value S im , as shown in Fig. 5, is correct, and the process stops in step 62. If yes ("1"), then the row i comprises erroneous symbols and the decision continues with step 63.
  • step 63 it is determined, whether E 1 is equal to '00', wherein E 1 is equal to E im for column m. If yes ("1"), then the symbol S im is correct, and the decision stops in step 62. If not ("0"), the symbol S im is incorrect, and the decision stops in step 64.

Abstract

In transmission systems using digital video broadcasting standards for handheld terminals data is transmitted in bursts. A decoder unit (25) is provided to correct errors in the data. But, when the decoder unit was not able to correct all errors, a huge amount of the data may be lost. The invention provides an entry table to enable a data recovery. Beside this, an IP-readout method is presented allowing IP -recovery in defect MPE-FEC frames using erasure tables.

Description

Device providing a datagram recovery
The present invention relates to a device and method for receiving bursts in a communications network. More particularly, the present invention relates to a mobile device, especially a handheld terminal, to receive multimedia services over digital terrestrial broadcasting networks.
State-of-the-art document ETSI EN 302 304 Vl.1.1 (2004-11) with the title "Digital Video Broadcasting (DVB); Transmission System for Handheld Terminals (DVB- H)" of the European Broadcasting Union describes the transmission system using digital video broadcasting standards to provide an efficient way of carrying multimedia services over digital terrestrial broadcasting networks to handheld terminals (DVB-H). Thereby, a full DVB-H system is defined by combining elements in the physical and link layers as well as service information. The link layer for DVB-H makes use of time-slicing in order to reduce the average power consumption of the terminal and enabling smooth and seamless frequency handover, and of multiprotocol encapsulation for transmission of IP -based data and Reed- Solomon parities. Forward error correction is applied on a multiprotocol encapsulation and forward error correction (MPE-FEC) frame for an improvement in the carrier to noise performance and Doppler performance in mobile channels, also improving tolerance to impulse interference resulting in a more robust receiver.
The conceptual structure of a DVB-H receiver includes a time-slicing module and a MPE-FEC module. The time-slicing module aims to save receiver power consumption while enabling to perform smooth and seamless frequency handover. The MPE-FEC module offers over the physical layer transmission, a complementary forward error correction allowing the receiver to cope with particularly difficult receiving conditions.
State-of-the-art document GB 2 406 483 A describes a method of transmitting bursts in a terrestrial digital video broadcasting network being used to transmit internet protocol datagrams to receiving devices using multiprotocol encapsulation. Thereby, application data is transmitted in bursts different from bursts for forward error correction data. Further, in order to save power, a controller instructs the receiver to listen for forward error correction data and receives forward error correction data, but if no error is detected in the application data burst, then to listen for application data only and skip the forward error correction data burst.
The method known from GB 2 406 483 A has the disadvantage that reception of the forward error correction data is necessary most of the time, because the multiprotocol encapsulation data is hardly error free. Furthermore, when the forward error correction fails, the correctly received internet protocol datagrams are lost due to unreliable parsing of the stored internet protocol datagrams.
It is an object of the invention to provide a device and a method for receiving bursts in a communications network with an improved receiving performance, especially with an improved utilization of data for the situation of defect MPE-FEC frames after forward error correction.
This object is solved by a device as defined in claim 1 and by a method as defined in claim 14. Advantageous developments of the invention are mentioned in the dependent claims.
The present invention has the further advantage that it guarantees retrieval of the datagrams send to the memory unit regardless the outcome of an error correction. In case that the error correction has been able to completely correct the frame of the memory unit, all datagrams can be sent toward an application engine. When the error correction has not been able to completely correct the frame of said memory unit, all correctly received datagrams can be retrieved using the entry table and there is a possibility that corrupted received datagrams have been corrected by the error correction and can be retrieved from the frame of the memory unit.
The measure as defined in claim 2 has the advantage that a memory consumption of the entry table is reduced. After error correction, the first datagram of the frame can be accessed with the starting address of the frame. The retrieval mechanism of a succeeding datagram may be based on a datagram length stored in a datagram length field of the datagram. Hence, the next datagram can be accessed, and this mechanism may be repeated until occurrence of an erroneous datagram. In case of an erroneous datagram, the address information of the entry table provides access to a following readable datagram. Further, in case of an erroneous datagram, readout of the datagram length field may even be possible to provide access to the succeeding datagram. This succeeding datagram may be error-free or may at least provide access to the next datagram of the frame. Hence, a retrieval mechanism on the basis of the entry table and the described method may provide access to a large number of datagrams, even when an error correction has not been able to completely correct the frame comprising the datagrams.
The measure as defined in claim 3 has the advantage that, if possible, the address of an incorrect received datagram is used to provide further information for retrieval of the datagrams after error correction. For example, after error correction, the entry table provides a direct access on a corrected datagram and at least an indirect access to datagrams succeeding the corrected datagram. Further, a datagram length field of the erroneous datagram may be correct at least after error correction and provides an indirect access to the succeeding datagram. Therefore, the number of datagrams that can be accessed after error correction is further increased.
The measure as defined in claim 4 has the advantage that it can be decided, whether a datagram is erroneous or not. Especially, after error processing, it can be decided on the basis of the correction table whether at least a datagram length information of a datagram is error-free. Hence, by scanning the correction table, generated by the decoder unit, an attempt can be made to try to recover the incorrectly received datagrams. By scanning the header, and the corresponding information of the correction table, the datagram length can be determined. With aid of this datagram length and the information of the correction table the datagram is recovered. If the correction table indicates that a part of the datagram has not been corrected, the parsing process is aborted and the entry table indicates the next correct datagram. Thereby, according to the measure as defined in claim 5, the correction table may indicate that a row of the frame has not been corrected. When at least a part of the datagram is arranged on this row, then it is determined that the datagram is erroneous. Regardless of the characteristic features of the error correction, the memory consumption is reduced when the correction table indicates correct rows instead of, for example, correct symbols of the frame.
The measure as defined in claim 9 has the advantage that it can be decided, whether a datagram is erroneous or not. Especially, after error processing, it can be decided on the basis of the correction table in combination with the erasure table whether at least a datagram length information of a datagram is error- free. Hence, by scanning the correction table, generated by the decoder unit and the erasure table, generated by the erasure flag generation unit, an attempt can be made to try to recover the incorrectly received datagrams. This recovery concept is enhanced by using the correction table combined with the erasure table. The combination of the two tables provides information regarding an MPE-FEC row, defect or not defect and in column direction each byte position is characterized by first error information, second error information and primary error information. By scanning the header, and the corresponding information of the correction table and erasure table, the datagram length can be determined. With aid of this datagram length and the information of the correction table the datagram is recovered. If the correction table in combination with the erasure table indicates that a part of the datagram has not been corrected, the parsing process is aborted and the entry table indicates the next correct datagram. Thereby, according to the measure as defined in claim 10, the combination of the correction table and erasure table indicates the reliability of each MPE-FEC frame symbol in column direction. When at least a part of the datagram is arranged on the symbols of this column, then it is determined that the datagram is erroneous.
According to the measure as defined in claim 6, the error correction is the forward error correction.
Thereby, it is advantageous that the datagrams are stored in an application data table and Reed-Solomon parities in a Reed-Solomon data table of a multiprotocol encapsulation and forward error correction frame.
According to the measures as defined in claims 7 and 8, the retrieval mechanism may be based on a direct access on the basis of the address information of the entry table or an at least indirect access also on the basis of a datagram length information of not corrected datagrams.
The measures as defined in claims 9 and 10 have the advantage that the granularity between correct and incorrect data is brought down to the individual symbols of an MPE-FEC frame instead of limiting the reliability on MPE-FEC row level.
The measures as defined in claims 11 to 13 have the advantage that the performance of the decoder unit, especially for a forward error correction on the multiprotocol encapsulation data stored in the frame of the memory unit, is improved.
These and other aspects of the invention will be apparent from and elucidated with reference to the embodiment described hereinafter.
The present invention will become readily understood from the following description of preferred embodiments thereof made with reference to the accompanying drawings, in which like parts are designated by like reference signs and in which: Fig. 1 shows a block diagram of a device for receiving bursts according to a preferred embodiment of the present invention;
Fig. 2A illustrates an entry table generated by an entry table generation unit of the device, as shown in Fig. 1, according to a first preferred embodiment of the present invention;
Fig. 2B illustrates an entry table generated by an entry table generation unit according to a second preferred embodiment;
Fig. 2C illustrates an entry table generated by an entry table generation unit according to a third preferred embodiment;
Fig. 2D illustrates an entry table generated by an entry table generation unit according to a fourth preferred embodiment;
Fig. 3 illustrates a correction table generated by a decoder unit of a device, as shown in Fig. 1, according to a preferred embodiment of the present invention;
Fig. 4 illustrates a column of a frame in the memory unit of a device, as shown in Fig. 1, according to a preferred embodiment of the present invention;
Fig. 5 illustrates an erasure information generated by an erasure information generation unit of the device associated to sectors of the frame of the memory unit according to the preferred embodiment of the present invention;
Fig. 6 shows a flow chart illustrating generation of erasure information by the erasure information generation unit, as shown in Fig. 5;
Figs. 7 A and 7B illustrate an erasure information generated by an erasure information generation unit of the device associated to the correction table generated by the decoder unit according to the preferred embodiment of the present invention; and
Fig. 8 shows a flow chart illustrating a decision process of an internet protocol readout unit of the device to determine the reliability of the individual MPE-FEC symbols.
Fig. 1 shows a schematic block diagram of a link-layer of a device 1 for receiving bursts in a communications network. The device 1 can be used in a transmission system using digital video broadcasting standards to provide a way of carrying multimedia services over digital terrestrial broadcasting networks. For example, the device 1 may be a part of a handheld terminal, or a mobile phone or another, especially battery powered, apparatus. But, the device 1 and the method of the invention can also be included in or processed by other equipments. The device 1 according to the preferred embodiment comprises a receiving unit 2. The receiving unit 2 receives consecutive bursts via the communications network and outputs a transport stream over a channel 3. Thereby, each of the bursts may comprise multiprotocol encapsulation data containing IP-data as possible forward error correction data. Thereby, different bursts may be transmitted over different channels. Timing offset information may be provided to indicate the timing between succeeding bursts. In case of digital video broadcasting for handheld terminals, such a timing offset information is known as "delta-t".
Further, the device 1 comprises a demultiplexer 4. The demultiplexer 4, is, for example, arranged as a MPEG-2 demultiplexer, wherein the moving picture compression standard MPEG-2 targets studio-quality television and multiple CD-quality audio channels at 4 to 6 Mbps and has also been extended to optimally address high-definition television (HDTV). But, other coding standards, especially for coding of moving pictures and associated audio, may also be provided by the demultiplexer 4. The demultiplexer 4 receives the transport stream over the channel 3. The demultiplexer 4 comprises packet identifier (PID) filters 5, selecting the transport stream packets of an elementary stream. The packet identifier filters 5 are used in combination with service information (SI) and program specific information (PSI) filters 6 and de-encapsulation filters 7 for filtering of service information, program specific information and application information. Selected SI/PSI sections are stored in their corresponding queues 8 and transmitted by a queue manager 9. The selected service information is subjected to several operations before it is transmitted via a serial peripheral interface (SPI) 10 and a channel 11 to an application engine.
Sections filtering of the service information and program specific information filters 6 are accompanied by a cyclic redundancy check (CRC) 12. De-encapsulator filtering by the de-encapsulation filter 6 is accompanied by a cyclic redundancy check 13 as well as a check sum calculation 14. The cyclic redundancy check 12, the cyclic redundancy check 13 and the check sum calculation 14 are sources for error information. A further source for error information is a transport error indicator in a transport stream main header. When an error occurs, an error flag generation unit 20 of the demultiplexer 4 generates an erasure flag for the corresponding datagram fragments. Thereby, a datagram is a network layer data frame. In the case of internet protocol, a datagram is an internet protocol datagram. In general, a datagram is a network layer packet with full address information enabling it to be routed to the endpoint without further information. The receiving unit 2 receives burst comprising sections. Datagrams are encapsulated in sections, and when an error occurs in anyone of those sections, the erasure flag generation unit 20 generates an erasure for the datagram of the erroneous section. During the reception of the sections it may occur that the section header is received in a proper way. If one or more transport stream packets of that particular section are lost or corrupted, the multiprotocol encapsulated data start address of that particular multi protocol section may still be used. In such a case, an entry table generation unit 21 may store the address information of this datagram in an entry table. With reference to the address information of the erroneous datagram, the received data may be written in a frame of a memory unit 22 via a router 23. Datagrams of correctly received sections are also stored in the memory unit 22, wherein the entry table generation unit 21 stores an address information of at least a part of the datagrams in the entry table. The entry table generation unit 21 and the entry table generated by the entry table generation unit 21 are described in further detail with reference to Figs. 2A, 2B, 2C and 2D.
The device 1 comprises internet protocol readout unit 24 and a decoder unit 25. The decoder unit 25 is adapted to perform a forward error correction on multiprotocol encapsulation data stored in the frame of the memory unit 22. After forward error correction processing, the multiprotocol encapsulation data is sent to the queue manager 9 via the internet protocol readout unit 24. The internet protocol readout unit 24 identifies datagrams in the MPE-FEC memory of the memory unit 22. Therefore, it analyses a header information of each of the datagrams and reads its length information. A control and power saving unit 26 is connected with the demultiplexer 4, the memory unit 22, the decoder unit 25, the internet protocol readout unit 24, the queue manager 9 and the SPI 10 for control and power saving operation. Further, the control and power saving unit 26 is connected with the receiving unit 2 to switch off the receiving unit 2 between the bursts received. The control and power saving unit 26 receives data from an interchip communication channel (I2C) 27. The control and power saving unit 26 receives internet protocol entry data from the entry table generation unit 21 and sends those data to the internet protocol readout unit for internet protocol readout. Further, the demultiplexer 4 may have one or more outputs, for example an output 28 for a partial or full transport stream for other services, such as terrestrial digital video broadcasting.
The decoder unit 25 comprises a correction table generation unit 29, which correction table generation unit 29 is adapted to generate a correction table indicating which parts of the frame stored in the memory unit 22 are correct after error correction performed by the decoder unit 25. For example, the correction table generated by the correction table generation unit 29 can indicate which rows of the frame are correct after the forward error correction. It should be noted that correct rows are not necessarily corrected rows, but, the correction table may indicate a difference according to this point. The correction table generated by the correction table generation unit 29 and the utilization thereof is described in further detail with reference to Figs. 3 and 4. The control and power saving unit 26 receives data from the correction table of the generation unit 29 and outputs those data to the internet protocol readout unit 24. Further, the control and power saving unit 26 determines, whether individual symbols of the application data table are erroneous on the basis of the data from the correction table and erasure table.
Further, the device 1 comprises an erasure information generation unit 30, which erasure information generation unit 30 is adapted to generate an erasure information on the basis of erasure information stored in an erasure memory unit 31 and received via the router 23 of the demultiplexer 4. Thereby, the decoder unit 25 aborts decoding when the erasure information provided by the erasure information generation unit 30 indicates an erasure overflow. In such a case, for example, correction of an erroneous row of the frame in the memory unit 22 is not possible, and the correction table generation unit 29 adds this row to the correction table. Then, forward error correction of the decoder unit 25 is continued with reference to the next or another row. The erasure information generation unit 30 and the erasure information generated by the erasure information generation unit 30 are described in further detail with reference to Figs. 5 and 6. The erasure information is also provided for the internet protocol readout unit 24 to enable readout of the datagrams from the multiprotocol encapsulation data stored in the frame of the memory unit 22.
Fig. 2A illustrates an entry table 35 generated by the entry table generation unit 21 according to a first preferred embodiment. In DVB-H multiprotocol encapsulation sections are equipped with real-time parameters. Real-time parameters are delta-t, a table- boundary, a frame-boundary and an address information. The address is used to correctly position the datagram in the multiprotocol encapsulation forward error correction frame of the memory unit 22. In the first preferred embodiment, as shown in Fig. 2A, the entry table 35, generated by the entry table generation unit 21, comprises the address information of all correctly received datagrams. The first addresses are 0, 137, 256 and 1308. With this address information, the datagrams having starting addresses in the frame of 0, 137, 256 and 1308 can be read out from the frame after forward error correction, even when some erroneous datagrams are left in the multiprotocol encapsulation data. For example, a datagram between the datagram with starting address 256 and the datagram with starting address 1308 may be erroneous. Hence, an indirect access onto the datagram with starting address 1308 may not be possible from the beginning of the frame, i.e. starting address 0. In such a case, the entry table 35 enables access to the following datagram with starting address 1308.
Fig. 2B illustrates the entry table 35 generated by the entry table generation unit 21 according to a second preferred embodiment. In this embodiment the entry table generation unit 21 stores only address information of correctly received datagrams that follow a corrupted or missing datagram. Continuing the example made with reference to Fig. 2A, the datagram with starting address 1308 is the first correctly received datagram following an erroneous datagram. In this example, the frame begins with address 0, and hence, the first datagram starts at address 0. A datagram length information is then derived from the header of the first datagram. Therefore, information about the datagram type, for example, internet protocol version 4 or internet protocol version 6, may be necessary, before readout of the datagram length field is possible.
Hence, the starting address 137 of the succeeding datagram can be calculated. This retrieval mechanism is repeated. Due to a corrupted or erroneous datagram, indicated after MPE-FEC by the correction table or correction table in combination with the erasure table the retrieval mechanism may fail, for example, before the starting address 1308 is reached. The entry table 35 enables processing of the datagram with starting address 1308 and, probably, further datagrams succeeding the datagram with starting address 1308. Further, the entry table 35 comprises starting addresses 2738, 3056 and 3702, so that the multiprotocol encapsulation data in the frame is partially processed, when the decoder unit 25 has not been able to correct all errors. Further, the entry table 35 generated by the entry table generation unit 21, as shown in Fig. 2B, requires less memory than the entry table 35, as shown in Fig. 2A. Hence, in applications where a large number of small datagrams is received, the entry table 35 generated by the entry table generation unit 21 according to the second preferred embodiment is preferred due to the reduced memory consumption.
Fig. 2C shows an entry table 35 generated by an entry table generation unit 21 according to a third preferred embodiment of the invention. In difference to the entry table 35, as shown in Fig. 2 A, the entry table 35 of this embodiment also comprises address information of corrupted datagrams. During the reception of multiprotocol encapsulation sections it may occur that the section header is received in a proper way. If one or more transport stream packets of that particular multiprotocol encapsulation section are lost or corrupted, the start address of that particular datagram may be used by the entry table generation unit 21. The entry table generation unit 21 is adapted to store such a start address in the entry table 35. The error flag generation unit 20 generates an error flag, for example, on the basis of the section cyclic redundancy check, and an associated error flag 36 is set. As an example, in Fig. 2C, the starting address 638 of a corrupted datagram is stored in the entry table 35 together with the associated error flag 36. As a result, the values of the entry table 35 may consist of a 18 Bit address plus a 1 Bit value to indicate that the address is associated to a correct ("0") or incorrect ("1") datagram. The device 1 according to the third preferred embodiment of the invention may provide a better performance for the situation that consecutive datagrams, which were incorrectly received, are not all corrected.
Fig. 2D shows an entry table 35 generated by an entry table generation unit 21 according to a fourth preferred embodiment. In difference to the entry table 35, as shown in Fig. 2B, the entry table 35 generated by the entry table generation unit 21 of the fourth preferred embodiment comprises address information also of incorrect datagrams if the address information is readable. Hence, after the occurrence of a corrupted datagram, the address information of only one correct datagram is stored in the entry table 35. But, between correct datagrams address information, if readable, of all incorrect datagrams is stored. Further, an error flag 36, 37, 38, 39 and 40 is set to indicate the corresponding address information as an address information of a corrupted datagram. After forward error correction, the address information of incorrect received datagrams provides additional starting addresses for retrieval of multiprotocol encapsulation data.
Fig. 3 illustrates a correction table generated by the correction table generation unit 29 of the decoder unit 25. The frame of the memory unit 22 for storing multiprotocol encapsulation and forward error correction data is organized in columns and rows. A number k of rows depends on the service and can be 256, 512, 768 or 1024. The number of columns depends on the burst size and the number of bursts to be stored temporarily in the memory unit 22. The frame of the memory unit 22 of the device 1 according to the preferred embodiment of the invention comprises 255 columns.
The correction table 45 allocates k Bit of memory. Hence, each Bit of the correction table 45 is associated to a row of the frame. The decoder unit 25 performs a forward error correction and each Bit of the correction table 45 that corresponds to a correct or corrected row is set to 0 by the correction table generation unit 29. In case that the decoder unit 25 is not able to correct a row of the frame, the associated Bit of the correction table 45 is set to 1. After forward error correction, the rows Ti1 of the frame are erroneous, wherein i is greater or equal than 0 and less or equal than I - 1. If the decoder unit 25 has corrected all rows, then the number I of erroneous rows vanishes and all Bits of the correction table 45 are set to 0. Otherwise, the number I of erroneous rows is greater or equal than 1 and smaller or equal to the number k of rows of the frame. But, a threshold for the number I of erroneous rows that is smaller than the number k of rows may be provided, and in case that the number I of erroneous rows is greater than this threshold, the whole multiprotocol encapsulation and forward correction data of the frame may be discarded.
Fig. 4 illustrates a column m of the frame in the memory unit 22, wherein m is greater or equal than 0 and less or equal than 190. The column m comprises k sectors numbered from 0 to k - 1. Each of the sectors 0 to k - 1 is a part of a row of the frame. Since the rows Ti1 are erroneous, the sectors 41, 42 and 43 are part of an erroneous row n,, nJ+i and nJ+2, respectively. Thereby, j is greater or equal than 0 and j + 2 is less or equal than I - 1.
The sectors in rows ro to ri build up a datagram 46. Since the datagram 46 comprises no sector that is in an erroneous row nl5 the datagram 46 is determined as error- free. The sectors r2 to r3 build up a further datagram 47. This further datagram 47 comprises a sector 43 that is in the erroneous row nJ+2. Hence, the datagram 47 is determined as erroneous. But, if corresponding erasure information is equal to '01 ', ' 10' or ' 11 ', otherwise one can still determine datagram 47 as being error-free, as described with reference to Figs. 7A and 7B.
That means, the datagram 46 or 47 is determined as an erroneous datagram 47, when the datagram 47 comprises at least a sector having an address in the frame of the memory unit 22, which address is congruent to at least a number Xi1 of an erroneous row modulo k, and else it is determined as an error-free datagram 46. It should be noted that the address in the frame is counted row-wise and that the above definition also holds when a datagram branches two columns.
Fig. 5 illustrates erasure information generated by the erasure information generation unit 30 of the device 1 according to a preferred embodiment of the invention. Classically, erasure information consists of 1 Bit information per symbol and is used for informing the decoder unit 25 about a possible corruption of a symbol in a received word. Ideal erasure information, i.e., a flag which is equal to 1 if the corresponding symbol is erroneous and which is equal to 0 if the corresponding symbol is error- free, doubles the decoding capacity of a Reed-Solomon decoder. In case of the un-shortened and un-punctured RS [255, 191, 65] code, a decoder unit 25 using the error only strategy, i.e., without using erasure information, can correct up to 32 errors. However, with ideal erasure information up to 64 errors can be corrected. This is called erasure decoding and the with erasure flag designated positions are called erasures. In general, it can be possible that not all erroneous symbols are marked with an erasure flag. Error and erasure decoding is therefore the most general decoding approach. With such a decoding approach, t errors and e erasures can be corrected provided that 2t + e < 65.
In a DVB-H receiver device 1 , erasure information can be extracted from several sources. First of all, the Reed-Solomon decoder in the channel demodulator can detect whether a 204 Byte word, from which 188 Byte correspond to a transport stream packet, contains 8 or less symbol errors. If so, the transport error indicator, i.e. 1 Bit in the transport stream main header, is set to the value 0. If 9 or more errors are present in the received word, then either the Reed-Solomon decoder detects this as a decoder failure or with a small probability, i.e. a miss-correction probability, a miss-correction will take place. In case of a decoder failure, the transport error indicator Bit is set to the value 1. A miss- correction cannot be detected by the Reed-Solomon decoder, so the transport error indicator Bit is then set to the value 0.
A second source of erasure information can be extracted from the cyclic redundancy check 12, 13, respectively. The section cyclic redundancy check 12, 13 consists of 32 Bits and covers both the section header and the section payload. Sections or parts of sections are carried as payload in transport stream packets. Therefore, miss-corrections that took place in the Reed-Solomon decoder of the channel demodulator can be detected later on by the section cyclic redundancy check or checksum. If for one or more of the transport stream packets that carry the section, the transport error indicator is equal to 1 , the calculation of the section cyclic redundancy check or checksum is obsolete and can be discarded. Hence, the cyclic redundancy check calculation or checksum is only used, if the transport error indicator is 0 for the corresponding transport stream packets and a cyclic redundancy check or checksum failure means that for one or more transport stream packets a miss-correction took place in the Reed-Solomon decoder of the channel demodulator.
A third source of erasure information is the continuity counter in the transport stream packet header, which can be used to detect gaps in the reception of transport stream packets. A discontinuity can happen due to corruption of the packet identifier (PID) of a transport stream packet such that the transport stream de-multiplexer discards the corresponding packet. Resulting gaps in the received data should be identified as being erroneous with an error flag.
The first and second source for errors, as described above, are combined to a first error information and a second error information by the erasure information generation unit 30. Thereby, the erasure information generation unit 30 generates the first error information with respect to the transport error indicator so that the first error information indicates an error for sections from a transport stream packet payload having a transport error indicator that is equal 1. Further, the erasure information generation unit 30 generates a second error information with respect to a cyclic redundancy check or checksum and the transport error indicator so that the second error information indicates an error of a section when a cyclic redundancy check or checksum error occurs, while the transport error indicator is O.
The third source of an error, as described above, is regarded as a primary error information. Hence, the erasure information generation unit 30 generates the primary error information with respect to a discontinuity in a transport stream comprising sections so that the primary error information indicates an error for those sections where the continuity counter shows a discontinuity.
Fig. 5 shows the frame in the memory unit 22, wherein the rows are numbered i and the columns are numbered j. Thereby, j is equal or greater than 0 and less or equal than 254, and i is equal or greater than 0 and less or equal than k - 1. The elements of the frame are the sectors Sy. Each of the sectors Sy may, for example, allocate 1 Byte of the memory of the memory unit 22. The erasure information generation unit 30 calculates an erasure information Ey for each of the sectors Sy on the basis of the first error information, the second error information and the primary error information.
The calculation of the erasure information is described in the following also with reference to Fig. 6. First, the erasure information generation unit 30 provides a mapping of the described sources of errors onto a set comprising the four values OO', Ol', '10' and '11'. Thereby, '00' denotes no error for the respective sector Sy, '01' is a second error information, '10' is a first error information, and '11' is a primary error information.
Then, the erasure information generation unit 30 calculates the number of sections Sy in a specific row i that have an error according to the first, second or primary error information, respectively. Let Ni be the number of errors of the second error information type in the row number i, let N2 be the number of errors of the first error information type in row number i, and let N3 be the number of primary errors in row i. In the flow chart, as shown in Fig. 6, in case of a decision, the symbol "0" means "false" or "no", and the symbol "1" means "true" or "yes". The value P is preset to the error decoding capacity of the decoding unit 25, and may be up to 64 in case of the RS [255, 191, 65] code due to the availability of erasure information stored in the erasure memory unit 31.
The operation starts in step 50. First, it is decided in step 51, whether the number of primary errors is less or equal than the error decoding capacity P. If not ("0"), then an erasure overflow is generated for the row number i in step 52 and the decoder unit 25 skips the row with number i. But, if the decision in step 51 is answered to the affirmative ("1"), then the erasure information generation unit 30 continues with step 53. In step 53 it is determined, whether the sum of the number N2 of first errors and the number N3 of primary errors is less or equal than the decoding capacity P. If not ("0"), at least a part of the first error information '10' is reduced and all second error information is ignored. That means, that '00' and all '01' values are set to 0. At least a part of the '10' values are also set to 0 to reduce the first error information. The erasure information generation unit 30 may set at least a number of '10' values to 0 that the condition as stated in step 53 holds. This means that the number N2 of the remaining first errors plus the number N3 of primary errors equals the decoding capacity. The number N3 of primary errors is unchanged so that '11' is mapped onto 1. As a result, the erasure information generation unit 30 has set all erasure information values Ey in row i, as shown in step 54, and the erasure information generation ends in step 58. Then, the decoder unit 25 performs a forward error correction on row i.
If the condition in step 53 is answered to the affirmative ("1"), the erasure information generation unit continues with step 55. In step 55 it is determined whether the sum of the number Ni of secondary errors, the number N2 of first errors and the number N3 of primary errors is less or equal than the decoding capacity P. If not ("0"), both, the primary error information and the first error information is not reduced, respectively. This means that '11' and '10' are both mapped onto 1, as shown in step 56. Further, the second error information is reduced so that at least a part of the second error values '01' is set to 0. Further, '00' is mapped onto 0. Therewith, the erasure information generation unit 30 has determined all erasure information values Ey for row i in step 56, and the erasure information generation ends in step 58. Then, the decoder unit 25 can perform a forward error correction on row i.
If the condition in step 55 is answered to the affirmative ("1"), then neither the first error information nor the second error information is reduced. Obviously, the primary error information is also not reduced. Hence, each considered source of an error, i.e. '11', '10', 'Or, is mapped to 1, and only '00' is set to 0, as shown in step 57. Hence, the erasure information generation unit 30 has set all erasure information values Ey in row i, and the erasure information generation ends in step 58, and the decoder unit 25 may then perform a forward error correction on row i.
Fig. 7A shows a correction table 45 generated by the correction table generation unit 29, wherein the correction table 45 is locally stored in the correction table generation unit 29. Thereby, the number i shows the number of the row of the frame of the memory of the memory unit 22, and C1 is a bit of the correction table 45, as shown in Fig. 3, associated to row number i. After forward error correction, the row numbered 0 comprises erroneous symbols. Hence, Co = 1. The other rows are correct, at least after forward error correction, so that C1 = 0 for i greater than 0 and less than k.
Further, Fig. 7B shows the m-th column of the erasure table E1,, as shown in Fig. 5. This m-th column of the erasure table Ey comprises the values Eim, wherein m is fixed and i is greater than 0 and less than k.
As an example, assume that the erasure information 48 relates to a datagram comprising the symbols from row 0 to row n + 2 in the m-th column of the application data table of the frame. Hence, the symbol in row 0 and column m is the first symbol of this datagram. The Bit Co = 1 of the correction table 45 indicates that the row 0 comprising this first symbol of the datagram is erroneous. But, the erasure table element Eom indicates that the symbol in row 0 and column m is correct. Hence, the control and power saving unit 26 determines that readout of this first symbol is possible.
Further, rows numbered 1 to k - 1 are correct so that all symbols in those rows are correct, because C1 = 0 for i greater than 0. The last symbol of the datagram starting with the symbol in row 0 and column m is the symbol in row n + 2 and column m. Hence, the control and power saving unit 26 determines that a correct readout of this datagram is possible. It should be noted that the erasure table Ey indicates a hard erasure for the symbol in row n + 2 and column m, because En+2, m = '11'. But the correction table 45 indicates that the row numbered n + 2 is correct. Hence, each of the symbols in row n + 2 was correct or has been corrected. Therefore, the symbol in row n + 2 and column m has also been corrected.
Fig. 8 shows a flow chart illustrating a decision process of the internet protocol readout unit 24 to determine the reliability of an individual MPE-FEC symbol in row i and column m. The process starts in step 60. Then, in step 61, it is determined, whether the bit C1 of the correction table 45 is equal to 1. If not ("0"), then the row i is correct, and the Byte value Sim, as shown in Fig. 5, is correct, and the process stops in step 62. If yes ("1"), then the row i comprises erroneous symbols and the decision continues with step 63. In step 63 it is determined, whether E1 is equal to '00', wherein E1 is equal to Eim for column m. If yes ("1"), then the symbol Sim is correct, and the decision stops in step 62. If not ("0"), the symbol Sim is incorrect, and the decision stops in step 64.
As a result, combining the correction table and the erasure table, allows retrieval of IP-datagrams that would otherwise be rejected. Row number 0 is defect. As a result, IP-datagram in columns m, will be lost because is has some field assigned a second error information. By combining the erasure table and the correction table, it can be concluded that the first position in column m is correct. As such IP-datagram, can be successfully retrieved from the MPE-FEC frame.
Although exemplary embodiments of the invention have been disclosed, it will be apparent to those skilled in the art that various changes and modifications can be made which will achieve some of the advantages of the invention without departing from the spirit and scope of the invention. Such modifications to the inventive concept are intended to be covered by the appended claims in which the reference signs shall not be construed as limiting the scope of the invention. Further, in the description and the appended claims the meaning of "comprising" is not to be understood as excluding other elements or steps. Further, "a" or "an" does not exclude a plurality, and a single processor or other unit may fulfill the functions of several means recited in the claims.

Claims

CLAIMS:
1. Device (1) for receiving bursts in a communications network, especially mobile device, which device comprises a receiving unit (2) for receiving said bursts, a memory unit (22), an entry table generation unit (21), and a decoder unit (25), wherein said receiving unit (2) is adapted to receive at least a burst comprising datagrams and to send at least a part of said datagrams at least indirectly toward said memory unit (22), wherein said memory unit (22) is adapted to store said datagrams sent from said receiving unit (2) to said memory unit (22), wherein each of said datagrams sent to said memory unit (22) is positioned in a frame of said memory unit (22) according to an address information of said datagram, wherein said entry table generation unit (21) is adapted to generate an entry table comprising at least said address information of at least a part of said datagrams stored in said memory unit (22), wherein said decoder unit (25) is adapted to perform an error correction on said frame of said memory unit (22), and wherein said address information of said entry table provides at least an indirect access on datagrams stored in said memory unit (22), even when said error correction has not been able to completely correct said frame in said memory unit (22).
2. Device according to claim 1, characterized in that said entry table generation unit (21) is adapted to generate an entry table comprising at least said address information of said datagrams succeeding an erroneous datagram.
3. Device according to claim 1 or 2, characterized in that said entry table generation unit (21) is adapted to store an address of erroneous datagrams, if readable, and to raise an associated error flag.
4. Device according to claim 1, characterized in that said decoder unit (25) is adapted to generate a correction table indicating which parts of said frame are correct after said error correction, and that said correction table is used to determine, whether an erroneous datagram of the frame has been corrected by said error correction.
5. Device according to claim 4, characterized in that said correction table indicates rows that are correct after said error correction.
6. Device according to claim 5, characterized in that said error correction is a forward error correction.
7. Device according to any one of claims 4 to 6, characterized in that in case that it is determined that an erroneous datagram has not been corrected by said error correction, an address of another datagram in said frame is determined on the basis of said address information provided by said entry table.
8. Device according to any one of claims 4 to 6, characterized in that in case that it is determined that an erroneous datagram has not been corrected by said error correction, an address of a succeeding datagram in said frame is determined on the basis of a datagram length information of said not corrected datagram, or an address of a following datagram in said frame is determined on the basis of an address information provided by said entry table.
9. Device according to claim 4, characterized in that said erasure table is combined with the correction table indicating on the basis of individual MPE-FEC frame symbols, whether a first error information indicates an error, a second error information indicates an error, and/or a primary error information indicates an error for said individual symbol.
10. Device according to claim 9, characterized in that said internet protocol readout unit (24) is adapted to use said correction table and the erasure flags stored in an erasure memory unit (31) to extract corrected or partly correct IP data from memory unit
(22).
11. Device according to claim 1 , characterized by an erasure information generation unit (30), wherein said erasure information generation unit is adapted to generate an erasure information on the basis of a first error information and at least a second error information, wherein said decoder unit (25) aborts decoding, when said erasure information indicates an erasure overflow, and wherein said erasure information generation unit (30) is adapted to reduce said erasure information to decrease a probability of an occurrence of said erasure overflow.
12. Device according to claim 11, characterized in that said erasure information generation unit (30) reduces an erasure information based on said second error information indicating an error before reducing an erasure information based on said first error information indicating an error.
13. Device according to claim 11 or 12, characterized in that said first error information is generated with respect to a transport error indicator of transport stream packets carrying sections that encapsulate said datagrams, and that said second error information is generated with respect to a cyclic redundancy check or a checksum on said sections.
14. Device according to claim 11, characterized in that said erasure information generation unit (30) is adapted to generate said erasure information also on the basis of a primary error information so that said erasure information indicates an error when said primary error information indicates a primary error.
15. Device according to claim 14, characterized in that said primary error information is generated with respect to a discontinuity in a transport stream comprising sections that encapsulate said datagrams.
16. Device according to claim 1, characterized by a error flag generation unit (20) adapted to generate erasure flags which are processed by said entry table generation unit (21) to determine incorrect symbols of said datagrams stored in an application data table of said frame of said memory unit.
17. Device according to claim 1, characterized in that said internet protocol readout unit (24) is controlled from a control unit (26) for readout of correct datagrams, wherein said control unit (26) determines on the basis of a corrected row Bit (C1) of a correction table indicating correct rows of said frame and an erasure table (Ey) of erasure information values for individual symbols of said datagrams, whether a datagram is correct or not.
18. Method for receiving bursts in a communications network, which method comprises the steps of: receiving at least a burst comprising datagrams; storing at least a part of said datagrams of said bursts in a frame according to address information comprised by said datagrams received; generating an entry table comprising at least said address information of at least a part of said datagram stored in said frame; performing an error correction on said frame; providing an access on datagram stored in said frame on the basis of said address information of said entry table, even when said error correction was not able to completely correct said frame.
PCT/IB2006/054817 2005-12-21 2006-12-13 Device providing a datagram recovery WO2007072332A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05112592 2005-12-21
EP05112592.0 2005-12-21

Publications (2)

Publication Number Publication Date
WO2007072332A2 true WO2007072332A2 (en) 2007-06-28
WO2007072332A3 WO2007072332A3 (en) 2007-09-27

Family

ID=38029945

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2006/054817 WO2007072332A2 (en) 2005-12-21 2006-12-13 Device providing a datagram recovery

Country Status (1)

Country Link
WO (1) WO2007072332A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018066934A (en) * 2016-10-21 2018-04-26 シナプティクス・ジャパン合同会社 Display driver, display device, and driving method of display panel

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2407946A (en) * 2003-11-05 2005-05-11 Nokia Corp Forward Error Correction decoder suitable for use with data comprising variable padding
WO2006003531A1 (en) * 2004-06-30 2006-01-12 Nokia Corporation Forward error correction decoders
WO2006085326A2 (en) * 2005-02-10 2006-08-17 Siano Mobile Silicon Ltd. System and method for mitigating memory requirements
EP1732235A1 (en) * 2004-12-08 2006-12-13 Matsushita Electric Industrial Co., Ltd. Reception device, integrated circuit, program, and reception method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2407946A (en) * 2003-11-05 2005-05-11 Nokia Corp Forward Error Correction decoder suitable for use with data comprising variable padding
WO2006003531A1 (en) * 2004-06-30 2006-01-12 Nokia Corporation Forward error correction decoders
EP1732235A1 (en) * 2004-12-08 2006-12-13 Matsushita Electric Industrial Co., Ltd. Reception device, integrated circuit, program, and reception method
WO2006085326A2 (en) * 2005-02-10 2006-08-17 Siano Mobile Silicon Ltd. System and method for mitigating memory requirements

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018066934A (en) * 2016-10-21 2018-04-26 シナプティクス・ジャパン合同会社 Display driver, display device, and driving method of display panel

Also Published As

Publication number Publication date
WO2007072332A3 (en) 2007-09-27

Similar Documents

Publication Publication Date Title
US8824543B2 (en) Multilayer decoding using persistent bits
US7525993B2 (en) Robust transmission system and method for mobile television applications
CN102668384B (en) Be there is the broadcast system of the steadily increase redundancy transmitted by unicast system
KR100735276B1 (en) Method and apparatus for decoding a mpe-fec frame in a dvb-h system
EP1599955B1 (en) System and method for data transmission and reception
US20070240027A1 (en) Forward Error Correction Decoders
US20100211854A1 (en) Methods and systems for providing different data loss protection
US8020071B2 (en) Device with MPE-FEC frame memory
US8537749B2 (en) Method of transmitting data from an infrastructure of a radio-communication network to user equipment, and equipment for implementing the method
EP1680927B1 (en) Forward error correction decoders
US20090006926A1 (en) Device Providing Selective Error Correction Data Reception
EP1816767A2 (en) Method for transmitting/receiving data in a digital multimedia broadcasting system, and system thereof
KR20070025851A (en) Frame boundary detection method and apparatus for reed-solomon decoding in a dvb-h receiver and method for decoding multi protocol encapsulation -forward error correction frame using the same
Eerenberg et al. IP-recovery in the DVB-H link layer for TV on mobile
US7856587B2 (en) Memory reduction in DVB-H applications
WO2007072332A2 (en) Device providing a datagram recovery
WO2008122845A1 (en) Integrated circuit comprising error correction logic, and a method of error correction
US20080209295A1 (en) Apparatus and method for pre-processing on layer 2 in digital broadcasting receiving device
KR100916702B1 (en) Channel decoding device in transport stream packet, and method thereof
JP2005130277A (en) Device and method for error correction

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06842491

Country of ref document: EP

Kind code of ref document: A2