In this paper, we consider an SSD-based two-way DF relaying system, as shown in Fig. 1. The studied system consists of two source terminals (T_{1} and T_{2}) and *K* number of relays (R_{
i
}, *i*=1,2,⋯,*K*), each with one antenna and operating in half-duplex mode. In this system, both T_{1} and T_{2} communicate with each other directly and through *K* relays over slow Rayleigh fading channel, whose information is available at all the receiving nodes as well as at the *K* relays. The channel coefficients of \(\textsf {T}_{1} \rightarrow \textsf {T}_{2}\), \(\textsf {R}_{i} \rightarrow \textsf {T}_{1}\), and \(\textsf {R}_{i} \rightarrow \textsf {T}_{2}\) links are denoted as *h*, *a*
_{
i
}, and *b*
_{
i
} with variances \({\sigma _{h}^{2}}\), \({\sigma _{a}^{2}}\), and \({\sigma _{b}^{2}}\), respectively. The channel coefficients are assumed to be reciprocal and to remain constant during each transmission phase, and all channels are mutually independent and have no interference with each other.

The total transmit power constraint *P*
_{tot} is imposed on the exchange of every four symbols in three time slots at two source terminals and the best relay. For a fair analysis, the total transmit power *P*
_{tot} is always equal to the total power of four symbols. The symbol energies at two source terminals (T_{1} and T_{2}) and at the relays (R_{
i
}) are denoted as \(P_{T_{1}}\), \(P_{T_{2}}\), and *P*
_{
R
}, respectively. Zero-mean additive white Gaussian noise (AWGN) with variance *N*
_{0} is assumed over all channels. The distances of T_{1}−T_{2}, T_{1}−R_{
i
}, and T_{2}−R_{
i
} links are denoted as \(d_{T_{1} T_{2}}\), \(d_{T_{1}R}\), and \(d_{T_{2}R}\), respectively, and their geometric gains are represented as \(\lambda _{T_{1}R} = (d_{T_{1} T_{2}} /d_{T_{1}R})^{\nu }\phantom {\dot {i}\!}\) and \(\lambda _{T_{2}R} = (d_{T_{1} T_{2}}/d_{T_{2}R})^{\nu }\), respectively, where *ν* is the path loss exponent. The instantaneous signal-to-noise ratios (SNRs) of \(\textsf {T}_{1} \rightarrow \textsf {T}_{2}\), \(\textsf {T}_{2} \rightarrow \textsf {T}_{1}\), \(\textsf {T}_{1} \rightarrow \textsf {R}_{i}\), \(\textsf {T}_{2} \rightarrow \textsf {R}_{i}\), \(\textsf {R}_{i} \rightarrow \textsf {T}_{1}\), and \(\textsf {R}_{i} \rightarrow \textsf {T}_{2}\) links are denoted as \(\gamma _{h_{1}}=|h|^{2}\,P_{T_{1}}/N_{0}\phantom {\dot {i}\!}\), \(\gamma _{h_{2}}=|h|^{2}\,P_{T_{2}}/N_{0}\phantom {\dot {i}\!}\), \(\gamma _{{sa}_{i}}=|a_{i}|^{2}\,\lambda _{T_{1}R}\,P_{T_{1}}/N_{0}\phantom {\dot {i}\!}\), \(\gamma _{{sb}_{i}}=|b_{i}|^{2}\,\lambda _{T_{2}R}\,P_{T_{2}}/N_{0}\phantom {\dot {i}\!}\), \(\gamma _{a_{i}}=|a_{i}|^{2}\,\lambda _{T_{1}R}\,P_{R}/N_{0}\phantom {\dot {i}\!}\), and \(\gamma _{b_{i}}=|b_{i}|^{2}\,\lambda _{T_{2}R}\,P_{R}/N_{0}\phantom {\dot {i}\!}\), while average SNRs are \(\overline {\gamma }_{h_{1}}={\sigma _{h}^{2}}\,P_{T_{1}}/N_{0}\phantom {\dot {i}\!}\), \(\overline {\gamma }_{h_{2}}={\sigma _{h}^{2}}\,P_{T_{2}}/N_{0}\phantom {\dot {i}\!}\), \(\overline {\gamma }_{sa}={\sigma _{a}^{2}}\,\lambda _{T_{1}R}\,P_{T_{1}}/N_{0}\phantom {\dot {i}\!}\), \(\overline {\gamma }_{sb}={\sigma _{b}^{2}}\,\lambda _{T_{2}R}\,P_{T_{2}}/N_{0}\phantom {\dot {i}\!}\), \(\overline {\gamma }_{a}={\sigma _{a}^{2}}\,\lambda _{T_{1}R}\,P_{R}/N_{0}\), and \(\overline {\gamma }_{b}={\sigma _{b}^{2}}\,\lambda _{T_{2}R}\,P_{R}/N_{0}\), respectively.

In the studied system, SSD is applied at the source terminals and the relays. Figure 2 shows the constellation rotation and expansion in the SSD. First, each \(m=\log _{2} (M)\) information bits at each source terminal are grouped and mapped to some ordinary constellation using a digital modulation scheme such as *M*-ary quadrature amplitude modulation (*M*-QAM) or *M*-ary phase-shift keying (*M*-PSK).

Let **s**=(*s*
_{1},*s*
_{2}) be the two original signal points from the ordinary constellation *Φ* (e.g., 4-QAM, or QPSK), i.e., *s*
_{1},*s*
_{2}∈*Φ*. The original complex symbols can be denoted as \(s_{1} = \Re \{s_{1}\}+j\Im \{s_{1}\}\) and \(s_{2} = \Re \{s_{2}\}+j\Im \{s_{2}\}\), where \(j=\sqrt {-1}\), and \(\Re \{\cdot \}\) and *I*{·} are *I* and *Q* components of the symbols, respectively. Then, *s*
_{1} and *s*
_{2} are rotated by the angle *θ*, i.e., *x*
_{1}=*s*
_{1}
*e*
^{jθ} and *x*
_{2}=*s*
_{2}
*e*
^{jθ}. The rotated symbols, **x**=(*x*
_{1},*x*
_{2}), correspond to a rotated constellation *Φ*
_{
r
}, which is generated by applying a transformation *Θ* to the ordinary constellation as

$$ \Theta = \left[\begin{array}{cc} \cos \theta & -\sin \theta \\ \sin \theta & \cos \theta \\ \end{array}\right]. $$

(1)

The rotation angle *θ* is chosen carefully to ensure that each signal point in the rotated constellation carries enough information in one component, either *I* or *Q*, and uniquely represents the original signal [28, 31]. A list of *θ* for various modulation schemes can be found in [34, 35], such as the rotation angle *θ* of 26.6°, 14.0°, and 7.1°, is chosen for 4-, 16-, and 64-QAM constellations, respectively. The new SSD symbols, **z**=(*z*
_{1},*z*
_{2}), for transmission are formed by interleaving the *Q* components of the rotated symbols, *x*
_{1} and *x*
_{2}, and are given by

$$\begin{array}{*{20}l} z_{1} &= \Re\{x_{1}\} +j\Im\{x_{2}\}, \end{array} $$

(2)

$$\begin{array}{*{20}l} z_{2} &= \Re\{x_{2}\} +j\Im\{x_{1}\}. \end{array} $$

(3)

The SSD symbols, *z*
_{1} and *z*
_{2}, for transmission belong to an expanded constellation *Υ*, i.e \(\Upsilon = \Re \{\Phi _{r}\} \times \Im \{\Phi _{r}\}\), where × is the Cartesian product of two sets. It is significant to mention that each member of *Υ* consists of two components, i.e., a real component from a member of *Φ*
_{
r
} and an imaginary component from another member of *Φ*
_{
r
}. Moreover, each of the component identifies a specific member of *Φ*
_{
r
}. Thus, decoding a member of *Υ* leads to decoding two different members of *Φ*
_{
r
} (i.e., *x*
_{1} and *x*
_{2}). It is important to highlight that the expanded constellation, resulting from component interleaving and ordinary constellation rotation, does not convert a low order constellation to higher order. In addition, the expanded constellation maintains the same number of bits per signal point as in the ordinary constellation.

To this end, we explain the use of SSD in the three-phase two-way DF relaying system. Firstly, T_{1} prepares two SSD symbols, \(z_{T_{1},1}\) and \(z_{T_{1},2}\), by component interleaving of its two original rotated symbols, \(x_{T_{1},1}\) and \(x_{T_{1},2}\), as

$$\begin{array}{*{20}l} z_{T_{1},1} &= \Re\left\{x_{T_{1},1}\right\} +j\Im\left\{x_{T_{1},2}\right\}, \end{array} $$

(4)

$$\begin{array}{*{20}l} z_{T_{1},2} &= \Re\left\{x_{T_{1},2}\right\} +j\Im\left\{x_{T_{1},1}\right\}. \end{array} $$

(5)

In the first time slot, T_{1} broadcasts only one of the two SSD symbols (i.e. \(z_{T_{1},1}\phantom {\dot {i}\!}\)). Thus, the received signal at T_{2} and the *i*th relay can be written as

$$\begin{array}{*{20}l} y_{T_{1} T_{2}} &= \sqrt{P_{T_{1}}}\, h \, z_{T_{1},1} + w_{T_{2},1}, \end{array} $$

(6)

$$\begin{array}{*{20}l} y_{T_{1} R_{i}} &= \sqrt{P_{T_{1}} \lambda_{T_{1} R}}\, a_{i} \, z_{T_{1},1} + w_{T_{1},R_{i}}, \end{array} $$

(7)

where \(w_{T_{2},1}\phantom {\dot {i}\!}\) and \(w_{T_{1},R_{i}}\phantom {\dot {i}\!}\) denote zero-mean AWGN with a variance of *N*
_{0} at T_{2} and the *i*th relay, respectively. The two original rotated symbols, \(x_{T_{1},1}\phantom {\dot {i}\!}\) and \(x_{T_{1},2}\phantom {\dot {i}\!}\), are detected using the transmitted SSD symbol, \(z_{T_{1},1}=\Re \{x_{T_{1},1}\} +j\Im \{x_{T_{1},2}\}\phantom {\dot {i}\!}\), at the *i*th relay as

$$\begin{array}{*{20}l} {}\hat{x}_{T_{1},1} &= \!\arg \min_{x \in \Phi_{r}} \left|\Re\left\{a_{i}^{*} \, y_{T_{1}R_{i}}\right\} \,-\, \sqrt{P_{T_{1}} \lambda_{T_{1}R}}\, |a_{i}|^{2} \,\Re\left\{ x_{T_{1},1}\right\}\right|^{2}, \end{array} $$

(8)

$$\begin{array}{*{20}l} {}\hat{x}_{T_{1},2} &=\! \arg \min_{x \in \Phi_{r}} \left|\Im\left\{a_{i}^{*} \, y_{T_{1}R_{i}}\right\} \,-\, \sqrt{P_{T_{1}} \lambda_{T_{1}R}}\, |a_{i}|^{2} \,\Im\left\{ x_{T_{1},2}\right\}\right|^{2}, \end{array} $$

(9)

where ∗ denotes complex conjugation.

Secondly, T_{2} prepares two SSD symbols, \(z_{T_{2},1}\phantom {\dot {i}\!}\) and \(z_{T_{2},2}\phantom {\dot {i}\!}\), by component interleaving of its two original rotated symbols, \(x_{T_{2},1}\phantom {\dot {i}\!}\) and \(x_{T_{2},2}\phantom {\dot {i}\!}\), as

$$\begin{array}{*{20}l} z_{T_{2},1} &= \Re\left\{x_{T_{2},1}\right\} +j\Im\left\{x_{T_{2},2}\right\}, \end{array} $$

(10)

$$\begin{array}{*{20}l} z_{T_{2},2} &= \Re\left\{x_{T_{2},2}\right\} +j\Im\left\{x_{T_{2},1}\right\}. \end{array} $$

(11)

Similarly, in the second time slot, T_{2} broadcasts only one of the two SSD symbols (i.e., \(z_{T_{2},1}\phantom {\dot {i}\!}\)), which is received at T_{1} and the *i*th relay as

$$\begin{array}{*{20}l} y_{T_{2} T_{1}} &= \sqrt{P_{T_{2}}}\, h \, z_{T_{2},1} + w_{T_{1},1}, \end{array} $$

(12)

$$\begin{array}{*{20}l} y_{T_{2} R_{i}} &= \sqrt{P_{T_{2}} \lambda_{T_{2} R}}\, b_{i} \, z_{T_{2},1} + w_{T_{2},R_{i}}, \end{array} $$

(13)

where \(w_{T_{1},1}\phantom {\dot {i}\!}\) and \(w_{T_{2},R_{i}}\phantom {\dot {i}\!}\) denote zero-mean AWGN with a variance of *N*
_{0} at T_{1} and the *i*th relay, respectively. Then, the two original rotated symbols, \(x_{T_{2},1}\phantom {\dot {i}\!}\) and \(x_{T_{2},2}\phantom {\dot {i}\!}\), are detected using the transmitted SSD symbol, \(z_{T_{2},1}\phantom {\dot {i}\!}\), at the *i*th relay as

$$\begin{array}{*{20}l} {}\hat{x}_{T_{2},1} &= \arg \min_{x \in \Phi_{r}} \left|\Re\left\{b_{i}^{*} \, y_{T_{2}R_{i}}\right\} \,-\, \sqrt{P_{T_{2}} \lambda_{T_{2}R}}\, |b_{i}|^{2} \,\Re\left\{ x_{T_{2},1}\right\}\right|^{2}\!, \end{array} $$

(14)

$$\begin{array}{*{20}l} {}\hat{x}_{T_{2},2} &= \arg \min_{x \in \Phi_{r}} \left|\Im\left\{b_{i}^{*} \, y_{T_{2}R_{i}}\right\} \,-\, \sqrt{P_{T_{2}} \lambda_{T_{2}R}}\, |b_{i}|^{2} \,\Im\left\{ x_{T_{2},2}\right\}\right|^{2}. \end{array} $$

(15)

Thanks to the SSD technique that an SSD symbol from a terminal received at the relay consists of two components to represent two different original symbols. If the relay successfully decodes an SSD symbol, \(z_{T_{1},1}\phantom {\dot {i}\!}\), from T_{1}, it can recover both symbols, \(x_{T_{1},1}\phantom {\dot {i}\!}\) and \(x_{T_{1},2}\phantom {\dot {i}\!}\), correctly due to the SSD technique. Similarly, the relay can recover \(x_{T_{2},1}\phantom {\dot {i}\!}\) and \(x_{T_{2},2}\phantom {\dot {i}\!}\) correctly upon successful decoding of \(z_{T_{2},1}\phantom {\dot {i}\!}\) from T_{2}. Otherwise, the failure in decoding is conveyed through a reliable feedback channel to the terminals. These assumptions are based on ARQ and CRC protection features which are part of the advanced wireless standards such as IEEE 802.16 [36]. Let \(\mathcal {D}\) be the set of relays that have correctly decoded the messages in the first and second time slots, and \(|\mathcal {D}|\) its cardinality. Let R_{
t
} denotes the best relay among all relays that correctly decode both source messages and have good channel conditions to both source terminals. Thus, the relay selection criteria, based on \(\gamma _{a_{i}}\phantom {\dot {i}\!}\) and \(\gamma _{b_{i}}\phantom {\dot {i}\!}\), can be expressed as

$$ \textsf{R}_{t} = \arg \max_{i \in \mathcal{D}} \left\{\min \left(\gamma_{a_{i}}, \gamma_{b_{i}} \right)\right\}. $$

(16)

The best relay (R_{
t
}) forwards the combined signal of \(z_{T_{1},2}\) and \(z_{T_{2},2}\) to the source terminals in the third time slot. Thus, the received signals at the source terminals can be written as

$$\begin{array}{*{20}l} y_{R_{t} T_{1}} &= \sqrt{P_{R} \lambda_{T_{1}R}}\, a_{t} \, z_{T_{1},2} +\sqrt{P_{R} \lambda_{T_{1}R}}\, a_{t} \, z_{T_{2},2} + w_{1,2}, \end{array} $$

(17)

$$\begin{array}{*{20}l} y_{R_{t} T_{2}} &= \sqrt{P_{R} \lambda_{T_{2}R}}\, b_{t} \, z_{T_{1},2} +\sqrt{P_{R} \lambda_{T_{2}R}}\, b_{t} \, z_{T_{2},2} + w_{2,2}, \end{array} $$

(18)

where *w*
_{1,2} and *w*
_{2,2} denote zero-mean AWGN with a variance of *N*
_{0} at T_{1} and T_{2}, respectively. Since each terminal perfectly knows its transmitted signal, it can cancel the self-interference term. Thus, the resulting signals at T_{1} and T_{2} can be written as

$$\begin{array}{*{20}l} y_{R_{t} T_{1}} &= \sqrt{P_{R} \lambda_{T_{1}R}}\, a_{t} \, z_{T_{2},2} + w_{1,2}, \end{array} $$

(19)

$$\begin{array}{*{20}l} y_{R_{t} T_{2}} &= \sqrt{P_{R} \lambda_{T_{2}R}}\, b_{t} \, z_{T_{1},2} + w_{2,2}. \end{array} $$

(20)

Let \(\mathbf {r}_{T_{1}}=(r_{T_{1},1}, r_{T_{1},2})\phantom {\dot {i}\!}\) be the signal after component de-interleaver at T_{2}, transmitted by T_{1}, which can be expressed as

$$\begin{array}{*{20}l} r_{T_{1},1} &= \Re\left\{h^{*} \, y_{T_{1}T_{2}}\right\} +j\Im\left\{b_{t}^{*} \, y_{R_{t} T_{2}}\right\}, \end{array} $$

(21)

$$\begin{array}{*{20}l} r_{T_{1},2} &= \Re\left\{b_{t}^{*} \, y_{R_{t} T_{2}}\right\} +j\Im\left\{h^{*} \, y_{T_{1}T_{2}}\right\}. \end{array} $$

(22)

The maximum likelihood detection is applied at T_{2} in order to detect the message transmitted by T_{1} using

$$\begin{array}{*{20}l} \hat{x}_{T_{1},1} &= \arg \min_{x \in \Phi_{r}} \left[\left|\Re\left\{r_{T_{1},1}\right\}-\sqrt{P_{T_{1}}}|h|^{2} \Re\left\{x_{T_{1},1}\right\}\right|^{2} \right. \\ &\quad \left. +\left|\Im\left\{r_{T_{1},1}\right\}\,-\,\sqrt{P_{R} \lambda_{T_{2}R}}|b_{t}|^{2} \Im\left\{x_{T_{1},1}\right\}\right|^{2} \right], \end{array} $$

(23)

$$\begin{array}{*{20}l} \hat{x}_{T_{1},2} &= \arg \min_{x \in \Phi_{r}} \left[\left|\Re\left\{r_{T_{1},2}\right\}-\sqrt{P_{R} \lambda_{T_{2}R}}|b_{t}|^{2} \Re\left\{x_{T_{1},2}\right\}\right|^{2} \right. \\ &\quad \left. +\left|\Im\left\{r_{T_{1},2}\right\}-\sqrt{P_{T_{1}}}|h|^{2} \Im\left\{x_{T_{1},2}\right\}\right|^{2} \right]. \end{array} $$

(24)

Similarly, the signal at T_{1}, \(\mathbf {r}_{T_{2}}=(r_{T_{2},1}, r_{T_{2},2})\phantom {\dot {i}\!}\), after component de-interleaver can be expressed as

$$\begin{array}{*{20}l} r_{T_{2},1} &= \Re\left\{h^{*} \, y_{T_{2}T_{1}}\right\} +j\Im\left\{a_{t}^{*} \, y_{R_{t} T_{1}}\right\}, \end{array} $$

(25)

$$\begin{array}{*{20}l} r_{T_{2},2} &= \Re\left\{a_{t}^{*} \, y_{R_{t} T_{1}}\right\} +j\Im\left\{h^{*} \, y_{T_{2}T_{1}}\right\}. \end{array} $$

(26)

The message at T_{1}, transmitted by T_{2}, is detected as

$$\begin{array}{*{20}l} \hat{x}_{T_{2},1} &= \arg \min_{x \in \Phi_{r}} \left[\left|\Re\left\{r_{T_{2},1}\right\}-\sqrt{P_{T_{2}}}|h|^{2} \Re\left\{x_{T_{2},1}\right\}\right|^{2} \right. \\ &\quad \left. +\left|\Im\left\{r_{T_{2},1}\right\}\,-\,\sqrt{P_{R} \lambda_{T_{1}R}}|a_{t}|^{2} \Im\left\{x_{T_{2},1}\right\}\right|^{2} \right], \end{array} $$

(27)

$$\begin{array}{*{20}l} \hat{x}_{T_{2},2} &= \arg \min_{x \in \Phi_{r}} \left[\left|\Re\left\{r_{T_{2},2}\right\}-\sqrt{P_{R} \lambda_{T_{1}R}}|a_{t}|^{2} \Re\left\{x_{T_{2},2}\right\}\right|^{2} \right. \\ &\quad \left. +\left|\Im\left\{r_{T_{2},2}\right\}\,-\,\sqrt{P_{T_{2}}}|h|^{2} \Im\left\{x_{T_{2},2}\right\}\right|^{2} \right]. \end{array} $$

(28)

It is important to note that the proposed SSC-2W scheme exchanges four symbols in three time slots. On the other hand, the conventional three-phase two-way DF relaying system [19] requires three time slots to exchange two symbols, thus requiring six time slots for four symbols. In addition, if one of the two transmitted SSD symbols are not received correctly at the opposite terminal in the proposed SSC-2W scheme, it will still be able to recover both symbols from one SSD symbol due to the SSD technique. Therefore, the proposed SSC-2W scheme increases the data rate, spectral efficiency, and diversity when compared with the conventional three-phase two-way DF relaying system without any additional bandwidth or transmit power.