1 Introduction

Full duplex (FD) systems that transmits and receives signal simultaneously through the same channel are well known to use resources more efficiently than half duplex (HD) systems, such as time division multiplexing (TDD) and frequency division multiplexing (FDD) [1, 2]. The FD communication system has potential to achieve double spectral efficiency comparing with the HD communication system. However, when each node is transmitting and receiving signals simultaneously through the same channel, the transmitted signal from each node acts as interference to its own receiver, which is known as self interference. The power of the self interference is much larger than that of desired signal because of a short distance between transmit and receive antennas [3]. So, it makes inaccurate digital samples in analog to digital converter (ADC) and degrades the performance of the FD communication system. Thus, one of the main issues in implementing the FD system is how to cancel the self interference before the processing of ADC. Choi et al. [3] proposed the antenna cancelation scheme using two transmit antennas and one receive antenna to cancel the self interference in ADC front end. However, this scheme can be used only for a fixed frequency band since the antenna spacing between transmit and receive antennas is decided by a specific frequency. Though the analog cancelation scheme proposed in [4] can solve this frequency problem of the antenna cancelation scheme, it requires additional RF chain per receive antenna to generate a cancelation signal. Also, the balun cancelation scheme [5] is proposed to cover a wide frequency band. However, this scheme cannot perfectly eliminate the self interference across the entire band, since the balun circuit is not frequency flat. In addition, the schemes in [3,4,5] are applicable when each node has only one receive antenna. To prevent large interference from being received at receive antennas, interference cancelation scheme using pre-prcessing filter was proposed [6]. However, since conventional pre-processing filter, such as channel inversion, requires the spatial domain more than the number of receive antennas, antenna selection scheme was also proposed to reduce performance degradation due to spatial domain loss [7]. Although antenna selection scheme can cancel self interference using less spatial domain than channel inversion, diversity gain of antenna selection scheme is decreased. Therefore, we propose a spatial domain filter which cancels the self interference efficiently in multiple input multiple output (MIMO) communication systems. For our system, we apply a full MIMO analog spatial filter which acts as a matrix of complex multiplier and adder at RF front end to reduce dynamic range of RF chain [8]. Proposed post-processing filter can eliminate the self interference using only one additional receive antenna regardless of the number of interference streams.

2 System Model

As depicted in Fig. 1, we consider a bi-directional full duplex MIMO communication system, where each node has \(N_t\) transmit antennas and \(N_r\) receive antennas, and \({\mathbf{H}}_{ii}\in{\mathcal {C}}{^{{N_r} \times {N_t}}}\), \(i=1,2\) represents an \(N_r \times N_t\) self interference channel matrix with static amplitude, \(\sigma _{SI}^2\), and random phase characteristics [9]. We assume that each node has full channel state information (CSI) for the self interference channel, an \(N_r \times N_t\) matrix \({\mathbf{H}}_{ij}\in{\mathcal {C}}{^{{N_r} \times {N_t}}}\) denotes Rayleigh fading channel from transmitter of node j to receiver of node i with variance \(\sigma _D^2\), and the transmitter does not know CSI of \({\mathbf{H}}_{ij}\), \(i \ne j\). Then, the received signal vector at node i can be expressed as

$$\begin{aligned} {{\mathbf{y}}_i} = \sqrt{{E_S}} {{\mathbf{H}}_{ij}}{{\mathbf{x}}_j} + \sqrt{{E_S}} {{\mathbf{H}}_{ii}}{{\mathbf{x}}_i} + {{\mathbf{n}}_i}, \end{aligned}$$
(1)

where \(E_S\) represents the power of transmitted signal and we assume each node transmits the signal with same power. The \(N_t \times 1\) vectors \({\mathbf{x}}_{i}\in{\mathcal {C}}{^{N_t \times 1}}\) and \({\mathbf{x}}_{j}\in{\mathcal {C}}{^{N_t \times 1}}\) denote transmitted signals from node i and node j, respectively. The \(N_r \times 1\) vector \({\mathbf{n}}_{i}\in{\mathcal {C}}{^{N_r \times 1}}\) is zero mean complex Gaussian noise with variance \(N_0\) at node i, i.e. \({\mathcal {C}}{\mathcal {N}}(0,N_0).\) (Table 1)

Fig. 1
figure 1

A full duplex bi-directional MIMO communication system

Table 1 Limitation of conventional self interference cancelation schemes

3 Spatial Domain Filtering Based on MMSE

3.1 Spatial Domain MMSE Filter

In [10], the pre-processing filters, such as zero-forcing (ZF) and regularized channel inversion (RCI), were proposed to cancel the self interference in FD wireless system. In this letter, we design a post-processing filter based on minimum mean square error (MMSE) criterion to substitute the pre-processing filters proposed in [10]. This MMSE post-processing filter will be compared with proposed post-processing filter. The post-processing filter, \(\mathbf{G}\), mitigates sum of interference and noise by minimizing the mean squared error (MSE) between the filtered signal vector at node i and the transmitted signal vector from node j, \({\mathbf{s}}_j\):

$$\begin{aligned} \arg \mathop {\min }\limits _{\mathbf{G}} {\mathrm{E}}\left\{ {\left\| {{\mathbf{G}}{{\mathbf{y}}_i} - {{\mathbf{s}}_j}} \right\| _F^2} \right\} . \end{aligned}$$
(2)

Then, the MMSE post-processing filter \({\mathbf{G}}_{MMSE}\) is obtained by using the orthogonality principle:

$$\begin{aligned} {G_{MMSE}}= \sqrt{\frac{{{N_t}}}{{{E_S}}}} {\mathbf{H}}_{ij}^H{\left( {{{\mathbf{H}}_{ij}}{\mathbf{H}}_{ij}^H + {{\mathbf{H}}_{ii}}{\mathbf{H}}_{ii}^H + \frac{{{N_t}}}{\eta }{\mathbf{I}}} \right) ^{ - 1}} \end{aligned}$$
(3)

where \(\eta\) is a received SNR. Generally, interference is not perfectly eliminated since the MMSE filter is designed to consider interference and noise together. In the case of FD mode, however, the effect of noise is negligible because the power of the self interference is much larger than that of noise. Thus, the MMSE post-processing filter acts as the ZF filter. Also, since we assume full CSI for the self interference channel, interference can be eliminated perfectly by using the MMSE post-processing filter. Thus, the achievable rate after the MMSE filter is

$$\begin{aligned} {C_{MMSE}} = {\log _2}\left( {\det \left( {{\mathbf{I}} + \frac{{{E_S}{{\mathbf{G}}_{MMSE}}{{\mathbf{H}}_{ij}}{\mathbf{H}}_{ij}^H{\mathbf{G}}_{MMSE}^H}}{{N_0{{\mathbf{G}}_{MMSE}}{\mathbf{G}}_{MMSE}^H}}} \right) } \right) . \end{aligned}$$
(4)

3.2 Antenna Allocation to Maximize Multiplexing Gain

Generally, a linear post-processing filter to cancel interference requires more receive antennas than received data streams. Since each node in FD system receives the self interference streams as well as the desired streams, the number of received data streams at each receiver is twice of the number of transmit data streams. This means that the number of receive antennas should be more than twice of the number of transmit antennas. If the total number of antennas, N, is fixed, the multiplexing gain, r, of each mode is determined as follows.

$$\begin{aligned} r_{FD}= & {} 2\times \min \left( {{N_t},{N_r} - {N_t}} \right) \end{aligned}$$
(5)
$$\begin{aligned} r_{HD}= & {} \min \left( {{N},{N}} \right) = N \end{aligned}$$
(6)

In (5), \(r_{FD}\) is maximized when \(N_t\) equals to \(N_r - N_t\), i.e. \(N_t = \frac{1}{3}N\). Thus, the maximum multiplexing gain of FD mode is \(\frac{2}{3}N\), which means that the asymmetric antenna allocation of FD mode causes performance degradation compared with HD mode.

4 Proposed Spatial Domain Filtering

In wireless communication systems, pre-processing or post-processing filter for interference cancelation has been using only channel information, since it has no information for symbols from interference channel. In FD communication system, however, each node knows transmitted symbols and self interference channel, so the symbol information can be exploited for designing a post-processing filter. Thus, we can change the dimension of interference component from an \(N_r \times N_t\) matrix to an \(N_r \times 1\) vector by using not only channel state information but also symbol information:

$$\begin{aligned} \left[ {\begin{array}{*{20}{c}} {{h_{11}}}&{} \cdots &{}{{h_{1{N_t}}}}\\ \vdots &{} \ddots &{} \vdots \\ {{h_{{N_r}1}}}&{} \cdots &{}{{h_{{N_r}{N_t}}}} \end{array}} \right] \left[ {\begin{array}{*{20}{c}} {{x_1}}\\ { \vdots }\\ {{x_{{N_t}}}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{a_1}}\\ \vdots \\ {{a_{{N_r}}}} \end{array}} \right] , \end{aligned}$$
(7)

where \({\mathbf{a}} = {\left[ {{a_1}, \ldots ,{a_{{N_r}}}} \right] ^T}\) is the effective self interference channel which is represented by an \(N_r \times 1\) vector. For nulling the conventional interference channel \({\mathbf{H}}_{ii}\), the required spatial dimension is \(N_t\) which is equal to the number of transmit data streams. On the other hand, only one spatial demension is enough to null the effective self interference channel \(\mathbf{a}\), since \(\mathbf{a}\) has only one non-zero singular value regardless of transmit data streams. Thus, only one additional antenna is needed to cancel the self interference regardless of the number of transmit data streams in the proposed approach.

Figure 2 shows the model of the proposed scheme where the received data streams are divided into one self interference stream and \((N_r-1)\) desired streams by the proposed post-processing filter in RF front end. The singular value decomposition (SVD) of the effective self interference channel is given by

$$\begin{aligned} {{\mathbf{H}}_{ii}}{{\mathbf{x}}_i} = {\mathbf{a}} = {\mathbf{U}}{\varvec{\Sigma }} {{\mathbf{V}}^H} = \left[ {\begin{array}{*{20}{c}} |&{}|&{} \cdots &{}|\\ {{{\mathbf{u}}_1}}&{}{{{\mathbf{u}}_2}}&{} \cdots &{}{{{\mathbf{u}}_{{N_r}}}}\\ |&{}|&{} \cdots &{}| \end{array}} \right] \left[ {\begin{array}{*{20}{c}} {{\sigma _1}}\\ 0\\ \vdots \\ 0 \end{array}} \right] \left[ 1 \right] , \end{aligned}$$
(8)

where \({\mathbf{u}}_i\) is the i-th column of the unitary matrix, \(\mathbf{U}\), whose column forms a set of orthonormal vectors. Therefore, the proposed post-processing filter, \({\mathbf{G}}_{prop}\in{\mathcal {C}}{^{{(N_r-1)} \times {N_r}}}\), is designed by using the columns of \(\mathbf{U}\) that form a null space of the effective self interference channel:

$$\begin{aligned} {{\mathbf{G}}_{prop}} = \left[ {\begin{array}{*{20}{c}} - &{}{{\mathbf{u}}_2^H}&{} - \\ \vdots &{} \vdots &{} \vdots \\ - &{}{{\mathbf{u}}_{{N_r}}^H}&{} - \end{array}} \right] . \end{aligned}$$
(9)

Applying \({\mathbf{G}}_{prop}\) to the received signal of (1), we can have

$$\begin{aligned} {{\mathbf{z}}_i} = {{\mathbf{G}}_{prop}}{{\mathbf{y}}_i} = \sqrt{{E_S}} {{\mathbf{G}}_{prop}}{{\mathbf{H}}_{ij}}{{\mathbf{x}}_j} + {\tilde{\mathbf{n}}_i}, \end{aligned}$$
(10)

where \({\tilde{\mathbf{n}}_i} = {{\mathbf{G}}_{prop}}{{\mathbf{n}}_i}\) is an effective noise vector. Since full CSI for the self interference channel is assumed, the self interference can be fully controlled. The achievable rate and multiplexing gain of the proposed scheme are given by

$$\begin{aligned} C_{prop}= & {} {\log _2}\left( {\det \left( {{\mathbf{I}} + \frac{{{E_s}{{\mathbf{G}}_{prop}}{{\mathbf{H}}_{ij}}{\mathbf{H}}_{ij}^H{\mathbf{G}}_{prop}^H}}{{{N_0}{{\mathbf{G}}_{prop}}{\mathbf{G}}_{prop}^H}}} \right) } \right) , \end{aligned}$$
(11)
$$\begin{aligned} {r_{prop}}= & {} 2 \times \min \left( {{N_t},{{N_r} - 1}} \right) . \end{aligned}$$
(12)
Fig. 2
figure 2

Proposed post-processing model

Unlike FD mode with a linear filter such as MMSE, the proposed scheme requires only one additional receive antenna to cancel the self interference. The maximum multiplexing gain of the proposed scheme, \(r_{prop}\), is achieved when \(N_t\) equals to \(N_r - 1\) like the case of FD mode with a linear filter. If total number of antennas is fixed to N, the maximum multiplexing gain of the proposed scheme is \(2 \times \left\lfloor {\frac{{N - 1}}{2}} \right\rfloor\), where \(\left\lfloor {x} \right\rfloor\) means the largest integer not greater than x. Therefore, the proposed scheme enables antenna allocation for transmit and receive antennas more efficiently, and it is expected that the achievable rate of the proposed scheme is larger than that of the MMSE filter. It is also possible that the self interference can be subtracted by using a full MIMO analog spatial filter. However, it requires larger power to generate cancelation signal having the same power with the self interference. Thus, the proposed scheme is more efficient in the point of power efficiency.

5 Simulation Results

In FD mode, each antenna equips only one RF chain, i.e. transmission chain or reception chain, because antennas are divided into transmit antennas and receive antennas. On the other hand, each antenna of HD mode requires both transmission and reception RF chains, since all antennas have to perform both transmission and reception [11]. However, it is possible that each antenna transmits and receives simultaneously using same frequency when all antennas have both transmission and reception RF chains in FD systems [12]. Thus, in this section, we compare the achievable rate of the proposed post-processing filter with those of HD mode and the MMSE filter based on two scenarios. First, we assume that the number of antennas of FD mode is same as that of HD mode, while the number of RF chains of FD mode is half of HD mode in correlated fading desired channel. Second, it is possible that each antenna transmits and receives simultaneously using same frequency in i.i.d. desired channel where the number of RF chains and antennas of FD mode is same as that of HD mode. The reason why the i.i.d. channel is assumed in the second scenario is that the effect of correlation in the proposed scheme is same with other two schemes. On the other hand, in the first scenario, the effect of correlation differs by each scheme because the distances between transmit or receive antennas vary according to schemes. Thus, the correlated fading channel is assumed in the first scenario. Instead, we consider channel estimation error of the self interference channel when the desired channel has i.i.d. characteristic. We assume that the variance of the desired channel and the amplitude of the self interference channel are 0 [dB] and 20 [dB], respectively, i.e. SIR is − 20 [dB] in two scenarios. Also, each transmission power of the FD mode is half of that of the HD mode for equal power consumption.

5.1 The Half Number of RF Chains Compared to HD Mode in Correlated Fading Channel

In this subsection, the total number of antennas is set to \(N=9\). Since the proposed receiver requires one additional antenna to cancel the self interference, we consider the case of \(N_t = 4\) and \(N_r = 5\) for the proposed filter case. Also, since the multiplexing gain of the MMSE filter is optimal when the number of receiver antennas is twice of the number of transmit antennas, we set \(N_t = 3\) and \(N_r = 6\) for the MMSE filter case. We apply the Kronecker product correlation model for correlated channel [13]:

$$\begin{aligned} {\mathbf{H}} = {{\mathbf{R}}_r}^{\frac{1}{2}}{{\mathbf{H}}_w}{{\mathbf{R}}_t}^{\frac{1}{2}}, \end{aligned}$$
(13)

where \({\mathbf{H}}_w\) represents i.i.d. MIMO channel, and \({\mathbf{R}}_t\) and \({\mathbf{R}}_r\) are transmit and receive correlation matrices, respectively. It is assumed that the correlation coefficient, \(\rho\), is same at transmit and receive correlation matrices. Because a channel becomes more correlated as the distance between antennas becomes smaller [13], the transmit and receive antennas are arranged intercrossly in the proposed scheme to reduce channel colrrelation. In this simulation, odd and even indexed antennas are used as receive and transmit antennas respectively, so FD mode has a squared correlation coefficient compared to HD mode. Figure 3 shows the achievable rates according to various \(\frac{E_S}{N_0}\), where \(N_t = N_r = 9\) in HD mode, \(N_t = 3, N_r = 6\) in the MMSE filter and \(N_t = 4, N_r = 5\) in the proposed filter. The achievable rate of FD mode using the MMSE filter is less than that of HD mode except when the correlation coefficient is 0.99. The correlation coefficient of 0.99 means that the rank of channel is nearly 1. In this environment, FD mode has higher multiplexing gain than HD mode, since FD mode has two communication links, which means nearly 2 multiplexing gain is achieved in FD mode. Thus, the performance between those is reversed when transmit power becomes larger. The achievable rate of the proposed scheme is larger than that of HD mode when the correlation coefficient is larger than 0.66, because, as mentioned before, the distance between antennas in FD mode is larger than that in HD mode so that the effect of correlation in FD mode is smaller than that in HD mode. The performance degradation caused by one additional antenna is decreased when the total number of antennas becomes larger. Thus, we expect that the performance improvement of the proposed scheme compared with HD mode is larger when the total number of antennas becomes larger. If the channel has i.i.d. characteristics, i.e. \(\rho = 0\), HD mode has the largest achievable rate, since the achievable rate is proportional to the rank of channel. In the simulation environment, the rank of HD channel is \(min(N_t,N_r) = 9\), while the rank of FD channel using the proposed filter is \(min(N_t,N_r-1) = 4\). Since two communication links are built in the case of FD mode, the multiplexing gain is twice of the rank of channel. Thus, HD mode and FD mode have 9 and 8 multiplexing gain, respectively.

Fig. 3
figure 3

Achievable rate in correlated fading channel when \(N = 9\). Also, each antenna in FD mode has one of transmission or reception RF chain

5.2 The Same Number of RF Chains in i.i.d. Channel

Figure 4 shows the achievable rates when the same number of antennas and RF chains is used in the proposed scheme and HD mode, where \(N = 12\) and the channel has i.i.d. characteristics with channel estimation error in self interference channel. In [12], Bharadia et al. showed each antenna transmits and receives simultaneously using the same resource in FD mode if all antennas have both transmission and reception RF chains. Thus, we investigate the cases of \(N_t = 12, N_r = 12\) in HD mode, \(N_t = 6, N_r = 12\) in FD mode using the MMSE filter and \(N_t = 11, N_r = 12\) in FD mode using the proposed post-processing filter. Some transmit antennas cannot use in FD mode because the number of receive antennas should be larger than that of transmit antennas to cancel self interference. The estimated self interference channel can be expressed as

$$\begin{aligned} {\mathbf{H}}_{ii} = {{\mathbf{H}}_{ii,est}} + {{\mathbf{H}}_e}, \end{aligned}$$
(14)

where \({\mathbf{H}}_{ii,est}\) and \({{\mathbf{H}}_e}\) are estimated channel and estimation error, respectively. Each matrix has i.i.d. complex Gaussian characteristics with variance \(\sigma _{SI}^2\left( {1 - \sigma _e^2} \right)\) and \({\sigma _e^2}\), respectively, where \(\sigma _e^2\) means channel estimation error ratio [14]. In contrast with Fig. 3 when the correlation coefficient is zero, i.e. \(\rho = 0\), the achievable rate of the proposed scheme is higher than that of HD mode since each antenna in FD system has both transmission and reception RF chains. In this condition, the HD mode has \(min(N_t,N_r) = 12\) multiplexing gain, and the FD modes using the MMSE filter and the proposed scheme have the multiplexing gain of \(2 \times min(N_t,N_r) = 12\) and \(2 \times min(N_t,N_r) = 22\), respectively. The achievable rates of the HD mode are higher than that of the FD mode using the MMSE filter, because the transmit power of the FD mode is a half of that of the HD mode even though two schemes have the same multiplexing gain. In FD mode, the achievable rates, when the estimation error exists, are saturated in high SNR region because the effect of the residual self interference is dominant in high SNR region.

Fig. 4
figure 4

Achievable rate in i.i.d. desired channel with self interference channel estimation error

Figure 5 shows the achievable rates versus N where the SNR is 20 [dB]. Since the same number of antennas and RF chains is used in all systems, \(N_t=N\), \(N_r=N\) in HD mode, \(N_t=\frac{1}{2}N\), \(N_r=N\) in FD mode using MMSE, and \(N_t=N-1\), \(N_r=N\) in FD mode using proposed scheme. We can see that the performance of the proposed scheme is lower than that of the HD mode when \(N=6\), but it is higher than that of the HD mode when N is larger than 12, where \(\sigma _e^2 = -\,20 \,[{\text{dB}}]\). This is because, as N becomes larger, the performance gain due to multiplexing gain difference between the proposed scheme and the HD mode becomes higher than the performance loss due to the channel estimation error in self interference channel. However, in FD mode using MMSE, since the multiplexing gain is same with HD mode, this system cannot obtain the performance gain due to multiplexing gain.

Fig. 5
figure 5

Achievable rate versus the number of antennas in i.i.d. desired channel with self interference channel estimation error

6 Conclusion

We proposed a post-processing filter which successfully cancels self interference in FD system. The proposed scheme has the advantage that only one more antenna is required to cancel self interference regardless of the number of transmitted streams. Thus, the proposed filter enables more efficient antenna allocation than the MMSE filter in FD mode. The simulation results showed that the proposed scheme has higher achievable rate than HD mode even when the number of RF chains is half compared with HD mode in correlated channel with \(\rho \ge 0.66\). In addition, if the same number of RF chains is equipped with HD mode in the proposed scheme, the proposed scheme gives the best performance in i.i.d. channel when perfect CSI of self interference channel is obtained.