Experimental Evaluation of MIMO-OFDM System with Rateless Space-Time Block Code

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 2 × 2 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.


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][15][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.

System Model
Consider a MIMO-OFDM system equipped with N t transmit and N r receive antennas. Figure 1 depicts the block diagram of a general MIMO-OFDM system in which RSTBC is implemented. The received matrix Y ∈ ℂ N r ×L is given by where S ∈ ℂ N t ×L is the transmitted RSTBC matrix, L is the number of RSTBC blocks, H ∈ ℂ N r ×N t is the channel transfer matrix, W ∈ ℂ N r ×L is the zero-mean Gaussian noise matrix with unit-variance elements, E s is the symbol energy, N 0 is the noise power spectral density at the receiver, and E s /N 0 is the average signal-to-noise ratio (SNR) per receive antenna. The random generating matrix G is used to construct the RSTBC matrix S = s 1 s 2 ⋯ s l ⋯ s L such that the column vectors of S are generated as follows: where x = x 1 x 2 ⋯ x N t is the original vector to be transmitted by the system, g l = g 1 g 2 ⋯ g N t is the lth N t × 1 vector of random single-bit binary numbers g n ∈ 0, 1 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 g l represent dropped symbols in which g 1 ≠ g 2 ≠ ⋯ ≠ g L , and consequently, s 1 ≠ s 2 ≠ ⋯ ≠ s L .

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 s l , 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 C.
Assume that the required packets to deliver the message correctly are s 1 s 2 ⋯ s l ⋯ s L . Let c l denote the measured mutual information after receiving the codeword block s l . If c l < C, then the receiver keeps receiving further blocks, else if c l ≥ C, then receiver decodes the received codeword y 1 y 2 ⋯ y l to get s 1 s 2 ⋯ s l 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   International Journal of Antennas and Propagation number of blocks (L) 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 s 1 , then s 1 s 2 , if s 1 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 (L) 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].

System Performance Analysis
The received signal at the jth receive antenna can be expressed as x n is the transmitted symbol by the nth antenna, h jnl is the channel gain from the nth transmit antenna to the jth receive antenna for the lth block of RSTBC, and w j is the noise at the jth receive antenna. Also, the loss is introduced by g nl ∈ 0, 1 , where g nl = 0 for loss and g nl = 1 when there is no loss. The maximum likelihood (ML) estimate s l of the transmitted codeword s l is expressed as where ⋅ 2 F denotes the squared Frobenius norm and y l ∈ ℂ K×1 is the lth received vector. The conditional probability of deciding erroneously in favor of S at the receiver while the codeword S was transmitted is the pairwise error probability (PWEP). Let d E S, S denotes the Euclidean distance between S and S, which can be calculated by The PWEP can be expressed, in terms of Q-function, as Using the Chernoff bound, Q x ≤ 1/2 e − x 2 /2 , the PWEP in (6) is upper-bounded as Now, define D = S − S S − S H as the codeword distance matrix which is a nonnegative definite Hermitian [19]. Hence, the singular value decomposition (SVD) of D is calculated as where B is a unitary matrix with orthogonal eigenvector columns b 1 , b 2 , … , b Nt and Λ is a diagonal matrix of nonnegative eigenvalues b 1 , b 2 , … , b Nt . Consequently, this results in an N t -dimensional vector space with orthonormal basis [14].

International Journal of Antennas and Propagation
The squared modified Euclidean distance d 2 E S, S can be rewritten as where Ω jn is the j, n th element of HB. It is obvious from (9) that, compared to the free-loss case, and without rateless coding (i.e., L = 1), d 2 E S, S becomes smaller when losses occur since g nl = 0 when there is loss and g nl = 1 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 L 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 k is the number of bits per symbol and d H S, S is the Hamming distance between the transmitted matrix S and the estimated matrix S.

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 K-factors for each path. In this experiment, the Rician K-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   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    5 International Journal of Antennas and Propagation 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.

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 L = 1, BER is close to 0.5, while experimental BER is improved by approximately 83-fold when L = 4 which is, in turn, improved by 30-fold when L = 8. Similar discussion can be conducted for the 25% loss case but it requires more redundant RSTBC blocks to overcome the high loss rate.   Figure 6: BER versus the number of blocks of RSTBC for experimental, simulation, and analytical upper bounds, in a 2 × 2 MIMO-OFDM system, with QPSK and loss rates of 10% and 25%. The left three curves are for 10% and the right three curves are for 25%. 6 International Journal of Antennas and Propagation Comparing experimental and simulation values, it is inferred, in general, that for low number of blocks (L ≤ 4), the experimental BER results agree approximately with that of the simulation. However, as L 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.

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 2 × 2 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.