# LDPC FEC Code Extension for Unequal Error Protection in DVB-T2 System: Design and Evaluation

Authors: Lukasz Kondrad; Imed Bouazizi; Moncef Gabbouj
Journal: International Journal of Digital Multimedia Broadcasting
 (2012)

---

## Abstract

The Digital Video Broadcasting organisation has recently introduced the second generation of terrestrial broadcast transmission standards, DVB-T2. The newly introduced tools ensure significant gain in performance of DVB-T2 compared to the first generation variant of the standard. One of these tools is the new physical layer concatenated forward error correction code. The inner among the concatenated codes is the Low-Density Parity Check code. The paper proposes a method to extend this code so varying coding strength inside one physical layer pipe of DVB-T2 is enabled in a backward compatible way. As consequence, unequal error protection transmission scheme at a physical layer of DVB-T2 can be efficiently deployed. The paper provides a step-by-step description of the design procedure of the extension. Moreover, the modification to the processing chain and the framing structure of DVB-T2, that ensures backward compatibility to the legacy system, is provided. The proposed method is evaluated under AWGN channel and TU6 channel. Experiments performed on four different video sequences show significant improvements in quality of experience when the proposed extension is used to achieve UEP transmission.


---

## Body

## 1. Introduction

Unequal error protection (UEP) is a well-known technique in multimedia communication used to selectively enhance robustness of transmitted data. The main idea behind UEP is to assign the amount of the protection data based on the relative importance of the protected data to the overall presentation. Scalable media streams [1, 2] inherently contain data with different levels of importance. Thus, they present an ideal use case for UEP transmission schemes. For example, a base layer data of a H.264/SVC video stream is typically FEC coded at a higher protection level compared to an enhancement layer (EL) data of the same stream. This is due to the fact that an error-free enhancement layer data is of no use to an H.264/SVC decoder, if the corresponding base layer (BL) data was corrupted during transmission.By using a UEP transmission scheme jointly with scalable multimedia encoders, graceful quality degradation can be achieved. Thus, a system that supports UEP transmission schemes allow for flexible quality of service configuration. A user with good reception conditions is able to consume a full quality service, while a user with bad reception conditions is still able to consume the service but at a lower quality (lower frame rate, smaller resolution, or lower fidelity). In a system that does not support UEP transmission schemes only one level of service quality is possible. As consequence, a strict tradeoff between bandwidth utilization and robustness of a transmitted date has to be made.Graceful degradation, which can be provided by employing a UEP transmission scheme, is a desired solution in broadcast transmission systems. This was recognised by DVB [3], an international consortium which develops standards for broadcast transmission. The system support for a UEP transmission scheme is one of the commercial requirements for the second generation of the DVB standard for handheld devices [4]. Moreover, DVB adopted H.264/SVC as one of the video codecs used for broadcast services [5]. However, none of the existing DVB standards natively supports UEP transmission of scalable media.DVB-T2 [6] could benefit from a method that would allow a UEP transmission scheme. The DVB-T2 system was designed to provide service-specific robustness, which could be used to implement a UEP transmission scheme for scalable media transmission. However, constraints imposed by the DVB-T2 standard make a straightforward use of the service-specific robustness for a UEP transmission scheme limited. This is mainly due to the fact that DVB-T2 receivers are forced to decode only a single data physical layer pipe (PLP) at any point in time. Thus, different layers of a scalable media cannot be transmitted over separate PLPs. Furthermore, FEC code rate manipulation in one PLP cannot be done with sufficient flexibility, hence a UEP transmission scheme cannot be applied.A UEP transmission scheme could be applied on the upper layers by deploying one of the FEC techniques described in [7]. For example, a UEP transmission scheme on layers above the physical layer was proved to be beneficial when applied to DVB-H transmission system [8, 9]. However, due to the nature of the physical layer FEC code defined in DVB-T2, the upper layer FEC would require operation on large data portions in order to be effective. This would lead to higher system latency and would have a significant impact on a channel zapping delay. Furthermore, introducing additional redundancy at the upper layers may not be efficient from a bandwidth utilization point of view.This paper describes the design of LDPC code extension that is applicable to the native DVB-T2 LDPC codes. The proposed extension overcomes the limitation of the DVB-T2 system and allows flexible service component-specific robustness at the physical layer of DVB-T2 in a backwards compatible way. By using the proposed extension, varying coding strength inside one PLP of the DVB-T2 system is possible. As a result, the UEP transmission scheme can be implemented and integrated in the DVB-T2 system in an effective and cost-efficient manner. This paper extends the work introduced in [10] by providing a detailed design, additional extensions, and an extensive performance evaluation. In addition, a feasible use case for the extension, that is, a UEP transmission scheme, is presented and benefits of such use case when compared to standard DVB-T2 transmission scheme are thoroughly evaluated.The remainder of the paper is organised as follows. In the next section an insight into LDPC codes is given. Section3 describes the framing structure and LDPC codes specified by the DVB-T2 system. The design of the proposed extension and its impact on the processing chain of the DVB-T2 standard are discussed in Section 4. Simulation results demonstrating the performance of the proposed method over AWGN and TU6 channels are presented in Section 5. In Section 6 the use of the extension to provide UEP in DVB-T2 transmission system is presented. Finally, Section 7 concludes the paper.


## 2. Low-Density Parity Check Code

The Low Density Parity Check (LDPC) code family [11, 12] is among the better performing error correction coding technologies among modern channel coding schemes. For the last decade, more sophisticated classes of LDPC codes have been developed by members of the research community, each offering advances in one area or another. It was shown that LDPC codes can compete with turbo codes of the same length [13, 14].An LDPC code is a linear block code characterised by a sparsem by n parity check matrix H. A matrix is said to be sparse if fewer than half of the elements are nonzero. Such a parity check matrix corresponds to a code with a design rate r=(n-m)/n, assuming all rows of the matrix are independent.Using an LDPC code, a block ofk information bits can be encoded in a code word of size n, where k=n-m. For the encoding procedure, typically a generator matrix G is determined based on a parity matrix H, where HG=0. The generator matrix G does not necessarily have to be a sparse matrix, which can increase the complexity of the encoding procedure. However, some of the LDPC code families allow encoding based on a parity check matrix H, and hence reduce the complexity of the encoding process [15]. One of such codes is the extended irregular repeat-accumulate (eIRA) family of LDPC codes [16]. eIRA codes are discussed in more details in Section 3.An iterative message-passing decoding algorithm based on the concept of belief propagation [17] is generally utilized to decode an LDPC code. The details of such a decoding algorithm can be found in [18]. If the Tanner graph [19] does not have any cycles, such message passing algorithms compute exact probabilities [17]. Otherwise, the decoding algorithm computes only approximate solutions, yet provides an effective decoding capability [20].LDPC codes can be divided into two groups, regular and irregular LDPC codes. A code is called regular if all degrees of the variable nodes are equal and also all degrees of the check nodes are equal. In an irregular code each variable node and each check node can have different degrees assigned. In this paper, we will work with irregular LDPC codes. For the theoretical analysis such codes can be represented by the pair of degree distribution polynomials (λ(x), ρ(x)) and the length of the code n.(1)λ(x):=∑i=2dvλixi-1,ρ(x):=∑i=2dcρixi-1,
where λi is the fraction of edges in the Tanner graph connected to degree-i variable nodes, ρi is the fraction of edges connected to degree-i check nodes, and λ(1)=ρ(1)=1. dv and dc denote the maximum degree for variable nodes and check nodes, respectively. The degree distribution pair can be used to predict a decoding threshold for the LDPC code.


## 3. DVB-T2

This section provides a brief introduction to the DVB-T2 system and is divided into two parts. Section3.1 provides an overview of a DVB-T2 processing chain. Section 3.2 gives a deeper insight into the LDPC codes specified by the DVB-T2 standard.


### 3.1. Background

The DVB-T2 physical layer data channel is divided into logical entities called the physical layer pipe (PLP). Each PLP carries one logical data stream. An example of such a logical data stream would be an audio-visual multimedia stream along with the associated signalling information. The PLP architecture is designed to be flexible. Arbitrary adjustments to robustness and capacity of each PLP can be easily done. Each PLP’s processing chain consists of four modules: Input Processing, Bit Interleaved Coding and Modulation (BICM), Frame Builder, and Modulator. The task of input processing module is to map the input data into Base Band (BB) frames. A BB frame comprises BB header, data field carrying the input data, optional in-band signalling, and padding, if necessary. Each BB frame iskbch bits long and the size of BB frame does not change over time in a given PLP. BB frames are then passed to the BICM module. Among other things, the BICM module is handling FEC encoding, where a serial concatenation of two binary linear FEC codes is used: a Bose-Chaudhuri-Hocquenghem (BCH) code [21] as the outer code and a LDPC code as the inner code. By appending the FEC parity bits at the end of the BB frame an FEC frame is created (Figure 1). The FEC frame is characterised by a fixed size nldpc (16200 bits or 64800 bits) irrespective of the used FEC code rate. The desired code rate is achieved by setting appropriate size of the BB frame, that is, kbch value. After the FEC frame is created, a frame builder module maps it to a physical layer frame. The physical layer frame is then interleaved and mapped to OFDM symbols. The last module, the Modulator, is responsible for modulation and transmission.Figure 1
FEC frame structure in the DVB-T2 system.


### 3.2. FEC Codes

The DVB-T2 system was designed to operate in the presence of high levels of noise and interference. It can be said that choosing the proper FEC code was one of the key components to achieve good performance by the terrestrial system. The DVB group opted for the use of a well-established and verified LDPC code supported by an additional BCH code. The BCH code was deployed to eliminate long error floors typical for LDPC codes at low error rates.The LDPC codes deployed in the DVB-T2 system belong to the eIRA codes subclass [16] and are characterised by low-complexity encoding and shorter error-rate floors compared to other irregular LDPC codes. The parity check matrix of a eIRA code is constrained to be in the form:(2)H=[H1H2],
where H1 is an m by k sparse matrix and H2 is an m by m staircase lower triangular matrix.The form of the matrixH2 was designed to avoid degree two cycles in the Tanner graph representation. Additionally, the characteristic of the H2 matrix allows efficient encoding. A generator matrix G of an eIRA code can be expressed as(3)G=[IH1TH2-T],
where matrix H2-T corresponds to a differential encoder whose transfer function is 1/(1⊕D). In the transfer function ⊕ denotes exclusive or operation and D stands for a 1 bit register. Based on this, the FEC encoding in DVB-T2 can be performed in two steps. First, the output of the BCH encoder is multiplied by a sparse matrix H1T producing an intermediate result. Secondly, the intermediate result is differentially encoded by a H2-T matrix generating the parity bits, which are combined with the output of the BCH encoder into a systematic code word.To make the encoding of LDPC codes in DVB-T2 more efficient, matrixH1 was designed to be in a quasicyclic form. Such a representation allows implementation of an encoder with shift register circuits [22], as well as reducing the memory storage requirements. Matrix H1 is divided into kldpc/360 groups. In each group all columns have the same degree distribution dvg. The positions of ones in columns are given for the first column in each group. For the remaining 359 columns the position of ones in each group is calculated in reference to the first column of the group using (Algorithm 1) where rji is the position of jth one in the ith column from the group and Q is a code rate dependent constant specified by the DVB-T2 standard.Algorithm 1
(1)fori=1 to 359 do(2)forj=1 to dvgdo(3)rji←(rj0+i×Q)mod(m)(4)end for(5)end forLDPC decoding in DVB-T2 is based on a standard iterative exchange of information among variable nodes and check nodes, as described in Section2.


## 3.1. Background

The DVB-T2 physical layer data channel is divided into logical entities called the physical layer pipe (PLP). Each PLP carries one logical data stream. An example of such a logical data stream would be an audio-visual multimedia stream along with the associated signalling information. The PLP architecture is designed to be flexible. Arbitrary adjustments to robustness and capacity of each PLP can be easily done. Each PLP’s processing chain consists of four modules: Input Processing, Bit Interleaved Coding and Modulation (BICM), Frame Builder, and Modulator. The task of input processing module is to map the input data into Base Band (BB) frames. A BB frame comprises BB header, data field carrying the input data, optional in-band signalling, and padding, if necessary. Each BB frame iskbch bits long and the size of BB frame does not change over time in a given PLP. BB frames are then passed to the BICM module. Among other things, the BICM module is handling FEC encoding, where a serial concatenation of two binary linear FEC codes is used: a Bose-Chaudhuri-Hocquenghem (BCH) code [21] as the outer code and a LDPC code as the inner code. By appending the FEC parity bits at the end of the BB frame an FEC frame is created (Figure 1). The FEC frame is characterised by a fixed size nldpc (16200 bits or 64800 bits) irrespective of the used FEC code rate. The desired code rate is achieved by setting appropriate size of the BB frame, that is, kbch value. After the FEC frame is created, a frame builder module maps it to a physical layer frame. The physical layer frame is then interleaved and mapped to OFDM symbols. The last module, the Modulator, is responsible for modulation and transmission.Figure 1
FEC frame structure in the DVB-T2 system.


## 3.2. FEC Codes

The DVB-T2 system was designed to operate in the presence of high levels of noise and interference. It can be said that choosing the proper FEC code was one of the key components to achieve good performance by the terrestrial system. The DVB group opted for the use of a well-established and verified LDPC code supported by an additional BCH code. The BCH code was deployed to eliminate long error floors typical for LDPC codes at low error rates.The LDPC codes deployed in the DVB-T2 system belong to the eIRA codes subclass [16] and are characterised by low-complexity encoding and shorter error-rate floors compared to other irregular LDPC codes. The parity check matrix of a eIRA code is constrained to be in the form:(2)H=[H1H2],
where H1 is an m by k sparse matrix and H2 is an m by m staircase lower triangular matrix.The form of the matrixH2 was designed to avoid degree two cycles in the Tanner graph representation. Additionally, the characteristic of the H2 matrix allows efficient encoding. A generator matrix G of an eIRA code can be expressed as(3)G=[IH1TH2-T],
where matrix H2-T corresponds to a differential encoder whose transfer function is 1/(1⊕D). In the transfer function ⊕ denotes exclusive or operation and D stands for a 1 bit register. Based on this, the FEC encoding in DVB-T2 can be performed in two steps. First, the output of the BCH encoder is multiplied by a sparse matrix H1T producing an intermediate result. Secondly, the intermediate result is differentially encoded by a H2-T matrix generating the parity bits, which are combined with the output of the BCH encoder into a systematic code word.To make the encoding of LDPC codes in DVB-T2 more efficient, matrixH1 was designed to be in a quasicyclic form. Such a representation allows implementation of an encoder with shift register circuits [22], as well as reducing the memory storage requirements. Matrix H1 is divided into kldpc/360 groups. In each group all columns have the same degree distribution dvg. The positions of ones in columns are given for the first column in each group. For the remaining 359 columns the position of ones in each group is calculated in reference to the first column of the group using (Algorithm 1) where rji is the position of jth one in the ith column from the group and Q is a code rate dependent constant specified by the DVB-T2 standard.Algorithm 1
(1)fori=1 to 359 do(2)forj=1 to dvgdo(3)rji←(rj0+i×Q)mod(m)(4)end for(5)end forLDPC decoding in DVB-T2 is based on a standard iterative exchange of information among variable nodes and check nodes, as described in Section2.


## 4. The Proposed Code Extension Method

The DVB-T2 system provides limited possibilities to manipulate code rates in the FEC encoding subsystem. This paper proposes a method which allows service-component-specific robustness at the physical layer of DVB-T2 in a backwards compatible way and the same overcomes the limitation. The design of the LDPC code extension is split into two steps. First, in Section4.1, the question of how to introduce additional parity using a framing structure of the DVB-T2 system is answered. In Section 4.2 the design procedure of the extension FEC code matrix is given.


### 4.1. Concept

Pruning is one of the methods used for constructing variable-rate LDPC codes. The method changes code rate by eliminating variable nodes in the bipartite Tanner graph, which in turn modifies the check degree of connected check nodes. We employ the idea to change the code rates of the native DVB-T2 LDPC codes.We propose the following modification to the processing chain and the framing structure of the DVB-T2 system. The supplementary LDPC encoder, which calculates the additional repair bits, is placed between the Input Processing module and the BICM module in the PLP processing chain. The supplementary LDPC encoder calculatesmext parity bits over the first kext bits of a BB frame created by the Input Processing module. An extension parity check matrix Hext is used to calculate those mext parity bits. The parity check matrix Hext is designed in the way that next=kext+mext is always smaller than or equal to size of a BB frame equal to kbch. The Input Preprocessor module, aware that the extension is used, decreases the size of Data Field in each BB frame that at least mext padding bits are present in each BB frame. As consequence, the mext repair bits generated by the LDPC extension encoder can be placed over the last mext padding bits of the BB frame. Such processed BB frame is then passed to the BICM module. The BICM module operates according to the DVB-T2 standard. The structure of the modified FEC frame is presented in Figure 2. A receiver that supports the proposed extension uses the extension parity bits and the native DVB-T2 LDPC parity bits together. The receiver creates a combined parity check matrix Hcom as presented on Figure 3. 3 is composed with Hext, which is the parity check matrix used by the supplementary LDPC encoder, Z matrix, which is a zero matrix, and Ht2, which is the parity check matrix of the native DVB-T2 LDPC code. A legacy receiver treats the mext repair bits of the FEC frame as padding bits of BB frame and operates according to the DVB-T2 standard. Due to this the backward compatibility to the legacy DVB-T2 system is ensured.Figure 2
Structure of FEC frame carrying additional LDPC parity bits.Figure 3
The structure of a combined parity check matrixHcom.


### 4.2. Design

In this subsection a step-by-step description of the design of Hext matrix is presented. The proposed method may not provide optimal results. In the Hcom matrix, the parity check matrix Ht2 and the zero matrix Z are given. Therefore, the goal is to find the degree distribution for the parity matrix Hext that results in favourable error correction performance for the extended DVB-T2 LDPC code. Additionally, the parity matrix Hext should meet the following two requirements.First, the parity matrixHext should be divisible into Q number of groups having the exact amount of columns, where all columns in the group have the same degree. This ensures that the Hext matrix will be in a quasicyclic form which results in low complexity encoding.It is a known issue [16] that during the decoding process of an LDPC code, the log-likelihood ratio [18] of low degree variable nodes converges slower than that of the variable nodes with higher degrees. On the other hand, high degree check nodes are not desired in LDPC codes, since the more variables are involved in a check node, the more probable the check is to fail [13]. Therefore, to balance between those two trade-offs, low degree variable nodes are assigned to the rows of a parity matrix corresponding to redundant parity bits. As a result, assigning a degree equal to one to the last mext columns of the parity matrix Hext becomes the second constraint.Taking into account the above-mentioned constraints, Algorithm2 in conjunction with a numerical optimization algorithm, for example, Differential Evolution [23], can be used to determine the favourable degree distributions of the Hcom matrix.Algorithm 2
(1) Assign degree 1 to the lastmext columns of the Hextmatrix(2) Assign arbitrary degrees to each of theQ groups oftheHext matrix.(3) Calculate a degree distribution of the combined paritymatrixHcom(4) Calculate a decoding threshold for a given degreedistribution ofHcomTo calculate the degree distribution of the combined parity matrixHcom (4) can be used(4)λi=EdviE,ρi=EdciE.
In these equations E is the number of all edges in a Tanner graph representation of the matrix Hcom. Edvi and Edci represent the number of all edges outgoing from variable nodes and check nodes with degree i, respectively. To test the theoretical decoding threshold of the combined parity matrix Hcom, the density evolution technique was employed [24]. An alternative method, which is not discussed in this paper, to find a favorable Hcom matrix structure is to use the extrinsic information transfer (EXIT) chart technique [25, 26].After finding the favourable degree distribution ofHcom, the next step is to create the parity matrix Hext. Due to the fact that Ht2 and Z are known, and we know how many ones are in each group of Hext, we can calculate the degree distribution of Hext. In order to create Hext based on its degree distribution we use protograph expansion technique [27]. A protograph is a small graph which by copy and permute technique is utilised to create a larger graph. If a target matrix is to have dimension mt by nt then the protograph dimension shall be mp=mt/q and np=nt/q, where q is the periodicity of the target matrix. When the protograph is copied q times, edges of individual replicas need to be permuted among q replicas. However, the permutation of the edges has to follow some constraints so the derived matrix would preserve the decoding threshold properties of the protograph and would have a quasicyclic structure. For example, if a variable node vni is connected to a check node cnj in the protograph, the variable node vnj in a replica can only connect to one of the q replicas of the check node cnj. The periodicity of Hext is the same as in Ht2, that means q is equal to 360 in our case. Based on the degree distribution of Hext we create the protograph by using a progressive edge-growth technique [28]. Next, by copy and permute technique combined with Algorithm 1, a protograph is expanded to Hext. Additionally, to improve decoding performance of the code, permutation selection is carried out in such a way that at least length 4 cycles in the combined parity matrix Hcom are not present [13].


## 4.1. Concept

Pruning is one of the methods used for constructing variable-rate LDPC codes. The method changes code rate by eliminating variable nodes in the bipartite Tanner graph, which in turn modifies the check degree of connected check nodes. We employ the idea to change the code rates of the native DVB-T2 LDPC codes.We propose the following modification to the processing chain and the framing structure of the DVB-T2 system. The supplementary LDPC encoder, which calculates the additional repair bits, is placed between the Input Processing module and the BICM module in the PLP processing chain. The supplementary LDPC encoder calculatesmext parity bits over the first kext bits of a BB frame created by the Input Processing module. An extension parity check matrix Hext is used to calculate those mext parity bits. The parity check matrix Hext is designed in the way that next=kext+mext is always smaller than or equal to size of a BB frame equal to kbch. The Input Preprocessor module, aware that the extension is used, decreases the size of Data Field in each BB frame that at least mext padding bits are present in each BB frame. As consequence, the mext repair bits generated by the LDPC extension encoder can be placed over the last mext padding bits of the BB frame. Such processed BB frame is then passed to the BICM module. The BICM module operates according to the DVB-T2 standard. The structure of the modified FEC frame is presented in Figure 2. A receiver that supports the proposed extension uses the extension parity bits and the native DVB-T2 LDPC parity bits together. The receiver creates a combined parity check matrix Hcom as presented on Figure 3. 3 is composed with Hext, which is the parity check matrix used by the supplementary LDPC encoder, Z matrix, which is a zero matrix, and Ht2, which is the parity check matrix of the native DVB-T2 LDPC code. A legacy receiver treats the mext repair bits of the FEC frame as padding bits of BB frame and operates according to the DVB-T2 standard. Due to this the backward compatibility to the legacy DVB-T2 system is ensured.Figure 2
Structure of FEC frame carrying additional LDPC parity bits.Figure 3
The structure of a combined parity check matrixHcom.


## 4.2. Design

In this subsection a step-by-step description of the design of Hext matrix is presented. The proposed method may not provide optimal results. In the Hcom matrix, the parity check matrix Ht2 and the zero matrix Z are given. Therefore, the goal is to find the degree distribution for the parity matrix Hext that results in favourable error correction performance for the extended DVB-T2 LDPC code. Additionally, the parity matrix Hext should meet the following two requirements.First, the parity matrixHext should be divisible into Q number of groups having the exact amount of columns, where all columns in the group have the same degree. This ensures that the Hext matrix will be in a quasicyclic form which results in low complexity encoding.It is a known issue [16] that during the decoding process of an LDPC code, the log-likelihood ratio [18] of low degree variable nodes converges slower than that of the variable nodes with higher degrees. On the other hand, high degree check nodes are not desired in LDPC codes, since the more variables are involved in a check node, the more probable the check is to fail [13]. Therefore, to balance between those two trade-offs, low degree variable nodes are assigned to the rows of a parity matrix corresponding to redundant parity bits. As a result, assigning a degree equal to one to the last mext columns of the parity matrix Hext becomes the second constraint.Taking into account the above-mentioned constraints, Algorithm2 in conjunction with a numerical optimization algorithm, for example, Differential Evolution [23], can be used to determine the favourable degree distributions of the Hcom matrix.Algorithm 2
(1) Assign degree 1 to the lastmext columns of the Hextmatrix(2) Assign arbitrary degrees to each of theQ groups oftheHext matrix.(3) Calculate a degree distribution of the combined paritymatrixHcom(4) Calculate a decoding threshold for a given degreedistribution ofHcomTo calculate the degree distribution of the combined parity matrixHcom (4) can be used(4)λi=EdviE,ρi=EdciE.
In these equations E is the number of all edges in a Tanner graph representation of the matrix Hcom. Edvi and Edci represent the number of all edges outgoing from variable nodes and check nodes with degree i, respectively. To test the theoretical decoding threshold of the combined parity matrix Hcom, the density evolution technique was employed [24]. An alternative method, which is not discussed in this paper, to find a favorable Hcom matrix structure is to use the extrinsic information transfer (EXIT) chart technique [25, 26].After finding the favourable degree distribution ofHcom, the next step is to create the parity matrix Hext. Due to the fact that Ht2 and Z are known, and we know how many ones are in each group of Hext, we can calculate the degree distribution of Hext. In order to create Hext based on its degree distribution we use protograph expansion technique [27]. A protograph is a small graph which by copy and permute technique is utilised to create a larger graph. If a target matrix is to have dimension mt by nt then the protograph dimension shall be mp=mt/q and np=nt/q, where q is the periodicity of the target matrix. When the protograph is copied q times, edges of individual replicas need to be permuted among q replicas. However, the permutation of the edges has to follow some constraints so the derived matrix would preserve the decoding threshold properties of the protograph and would have a quasicyclic structure. For example, if a variable node vni is connected to a check node cnj in the protograph, the variable node vnj in a replica can only connect to one of the q replicas of the check node cnj. The periodicity of Hext is the same as in Ht2, that means q is equal to 360 in our case. Based on the degree distribution of Hext we create the protograph by using a progressive edge-growth technique [28]. Next, by copy and permute technique combined with Algorithm 1, a protograph is expanded to Hext. Additionally, to improve decoding performance of the code, permutation selection is carried out in such a way that at least length 4 cycles in the combined parity matrix Hcom are not present [13].


## 5. Evaluation of the Proposed Extended Codes

In order to evaluate the LDPC code extension method proposed in Section4, three extensions to the native DVB-T2 codes have been designed. The native DVB-T2 LDPC codes with code rates 3/5, 3/4, and 4/5 were extended to produce code rates 1/3, 1/2, and 2/3, respectively. Through the paper, these three extended DVB-T2 LDPC codes are referred to as 3/5→1/3, 3/4→1/2, and 4/5→2/3. The parameters of the extension matrix Hext for the extended DVB-T2 LDPC codes are presented in Table 1. Additionally, Table 2 presents the positions of ones in the first column of a group, which in conjunction with Algorithm 1 from Section 3 allows to build the Hext matrices used during the evaluation process. The value of Q that is required by the algorithm is given in Table 1.Table 1
The parameters of the extension matrixHext for the three tested use cases.
kextnextQ3/5→1/354009360263/4→1/2720011520324/5→2/3108001224034Table 2
Addresses of parity bit accumulators forHext.
(a)3/5→1/3(b)3/4→1/2(c)4/5→2/35283556109296415211341978286936461381309326811478336965872755290729111551237362598166311723505203439441112452673385619921833122496297819813318575325830901382338237275116882031152114959128576031156185281772203365913072257312914642623260165321088173183377365635481046395921021451156329719535548091246124820039024808333193294023547901324182527762119073320122432511713893138234905026573263739119162057637729251093398346408317914082642885345189059835957112961357The extended codes were implemented in a DVB-T2 physical layer simulator. The proper functioning of the DVB-T2 simulator was verified by comparing its performance results to the results presented in the DVB-T2 Implementation Guidelines [29]. Using the simulator, a set of simulations was performed to evaluate the extended DVB-T2 LDPC codes. In all simulations, maximum duration T2 frames (250 ms) comprising short FEC frames (16200 bits long) were used. The modulation parameters were set to 16 QAM, 8k FFT size, and 1/4 guard interval. P1 not-boosted pilot pattern was used, and constellation rotation was not applied. The simulations were conducted on two transmission channel models: an additive white Gaussian noise (AWGN) channel model and a TU6 80 Hz channel model [30], which accurately represents a moving receiver. The results considered were obtained from a transmission of 1800 FEC blocks. Error calculations were performed by averaging the residual error rates after FEC frame decoding process.Figures4, 5, and 6 present the obtained results. In each of these figures, the results for both the native (to be extended) DVB-T2 LDPC codes as well as the extended DVB-T2 LDPC codes, are plotted. Based on the obtained results, it can be observed that the proposed LDPC extension improves performance of the native DVB-T2 LDPC codes. Therefore, due to the extensions the limitation of DVB-T2 can be overcome and means to implement a UEP transmission scheme at the physical layer of DVB-T2 in backward compatible way are provided.Performance of LDPC codes over AWGN channel (a) and TU6 channel (b). The 3/5 and 1/2 curves show performance of the native DVB-T2 LDPC codes with the corresponding code rates. The3/5→1/3 curve shows performance of the native DVB-T2 LDPC with code rate 3/5 extended to the code rate 1/3 using the proposed method.
(a)
AWGN(b)
TU6Performance of LDPC codes over AWGN channel (a) and TU6 channel (b). The 1/2, 2/3, and 3/4 curves show performance of the native DVB-T2 LDPC codes with the corresponding code rates. The3/4→1/2 curve shows performance of the native DVB-T2 LDPC code with code rate 3/4 extended to the code rate 1/2 using the proposed method.
(a)
AWGN(b)
TU6Performance of LDPC codes over AWGN channel (a) and TU6 channel (b). The 2/3, 3/4, and 4/5 curves show performance of the native DVB-T2 LDPC codes with corresponding code rates. The3/4→1/2 curve shows performance of the native DVB-T2 LDPC code with the code rate 4/5 extended to code rate 2/3 using the proposed method.
(a)
AWGN(b)
TU6In a UEP transmission scheme, data, based on its importance, is divided into two or more protection levels. Next, each protection level has assigned different robustness, for example, by using different FEC code rates. In a EEP transmission scheme a single protection level is assigned to all transmitted data regardless of its importance. The comparison between the UEP transmission scheme and the EEP transmission scheme, under the constraint of an equal level of available bandwidth and thus using the same amount of protection data ensures fairness for the evaluation of the proposed extension. The two-protection-level UEP scheme from Section6 was used to calculate the resulting average code rate of the UEP transmission scheme. For example, bit rates of BL and EL for four sequences from Section 6 are presented in Table 3. As a result, for the calculation a BL to EL ratio was assumed to be 3/7. Three scenarios of UEP for the three extensions were analysed. In Scenario 1, the EL is protected by the native DVB-T2 LDPC code with the code rate 3/5 and the BL is protected by the extended DVB-T2 code 3/5→1/3. The resulting average code rate, which would correspond to code rate of EEP transmission, is approximately 1/2. In Scenario 2, the EL is protected by the native DVB-T2 LDPC code with the code rate 3/4 and the BL is protected by the extended DVB-T2 code 3/4→1/2. The resulting average code rate, which would correspond to code rate of EEP transmission, is approximately 2/3. In Scenario 3, the EL is protected by the native DVB-T2 LDPC code with the code rate 4/5 and the BL is protected by the extended DVB-T2 code 4/5→2/3. The resulting average code rate, which would correspond to code rate of EEP transmission, is approximately 3/4. The performance of the native DVB-T2 LDPC code at the calculated average code rates is also plotted in Figures 4, 5, and 6. Scalable codecs such as H.264/SVC produce bit-streams which is partitioned into layers that form a hierarchy. Thus, in order for a particular layer to be useful to the decoder, all layers it depends on also need to be available. In other words, if a scalable encoder produces one base layer and one enhancement layer in order for an enhancement layer to be useful in decoding, the base layer needs to be available to the decoder. Therefore, it is important to compare the results of UEP and EEP transmission schemes for base layer protection perspective. The significant performance gap between the native DVB-T2 LDPC code at the calculated average code rate, which corresponds to the BL and EL protection in the EEP transmission scheme, and that of the extended DVB-T2 LDPC code, which corresponds to the BL protection in the UEP transmission scheme, can be clearly observed. The improvement for the BL protection when the extension is used to deploy the UEP transmission scheme are summarized in Table 4 and amount up to more than 3 dB in Scenario 2. The gain can be reflected in practical quality improvements for the user which is showed in Section 6.Table 3
Bit rate [KBPS] of base layer (BL) and cumulative bit rate of base layer and enhancement layer (BL + EL) for four tested sequences.
CityCrewHarbourSoccerBL313,8306,7331,2300,0BL + EL1010,2991,2961,91075,8Table 4
Comparison of SNR value [dB] when BER 10-4 for Base Layer protection in UEP and EEP cases.
AWGNTU6EEPUEPDeltaEEPUEPDeltaScenario 15.54.80.78.27.50.7Scenario 29.36.72.512.89.53.3Scenario 310.59.70.814.613.70.9Figures5 and 6, additionally, plot simulation results for the native DVB-T2 LDPC codes that provide the same amount of repair data as the extended DVB-T2 LDPC codes. For example, the native DVB-T2 code 1/2 is equivalent to the extended code 3/4→1/2. It should be noted that the DVB-T2 standard does not specify code rate 1/3. It can be observed that the results achieved by the extended DVB-T2 LDPC codes slightly underperform compared to the respective native DVB-T2 LDPC codes. For convenience, performance of the native and the extended codes, for residual BER 10-4, are presented in Table 5. The extended codes performance is weakened due to constraints which are imposed by the backward-compatibility requirement. The matrix Hcom must contain the original code rate matrix Ht2. Therefore, the purpose of the extended codes is not to replace native DVB-T2 codes but to enable varying FEC protection for data transmitted over one PLP in a backward-compatible way. In other words the extended codes should be used only when a UEP transmission scheme is considered. If a EEP transmission scheme is deployed then the native codes should be utilized.Table 5
Comparison of the SNR value [dB] when BER 10-4 for the native and extended DVB-T2 codes.
1/22/3NativeExtendedDeltaNativeExtendedDeltaAWGN5.56.7−1.29.29.7−0.5TU68.29.5−1.312.713.7−1.0


## 6. Use Case for the Proposed Extended Codes

The main use case for the proposed extension is to allow UEP transmission over DVB-T2 system in a backward-compatible mode. Figure7 depicts partial high level block diagram of PLP processing chain, when the proposed extension is used to enable UEP transmission scheme. The Input Preprocessor module splits incoming data to high level protection and low level protection streams. Low level protection stream is processed by input processor in accordance with the standard, and BB frames kbch bits long are formed. For the high level protection stream, the input processor creates BB frames also kbch bits long. The kbch value depends on the code rate chosen for the given PLP. However, in case of high level BB frames input processor ensure that cumulative size of BB header, data, and in-band signalling does not exceed kext bits. The remaining space of the high level BB frame is filled with padding. The high level BB frames are next passed to the extension FEC encoder. The encoder calculate mext parity bits from the first kext bits of the high level BB frame. Next, the mext parity bits are placed over padding bits and form integral part of the high level BB frame. Such formed low and high level BB frames are multiplexed together and passed to BICM module. The BICM module operates according to the DVB-T2 standard. Both types of BB frames are encoded using the same native DVB-T2 FEC code. To ensure that receiver is able to differentiate between FEC frames, with the low level of protection and with the high level of protection, additional L1 signalling would be required. Legacy receiver processes high level and low level BB frames in the same way. For a receiver with the support of the extension low level BB frames are also processed in the standard way. However, for the decoding of the high level BB frames the combined matrix Hcom, Figure 3, is used.Figure 7
Partial high level block diagram of PLP processing chain when the proposed extension is used to enable UEP transmission scheme.We showed in Section5 that the proposed extensions strengthen the performance of the native DVB-T2 LDPC codes. We also mentioned that the main use case for the proposed LDPC extensions is to enable varying FEC protection for a data transmitted over one PLP in a backward-compatible way. In other words, the aim is to enable UEP of a service at physical layer of DVB-T2. Therefore, we present now the gain, in practical quality improvements from the user perspective, which can be achieved by employing UEP compared to EEP. For this purpose, we used four different video sequences, City, Crew, Harbour, and Soccer (the video sequences are publicly available). Each sequence was encoded and decoded using the H.264/SVC reference software [29]. The base layer (BL) has CIF (352×288) resolution and a frame rate of 15 fps. The enhancement layer (EL) has 4CIF (704×576) resolution and a frame rate of 30 fps. The resulting bit rates of encoded sequences are presented in Table 3. The PSNR values for the BL and EL are displayed in Table 6. In the UEP scheme, EL of H.264/SVC video streams were assigned to low protection level, that is, the native DVB-T2 LDPC code with code rate 3/4, and the BL of those H.264/SVC video streams were assigned to high level protection, that is, the extended DVB-T2 LDPC code with cde rate 3/4→1/2. This is equivalent to Scenario 2 from Section 5. In the EEP scheme, which uses the same amount of bandwidth as the foregoing UEP scheme, BL and EL of those H.264/SVC video streams were assigned to the same protection level, that is, the native DVB-T2 LDPC cdeo with code rate 2/3.Table 6
Average PSNR [DB] value of luminance component of the four tested sequences for the high quality video (BL + EL) and the base quality video up-scaled to the high quality video dimension.
CityCrewHarbourSoccerBL + EL33,734,329,933,6up-scaled BL28,032,327,030,8At the receiver, the following error concealment algorithms were assumed. In both the EEP and in UEP cases, whenever both BL and EL are corrupted, that is, a picture cannot be decoded, the most recent correctly decoded picture is frozen. However, in the UEP case, when EL is corrupted but BL is still error-free, then the BL picture is up-scaled to the full EL resolution and it replaces the corresponding EL picture. Table6 provides the average PSNR value when the whole BL is up-scaled.Next, the following scenario was assumed. For a certain period of time, SNR value of the received signal at the mobile receiver drops to a level in which the codes protecting EL in the UEP transmission scheme and both layers in the EEP transmission scheme are not able to provide an error-free signal. This may happen due to mobility of a receiver. However, the code extended by the proposed method protecting BL in the UEP transmission scheme is strong enough to successfully decode the signal. Based on Table4, it can be said that the signal strength drops to SNR value between 6.7 dB and 9.3 dB in AWGN channel and 9.5 dB and 12.8 dB in TU6 channel. Figure 8 depicts a video quality of the Soccer sequence for the UEP case and the EEP case, when such a drop in the received signal strength lasts 2 seconds. As it can be observed, the PSNR curve for the UEP case shows acceptable video quality during the degradation phase, whereas for the EEP case, the video quality is completely unacceptable during that period. Moreover, it should be noted that in the UEP case, the user receives continuous video with a lower quality and a lower frame rate while, in the EEP case, the user experiences a 2-second-long frame freeze. Table 7 presents the average PSNR values for each tested sequence for three error duration periods: 0.5, 1, and 2 seconds. The values presented in Table 7 clearly show a better video service is achieved when the proposed extension method is utilized to provide the UEP transmission scheme.Table 7
Average PSNR [DB] of luminance component for the UEP case and the EEP case depending on error duration [s].
CityCrewHarbourSoccer0.5 [s]UEP33.507934.221229.865633.5280EEP32.864533.562229.493032.61441.0 [s]UEP33.312334.190529.779333.4293EEP32.040332.813928.878931.58012.0 [s]UEP32.931734.125529.609433.2984EEP30.412631.142527.526529.5853Figure 8
Comparison of frame-by-frame PSNR value of luminance component between UEP scheme and EEP scheme when two-second long transmission error is encountered. For reference PSNR value of luminance component in error-free transmission is also depicted.


## 7. Conclusions

In this paper, a method to extend the LDPC codes of the DVB-T2 system was proposed. The method was introduced to overcome the limitations imposed by the DVB-T2 standard and to enable varying FEC protection for data transmitted over a single PLP. Using the proposed extension, it becomes possible to adjust the protection level of the native DVB-T2 LDPC codes BB frame by BB frame. Consequently, services transmitted using a single PLP are enabled to have different levels of error protection that may be used at the service component level. The paper also discussed the adaptation of the proposed LDPC extension method in the DVB-T2 framing structure to ensure backwards compatibility to the legacy receivers. Moreover, a step-by-step description of the design procedure of the LDPC extension was provided. The procedure should make extension of any of the native DVB-T2 LDPC codes relatively simple. The simulation results provide evidence of the benefits of deploying the proposed LDPC code extension in the DVB-T2 environment. The results have shown that with the same bit budget, due to the use of the LDPC extension, the UEP transmission scheme can be implemented and playback continuity at the receiver side in adverse channel conditions can be significantly improved. Consequently, better user experience in DVB-T2 transmission system can be ensured.



---

*Source: 834924-2012-03-11.xml*