WO2011091850A1 - Error correction based on replacing padding bits by additional parity check bits - Google Patents

Error correction based on replacing padding bits by additional parity check bits Download PDF

Info

Publication number
WO2011091850A1
WO2011091850A1 PCT/EP2010/051036 EP2010051036W WO2011091850A1 WO 2011091850 A1 WO2011091850 A1 WO 2011091850A1 EP 2010051036 W EP2010051036 W EP 2010051036W WO 2011091850 A1 WO2011091850 A1 WO 2011091850A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
frame
recovery data
recovery
padding
Prior art date
Application number
PCT/EP2010/051036
Other languages
French (fr)
Inventor
Imed Bouazizi
Lukasz Kondrad
Moncef Gabbouj
Pekka Heikki Talmola
Original Assignee
Nokia Corporation
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 Nokia Corporation filed Critical Nokia Corporation
Priority to PCT/EP2010/051036 priority Critical patent/WO2011091850A1/en
Publication of WO2011091850A1 publication Critical patent/WO2011091850A1/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/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location

Definitions

  • This specification relates to enabling error correction of data.
  • an apparatus may include a processing module configured to create a first frame having at least a header, a data portion and padding and a coding module configured to generate first recovery data for forward error correction of at least the data portion, to generate second recovery data for forward error correction of at least the data portion, to include the first recovery data in the first frame and to replace at least some of the padding with the second recovery data.
  • the coding module may be configured to generate the first recovery data and the second recovery data to include recovery data for forward error correction of the header and, optionally, the padding. Alternatively, or additionally, the coding module may be configured to generate the second recovery data to include recovery data for forward error correction of the first recovery data.
  • the coding module may be configured to insert into the header an indication that the frame includes both first recovery data and second recovery data.
  • the apparatus may be configured to create a second frame having a second header, a second data portion and second padding and to generate first recovery data for forward error correction of at least the second data portion, to include the first recovery data in the second frame and the apparatus is arranged to forward the first frame and the second frame for transmission in a data stream to one or more receiving apparatuses.
  • the coding module may be configured to insert into the second header an indication that the second frame does not include second recovery data.
  • Such first and second frames may be used to carry scalable data.
  • the data portion of the first frame includes base layer data and the second data portion includes enhancement layer data.
  • the apparatus may include a frame builder configured to map a plurality of frames onto a transmission frame for transmission in the data stream, wherein the plurality of frames is a plurality of first frames or a plurality of second frames.
  • a frame builder may be configured to include an indication of whether the plurality of frames is a plurality of first frames or a plurality of second frames in a header of the
  • a method may include creating a first frame having a header, data portion and padding, generating first recovery data for forward error correction of at least the data portion, generating second recovery data for forward error correction of at least the data portion, including the first recovery data in the first frame and replacing at least some of the padding with the second recovery data.
  • a computer readable medium may be provided, on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of such a method.
  • an apparatus may include a receiver configured to receive at least one data stream and a decoder configured to extract a frame from the at least one data stream, to, if the frame includes both first recovery data for forward error correction of at least a data portion of the frame and second recovery data for forward error correction of at least the data portion, replace the second recovery data from the frame with padding and decode at least the data portion using the first recovery data and the second recovery data and to output the decoded data portion.
  • the decoding of at least the data portion may include decoding the padding and/ or other bits of the frame.
  • the decoder may be configured to, if the frame does not include both first recovery data and second recovery data, decode at least the data portion using first recovery data in the frame, and to output the decoded data portion.
  • the decoder may be configured to compile a parity check matrix based on at least part of the first recovery data wherein, if the frame includes both first recovery data and second recovery data, the parity check matrix is further based on at least part of the second recovery data.
  • the decoder may be configured to, if the frame includes both first recovery data and second recovery data, perform a plurality of iterations, where each iteration includes a first decoding using at least part of the first recovery data to decode at least the data portion and the second recovery data, updating at least the data portion, the first recovery data and the second recovery data according to the results of the first decoding, a second decoding using at least part of the second recovery data are used to decode at least the data portion and updating at least the data portion and the second recovery data according to the results of the second decoding.
  • the decoder may be configured to determine whether the frame includes first and second recovery data. For example, the decoder may be configured to extract an indication of whether the frame includes second recovery data from a header of the frame and/ or, if the frame is one of a plurality of frames in a transmission frame received by the receiver, extract an indication of whether the plurality of forward error correction frames includes second recovery data from a header of the transmission frame. The decoder may be configured to, if the frame does not include both first recovery data and second recovery data, replace padding in the frame with one or more predefined padding values prior to decoding at least the data portion using first recovery data in the frame.
  • a communication system may include such an apparatus, arranged to receive the data stream from another apparatus via a network.
  • a method may include receiving at least one data stream, extracting a frame from the at least one data stream, if the frame includes both first recovery data for forward error correction of at least a data portion of the frame and second recovery data for forward error correction of at least the data portion, replacing the second recovery data with padding and decoding at least the data portion using the first recovery data and the second recovery data and outputting at least the decoded data portion.
  • the decoding of at least the data portion may include decoding the padding
  • a computer readable medium may be provided, on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of such methods.
  • an apparatus may include a receiver configured to receive at least one data stream and a decoder configured to extract a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding bits, to modify the frame by replacing the values of the padding bits with one or more predefined padding values and to perform error correction for the modified frame using the recovery data.
  • the decoder may be configured to extract the one or more predefined padding values from a header of the frame and/ or, if the frame is one of a plurality of frames in a transmission frame received by the receiver, to extract the one or more predefined padding values from a header of the transmission frame.
  • a method may include receiving at least one data stream, extracting a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding bits, modifying the frame by replacing the values of the padding bits with one or more predefined padding values and performing error correction for the modified frame using the recovery data.
  • a computer readable medium may also be provided on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of such a method.
  • Exemplary embodiments describe computer readable code, optionally stored on a non-transitory computer readable medium, which when executed by computer apparatus causes the computer apparatus to perform described methods.
  • Figure 1 is a simplified schematic overview of a communication system in which exemplary embodiments of the invention can be implemented
  • Figure 2 is a schematic view of broadcasting apparatus according to an embodiment of the invention.
  • Figure 3 is a flowchart of a first example of a method that may be performed by the broadcasting apparatus of Figure 2;
  • Figure 4 depicts an example baseband frame generated by a module in the broadcasting apparatus of Figure 2;
  • Figure 5 depicts an example forward error correction frame generated by a module in the broadcasting apparatus of Figure 2;
  • Figure 6 depicts an example parity check matrix used for generation of additional coding in the method of Figure 3
  • Figure 7 depicts the example forward error correction frame of Figure 5 after the insertion of additional parity check bits
  • Figure 8 is a block diagram of an example receiving apparatus for use in the communication system of Figure 1 ;
  • Figure 9 is a flowchart of a first example of a method performed by the receiving apparatus of Figure 8.
  • Figure 10 depicts an example forward error correction frame following modifications during the method of Figure 9;
  • Figure 11 depicts an example of a structure of a parity check matrix created in the method of Figure 9 when additional coding is in use;
  • Figure 12 depicts an example of a parity check matrix that may be created in the method of Figure 9 when additional coding is in use;
  • Figure 13 is a flowchart of a second example of a method that may be performed by the receiving apparatus of Figure 8;
  • Figure 14 is a flowchart of a second example of a method that may be performed by the broadcasting apparatus of Figure 2;
  • Figure 15 depicts an example baseband frame produced in the method of Figure 14;
  • Figure 16 is a flowchart of a third example of a method that may be performed by the receiving apparatus of Figure 8;
  • Figure 17 depicts an example of a structure of an extended parity check matrix that may be created in the method of Figure 16;
  • Figure 18 depicts an example of an extended parity check matrix that may be created in the method of Figure 16;
  • Figure 19 is a flowchart of a fourth example of a method that may be performed by the receiving apparatus of Figure 8;
  • Figure 20 depicts a header of an example baseband frame that may be produced in the method of Figure 3 or Figure 14;
  • Figure 21 depicts an example physical layer frame that may be produced in the method of Figure 3 or Figure 14;
  • Figure 22 is a flowchart of a third example of a method that may be performed by the broadcasting apparatus of Figure 2;
  • Figure 23 depicts an example of a baseband frame that may be produced in the method of Figure 22;
  • Figure 24 depicts an example of a forward error correction frame that may be produced in the method of Figure 22.
  • Figure 25 is a flowchart of a fifth example of a method that may be performed by the receiving apparatus of Figure 8.
  • FIG. 1 shows a simplified schematic overview of parts of a communication system.
  • the system 1 comprises broadcasting apparatus 2, which receives logical data streams 3, 4, such as audio, video or multimedia clips, software or other data files, from one or more content providers 5, 6.
  • the broadcasting apparatus 2 operates on the data streams and then broadcasts or multicasts the resulting sequences of data packets in a stream 7 via one or more intermediary apparatuses 8, such as a television mast, to one or more receiving apparatuses 9.
  • the receiving apparatuses 9 can then reproduce the data streams for consumption by their users.
  • the stream 7 may include multiple data packet streams that may relate to one or more different services.
  • the stream 7 includes scalable content, such as scalable video and/or audio data.
  • the broadcasting apparatus 2 is arranged to produce two or more streams of data packets 7a, 7b carrying different representations of the same content with different scalable qualities.
  • the receiving apparatuses 9 can receive the stream 7 and decode all of the data packets conveying the content or, alternatively, a subset of those packets that is most suitable for a particular application or for its capabilities. For example, if a first receiving apparatus 9 is a handheld device, such as a smartphone, it may have a display having a limited number of pixels.
  • Such a receiving apparatus 9 may, therefore, decode a subset of received data packets that is sufficient to present video content with a relatively low resolution.
  • a second receiving apparatus 9 such as a desktop computer may have a relatively large screen and may decode a larger subset of the received data packets in order to present the same video content with a higher resolution.
  • the first receiving apparatus 9 may decode a subset of the received data packets sufficient to present the video content with a lower frame rate and/ or with a lower quality than the second receiving apparatus 9. Examples of scalable techniques are provided by the H.264/SVC standard, for scalable video coding (SVC), and the G.718 embedded variable bit rate
  • a stream of base layer data, or core layer data is transmitted, which provides a useable subset of the data packets for presenting content.
  • one or more streams of enhancement layer data 7b are transmitted, which can be combined with the base layer data in order to present the same content with a higher perceptual quality.
  • the stream 7 includes base layer data 7a and enhancement layer data 7b.
  • the sequence may include redundant data packets carrying recovery data, such as forward error correction (FEC) data, which can be used by the receiving
  • apparatuses 6 to reconstruct content from data packets that were not successfully received.
  • the embodiments described herein below will be based on FEC.
  • Other embodiments of the invention may implement another error correction technique based on linear block codes in place of FEC.
  • FIG. 2 is a schematic view of a broadcasting apparatus 2 according to an embodiment of the invention that can be used in the system 1.
  • the broadcasting apparatus 2 comprises a digital broadcasting module 10.
  • an input pre-processor 11 may also be provided but need not form part of the digital broadcasting module 10.
  • the input pre-processor 11 may function as a service splitter, a scheduler or a de-multiplexer and splits an incoming service stream 3 into two separate streams 12, 13, carrying base layer data and enhancement layer data respectively.
  • the digital broadcasting module 10 comprises an input processing module 14, a bit interleaving and coding modulation module 15, a frame builder 16 and a modulator 17.
  • the operation of various components of the digital broadcasting module 10 will be described below, with reference to Figure 3.
  • the below methods and apparatuses are discussed within the context of Digital Video Broadcast Second Generation Terrestrial (DVB-T2), the standard for which is described in ETSI EN 302 755 (version 1.1.1 2009-09). It will be appreciated, however, that the applicability of the methods and apparatuses is not limited to DVB-T2.
  • the described methods and apparatuses may be implemented in other types of digital broadcast or multicast system, such as, but not limited to, DVB Next Generation Handheld (DVB-NGH) and non-DVB systems, including systems that have not yet been standardised.
  • DVD-NGH DVB Next Generation Handheld
  • the digital broadcasting module 10 receives one or more logical data streams 12, 13 from the one or more content providers 5, 6, via the input pre-processing module 11, where provided (step s3.1).
  • Each logical data stream 12, 13 may be carried by a respective physical layer pipe (PLP).
  • PLP physical layer pipe
  • PSI program specific information
  • SI service information
  • a PLP is a fully transparent data pipe which generally enables data of a structure with freely selectable, but PLP-specific, physical parameters to be transported.
  • the capacity and also the service robustness may be adjusted according to particular requirements, depending on the type of receiving apparatus 9 and/ or its usage environment.
  • the input processing module 14 processes the incoming data stream 12, 13 from each PLP separately. It divides the input data stream 3, 4 into data portions.
  • the maximum size of the data portions for a BB frame depends whether or not additional coding is to be applied. If additional coding is to be applied (step s3.2), the stream 3, 4 is divided into data portions with a maximum size ⁇ 4 (step s3.3). If additional coding is to be applied (step s3.3), the stream 3, 4 is divided into data portions with a maximum size B (step s3.4).
  • the difference between the maximum sizes A. and B is the number of bits to be used to carry parity check bits generated by the additional coding process.
  • the input processing module 14 generates one or more baseband (BB) frames by combining a BB header with a respective one of the data portions (step s3.5).
  • the size of the BB frames is fixed for data from each PLP but depends on an error correction code rate to be applied to that frame.
  • separate streams of BB frames are produced for base layer and enhancement layer data from the logical data streams 12, 13 respectively.
  • the BB frame 18 includes the BB header 19, data portion 20 and padding bits 21.
  • the padding 21 may consist of bits set to ' ⁇ '.
  • the number of padding bits 21 is set to a number that is equal to, or greater than, a predetermined number m ldpc ext , to be described herein below.
  • the bit interleaving and coding modulation module 15 processes BB frames 18 produced by the input processing module 11 and generates corresponding FEC frames.
  • an outer coding process (step s3.6) is performed on the BB frame 18, generating parity check bits, that is, outer coding bits, and an inner coding process (step s3.7) is performed on the BB frames 18 and outer coding bits, generating further parity check bits, that is, inner coding bits.
  • the outer coding process (step s3.6) may be based on Bose-Chandhuri- Hocquenghem (BCH) FEC codes and the inner coding process (step s3.7) may be based on Low Density Parity Check (LDPC) FEC codes.
  • BCH FEC codes may be Reed Solomon codes. Reed Solomon codes are a subset of BCH FEC codes that are particularly suitable for use in DVB networks.
  • LDPC codes are linear block codes where a k bit message d v ' s, encoded into a n bit codeword c according to: c— dG (1) where G is a k x n generator matrix and the matrix operations are performed over a Galois Field with order of the field 2 (GF(2)).
  • a sparse binary check matrix (parity check matrix) H is defined as a m x n binary matrix, where m— (n-k), satisfying the following condition:
  • a column in H is associated with a bit of the codeword c and each row corresponds to a parity check.
  • a non-zero element in a row means that the corresponding bit contributes to that parity check.
  • a FEC frame is then generated by the bit interleaving and coding modulation module 15 by appending a number m bch of parity check bits generated by the outer coding and a number m ldpc of parity check bits generated by the inner coding to the BB frame 18, to follow the padding 21 (step s3.8) .
  • Figure 5 depicts an example of a FEC frame 22 output by the bit interleaving and coding modulation module 15.
  • the FEC frame 22 includes the BB frame 15, outer coding parity check bits 23 and inner coding parity check bits 24.
  • the FEC frame 22 has a fixed size.
  • the frame size may be 16200 bits for a "short frame” or 64800 bits for a "long frame”.
  • the frame size will depend on the number of outer coding parity check bits, such as BCH FEC codes in this example, and inner coding parity check bits, such as LDPC FEC codes, which, in turn, depend on the LDPC code rate.
  • Examples of numbers of bits in the BB frame 18, that is, the number k bch of information bits on which the outer BCH coding step is performed, and numbers k lpdc of information bits on which the inner LDPC coding step is performed for various LDPC code rates are noted in Table 1 , where the number k bch includes the number of bits in the BB frame 18, that is, the BB header 19, data portion 20 and padding bits 21 , and the number k lpdc includes the number of bits in the BB frame 18 and the m bch BCH parity check bits 23.
  • bit interleaving and coding module 15 determines whether an additional coding process is to be performed (step s3.9), in addition to the outer and inner coding. For example, additional coding may be required where the data portion includes data requiring a low bit error rate.
  • an additional coding process is then performed (step s3.9), in which a number m ldpc ext additional parity check bits are calculated.
  • Codeword bits on which additional coding process is performed include the BB header 19, the data portion 20 and any remaining padding 21 and may, optionally, include the outer and inner coding bits 23, 24.
  • the additional parity check bits are generated using LDPC codes and the padding bits 21, the m hcb outer parity check bits 23 and m ldpc inner parity check bits 24 are disregarded.
  • Figure 6 depicts an example of a parity matrix lpdc ext for the additional coding process (step s3.8).
  • Each row in the graph corresponds to a parity check, to be represented by a respective additional parity check bit.
  • the columns represent codeword bits, that is, the BB header 19, data portion 20, padding 21 and outer and inner coding parity check bits 23, 24 and the additional parity check bits.
  • a dot on the graph indicates a ⁇ ', meaning that the relevant codeword bit contributes to a parity check.
  • the number of padding bits 21 is equal to, or greater than, m ldpc ext .
  • Figure 7 shows the resulting FEC frame 22', which includes the additional parity check bits 25.
  • the original number of padding bits 21 exceeded the number of additional parity check bits 25.
  • the FEC frame 22' includes both additional parity check bits 25 and a reduced number of padding bits 21.
  • bit interleaving and coding modulation module 15 performs a bit interleaving process on the FEC frames 22, 22' (step s3.12) and passes the FEC frames 22, 22' to the frame builder 16.
  • the frame builder 16 performs frame interleaving (step s3.13) and Orthogonal frequency-division multiplexing (OFDM) symbol mapping operations (step s3.14) and maps the FEC frames 22, 22' onto physical layer frames (step s3.15).
  • the physical layer frames are then modulated by the modulator 17 (step s3.16) and forwarded to an intermediary apparatus 8 for onward transmission to the receiving apparatuses 9 (step s3.17).
  • a FEC frame 22 without additional parity check bits and a FEC frame 22' with additional parity check bits 25 can have the same format, in terms of the positions and, optionally, the lengths of the BB header 19, data portion 20, outer coding bits 23 and inner coding bits 24.
  • This can allow a receiving apparatus 9 to receive the FEC frames 22, 22' regardless of whether it can utilise any additional parity check bits 25. If the receiving apparatus 9 is capable of utilising the additional parity check bits 25, then it can extract them. If the receiving apparatus 9 is not capable of utilising the additional parity check bits 25, it disregards them as padding. In this manner, the same stream 7 may be broadcast or multicast to receiving apparatuses 9 having different capabilities, potentially improving backwards compatibility.
  • the use of bits normally used for padding to carry additional parity check bits 25 may allow such additional coding to be utilised as required, on a frame-by- frame basis.
  • the broadcasting apparatus 2 is arranged to produce scalable transmission data with a first stream 7a of FEC frames 22' carry base layer data and a second stream 7b of FEC frames 22 carry enhancement layer data
  • the first and second streams 7a, 7b may have different requirements.
  • a relatively high bit error rate may be tolerable for the enhancement layer data 7b, compared with the base layer data 7a.
  • the base layer data 7a may be provided with additional coding to facilitate its reception with a relatively low bit error rate while the enhancement layer data stream 7b may be provided without additional coding.
  • FIG 8 depicts an example of a receiving apparatus 9 according to an embodiment of the invention, which includes a controller 26, comprising one or more
  • the receiving apparatus 9 also includes an output 31, including one or more of a display, an audio output and a video output, for presenting decoded data to a user.
  • the receiving apparatus 9 may receive one or more radio frequency signals and output one service stream and one signalling stream.
  • a user may select a service to be decoded by the decoder 29 and presented by the output 31, based on
  • the enhancement layer data may be utilised by the receiving apparatus 9.
  • the receiving apparatus 9 may include features relating to other functionality.
  • the receiving apparatus may be a mobile terminal, a telephone handset, a smartphone or any other similar device, in which case other conventional features of telephone handsets, such as a microphone, a second antenna and a transceiver configured to transmit and receive voice data over a telephone network may be included.
  • other features may be included depending on its required functionality.
  • the apparatus may be part of a TV set or a setup-box or any other similar device.
  • the receiver circuitry 28 receives the broadcast stream 7 from the intermediary apparatus 8 via the antenna 30 and forwards it to the decoder 29.
  • the decoder 29 extracts the FEC frames 22, 22' from the stream (step s9.1) and parses the BB header 19 (step s9.2).
  • the decoder 29 determines whether additional coding has been used (step s9.3).
  • the FEC frame 22, 22' may include an indication that it includes additional parity check bits 25 that is used by the decoder 29 to determine whether additional coding has been used.
  • the decoder 29 may determine whether additional coding has been used by determining whether a particular field within the FEC frame 22, 22' includes additional parity check bits 25, with or without padding 21, or whether that field consists wholly of padding 21, for example, by comparing the content of that field with expecting values for the padding 21.
  • the decoder 29 extracts the additional parity check bits 25 (step s9.4) and modifies the FEC frame 22' by appending a further instance of the additional parity check bits 25' to the end of that frame (step s9.5).
  • the field previously used to convey the additional parity check bits 25 then has its padding restored, by overwriting the additional parity check bits 25 in that field with padding values (step s9.6).
  • the original values of the padding bits 25, if known, may be used in the overwriting operation. Alternatively, in the case of soft- decision decoding, the field may be overwritten with high log likelihood ratio (LLR) values corresponding to the original values.
  • LLR log likelihood ratio
  • a concatenated matrix for the inner and additional coding may be created (step s9.7).
  • a concatenated parity check matrix may be created where the inner and additional coding is based on LDPC FEC codes, as described above.
  • such a concatenated matrix 32 may include the parity check matrix Upc 33 for the inner coding, the parity check matrix Upc ext 34 for the additional coding and a matrix 35 with zero values, which are provided so that the concatenated matrix 32 has the following dimensions:
  • FIG. 12 depicts an example of the concatenated matrix 32.
  • Each row in the graph corresponds to a parity check, represented by a respective additional parity check bit.
  • the columns represent the codeword bits, that is, the BB header 19, data portion 20, restored padding 21 ', outer and inner coding parity check bits 23, 24 and the appended additional parity check bits 25'.
  • a dot on the graph indicates a ⁇ '.
  • a standard parity check matrix Upc 33 is created, based on the inner coding bits 34 (step s9.8).
  • the FEC frame 22" is decoded (step s9.9), using the parity check matrix created in step s9.7 or s9.8.
  • Decoding using the outer coding bits 23 is then performed (step s9.10), and the decoded data portion 20 is output (step s9.11) for one or more of further processing, presentation, such as display and/or audio output, and storage, if required.
  • FIG. 13 is a flowchart depicting a second example of a decoding process that may be performed by the receiving apparatus 9. Referring to Figure 13, steps sl3.1 to sl3.6 correspond to steps s9.1 to s9.6 described above. The process of Figure 13 differs from that of Figure 9 by using an iterative decoding method instead of creating and using a parity check matrix 32, 33.
  • an iteration counter i is set to an initial value, such as 0.
  • the inner coding bits 24 are then used to decode the BB header 19, data portion 20, outer and inner coding bits 23, 24 (step sl3.8).
  • the values of the bits of the BB header 19 and the data portion 20 and the outer and inner coding bits 23, 24 are updated to reflect the results of this decoding operation (step sl3.9).
  • the additional parity check bits 25' are then used to decode the BB header 19, data portion 20 and the additional parity check bits 25 (step s 3. 0) .
  • step sl3.13 the outer and inner coding bits 23, 24 and the additional parity check bits 25' are then updated accordingly (step sl3.11).
  • the iteration counter i is then updated (step sl3.12). Steps sl3.8 to sl3.12 are repeated until the iteration counter b reaches a predetermined value i ma chorus corresponding to the required number of iterations (step sl3.13).
  • the FEC frame 22 is decoded using the inner coding bits 24 (step sl3.14).
  • the FEC frames 22, 22" are then decoded using the outer coding bits 23 (step s 13.15) so that the data in the data portion 20 can be output (step s 3. 6) .
  • steps sl3.1 to sl3.16 are repeated for a next FEC frame 22, 22'.
  • FIG 14 is a flowchart of a second example of a method that may be performed by the broadcasting apparatus 2 of Figure 2 in another embodiment of the invention.
  • a data stream 3, 4 is received (step sl4.1), divided into data portions (step sl4.2) as described above in relation to steps s3.1 to s3.2 of Figure 3.
  • a BB frame is then generated by the input processing module 10 comprising a BB header, a data portion and padding (step sl4.3).
  • the BB frame is then forwarded to the bit interleaving and coding module 15.
  • additional coding is required (step sl4.4), that is, coding in addition to the inner and outer coding that is to be applied to the BB frame
  • an additional coding process is performed on the BB header and data portion (step sl4.5) and some or all of the padding bits in the BB frame are replaced with additional parity check bits produced by that process (step si 4.6).
  • the additional coding process may use LDPC FEC codes as described above.
  • Figure 15 depicts an example of a BB frame 36 produced in this manner, comprising a BB header 19, data portion 20, additional parity check bits 25.
  • the BB frame 36 includes residual padding bits 21 that have not been overwritten by the additional parity check bits 25.
  • Outer coding for example using BCH FEC codes, is performed on the BB header 19 and data portion 20 and, optionally, on the additional parity check bits 25 and any residual padding 21.
  • the resulting outer coding bits 23 are appended to the BB frame 36 (step sl4.8).
  • Inner coding for example, using LDPC FEC codes, is performed on the BB header 19 and data portion 20 and, optionally, on the additional parity check bits 25, any residual padding 21 and the outer coding bits.
  • a FEC frame is created by appending the resulting inner coding bits to the outer coding bits and the BB frame 36 (step sl4.9).
  • the FEC frame generated by the bit interleaving and coding module 15 may have the format of the FEC frame 22' shown in Figure 7, with or without padding bits 21. Where additional coding is not used, the FEC frame may have the format of the FEC frame 22 shown in Figure 5.
  • the same reference numerals 22, 22' will be used to refer to the FEC frames produced by the method of Figure 14.
  • the remaining steps sl4.10 to sl4.15 correspond to steps s3.12 to s3.17 described above in relation to Figure 3.
  • Figure 16 shows an example of a method that may be performed by a receiving apparatus 9 to decode FEC frames 22, 22' generated by the method of Figure 14.
  • a FEC frame 22, 22' is extracted from a received stream 7 (step si 6.1) and its header is parsed (step si 6.2).
  • the receiving apparatus 9 determines whether additional coding has been used (step si 6.3), for example, by using one or more of the methods described above in relation to step s9.3 of Figure 9.
  • an extended parity check matrix is created (step si 6.4) by concatenating matrices for the additional coding and inner coding.
  • Figure 17 depicts an example structure of an extended parity check matrix 37 where the inner and additional coding is based on LDPC FEC codes.
  • the concatenated matrix 37 includes the parity check matrix ldpc 33 for the inner coding, the parity check matrix ldpc ext 34 for the additional coding and a matrix of zero values 35 and has the dimensions ⁇ m ldpc + m ldpc ex x ⁇ k ldpc + m ldp .
  • Figure 18 depicts an example of such an extended parity check matrix.
  • step si 6.5 If additional coding has not been used (step si 6.3), a standard parity check matrix l dpc 33 is created (step si 6.5).
  • the FEC frame 22, 22' is then decoded using the created parity check matrix 33, 37 for the inner coding and any additional decoding (step si 6.6) and then outer decoding is performed (step sl 6.7).
  • step si 6.8 The decoded data from the data portion 20 is then output (step si 6.8). If there are one or more further FEC frames 22, 22' to be decoded (step si 6.9), the decoding process (steps sl 6.1 to sl 6.9) is repeated for the next FEC frame 22, 22'.
  • Figure 19 shows an example of an alternative method that can be used by the receiving apparatus 9 to decode FEC frames 22, 22' encoded using the method of Figure 14, beginning with extracting a FEC frame 22, 22' (step sl9.1), parsing the header of the FEC frame 22, 22' (step si 9.2) and determining whether additional coding has been used (step sl9.3).
  • steps sl9.4, sl9.5 The procedure for decoding FEC frames 22 without additional coding (steps sl9.4, sl9.5) is the same as that described above in relation to Figure 13 (steps sl3.14 & sl3.15).
  • an iteration counter i is set to an initial value, such as 0 (step si 9.6).
  • the inner coding bits 24 are then used to decode the BB header 19, the data portion 20 and, optionally, one or more of the outer coding bits 23, the additional parity check bits 25 and the residual padding (step sl9.7) and the values of the decoded bits are updated (step sl9.8).
  • the additional parity check bits 25 are then used to decode the BB header 19 and the data portion 20 (step sl9.9).
  • the bits of the BB header bits 19 and the data portion bits 20 are then updated with their decoded values (step s 9. 0) .
  • the iteration counter i is then increased by one increment (step sl9.11). Steps sl9.7 to si 9.11 are repeated until the iteration counter i reaches a predetermined value i maggi.
  • step sl9.12 corresponding to the required number of iterations
  • Outer decoding is then performed (step s 9.5) .
  • the decoded data of the data portion 20 of the FEC frame 22' can then be output (step sl9.14).
  • step sl9.15 If there are one or more further FEC frames 22, 22' to be decoded (step sl9.15), the decoding process (steps sl9.1 to sl 9.14) is repeated for the next FEC frame.
  • the FEC frames 22, 22' may include an indication of whether additional coding has been used.
  • the determinations made in steps s9.3, sl3.3, sl 6.3 and sl9.3 in the methods of Figures 9, 13, 16 and 19 respectively may be based on such an indication.
  • FIG. 20 depicts an example of a BB header 19, including the fields 38-43 listed in Table 2.
  • the BB header 19 has format compatible with the DVB- T2 standard, so that 5 bytes from the user packet length (UPL), user packet sync- byte (SYNC) and SYNCD (distance in bits from the beginning of a data field to the start of data) fields 39, 41, 42 are reserved, and the first 4 bits 39a of the UPL field 39 are used to convey an indication of the use of additional coding.
  • UPL user packet length
  • SYNC user packet sync- byte
  • SYNCD distance in bits from the beginning of a data field to the start of data
  • the 4 bits may be divided into two fields.
  • the first bit referred to here as
  • Enable may be a single bit having a value that indicates whether additional coding has been used, as shown in Table 3.
  • the other three bits of the indication 38 may be used to indicate the code rate, as shown in Table 4.
  • Table 4 The other three bits of the indication 38 may be used to indicate the code rate, as shown in Table 4.
  • bits of the UPL field 39 or other fields in the BB header 19 may be used in addition, or instead, of the bits 39a in order to convey information about the use the additional coding.
  • Figure 21 depicts an example physical layer frame 44 that may be compatible with a DVB-T2 system.
  • the physical layer frame 44 of Figure 21 includes a header 45, that has pilot symbols in the form of PI symbols 46 and P2 symbols 47, and a payload 48.
  • the payload 48 includes PLP symbols corresponding to one or more FEC frames 22, 22'.
  • the P2 symbols 47 of the frame header 45 include Layer 1 (LI) pre- signalling 49 and LI post- signalling 50.
  • LI Layer 1
  • the LI post-signalling 50 includes five fields 51 -55, as shown in Figure 21.
  • a dynamic signalling field 52 is used to indicate parameters that may change between the physical layer frames 44 in the stream 7 and includes bits 52a indicating whether or not additional coding has been used.
  • the format of the dynamic signalling field 52 in this example is shown in Table 5. Table 5
  • the first four RESERVED_2 bits 52a are used to convey information about a coding level in the FEC frames 22, 22'.
  • the first of the four bits 52a is used to indicate whether additional coding has been used, in the same manner as shown in Table 3 above.
  • the other three bits are used to indicate a coding rate, in the same manner as shown in Table 4 above.
  • other bits of the RESERVED_2 field or other fields in the dynamic signalling field 52 may be used in addition, or instead, of the bits 52a in order to convey information about the use the additional coding.
  • the frame builder 16 of the broadcasting apparatus 2 is configured to map only FEC frames 22, 22' having the same level of coding on the physical layer frame 44.
  • the payload 48 of the physical layer frame 44 does not include both FEC frames 22 that do not have any additional parity check bits and FEC frames 22' including additional parity check bits 25.
  • Figure 22 depicts a third example of a method that may be performed by the broadcasting apparatus 2 in order to generate FEC frames according to yet another embodiment of the invention.
  • a data stream 3, 4 is received by the broadcasting apparatus 2 (step s22.1) and divided into data portions (step s22.2).
  • the input processing module 14 generates at least one BB frame (step s22.3). As shown in Figure 23, such a BB frame 56, includes a BB header 57, a data portion 58 and padding bits 59.
  • the data portion 58 may be smaller in length than a corresponding data portion in a standard BB frame, for example, a DVB-T2 frame.
  • the number of padding bits 59 may be greater than the number of padding bits in such a standard frame.
  • the BB header 57 may include one or more fields 57a containing an indication of the size of the data portion so that the number of padding bits can be determined by a receiving apparatus 9 and/or one or more values of the padding bits 59.
  • the padding bits 59 may be set to a predefined value that may be known to the receiving apparatuses 9.
  • Outer coding and inner coding are performed by the bit interleaving and coding module 15 and a FEC frame is generated (step s22.6).
  • the FEC frame 60 includes the BB header 57, data portion 58, padding 59, outer coding bits 61 and inner coding bits 62, as described above in relation to steps s3.6, s3.7 and s3.8 of Figure 3.
  • Bit interleaving (step s22.7) and frame interleaving (step s22.8) are performed on the FEC frame 60 by the bit interleaving and coding module 15 and the frame builder 16 respectively.
  • the frame builder 16 then performs OFDM symbol mapping (step s22.9) and maps the FEC frame 60 onto a physical layer frame 44 (step s22.10).
  • the physical layer frame 44 is then modulated (step s22.11) by the modulator 17 and forwarded for onward transmission (step s22.12).
  • FIG 25 is a flowchart of an example method that may be performed by a receiving apparatus 9 to receive frames 60 generated by the method of Figure 22.
  • a FEC frame 60 is extracted from a received stream 7 (step s25.1) and its header is parsed (step s25.2) by the decoder 29.
  • the decoder 29 reinstates the padding bits 59 in the FEC frame 60 (step s25.3), by overwriting the received padding bits 59 with the one or more padding values.
  • the one or more padding values may be indicated in a field 59a of the BB header 59 or values that are otherwise known to the receiving apparatus 9. Such replacement of potentially incorrect padding values with correct values decreases the effective bit error rate of the received FEC frame 60.
  • Data recovery is performed by the decoder 29 using the inner and outer parity check bits 61, 62 (steps s25.4 and s25.5 respectively) and the decoded data from the data portion 58 is output (step s25.6).
  • step s25.7 If there is at least one further FEC frame 60 to be decoded (step s25.7), the process (steps s25.1 to s25.6) is repeated for the next FEC frame 60.
  • the reinstatement of the padding values in step s25.3 may reduce the effective bit error rate for the received FEC frame 60.
  • the method of Figure 25 may permit the correction of errors in data received with a relatively low signal-to- noise ratio, without requiring the inclusion of additional parity check bits.
  • a receiving apparatus 9 may be configured to decode FEC frames 22 using the method of Figure 25 and to decode FEC frames 22' having additional parity check bits 25 using an extended parity check matrix or iterative decoding.
  • any of steps s9.8 in Figure 9, step sl3.14 in Figure 13, step si 6.5 in Figure 16 or step sl9.4 in Figure 19 may be preceded by a step in which the padding 21 is replaced by one or more predefined padding values.
  • Each of the broadcast apparatus 2 and the receiver apparatus 8 described above may be comprised of hardware, such as one or more processors or microprocessors operating under the control of computer programs, optionally stored on one or more memories, such as the memory facility 27 of the receiving apparatus 9 or a similar memory facility 2a in the broadcasting apparatus 2.
  • the digital processing module 10 of the broadcasting apparatus 2 may be implemented by an arrangement of one or more processors running software or by hardware or by a combination of hardware with a processing arrangement executing one or more computer programs.
  • NGH Network Handheld
  • IP Internet Protocol
  • GSE Generic Stream Encapsulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)

Abstract

An apparatus (2) is arranged to create a frame (22') for transmission in a data stream (7) by including first recovery data (23, 24), for use in forward error correction, in the frame (22') and replacing some or all of padding (21) in the frame (22') with second recovery data (25) that provides further data for forward error correction. The stream may include frames (22, 22') with and without second recovery data, for example, to convey scalable media as base layer data and enhancement layer data respectively. The apparatus (2) may be arranged to create a frame (60) with first recovery data (61, 62) which may have a relatively high number of padding bits (59). A receiving apparatus (9) may then replace the padding bits (59) in a received frame (60) with predefined padding values, to reduce effective bit error rate, before performing error correction, for example, when decoding a frame (22) without additional coding.

Description

ERROR CORRECTION BASED ON REPLACING PADDING BITS BY ADDITIONAL
PARITY CHECK BITS
Field
This specification relates to enabling error correction of data.
Background
The provision of services, such as television or data services, via digital broadcast or multicast transmission is becoming increasingly popular. As such, in order to cope with growing demand, and to improve upon existing technology, new apparatuses, systems and methods are being proposed. For example, different standards have been proposed or are under discussion on behalf of the Digital Video Broadcasting (DVB) organization.
Summary
In one aspect, an apparatus may include a processing module configured to create a first frame having at least a header, a data portion and padding and a coding module configured to generate first recovery data for forward error correction of at least the data portion, to generate second recovery data for forward error correction of at least the data portion, to include the first recovery data in the first frame and to replace at least some of the padding with the second recovery data.
The coding module may be configured to generate the first recovery data and the second recovery data to include recovery data for forward error correction of the header and, optionally, the padding. Alternatively, or additionally, the coding module may be configured to generate the second recovery data to include recovery data for forward error correction of the first recovery data.
The coding module may be configured to insert into the header an indication that the frame includes both first recovery data and second recovery data.
The apparatus may be configured to create a second frame having a second header, a second data portion and second padding and to generate first recovery data for forward error correction of at least the second data portion, to include the first recovery data in the second frame and the apparatus is arranged to forward the first frame and the second frame for transmission in a data stream to one or more receiving apparatuses. In such an apparatus, the coding module may be configured to insert into the second header an indication that the second frame does not include second recovery data.
Such first and second frames may be used to carry scalable data. For example, the data portion of the first frame includes base layer data and the second data portion includes enhancement layer data. Alternatively, or additionally, the apparatus may include a frame builder configured to map a plurality of frames onto a transmission frame for transmission in the data stream, wherein the plurality of frames is a plurality of first frames or a plurality of second frames. Such a frame builder may be configured to include an indication of whether the plurality of frames is a plurality of first frames or a plurality of second frames in a header of the
transmission frame.
In the same aspect, a method may include creating a first frame having a header, data portion and padding, generating first recovery data for forward error correction of at least the data portion, generating second recovery data for forward error correction of at least the data portion, including the first recovery data in the first frame and replacing at least some of the padding with the second recovery data.
A computer readable medium may be provided, on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of such a method.
In another aspect, an apparatus may include a receiver configured to receive at least one data stream and a decoder configured to extract a frame from the at least one data stream, to, if the frame includes both first recovery data for forward error correction of at least a data portion of the frame and second recovery data for forward error correction of at least the data portion, replace the second recovery data from the frame with padding and decode at least the data portion using the first recovery data and the second recovery data and to output the decoded data portion.
For example, the decoding of at least the data portion may include decoding the padding and/ or other bits of the frame.
The decoder may be configured to, if the frame does not include both first recovery data and second recovery data, decode at least the data portion using first recovery data in the frame, and to output the decoded data portion.
The decoder may be configured to compile a parity check matrix based on at least part of the first recovery data wherein, if the frame includes both first recovery data and second recovery data, the parity check matrix is further based on at least part of the second recovery data.
The decoder may be configured to, if the frame includes both first recovery data and second recovery data, perform a plurality of iterations, where each iteration includes a first decoding using at least part of the first recovery data to decode at least the data portion and the second recovery data, updating at least the data portion, the first recovery data and the second recovery data according to the results of the first decoding, a second decoding using at least part of the second recovery data are used to decode at least the data portion and updating at least the data portion and the second recovery data according to the results of the second decoding.
The decoder may be configured to determine whether the frame includes first and second recovery data. For example, the decoder may be configured to extract an indication of whether the frame includes second recovery data from a header of the frame and/ or, if the frame is one of a plurality of frames in a transmission frame received by the receiver, extract an indication of whether the plurality of forward error correction frames includes second recovery data from a header of the transmission frame. The decoder may be configured to, if the frame does not include both first recovery data and second recovery data, replace padding in the frame with one or more predefined padding values prior to decoding at least the data portion using first recovery data in the frame.
A communication system may include such an apparatus, arranged to receive the data stream from another apparatus via a network.
In the same aspect, a method may include receiving at least one data stream, extracting a frame from the at least one data stream, if the frame includes both first recovery data for forward error correction of at least a data portion of the frame and second recovery data for forward error correction of at least the data portion, replacing the second recovery data with padding and decoding at least the data portion using the first recovery data and the second recovery data and outputting at least the decoded data portion.
For example, the decoding of at least the data portion may include decoding the padding A computer readable medium may be provided, on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of such methods.
In yet another aspect, an apparatus may include a receiver configured to receive at least one data stream and a decoder configured to extract a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding bits, to modify the frame by replacing the values of the padding bits with one or more predefined padding values and to perform error correction for the modified frame using the recovery data.
The decoder may be configured to extract the one or more predefined padding values from a header of the frame and/ or, if the frame is one of a plurality of frames in a transmission frame received by the receiver, to extract the one or more predefined padding values from a header of the transmission frame.
In the same aspect, a method may include receiving at least one data stream, extracting a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding bits, modifying the frame by replacing the values of the padding bits with one or more predefined padding values and performing error correction for the modified frame using the recovery data. A computer readable medium may also be provided on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of such a method.
Exemplary embodiments describe computer readable code, optionally stored on a non-transitory computer readable medium, which when executed by computer apparatus causes the computer apparatus to perform described methods.
Example embodiments of the present invention will now be described with reference to the accompanying Figures.
Brief Description of the Figures
Figure 1 is a simplified schematic overview of a communication system in which exemplary embodiments of the invention can be implemented;
Figure 2 is a schematic view of broadcasting apparatus according to an embodiment of the invention;
Figure 3 is a flowchart of a first example of a method that may be performed by the broadcasting apparatus of Figure 2;
Figure 4 depicts an example baseband frame generated by a module in the broadcasting apparatus of Figure 2;
Figure 5 depicts an example forward error correction frame generated by a module in the broadcasting apparatus of Figure 2;
Figure 6 depicts an example parity check matrix used for generation of additional coding in the method of Figure 3; Figure 7 depicts the example forward error correction frame of Figure 5 after the insertion of additional parity check bits;
Figure 8 is a block diagram of an example receiving apparatus for use in the communication system of Figure 1 ;
Figure 9 is a flowchart of a first example of a method performed by the receiving apparatus of Figure 8;
Figure 10 depicts an example forward error correction frame following modifications during the method of Figure 9;
Figure 11 depicts an example of a structure of a parity check matrix created in the method of Figure 9 when additional coding is in use;
Figure 12 depicts an example of a parity check matrix that may be created in the method of Figure 9 when additional coding is in use;
Figure 13 is a flowchart of a second example of a method that may be performed by the receiving apparatus of Figure 8;
Figure 14 is a flowchart of a second example of a method that may be performed by the broadcasting apparatus of Figure 2;
Figure 15 depicts an example baseband frame produced in the method of Figure 14;
Figure 16 is a flowchart of a third example of a method that may be performed by the receiving apparatus of Figure 8;
Figure 17 depicts an example of a structure of an extended parity check matrix that may be created in the method of Figure 16;
Figure 18 depicts an example of an extended parity check matrix that may be created in the method of Figure 16;
Figure 19 is a flowchart of a fourth example of a method that may be performed by the receiving apparatus of Figure 8;
Figure 20 depicts a header of an example baseband frame that may be produced in the method of Figure 3 or Figure 14;
Figure 21 depicts an example physical layer frame that may be produced in the method of Figure 3 or Figure 14;
Figure 22 is a flowchart of a third example of a method that may be performed by the broadcasting apparatus of Figure 2; Figure 23 depicts an example of a baseband frame that may be produced in the method of Figure 22;
Figure 24 depicts an example of a forward error correction frame that may be produced in the method of Figure 22; and
Figure 25 is a flowchart of a fifth example of a method that may be performed by the receiving apparatus of Figure 8.
Detailed Description of Embodiments
Figure 1 shows a simplified schematic overview of parts of a communication system. The system 1 comprises broadcasting apparatus 2, which receives logical data streams 3, 4, such as audio, video or multimedia clips, software or other data files, from one or more content providers 5, 6. The broadcasting apparatus 2 operates on the data streams and then broadcasts or multicasts the resulting sequences of data packets in a stream 7 via one or more intermediary apparatuses 8, such as a television mast, to one or more receiving apparatuses 9. The receiving apparatuses 9 can then reproduce the data streams for consumption by their users.
The stream 7 may include multiple data packet streams that may relate to one or more different services. In this particular example, the stream 7 includes scalable content, such as scalable video and/or audio data. The broadcasting apparatus 2 is arranged to produce two or more streams of data packets 7a, 7b carrying different representations of the same content with different scalable qualities. The receiving apparatuses 9 can receive the stream 7 and decode all of the data packets conveying the content or, alternatively, a subset of those packets that is most suitable for a particular application or for its capabilities. For example, if a first receiving apparatus 9 is a handheld device, such as a smartphone, it may have a display having a limited number of pixels. Such a receiving apparatus 9 may, therefore, decode a subset of received data packets that is sufficient to present video content with a relatively low resolution. Meanwhile, a second receiving apparatus 9 such as a desktop computer may have a relatively large screen and may decode a larger subset of the received data packets in order to present the same video content with a higher resolution. Alternatively, or additionally, the first receiving apparatus 9 may decode a subset of the received data packets sufficient to present the video content with a lower frame rate and/ or with a lower quality than the second receiving apparatus 9. Examples of scalable techniques are provided by the H.264/SVC standard, for scalable video coding (SVC), and the G.718 embedded variable bit rate
speech/ audio codec. In both of these techniques, a stream of base layer data, or core layer data, is transmitted, which provides a useable subset of the data packets for presenting content. In addition, one or more streams of enhancement layer data 7b are transmitted, which can be combined with the base layer data in order to present the same content with a higher perceptual quality. In the particular example shown in Figure 1, the stream 7 includes base layer data 7a and enhancement layer data 7b.
However, data may become lost or corrupted during transmission. Therefore, the sequence may include redundant data packets carrying recovery data, such as forward error correction (FEC) data, which can be used by the receiving
apparatuses 6 to reconstruct content from data packets that were not successfully received. The embodiments described herein below will be based on FEC. Other embodiments of the invention may implement another error correction technique based on linear block codes in place of FEC.
Figure 2 is a schematic view of a broadcasting apparatus 2 according to an embodiment of the invention that can be used in the system 1. The broadcasting apparatus 2 comprises a digital broadcasting module 10. Optionally, an input pre-processor 11 may also be provided but need not form part of the digital broadcasting module 10. The input pre-processor 11 may function as a service splitter, a scheduler or a de-multiplexer and splits an incoming service stream 3 into two separate streams 12, 13, carrying base layer data and enhancement layer data respectively.
In this particular example, the digital broadcasting module 10 comprises an input processing module 14, a bit interleaving and coding modulation module 15, a frame builder 16 and a modulator 17. The operation of various components of the digital broadcasting module 10 will be described below, with reference to Figure 3. The below methods and apparatuses are discussed within the context of Digital Video Broadcast Second Generation Terrestrial (DVB-T2), the standard for which is described in ETSI EN 302 755 (version 1.1.1 2009-09). It will be appreciated, however, that the applicability of the methods and apparatuses is not limited to DVB-T2. The described methods and apparatuses may be implemented in other types of digital broadcast or multicast system, such as, but not limited to, DVB Next Generation Handheld (DVB-NGH) and non-DVB systems, including systems that have not yet been standardised.
The digital broadcasting module 10 receives one or more logical data streams 12, 13 from the one or more content providers 5, 6, via the input pre-processing module 11, where provided (step s3.1). Each logical data stream 12, 13 may be carried by a respective physical layer pipe (PLP). For example, for video services, there might be at least three PLPs: at least one PLP for each of the video components, the audio components and the associated signalling components, such as program specific information (PSI) and/ or service information (SI) information. A PLP is a fully transparent data pipe which generally enables data of a structure with freely selectable, but PLP-specific, physical parameters to be transported. Thus, the capacity and also the service robustness may be adjusted according to particular requirements, depending on the type of receiving apparatus 9 and/ or its usage environment. The input processing module 14 processes the incoming data stream 12, 13 from each PLP separately. It divides the input data stream 3, 4 into data portions. The maximum size of the data portions for a BB frame depends whether or not additional coding is to be applied. If additional coding is to be applied (step s3.2), the stream 3, 4 is divided into data portions with a maximum size ^4 (step s3.3). If additional coding is to be applied (step s3.3), the stream 3, 4 is divided into data portions with a maximum size B (step s3.4). In this example, the difference between the maximum sizes A. and B is the number of bits to be used to carry parity check bits generated by the additional coding process. The input processing module 14 generates one or more baseband (BB) frames by combining a BB header with a respective one of the data portions (step s3.5). The size of the BB frames is fixed for data from each PLP but depends on an error correction code rate to be applied to that frame. In this example, separate streams of BB frames are produced for base layer and enhancement layer data from the logical data streams 12, 13 respectively.
The structure of an example BB frame is shown in Figure 4. In this particular example, the BB frame 18 includes the BB header 19, data portion 20 and padding bits 21. For example, the padding 21 may consist of bits set to 'Ο'. The number of padding bits 21 is set to a number that is equal to, or greater than, a predetermined number mldpc ext , to be described herein below. The bit interleaving and coding modulation module 15 processes BB frames 18 produced by the input processing module 11 and generates corresponding FEC frames. In this particular example, an outer coding process (step s3.6) is performed on the BB frame 18, generating parity check bits, that is, outer coding bits, and an inner coding process (step s3.7) is performed on the BB frames 18 and outer coding bits, generating further parity check bits, that is, inner coding bits.
For example, the outer coding process (step s3.6) may be based on Bose-Chandhuri- Hocquenghem (BCH) FEC codes and the inner coding process (step s3.7) may be based on Low Density Parity Check (LDPC) FEC codes. The BCH FEC codes may be Reed Solomon codes. Reed Solomon codes are a subset of BCH FEC codes that are particularly suitable for use in DVB networks. Meanwhile, LDPC codes are linear block codes where a k bit message d v's, encoded into a n bit codeword c according to: c— dG (1) where G is a k x n generator matrix and the matrix operations are performed over a Galois Field with order of the field 2 (GF(2)).
A sparse binary check matrix (parity check matrix) H is defined as a m x n binary matrix, where m— (n-k), satisfying the following condition:
GHT = 0 (2) A column in H is associated with a bit of the codeword c and each row corresponds to a parity check. A non-zero element in a row means that the corresponding bit contributes to that parity check.
A FEC frame is then generated by the bit interleaving and coding modulation module 15 by appending a number mbch of parity check bits generated by the outer coding and a number mldpc of parity check bits generated by the inner coding to the BB frame 18, to follow the padding 21 (step s3.8) . Figure 5 depicts an example of a FEC frame 22 output by the bit interleaving and coding modulation module 15. The FEC frame 22 includes the BB frame 15, outer coding parity check bits 23 and inner coding parity check bits 24.
The FEC frame 22 has a fixed size. For example, the frame size may be 16200 bits for a "short frame" or 64800 bits for a "long frame". The frame size will depend on the number of outer coding parity check bits, such as BCH FEC codes in this example, and inner coding parity check bits, such as LDPC FEC codes, which, in turn, depend on the LDPC code rate. Examples of numbers of bits in the BB frame 18, that is, the number kbch of information bits on which the outer BCH coding step is performed, and numbers klpdc of information bits on which the inner LDPC coding step is performed for various LDPC code rates are noted in Table 1 , where the number kbch includes the number of bits in the BB frame 18, that is, the BB header 19, data portion 20 and padding bits 21 , and the number klpdc includes the number of bits in the BB frame 18 and the mbch BCH parity check bits 23.
Table 1
LDPC kbch kbch kipdc ki pdc
Code Rate (long frame") (short frame") (long frame") (short frame")
1 /2 32208 7032 32400 7200
3/5 38688 9552 38880 9720
2/3 43040 10632 53200 10800
3/4 48408 11712 48600 11880
4/5 51648 12432 51840 12600
5/6 53840 13152 54000 13320
Next, the bit interleaving and coding module 15 determines whether an additional coding process is to be performed (step s3.9), in addition to the outer and inner coding. For example, additional coding may be required where the data portion includes data requiring a low bit error rate.
If required, an additional coding process is then performed (step s3.9), in which a number mldpc ext additional parity check bits are calculated. Codeword bits on which additional coding process is performed include the BB header 19, the data portion 20 and any remaining padding 21 and may, optionally, include the outer and inner coding bits 23, 24. In this particular example, the additional parity check bits are generated using LDPC codes and the padding bits 21, the mhcb outer parity check bits 23 and mldpc inner parity check bits 24 are disregarded.
Figure 6 depicts an example of a parity matrix lpdc ext for the additional coding process (step s3.8). Each row in the graph corresponds to a parity check, to be represented by a respective additional parity check bit. The columns represent codeword bits, that is, the BB header 19, data portion 20, padding 21 and outer and inner coding parity check bits 23, 24 and the additional parity check bits. A dot on the graph indicates a Ί ', meaning that the relevant codeword bit contributes to a parity check.
As noted above, the number of padding bits 21 is equal to, or greater than, mldpc ext . This allows the mldpc ext additional parity check bits to be added to the FEC frame 22 by inserting them in place of some or all of the padding bits 21 (step s3.11). Figure 7 shows the resulting FEC frame 22', which includes the additional parity check bits 25. In this particular example, the original number of padding bits 21 exceeded the number of additional parity check bits 25. As a result, the FEC frame 22' includes both additional parity check bits 25 and a reduced number of padding bits 21.
Whether or not an additional coding process is performed (step s3.10, s3.11), the bit interleaving and coding modulation module 15 performs a bit interleaving process on the FEC frames 22, 22' (step s3.12) and passes the FEC frames 22, 22' to the frame builder 16.
The frame builder 16 performs frame interleaving (step s3.13) and Orthogonal frequency-division multiplexing (OFDM) symbol mapping operations (step s3.14) and maps the FEC frames 22, 22' onto physical layer frames (step s3.15). The physical layer frames are then modulated by the modulator 17 (step s3.16) and forwarded to an intermediary apparatus 8 for onward transmission to the receiving apparatuses 9 (step s3.17).
As any additional parity check bits 25 replace some or all of the existing padding bits 21, a FEC frame 22 without additional parity check bits and a FEC frame 22' with additional parity check bits 25 can have the same format, in terms of the positions and, optionally, the lengths of the BB header 19, data portion 20, outer coding bits 23 and inner coding bits 24. This can allow a receiving apparatus 9 to receive the FEC frames 22, 22' regardless of whether it can utilise any additional parity check bits 25. If the receiving apparatus 9 is capable of utilising the additional parity check bits 25, then it can extract them. If the receiving apparatus 9 is not capable of utilising the additional parity check bits 25, it disregards them as padding. In this manner, the same stream 7 may be broadcast or multicast to receiving apparatuses 9 having different capabilities, potentially improving backwards compatibility.
Additionally, or alternatively, the use of bits normally used for padding to carry additional parity check bits 25 may allow such additional coding to be utilised as required, on a frame-by- frame basis. For example, where the broadcasting apparatus 2 is arranged to produce scalable transmission data with a first stream 7a of FEC frames 22' carry base layer data and a second stream 7b of FEC frames 22 carry enhancement layer data, the first and second streams 7a, 7b may have different requirements. A relatively high bit error rate may be tolerable for the enhancement layer data 7b, compared with the base layer data 7a. In such an example, the base layer data 7a may be provided with additional coding to facilitate its reception with a relatively low bit error rate while the enhancement layer data stream 7b may be provided without additional coding.
Figure 8 depicts an example of a receiving apparatus 9 according to an embodiment of the invention, which includes a controller 26, comprising one or more
processors, a memory facility 27, providing random-access memory and read-only memory for storing operational software and data, receiver circuitry 28 and a decoder 29 for receiving and decoding a stream of data packets received via an arrangement of one or more antennas 30. The one or more antennas may or may not form part of the receiving apparatus 9. The receiving apparatus 9 also includes an output 31, including one or more of a display, an audio output and a video output, for presenting decoded data to a user.
The receiving apparatus 9 may receive one or more radio frequency signals and output one service stream and one signalling stream. A user may select a service to be decoded by the decoder 29 and presented by the output 31, based on
information in the signalling stream. Depending on the preferences of the user and/ or the capabilities of the receiving apparatus, the enhancement layer data may be utilised by the receiving apparatus 9.
The receiving apparatus 9 may include features relating to other functionality. For example, the receiving apparatus may be a mobile terminal, a telephone handset, a smartphone or any other similar device, in which case other conventional features of telephone handsets, such as a microphone, a second antenna and a transceiver configured to transmit and receive voice data over a telephone network may be included. In the case of the receiving apparatus 9 being a mobile terminal, other features may be included depending on its required functionality. In other embodiments the apparatus may be part of a TV set or a setup-box or any other similar device. The receiver circuitry 28 receives the broadcast stream 7 from the intermediary apparatus 8 via the antenna 30 and forwards it to the decoder 29. An example decoding operation that can be performed by the receiving apparatus 9 will now be described with reference to the flow chart of Figure 9. The decoder 29 extracts the FEC frames 22, 22' from the stream (step s9.1) and parses the BB header 19 (step s9.2).
The decoder 29 then determines whether additional coding has been used (step s9.3). For example, the FEC frame 22, 22' may include an indication that it includes additional parity check bits 25 that is used by the decoder 29 to determine whether additional coding has been used. Alternatively, or additionally, the decoder 29 may determine whether additional coding has been used by determining whether a particular field within the FEC frame 22, 22' includes additional parity check bits 25, with or without padding 21, or whether that field consists wholly of padding 21, for example, by comparing the content of that field with expecting values for the padding 21.
If additional coding has been used (step s9.3), the decoder 29 extracts the additional parity check bits 25 (step s9.4) and modifies the FEC frame 22' by appending a further instance of the additional parity check bits 25' to the end of that frame (step s9.5). The field previously used to convey the additional parity check bits 25 then has its padding restored, by overwriting the additional parity check bits 25 in that field with padding values (step s9.6). The original values of the padding bits 25, if known, may be used in the overwriting operation. Alternatively, in the case of soft- decision decoding, the field may be overwritten with high log likelihood ratio (LLR) values corresponding to the original values. An example of a modified FEC frame 22", including appended additional parity check bits 25' and padding 21 ', is shown in Figure 10. The decoder 29 then creates a parity check matrix.
Where additional coding has been used, a concatenated matrix for the inner and additional coding may be created (step s9.7). For example, a concatenated parity check matrix may be created where the inner and additional coding is based on LDPC FEC codes, as described above. As shown in the example structure of Figure 11, such a concatenated matrix 32 may include the parity check matrix Upc 33 for the inner coding, the parity check matrix Upc ext 34 for the additional coding and a matrix 35 with zero values, which are provided so that the concatenated matrix 32 has the following dimensions:
(mUpc + midpc_ext) X (kldpc + midpc K ' Idpc_ext) ' · Figure 12 depicts an example of the concatenated matrix 32. Each row in the graph corresponds to a parity check, represented by a respective additional parity check bit. The columns represent the codeword bits, that is, the BB header 19, data portion 20, restored padding 21 ', outer and inner coding parity check bits 23, 24 and the appended additional parity check bits 25'. A dot on the graph indicates a Ί '.
Where additional coding has not been used (step s9.3), a standard parity check matrix Upc 33 is created, based on the inner coding bits 34 (step s9.8).
The FEC frame 22" is decoded (step s9.9), using the parity check matrix created in step s9.7 or s9.8.
Decoding using the outer coding bits 23 is then performed (step s9.10), and the decoded data portion 20 is output (step s9.11) for one or more of further processing, presentation, such as display and/or audio output, and storage, if required.
If there are one or more further frames 22, 22' in the received stream 7 to be processed (step s9.12), the decoder 29 repeats the decoding process (steps s9.1 to s9.12) for the next frame 22, 22'. Figure 13 is a flowchart depicting a second example of a decoding process that may be performed by the receiving apparatus 9. Referring to Figure 13, steps sl3.1 to sl3.6 correspond to steps s9.1 to s9.6 described above. The process of Figure 13 differs from that of Figure 9 by using an iterative decoding method instead of creating and using a parity check matrix 32, 33.
At step sl3.7, an iteration counter i is set to an initial value, such as 0. The inner coding bits 24 are then used to decode the BB header 19, data portion 20, outer and inner coding bits 23, 24 (step sl3.8). The values of the bits of the BB header 19 and the data portion 20 and the outer and inner coding bits 23, 24 are updated to reflect the results of this decoding operation (step sl3.9). The additional parity check bits 25' are then used to decode the BB header 19, data portion 20 and the additional parity check bits 25 (step s 3. 0) . The bits of the BB header 19, the data portion
20, the outer and inner coding bits 23, 24 and the additional parity check bits 25' are then updated accordingly (step sl3.11). The iteration counter i is then updated (step sl3.12). Steps sl3.8 to sl3.12 are repeated until the iteration counter b reaches a predetermined value ima„ corresponding to the required number of iterations (step sl3.13).
If additional coding has not been used (step sl3.3), the FEC frame 22 is decoded using the inner coding bits 24 (step sl3.14). The FEC frames 22, 22" are then decoded using the outer coding bits 23 (step s 13.15) so that the data in the data portion 20 can be output (step s 3. 6) .
If there is at least one further FEC frame 22, 22' in the received stream 7 to be processed (step sl3.17), steps sl3.1 to sl3.16 are repeated for a next FEC frame 22, 22'.
Figure 14 is a flowchart of a second example of a method that may be performed by the broadcasting apparatus 2 of Figure 2 in another embodiment of the invention. Referring to Figure 14, a data stream 3, 4 is received (step sl4.1), divided into data portions (step sl4.2) as described above in relation to steps s3.1 to s3.2 of Figure 3. A BB frame is then generated by the input processing module 10 comprising a BB header, a data portion and padding (step sl4.3).
The BB frame is then forwarded to the bit interleaving and coding module 15. If additional coding is required (step sl4.4), that is, coding in addition to the inner and outer coding that is to be applied to the BB frame, an additional coding process is performed on the BB header and data portion (step sl4.5) and some or all of the padding bits in the BB frame are replaced with additional parity check bits produced by that process (step si 4.6). For example, the additional coding process may use LDPC FEC codes as described above. Figure 15 depicts an example of a BB frame 36 produced in this manner, comprising a BB header 19, data portion 20, additional parity check bits 25. In this particular example, the BB frame 36 includes residual padding bits 21 that have not been overwritten by the additional parity check bits 25.
Outer coding, for example using BCH FEC codes, is performed on the BB header 19 and data portion 20 and, optionally, on the additional parity check bits 25 and any residual padding 21. The resulting outer coding bits 23 are appended to the BB frame 36 (step sl4.8). Inner coding, for example, using LDPC FEC codes, is performed on the BB header 19 and data portion 20 and, optionally, on the additional parity check bits 25, any residual padding 21 and the outer coding bits. A FEC frame is created by appending the resulting inner coding bits to the outer coding bits and the BB frame 36 (step sl4.9).
Where additional coding is used, the FEC frame generated by the bit interleaving and coding module 15 may have the format of the FEC frame 22' shown in Figure 7, with or without padding bits 21. Where additional coding is not used, the FEC frame may have the format of the FEC frame 22 shown in Figure 5. In the following discussion, the same reference numerals 22, 22' will be used to refer to the FEC frames produced by the method of Figure 14. The remaining steps sl4.10 to sl4.15 correspond to steps s3.12 to s3.17 described above in relation to Figure 3. Figure 16 shows an example of a method that may be performed by a receiving apparatus 9 to decode FEC frames 22, 22' generated by the method of Figure 14. A FEC frame 22, 22' is extracted from a received stream 7 (step si 6.1) and its header is parsed (step si 6.2). The receiving apparatus 9 then determines whether additional coding has been used (step si 6.3), for example, by using one or more of the methods described above in relation to step s9.3 of Figure 9.
If additional coding has been used (step si 6.3), an extended parity check matrix is created (step si 6.4) by concatenating matrices for the additional coding and inner coding. Figure 17 depicts an example structure of an extended parity check matrix 37 where the inner and additional coding is based on LDPC FEC codes. In this example, the concatenated matrix 37 includes the parity check matrix ldpc 33 for the inner coding, the parity check matrix ldpc ext 34 for the additional coding and a matrix of zero values 35 and has the dimensions {mldpc + mldpc ex x {kldpc + mldp . Figure 18 depicts an example of such an extended parity check matrix.
If additional coding has not been used (step si 6.3), a standard parity check matrix ldpc 33 is created (step si 6.5).
The FEC frame 22, 22' is then decoded using the created parity check matrix 33, 37 for the inner coding and any additional decoding (step si 6.6) and then outer decoding is performed (step sl 6.7).
The decoded data from the data portion 20 is then output (step si 6.8). If there are one or more further FEC frames 22, 22' to be decoded (step si 6.9), the decoding process (steps sl 6.1 to sl 6.9) is repeated for the next FEC frame 22, 22'. Figure 19 shows an example of an alternative method that can be used by the receiving apparatus 9 to decode FEC frames 22, 22' encoded using the method of Figure 14, beginning with extracting a FEC frame 22, 22' (step sl9.1), parsing the header of the FEC frame 22, 22' (step si 9.2) and determining whether additional coding has been used (step sl9.3).
The procedure for decoding FEC frames 22 without additional coding (steps sl9.4, sl9.5) is the same as that described above in relation to Figure 13 (steps sl3.14 & sl3.15).
If additional coding has been used (step sl9.3), an iteration counter i is set to an initial value, such as 0 (step si 9.6). The inner coding bits 24 are then used to decode the BB header 19, the data portion 20 and, optionally, one or more of the outer coding bits 23, the additional parity check bits 25 and the residual padding (step sl9.7) and the values of the decoded bits are updated (step sl9.8). The additional parity check bits 25 are then used to decode the BB header 19 and the data portion 20 (step sl9.9). The bits of the BB header bits 19 and the data portion bits 20 are then updated with their decoded values (step s 9. 0) . The iteration counter i is then increased by one increment (step sl9.11). Steps sl9.7 to si 9.11 are repeated until the iteration counter i reaches a predetermined value ima
corresponding to the required number of iterations (step sl9.12).
Outer decoding is then performed (step s 9.5) . The decoded data of the data portion 20 of the FEC frame 22' can then be output (step sl9.14).
If there are one or more further FEC frames 22, 22' to be decoded (step sl9.15), the decoding process (steps sl9.1 to sl 9.14) is repeated for the next FEC frame.
In the above methods, the FEC frames 22, 22' may include an indication of whether additional coding has been used. The determinations made in steps s9.3, sl3.3, sl 6.3 and sl9.3 in the methods of Figures 9, 13, 16 and 19 respectively may be based on such an indication.
Such an indication may be included in the BB header 19. Figure 20 depicts an example of a BB header 19, including the fields 38-43 listed in Table 2.
Table 2
Field Length (bytes)
MATYPE 2
UPL 2
DFL 2
SYNC 1
SYNCD 2
CRC-8 MODE 1
In this particular example, the BB header 19 has format compatible with the DVB- T2 standard, so that 5 bytes from the user packet length (UPL), user packet sync- byte (SYNC) and SYNCD (distance in bits from the beginning of a data field to the start of data) fields 39, 41, 42 are reserved, and the first 4 bits 39a of the UPL field 39 are used to convey an indication of the use of additional coding.
The 4 bits may be divided into two fields. The first bit, referred to here as
"Enable" may be a single bit having a value that indicates whether additional coding has been used, as shown in Table 3.
Table 3
Enable field Value
False (no additional coding) 0
True (additional coding used) 1
The other three bits of the indication 38 may be used to indicate the code rate, as shown in Table 4. Table 4
Code Kate Value
1 /2 000
3/5 001
2/3 010
3/4 on
3/5 100
5/6 101
Reserved 110
Reserved 111
In other embodiments of the invention, other bits of the UPL field 39 or other fields in the BB header 19 may be used in addition, or instead, of the bits 39a in order to convey information about the use the additional coding.
Alternatively, or additionally, an indication may be included in the header of the physical layer frames in the stream 7. Figure 21 depicts an example physical layer frame 44 that may be compatible with a DVB-T2 system.
The physical layer frame 44 of Figure 21 includes a header 45, that has pilot symbols in the form of PI symbols 46 and P2 symbols 47, and a payload 48. The payload 48 includes PLP symbols corresponding to one or more FEC frames 22, 22'.
The P2 symbols 47 of the frame header 45 include Layer 1 (LI) pre- signalling 49 and LI post- signalling 50.
The LI post-signalling 50 includes five fields 51 -55, as shown in Figure 21. A dynamic signalling field 52 is used to indicate parameters that may change between the physical layer frames 44 in the stream 7 and includes bits 52a indicating whether or not additional coding has been used. The format of the dynamic signalling field 52 in this example is shown in Table 5. Table 5
Field ength (bits)
FRAME_IDX 8
SUB_SLICE_INTERVAL 22
TYPE_2_START 22
Ll_CHANGE_COUNTER 8
START_RF_IDX 3
RESERVED_1 8 for i=0 . .. NUM_PLP-1 {
PLP_ID 8
PLP_START 22
PLP_NUM_BLO CKS 10
RESERVED_2 8
}
RESERVED_3 8 for i=0 . .. NUM-AUX-1 {
AUX_RFU 48
}
In this particular example, the first four RESERVED_2 bits 52a are used to convey information about a coding level in the FEC frames 22, 22'. The first of the four bits 52a is used to indicate whether additional coding has been used, in the same manner as shown in Table 3 above. The other three bits are used to indicate a coding rate, in the same manner as shown in Table 4 above. However, in other embodiments of the invention, other bits of the RESERVED_2 field or other fields in the dynamic signalling field 52 may be used in addition, or instead, of the bits 52a in order to convey information about the use the additional coding.
Where the indication is included in a frame header 45, the frame builder 16 of the broadcasting apparatus 2 is configured to map only FEC frames 22, 22' having the same level of coding on the physical layer frame 44. In other words, the payload 48 of the physical layer frame 44 does not include both FEC frames 22 that do not have any additional parity check bits and FEC frames 22' including additional parity check bits 25.
Figure 22 depicts a third example of a method that may be performed by the broadcasting apparatus 2 in order to generate FEC frames according to yet another embodiment of the invention.
A data stream 3, 4 is received by the broadcasting apparatus 2 (step s22.1) and divided into data portions (step s22.2). The input processing module 14 generates at least one BB frame (step s22.3). As shown in Figure 23, such a BB frame 56, includes a BB header 57, a data portion 58 and padding bits 59.
The data portion 58 may be smaller in length than a corresponding data portion in a standard BB frame, for example, a DVB-T2 frame. Similarly, the number of padding bits 59 may be greater than the number of padding bits in such a standard frame. The BB header 57 may include one or more fields 57a containing an indication of the size of the data portion so that the number of padding bits can be determined by a receiving apparatus 9 and/or one or more values of the padding bits 59. Alternatively, the padding bits 59 may be set to a predefined value that may be known to the receiving apparatuses 9.
Outer coding and inner coding (step s22.4, s22.5) are performed by the bit interleaving and coding module 15 and a FEC frame is generated (step s22.6). As shown in Figure 24, the FEC frame 60 includes the BB header 57, data portion 58, padding 59, outer coding bits 61 and inner coding bits 62, as described above in relation to steps s3.6, s3.7 and s3.8 of Figure 3.
Bit interleaving (step s22.7) and frame interleaving (step s22.8) are performed on the FEC frame 60 by the bit interleaving and coding module 15 and the frame builder 16 respectively. The frame builder 16 then performs OFDM symbol mapping (step s22.9) and maps the FEC frame 60 onto a physical layer frame 44 (step s22.10).
The physical layer frame 44 is then modulated (step s22.11) by the modulator 17 and forwarded for onward transmission (step s22.12).
Figure 25 is a flowchart of an example method that may be performed by a receiving apparatus 9 to receive frames 60 generated by the method of Figure 22. A FEC frame 60 is extracted from a received stream 7 (step s25.1) and its header is parsed (step s25.2) by the decoder 29.
The decoder 29 reinstates the padding bits 59 in the FEC frame 60 (step s25.3), by overwriting the received padding bits 59 with the one or more padding values. As discussed above, the one or more padding values may be indicated in a field 59a of the BB header 59 or values that are otherwise known to the receiving apparatus 9. Such replacement of potentially incorrect padding values with correct values decreases the effective bit error rate of the received FEC frame 60. Data recovery is performed by the decoder 29 using the inner and outer parity check bits 61, 62 (steps s25.4 and s25.5 respectively) and the decoded data from the data portion 58 is output (step s25.6).
If there is at least one further FEC frame 60 to be decoded (step s25.7), the process (steps s25.1 to s25.6) is repeated for the next FEC frame 60.
The reinstatement of the padding values in step s25.3 may reduce the effective bit error rate for the received FEC frame 60. In other words, the method of Figure 25 may permit the correction of errors in data received with a relatively low signal-to- noise ratio, without requiring the inclusion of additional parity check bits.
In yet another embodiment of the invention, a receiving apparatus 9 may be configured to decode FEC frames 22 using the method of Figure 25 and to decode FEC frames 22' having additional parity check bits 25 using an extended parity check matrix or iterative decoding. For example, any of steps s9.8 in Figure 9, step sl3.14 in Figure 13, step si 6.5 in Figure 16 or step sl9.4 in Figure 19 may be preceded by a step in which the padding 21 is replaced by one or more predefined padding values.
Each of the broadcast apparatus 2 and the receiver apparatus 8 described above may be comprised of hardware, such as one or more processors or microprocessors operating under the control of computer programs, optionally stored on one or more memories, such as the memory facility 27 of the receiving apparatus 9 or a similar memory facility 2a in the broadcasting apparatus 2. For example, the digital processing module 10 of the broadcasting apparatus 2 may be implemented by an arrangement of one or more processors running software or by hardware or by a combination of hardware with a processing arrangement executing one or more computer programs.
The above-described methods and apparatuses have been described primarily with reference to DVB-T2. However, the methods and apparatuses are also applicable to other communication systems, such as for example DVB-Next Generation
Handheld (NGH). This particularly true if the DVB-NGH system is operating with Internet Protocol (IP) over Generic Stream Encapsulation (GSE).
The above-described methods and apparatuses have been described within a broadcast context. It will be appreciated, however, that the above-described methods and apparatuses are also suitable for use within a multicast system. Thus, the broadcast apparatus 2 depicted in Figures 1 & 2 may instead be multicast apparatus.
It should be realised that the foregoing embodiments should not be construed as limiting. Other variations and modifications will be apparent to persons skilled in the art upon reading the present application. Moreover, the disclosure of the present application should be understood to include any novel features or any novel combination of features either explicitly or implicitly disclosed herein or any generalisation thereof and during the prosecution of the present application or of any application derived therefrom, new claims may be formulated to cover any such features and/or combination of such features.

Claims

Claims
1. An apparatus including:
a processing module configured to create a first frame having at least a header, a data portion and padding; and
a coding module configured to generate first recovery data for forward error correction of at least the data portion, to generate second recovery data for forward error correction of at least the data portion, to include the first recovery data in the first frame and to replace at least some of the padding with the second recovery data.
2. An apparatus according to claim 1, wherein the coding module is configured to generate the first recovery data and the second recovery data to include recovery data for forward error correction of the header.
3. An apparatus according to claim 1 or 2, wherein the coding module is configured to generate the second recovery data to include recovery data for forward error correction of the first recovery data.
4. An apparatus according to claim 1, 2 or 3, wherein the coding module is configured to insert into the header an indication that the frame includes both first recovery data and second recovery data.
5. An apparatus according to any preceding claim, wherein:
the processing module is configured to create a second frame having a second header, a second data portion and second padding; and
the coding module is configured to generate first recovery data for forward error correction of at least the second data portion and to include the first recovery data in the second frame;
the apparatus is arranged to forward the first frame and the second frame for transmission in a data stream to one or more receiving apparatuses.
6. An apparatus according to claim 5, wherein the coding module is configured to insert into the second header an indication that the second frame does not include second recovery data.
7. An apparatus according to claim 5 or 6, wherein the first frame and the second frame include scalable data, the data portion of the first frame includes base layer data and the second data portion includes enhancement layer data.
8. An apparatus according to claim 5, 6 or 7, including a frame builder configured to map a plurality of frames onto a transmission frame for transmission in the data stream, wherein the plurality of frames is a plurality of first frames or a plurality of second frames.
9. An apparatus according to claim 8, wherein the frame builder is configured to include an indication of whether the plurality of frames is a plurality of first frames or a plurality of second frames into a header of the transmission frame.
10. A method comprising:
creating a first frame having a header, data portion and padding;
generating first recovery data for forward error correction of at least the data portion;
generating second recovery data for forward error correction of at least the data portion;
including the first recovery data in the first frame; and
replacing at least some of the padding with the second recovery data.
11. A method according to claim 10, wherein the generating of the first recovery data and the generating of the second recovery data include generating recovery data for forward error correction of the header.
12. A method according to claim 10 or 11, wherein generating the second recovery data includes generating recovery data for forward error correction of the first recovery data.
13. A method according to claim 10, 11 or 12, including inserting into the header an indication that the first frame includes both first recovery data and second recovery data.
14. A method according to any of claims 10 to 13, including:
creating a second frame having a second header, second data portion and second padding;
generating first recovery data for forward error correction of at least the second data portion;
including the first recovery data for at least the second data portion in the second frame; and
transmitting the first frame and the second frame in a data stream to one or more receiving apparatuses.
15. A method according to claim 14, including inserting into the second header an indication that the second frame does not include second recovery data.
16. A method according to claim 14 or 15, wherein the first frame and the second frame include scalable data, the data portion of the first frame includes base layer data and the second data portion includes enhancement layer data.
17. A method according to claim 14, 15 or 16, including mapping a plurality of frames onto a transmission frame for transmission in the data stream, wherein the plurality of frames is a plurality of first frames or a plurality of second frames.
18. A method according to claim 17, including inserting an indication of whether the plurality of frames is a plurality of first frames or a plurality of second frames into a header of the transmission frame.
19. A computer readable medium on which is stored computer readable instructions that, when executed by a processing arrangement, causes the
performance of a method according to any of claims 10 to 18.
20. An apparatus including:
a receiver configured to receive at least one data stream; and
a decoder configured to extract a frame from the at least one data stream, to, if the frame includes both first recovery data for forward error correction of at least a data portion of the frame and second recovery data for forward error correction of at least the data portion, replace the second recovery data from the frame with padding and decode at least the data portion using the first recovery data and the second recovery data and to output the decoded data portion.
21. An apparatus according to claim 20, wherein the decoder is configured to, if the frame does not include both first recovery data and second recovery data, decode at least the data portion using first recovery data in the frame, and to output the decoded data portion.
22. An apparatus according to claim 20 or 21, wherein the decoder is configured to compile a parity check matrix based on at least part of the first recovery data wherein, if the frame includes both first recovery data and second recovery data, the parity check matrix is further based on at least part of the second recovery data.
23. An apparatus according to claim 20 or 21, wherein the decoder is configured to, if the frame includes both first recovery data and second recovery data, perform a plurality of iterations, where each iteration includes a first decoding using at least part of the first recovery data to decode at least the data portion and the second recovery data, updating at least the data portion, the first recovery data and the second recovery data according to the results of the first decoding, a second decoding using at least part of the second recovery data are used to decode at least the data portion and updating at least the data portion and the second recovery data according to the results of the second decoding.
24. An apparatus according to any of claims 20 to 23, wherein the decoder is configured to extract an indication of whether the frame includes second recovery data from a header of the frame.
25. An apparatus according to any of claims 20 to 23, wherein the decoder is configured to, if the frame is one of a plurality of frames in a transmission frame received by the receiver, extract an indication of whether the plurality of forward error correction frames includes second recovery data from a header of the transmission frame.
26. An apparatus according to any of claims 20 to 25, wherein the decoder is configured to, if the frame does not include both first recovery data and second recovery data, replace padding in the frame with one or more predefined padding values prior to decoding at least the data portion using first recovery data in the frame.
27. An method including:
receiving at least one data stream;
extracting a frame from the at least one data stream;
if the frame includes both first recovery data for forward error correction of at least a data portion of the frame and second recovery data for forward error correction of at least the data portion, replacing the second recovery data with padding and decoding at least the data portion using the first recovery data and the second recovery data; and
outputting at least the decoded data portion.
28. A method according to claim 27, if the frame does not include both first recovery data and second recovery data, decoding at least the data portion using first recovery data in the frame.
29. A method according to claim 27 or 28, wherein decoding at least the data portion includes compiling a parity check matrix based on at least part of the first recovery data wherein, if the frame includes both first recovery data and second recovery data, and the parity check matrix is further based on at least part of the second recovery data.
30. A method according to claim 27 or 28, including, if the frame includes both first recovery data and second recovery data, performing a plurality of iterations, where each iteration includes a first decoding using at least part of the first recovery data to decode at least the data portion and the second recovery data, updating at least the data portion, the first recovery data and the second recovery data according to the results of the first decoding, a second decoding using at least part of the second recovery data are used to decode at least the data portion and updating at least the data portion and the second recovery data according to the results of the second decoding.
31. A method according to any of claims 27 to 30, includes extracting an indication of whether the frame includes second recovery data from a header of the frame.
32. A method according to any of claims 27 to 30, wherein the frame is one of plurality of frames in a transmission frame, including extracting an indication of whether the plurality of frames includes second recovery data from a header of the transmission frame.
33. A method according to any of claims 27 to 32, including, if frame does not include both first recovery data and second recovery data, replacing padding in the received frame with one or more predefined padding values prior to decoding at least the data portion using the first recovery data.
34. A computer readable medium on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of a method according to any of claims 27 to 33.
35. A communication system including:
a network;
an apparatus according to claim 1, arranged to forward the first frame for transmission in a data stream over the network; and an apparatus according to claim 20, arranged to receive the data stream from the network.
36. An apparatus including:
a receiver configured to receive at least one data stream; and
a decoder configured to extract a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding bits, to modify the frame by replacing the values of the padding bits with one or more predefined padding values and to perform error correction for the modified frame using the recovery data.
37. An apparatus according to claim 36, wherein the decoder is configured to extract the one or more predefined padding values from a header of the frame.
38. An apparatus according to claim 36, wherein the frame is one of a plurality of frames in a transmission frame received by the receiver and the decoder is configured to extract the one or more predefined padding values from a header of the transmission frame.
39. A method including:
receiving at least one data stream; and
extracting a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding bits;
modifying the frame by replacing the values of the padding bits with one or more predefined padding values; and
performing error correction for the modified frame using the recovery data.
40. A method according to claim 39, including extracting the one or more predefined padding values from a header of the frame.
41. A method according to claim 39, wherein the frame is one of a plurality of frames in a transmission frame received by the receiver, including extracting the one or more predefined padding values from a header of the transmission frame.
42. A computer readable medium on which is stored computer readable instructions that, when executed by a processing arrangement, causes the performance of a method according to claim 39, 40 or 41.
43. An apparatus including:
means for creating a first frame having a header, data portion and padding; means for generating first recovery data for forward error correction of at least the data portion;
means for generating second recovery data for forward error correction of at least the data portion; and
means for including the first recovery data in the first frame; and
means for replacing at least some of the padding with the second recovery data.
44. An apparatus including:
means for receiving at least one data stream;
means for extracting a frame from the at least one data stream;
means for, if the frame includes both first recovery data for forward error correction of at least the data portion of the frame and second recovery data for forward error correction of at least the data portion, replacing the second recovery data in the frame with padding and decoding at least the data portion using the first recovery data and the second recovery data; and
means for outputting the decoded data portion.
45. An apparatus including:
means for receiving at least one data stream; and
means for extracting a frame from the at least one data stream, the frame including at least a data portion, recovery data and padding;
means for modifying the frame by replacing the padding with predefined padding values; and
means for performing error correction for the modified frame using the recovery data.
PCT/EP2010/051036 2010-01-28 2010-01-28 Error correction based on replacing padding bits by additional parity check bits WO2011091850A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2010/051036 WO2011091850A1 (en) 2010-01-28 2010-01-28 Error correction based on replacing padding bits by additional parity check bits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2010/051036 WO2011091850A1 (en) 2010-01-28 2010-01-28 Error correction based on replacing padding bits by additional parity check bits

Publications (1)

Publication Number Publication Date
WO2011091850A1 true WO2011091850A1 (en) 2011-08-04

Family

ID=42671794

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2010/051036 WO2011091850A1 (en) 2010-01-28 2010-01-28 Error correction based on replacing padding bits by additional parity check bits

Country Status (1)

Country Link
WO (1) WO2011091850A1 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014208988A1 (en) 2013-06-28 2014-12-31 Samsung Electronics Co., Ltd. Transmitter, receiver, and control method thereof
WO2014208986A1 (en) * 2013-06-27 2014-12-31 Samsung Electronics Co., Ltd. Data structure for physical layer encapsulation, data structure generating apparatus and method thereof
WO2015016665A1 (en) * 2013-08-01 2015-02-05 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
WO2015175162A1 (en) * 2014-05-12 2015-11-19 Lattice Semiconductor Corporation Error detection and mitigation in video channels
US20150373518A1 (en) * 2013-02-27 2015-12-24 Sony Corporation Relay device, method and computer program
CN105993179A (en) * 2013-12-03 2016-10-05 索尼公司 Data processing device and data processing method
RU2663205C2 (en) * 2013-12-04 2018-08-02 Сони Корпорейшн Data processing device and method
KR20190112689A (en) * 2019-09-20 2019-10-07 삼성전자주식회사 Transmitter, receiver and controlling method thereof
CN111628851A (en) * 2015-04-20 2020-09-04 韩国电子通信研究院 Broadcast signal frame generating apparatus and broadcast signal frame generating method
KR20200144087A (en) * 2019-09-20 2020-12-28 삼성전자주식회사 Transmitter, receiver and controlling method thereof
CN112737597A (en) * 2020-09-30 2021-04-30 北京空间飞行器总体设计部 Multi-rate LDPC coding method with variable frame length and suitable for deep space communication
KR20210058802A (en) * 2020-12-18 2021-05-24 삼성전자주식회사 Transmitter, receiver and controlling method thereof
WO2021199690A1 (en) * 2020-04-02 2021-10-07 三菱電機株式会社 Error-correction encoding device, error-correction decoding device, control circuit, storage medium, error-correction encoding method, and error-correction decoding method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07321668A (en) * 1994-05-25 1995-12-08 Nippon Telegr & Teleph Corp <Ntt> High efficiency data transmission storage device
US5650825A (en) * 1995-03-31 1997-07-22 Matsushita Electric Corporation Of America Method and apparatus for sending private data instead of stuffing bits in an MPEG bit stream
US5706396A (en) * 1992-01-27 1998-01-06 Deutsche Thomson-Brandt Gmbh Error protection system for a sub-band coder suitable for use in an audio signal processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5706396A (en) * 1992-01-27 1998-01-06 Deutsche Thomson-Brandt Gmbh Error protection system for a sub-band coder suitable for use in an audio signal processor
JPH07321668A (en) * 1994-05-25 1995-12-08 Nippon Telegr & Teleph Corp <Ntt> High efficiency data transmission storage device
US5650825A (en) * 1995-03-31 1997-07-22 Matsushita Electric Corporation Of America Method and apparatus for sending private data instead of stuffing bits in an MPEG bit stream

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11871324B2 (en) 2013-02-27 2024-01-09 Sony Group Corporation Relay device, method and computer program
US20150373518A1 (en) * 2013-02-27 2015-12-24 Sony Corporation Relay device, method and computer program
US20180098207A1 (en) * 2013-02-27 2018-04-05 Sony Corporation Relay device, method and computer program
US11082825B2 (en) 2013-02-27 2021-08-03 Sony Corporation Relay device, method and computer program
US9888370B2 (en) * 2013-02-27 2018-02-06 Sony Corporation Relay device, method and computer program
US11677867B2 (en) 2013-06-24 2023-06-13 Samsung Electronics Co., Ltd. Data structure for physical layer encapsulation
US9633053B2 (en) 2013-06-27 2017-04-25 Samsung Electronics Co., Ltd. Data structure for physical layer encapsulation
WO2014208986A1 (en) * 2013-06-27 2014-12-31 Samsung Electronics Co., Ltd. Data structure for physical layer encapsulation, data structure generating apparatus and method thereof
US10827045B2 (en) 2013-06-27 2020-11-03 Samsung Electronics Co., Ltd. Data structure for physical layer encapsulation
EP3011750A4 (en) * 2013-06-28 2017-01-18 Samsung Electronics Co., Ltd. Transmitter, receiver, and control method thereof
CN110708611A (en) * 2013-06-28 2020-01-17 三星电子株式会社 Transmitter, receiver, and control method thereof
KR20150002189A (en) * 2013-06-28 2015-01-07 삼성전자주식회사 Transmitter, receiver and controlling method thereof
CN110708611B (en) * 2013-06-28 2021-04-23 三星电子株式会社 Transmitter, receiver, and control method thereof
CN110808801A (en) * 2013-06-28 2020-02-18 三星电子株式会社 Transmitter, receiver, and control method thereof
US10225116B2 (en) 2013-06-28 2019-03-05 Samsung Electronics Co., Ltd. Transmitter, receiver, and control method thereof regarding transmission packet header
KR102025878B1 (en) 2013-06-28 2019-09-26 삼성전자주식회사 Transmitter, receiver and controlling method thereof
WO2014208988A1 (en) 2013-06-28 2014-12-31 Samsung Electronics Co., Ltd. Transmitter, receiver, and control method thereof
CN105359535B (en) * 2013-06-28 2019-12-10 三星电子株式会社 Transmitter
US9800444B2 (en) 2013-08-01 2017-10-24 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
US9571127B2 (en) 2013-08-01 2017-02-14 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
WO2015016665A1 (en) * 2013-08-01 2015-02-05 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
US10142147B2 (en) 2013-08-01 2018-11-27 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
RU2660837C2 (en) * 2013-12-03 2018-07-10 Сони Корпорейшн Data processing device and data processing method
US10582272B2 (en) 2013-12-03 2020-03-03 Sony Corporation Data processing device and data processing method for processing a stream
EP3079369A4 (en) * 2013-12-03 2017-04-19 Sony Corporation Data processing device and data processing method
CN105993179A (en) * 2013-12-03 2016-10-05 索尼公司 Data processing device and data processing method
JPWO2015083542A1 (en) * 2013-12-03 2017-03-16 ソニー株式会社 Data processing apparatus and data processing method
RU2663205C2 (en) * 2013-12-04 2018-08-02 Сони Корпорейшн Data processing device and method
WO2015175162A1 (en) * 2014-05-12 2015-11-19 Lattice Semiconductor Corporation Error detection and mitigation in video channels
CN111628851A (en) * 2015-04-20 2020-09-04 韩国电子通信研究院 Broadcast signal frame generating apparatus and broadcast signal frame generating method
CN111628851B (en) * 2015-04-20 2023-08-29 韩国电子通信研究院 Broadcast signal frame generating apparatus and broadcast signal frame generating method
KR20190112689A (en) * 2019-09-20 2019-10-07 삼성전자주식회사 Transmitter, receiver and controlling method thereof
KR102255462B1 (en) 2019-09-20 2021-05-24 삼성전자주식회사 Transmitter, receiver and controlling method thereof
KR20200144087A (en) * 2019-09-20 2020-12-28 삼성전자주식회사 Transmitter, receiver and controlling method thereof
KR102195376B1 (en) 2019-09-20 2020-12-28 삼성전자주식회사 Transmitter, receiver and controlling method thereof
WO2021199690A1 (en) * 2020-04-02 2021-10-07 三菱電機株式会社 Error-correction encoding device, error-correction decoding device, control circuit, storage medium, error-correction encoding method, and error-correction decoding method
JPWO2021199690A1 (en) * 2020-04-02 2021-10-07
JP7051018B2 (en) 2020-04-02 2022-04-08 三菱電機株式会社 Error correction coding device, error correction decoding device, control circuit, storage medium, error correction coding method and error correction decoding method
CN112737597A (en) * 2020-09-30 2021-04-30 北京空间飞行器总体设计部 Multi-rate LDPC coding method with variable frame length and suitable for deep space communication
KR20210058802A (en) * 2020-12-18 2021-05-24 삼성전자주식회사 Transmitter, receiver and controlling method thereof
KR102308914B1 (en) 2020-12-18 2021-10-05 삼성전자주식회사 Transmitter, receiver and controlling method thereof

Similar Documents

Publication Publication Date Title
WO2011091850A1 (en) Error correction based on replacing padding bits by additional parity check bits
US10666998B2 (en) Generating control information for use in transmission with a multimedia stream to an audiovisual device
US11374996B2 (en) Apparatus and method for transmitting or receiving broadcast signal
US8411737B2 (en) Transmission of physical layer signaling in a broadcast system
TWI501579B (en) Receiver and receiving method for receiving data in a broadcast system using incremental redundancy received through a unicast system
US8891465B2 (en) Digital broadcasting transmitter, digital broadcasting receiver, and methods for configuring and processing a stream for same
US20100085985A1 (en) Transmission of Physical Layer Signaling in a Broadcast System
EP3220593A1 (en) Broadcasting signal transmission device, broadcasting signal reception device, broadcasting signal transmission method, and broadcasting signal reception method
US9838748B2 (en) Transmitting apparatus and receiving apparatus, and signal processing method thereof
EP3220649A1 (en) Broadcasting signal transmission device, broadcasting signal reception device, broadcasting signal transmission method, and broadcasting signal reception method
US20100086087A1 (en) Transmission Enhancements for Physical Layer Transmission
US10601445B2 (en) Wireless transport framework with uncoded transport tunneling
EP3255858A1 (en) Broadcast signal transmitting device, broadcast signal receiving device, broadcast signal transmitting method, and broadcast signal receiving method
JP2005333629A (en) Super framing error coding in digital audio broadcasting system
CA2762784A1 (en) Digital broadcast transmitter, digital broadcast receiver, and methods for configuring and processing streams thereof
EP3223517B1 (en) Broadcast signal tranmission device, broadcast signal reception device, broadcast signal tranmission method, and broadcast signal reception method
KR20160052313A (en) Transmitting apparatus and receiving apparatus and signal processing method thereof
EP3214774A1 (en) Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method
US9231807B2 (en) Transmitting apparatus, receiving apparatus and control methods thereof
EP3247085A1 (en) Broadcast signal transmission apparatus, broadcast signal receiving apparatus, broadcast signal transmission method, and broadcast signal receiving method
US20150033279A1 (en) Transmitting apparatus, receiving apparatus and control methods thereof
EP3217621A1 (en) Broadcasting signal transmission device, broadcasting signal reception device, broadcasting signal transmission method, and broadcasting signal reception method
US7877663B2 (en) Forward error correction decoders
US20210185113A1 (en) Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method of transmitting broadcast signals and method of receiving broadcast signals
US9379843B2 (en) Transmitting apparatus and receiving apparatus and signal processing method thereof

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10703433

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10703433

Country of ref document: EP

Kind code of ref document: A1