Coding parameters for normal FECFRAMEnldpc=64800

## 1. Introduction

For the past two decades, the wide coverage and the reliable bandwidth offered by the broadband satellite systems has made them a promising media for IP streaming. Meanwhile, the demand for exploring new solutions concerning this industry has kept increasing to maintain the growth rate required by the various market sectors.

In order to minimize the design time as well as implementation costs, the initial steps in researches concerning satellite systems are often taken in simulation environments. In contrast with the actual satellite system test-beds which are expensive or sometimes not available to the academic research community, the simulation software packages like Mathworks MATLAB are widely used at the early stages of modeling and design process.However, such packages are mostly designed as general purpose tools and therefore, the built-in models provided by these tools are often incomplete or too simplistic.

The main objective of this research is to use MATLAB simulator for study of issues and impairments of Digital Video Broadcasting-Second generation (DVB-S2) standard in Geostationary (GEO) satellite as a broadcasting media.

In this study we model DVB-S2 standard using Matlab communication toolbox and built in DVB-S2 model in Simulink. However, it is noted that the model in Matlab does not include higher order modulations: 16APSK and 32APSK and also the main novelty of DVB-S2 which is the ACM algorithm. Therefore we need to rebuild the model using toolboxes to add the above mentioned capabilities.

In the following sections, we first provide background of DVB-S2 Standard and in the next section a brief overview on DVB-S2 Model in Matlab will be presented, and then we will go through the model improvement on the following section and afterwards we will analyze presented solution by means of BER performance of the system and the provided ACM engine. Finally, in the last section, we will discuss the results and future work.

## 2. Background

The evolution of digital multimedia broadcasting over broadband communication systems in early 90’s,initiated the first stages of standardizing the digital TV broadcasting. In 1993, European Telecommunication Standards Institute (ETSI) started a project named Digital Video Broadcasting(DVB).The main objective of this standard was to introduce standards for digital multimedia services. DVB-S,the first standard for satellite video broadcasting over GEO satellite systems hired an outer shortened Reed Solomon(RS) and inner variable length convolutional code as its Forward Error Correction(FEC) technique[1].

For interactive applications and adaptive transmissions presence of a return link is compulsory. One return link can be established using terrestrial networks which has its own disadvantages like higher cost and unavailability of the link. The more interesting option would be using the same antenna at the receiver for the return link via satellite. This was the motivation for defining a new standard called Digital Video Broadcasting Return channel satellite (DVB-RCS).At the same time that ETSI was providing this standard, they had another project runing for second generation of satellite broadcasting,DVB-S2. In 2003, DVB-S2 specifications was provided by ETSI.

DVB-S2 standard exploits 30% channel efficiency improvement using same power and bandwidth as its ancestor DVB-S[2]. This improvement was resulted from the usage of new FEC techniques: Low Density Parity Check (LDPC) and Bose-Chaudhuri-Hochquenghem (BCH), higher order modulations: 16APSK, 32APSK and a dynamic selection of coding and modulations using instantaneous Channel State Information (CSI) so called Adaptive Coding and Modulation (ACM).

Fade mitigation techniques (FMT) are widely applied on satellite communication to tackle transmission errors and losses caused by atmospheric effects on these systems. Time variant nature of channel states in a Ka band channel affects severely performance of a satellite link, hence it necessitates a dynamic adjustment of Modulation and Coding (ModCods) used by physical layer for transmission. This dynamic adjustment is performed by an adaptive coding and modulation algorithm augmented in DVB-S2 systems deploying a feedback link via DVB-RCS terminals. ACM algorithm uses CSI sent by DVB-RCS return link from individual Earth Stations (ES) to Gate-way, so called Network Control Center (NCC). NCC is responsible for making the proper selection of ModCods aiming best spectrum efficiency and the desired Bit Error Rate (BER) at the same time[3].

To overcome influences of fading events on transmission quality one of the Well-Known techniques among FMT’s is ACM.ACM algorithm will make the proper switching in physical layer transmission mode to maintain channel quality. Different combinations of coding rates and modulation orders are given by ETSI standard. A low coding rate and modulation order will increase robustness of transmission in poor channel quality conditions with a lower spectral efficiency indeed. In case of clear sky by choosing higher coding rate and higher modulation orders spectral efficiency will be increased and system provides a higher throughput. The trade-off between spectral efficiency and BER is crucial in system performance and also transmission cost. In one hand, keeping in to account that although a spectral efficiency higher than appropriate according to channel state will increase system throughput, it will introduce excessive BER to the system as well. On the other hand, if a ModCod with too low spectral efficiency is selected when the channel quality is in a good condition then capacity of the system will be wasted[4].

The satellite communication channel mostly suffers from signal fading mainly resulted from atmospheric rain attenuation and ionospheric scintillation. Rain attenuation affects these signals severely by absorbing properties of the water, while amplitude and phase of the received signal will be distorted frequently by scintillation in ionosphere caused by electron density irregularities[5].

Since scintillation effects rapidly occurs cannot be compensated by mode adaptation because of the long propagation delay in GEO satellite systems. But rain attenuation time scale is larger comparing to scintillation, hence deploying mode adaptation techniques is convincing to tackle these effects. ACM threshold offsets define thresholds for every ModCod a certain level of safe SNR to guarantee a quasi-zero BER transmission. Making the decision of switching among ModCods is the Gateways’s responsibility. In one hand, this adaptation is crucial to tolerate fade attenuations by choosing an adequate ModCod according to the safe threshold defined in the ACM table, on the other hand very frequent changes in channel states due to scintillation may cause in recurrent crossing of thresholds subsequently frequent switchings which is not desirable[6].

Provided that with 11 coding rate and 4 modulation order available in the standard, there will be 44 possible combinations. Only 28 of them are covered by DVB-S2 standard. Considering complexity of terminal design and limited usage of some of these ModCods, there is some proposals suggesting a reduced subset of ModCods. A subset of less than one forth(5 or 7 out of 28)has been investigated in[7].They showed a close to optimum performance can be achieved using these reduced subset and consequently complexity of the terminal will be decreased. This reduced set of ModCods avoid system oscillations and will increase systems stability[8]

The tradeoff between terminal design complexity and achievable spectral efficiency has also been investigated in[9].In this research they proposed subsets of 8 and 5 Modcods with equidistant separation of adjacent ModCods. A simulated time series of one month was their SNR pattern targeting a BER at:

they assumed that a frame is corrupted if the SNR of received signal is less than the threshold offset and it means that comparison between sent and received signal has not been carried out. They obviously ignored the PSNR of received signal and effects of error concealment provided by other layers.

The design of different ACM thresholds and safety margins also play a significant role in the performance of the system. Although the zero-quasi BER offered by DVB-S2 standard is excellent, recent advances in audio and video codecs reduced their need for such outstanding BER level. About 15% packet loss can be accommodated without severe degradation in speech and also modern video codecs like MPEG-4 are capable of concealing errors in input stream by hiring error correction techniques (eg. interframe interpolation) they can accept a higher BER providing acceptable video quality[10]. Hence BER rates as high as given below can be acceptable:

Considering the variation in application requirements of different threshold offsets can be implemented in ACM tables. As mentioned above, some applications can tolerate higher BER, so it is reasonable to decrease quality of the transmission in terms of allowing higher BER resulting in higher spectrum efficiency in the system.

## 3. DVB-S2 model in Matlab

### 3.1. Introduction

Matlab includes some of important digital video transmission models such as Digital Video Broadcasting-Terrestrial (DVB-T), Digital Video Broadcasting-Cable (DVB-C) and Digital Video Broadcasting-Satellite Second Generation (DVB-S2). Representation of these models are all based on European Telecommunication Standardization Institute (ETSI), in our case of study EN 302 307 [11].

Simulink function blocks are hired for this implementation which will be discussed in detail in the following sections and lack of some parts will be mentioned indeed.

### 3.2. Matlab DVB-S2 model hierarchy

Figure 1 shows block diagram of DVB-S2 model in Matlab. Each block and its functionalities are given in subsequent sections.

#### 3.2.1. Bernoulli sequence generator

The very first block is responsible for generating a balanced, in terms of probability of incidents, random binary sequence. Bernoulli sequence is a distribution of zeroes and ones by probabilities of p and (p-1) respectively. In this model, p equals to 0.5 resulting in equal probability of happening for 0 and 1. Output of this block is frame based with the same size as a MPEG-TS packet which is 188 bytes of 8 bits making it 1504 bits.

#### 3.2.2. BBFRAME buffering/unbuffering

Output of packet source generator is buffered to make a Base Band Frame (BBFRAME).The size of this frame is related to the coding rate being used, equal to BCH encoder input size. Information bits or called Data FieLd (DFL) can be calculated as given in below formula:

Where Kbch is the size of outer FEC Encoder BCH input, and 80 is the BBFrame header size. Structure of a BBFRAME is shown In Figure 2.

Number of MPEG packets that can be fitted in one BBFRAME can be shown as:

To fulfill BBFRAME size to match BCH encoder input, post zero padding will be applied. At the receiver side Unbuffering block is responsible for excluding added zero pads and the BBHeader to generate MPEG packets from received frame. Number of zero pad added can be shown as:

#### 3.2.3. BCH encoder/decoder

One of DVB-S2 standard advances is the forward error correction which is deployed to reduce BER in transmissions is BCH error correction. Output of BBFrame buffering block at the sender side, as above mentioned, are frames of kbch bits where a BCH (Nbch,Kbch) error correction with the correcting power of t will be applied to them. For each of 11 rate of coding presented in the standard Kbch and Nbch values are defined including the t-error correcting parameter. In tables 1 and 2 these values are shown for normal and short frames respectively.

The output of BCH encoder called BCHFEC frame will be created by adding parity check bits to make a frame with Nbch size. Nbch is the input of inner LDPC encoder which is also named Kldpc. The structure of whole FECFRAME is shown in the Figure 3.

#### 3.2.4. LDPC encoder/decoder

Nbch, the BCH encoder out put as the input of inner FEC encoder will be processed at LDPC encoder to be protected from error with parity bits. The number of parity bits are given in tables 1 and 2, as:

LDPC encoder supports 11 coding rates. These coding rates are the ratio between information bits (Nbch bits) and LDPC coded block bits which is the FECFRAME. Fore example for rate 1/4 in a normal frame it shows:

This means that for every 1 bit of information sent from outer FEC coder(BCH),there will be 3 bits of parity checks added in LDPC encoder. The lower this ratio the more protection of data against error has been carried out in LDPC encoder. This will result in more robust data transmission, and it will reduce system throughput indeed. At the receiver side, LDPC decoder will check the received sequence till the parity checks are satisfied up to 50 iterations. This error correction uses the sparse parity-check matrices with a hard decision making algorithm.

LDPC Code | BCH Uncoded Block Kbch | BCH coded block Nbch LDPC Uncoded Block kldpc | BCH t-error correction | LDPC Coded Block nldpc |

1/4 | 16008 | 16200 | 12 | 64800 |

1/3 | 21408 | 21600 | 12 | 64800 |

2/5 | 25728 | 25920 | 12 | 64800 |

1/2 | 32208 | 32400 | 12 | 64800 |

3/5 | 38688 | 38880 | 12 | 64800 |

2/3 | 43040 | 43200 | 10 | 64800 |

3/4 | 48408 | 48600 | 12 | 64800 |

4/5 | 51648 | 51840 | 12 | 64800 |

5/6 | 53840 | 54000 | 10 | 64800 |

8/9 | 57472 | 57600 | 8 | 64800 |

9/10 | 58192 | 58320 | 8 | 64800 |

LDPC Code identifier | BCH Uncoded Block Kbch | BCH coded block Nbch LDPC Uncoded Block kldpc | BCH t-error correction | Effective LDPC Rate kldpc/16 200 | LDPC Coded Block nldpc |

1/4 | 3072 | 3240 | 12 | 1/5 | 16200 |

1/3 | 5232 | 5400 | 12 | 1/3 | 16200 |

2/5 | 6312 | 6480 | 12 | 2/5 | 16200 |

1/2 | 7032 | 7200 | 12 | 4/9 | 16200 |

3/5 | 9552 | 9720 | 12 | 3/5 | 16200 |

2/3 | 10632 | 10800 | 12 | 2/3 | 16200 |

3/4 | 11712 | 11880 | 12 | 11/15 | 16200 |

4/5 | 12432 | 12600 | 12 | 7/9 | 16200 |

5/6 | 13152 | 13320 | 12 | 37/45 | 16200 |

8/9 | 14232 | 14400 | 12 | 8/9 | 16200 |

9/10 | NA | NA | NA | NA | NA |

#### 3.2.5. Interleaver/deinterleaver

Interleaving process is the next step in DVB-S2 for modulations 8PSK, 16APSK and 32APSK. Interleaving on QPSK is not going to be done and as for DVB-S2 model in Matlab,16APSK and 32APSK modulations are not included so we will discuss them in our proposed model later. The interleaver structure is given in table 3.

Interleaver block in Matlab will make this on 8PSK by writing column wise serially the output of LDPC encoder in a 3 by nldpc (21600 for 8PSK) matric and then will read it out row wise. The MSB of BBHeader will be read-out first since for rate 3/5 it will be read-out as third. These processes are shown in figures 4 and 5.

Interleaving process creates rows in a matric from the LDPC encoder output according to the modulation order M, so each row will contain a symbol ready to be mapped in the next block, modulation. At the receiver side Deinterleaver block will receive the output of demodulator block as input and will apply the reverse process to create a serial output for the LDPCdecoder input.

Modulation | Rows(for nldpc=64800) | Rows(for nldpc=16200) | Columns |

8PSK | 21600 | 5400 | 3 |

16APSK | 16200 | 4050 | 4 |

32APSK | 12960 | 3240 | 5 |

#### 3.2.6. Modulator/demadulator

Modulation block will process the interleaved vector by first mapping each row to a symbol which in our case is a gray mapping, then the mapped symbols will be assigned to constellations. Constellation and mapping for QPSK and 8PSK are given in figures 6 and 7 respectively. Modulator for QPSK and 8psk both orders have a phase offset given below and the average energy for normalized constellation per symbol should correspond to:

At the receiver side, demodulator will analyze the received signal from the channel and will approximately calculate LLR’s using soft decision making LLR algorithm. Demodulator needs noise variance of the signal or at least an estimation of it. Noise variance calculation is given in below formula:

#### 3.2.7. AWGN channel

Additive Gaussian White Noise (AWGN) block in Matlab comply with Transmission channel in Ka band. This block adds a noise to the complex signal sent from modulator based on a manual parameter being set by the user. This parameter can be defined as Es/No, Eb/No or SNR, any how the block will calculate the noise variance and will add a noise with zero mean to the signal. The relation between Es/No, Eb/No and SNR is as follows:

Where Es is the signal energy in Joules, Eb is bit energy in Joules, No is noise power spectral density, Tsym is the symbol period,K is the information bits per symbol and Tsamp is the sample time.

## 4. Proposed DVB-S2 model

The most important motivation of this project was to implement a DVB-S2 link layer model in matlab which includes ACM algorithm with a complete set of ModCods and also video quality measurement system. To do so we added modulations for 16APSK and 32APSK and PSNR calculation to the system. Specificaly, we used communication toolbox in Matlab for this approach. The model is depicted in Figure 8.The model is defined in the following sections.

### 4.1. MPEG-TS input/output blocks

In Matlab DVB-S2 model as mentioned earlier they use a random Bernoulli sequence generator for input of the model. To analyze the effect of ACM algorithm on the quality of transmission of a real MPEG stream, we used MPEG-TS stored in a matrix with 188 columns (one MPEG packet) and 100000 rows (number of packets).This is used as the input of the system and at receiver side will be again stored for PSNR calculation.

### 4.2. PSNR calculation

Peak Signal to Noise Ratio (PSNR) which is a well-known metric for quality measurement of received video, is added to the proposed model. The computation of PSNR is in decibels and uses the Mean Square Error(MSE) which is also an error metric often used for video quality estimation[12].MSE computation is expressed as:

where N represents the number of pixels in the image while P and P are the original image and received image respectively. The PSNR then is computed as follows:

where n is the number of luminance bits used in the image.

### 4.3. Interleaver/deinterleaver

Interleaving for 16 and 32 APSK are two blocks included to the model based on ETSI instructions. The number of rows and columns of this interleaver are given in table 3.In figure 9 the structure of Interleaver for 16 APSK is given, the only difference with 32 APSK is the number of columns which is 5 instead of 4, consequently number of rows also will be different.

### 4.4. Modulator/demodulator

Higher order modulations presented by DVB-S2, provides higher spectrum efficiency comparing to the earlier generation, DVB-S. To analyze the BER performance of DVB-S2 and also adding the ACM algorithm to our model, we include Modulations for 16 and 32 APSK. Modulation block is responsible for mapping and constellation generation to prepare the base band signal for transmission.

#### 4.4.1. 16 APSK modulator

The modulation constellation for 16 APSK as described in ETSI uses two concentric rings R1 and R2.These rings are uniformly spaced with 4 and 12 points. The constellation is given in the Figure 10.The ratio between R1 and R2, gamma, is defined as:

#### 4.4.2. 32 APSK modulator

Three uniformly spaced rings are defined in the standard using 4, 12 and 16 PSK points for 32 APSK modulator constellation: R1,R2 and R3.The outer ring R3 should be equal to one and gamma1 and gamma2 will define the ratio between rings as follows:

The symbol order and constellation defined by ETSI is given in Figure 11.

#### 4.4.3. Demodulator

At the receiver side, demodulator will receive the signal from AWGN channel which is the noisy signal. To demodulate the signal, demodulator needs noise variance of the channel for computation of the signal LLR’s. For this computation we used approximate LLR algorithm.

### 4.5. ACM algorithm

In the current DVB-S2 model in Matlab, a Constant Coding and Modulation strategy has been developed.This strategy is based on the worst case adjustment for physical layer which will waste spectral efficiency at most of the time.This waste is costly and can be avoided by using state of the art ACM algorithm, so any individual user can be treated according to its present channel state.

The last step of design in the proposed model is the implementation of the ACM engine. ACM algorithm included in this model is based on the standard required Es/No by ETSI to support a Quasi Error Free transmission. As depicted in table 4, for all 28 combinations of ModCods there is a required level of Es/No. To make decisions among ModCods threshold offsets are provided as equidistance thresholds between adjacent ModCods. The SNR of received signal at the receiver will be sent to ACM block to be used for next frame mode of transmission.

Mode | Spectral efficiency | Ideal Es/No(dB) for FECFRAME Length 64800 |

QPSK1/4 | 0.490243 | -2.35 |

QPSK1/3 | 0.656448 | -1.24 |

QPSK2/5 | 0.789412 | -0.30 |

QPSK1/2 | 0.988858 | 1.00 |

QPSK3/5 | 1.188304 | 2.23 |

QPSK2/3 | 1.322253 | 3.10 |

QPSK3/4 | 1.487473 | 4.03 |

QPSK4/5 | 1.587196 | 4.68 |

QPSK5/6 | 1.654663 | 5.18 |

QPSK8/9 | 1.766451 | 6.20 |

QPSK9/10 | 1.788612 | 6.42 |

8PSK3/5 | 1.779991 | 5.50 |

8PSK2/3 | 1.980636 | 6.62 |

8PSK3/4 | 2.228124 | 7.91 |

8PSK5/6 | 2.478562 | 9.35 |

8PSK8/9 | 2.646012 | 10.69 |

8PSK9/10 | 2.679207 | 10.98 |

16APSK2/3 | 2.637201 | 8.97 |

16APSK3/4 | 2.966728 | 10.21 |

16APSK4/5 | 3.165623 | 11.03 |

16APSK5/6 | 3.300184 | 11.61 |

16APSK8/9 | 3.523143 | 12.89 |

16APSK9/10 | 3.567342 | 13.13 |

32APSK3/4 | 3.703295 | 12.73 |

32APSK4/5 | 3.951571 | 13.64 |

32APSK5/6 | 4.119540 | 14.28 |

32APSK8/9 | 4.397854 | 15.69 |

32APSK9/10 | 4.453027 | 16.05 |

## 5. Simulation and results

We run simulations for different values of Es/No ranging from -3 to 17 dB and for each ModCod. The LDPC decoder was set to 50 iterations and normal frame size (64,800 bits) is used. Simulation parameters and settings are presented in Table 5. At the LDPC decoder output we calculate BER and number of violated parity checks.

Simulation Parameters | Settings |

Frame size | 64800(Normal) |

LDPC Encoder Input Type | Bit |

LDPC Decoder output Type | Information Part |

LDPC Decoder Decision Input Type | Hard Decision |

LDPC Decoder Number Of Iterations | 50 |

Modulator Input Type | Bit |

Modulator Symbol Order | Gray |

Demodulator Output Type | Bit |

Demodulator Decision Type | Soft Decision |

LLR Algorithm | Approximate LLR |

Channel Noise Factor | SNR |

To evaluate performance of the presented model in terms of BER we run simulation for all ModCods. The results are shown in Figure 12.It can be perceived, that the model performs transmissions with the expected BER levels for all ModCods.

In order to analyze the video quality, instead of sending a Bernoulli sequence, we send MPEG-TS and considering PSNR of received video and QEF requirements. In Figure 13, we showed that deploying the standardized ACM thresholds the model can perform the transmission with the desired quality with almost 0.3 dB less Es/No required.

In [8], the authors proposed SNR intervals for different ModCods based on ETSI standard. We also compared SNR performance of our proposed model with their intervals. We consider the PSNR of received video in conjunction with BER. The comparison result is given in Figure 14.

## 6. Conclusion

In this study, we proposed a complete DVB-S2 model for GEO satellite communication system implemented in Matlab. Specifically, we added high order modulation schemes, 16APSK and 32APSK.On top of that, we include ACM algorithm with standard threshold offsets provided by ETSI. Instead of random inputs we used MPEG-TS and we analyzed the quality of the received video streams. By running extensive simulation runs, we showed that the model corresponds to the standard in terms of BER performance. Then we investigate the model performance according to the PSNR of received video and we compared the results with some results in the literature. The results show a 0.3 dB improvement in the required Es/No defined in ACM offsets by ETSI. For future work, we address the study of different ACM thresholds and their performance in terms of spectral efficiency versus PSNR of received video.

## Acknowledgement

This project was funded by Malaysian Ministry of Science, Technology and Innovation (MOSTI) under its eScience fund program ’3D Video Transmission over GEO Satellite Networks for Disaster Management Applications’ (Project code: 01-01-04-SF1047). We would also take this opportunity to thank Mr Bernhard Shcmidt for his kind cooperation in some codes.