#### Abstract

Multiple-input multiple-output (MIMO) wireless technology in combination with orthogonal frequency-division multiplexing (MIMO-OFDM) is an attractive technique for next-generation wireless systems. However, the performance of wireless links is severely degraded due to various channel impairments which cause a decoding failure and lead to packet loss at the receiver. One technique to cope with this problem is the rateless space-time block code (RSTBC). This paper presents experimental results on the performance of a MIMO-OFDM system with RSTBC as measured in a testbed implemented with field-programmable gate array (FPGA). The average bit error rate (BER) performance of the proposed scheme is evaluated experimentally, and the results agree closely with simulation and analytical upper bound. It has been shown that RSTBC can be implemented in real-world scenarios and guarantee the reliability of loss-prone wireless channels.

#### 1. Introduction

OFDM techniques have been applied in various wireless communication standards, such as IEEE 802.11a [1] and IEEE 802.16a [2], since they have high spectral efficiency and robustness to multipath fading. MIMO communication systems are considered as an effective solution for high-performance wireless systems. Moreover, MIMO combined with OFDM technique, which helps to avoid the frequency selective fading and to take away the need for complex equalizers, is a good solution for reliable high spectral-efficient wireless communication systems. However, in practice, loss-prone channels lead to significant performance degradation compared to loss-free environments.

Many possible error (or erasure) control schemes are available and can be used in MIMO-OFDM systems. The classical space-time codes (STCs) have spatial diversity in a flat-fading MIMO channel, but, in general, they are not efficient in the frequency-selective fading channels [3, 4].

One approach to guarantee the reliability of lossy communication systems is the *rateless coding*. In contrast to the common fixed-rate channel codes, rateless code does not have a fixed code rate before transmission as it can generate a flexible number of encoded packets. In this way, rateless codes are able to work universally over various classes of channels and change their code rate in accordance with the specific channel state. Conceptually, rateless codes are similar to the hybrid automatic repeat request (HARQ) schemes [5], but they mainly differ in the code design and overhead redundancy, where rateless codes can be interpreted as a continuous version of the HARQ.

To our best knowledge, in the literature of rateless coding, most of the existent works is an extension of the fountain codes over the *erasure channels* [6], in which the receiver simply drops the erroneous packets. Such rateless erasure codes were first invented for computer networks. Luby transform (LT) code [7] is the first practical pattern of rateless codes. LT code was subsequently developed to the well-known Raptor code [8].

For additive white Gaussian noise (AWGN) channels, perfect rateless codes were constructed in [9]. Moreover, rateless coding was used for single-input single-output (SISO) fading channel in [10] and for MIMO fading channel in [11]. Initial work of rateless space-time coding was introduced in [12]. Nevertheless, the rateless space-time codes still require more research work, especially for massive MIMO systems. In [13], we proposed the use of RSTBC in massive MIMO systems having lossy characteristic, where we considered only simulation to test the performance of the system. Furthermore, we have applied RSTBC for antenna failure, loss-tolerant data transmission, and pilot contamination, over a massive MIMO system, in [14–16], respectively.

In this paper, however, we examine experimentally the performance of RSTBC in a MIMO-OFDM system and hence demonstrate the realization of this code to protect the system performance in a practical setup. Although we have included some sample experimental results in [16], this paper strictly provides the details of the test-bed used to get the results. Our outcomes prove that RSTBC is able to resolve high-rate losses (such as 25%) and achieve a reliable robust transmission. We consider such high-rate losses since some real traffic measurements revealed that some receivers experience very high loss rate of above 25% [17, 18].

The rest of the paper is organized as follows. System model is introduced in Section 2, then Section 3 characterizes the mechanism of RSTBC. The performance of the system is addressed in Section 4. In Section 5, the experimental setup, architecture, and operation are detailed. The results are presented and discussed in Section 6. Finally, Section 7 concludes the paper.

#### 2. System Model

Consider a MIMO-OFDM system equipped with transmit and receive antennas. Figure 1 depicts the block diagram of a general MIMO-OFDM system in which RSTBC is implemented. The received matrix is given by
where is the transmitted RSTBC matrix, is the number of RSTBC blocks, is the channel transfer matrix, is the zero-mean Gaussian noise matrix with unit-variance elements, is the symbol energy, is the noise power spectral density at the receiver, and is the average signal-to-noise ratio (SNR) per receive antenna. The random generating matrix is used to construct the RSTBC matrix such that the column vectors of ** S** are generated as follows:
where is the original vector to be transmitted by the system, is the th vector of random single-bit binary numbers representing the instantaneous losses which occurred during transmission (namely, zeros represent losses and ones represent no losses), and denotes the element-by-element multiplication (Hadamard product) [13]. In other words, the positions of zeros in represent dropped symbols in which , and consequently, .

#### 3. Rateless Coding Mechanism

In this section, we simply exhibit the mechanism of a rateless code over a MIMO-OFDM system. Figure 2 depicts the RSTBC encoder and decoder, where a part of the encoded packets (or blocks) cannot be received due to losses [16]. In this case, the receiver keeps receiving until the minimum possible number of transmitted encoded packets are already received and enough to recover the original packets. The required number of blocks for recovery depends on the channel condition. During the transmission, for each block , the mutual information between the transmitter and the receiver is compared to a threshold [14]. Namely, it is desired to decode a message of total mutual information . Assume that the required packets to deliver the message correctly are . Let denote the measured mutual information after receiving the codeword block . If , then the receiver keeps receiving further blocks, else if , then receiver decodes the received codeword to get and a simple acknowledgement is sent to the transmitter to stop transmitting the residual encoded packets and remove them from the buffer.

It is worth noted that RSTBC is flexible, that is, the process continues until the receiver accumulates a sufficient number of blocks () to recover the message or the assigned time is over (it is limited by the channel coherence time). The decoding process is conducted sequentially; first using , then , if is not sufficient, and so forth [13]. Once the checksum criterion is satisfied, the received blocks are linearly combined to decode the entire underling message. We have to emphasize that the code is characterized as “*rateless*” because the number of required blocks () to recover the message is not predefined before transmission, rather it depends on the channel state. Furthermore, the code is extended ratelessly over time and space, and it belongs to the block codes. The code rate is flexible and can be calculated as the overall number of different transmitted symbols over the number of channel uses. Hence, this coding scheme is named as *rateless space-time block code* (RSTBC) [16].

#### 4. System Performance Analysis

The received signal at the th receive antenna can be expressed as where , , , is the transmitted symbol by the th antenna, is the channel gain from the th transmit antenna to the th receive antenna for the th block of RSTBC, and is the noise at the th receive antenna. Also, the loss is introduced by , where for loss and when there is no loss.

The maximum likelihood (ML) estimate of the transmitted codeword is expressed as
where denotes the squared Frobenius norm and is the th received vector. The conditional probability of deciding erroneously in favor of at the receiver while the codeword ** S** was transmitted is the pairwise error probability (PWEP). Let denotes the Euclidean distance between and , which can be calculated by

The PWEP can be expressed, in terms of Q-function, as

Using the Chernoff bound, , the PWEP in (6) is upper-bounded as

Now, define as the codeword distance matrix which is a nonnegative definite Hermitian [19]. Hence, the singular value decomposition (SVD) of is calculated as where is a unitary matrix with orthogonal eigenvector columns and is a diagonal matrix of nonnegative eigenvalues . Consequently, this results in an vector space with orthonormal basis [14].

The squared modified Euclidean distance can be rewritten as where is the th element of .

It is obvious from (9) that, compared to the free-loss case, and without rateless coding (i.e., ), becomes smaller when losses occur since when there is loss and when there is no loss. Hence, as the loss rate increases, the upper bound of the PWEP, given in (7), becomes large.

This performance degradation (due to losses) is compensated by applying the RSTBC, since (9) becomes larger as increases. Thus, the upper bound in (7) decreases, and consequently, the error performance is improved. The required number of redundant blocks of RSTBC depends on the loss rate [14].

Based on the well-known union bounding technique [20], the average bit error rate (BER) is analytically calculated and upper-bounded as where is the number of bits per symbol and is the Hamming distance between the transmitted matrix and the estimated matrix .

#### 5. Experimental Setup

The block diagram of the main components of the test-bed setup is depicted in Figure 3 which is implemented using 2 WARP v3 (Wireless Open-Access Research Project version 3) kits, 4 antennas (2 for each node) operating at 2.4 GHz, and connected through a 1 GB Ethernet switch to a personal computer (PC). Figure 4 shows the physical layout of the experimental test-bed.

WARP v3 kit, shown in Figure 5, is a software-defined radio (SDR) platform developed by Rice University and Mango Communications [21]. It is built on a Xilinx Virtex-6 LX240T FPGA with four programmable radio frequency (RF) interfaces operating at 2.4 and 5 GHz with a 40 MHz bandwidth. Because of its accessibility and simple interface with MATLAB by which transmitted and received data are processed, the WARP v3 kit is used in many works such as [22] in which OFDM parameters are similar to what we have considered.

MATLAB is used to perform synchronization, modulation, RSTBC, channel estimation, and equalization. The power of the transmitted signal is controlled by the identifiers of both the baseband gain (BB-Gain) and RF gain (RF-Gain). In MATLAB, we can change the values of these identifiers to get a particular gain. We calibrated the transmitted power from the RF interfaces of the WARP v3 node by connecting these interfaces to a spectrum analyzer (SA) using a coaxial cable of 0.13 dB loss and transmitting a signal from the WARP v3 board to the SA. We found that a good transmission performance is obtained at transmit power values of −13.5 dBm and −15.9 dBm from the two transmit antennas, respectively.

It is obvious that the channel between the transmitter and the receiver is Rician distributed with different means and -factors for each path. In this experiment, the Rician -factors for all paths are estimated separately, where the values range between 27 dB and 30 dB.

The structure of the OFDM packet is based on IEEE 802.11g [23], in which each packet contains 30 OFDM symbols (each with 64 subcarriers) [22]. Twelve subcarriers are set to null, and four subcarriers are devoted for pilot signals which are utilized for frequency offset correction (FOC). The encoded data are inserted in the remaining 48 subcarriers. Each packet consists of three blocks: preamble, training symbols, and payload data. The preamble block is employed for timing synchronization and packet detection by means of two long OFDM training symbols [22, 23]. The training symbols block has 4 OFDM symbols used for channel estimation. This OFDM symbols are BPSK streams with two symbols for each transmit antenna while the remaining two OFDM symbols are null in each antenna for the purpose of beamforming.

The incoming binary data are applied to constellation mapper (QPSK or 16-QAM modulation). The modulated symbols are encoded by RSTBC encoder using a generating random matrix as in (2) to generate a number of blocks. Then, these blocks are transmitted sequentially until a feedback from the receiver terminates the transmission of the remaining blocks or all the blocks have been transmitted. For each transmission cycle, each block is reshaped into two streams each with 48 OFDM data subcarriers. The pilot samples are inserted and interleaved across subcarriers and OFDM symbols. At the beginning of the data OFDM words, the preamble and training symbols are embedded. The OFDM waveforms are generated using a 64-point inverse fast Fourier transform (IFFT). To avoid intersymbol interference (ISI) between OFDM symbols, a cyclic prefix (CP) is added to each OFDM symbol as a guard interval. The OFDM waveforms are converted from parallel to series. Upsampling with a factor of two is conducted to reduce the bandwidth to 20 MHz. In order to avoid attenuation near the DC, the packet is upconverted to 5 MHz (an intermediate frequency (IF)). Finally, the packet is extended to the dynamic range of the WARP digital-to-analog (D/A) and analog-to-digital (A/D) converters, to enhance the quantization resolution and avoid clipping [22].

For each reception instant, the two sample streams of received data, with an additional of 300 samples for each stream, are extracted from the RF buffers of the WARP node. The added 300 samples are used for synchronization. The processes of synchronization and packet detection are obtained via cross-correlating the received data with the predetermined preamble sequence. Then, the received signal is downconverted from the RF band to baseband and downsampled by two to match the hardware bandwidth. All the received OFDM symbols are reshaped into parallel subcarriers, and the CP guard interval is removed. The OFDM symbols are then extracted from the received OFDM waveforms by applying a 64-point FFT. The MIMO channel matrix elements are estimated via the predetermined training symbols. The carrier phase offset (CFO), for each OFDM symbol, is estimated using the pilot signals and corrected by performing an inverse phase shift [22, 24]. The data payload is demodulated to extract the transmitted complex symbols. As described in Section 3, the receiver keeps receiving the transmitted blocks until the checksum criterion is achieved, then the available RSTBC blocks are linearly aggregated to recover the uncoded symbols.

#### 6. Experimental Results and Discussion

In this section, we present the experimental results of the MIMO-OFDM setup having the parameters tabulated in Table 1. The experimental and simulation results of BER performance versus the number of RSTBC blocks in a MIMO-OFDM system, for QPSK and 16-QAM, are shown in Figures 6 and 7, respectively. For each figure, two loss rates, 10% and 25%, are considered. In Figure 6, we include also the BER upper bound calculated using (10).

It is worth noted that error performance is improved as the number of RSTBC blocks increases. That is because of the ability of RSTBC to compensate for the losses that may arise in the system. As the loss rate is high, more RSTBC redundancy is required to reach the target performance.

Specifically, for more illustration, from Figure 6, we summarized Table 2 for the 10% loss rate. It is noted that, without RSTBC, which corresponds to , BER is close to 0.5, while experimental BER is improved by approximately 83-fold when which is, in turn, improved by 30-fold when . Similar discussion can be conducted for the 25% loss case but it requires more redundant RSTBC blocks to overcome the high loss rate.

Comparing experimental and simulation values, it is inferred, in general, that for low number of blocks (), the experimental BER results agree approximately with that of the simulation. However, as increases, the gap between the experimental and simulation BER increases. This difference, for high number of RSTBC blocks, results from practical errors in channel estimation or calibration. That is because of the difficulty of achieving exact channel estimation due to the noise, losses, and interference [16]. Similar discussion can be presented for Figure 7, which is for 16-QAM modulation format, taking into consideration the number of constellation symbols. Based on the previous results and discussion, this study has demonstrated the effectiveness of RSTBC for deployment in lossy wireless communication systems.

#### 7. Conclusion

In this paper, we examined practically a rateless space-time block code (RSTBC) in a MIMO-OFDM setup and analyzed the BER performance of the scheme. The experimental results demonstrated that RSTBC can be employed to reserve the reliability of the system in a lossy environment. In a MIMO-OFDM test-bed, with QPSK and 16-QAM, we have shown that, from a certain amount of encoded data, RSTBC is able to recover the original data even when the loss rate is 10% or 25%. The experimental results agree closely with the simulation and analytical upper bounds. The proposed model, the developed analysis, and the experimental results along with the simulation are considered as a good reference for designing, performance analyzing, and prototyping of RSTBC in a loss-prone massive MIMO systems.

#### Data Availability

The measurements used to support the findings of this study are included within the article.

#### Conflicts of Interest

The authors declare that they have no conflicts of interest.

#### Acknowledgments

The authors acknowledge the College of Engineering Research Centre, King Saud University, and the Deanship of Scientific Research at King Saud University in Riyadh, Saudi Arabia, for the financial support to carry out the research work reported in this paper.