- Research
- Open Access
- Published:

# A practical two-stage MMSE based MIMO detector for interference mitigation with non-cooperative interferers

*EURASIP Journal on Wireless Communications and Networking*
**volume 2011**, Article number: 205 (2011)

## Abstract

Wireless Multiple Input Multiple Output systems provide system designers with additional degrees of freedom. These can be used to increase throughput, reliability, or even combat spatial interference. The classical Minimum Mean Squared Error (MMSE) solution is the optimal linear estimator for these systems. Its primary drawback is that it requires an estimate of the channel response. This is generally not an issue when interference is absent. However, in environments where interference power is stronger than the desired signal power, this can become difficult to estimate. The problem is even worse in packet-based systems, which rely on training data to estimate the channel before estimating the signal. A strong interference will hinder the receiver's ability to detect the presence of the packet. This makes it impossible to estimate the channel, a critical component for the classical MMSE estimator. For this reason, the classical solution is infeasible in real environments with stronger interferences. We propose a two-stage system that uses practically obtainable channel state information. We will show how this approach significantly improves packet detection, and how the overall solution approaches the performance of the classical MMSE estimator.

## 1 Introduction

The unlicensed nature of the ISM band has allowed for rapid development and deployment of various wireless technologies such as 802.11 and bluetooth. Since devices are allowed to operate in the same band without pre-determined frequency or spatial planning, they are bound to interfere with each other. There have been several attempts to mitigate this issue via higher layer protocols. Most of these involve some form of cooperative scheduling [1, 2]. Some work has been done to show that time domain signal processing can be used to mitigate the effects of narrowband interference [3–8]. They have shown in simulation how their techniques can suppress interference on the data payload, but have not taken into account how interference affects other parts of the receiver. The primary omission has been with respect to synchronization. This includes tasks such as packet detection, timing synchronization, and channel estimation. Without the ability to perform these tasks, it becomes impossible to build a practical system.

Some work has been done on MIMO-based interference mitigation for cellular systems [9, 10]. These approaches focus on reducing interference from neighboring cells or users by coordinating transmissions either in time, space, or frequency. They do not provide a method for mitigating interference from a non-cooperative external jammer.

The iterative maximum likelihood algorithm described in [8, 11, 12] is very effective, but computationally expensive making it difficult to implement for high datarate systems. They describe a turbo decoder approach to mitigate interference with an array of processors. Turbo decoders have a computational complexity of *O*(*l* 2^{k}) where *l* is the block length and *k* is the constraint length [13]. This method was proven on real systems, but only for low datarates. It also requires the use of a turbo code in order for it to work. The inability to work with an arbitrary FEC or modulation method makes the result specific to the system that was demonstrated. The minimum interference method offers good performance in some scenarios but degrades when the interference becomes weak. They address channel estimation in the presence of interference, but assume ideal packet detection in the presence of this interference.

It is our intention to demonstrate a method that can be practically implemented on a real system. As a design goal, we will ensure that our technique can operate without a priori knowledge of the nature or existence of the interference. We will show how a two-stage MMSE MIMO estimator can be used to facilitate packet detection as well as to provide superior bit error rate performance. The first stage will be a pre-filter that operates on reduced Channel State Information (CSI). This pre-filter will suppress the interference to a level that allows for reliable packet detection and timing synchronization. This will be followed by a secondary detection stage that uses slightly more information to recover the transmitted data. We will demonstrate how this allows the synchronization tasks to be performed and provides similar performance to an ideal MMSE MIMO estimator.

This paper will be organized as follows, Section 2 will describe the system model and provide derivations for the filters that we are proposing. Section 3 will discuss the simulation results. Section 4 will validate some of the basic assumptions on a real-time hardware testbed. Finally, Section 5 will conclude this work.

## 2 System model

For our analysis, we will use a typical MIMO system with multiple transmit and receive antennas (see Figure 1). A pre-filter is used to improve synchronization performance. We will examine two well-known algorithms that can be used as a pre-filter in addition to our proposed algorithm. The filtered signal will be used by the synchronization algorithm to determine whether a packet is present and to estimate the symbol boundary (timing synchronization). This signal will then pass through a secondary filter that will estimate the originally transmitted signal. The data payload of the packet is a simple uncoded QAM signal. This was chosen so we may directly evaluate the performance improvement of our algorithm and avoid potential non-linear effects from forward error correction schemes. We used a standard 802.11a header [14] with well-known techniques for packet detection and timing synchronization from [15–17]. It is our intention to show improvements in performance as opposed to showing absolute performance. For that reason, we have chosen to use well-known training sequences as well as synchronization algorithms. The performance improvements demonstrated in this work should be directly applicable to all packet-based systems that require on packet detection and timing synchronization.

We begin by defining some notation explicitly. We will use the superscript (*) to denote the complex conjugate transpose (Hermitian) of a vector or a matrix. Lowercase boldface symbols (**y**) will be used to denote vectors and uppercase boldface (**W**) will be used to denote matrices. The hat $\left(\widehat{\mathbf{x}}\right)$ will denote estimates of signals, while a tilde $\left(\tilde{\mathbf{x}}\right)$ will be used to denote residual error signals. The trace operator for a matrix will be denoted as *Tr*().

First, we will examine Rayleigh flat fading channels, the simplest class of channels. These channels are modeled as a single impulse chosen from a Rayleigh distribution. A new channel will be chosen at random for each packet, but remain constant throughout the duration of that packet. We will discuss the ideal Minimum Mean Squared Error (MMSE) solution and show why it is impractical in high interference scenarios. We will then review the Sample Matrix Inverse (SMI) [18] as well as Maximal Signal to Interference plus Noise Ratio (MSINR) [19] algorithms. These are both well suited for use as a pre-filter since neither require first-order information about the channel. Each of these algorithms will use a standard MMSE detector as the secondary filter to demodulate the data. We will then discuss our proposed two-stage solution with its pre-filter and secondary filter. We will show how the combination of these filters is equivalent to the ideal linear MMSE solution. Finally, we will extend each of these methods to cope with Rayleigh frequency selective channels.

### 2.1 Rayleigh flat fading channels

The time domain received signal **y**(*t*) (1) is the linear combination of the received signal of interest, **x**(*t*), convolved with its channel, **H**_{
s
}, additive white Gaussian noise (AWGN), **n**(*t*), and the interference signal, ** γ**(

*t*), convolved with its channel,

**H**

_{ i }. Since the channel is a single impulse, the convolution of the channel with the signal is the same as multiplication.

In this work, we will focus on linear estimators of the form $\widehat{\mathbf{x}}=\mathbf{W}\mathbf{y}$ for their simplicity and practicality of implementation. The estimation error is given by $\tilde{\mathbf{x}}=\widehat{\mathbf{x}}-\mathbf{x}$.

The linear estimator (**W**) that satisfies (2) will minimize the mean-squared error (MSE) of the estimator $\widehat{\mathbf{x}}$. This is equivalent to minimizing the trace of $\widehat{\mathbf{x}}{\widehat{\mathbf{x}}}^{*}$. For the ease of notation, we define the covariance for the signal of interest, interference and additive white Gaussian noise as *E*[**xx*** ] = **R**_{
x
}, *E*[** γγ***] =

**R**

_{ γ }, and

*E*[

**nn***] =

**R**

_{ n }, respectively. The solution to (2) is the classical MMSE solution given by Equation (3) [20]

The classical MMSE estimator is very powerful, but requires first-order channel state information (CSI) for the signal of interest (**H**_{
s
}). Traditional packet based systems transmit training data which the receiver can use to estimate (**H**_{
s
}). This is fine when there is no interference present allowing packet detection and timing synchronization algorithms to work as expected. It may even work when the interference is cooperative and can be canceled using a cooperative scheme, such as Walsh codes in a CDMA system. If the interference is non-cooperative and stronger than the desired signal, it may be impossible to detect the packet. This will cause the communications system to fail. When the packet cannot be detected and the symbol boundary cannot be determined, the channel cannot be estimated. These practical limitations render the classical approach infeasible in many real scenarios.

We propose a pre-filter based solely on second-order statistics $\left({\mathbf{H}}_{s}{\mathbf{R}}_{x}{\mathbf{H}}_{s}^{*},{\mathbf{H}}_{i}{\mathbf{R}}_{\gamma}{\mathbf{H}}_{i}^{*},{\mathbf{R}}_{n}\right)$. These statistics can easily be estimated by averaging outer products of received signals at different moments in time. Interference mitigation algorithms that can operate with only these covariance estimates offer greater exibility for communications systems dealing with non-cooperative interferences.

#### 2.1.1 Covariance estimates

As long as the receiver can make reasonably accurate decisions about the presence of the desired signal, it can calculate all of the necessary covariance matrices. Figure 2 shows the times at which two different covariance measurements can be made. Time *t*_{1} indicates a time at which the packet is not being transmitted, and time *t*_{2} indicates the time during which the packet is being transmitted. Let **R**_{1} (4) be the covariance measured during time *t*_{1} , and **R**_{2} (5) be the covariance measured during time *t*_{2} . The methods described for pre-filtering below will require only these quantities. We will validate this assumption with an example from a real-time hardware testbed showing how these determinations can be made in Section 4.

Since the signal components are independent, the covariance of their sum is equal to the sum of their covariances. This allows us to compute the covariance of the desired signal as the difference between the **R**_{2} and **R**_{1} measurements (6).

We will describe a few alternatives for the pre-filter in the following sections. These will be important for bootstrapping the system using the available measurements (**R**_{2} and **R**_{1} ).

#### 2.1.2 Sample matrix inverse

An example of an algorithm that relies only on second-order statistics is the Sample Matrix Inverse (SMI) [18], which has been shown to be very effective for interference mitigation [21]. This algorithm uses the inverse of the covariance of the interference + AWGN as its pre-filtering matrix (7).

The advantage of this algorithm is that the pre-filter only needs knowledge of the covariance of the undesired signal components. This can be particularly useful during the initialization of the communications system. If a strong interference is present, it may not be possible to determine when the signal of interest is being transmitted. This will make it impossible to take an accurate **R**_{2} measurement. Instead, the receiver can take several **R**_{1} measurements and use the SMI as the pre-filter to improve synchronization performance.

Since the receiver will not know when the desired signal is present, it may still take improper measurements. It is therefore necessary to take consecutive measurements and apply the SMI until the desired signal can be detected by the synchronization algorithm. This equates to a series of Bernoulli trials. We know the likelihood of *x* consecutive failures decays exponentially with *x*. The number of trials required is simply a function of the time the desired signal occupies the band. This can easily be adjusted by the system designer to meet the requirements of the communication system. In Section 3, we will show how effective this algorithm is at improving synchronization performance in the presence of very strong interferences. SMI can be used to boot-strap the system. Once a good **R**_{1} measurement has been taken, the system will be able to determine whether the desired signal is present or not. It may not be able to estimate the symbol boundary accurately, but this information will make it possible to take an **R**_{2} measurement and improve the pre-filter.

#### 2.1.3 Maximal signal to interference and noise ratio

The Maximal Signal to Interference and Noise Ratio (MSINR) criterion seeks to maximize the signal power with respect to the interference + noise power. This criterion is formulated by optimizing the power of each of the components in the received signal (8). The linear estimator is still computed as $\widehat{\mathbf{x}}=\mathbf{W}\mathbf{y}$, resulting in its second-order statistics being described by (9).

The MSINR criterion is given by (10). The pre-filter that satisfies this criterion is the solution to the generalized eigen-value problem and is given by (11) [19].

Instead of directly estimating the transmitted signal, this criterion will try to maximize its power relative to the noise and interference. Once again the demodulation can be done with a MMSE based decoder after packet detection, timing synchronization and channel estimation have been completed. This algorithm requires the covariance of the desired signal as well as the information used in the SMI. Once the pre-filter is performing well enough for synchronization to detect packets, the **R**_{2} measurement can be taken, and the SMI pre-filter can be replaced with the MSINR pre-filter.

#### 2.1.4 Two-stage MMSE

Consider (3) for the MMSE Linear estimator. The only component that is not a second-order statistic is **R**_{
x
}**H**_{
s
}*. If we left multiply the MMSE estimator with the channel matrix **H**_{
s
}, we create an equation that is comprised entirely of second-order statistics (12).

This operation may introduce spatial interference by mixing the signal components from independent spatial streams. However, if there is only one spatial stream, the result will be a spreading of the desired signal. This is enough to allow many standard detection algorithms to detect and synchronize with an incoming packet. This modified version of the MMSE estimator leads us to our two-stage approach to interference mitigation.

In the first stage, the pre-filter will be used to suppress the interference as much as possible. This suppression must be enough to facilitate packet detection, timing synchronization and channel estimation. If these tasks can be performed reliably, the estimated channel can be used in a secondary filter. We use this to define a two-stage approach that achieves identical performance as the classical linear MMSE estimator.

In (12), we defined the pre-filter (**W**_{S 1}) using only second-order statistics. The second stage is a simple zero-forcing MIMO decoder (13). We are able to use the first-order statistic **H**_{
s
}at this point because we will have a channel estimate based on the training data from the packet header. We will show how this estimate can be obtained in (15)-(19).

The zero-forcing decoder is used because **H**_{
s
}may not be a square matrix. If the matrix is not square, it will not be directly invertible. This will happen anytime there are fewer transmit streams than receive antennas. Equation (14) shows how the application of these two filters in series results in the original MMSE linear estimator. Equations (13) and (14) together show how the MMSE estimator can be broken down into a two-stage process when ideal CSI is available.

In a real system, however, the channel matrix will need to be estimated from the output of the pre-filter (**W**_{S 1}). The measured channel will be modified from the actual channel by the pre-filter. The output of the pre-filter is given by (15).

### 2.2 Channel estimation

MIMO training matrices (16) can be used to estimate the combined effect of the channel and pre-filter from ${\widehat{\mathbf{x}}}_{S1}$. The columns of the matrix correspond to spatial streams and the rows correspond to symbols. A subset of this matrix can be used for systems that are smaller than 4 × 4. This matrix pattern can also be extended to accommodate systems with more antennas.

In a typical MIMO system, the channel measurement is computed from the received training symbols. Consider **P** = [**p**_{1}**p**_{2}**p**_{3}**p**_{4} ], where each **p**_{
i
}corresponds to a transmission vector. Each element in **p**_{
i
}refers to the symbol transmitted from that antenna for this vector. The receiver can measure the received values for each vector and construct a matrix with the estimates. This measurement is **Z** = **H**_{
s
}**P**. In order to estimate the channel, **Z** is right multipliedby either the Hermitian or transpose of the training matrix. When this training matrix is real-valued (*a* = 1), it does not matter which is used. We will use the Hermitian since it will work for both real and complex-valued training matrices. The result of the right multiplication is given by (17).

The **Z**_{S 1}that will be estimated from **x**_{
S1
} is shown in (18). In order to estimate the original channel from this modified version, we use the inverse of the pre-filter (19).

### 2.3 Rayleigh frequency selective channels

Equation (3) implicitly assumes that the channel is non-dispersive. This means that each entry in the channel matrix is a constant complex value. In order to model dispersive channels, we must extend this model to handle multipath.

This can be done by modeling the channel as a series of complex impulses where the channel matrix for each impulse is composed of constant complex values (20)-(21). The length of the channel is determined by the delay spread.

In this scenario, the MMSE estimator needs to be modified to properly estimate the transmitted signal. Equations (22) and (23) define new compound signals that are composed of M delayed versions of the original signals, where M is the delay spread of the channel. Correspondingly we define new compound channel matrices (24) composed of the channel matrices for each impulse in the original dispersive channel. For this example, we will use *M* = 3. The entities defined in (22)-(24) are related by (25).

With these quantities defined, we can re-examine the solution to the MMSE criterion. Since we are now trying to estimate **x**(*t*) from **y**_{
M
}(*t*), the *W* that satisfies the MMSE criterion will be given by (26). We must also define the covariance (27) of the signal components in (22) and (23). Assuming that the signals will be independent and identically distributed, these covariance matrices will block diagonal as shown in (28).

The cross-correlation of the desired **x**(*t*) with the compound **y**_{
M
}(*t*) is given by (29). The covariance of **y**_{
M
}(*t*) is straightforward and shown in (30). The resulting estimator is given by (31).

Once again, the MMSE estimator is very powerful, but requires first-order CSI (${\mathbf{H}}_{{s}_{MM}}$) for the signal of interest. As shown in the previous sections (4) and (5), we can estimate the second-order statistics by averaging the outer products of the compound received signals (22)-(23). This brings us back to the notion of building pre-filters using only second-order statistics. We will now consider extensions of the previous algorithms for the more complex frequency selective channel.

The SMI and MSINR approaches are easily extended to work in this environment. The pre-filters for these approaches are given by (32) and (33) respectively.

Once again we examine the MMSE linear estimator (31). Similar to the flat fading scenario, the only component that is not a second-order statistic is ${\mathbf{R}}_{x{y}_{M}}$. We can define an estimator (34) that is composed only of second-order statistics.

**W**_{S 1}will function as a pre-filter similar to pre-filter from the flat fading scenario (12). It will facilitate packet detection and synchronization. The second stage is defined in (35). Equation (36) shows how the application of these two filters results in the original MMSE linear estimator. This derivation is similar to the flat fading scenario.

We have shown how this MMSE estimator can be broken down into a two-stage process when ideal channel state information is available. In a real system, the channel matrix will need to be estimated from the output of the pre-filter (**W**_{S 1}). The measured channel will be a modified version of the actual channel the signal went through.

The output of the pre-filter is given in (37). The ${\mathbf{Z}}_{S{1}_{MM}}$ that will be measured from ${\mathbf{x}}_{S{1}_{M}}$ is shown in (38). The dispersive channel can be estimated using *M*-sequences [22, 23]. These sequences have strong autocorrelations at 0-offset and very low correlations for all other offsets. In order to estimate the original channel from this modified version, we use the inverse of the pre-filter (39).

## 3 Simulation results

The algorithms described in Section 2 were simulated in MATLAB using a MIMO systems with 4 receive antennas. This included the ideal MMSE solution, SMI, MSINR and the proposed two-stage MMSE solution. The non-cooperative interference source was a single antenna transmission convolved with its own channel. The interference signal was a white Gaussian noise signal, which is essentially a wideband signal. The desired signal was modeled to have 2 or 3 independent spatial streams. The transmission started with a known sequence to be used for packet detection and timing synchronization. We used the standard 802.11a header [14] with well-known techniques for packet detection, and timing synchronization from [15–17]. This was followed by training data to be used for channel estimation by the receiver. The body of the packet was an uncoded bit stream modulated onto a QPSK constellation. Independent Rayleigh fading channels were generated randomly for each trial for both the desired and undesired signals. These channels remained constant throughout the duration of each trial.

### 3.1 Rayleigh flat fading channels

Rayleigh flat fading channels are the easiest channels to compensate. They consist of a single impulse and allow us to model the channel as a simple gain and phase adjustment of the transmitted signal. We begin our analysis by considering the original goal of our approach, which is to ensure packet synchronization can be performed. It is necessary to examine this performance before we can investigate the bit error rate (BER). Without packet detection, the communications system will fail. For our system to declare successful synchronization the receiver must correctly detect the presence of the packet, as well as accurately determine the symbol boundary. The symbol boundary is used to determine when the packet started and when each symbol begins and ends. Without this information, the receiver is unable to estimate the channel since it does not know when the training data begins and ends. The estimated channel is used by the receiver to estimate the transmitted signal in the secondary filter.

Table 1 provides details on the legend entries for the synchronization failure curves as well as the BER curves that will follow. For the ideal MMSE solution, we used (3) in the pre-filter. There is no need for a secondary filter, since the pre-filter has already provided the best possible estimate of the transmitted signal. When testing SMI and MSINR, an ideal MMSE estimator was used as the secondary filter. Since the signal had already been perturbed by a pre-filter, the MMSE solution used the perturbed version of the channel **W**_{S 1}**H**_{
s
}.

Figure 3 shows the synchronization performance at *-* 20 dB SIR for a two-antenna transmission scheme. As expected, the synchronization algorithm completely fails in the absence of pre-filtering. All of the methods described for pre-filtering offer significant improvements. It is clear that without a pre-filter, the system cannot survive in the presence of strong external interferences.

The pre-filter designed to work with our two-stage approach provides almost the same performance as the SMI pre-filter. They both outperform the MSINR, and their relative performance gap becomes much smaller as the SNR becomes larger. While MSINR does not provide the same level of synchronization performance as SMI, we will see that it does in fact provide far superior BER performance. This is because the SMI algorithm only has knowledge of the interference. It has no information about the channel of the desired signal. This creates very deep nulls for the interference, but can cause degradation of the desired signal. As the channels and transmission schemes become more complex the performance of SMI will degrade. We will see this occur in the BER performance for the flat fading channel as well as the frequency selective channel. Figure 4 shows the synchronization performance of these algorithms as a function of SIR at 10 dB SNR. We can see that SMI is the most effective when the interference is strong. As the interference becomes weaker and less of an issue, the harshness of the null becomes detrimental to the performance of the system. This can be seen by the crossover of the MMSE2 and SMI curves at 2 dB SIR.

The bit error rate for these algorithms is given in Figure 5. As described earlier, the second-stage filter for estimating the transmitted bits is calculated from the channel that was estimated during synchronization. As a bound, we show the BER performance of the system with an ideal version of the classical MMSE solution. While this solution is impractical, due to the lack of a channel estimate for the pre-filter, it represents the best performance we can expect of a linear estimation system. The performance of our two-stage algorithm approaches that of the infeasible MMSE solution. The loss in performance is less than 0.5 dB. We also note that the two-stage solution consistently outperforms SMI and MSINR in these two scenarios. The performance gap between the two-stage MMSE solution and MSINR grows as the complexity of the problem grows. The improvement is roughly 2 dB when 3 spatial streams are transmitted. We will see how this gap becomes even larger with frequency selective channels.

Figure 6 shows the performance of the system as a function of SIR for both the 2 and 3 TX antenna cases. We can see the gains for the two-stage approach are consistent across the entire SIR range. We also notice that the SMI and MSINR approaches do not fare well when the interference gets weaker. In fact, the performance is worse with these pre-filters than it is with no pre-filter at all. This is an issue that we had first noted with synchronization performance for SMI in Figure 4. This crossover represents an undesirable loss in performance. The IM MMSE and two-stage solution both track the performance improvement of the unmodified system once they approach that curve. This represents a graceful transition as the interference becomes weaker and eventually ceases to impact the performance of the system. This is evident for both the 2 and 3 TX antenna cases.

### 3.2 Rayleigh frequency selective channels

Next we shift our attention to frequency selective channels. Again, we begin by examining the synchronization performance to ensure that the pre-filtering operation is providing a significant improvement. Figure 7 shows the synchronization performance at -5 dB SIR for a two-antenna transmission scheme. The legend entries are still defined by Table 1 from the previous section. The equations are replaced with those from the frequency selective channel work in Section 2.3. For the ideal MMSE solution, Equation (3) is replaced by (26). The SMI and MSINR pre-filters (7) and (11) are replaced by (32) and (33) respectively. Finally, the two-stage MMSE filters (12) and (13) are replaced by (34) and (35) respectively. The criteria for successful synchronization are also the same as they were in the previous section.

Once again we see how drastic the improvement in synchronization performance becomes with use of our pre-filter (Figure 7). Without the pre-filtering operation, synchronization fails completely. The two-stage MMSE pre-filtering operation improves that success rate to over 99% when the SNR is greater than 10 dB. This is a very significant improvement that contributes to the stability and throughput of the communications system. The alternatives available for the pre-filter are inferior to the proposed two-stage solution. The SMI solution also fails to outperform the two-stage solution in this complex channel.

The bit error rate for these algorithms with SIR = -5 db is shown in Figure 8. We can see the improvement in performance from the two-stage approach. The performance of the system without a pre-filter is not good enough to sustain reliable communications. The two-stage approach provides performance within 0.5 dB of the bound given by the ideal MMSE solution. It also significantly outperforms MSINR which is the nearest competitor. There is a 2 dB improvement when transmitting with two-spatial streams and even greater improvement for 3 spatial streams.

Figure 9 shows the performance as a function of the SIR. Just as we saw in Figure 6, the two-stage solution consistently outperforms the SMI and MSINR solutions. The IM MMSE and two-stage solution also improve as the interference gets weaker and ceases to dominate the performance of the system.

## 4 Hardware implementation

The SMI multi-antenna interference mitigation scheme was implemented on a hardware testbed for verification. The purpose of this was to prove that this type of algorithm can work on real hardware in a real environment. Most importantly, it showed that the method described for obtaining the **R**_{1} and **R**_{2} measurements in Section 2 could be realized in a real system.

We chose the SMI algorithm since it required the fewest calculations to implement. The limited hardware resources available on the FPGA prevented us from implementing one of the more complex pre-filters. In addition to the limited resources, we were unable to change the existing MMSE MIMO OFDM estimator. This meant we could not implement the stage-2 filter required for our two-stage solution. The pre-filter was added to the existing MIMO OFDM cognitive radio testbed [24] (See Figure 10). The transmitter and receiver on this testbed are completely contained in an FPGA. The interference mitigation module was added before the receiver so it could pre-filter the received signal and improve the SINR before the existing receiver attempted to decode the packet (See Figure 11). The received OFDM signal was demodulated by a standard MMSE MIMO estimator in the pre-existing receiver. This was a key advantage of the SMI and MSINR algorithms discussed in the previous sections.

### 4.1 System overview

The estimation of the covariance is a straightforward averaging of the outer product of the incoming signal. The only concern when estimating the covariance is that the signal being received should contain only the interference and noise. This is required in order to compute an accurate **R**_{
1
} measurement. A controller state machine was designed to enable estimation of the covariance during time periods which are unlikely to contain the signal of interest. The details of this state machine are omitted.

An onboard microprocessor was used to calculate the spatial filtering matrix **W** based on the input covariance matrix **R**. This was computed on a microprocessor with double precision floating point arithmetic using well-known matrix inversion algorithms (Cholesky). A simple protocol was developed for passing matrices between the host and FPGA to prevent data corruption. The interval between passing **R** to the host and receiving a **W** back was 1 ms.

Figure 12 shows a logic analyzer trace of the execution of this state machine and its impact on the performance of a packet based communications system. The signal power at the input and output of the filter is shown in the first two traces. These show when the interference is present at the input, as well as when it is being successfully mitigated at the output. Near the bottom of the figure, we can see when good packets are being received. At the beginning of this trace, there was no interference present and every packet was successfully received.

About a quarter of the way into the trace the filter input changes. This is when the interference signal became active. Unsurprisingly, it prevented the system from receiving packets. The time required for the system to recover and receive packets is a function of the system design parameters. In this case, the most significant source of delay was the matrix inversion required to compute the pre-filter. This computation took a considerable amount of time and dictated the rate at which we could update our pre-filter.

The absolute bottom row on the trace indicates when the controller is computing an **R**_{1} covariance estimate. When the system is behaving well and decoding every packet, the estimates are taken immediately after the packet ends. The transmitter guaranteed this time would be silent, which makes it the optimal time to estimate the interference. Note how these estimates become less frequent when the interference turns on.

The controller waits for a stimulus to begin estimation. If it does not receive the stimulus for a pre-defined time, it assumes interference is preventing the receiver from decoding packets. It then switches to a timeout mode where it measures the covariance on a fixed interval. The gap between the last good estimate and the next attempt is a function of this timeout period. In this example, the controller made a couple of failed attempts at covariance estimation while it was in timeout.

Once it makes a good estimate, it is able calculate the pre-filter. The yellow **W** indicates the time at which the pre-filter is updated with good coefficients. The improvement in performance is immediately visible at the output of the filter. In the second to last trace, the good packet indicators show successful reception of packets, coinciding with the updated pre-filter.

In this example, the system recovered from the onset of interference in 3 ms. This time can be shortened by reducing the timeout period for the controller. Another way to reduce the recovery time is to use a faster processor to compute the pre-filter from the covariance estimate.

This example validates the assumption that the receiver can reasonably make an **R**_{1} measurement even in the presence of strong interference.

## 5 Conclusion

We have demonstrated a practically realizable two-stage MMSE based approach to interference mitigation and MIMO detection. The advantage of our algorithm is that it enables synchronization tasks such as packet detection, timing synchronization, and channel estimation to be performed in the absence of complete channel state information. The pre-filtering operation uses information that can be easily estimated in the absence of training sequences. The second-stage filter uses information from the pre-filter as well as channel estimates computed during synchronization.

We have shown how the synchronization performance of this algorithm is superior to the classical approach with no pre-filter. We have also shown that the BER performance is within a 0.5 dB of the ideal (yet infeasible) classical MMSE solution. We have demonstrated significant improvement over the existing algorithms for complex transmission schemes and channels. We have also demonstrated how the necessary statistics can be estimated and how the system can be built to achieve good performance. This has not only been done for Rayleigh flat fading channels but for frequency selective channels as well.

Our approach is significant because it lends itself to practically realizable systems. The use of second-order statistics in the pre-filter is something that can easily be implemented on real-time hardware. We have also shown how a system can be designed to make the necessary measurements in the presence of a strong interference. This was demonstrated on a real-time hardware testbed with a non-cooperative interference source.

## References

- 1.
Peha J: Wireless communications and coexistence for smart environments.

*Pers Commun IEEE [see also IEEE Wireless Communications]*2000, 7(5):66-68. - 2.
Chiasserini C, Rao R: Coexistence mechanisms for interference mitigation between ieee 802.11 wlans and bluetooth. INFOCOM 2002.

*Proceedings of IEEE, Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies*2002, 2: 590-598. - 3.
Wu Z, Nassar C: Narrowband interference rejection in ofdm via carrier interferometry spreading codes.

*IEEE Trans Wirel Commun*2005, 4(4):1491-1505. - 4.
Le Floch B, Alard M, Berrou C: Coded orthogonal frequency division multiplex [tv broadcasting].

*Proc IEEE*1995, 83(6):982-996. 10.1109/5.387096 - 5.
Wiegandt D, Nassar C: High-throughput, high-performance ofdm via pseudo-orthogonal carrier interferometry coding.

*Proceedings of 12th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications*2001, 2: G-98-G-102. - 6.
Wiegandt D, Nassar C: High-throughput, high-performance ofdm via pseudo-orthogonal carrier interferometry type 2.

*Proceedings of the 5th International Symposium on Wireless Personal Multimedia Communications*2002, 2: 729-733. - 7.
Coulson A: Narrowband interference in pilot symbol assisted OFDM systems.

*IEEE Trans Wirel Commun*2004, 3(6):2277-2287. 10.1109/TWC.2004.837471 - 8.
Bliss D: Robust mimo wireless communication in the presence of interference using ad hoc antenna arrays.

*Military Communications Conference, 2003. MILCOM 2003. IEEE*2003, 2: 1382-1385. - 9.
Zhang H, Dai H: Cochannel interference mitigation and cooperative processing in downlink multicell multiuser mimo networks.

*EURASIP J Wirel Commun Netw*2004, 222-235. [Online]. Available: http://dx.doi.org/10.1155/S1687147204406148 - 10.
Andrews J: Interference cancellation for cellular systems: a contemporary overview.

*IEEE Wirel Commun*2005, 12(2):19-29. 10.1109/MWC.2005.1421925 - 11.
Bliss D, Wu P, Chan A: Multichannel multiuser detection of space-time turbo codes: experimental performance results.

*Conference Record of the Thirty-Sixth Asilomar Conference on Signals, Systems and Computers*2002, 2: 1343-1348. - 12.
Bliss D, Chan A, Chang N: Mimo wireless communication channel phenomenology.

*IEEE Trans Antennas Propag*2004, 52(8):2073-2082. 10.1109/TAP.2004.832363 - 13.
Costello J, Banerjee A, He C, Massey P: A comparison of low complexity turbo-like codes.

*Conference Record of the Thirty-Sixth Asilomar Conference on Signals, Systems and Computers*2002, 1: 16-20. - 14.
IEEE Std. 802.11a-1999, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications

*IEEE*1999. - 15.
Schmidl T, Cox D: Robust frequency and timing synchronization for OFDM.

*IEEE Trans Commun*1997, 45(12):1613-1621. 10.1109/26.650240 - 16.
Nandula S, Giridhar K: Robust timing synchronization for OFDM based wireless lan system. TENCON 2003.

*Conference on Convergent Technologies for Asia-Pacific Region*2003, 4: 1558-1561. - 17.
Singh J, Tolochko I, Wang K, Faulkner M: Timing synchronization for 802.11a WLAN under multipath channels. In

*Proc ATNAC*. Melbourne, Australia; 2003. - 18.
Steinhardt A, Pulsone N: Subband stap processing, the fifth generation.

*Proceedings of the 2000 IEEE Sensor Array and Multichannel Signal Processing Workshop*2000. - 19.
Mallioux RJ:

*Phased Array Handbook*. Artech House, Norwood, MA; 1994. - 20.
Sayed A:

*Fundamentals of Adaptive Filtering*. Wiley, Hoboken, NJ; 2003. - 21.
Shah Anish, Daneshrad B, Zhu Weijun: Narrowband jammer resistance for MIMO OFDM. In

*MILCOM*. San Diego, CA; 2008. - 22.
Davies W:

*System Identification for Self-Adaptive Control*. New York. Wiley-Interscience; 1970. - 23.
Buracas GT, Boynton GM: Efficient design of event-related FMRI experiments using m-sequences.

*NeuroImage*2002, 163(Part 1):801-813. [Online]. Available: http://www.sciencedirect.com/science/article/B6WNP-46HDMPV-T/2/289fe67ae0ab5106dc08562a0c18e6a8 - 24.
Zhu W, Daneshrad B, Bhatia J, Chen J, Kim H-S, Mohammed K, Nasr O, Sasi S, Shah A, Tsai M: A real time mimo ofdm testbed for cognitive radio & networking research. In

*Proceedings of the 1st International Workshop on Wireless Network Testbeds, Experimental Evaluation & Characterization, ser. WiNTECH '06*. ACM, New York, NY, USA; 2006:115-116. [Online]. Available: http://doi.acm.org/10.1145/1160987.1161018

## Author information

## Additional information

### 5.1 Competing interests

The authors declare that they have no competing interests.

## Authors’ original submitted files for images

Below are the links to the authors’ original submitted files for images.

## Rights and permissions

**Open Access** This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

## About this article

#### Received

#### Accepted

#### Published

#### DOI

### Keywords

- MIMO
- MMSE
- Interference Mitigation