 Research
 Open Access
 Published:
Codebookbased precoding for generalized spatial modulation with diversity
EURASIP Journal on Wireless Communications and Networking volume 2019, Article number: 229 (2019)
Abstract
This paper investigates codebookbased precoding for spatial modulation (SM) and generalized spatial modulation (GSM) systems. Codebookbased precoding allows the system to dispense with full channel state information at the transmitter (CSIT). This considerably reduces the feedback overhead. Phaseonly codebooks with systematic structure are investigated since they avoid increasing the peak to average power ratio of the transmitted signal. It is shown that the proposed phaseonly codebooks yield equivalent performance to published codebooks that involve gain and phase. In addition, a gainonly codebook is designed to supplement the phaseonly codebook and reduce the bit error rate (BER) further. We also compare the performance with the Grassmannian codebooks which are proposed for other multipleinmultipleout (MIMO) systems. In GSM systems, several antennas are simultaneously active as a transmit antenna combination (TAC). The BER performance of unprecoded GSM systems is typically inferior to SM systems due to correlation among TACs. However, with codebook precoding, this effect is mitigated, and the performance of the GSM system becomes superior to the SM system. We investigate codebook precoding for GSM systems where precoding is performed perTAC or perantenna. Moreover, we investigate the GSM system where the TACs are selected adaptively based on the achievable benefit from codebook precoding. Using computer simulation, it is shown that the performance of the proposed codebooks is very promising in both SM and GSM systems. Perantenna precoding is superior to perTAC precoding. Adaptive TACs selection further improves performance.
Introduction
One of the main goals of the fifthgeneration mobile communication (5G) systems is to considerably increase the data rate. Among the technologies to achieve this goal is the enhancement of multipleinput multipleoutput (MIMO) antenna systems towards massive MIMO. The existing LongTerm Evolution (LTE) system employs up to 8 transmit antennas (TAs) [1]. On the other hand, 5G systems are expected to employ larger number of TAs to increase the spectral efficiency [2]. In conventional MIMO systems like spatial multiplexing (SMX) and transmit diversity (TD), all antennas transmit simultaneously, with a dedicated radio frequency (RF) chain for each antenna. The increase in the number of TAs and RF chains is a challenging complexity. Moreover, the RF consumes considerable power in the transmit chain [3]. To tackle this problem, spatial modulation (SM) has been introduced [3, 4]. In the original form of SM, the transmitter is equipped with N_{t} > 1 TAs, where N_{t} is a power of 2. Only one RF chain that can switch among these antennas is employed. At every transmission, instant K bits are transmitted, where K = log_{2}(N_{t}) + log_{2}(M). The first log_{2}(N_{t}) bits are used to select the index of the TA to be activated (i.e., connected to the RF chain). The last log_{2}(M) bits are used to select a conventional amplitudephase modulation (APM) symbol (e.g., MQAM) for transmission from the active antenna. The receiver, having full knowledge of the channel state information (CSI), must detect the index of the TA and the transmitted APM symbol. The advantages and disadvantages of SM are detailed in [3, 5,6,7].
An important variant of SM is the generalized spatial modulation (GSM) [8,9,10]. GSM employs the concept of transmit antenna combination (TAC). When the number of TAs N_{t} is small, the available antennas are grouped into N_{c} TACs, where each TAC includes N_{a} active antennas. Hence, the number of TACs N_{c} is given by \( {N}_c={2}^{\left\lfloor {\log}_2\left(\begin{array}{c}{N}_t\\ {}{N}_a\end{array}\right)\right\rfloor } \), where ⌊x⌋ is the floor of x, and \( \left(\begin{array}{c}m\\ {}n\end{array}\right)=\frac{m!}{n!\kern0.5em \left(mn\right)!} \). For example, if N_{t} = 5 and N_{a} = 2, the number of TACs N_{c} = 8. Hence, in GSM 3 bits are used to select the active TAC, instead of the active antenna in SM. This provides the same spectral efficiency as an SM system with N_{t} = 8. However, since there is an overlap of antennas in different TACs, their corresponding channels become correlated. This is a source of error in detecting the TAC at the GSM receiver [10], which makes unprecoded GSM systems inferior to SM systems.
One major challenge that confronts SM and GSM systems is the possible instantaneous similarity between CSI taps. In SM, the CSI taps are generally statistically independent. However, during some transmission instants the CSI from different TAs could be similar. This causes the minimum Euclidean distance (MED) among the received symbols to be small, which increases detection errors in the receiver. This problem is more evident in GSM, where TACs are already correlated. Solutions for this problem have been the subject of considerable investigation in the literature. One of the most promising solutions is the employment of transmit precoding techniques [2, 4,5,6]. Transmit precoding is a wellknown technique that is already used in MIMO systems in LTE [1]. Considerable research has been done in the past few years to develop precoding algorithms for SM and GSM to reduce the bit error rate (BER).
Transmit precoding techniques can be categorized based on their CSI requirements. Specifically, most proposed transmit precoding techniques in the literature require full knowledge of the CSI at the transmitter (CSIT). In [11], two transmit precoding techniques are proposed for SM and GSM. Both techniques rely on CSIT to optimize precoder. In the first technique, the objective function is the MED among precoded constellation points. The MED is maximized under the constraint that the total power of the precoders is fixed. This technique is denoted as the maximumminimum distance (MMD). In the second technique, the objective function is the total power of the precoders. Here, the goal is to minimize the objective function under the constraint of a guaranteed Euclidean distance (GED). Both the MMD and GED techniques provide significant BER performance improvement compared to the unprecoded systems. The research in [12] compares two different optimization goals. Similar to [11], the first goal is to maximize the MED, while the second goal is to directly minimize the BER. It is found that minimizing the BER provides better performance than maximizing the MED, at the cost of extra complexity. Recently, the work of [13] developed a reduced complexity version of the GED algorithm of [11], with the same BER performance of SM and GSM. This is achieved by employing augmented Lagrangian (AL) with dual ascent optimization [13]. In [14], a precoding algorithm is developed for SM under perantenna power constraint: strict perantenna power constraint, and average perantenna power constraint. The goal of power constraint is to reduce the peak to average power ratio (PAPR). In [15], a GSM precoder is designed to maximize the mutual information between the discrete channel input, i.e., the transmitted symbols, and the channel output. In [16], two forms of precoders are considered for GSM. The first is based on diagonalizing the channel using singular value decomposition (SVD). The second is based on the pseudoinverse of the channel. In [17], analog precoding is considered for GSM in millimeter wave channels. Since precoding is performed in the analog domain phaseonly precoding is assumed. Similar to [15], the precoder is designed to maximize the mutual information between the channel input and channel output. The research in [18] also considers a GSM system for the millimeter wave channel. However, a hybrid precoder is assumed with both analog and digital precoders. The analog, phaseonly, precoder is used in the RF chain, while a complex values precoder is implemented digitally. Similar to [15, 17], the precoders are designed to maximize the mutual information. The work in [19] by the same authors of [18] provides another version of the hybrid precoder that focuses on GSM with SMX to increase the spectral efficiency. Finally, in [20], four precoding methods are proposed for GSM. The first method is based on grouping the TAs having similar impulse response. The second method applies SVD to the channel matrix and selects the TACs based on their singular values. The third method applies DFT before SVD then TACs are selected. The fourth method is based solely on precoding with selected columns of the DFT matrix.
There are two challenging assumptions in all previously outlined precoding methods: (1) the need for full CSIT, and (2) the high complexity requirement. CSIT may be readily available in time division duplex (TDD) systems, where the uplink and downlink channels are reciprocal. However, the RF frontend may not be similar in the transmitter and receiver. This can adversely affect the CSIT reciprocity of the uplink and downlink. In frequency division duplex (FDD) systems, CSIT requires feedback from the receiver to the transmitter. This may consume considerable uplink bandwidth, especially with large number of transmit and receive antennas. Moreover, all the previously outlined methods employ the CSIT to design an optimum precoder. This is typically achieved through iterative optimization techniques that usually suffer from high complexity and little compatibility with parallel processing.
To eliminate the requirement of full CSIT and considerably reduce complexity, several papers consider codebookbased precoders with limited feedback. Almost all these papers are devoted for SM. GSM received very little attention in that regard. A codebook, consisting of sufficient number of codewords, is shared by the transmitter and receiver. The receiver employs the CSI to select the best codeword and feedsback its index to the transmitter. Hence, the feedback overhead is minimized. The work in [21] proposes an SM precoding method that is based on increasing the ED between only the two constellation points with MED. The receiver finds the antenna pair with MED. Then, it selects a quantized gain for one of the two antennas and a quantized phase difference between the two antennas that maximize the MED. The receiver feedsback four indexes to the transmitter: the two indexes of the antenna pair, the index of the selected gain, and the index of the phase difference. This method is denoted as transmit precoding (TPC). Despite its simplicity, the TPC method improves the BER performance considerably. The work in [22] modifies the TPC method to provide gain precoding only, i.e., without phase precoding. This slightly reduces the feedback overhead at the cost of some performance degradation. In [23], an algorithm employing the Lloyd algorithm is presented to design a precoding codebook. The codewords are matched to a large set of training CSI realizations. Starting with an initial codebook, each CSI realization is associated with the nearest codeword. Then, each codeword is optimized for its associated subset of training CSI realizations using the centroid criterion. The updated codewords are considered an initial codebook for the next iteration. Another codebook design is presented in [24], where a codebook is generated from complex Gaussian random variables with zero mean and unit variance. The codewords are normalized for a fixed total power. It is shown that even this randomly generated codebook provides a modest BER performance improvement compared to the SM without precoding. The work in [25, 26] presents codebookbased precoding for space shift keying (SSK) system, which is a simplified version of SM where the information is transmitted through the TA index only. On the other hand, the work in [27] presents codebookbased precoding for SM systems where several phaseonly and gainonly codebooks are investigated. This work does not consider GSM systems. Finally, in [28], a phaseonly codebook is designed for GSM operating in lineofsight millimeter wave channels. The codebook is based on DFT matrix and a moderate performance gain is achieved. To the best of the author’s knowledge, there is no work that investigates codebook precoding for GSM systems in nonlineofsight Rayleigh fading channels.
Several other works in the literature attempt to improve the performance of SM and GSM systems without employing precoding. For example, the work in [29] considers fully generalized SM (FGSM) system where the number of active antennas N_{a} is allowed to change from 1 to N_{t}. All active antennas transmit the same APM symbol. The same work also introduces the fullquadrature SM (FQSM) system. In this system, the real and imaginary parts of the APM symbol are transmitted on different set of antennas. Similar to FGSM, the set may include from 1 to N_{t} antennas. The FGSM and FQSM are shown to improve the spectral efficiency and reduce the BER. The work in [30] employs signal space diversity (SSD) to improve the BER performance of the conventional SM system. SSD involves phase rotation of the AMP symbols such that each bit is represented in both the real and imaginary parts of the symbol. This is followed by interleaving the imaginary parts of two successive symbols. Using this formulation, transmit diversity is achieved and the BER is reduced. In [31], a new optimized bittosymbol mapping method is introduced for the case of single receive antenna. The method assumes partial CSIT knowledge. The main concept is to reduce the Hamming distance between SM symbols with close Euclidean distance. To achieve this goal, TA selection bits are mapped based on the magnitude of the channel gain, while modulation baits are mapped to PSK symbols based on the phase of the channel. Using this approach, a significant BER reduction is achieved.
It can be concluded from the aforementioned background that SM and GSM precoding techniques that dispense with full CSIT did not receive sufficient attention in the literature. These methods are important and deserve further investigation and development. Hence, this paper investigates codebookbased SM and GSM precoding. The advantages of the codebookbased precoding can be summarized as follows:

There is no need for full CSIT.

Searching the codebook for the best codeword is simple and can be done using parallel processing.

BER performance is significantly better than SM or GSM without precoding.
In this paper, we investigate several codebooks with systematic structure that is easy to generate. The set of the antenna gains that constitute the codewords is limited. This allows efficient hardware implementation of the digital complex multipliers. Since the set of gains is predefined and limited, multiplication with the APM symbols can be implemented as a lookup table. Specifically, the contribution of the paper can be summarized as follows:

1
The paper investigates the performance of phaseonly codebooks, including WalshHadamard and quasiorthogonal sequences.

2
The paper presents a design for a gainonly codebook and investigates its performance.

3
The performance of the combined use of the phaseonly and gainonly codebooks is investigated. We show that they exceed published literature results.

4
The performance of Grassmannian line packing codebooks, which are frequently used by other MIMO systems, is compared to the previous codebooks.

5
We compare two schemes of precoding for GSM: perantenna precoding and perTAC precoding. We show that perantenna precoding is superior to perTAC precoding.

6
We propose a system where the GSM TACset is selected adaptively. The receiver selects the specific TACset that provides the best precoded performance. Its index is fedback to the transmitter alongside the codeword index.

7
Complexity analysis of the process of selecting the best codeword is provided.
Compared to our work in [27], contributions 4, 5, 6, and 7 above are new in the current paper. We show by simulation that the BER performance with the phaseonly codebook and gainonly codebook, separately, is similar to the published codebookbased precoders performance for SM, with equal number of feedback bits. The BER performance is improved further with the employment of the combined codebook, with the cost of few extra feedback bits. The Grassmannian line packing codebook provides inferior performance to the proposed codebooks. For the case of GSM, it is shown that perantenna precoding provides better performance than perTAC precoding since it has the potential of extra diversity gain. When the best TACset is adaptively selected the GSM system performance increases further.
The paper is organized as follows. The next section presents the GSM system model with codebook precoding, for which SM is a special case. Section 3 clarifies the method for selecting the best codeword from the codebooks. Sections 4 and 5, respectively, introduce the phaseonly and gainonly codebooks employed in this paper and how they are generated. Section 6 presents the general complex (gain and phase) codebooks. Section 7 discusses the computational complexity required to select the best codeword. Section 8 is devoted for the simulation results and compares with published results. The last section concludes the paper.
Notation: (.)^{∗}, (.)^{T}, and (.)^{H} indicate conjugate, transpose, and Hermitian transpose, respectively. Boldface uppercase and lowercase letters denote matrices and vectors, respectively. Italic uppercase or lowercase letters represent scalar variables. The notation diag(x) denotes a diagonal matrix with the vector x in its diagonal. The notation ‖ x ‖ refers to the Euclidean norm of the vector x. The notation \( \overline{\mathbf{x}} \) refers to the mean of the vector x.
System model of GSM with codebook precoding
The GSM system model under consideration is shown in Fig. 1. The transmitter, which is equipped with N_{t} TAs, is capable of activating N_{a} antennas simultaneously, where N_{t} > N_{a} ≥ 1. For SM systems N_{a} = 1 and N_{t} is a power of 2. The N_{t} TAs are grouped in transmit antenna combinations (TACs). Each TAC includes N_{a} antennas. There are \( {N}_{\mathrm{tac}}=\left(\begin{array}{c}{N}_t\\ {}{N}_a\end{array}\right) \) ways of choosing N_{a} different antennas from the available N_{t} antennas. The GSM system employs only N_{c} ≤ N_{tac} TACs, where N_{c} should be a power of 2. Hence, N_{c} is given by \( {N}_c={2}^{\left\lfloor {\log}_2{N}_{\mathrm{tac}}\right\rfloor } \).
Consequently, there are \( {N}_{\mathrm{set}}=\left(\begin{array}{c}{N}_{\mathrm{tac}}\\ {}{N}_c\end{array}\right) \) possible TACsets, and the GSM system employs one of them. Each TACset contains N_{c} TACs. The list of antenna indexes in the kth TAC is denoted as I_{l,k}, where the subscript l refers to the TACset index, while the subscript k refers to the TAC index within the lth set.
As a specific example, if N_{t} = 4 and N_{a} = 2, there are N_{tac} = 6 TACs with antenna indices {{0, 1}, {0, 2}, {0, 3}, {1, 2} {1, 3}, {2, 3}}. The GSM system employs only N_{c} = 4 TACs. There are N_{set} = 15 possible TACsets that can be used. The first set can be {I_{0,0}={0, 2}, I_{0,1}={0, 3}, I_{0,2}={1, 2}, and I_{0,3}={1, 3}}. The second set can be {I_{1,0}={0, 1}, I_{1,1}={0, 3}, I_{1,2}={1, 2}, I_{1,3}={2, 3}}. The 15 sets are listed in Table 1 for clarity.
The GSM system can either permanently use one of the TACsets {I_{l,k}} (i.e., the index l is fixed), or the GSM receiver adaptively selects the set {I_{l,k}} and feedsback the index l to the transmitter alongside the precoding codeword index. If the TACset is fixed, the set l is selected such that the antenna overlap among I_{l},_{k}, k=0, 1, …, N_{c}−1, is minimized [8, 9].
In the previous example, one good choice is {I_{0,k}, k = 0, 1, 2, 3}, where each antenna is included in two TACs only. On the other hand, the set {I_{14,k}} is not favorable since antenna 0 is used in 3 TACs. For N_{t} = 5 and N_{a} = 2 we have N_{c} = 8. The first TACset can be selected as {I_{0,k}, k = 0, 1, …, 7}={{0, 2}, {0, 3}, {0, 4}, {1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4}}. In this case, each antenna is overlapped 3 times, except antenna 2, which is overlapped 4 times. For arbitrary values of N_{t} and N_{a}, a method is described in [19] to select the TACs with minimum overlap. The case of adaptive selection of the TACset is presented in the next section. For the convenience of notation, for the remainder of this section, we will drop the index of the TACset and use I_{k} as the set of antennas in the kth TAC in the selected TACset.
There are two main GSM schemes in the literature: GSM with multiplexing and GSM with diversity. In the first scheme, at each transmission instant, N_{a} APM symbols are transmitted simultaneously from the N_{a} active antennas [10, 13, 15, 16]. In the second scheme, only one APM symbol is transmitted from the N_{a} active antennas [8, 9, 11, 20, 32]. One common goal for both schemes is to increase the number of TACs, which is particularly useful when N_{t} is small, as explained in the first section of this paper. An additional goal for the GSM multiplexing scheme is to increase the transmission rate N_{a} times. This comes at the cost of increased interference and higher receiver complexity. On the other hand, the GSM diversity scheme, with proper precoding, increases the diversity order and reduces the BER.
In this paper, we employ the GSM scheme with diversity. One TACset, including N_{c} TACs, is selected for transmission. One APM symbol is selected for transmission from all N_{a} antennas in the TAC (i.e., rank 1 transmission). In the transmitter side, K = log_{2}(N_{c}) + log_{2}(M) bits are taken every transmission instantly. The first log_{2}(N_{c}) bits select the index of one TAC for transmission. The next log_{2}(M) bits select one of Mary APM complex symbols s_{m} (e.g., Mary QAM). The Mary symbols are normalized such that E[s_{m}^{2}] = 1. To normalize the transmission power, the selected symbol s_{m} is divided by a factor \( \sqrt{N_a} \) before transmission from the selected TAC.
A precoding vector p is employed to precode the GSM signal before transmission. The precoder p is a selected codeword from a codebook that is known to the receiver and transmitter. The receiver selects the codeword p and feedsback the index of the selected codeword to the transmitter (feedback is not shown in Fig. 1). In this paper, we consider two methods for precoding:
Combination precoding (CP): this is shown in Fig. 2a, where one element of the precoder p multiplies the whole TAC. Hence, the codeword length is N_{p} = N_{c} with power constraint ‖p‖^{2} = N_{p}.
Full precoding (FP): this is shown in Fig. 2b. In this case each antenna in the TAC is multiplied by a different codeword element. Hence, the codeword length is N_{p} = N_{c}N_{a} with power constraint ‖p‖^{2} = N_{p}.
The signal is transmitted through a frequency nonselective Rayleigh fading channel whose CSI is represented by the (N_{r}×N_{t}) matrix H. Elements of H are independent and identically distributed (i.i.d.) complex Gaussian random variables with zero mean and unit variance. The CSI can be written as \( \mathbf{H}=\left[{\mathbf{h}}_0,\kern0.5em {\mathbf{h}}_1,\kern0.5em \dots, \kern0.5em {\mathbf{h}}_{N_t1}\right] \), where the vector h_{n} is the nth column of H. When symbol s_{m}, m = 0, 1, …, M−1, is transmitted from the kth TAC, k = 0, 1, …, N_{c}1, the received signal can be written as
In (1), the (N_{r}×1) complex vector w represents the additive white Gaussian noise (AWGN) whose elements are i.i.d. with zero mean and variance 1/γ , where γ is the average signal to noise ratio (SNR) per receiving antenna. The (N_{r}×1) vector v_{k,m} is denoted as the constellation vector, which is the noisefree received vector when transmitting symbol s_{m} from the kth TAC of the selected TACset. Referring to Figs. 1 and 2, v_{k,m} is given by
In (2), I_{k}{j} is the actual jth transmit antenna index in the kth TAC. As a clarification example, in the first TACset in Table 1 (i.e., the first column), if k = 3 (i.e., the last TAC) we get I_{k}{0} = 1 and I_{k}[1] = 3. For convenience of notation the constellation vector in (2) is rewritten as
Using the N_{v} = M N_{c} possible constellation vectors we can form the (N_{r} × N_{v}) constellation matrix V, which is given by:
Since the receiver has full knowledge of the CSI, the precoding vector p and the selected TACset it can prepare the constellation matrix V. In this paper, we assume that the receiver employs maximum likelihood (ML) detection criteria [33] to detect the received signal (1). The receiver selects the column from (4) with MED to the received vector of (1), i.e., :
From the detected antenna and symbol indices \( \left\{\hat{k},\hat{m}\right\} \) the transmitted bits are reproduced. Using ML detection, the union bound of the BER is given by [33]
In (6), D_{i, j} is the number of bit errors if a transmitted vector v_{i} is erroneously detected as v_{j}, and Q(.) is the Qfunction, defined as \( Q(x)=\frac{1}{\sqrt{2\pi }}\underset{x}{\overset{\infty }{\int }}\exp \left(\frac{{u}^2}{2}\right) du \). Note that if N_{a} = 1 and N_{t} is a power of 2, the GSM system reverts back to the SM system.
Codeword and TACset selection
Codeword selection
Here, we first assume that the TACset is fixed, and the receiver needs to select the best codeword in the shared codebook. As described in the previous section, a codeword p is used in the transmitter for precoding the transmitted signal in (1) and also used in the receiver ML detection in (5). Hence, careful selection of the codeword p is critical for the performance of the GSM system. Since the Qfunction rapidly decays with an increasing argument, the BER bound of (6) is dominated by the term with smallest argument of the Qfunctions. Hence, to reduce (6) the MED between pairs of constellation vectors in (4) should be maximized. In most of the published literature, this is done at the transmitter by optimizing the precoder p based on the knowledge of the CSIT [11,12,13]. To avoid the need for CSIT, and due to the advantages mentioned earlier, in this paper we adopt the codebookbased precoding. The transmitter and receiver share the same codebook(s). Only the receiver needs full CSI knowledge to select the best codeword(s). The receiver feedsback the selected index to the transmitter. We assume sufficiently slow fading channel such that, given the reverse channel bandwidth, the feedback rate is feasible. This is the same concept employed in codebook based SMX in LTE and 5G [1].
Let P be the (N_{p}×B) shared codebook matrix which includes B codewords arranged in columns (i.e., the codebook size is B). The receiver selects from the codebook P the best codeword \( \tilde{\mathbf{p}} \) that maximizes the MED as follows:
The receiver feedsback to the transmitter log_{2}(B) bits with the index of the best codeword. In the next section, we present several candidate codebooks that we consider in this paper.
TACset adaptive selection
In addition to codeword selection, the GSM system can employ adaptive TACset selection. In this case, a number N_{set,max} ≤ N_{set} of TACsets is shared between the transmitter and the receiver. The receiver selects the specific TACset and feedsback its index to the transmitter with the selected codeword index. For example, and referring to Table 1, the GSM system may select one TACset from the first N_{set,max} = 2, 4, 8 or 15 TACsets from Table 1. The selected TACset is signaled to the transmitter through ⌈log_{2}(N_{set,max})⌉ feedback bits.
Recall that Equations (2) to (7) are for a specific fixed TACset, where we dropped the index l of the TACset, i.e., we used I_{k} in lieu of I_{l,k} . Returning back the index of the TACset, the constellation vectors in (3) should be denoted as v_{l,n}. Consequently, joint selection of the best codeword \( \tilde{\mathbf{p}} \) and the best TACset index \( \tilde{l} \) is given by
An important design aspect is the selection of the TACsets to be considered in the search. As mentioned in Section 2, we should select first the TACsets with minimum overlap among their antennas. From these sets, we select the TACsets with minimum overlap among their TACs. Referring to Table 1, each of the first 3 TACsets (I_{0,k} , I_{1,k} and I_{2,k}, k = 0, 1, 2, 3) has 2 overlapping antennas within the TACset. There is no TAC overlap among these TACsets. To select more TACsets, we allow for more overlap among the antennas in the same TACset, then we add TACsets with minimum TACs overlap with the previously selected TACsets. Obviously, the best order of the TACsets is not unique. Table 2 shows an example of the first 16 TACsets for N_{t} = 5 and N_{a} = 2 where the previously explained order is used.
Phaseonly codebooks
In this section, we present two codebooks that include phase rotation only: WalshHadamard (WH) codebook and quaternary quasiorthogonal sequences (QOS) codebook. Phaseonly codebooks are used in 5G systems [1] since they provide significant performance gain over unprecoded systems with low complexity and without increasing the PAPR. Our goal is to employ efficient codebooks with widely diverse codewords such that, given any CSI realization, there is a high probability to find a codeword that is close in Euclidean distance to the optimum precoder. Another goal is to employ codebooks with a systematic structure where a limited set of gains and phases are used to build the codewords. This leads us to the logical choice of employing an orthogonal matrix to be the basis of the codebook. The orthogonality property itself is not directly important. The zero or low correlation among the codewords makes them as different as possible, which increases the chance of finding a codeword that increases the MED.
Define α as the rotation angle that wraps around the AMP constellation points to the same points (regardless of the bit to symbol mapping). For Mary QAM, α = π/2, while for Mary PSK, α = 2 π/M. Phase rotation of one TA by nα (where n is any integer) does not change the MED in (7) with respect to any other TA. Hence, the phase angles of the phaseonly codebooks have to be modified as explained below.
WalshHadamard (WH) codebook consists of B_{ϕ}=N_{p} codewords of length N_{p}, where N_{p} is a power of 2. Since the elements of the WH matrix are ± 1, it provides phase rotation by 0 and π. Hence, the WH codebook P is formed by converting all elements of value 1 of the WH matrix to exp(j α/2). The WH codebook is desirable when reducing the number of feedback bits is critical.
Quaternary quasiorthogonal sequences (QOS) codebook are first proposed for code division multiple access (CDMA) systems to provide additional spreading codes to increase the CDMA system capacity. A set of QOSs is generated by multiplying all columns of the WH matrix by a masking function. Good masking functions are typically found with the aid of extensive computer search. In this paper, we employ quaternary QOS (i.e., 4 phases) designed in [34]. Table 6 of [34] provides 4 masking functions for codeword length 8 ≤ N_{p} ≤ 256. For N_{p} = 4 we develop 4 masking functions in the same manner. Using the 4 masking functions, we generate a codebook of size B_{ϕ} ≤ 4N_{p}. QOS from the same masking function are orthogonal, while QOS from different masking functions have \( \sqrt{N_p} \) correlation. Elements of the QOS take values from {+1, +j, 1, j}. To form the QOS codebook P, these values are converted into {exp(j n α/4), n = 0, 1, 2, 3}, respectively.
One weakness of the phaseonly codebooks is clear from its name, phase rotation only. In case of SM systems, or GSMCP systems, phase rotation cannot increase the MED if the MED is between constellation vectors emanating from the same antenna, but with different symbols. Referring to (2), if the two constellation vectors with MED have the same index k (i.e., same antennas in SM system or same TAC in GSM system with CP) but different m, phase rotation cannot improve the MED.
Gainonly codebook
In this section, we design a gainonly (i.e., positive real elements) codebook with codebook size B_{g}. We denote this codebook by G to distinguish from the phaseonly codebook P. The codewords are g_{m}, m = 0, 1, …, B_{g}−1. The goal is to build G with a limited set of gain elements {g_{l}, l=0, 1, …, L1} satisfying g_{min} < g_{l} < g_{max}. The pairwise correlation coefficient ρ between any two codewords is upper limited by ρ < ρ_{max}. For any two codewords g_{m} and g_{n} of length N_{p}, the Pearson correlation coefficient is given by
where \( \overline{\mathbf{g}} \) is the mean of the vector g. To design the codebook G, we first select five parameters:

The number of desired codewords B_{g}

The number of quantized gain levels, L

The minimum allowed gain value,g_{min} < 1

The maximum allowed gain value, g_{max} > 1, and

The maximum correlation coefficient, ρ_{max}
The codebook is designed numerically with the following steps:

1
Form an initial codebook G_{1} that includes all combinations of \( {L}^{N_p} \) codewords of length N_{p}, i.e., \( {\mathbf{g}}_m={\left[{g}_0,{g}_1,\cdots, {g}_{N_p1}\right]}^T \), m = 0, 1, …, \( {L}^{N_p}1 \). G_{1} contains all possible combinations from g_{0} = [1, 1, ⋯, 1]^{T} to \( {\mathbf{g}}_{L^{N_p}1}={\left[L,L,\cdots, L\right]}^T \).

2
Normalize each codeword in G_{1} as \( {\mathbf{g}}_m \) , such that the updated ‖g_{m}‖^{2} = N_{p}. The normalized codebook, denoted as G_{2}, contains now many identical codewords.

3
Eliminate from G_{2} all codeword duplications, keeping the first occurrence. Also eliminate any codeword with any gain element g_{k} > g_{max} or g_{k} < g_{min}, k=0, 1, N_{p}1. The updated codebook is G_{3}.

4
To build the desired codebook G, we iteratively select from G_{3} codewords with pairwise correlation coefficient ρ < ρ_{max}. Initially, the first codeword of G_{3} is g_{0} = [1, 1, ⋯, 1]^{T}. The number of codewords in G_{3} is K, (\( K<{L}^{N_p}1 \)) which will be updated during the iterations. The following iterative steps are performed to build G.

a)
Move the first codeword g_{0} = [1, 1, ⋯, 1]^{T} from G_{3} to G and update K=K1.

b)
Calculate the correlation coefficients ρ_{m} between the updated first codeword g_{0} and all other codewords g_{m}, m=1, 2, …, K1.

c)
Eliminate from G_{3} all codewords g_{m}, m=1, 2, …, K1, with ρ_{m} > ρ_{max} . Update K = K−E, where E is the number of eliminated codewords.

d)
Go to step (a) until no codewords are eliminated in step (c) (i.e., E = 0). In this case, all remaining codewords in G_{3} are moved to G. Denote the final number of codewords in G by B.

e)
If B > B_{g}, then a better codebook could be achieved with a smaller pairwise correlation. Hence, step (4) is repeated using the initial G_{3}, but with a smaller value of ρ_{max}.
Step 1 prepares an initial codebook whose codewords g_{m} include all possible combinations of integers from 1 to L. In step 2, each codeword is normalized to meet the power constraints of ‖g_{m}‖^{2} = N_{p}. This normalization leads to some duplicated codewords. In step 3, the duplicated codewords are eliminated. Also, any codeword that includes a gain element outside the design limit g_{min} < g_{l} < g_{max} is eliminated. Finally, in step 4, we select codewords with pairwise correlation coefficient lower than a design limit, ρ_{max}. Since the number of codewords after step 3 is very large, the iterative procedure in step 4 circumvents the calculation of the full correlation matrix among all codewords. The value of ρ_{max} is selected low enough such that sufficient codewords in G_{3} are eliminated to reach the desired size of the codebook G. In this paper, we use L = 6; g_{min} = 0.2 and g_{max} = 1.9. The value of ρ_{max} is adjusted to get the desired codebook size. Lower value of ρ_{max} yields a smaller codebook size B_{g}. For N_{p} = 4, we select ρ_{max} as 0.3 and 0.6 to get B_{g} = 4 and 8, respectively. For N_{p} = 8, we select ρ_{max} as 0.12 and 0.4 to get B_{g} = 8 and 16, respectively. For other values of B_{g}, the maximum correlation ρ_{max} is changed to get the required size. For larger values of N_{p} ≥ 16, the size of the initial codebook G_{1} in step 1 (\( {L}^{N_p} \)) may be too large to be handled, depending on the available computational power. In this case, G_{1} is formed from the random selection of the codewords with as many codewords as possible by the computational power.
General complex values codebook
In this section, we introduce two proposed codebooks whose elements are complex. The first codebook is the combination of the previous phaseonly and gainonly codebooks. The second codebook is based on Grassmannian line packing.
Combined phase and gain codebook
We employ a phaseonly codebook of size B_{ϕ} and a gainonly codebook of size B_{g}. A complex codebook of size B = B_{ϕ} B_{g} is formed using Hadamard product of each codeword in the phaseonly codebook by each codeword in the gainonly codebook. The receiver searches the B codewords to select the best codeword using (7). Alternatively, the two codebooks can be searched successively. The phaseonly codebook is searched using (7) to find the best codeword. This codeword is applied to the constellation vectors as per (2). Then, the gainonly codebook is searched using the phaseprecoded the precoded constellation vectors to find the gainonly codeword. The final codeword is the Hadamard product of the selected phaseonly and gainonly codewords. The advantage of this solution is to reduce the search to B_{ϕ} + B_{g} codewords, instead of B_{ϕ} B_{g} codewords. Although not shown in the numerical results to limit space and avoid crowding figures, we found that the performance loss is small.
Grassmannian line packing codebook
Following the same concept mentioned earlier, we need to employ a codebook with widely separated codewords such that, given a limited codebook size, the probability of finding a good codeword is increased. This goal matches with line packing in the complex Grassmannian manifold with unitary lines (i.e., codewords). Grassmannian codebooks are recommended for spacetime block coding [35] and spatial multiplexing [36, 37] MIMO systems. Here, we use the Grassmannian codebooks for SM MIMO systems. The set of codewords are selected to maximize the minimum chordal distance between any pair of codewords, i.e., the Grassmannian codebook P is built with complex unitary codewords p_{i} according to
Several techniques are available in the literature [38]. In this paper, we employ codebooks that are generated according to Section 4 of [39]. The complex scaling factors in this codebook are randomlike, which may increase the complexity.
Complexity comparison
In this section, we calculate the complexity of the precoding process presented in this paper and compare it to one of the recently published efficient optimization methods in the literature [13]. As it is customary, complexity calculation is based on the number of complex multiplications. Here, we focus on the complexity of the receiver side for selecting the optimal codeword. All calculations that can be done once offline and stored in memory are not counted.
For each codeword, the receiver needs to calculate all constellation vectors in (2). Complex multiplications of the APM symbols s_{m} with the codeword elements p_{k} and the division by \( \sqrt{N_a} \) are performed offline and stored in memory. They are not repeated for each new fading channel realization. Now, we show the complexity required to test the codewords in the codebook:

Each constellation vector in (2) requires N_{r} complex multiplications for GSMCP or N_{r}N_{a} complex multiplications for GSMFP.

If the TACset is fixed, the number of constellation vectors is given by \( M\kern0.1em {N}_c=M\times {2}^{\left\lfloor {\log}_2{N}_{\mathrm{tac}}\right\rfloor } \). Otherwise, if the TACset selection is adaptive, the number of constellation vectors needing calculation becomes M N_{tac}. For example, and referring to Table 2. If the TACset is adaptive, we need to calculate constellation vectors corresponding to all \( {N}_{\mathrm{tac}}=\left(\begin{array}{c}5\\ {}2\end{array}\right)=10 \) TACs. When we test a specific TACset in (8), the constellation vectors for the \( {N}_c={2}^{\left\lfloor {\log}_2{N}_{\mathrm{tac}}\right\rfloor }=8 \) corresponding to the TACs (with the ✓ sign in each column of Table 2) are used.

After calculating the constellation vectors we need to apply (7) or (8). Denote the number of constellation vectors by C (C = M N_{c} or C = M N_{tac}). To calculate (7) or (8), we require \( {N}_r\frac{\left({C}^2C\right)}{2} \) magnitudesquare calculations. This is equivalent to \( {N}_r\frac{\left({C}^2C\right)}{4} \) complex multiplications.
We add the complexity of calculating the C constellation vectors and the complexity of applying (7) or (8). The total complexity to test the B codewords is
where
and \( {\beta}_2=\left\{\begin{array}{cc}1& \mathrm{GSM}\hbox{} \mathrm{CP}\\ {}{N}_a& \mathrm{GSM}\hbox{} \mathrm{FP}\end{array}\right. \).
Table 3 compares the complexity of the different GSM codebook precoding schemes presented in this paper. For reference, we select a codebook size B = 64 codewords. Complexity of larger codebooks requires scaling. We also show the complexity of SM precoder optimization method of [13] which is one of the most efficient methods in the literature. It is clear from the table that the complexity of SM codebook precoding is almost 25% of the optimization method of [13]. Employing GSM with FP and adaptive TACset increases the complexity by about 167% but it is still less complex than the SM precoder optimization of [13], while the performance increases considerably.
Numerical results and discussion
In this section, we show the numerical results for SM and GSM under Rayleigh fading channel model as described in Section 2. Unless otherwise mentioned, the modulation is QPSK. We first discuss the BER performance of the GSM system and compare it with other systems in the literature. Then, we discuss the diversity gain obtained by the presented schemes of the GSM system.
BER discussion
For SM, we compare with the codebookbased system of [23] which, to the best knowledge of the author, provides the best codebookbased BER performance. We denote this system as the MMDCB. The BER of the MMD system of [11, 13], which requires CSIT to optimize the codeword, is shown as a reference to clarify the loss in dB when CSIT is not utilized. We use BER = 1E4 as the reference for performance comparison. In all figures, the legends SM and GSM refer to systems without precoding. If the codebook legend includes a number, it is the codebook size.
Figure 3 shows the BER performance of SM with phaseonly precoding and gainonly precoding when the sizes of the QOS codebook B_{ϕ} (B_{ϕ} ≤ 4 N_{t}) and the gainonly codebook B_{g} change. We select the SNR per receive antenna to be 20 dB to make the BER close to 1E4. It appears from the figure that most BER reduction is achieved at codebook sizes 8 and 16 for N_{t} = 4 and 8, respectively. This corresponds to 3 and 4 feedback bits, respectively. If the codebook size is doubled (requiring one more feedback bit) an error floor starts to appear. This can be explained by the increased level of correlation among the codewords. For example, consider the case of N_{t} = 8 with QOS codebook. When the codebook size is less than 8 all codewords (before phase rotation by angle α, as explained previously) are orthogonal, and they yield a considerable BER reduction. As the codebook size is doubled, the full orthogonality is lost and the BER starts to bottom out. This error floor behavior is consistent with the results shown in Fig. 8 of [24] for the random codebook.
It is also interesting to note that the gainonly codebook is more effective than the QOS codebook for N_{t} = 4. This can be explained by the fact that with N_{t} = 4 and QPSK constellation, each constellation vector in (4) has 3 other constellation vectors from the same antenna and 12 from other antennas. For N_{t} = 8, these two values are 3 and 28, respectively (a much smaller ratio). Since the phaseonly precoding is not useful when the MED is between two constellation vectors from the same antenna (but different QPSK symbols), the QOS is less effective for N_{t} = 4 than the gainonly codebook.
Figure 4 shows the BER performance of SM for N_{t}=8 and N_{r}=2. As expected, codebook precoding yields considerable performance gain. Following the legend of the figure from top downward, the unprecoded SM system shows the worst performance. Using the phaseonly WH codebook with 8 codewords we gain about 4.2 dB compared to unprecoded SM. This requires only 3 bits of feedback. Using the QOS codebook with 16 codewords, we gain extra 0.4 dB over the WH codebook (with 4 bits feedback). The Grassmannian codebook provides only 0.1 dB over the WH codebook but with 16 codewords. This confirms the assumption that Grassmannian codebooks are not as favorable in SM as they are in other MIMO systems. The gainonly codebook with 16 codewords provides about 0.4 dB compared to the WH codebook. Combining the gainonly codebook with 16 codewords and the QOS codebook with 4 codewords improves the performance by 1.5 dB, compared to the WH codebook. The cost is to increase the required feedback to 6 bits. It is important to note here that if we employ QOS codebook alone, or gainonly codebook alone, with 2^{6} = 64 codewords we do not get the gain achievable by combining the two codebooks to get a gainphase codebook. Finally, we can note that the combined gainphase codebook is about 1.6 dB away from the optimized MMD precoding. Two important points are noted:
a) The MMDCB codebook with 16 codewords provides slightly better BER performance compared to the QOS codebook or the gainonly codebook with the same size. When we combine the gainonly codebook of size 16 with only 4 QOS codewords, the performance exceeds the MMDCB codebook and becomes 1.6 dB away of the optimum MMD precoding. The cost is 2 extra feedback bits.
b) The Grassmannian codebook is inferior to the phaseonly or gainonly codebooks. This again confirms the previous observation that SM precoding has quite different requirements than other MIMO systems.
We now switch attention to GSM systems. We consider a GSM system with N_{t} = 5, N_{a} = 2, and N_{r} = 2. Hence, the number of TACs is N_{c} = 8. For the adaptive GSM TACset selection, the number of TACsets is N_{set} = 30. However, we employ up to N_{set,max} = 16 TACsets, given in Table 2.
Figure 5 shows the BER performance of the GSM system with CP (GSMCP). The first TACset of Table 2 is used. It can be noted that the unprecoded GSM system provides poorer performance than the SM system with N_{t} = 8 (see Fig. 4). However, with codebook precoding the performance improves considerably compared to unprecoded GSM. However, it is still inferior to the SM system with N_{t} = 8 (see Fig. 4), even with the slightly larger size codebooks. The combined gainphase codebook provides the best performance, followed by the QOS codebook and the WH codebook. The gainonly codebook provides the least performance. This is due to the high correlation among the TACs. Hence, just changing the gain of two correlated TACs does not increase the MED as much as phase rotation can do.
To improve the performance of GSM, we employ the GSM system with FP (GSMFP). In this system, the codeword size is increased to N_{p} = N_{a} × N_{c} = 16. The performance of the GSMFP system is shown in Fig. 6. It can be seen that the system is further improved with codebook precoding, compared to the GSMCP system. As expected, the gainphase codebook provides the best performance, followed by the QOS codebook. The gainonly codebook is now better than the WH codebook. With GSMFP, a different gain to each antenna in the TAC causes a phase rotation, which improves the performance.
Figure 7 compares the performance of the GSMCP (solid lines) and GSMFP systems (dashed lines) with QOS codebook and gainphase codebook. Using QOS with 32 codewords for both systems, the GSMFP provides about 1.8 dB gain over to the GSMCP. This gain is 1.3 dB for the gainphase codebook with size 256 for both systems. In both GSM systems, the gainphase codebook is superior to the phaseonly QOS codebook. This figure suggests that GSMFP is preferred to GSMCP.
Now, we consider the GSM system with adaptive TACset selection. Figure 8 shows the performance of the GSMFP system with TACset selection, as described in Section 3. Here, we employ QOS codebook with size 64 codewords. We also show a case with a combined gainonly codebook with size 16 and QOS codebook with size 16. The unprecoded GSM system is shown for reference. Similar to Fig. 6 the GSMFP (i.e., with N_{set,max} = 1) provides a performance gain due to codebook precoding alone. Figure 8 shows also the performance improvement when increasing the TACsets to N_{set,max} = 4, 8, and 16. About 0.6 dB is gained when 4 TACsets are used. The gain achieved with 16 TACsets is about 1.2 dB compared to GSMFP. Finally, when the gainphase codebook (Gain16+QOS16) is used with N_{set,max} = 16 the gain becomes 1.4 dB compared to GSMFP.
This gain clarifies that adaptive TACset selection is a source for additional performance gain that can be added to the codebook precoding to make the GSM systems more attractive. While not shown here, the GSMCP also benefits from adaptive TACset selection. However, similar to the results of Fig. 7, with adaptive TACset selection the GSMFP is still superior to the GSMCP.
Diversity gain discussion
Conventional SM systems (i.e., without precoding) transmit from only one antenna at a time and do not possess transmit diversity. They can only realize receive diversity when N_{r} > 1. However, it is shown in [24] that SM systems with precoding can achieve transmit diversity, even if the codebook is randomly generated. We show here that when the GSM system is employed with codebook precoding the diversity order is higher than SM systems.
The diversity order is given by the slope of the probability of error at high SNR [40] as BER = cγ^{−D}, where c is a constant and D is the diversity order. If we define γ_{1} and γ_{2} as the SNR in decibels at which the corresponding BER BER_{1} = 10 BER_{2}, we can estimate the diversity order as
The diversity orders of different schemes are presented in Table 4. For the SM and GSM systems with precoding, we rely on BER_{1} = 1E−4 and BER_{2} = 1E−5. For the SM and GSM systems without precoding, we rely on BER_{1} = 1E−3 and BER_{2} = 1E−4.
It can be seen from Table 4 that both the conventional SM and GSM systems (without precoding) achieve only receive diversity with order 2 (first two rows). With precoding, both the SM and GSMCP systems increase the diversity order to 4.1 (third and fourth rows). The GSMFP system with fixed TACset increases the diversity order to 5 (fifth row). Using the GSMFP with 16 adaptive TACsets, the diversity order increases to 5.3 (sixth row).
Conclusions
We presented a codebookbased precoding for SM system and GSM system with diversity. Codebookbased precoding avoids the need for full CSIT and requires limited feedback bits. We present phaseonly and gainonly codebooks with systematic structure that is independent of the channel state information. The quasiorthogonal sequences codebook provides BER performance equivalent to other results in the literature. When supplemented with the gainonly codebook with low correlation among codewords the performance improves considerably. Codebook precoding is shown to be beneficial for SM and GSM systems. We also present two GSM systems with precoding: transmit antenna combination precoding (CP) and full combination precoding (FP). We show that the FP system outperforms the CP system. Moreover, we propose a GSM where the transmit antenna combination is adaptively selected. We show that this system provides further performance improvement for the GSM system.
Availability of data and materials
The authors declare that all the data and materials in this manuscript are available from the author.
Abbreviations
 APM:

Amplitudephase modulation
 BER:

Bit error rate
 CP:

Combination precoding
 CSIT:

Channel state information at the transmitter
 ED:

Euclidean distance
 FP:

Full precoding
 GSM:

Generalized spatial modulation
 MED:

Minimum Euclidean distance
 MIMO:

Multipleinmultipleout
 QOS:

Quaternary quasiorthogonal sequences
 RA:

Receive antenna
 SM:

Spatial modulation
 SNR:

Signaltonoise ratio
 TA:

Transmit antenna
 TAC:

Transmit antenna combination
 WH:

WalshHadamard
References
 1.
Technical Specification Group Radio Access Network, Evolved Universal Terrestrial Radio Access (EUTRA); Physical channels and modulation, Release 15, 201803.
 2.
E. Basar, M. Wen, R. Mesleh, M.D. Renzo, Y. Xiao, H. Haas, Index modulation techniques for nextgeneration wireless networks. IEEE Access 5, 16693–16746 (2017)
 3.
M.D. Renzo, H. Haas, A. Ghrayeb, S. Sugiura, L. Hanzo, Spatial modulation for generalized MIMO: challenges, opportunities, and implementation. Proceedings of the IEEE 102(1), 56–103 (2014)
 4.
R.Y. Mesleh, H. Haas, S. Sinanovic, C.W. Ahn, S. Yun, Spatial modulation. IEEE Transactions on Vehicular Technology 57(4), 2228–2241 (2008)
 5.
P. Yang, M.D. Renzo, Y. Xiao, S. Li, L. Hanzo, Design guidelines for spatial modulation. IEEE Communications Surveys & Tutorials 17(1), 6–26 (2015)
 6.
P. Yang et al., Singlecarrier SMMIMO: a promising design for broadband largescale antenna systems. IEEE Communications Surveys & Tutorials 18(3), 1687–1716 (2016)
 7.
M.D. Renzo, H. Haas, P.M. Grant, Spatial modulation for multipleantenna wireless systems: a survey. IEEE Communications Magazine 49(12), 182–191 (2011)
 8.
A. Younis, N. Serafimovski, R. Mesleh, H. Haas, in 2010 Conference Record of the Forty Fourth Asilomar Conference on Signals, Systems and Computers. Generalised spatial modulation (2010), pp. 1498–1502
 9.
A. Younis, R. Mesleh, M.D. Renzo, H. Haas, in 2014 22nd European Signal Processing Conference (EUSIPCO). Generalised spatial modulation for largescale MIMO (2014), pp. 346–350
 10.
J. Wang, S. Jia, J. Song, Generalised spatial modulation system with multiple active transmit antennas and low complexity detection scheme. IEEE Transactions on Wireless Communications 11(4), 1605–1615 (2012)
 11.
M. Lee, W. Chung, T. Lee, Generalized precoder design formulation and iterative algorithm for spatial modulation in MIMO systems With CSIT. IEEE Transactions on Communications 63(4), 1230–1244 (2015)
 12.
P. Yang, Y.L. Guan, Y. Xiao, M.D. Renzo, S. Li, L. Hanzo, Transmit precoded spatial modulation: maximizing the minimum Euclidean distance versus minimizing the bit error ratio. IEEE Transactions on Wireless Communications 15(3), 2054–2068 (2016)
 13.
P. Cheng, Z. Chen, J.A. Zhang, Y. Li, B. Vucetic, A unified precoding scheme for generalized spatial modulation. IEEE Transactions on Communications 66(6), 2502–2514 (2018)
 14.
C. Chen, MSEbased precoder designs for transmitterpreprocessingaided spatial modulation under perantenna power constraints. IEEE Transactions on Vehicular Technology 66(3), 2879–2883 (2017)
 15.
S. Jin, W. Choi, J. Park, D. Park, Linear precoding design for mutual information maximization in generalized spatial modulation with finite alphabet inputs. IEEE Communications Letters 19(8), 1323–1326 (2015)
 16.
Z. An, J. Wang, J. Wang, J. Song, Mutual information and error probability analysis on generalized spatial modulation system. IEEE Transactions on Communications 65(3), 1044–1060 (2017)
 17.
L. He, J. Wang, J. Song, Spectralefficient analog precoding for generalized spatial modulation aided MmWave MIMO. IEEE Transactions on Vehicular Technology 66(10), 9598–9602 (2017)
 18.
L. He, J. Wang, J. Song, On generalized spatial modulation aided millimeter wave MIMO: spectral efficiency analysis and hybrid precoder design. IEEE Transactions on Wireless Communications 16(11), 7658–7671 (2017)
 19.
L. Xiao et al., Transmit antenna combination optimization for generalized spatial modulation systems. IEEE Access 6, 41866–41882 (2018)
 20.
N.S. Perović, P. Liu, J. Blumenstein, M.D. Renzo, A. Springer, Optimization of the cutoff rate of generalized spatial modulation with transmit precoding. IEEE Transactions on Communications 66(10), 4578–4595 (2018)
 21.
P. Yang, Y. Xiao, B. Zhang, S. Li, M. ElHajjar, L. Hanzo, StarQAM signaling constellations for spatial modulation. IEEE Transactions on Vehicular Technology 63(8), 3741–3749 (2014)
 22.
P. Yang, Y. Xiao, B. Zhang, S. Li, M. ElHajjar, L. Hanzo, Power allocationaided spatial modulation for limitedfeedback MIMO systems. IEEE Transactions on Vehicular Technology 64(5), 2198–2204 (2015)
 23.
M. Lee, W. Chung, T. Lee, Limited feedback precoder design for spatial modulation in MIMO systems. IEEE Communications Letters 19(11), 1909–1912 (2015)
 24.
C. Masouros, L. Hanzo, Constellation randomization achieves transmit diversity for singleRF spatial modulation. IEEE Transactions on Vehicular Technology 65(10), 8101–8111 (2016)
 25.
M. AlAnsi, S.A. Aljunid, E. Sourour, Performance improvement of space shift keying MIMO systems with orthogonal codebookbased phaserotation precoding. Wireless Communications and Mobile Computing 2017, 12 (2017) Art. no. 4359843
 26.
S.A.A. Mohammed AlAnsi, E. Sourour, Transmit precoding based low complexity codebooks and finite feedback rate for space shift keying MIMO systems. Wireless Personal Communications 101(1), 181–200 (2018)
 27.
E. Sourour, in IEEE Vehicular Technology Conference. Codebook based precoding for spatial modulation, accepted for publication (VTC2019Spring, Kuala Lumpur, 2019)
 28.
N.S. Perovic, P. Liu, A. Springer, in SCC 2017; 11th International ITG Conference on Systems, Communications and Coding. Design of a simple phase precoder for generalized spatial modulation in LOS millimeter wave channels (2017), pp. 1–6
 29.
H.S. Hussein, M. Elsayed, U.S. Mohamed, H. Esmaiel, E.M. Mohamed, Spectral efficient spatial modulation techniques. IEEE Access 7, 1454–1469 (2019)
 30.
S. Althunibat, R. Mesleh, Enhancing spatial modulation system performance through signal space diversity. IEEE Communications Letters 22(6), 1136–1139 (2018)
 31.
S. Althunibat, R. Mesleh, A bittosymbol mapping scheme for spatial modulation with partial channel state information. IEEE Communications Letters 21(5), 995–998 (2017)
 32.
P. Liu, J. Blumenstein, N.S. Perović, M.D. Renzo, A. Springer, Performance of generalized spatial modulation MIMO over measured 60GHz indoor channels. IEEE Transactions on Communications 66(1), 133–148 (2018)
 33.
J. Jeganathan, A. Ghrayeb, L. Szczecinski, Spatial modulation: optimal detection and performance analysis. IEEE Communications Letters 12(8), 545–547 (2008)
 34.
Y. Kyeongcheol, K. YoungKy, P.V. Kumar, Quasiorthogonal sequences for codedivision multipleaccess systems. IEEE Transactions on Information Theory 46(3), 982–993 (2000)
 35.
D.J. Love, R.W. Heath, Limited feedback unitary precoding for orthogonal spacetime block codes. IEEE Transactions on Signal Processing 53(1), 64–73 (2005)
 36.
D.J. Love, R.W. Heath, Limited feedback unitary precoding for spatial multiplexing systems. IEEE Transactions on Information Theory 51(8), 2967–2976 (2005)
 37.
D.J. Love, R.W. Heath, V.K.N. Lau, D. Gesbert, B.D. Rao, M. Andrews, An overview of limited feedback in wireless communication systems. IEEE Journal on Selected Areas in Communications 26(8), 1341–1365 (2008)
 38.
D.J. Love, R.W. Heath, T. Strohmer, Grassmannian beamforming for multipleinput multipleoutput wireless systems. IEEE Transactions on Information Theory 49(10), 2735–2747 (2003)
 39.
A. Medra, T.N. Davidson, Flexible codebook design for limited feedback systems via sequential smooth optimization on the Grassmannian manifold. IEEE Transactions on Signal Processing 62(5), 1305–1318 (2014)
 40.
A. Goldsmith, Wireless Communications (Cambridge University Press, Cambridge, 2005)
Acknowledgements
This project was supported by the Deanship of Scientific Research at Prince Sattam Bin Abdulaziz University under research project no. 2017/01/7715.
Funding
This project was supported by the Deanship of Scientific Research at Prince Sattam Bin Abdulaziz University under research project no. 2017/01/7715.
Author information
Affiliations
Contributions
The author is the only contributor to the paper. The author read and approved the final manuscript.
Authors’ information
The author received the B.Sc. (with honor) and M.Sc. degrees in electrical engineering from Alexandria University, Alexandria, Egypt, in 1982 and 1986, respectively. He received the Ph.D. degree in electrical engineering from Southern Methodist University (SMU), Dallas, TX, USA in 1990. He was a System Engineer at Bell Northern Research (currently Nortel) Richardson, TX, USA, from 1990 to 1991. He was an Assistant Professor at Alexandria University, Alexandria, Egypt, from 1992 to 1996. During 1994, and during part of 1996, he was a Visiting Researcher at Keio University, Yokohama, Japan. From August 1996 to January 2001, he was a Senior Engineer at Ericsson Inc., Research Triangle Park, NC, USA. From August 2001 to January 2004, he was Director for Systems Engineering with Ellipsis Digital Systems, Carlsbad, CA, USA. From January 2004 to date, he is a Professor of at the EE Department in Alexandria University, Alexandria, Egypt. Currently, he is on leave to Prince Sattam Bin Abdulaziz University, Kingdom of Saudi Arabia.
Corresponding author
Correspondence to Essam Sourour.
Ethics declarations
Competing interests
The author declares that he has no competing interests.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Received
Accepted
Published
DOI
Keywords
 MIMO
 Spatial modulation; Generalized spatial modulation
 Codebookprecoding