METHOD CONFIGURING A PLURALITY OF TRANSMIT ANTENNAS

Abstract

A computer-implemented decoding method of configuring a plurality of transmit antennas to each represent an in-phase spatial constellation symbol within an in-phase spatial constellation and a quadrature spatial constellation symbol within a quadrature spatial constellation, and mapping source data to the in-phase spatial constellation symbols and the quadrature spatial constellation symbols represented by the plurality of transmit antennas, wherein the notion of applying sparse detection, compressed sensing algorithms to decode SM signals is proceeded.

Claims

1. A computer-implemented decoding method for configuring a plurality of transmit antennas, the method comprising: configuring the plurality of transmit antennas to each represent an in-phase spatial constellation symbol within an in-phase spatial constellation, and a quadrature spatial constellation symbol within a quadrature spatial constellation, mapping source data to the in-phase spatial constellation symbols and the quadrature spatial constellation symbols represented by the plurality of transmit antennas, wherein the notion of applying sparse detection, compressed sensing algorithms to decode spatial modulation signals is proceeded.

2. The method of claim 1, further comprising: a modification to the iterative shrinkage-thresholding algorithm (ISTA) via boxing, range limiting, and hard-thresholding.

3. The method of claim 1, further comprising: proceeding the iterative shrinkage-thresholding algorithm via boxing-hard (ISTA), a greedy selection of the positions of the antennas index and the symbol estimates, and their independent decoding of the corresponding antenna modulated and symbol modulated bits.

4. The method of claim 3, wherein process working parallel to the greedy detections, to ensure valid estimates of the index vectors from the given finite set of index vectors are produced as an output and to apply interference cancellation with the confirmed values, while keeping track of which indices have been retrieved from the greedy selections, before every iteration check whether from the currently decoded indices, a final confirmation can be made; if it cannot be made, remove the interference by the previous greedy selection and make the next iteration.

5. A receiver of a communication system having a processor, volatile and/or non-volatile memory, at least one interface adapted to receive a signal in an communication channel, wherein the non-volatile memory stores computer program instructions which, when executed by the microprocessor, configure the receiver to perform operations comprising: configuring the plurality of transmit antennas to each represent an in-phase spatial constellation symbol within an in-phase spatial constellation, and a quadrature spatial constellation symbol within a quadrature spatial constellation, mapping source data to the in-phase spatial constellation symbols and the quadrature spatial constellation symbols represented by the plurality of transmit antennas, wherein the notion of applying sparse detection, compressed sensing algorithms to decode spatial modulation signals is proceeded.

6. (canceled)

7. (canceled)

8. (canceled)

9. (canceled)

10. The receiver of claim 5, further comprising: a modification to the iterative shrinkage-thresholding algorithm (ISTA) via boxing, range limiting, and hard-thresholding.

11. The receiver of claim 5, further comprising: proceeding the iterative shrinkage-thresholding algorithm via boxing-hard (ISTA), a greedy selection of the positions of the antennas index and the symbol estimates, and their independent decoding of the corresponding antenna modulated and symbol modulated bits.

12. The receiver of claim 5, wherein process working parallel to the greedy detections, to ensure valid estimates of the index vectors from the given finite set of index vectors are produced as an output and to apply interference cancellation with the confirmed values, while keeping track of which indices have been retrieved from the greedy selections, before every iteration check whether from the currently decoded indices, a final confirmation can be made; if it cannot be made, remove the interference by the previous greedy selection and make the next iteration.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

[0048] For a fuller understanding of the nature of the present invention, reference should be had to the following detailed description taken in connection with the accompanying drawings in which:

[0049] FIG. 1 shows Schematic diagram depicting the generic structure of a QSM transmission scheme.

[0050] FIG. 2 shows the Spectral efficiency of OS-QSM scheme with T=2, 4, and 8, for a given system with n.sub.T=8 and M=4.

[0051] FIG. 3 shows the Effect of T and M on the optimum ratio P*/T between the number of transmit symbols and epochs.

[0052] FIG. 4 shows the Behavior of fractional peak spectral efficiency as a function of n.sub.T, for different sizes of T and M.

[0053] FIG. 5 shows the Bipartite graph representing the spatial-temporal resource usage associated with each index vector k.sub.n for a QSM system with P=3 and Q=8. The particular examples of k.sub.1, k.sub.37 and k.sub.54 are explicitly illustrated.

[0054] FIG. 6 shows the Comparison of ISTA thresholding and BH-ISTA thresholding functions ?(s; ?) as per [29], and ?(s; ?), as per equation (29).

[0055] FIG. 7 shows the Convergence of u{circumflex over ()}.sub.?.sup.(?) and u{circumflex over ()}.sub.?.sup.(?), as per equations (28) and (30), respectively, as a function of iterations ?;

[0056] FIG. 7(a) shows the Sparsity convergence with various threshold values;

[0057] FIG. 7(b) shows the MSE convergence with optimal threshold values.

[0058] FIG. 8 shows the Schematic diagram depicting the structure of the proposed GB-ISTA receiver for QSM demodulation.

[0059] FIG. 9 shows the Effect of scalable parameters on the complexity of QSM receivers;

[0060] FIG. 9 (a) shows the Fixed P, various T, as a function of n.sub.T;

[0061] FIG. 9 (b) shows the Fixed T, various P, as a function of n.sub.T;

[0062] FIG. 9 (c) shows the Fixed n.sub.T, various T, as a function of P.

[0063] FIG. 10 shows the Effect of scalability on BER performance of GB-ISTA-detected OS-QSM schemes with fixed SE.

[0064] FIG. 11 shows the Effect of scaling P on BER performance of GB-ISTA-detected OS-QSM schemes.

[0065] FIG. 12 illustrates the proposed computer-implemented detection method represented a a flowchart.

[0066] FIG. 13 shows the Comparison of ISTA thresholding and BH-ISTA thresholding functions ?(s; ?), and ?(s; ?).

[0067] Quadrature spatial modulation (QSM) schemes are considered, which are capable of conveying large numbers of bits while a combination of transmitting a relatively small number P all M-ary modulated symbols from a dynamic selection of n.sub.T transmit into mass, according to a designed dispersion pattern.

DETAILED DESCRIPTION

[0068] Following are detailed descriptions of concepts, system/network architectures, and detailed designs for many aspects of a wireless communications network targeted to address the requirements and use cases for 5G. The terms requirement, need, or similar language are to be understood as describing a desirable feature or functionality of the system in the sense of an advantageous design of certain embodiments, and not as indicating a necessary or essential element of all embodiments. As such, in the following each requirement and each capability described as required, important, needed, or described with similar language, is to be understood as optional.

[0069] In the discussion that follows, this wireless communications network, which includes wireless devices, radio access networks, and core networks, is referred to as NX. It should be understood that the term NX is used herein as simply a label, for convenience. Implementations of wireless devices, radio network equipment, network nodes, and networks that include some or all of the features detailed herein may, of course, be referred to by any of various names. In future development of specifications for 5G, for example, the terms New Radio, or NR, or NR multi-mode may be usedit will be understood that some or all of the features described here in the context of NX may be directly applicable to these specifications for NR. Likewise, while the various technologies and features described herein are targeted to a 5G wireless communications network, specific implementations of wireless devices, radio network equipment, network nodes, and networks that include some or all of the features detailed herein may or may not be referred to by the term 5G. The present invention relates to all individual aspects of NX, but also to developments in other technologies, such as LTE, in the interaction and interworking with NX. Furthermore, each such individual aspect and each such individual development constitutes a separable embodiment of the invention.

[0070] FIG. 1 shows schematic diagram depicting the generic structure of a QSM transmission scheme.

A. System Model

[0071] Consider a point-to-point (P2P) MIMO communication system in which a transmitter equipped with n.sub.T transmit antennas exchanges information with a receiver equipped with n.sub.R receive antennas employing SM The received signal corresponding to T consecutive time slots during which the channel is assumed to be constant can be compactly written as

[00004] Y = HX + V ? ? n R ? T , ( 1 )

where Y?custom-character.sup.n.sup.R.sup.T is the matrix collecting the signals received at each antenna and time slot, H?custom-character.sup.n.sup.R.sup.?n.sup.T is the flat-fading channel matrix with elements h.sub.i,j?custom-character(0,1), X?custom-character.sup.n.sup.t.sup.?T is the space-time transmit signal, and V?custom-character.sup.n.sup.R.sup.?T is the additive white Gaussian noise (AWGN) matrix with elements v.sub.i,j?custom-character(0, N.sub.0), where N.sub.0 is the noise variance.

[0072] It is assumed hereafter that the quasi-static Rayleigh fading channel matrix H is known at the receiver but not at the transmitter, and we remark that since the channel power per matrix entry is unitary, the fundamental signal-to-noise ratio (SNR) is given by

[00005] ? = ? 1 N 0 ? [ tr ( X H X ) ] .

In turn, in accordance with related QSM literature and as illustrated in FIG. 1, the transmit signal matrix X is constructed in a manner to convey the information of a bit sequence b, both in the form of P digitally modulated signals, as well as in the form of the allocation of such transmissions to different antennas and time instances, as described by

[00006] X = .Math. p = 1 P ( s p R A k p R + s p I B k p I ) , ( 2 )

where s.sub.p=s.sub.p.sup.R+js.sub.p.sup.I, with p={1, . . . , P}, are transmit symbols chosen from a complex constellation constellation custom-character of cardinality |custom-character|=M; A.sub.k.sub.p.sub.R and B.sub.k.sub.p.sub.I are dispersion matrices belonging to the sets custom-character={A.sub.q}.sub.q=1.sup.Q?custom-character.sup.n.sup.T.sup.?T and custom-character={B.sub.q}.sub.q=1.sup.Q?custom-character.sup.n.sup.T.sup.?T, with Qcustom-characterT?n.sub.T; and the indices k.sub.p.sup.R and k.sub.p.sup.I are the p-th elements of the index vectors k.sup.R and k.sup.I, respectively, which are selected from an optimized set of index vectors custom-character={k.sub.n}.sub.n=1.sup.N?custom-character.sup.P, with

[00007] N = ? .Math. ( Q P ) .Math. 2 ? .

[0073] With regards to equation (2), and again referring to FIG. 1, we clarify that in QSM schemes the bit sequence b is subdivided into a sequence b.sup.S, of length custom-charactercustom-characterP log.sub.2 |custom-character|=P log.sub.2 M, which corresponds to the information encoded in the symbols s={s.sub.1, . . . , s.sub.P}, taken from custom-character, and the conjugate sequences b.sup.R and b.sup.I, both of length custom-charactercustom-character log.sub.2 |custom-character|=log.sub.2 N, which correspond to the information encoded in the selection of spatial-temporal resources according to the dispersion matrix index vectors k.sup.R and k.sup.I from custom-character.

[0074] In view of the above, it can be said that the design of a specific QSM scheme amounts essentially to the method employed in the construction of each of the Q dispersion matrices A.sub.q and B.sub.q in the sets custom-character and custom-character, and the selection of the set custom-character containing the index vectors k.sup.R and k.sup.I which inform the choices of dispersion matrices used in each transmission.

[0075] To exemplify how state-of-the-art (SotA) QSM schemes can be cast into the general framework described by equation (2), consider first the QSM scheme proposed in 119. In this case, the dispersion matrices reduce to dispersion vectors (i.e., T=1 and Q=n.sub.T) which are given by

[00008] A q = e q and B q = j e q , ( 3 )

where e.sub.q is the q-th column of I.sub.Q, and no specific design criteria are given for the selection of the indices in the index vectors k.sup.R and k.sup.I.

[0076] In turn, in the DA-QSM scheme of [20], two-column dispersion matrices (i.e., T=2 and Q=n.sub.T) are employed so as to exploit transmit diversity. In particular, in this scheme

[00009] A q = M n T q - 1 A ~ and B q = j M n T q - 1 B ? ( 4 )

with

[00010] A ~ = ? [ I 2 0 ( n T - 2 ) ? 2 ] and B ? = ? [ M 2 0 ( n T - 2 ) ? 2 ] ,

where M.sub.n is an n?n cyclic lower-shift matrix M.sub.n is obtained by circularly shifting the bottom row of I.sub.n to the top, such that, e.g.,

[00011] M 3 = [ 0 0 1 1 0 0 0 1 0 ] ,

such that its (q?1)-th power pre-multiplied to a given matrix results in a shift of the bottom (q?1) rows of the latter to the top.

[0077] From the above it is visible that the DA-QSM scheme improves over the QSM scheme of 19 essentially by adding diversity, i.e., by extending the transmission instances from T=1 to T=2. However, the dispersion matrices of the DA-QSM method are still real, just as those of the QSM scheme, implicating that no additional multiplexing capability is aggregated, and that coding gains is not optimized.

[0078] In contrast, the EDA-QSM method improves over the latter on both aspects. In particular, in this scheme the dispersion matrices are more elaborately designed as

[00012] A q = A 4 ( ? - 1 ) + i = e ? .Math. C i and B q = B 4 ( ? - 1 ) + i = e ? .Math. D i , ( 5 )

where e.sub.l is the l-th column custom-character of I.sub.L, with Lcustom-charactern.sub.T/2, the indices i?{1, . . . , 4} and l?{1, . . . , L}, and the core matrices C.sub.i and D.sub.i are based on the Sezginer-Sari-Biglieri (SSB) STBC of 24 described by

[00013] S S S B = [ s 1 + b s 3 - s 2 * + jbs 4 * s 2 + b s 4 s 1 * - jbs 3 * ] = .Math. i = 1 4 s i R C i + s i I D i ( 6 ) b = ? ( 1 - 7 ) + j ( 1 + 7 ) 4 , n C 1 = ? I 2 , C 2 = ? Z , C 3 = ? bW , and C 4 = ? Z .Math. C 3 ( 7 a ) D 1 = ? jM 2 .Math. Z , D 2 = ? Z .Math. D 1 , D 3 = ? - bM 2 .Math. W .Math. M 2 , and D 4 = ? Z .Math. D 3 , ( 7 b ) where Z = ? [ 0 - 1 1 0 ] and W = ? [ 1 0 0 - j ]

[0079] Through the concise description above it becomes easy to see that the fundamental distinction between the DA-QSM and the EDA-QSM methods is that the dispersion matrices of EDA-QSM are complex-valued, such that the orthogonality between the real and imaginary dimensions are better exploited in order to reap multiplexing and coding gains.

[0080] Two fair criticisms that can be made of the aforementioned schemesand in fact, to the best of our knowledge of all existing SotA QSM methods proposed so farare, however: a) that the scheme does not scale systematically simultaneously over space and time, for arbitrary T>2; and b) that the coding gain achieved is not optimum. Mitigating these two limitations is the objective of our first contribution described in the following section.

III. Optimized Scalable Quadrature Spatial Modulation Transmitter Design

A. Spectral Efficiency Optimality of QSM Schemes

[0081] Given the number of bits carried by the transmission of each QSM transmit symbol X as per equation (2), and the fact that such transmission requires T successive channel uses, the SE ? of any QSM scheme is given by

[00014] ? ( P , T ; M , n T ) = B T = 1 T ( 2 .Math. log 2 ( Q P ) .Math. + P log 2 M ) ( 8 )

where we recall that Qcustom-characterTn.sub.T and adopt a notation meant to emphasize that P and T are seen as fundamental QSM design parameters, while M and n.sub.T are considered to be system constraints.

[0082] FIG. 2 shows the Spectral efficiency of OS-QSM scheme with T=2, 4, and 8, for a given system with n.sub.T=8 and M=4

[0083] The presence of the binomial coefficient

[00015] ( Q P )

in equation (8) implicates that the SE function ?(P, T; M, n.sub.T) is monotonically descending on T, for a fixed P, and concave on P, for a fixed T, as well as on the ratio P/T. This is well illustrated in the plots offered in FIG. 2 from which it can be seen that in a system with n.sub.T=8 and M=4, the highest attainable SEs denoted by ?*, are achieved with P=11, 21 and 42, for T=2, 4 and 8, respectively.

[0084] Motivated by the discussion above, we seek analytical expressions for the optimum ratio P/T that maximizes the SE, given n.sub.T and M, which in turn can be used to determine the relative SE reduction incurred in setting T<n.sub.T for large-scale systems with n.sub.T.fwdarw.?. To this end, consider the upper and lower-bounds on the binomial coefficient, namely

[00016] e - 1 8 2 ? P ( Q Q - P ) Q + 1 2 .Math. ( Q - P P ) P < ( Q P ) < 1 2 ? P ( Q Q - P ) Q + 1 2 ( Q - P P ) P ? = ? ? ( P ; Q ) , ( 9 ) ? 1 ? P < Q ,

where for future convenience we implicitly defined the upper-bounding function ?(P; Q).

[0085] Using equation (9) into equation (8) yields the bound

[00017] ? ( P , T ; M , n T ) < 1 T log 2 ( ? 2 ( P ; Q ) .Math. M P ) ? = ? ? + ( P , T ; M , n T ) . ( 10 )

[0086] Taking the derivative of the latter expression with respect to P yields

[00018] ? ? + ? P = 1 T .Math. ? ? P [ 2 log 2 ( 1 2 ? P ( Q Q - P ) Q + 1 2 ( Q - P P ) P ) + P log 2 ( M ) ] = 1 T ln ( 2 ) [ 2 ( ln ( 1 - ? ? ) + 1 - 2 ? 2 Q ( ? - 1 ) ? ) + ln ( M ) ] , = 1 T ln ( 2 ) [ ln ( ( 1 - ? ) 2 .Math. M ? 2 ) + ( 1 - 2 ? Q ? ( ? - 1 ) ) ] ( 11 )

where in the second line we relax the constraint that P?custom-character and expressed more generally P=?Q, introducing the positive quantity ??1

[0087] Equating the expression in equation (11) to zero yields the following analytical implicit expression to determine the optimal number of symbols P* that maximizes the SE of a QSM system with Q=Tn.sub.T spatial-temporal resources and employing an M-ary constellation

[00019] P * = .Math. ? Q .Math. .Math. 2 ? - 1 ( ? - 1 ) ln ( ( 1 - ? ? ) 2 M ) = ?Q = ? P , ( 12 )

where we emphasize that the quantity on the righthand side of the expression is in fact sought after number of transmitted symbols P.

[0088] But recalling that the desired P* is also the largest possible, equation (12) implies that

[00020] P * = .Math. max ( 2 ? - 1 ( ? - 1 ) ln ( 1 - ? ? ) 2 M ) .Math. , ( 13 )

which in turn implies that the optimum ? is such that

[00021] ( 1 - ? ? ) 2 M = 1 ,

i.e., the solution of the quadratic polynomial (M?1)?.sup.2?2M?+M, which finally yields, simply

[00022] P * = .Math. M - M M - 1 Q .Math. = .Math. ? M * T n T .Math. , ( 14 )

where we introduced the implicitly-defined optimum gradient

[00023] ? M * = ? M - M M - 1 .

[0089] We emphasize that the elegant result offered in equation (14) is general for any QSM scheme. From this result it is seen that the optimum ratio P/T that maximizes the SE of the QSM scheme is linear on the number of transmit antennas n.sub.T. In other words, for any given M and n.sub.T, an SE-optimum QSM must be such that P/T scales linearly with n.sub.T, as illustrated and confirmed by the simulation results shown in FIG. 3

[0090] This means, FIG. 3 showing the effect of T and M on the optimum ratio P*/T between the number of transmit symbols and epochs

[0091] Recall also that QSM dispersion matrices are generally constructed with basis on STBCs characterized by T?T square encoding matrices. Consequently, it follows that if P must scale with n.sub.T in order for the QSM to be SE-optimal, so must the size T of the code, in order for the the underlying STBC itself to retain SE-optimality. In other words, equation (14) also implicates that in order to achieve SE-optimality, a QSM scheme conveying M-ary symbols must employ an underlying full-rate STBC of a size that scales proportionally to the number of transmit antennas n.sub.T.

[0092] It must be remarked, that setting T=n.sub.T is not a scalable proposition, not only because it implies furbishing the transmitter with an equal number of RF chains, which can be prohibitively expensive, but also because it results in fully dense signals, which in turn require also prohibitively complex ML receivers. This observation motivates the comparisons given in FIG. 4. which shows the fraction of the maximum attainable spectral efficiencies ?* occurring at P*, obtained by QSM schemes employing STBCs of different sizes, as a function of n.sub.T and for different M. It can be seen that QSM schemes with T sufficiently large, but still significantly less than n.sub.T, also asymptotically achieve near optimal SE as long as n.sub.T is sufficiently large.

[0093] FIG. 4 depicts the Behavior of fractional peak spectral efficiency as a function of n.sub.T, for different sizes of T and M.

[0094] In view of these results, in the next section it is introduce the a new QSM transmitter design, including both the description of how to construct QSM dispersion matrices based on optimal STBCs of arbitrary size, as well as a new systematic mechanism to obtain the associated set of index vectors used in their selection during transmission. For clarity of explanation, we first take the simpler example of the 2?2 case, to introduce the construction of dispersion index set for optimal diversity gain. The extension of the scheme to generalized T follows subsequently.

B. Golden (2?2) Dispersion Matrices and Optimal Index Sets

[0095] Before we proceed to describing the proposed dispersion matrix construction let us, without loss of generality and to facilitate comparison with existing methods, impose the assumption that the transmit signal matrix X as per equation (2) satisfies the unity average transmission power constraint for each active transmit antenna, such that custom-character[tr (X.sup.HX)]=PT under constellations with unity average power symbols. Then, consider the 2?2 Golden code, which compactly encodes four symbols {s.sub.1, s.sub.2, s.sub.3, s.sub.4} into the matrix,

[00024] S G = 1 5 [ ? ( s 1 + s 2 ? ) ? ( s 3 + s 4 ? ) j ? _ ( s 3 + s 4 ? ? ) ? _ ( s 1 + s 2 ? ? ) ] , ( 15 )

where ? and ? denote the complementary Golden numbers ?=(1+?{square root over (5)})/2 and ?=(1??{square root over (5)})/2), respectively, and ?=1+j(1??) and ?=1+j(1??) are the optimized coefficients for the Gaussian integer constellation sets.

[0096] The construction of QSM dispersion matrices based on the latter Golden code follows from the decomposition of S.sub.G into the auxiliary matrices C.sub.i and D.sub.i, which are used to modulate the real part s.sub.i.sup.R and imaginary part s.sub.i.sup.I of each i-th symbol encoded, respectively, such that

[0097] where

[00025] S G = 1 5 .Math. i = 1 4 ( s i R C i + s i I D i ) , ( 16 ) C 1 = ? [ ? 0 0 ? _ ] , C 2 = ? ? .Math. C 1 , C 3 = ? J 2 , 1 .Math. C 1 .Math. M 2 , C 4 = ? J 2 , 1 .Math. C 2 .Math. M 2 , and D i = ? jC i ,

with

[00026] ? = ? [ ? 0 0 ? _ ] and J 2 , 1 = ? [ 1 0 0 j ] ,

and note that post-multiplying the circular lower-shift matrix M.sub.n to a given matrix X results in a column-wise circular shift of X to the left. In possession of the above auxiliary matrices, the Golden dispersion matrices are then built using the Kronecker product operations following a similar strategy, namely

[00027] A q = A 4 ( ? - 1 ) + i = 2 5 e ? .Math. C i and B q = B 4 ( ? - 1 ) + i = 2 5 e ? .Math. D i . ( 18 )

[0098] Regarding the scaling factor in equation (18), the denominator

[00028] 1 5

is passed over from the coefficient of the Golden code as in equations (15) and (16), while the numerator ?{square root over (2)} is the result of power scaling required to ensure that the transmit power constraint custom-character[tr (X.sup.HX)]]=PT is satisfied. To elaborate further, from equations (2) and (18) it follows that custom-character[tr (X.sup.HX)]]=PT implies that the dispersion matrices must satisfy tr (A.sub.q.sup.HA.sub.q)=T and tr (B.sub.q.sup.HB.sub.q)=T, for all q?{1, . . . , Q}, whereas from the construction of the auxiliary matrices C.sub.i and D.sub.i as per equations (17) it is evident that tr (C.sub.i.sup.HC.sub.i)=1 and tr (D.sub.i.sup.HD.sub.i)=1, such that a power scaling of T=2 onto C.sub.i and D.sub.i, i.e., an amplitude scaling of ?{square root over (2)} onto C.sub.i and D.sub.i, is needed.

[0099] The Golden codes are known to outperform the SSB codes employed in the EDA-QSM scheme, while having structure very similar to the latter, such that their utilization in the construction of dispersion matrices as described above is, in and of itself, bound to improve the performance of QSM schemes over those briefly described in Subsection II-B, as shall be demonstrated later via simulated comparisons.

[0100] There is, however, another mechanism to improve the performance of QSM schemes employing STBCs, namely, to optimize the selection of the index vectors in custom-character={k.sub.n}.sub.n=1.sup.N?custom-character.sup.P that determine which dispersion matrices are assigned to the real and imaginary parts of each encoded symbol. This is because each index vectors k.sub.n is, according to equations (17) and (18), associated with different subsets of spatial-temporal resources utilized by the QSM scheme in the transmission of a given set of spatially encoded bits. To illustrate the issue, define the set custom-character* of all

[00029] ( Q P )

distinct index vectors for a given pair (P, Q), and consider the corresponding example compiled in Table ? for the case P=3 and Q=2n.sub.T=8.

[0101] Recall also that each dispersion matrix in the transmission of s.sub.p.sup.R or s.sub.p.sup.I uses two given pairs of antennas and time slots, as per equations (17) and (18), such that for the sake of conciseness we hereafter refer to each pair of one antenna and one time slot simply as a spatial temporal resource r.sub.q, defining also for future convenience the set of all available and utilized spatial temporal resources, denoted respectively by custom-character* and custom-character. Then, if resources and dispersion matrix indices are represented by a rectangular and a circular nodes, respectively, a bipartite graph such as the one shown in FIG. 5 for the case in question (i.e., P=3 and Q=8) can be built, in which an edge connecting a circular and a rectangular nodes indicates that the corresponding resource is used by the given dispersion matrix.

[0102] FIG. 5 is the bipartite graph representing the spatial-temporal resource usage associated with each index vector k.sub.n for a QSM system with P=3 and Q=8. The particular examples of k.sub.1, k.sub.37 and k.sub.54 are explicitly illustrated

[0103] As illustrated by the graph, the inclusion of a given index set k.sub.n from custom-character* into the set custom-character is associated with the use of certain resources, occasionally with multiplicity, identified by the graph edges intercepted by the enclosure encircling the corresponding indices. We shall therefore use the notation k.sub.n.Math.r.sub.n to indicate that the index set k.sub.n implicates the utilization of the set of resources r.sub.n, and ?.sub.k.sub.n(r.sub.q) to denote the multiplicity of the resource r.sub.q in the set k.sub.n.

[0104] For example, the use of the resources r.sub.1={2?(1,1), (1,2), (2,1), 2?(2,2)} results from having k.sub.1=[1, 2, 3] in custom-character, such that we may write concisely k.sub.1.Math.r.sub.1, with ?.sub.k.sub.1(1,1)=?.sub.k.sub.1(2,2)=2. Similarly, k.sub.37=[3, 4, 5].Math.r.sub.37=(1,1), (1,2), (2,1), (2,2), (3,1), (4,2)), and k.sub.54=[5, 6, 8].Math.r.sub.54={(3,1), 2?(3,2), 2?(4,1), (4,2)}, with ?.sub.r.sub.37(3,2)=?.sub.r.sub.37(4,1)=2.

[0105] It is evident from all the above that in order to avoid redundancy and uneven utilization of spatial-temporal resources, so as to optimize the performance of QSM schemes, the sets of dispersion matrix indices custom-character (with corresponding resource set custom-character) must satisfy the following conditions: [0106] a) no two index vectors k.sub.n and k.sub.m in the set can be equal (i.e., k.sub.n?k.sub.m, ?n?m); [0107] b) no two elements in each index vector can be equal (i. e., [k.sub.n].sub.i?[k.sub.n].sub.j, ?k.sub.n and i?j); [0108] c) the utilization of all resources available must be ensured (i.e., custom-character(r.sub.q)>0?r.sub.q?custom-character); [0109] d) all resources are utilized as often (i.e., ?custom-character(r.sub.1)= . . . =?custom-character(r.sub.Q)), and finally [0110] e) the cardinality of the set must be a power of 2 in order to enable the encoding of codewords

[00030] ( i . e . , N = .Math. "\[LeftBracketingBar]" ? .Math. "\[RightBracketingBar]" = .Math. ( Q P ) .Math. 2 ? ) .

[0111] As an example, we highlight in Table I the set of index vectors custom-character={k.sub.1, k.sub.2, k.sub.3, k.sub.5, . . . , k.sub.8, k.sub.10, k.sub.11, k.sub.19, . . . , k.sub.23, k.sub.26, k.sub.27, k.sub.28, k.sub.35, . . . , k.sub.38, k.sub.41, k.sub.42, k.sub.47, k.sub.48, k.sub.50, . . . , k.sub.56}. The reader can verify that by this choice of custom-character, all resources in the associated set custom-character have multiplicity 24. In contrast, a naive truncation of the first 32 index vectors in Table I. i.e. custom-character={k.sub.1, . . . , k.sub.32} as suggested e.g. in 23, leads to an uneven utilization pattern in which ?custom-character(1,1)=?custom-character(2,2)=32, ?custom-character(1,2)=?custom-character(2,1)=28, ?custom-character(3,1)=?custom-character(4,2)=19 and ?custom-character(3,2)=?custom-character=17, which is obviously sub-optimum as it leads to antennas 1 and 2 being used far more often than antennas 3 and 4.

[0112] The problem of selecting the optimum set custom-character as described and illustrated above relates to a classic problem in combinatorics graph theory known as the Vertex Cover Problem. In the context hereby, however, the problem has the additional difficulties that: a) the graph in question is bipartite, b) coverage with equal multiplicity is required, and c) nodes must be selected in subsets of three at a time.

TABLE-US-00001 TABLE I Sets of All Possible Index Vectorscustom-character * and Resourcescustom-character *(P = 3, n.sub.T = 4, T = 2) Elements ofcustom-character * Elements ofcustom-character * k.sub.1 [1, 2, 3] (1, 1), (2, 2), (1, 2), (2, 1), (1, 1), (2, 2) k.sub.2 [1, 2, 4] (1, 1), (2, 2), (1, 2), (2, 1), (1, 2), (2, 1) k.sub.3 [1, 2, 5] (1, 1), (2, 2), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.4 [1, 2, 6] (1, 1), (2, 2), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.5 [1, 2, 7] (1, 1), (2, 2), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.6 [1, 2, 8] (1, 1), (2, 2), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.7 [1, 3, 4] (1, 1), (2, 2), (1, 1), (2, 2), (1, 2), (2, 1) k.sub.8 [1, 3, 5] (1, 1), (2, 2), (1, 1), (2, 2), (3, 1), (4, 2) k.sub.9 [1, 3, 6] (1, 1), (2, 2), (1, 1), (2, 2), (3, 2), (4, 1) k.sub.10 [1, 3, 7] (1, 1), (2, 2), (1, 1), (2, 2), (3, 1), (4, 2) k.sub.11 [1, 3, 8] (1, 1), (2, 2), (1, 1), (2, 2), (3, 2), (4, 1) k.sub.12 [1, 4, 5] (1, 1), (2, 2), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.13 [1, 4, 6] (1, 1), (2, 2), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.14 [1, 4, 7] (1, 1), (2, 2), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.15 [1, 4, 8] (1, 1), (2, 2), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.16 [1, 5, 6] (1, 1), (2, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.17 [1, 5, 7] (1, 1), (2, 2), (3, 1), (4, 2), (3, 1), (4, 2) k.sub.18 [1, 5, 8] (1, 1), (2, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.19 [1, 6, 7] (1, 1), (2, 2), (3, 2), (4, 1), (3, 1), (4, 2) k.sub.20 [1, 6, 8] (1, 1), (2, 2), (3, 2), (4, 1), (3, 2), (4, 1) k.sub.21 [1, 7, 8] (1, 1), (2, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.22 [2, 3, 4] (1, 2), (2, 1), (1, 1), (2, 2), (1, 2), (2, 1) k.sub.23 [2, 3, 5] (1, 2), (2, 1), (1, 1), (2, 2), (3, 1), (4, 2) k.sub.24 [2, 3, 6] (1, 2), (2, 1), (1, 1), (2, 2), (3, 2), (4, 1) k.sub.25 [2, 3, 7] (1, 2), (2, 1), (1, 1), (2, 2), (3, 1), (4, 2) k.sub.26 [2, 3, 8] (1, 2), (2, 1), (1, 1), (2, 2), (3, 2), (4, 1) k.sub.27 [2, 4, 5] (1, 2), (2, 1), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.28 [2, 4, 6] (1, 2), (2, 1), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.29 [2, 4, 7] (1, 2), (2, 1), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.30 [2, 4, 8] (1, 2), (2, 1), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.31 [2, 5, 6] (1, 2), (2, 1), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.32 [2, 5, 7] (1, 2), (2, 1), (3, 1), (4, 2), (3, 1), (4, 2) k.sub.33 [2, 5, 8] (1, 2), (2, 1), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.34 [2, 6, 7] (1, 2), (2, 1), (3, 2), (4, 1), (3, 1), (4, 2) k.sub.35 [2, 6, 8] (1, 2), (2, 1), (3, 2), (4, 1), (3, 2), (4, 1) k.sub.36 [2, 7, 8] (1, 2), (2, 1), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.37 [3, 4, 5] (1, 1), (2, 2), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.38 [3, 4, 6] (1, 1), (2, 2), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.39 [3, 4, 7] (1, 1), (2, 2), (1, 2), (2, 1), (3, 1), (4, 2) k.sub.40 [3, 4, 8] (1, 1), (2, 2), (1, 2), (2, 1), (3, 2), (4, 1) k.sub.41 [3, 5, 6] (1, 1), (2, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.42 [3, 5, 7] (1, 1), (2, 2), (3, 1), (4, 2), (3, 1), (4, 2) k.sub.43 [3, 5, 8] (1, 1), (2, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.44 [3, 6, 7] (1, 1), (2, 2), (3, 2), (4, 1), (3, 1), (4, 2) k.sub.45 [3, 6, 8] (1, 1), (2, 2), (3, 2), (4, 1), (3, 2), (4, 1) k.sub.46 [3, 7, 8] (1, 1), (2, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.47 [4, 5, 6] (1, 2), (2, 1), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.48 [4, 5, 7] (1, 2), (2, 1), (3, 1), (4, 2), (3, 1), (4, 2) k.sub.49 [4, 5, 8] (1, 2), (2, 1), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.50 [4, 6, 7] (1, 2), (2, 1), (3, 2), (4, 1), (3, 1), (4, 2) k.sub.51 [4, 6, 8] (1, 2), (2, 1), (3, 2), (4, 1), (3, 2), (4, 1) k.sub.52 [4, 7, 8] (1, 2), (2, 1), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.53 [5, 6, 7] (3, 1), (4, 2), (3, 2), (4, 1), (3, 1), (4, 2) k.sub.54 [5, 6, 8] (3, 1), (4, 2), (3, 2), (4, 1), (3, 2), (4, 1) k.sub.55 [5, 7, 8] (3, 1), (4, 2), (3, 1), (4, 2), (3, 2), (4, 1) k.sub.56 [6, 7, 8] (3, 2), (4, 1), (3, 1), (4, 2), (3, 2), (4, 1)

TABLE-US-00002 Method 1 Greedy Construction of Optimal Set of Index Vectors K Internal Parameters: Number of resources Q) = T .Math. n.sub.T and set of all possible indicescustom-character *. Inputs: Number of symbols P, of transmit antennas n.sub.T and dimension T of FDFR STBC. Outputs: Optimized set of index vectorscustom-character . 1: Choose a random seed n ? {1, .Math..Math..Math. , (.sub.P.sup.Q)} and start withcustom-character = ?; 2: while |custom-character | ? ?(.sub.P.sup.Q)?.sub.2.sub.? do 3:Insert k.sub.n into the setcustom-character of selected index vectors; 4:Sort all indices k ? {1, .Math..Math..Math. , Q} in ascending order of their multiplicities incustom-character ; 5:Set D = P and construct/clear the empty setcustom-character = ? of candidate index vectors; 6:while |custom-character | = 0 do 7:Construct a list ? of candidate indices with the D lowest multiplicities incustom-character ; 8:Construct the setcustom-character of all (.sub.P.sup.D) index vectors {tilde over (k)}.sub.m with indices in ?; 9:Remove fromcustom-character all index vectors already incustom-character ; 10:if |custom-character | = 0 then 11:Increment D by 1; 12:end if 13:end while 14:Select next n ? {1, .Math..Math..Math. , (.sub.P.sup.Q) as the position of the first index vector {tilde over (k)}.sub.m ofcustom-character in custom-character *; 15: end while

[0113] Due to these peculiarities, the problem itself is, to the best of our knowledge, original and cannot be solved by known variations of the Vertex Cover algorithm. Fortunately, the highly symmetric structure of the associated bipartite graph can be exploited to design an efficient algorithm to solve the selection problem at hand. To that end, let us commit a slight abuse of notation and define the multiplicity of a dispersion matrix index ?.sup.2 q in the set custom-character as custom-character(q). Then, by virtue of the symmetry of the graph (see FIG. 5], a solution custom-character in which custom-character(1)= . . . =custom-character(Q) implies a solution custom-character in which each of the spatial temporal resources {(1,1), (1,2), (2,1), (2,2), (3,1), (4,2)} have the same multiplicity. Consequently, the problem can be solved efficiently by the greedy selection of indices, as described in method 1.

C. Optimal Generalized Design (T?T)

[0114] Due to the greedy optimal index vector selection algorithm described above, which is general on P, T and n.sub.T, the last limiting factor preventing the generalization of QSM to arbitrary T is the construction of the dispersion matrices with basis on STBCs of arbitrary size. This obstacle is eliminated by considering the design of QSM dispersion matrices based on the Perfect FDFR STBC.

[0115] a T?T FDFR STBC encodes T.sup.2 symbols such that the average energy transmitted per antenna is normalized to unity, an energy efficiency-shaping constraint is enforced, and a SE-preserving lower bound on the coding gain (a.k.a, non-vanishing determinant) is maximized. Ultimately, for given T?custom-character.sup.+ the design can be described by

[00031] S P = .Math. t = 1 T diag ( R .Math. s t ) .Math. J T , t - 1 .Math. N T t - 1 ( 19 )

where s.sub.t=[s.sub.1+(t?1)T, s.sub.2+(t?1)T, . . . , s.sub.tT].sup.T, with t={1, . . . , T} are vectors each carrying T distinct transmit symbols, R is a T?T optimum lattice generating matrix J.sub.T,n is a T?T matrix constructed by replacing the last n diagonal entries of the identity matrix by the elementary complex number j, and N.sub.T is a T?T cyclic upper-shift matrix (notice that J.sub.T,n generalizes J.sub.2,1 used in equation 17. In turn, oppositely to M.sub.n, N.sub.n is obtained by circularly shifting the top row of I.sub.n to the bottom. Some examples are

[00032] J 2 , 0 = [ 1 0 0 1 ] , J 3 , 2 = [ 1 0 0 0 j 0 0 0 j ] and N 3 = [ 0 1 0 0 0 1 1 0 0 ] ,

such that post-multiplying it to a given matrix X results in a column-wise shift of X to the right.

[0116] Notice that the Perfect FDFR STBC of fully generalizes the 2?2 Golden code of [28]. To see that, suffice it to consider the case T=2 and with the corresponding lattice generating matrix

[00033] R = 1 5 [ ? ?? ? _ ? _ ? _ ] ,

such that equation (19) yields

[00034] S P = diag ( 1 5 [ ? ?? ? _ ? _ ? _ ] [ s 1 s 2 ] ) .Math. J 2 , 0 .Math. N 2 0 + diag ( 1 5 [ ? ?? ? _ ? _ ? _ ] [ s 3 s 4 ] ) .Math. J 2 , 1 .Math. N 2 1 = 1 5 [ ? ( s 1 + s 2 ? ) ? ( s 3 + s 4 ? ) j ? _ ( s 3 + s 4 ? ? ) ? _ ( s 1 + s 2 ? ? ) ] = S G ( 20 )

[0117] It follows that in order to be employ Perfect FDFR STBCs in the design of QSM. suffice it to decompose the core code structure of equation 19 in terms of corresponding auxiliary dispersion matrices C.sub.i and D.sub.i due to symmetry, namely

[00035] C i = C T ( w - 1 ) + t = diag ( R .Math. e t ) .Math. J T , w - 1 , .Math. N T w - 1 and D i = j C i ( 21 )

where the generalized indices i?{1, . . . , T.sup.2} are constructed systematically on t?{1, . . . , T} and w?{1, . . . , T}, and e.sub.t is the t-th column of I.sub.T.

[0118] Following this, the full set of dispersion matrices custom-character and custom-character can be built, i.e.,

[00036] A q = A T 2 ( ? - 1 ) + i = ? e ? .Math. C i and B q = B T 2 ( ? - 1 ) + i = ? e ? .Math. D i , ( 22 )

[0119] where again q?{1, . . . , Q}, i?{1, . . . , T.sup.2} as from equation (21), e.sub.l is the l-th column of I.sub.L, but l?{1, . . . , L} with L=?n.sub.T/T?, as well as a generalized scaling factor ? determined depending on the specific STBC in order to adjust the powers of the dispersion matrices such that tr (A.sub.q.sup.HA.sub.q)=T and tr (B.sub.q.sup.HB.sub.q)=T.

[0120] Next, we turn our attention to the construction of the optimal set of index vectors custom-character, via a straightforward generalization of the method described in Subsection III-B. Indeed, as can be learned by inspecting equation (21, each auxiliary matrix C.sub.i and D.sub.i is a T?T sparse matrix obtained from a cyclic rotation of a diagonal matrix containing only T non-zero elements of R.

TABLE-US-00003 Method 2 QSM Signal Generation Internal Parameters: Number of symbols P, transmit antennas n.sub.T, time slots T and spatial-temporal resources Q = T .Math. n.sub.T; and cardinalities M = |S|, and N = |custom-character | = ?(.sub.P.sup.Q)?.sub.2.sub.?; Global Quantities: Symbol constellation S, optimum lattice generating matrix R, sets of dispersion matricescustom-character = {A.sub.g}.sub.q=1.sup.Q andcustom-character = {B.sub.g}.sub.q=1.sup.Q with A.sub.q and B.sub.q as in eq. (22). set of index vectorscustom-character obtained from Algorithm 1. Input: Information bit sequence b = [b.sup.R, b.sup.I, b.sup.S]; Outputs: Transmitted signal X. 1: Select index vector k.sup.R as the ([b.sup.R].sub.(10) + 1)-th vector incustom-character ; 2: Select index vector k.sup.I as the ([b.sup.I].sub.(10) + 1)-th vector incustom-character ; 3: Assign the bits b.sup.S to P symbols {s.sub.1, .Math..Math..Math. , s.sub.p} selected from S, with s.sub.p = s.sub.p.sup.R + js.sub.p.sup.1; 4: Construct X = ?.sub.p=1.sup.P(s.sub.p.sup.RA.sub.k.sub.p.sub.R + s.sub.p.sup.IB.sub.k.sub.p.sup.I) as per equation (2)

[0121] Consequently, the associated dispersion matrices obtained from equation (22) are all sparse matrices with only T non-zero entries, corresponding to the T spatial-temporal resources utilized. In other words, while in the Golden QSM scheme of Subsection III-B each dispersion matrix index q is associated with 2 resources, in the Perfect STBC-based construction here described each index q associates to T resources, such that the corresponding bipartite graph illustrated in FIG. 5 is merely expanded to a similar graph with T.Math.n.sub.T index (circular) nodes and T.Math.n.sub.T resource (rectangular) nodes, with each resource node connected to T index nodes and vice versa. As a result, the greedy strategy described earlier remains valid, as evidenced by the fact that Algorithm 1 applies to general T. For the convenience of the reader, we summarize the structure of the proposed scalable QSM scheme in Method 2.

IV. Proposed Receiver Design

A. Sparse Formulation of QSM Receivers

[0122] Together, methods 1 and 2 introduced above demonstrate that the design of OS-QSM transmitters is possible and tractable. There is, however, no true scalability without feasibility, such that in order to complete the task it is also necessary to show that the proposed OS-QSM design is effectively decodable at reasonable complexity.

[0123] To put the challenge into context, for given P, M, T and n.sub.T, with Q=T.Math.n.sub.T, an ML receiver would have to go through

[00037] ( .Math. ( Q P ) .Math. 2 x ) 2 .Math. M P

combinations of symbols and selected spatial-temporal resources in order to detect a sequence of

[00038] 2 .Math. .Math. log 2 ( Q P ) .Math. + P .Math. log 2 M

bits. That means that even for the minimal setting of T=2, P=2 and M=4, a system with n.sub.T=8 transmit antennas would require the receiver to go through

[00039] ( .Math. ( Q P ) .Math. 2 ? ) 2 .Math. ( 4 ) 2 = 16.777 .216

combinations in order to decode the corresponding log.sub.2 (16.777.216)=24 bits. In other words, ML decoding is highly impractical in QSM systems, especially in the context of massive MIMO systems.

[0124] We emphasize that this challenge applies not only to the OS-QSM scheme of Subsection III-B but also to current SotA QSM methods such as those in [20]-[23], as the example given above is for T=2, which is the size of the core codes used in the latter. We furthermore stress that the utilization of SD receivers is also not viable in scaled cases, because the nature of tree search algorithms still requires excessive computational complexity in large systems. Finally, we also remark that since convenient properties such as fast-decodability and block-diagonality are known not to be retainable without sacrifice of optimality for STBC of arbitrary size, a scalable detector for QSM schemes cannot rely on such features.

[0125] In light of the above, we introduce hereafter a new detection method for QSM schemes which relies neither on tree-search, nor on specific properties of STBCs and which is completely independent of the infeasible combinatorial factor

[00040] .Math. ( Q P ) .Math. 2 ? .

In addition, given prior information on the encoding construction, the proposed decoder is valid to detect any QSM signal.

[0126] The core idea of our approach is to take full advantage of a sparse representation of QSM signals over the entire channel (i.e., for all spatial temporal resources available), assumed known at the receiver. The proposed decoding method then leverages the iterative shrinkage thresholding algorithm (ISTA) to greedily extract symbol and dispersion index estimates, resulting in significantly lower complexities compared to ML and SD-based methods. To that end, first combine equations (1) and (2), and consider the vectorized form of the QSM received signal

[00041] y = ? vec ( Y ) = ( I T .Math. H ) ? = ? ? H ( ? A u R + ? B u I ) + vec ( V ) ? = ? v = ? H .Math. ( ? A u R + ? B u I ) + v ? ? T n R ? 1 , ( 23 )

where we implicitly defined the block-diagonal channel matrix ?.sub.H and vectorized noise v; the dispersion matrices in custom-character and custom-character are also vectorized into a.sub.qcustom-charactervec (A.sub.q) and b.sub.qcustom-charactervec (B.sub.q) and concatenated into ?.sub.Acustom-character[a.sub.1, . . . , a.sub.Q]?custom-character.sup.Q?Q and ?.sub.B=[b.sub.1, . . . , b.sub.Q]?custom-character.sup.Q?Q, respectively; and u.sup.R?custom-character.sup.Q?1 (respectively u.sup.I?custom-character.sup.Q?1) is set to zero everywhere, except for its elements of indices k.sup.R?custom-character (respectively k.sup.I?custom-character), which are set to {s.sub.1.sup.R, . . . , s.sub.P.sup.R} (respectively {s.sub.1.sup.I, . . . , s.sub.P.sup.I}).

[0127] Equation (23) can be further simplified by defining the combined and real-imaginary decoupled information and noise vectors

[00042] u = ? [ u 1 R , u 1 I , .Math. , u Q R , u Q I ] T ? ? 2 Q ? 1 and v = ? [ v 1 R , v 1 I , .Math. , v T n R R , v T n R I ] , ( 24 )

as well as the decoupled versions of a.sub.q and b.sub.q, namely

[00043] a q = ? [ a q 1 R , a q 1 I , .Math. , a q Q R , a q Q I ] T and b q = ? [ b q 1 R , b q 1 I , .Math. , b q Q R , b q Q I ] T , ( 25 )

which in turn can be combined into a single dispersion matrix ?.sub.D?custom-character.sup.2Q?2Q, namely

[00044] ? D = ? [ a 1 , b 1 , a 2 , b 2 , .Math. , a Q , b Q ] , ( 26 )

such that the vectorized system model of equation (23) can be re-written as

[00045] y = ? ? H ? D .Math. u + v = ? H .Math. ? D .Math. u + v = G .Math. u + v ? ? 2 T n R ? 1 ( 27 )

where {hacek over (?)}.sub.H is the quadrature-operated block diagonal channel matrix ?.sub.H, which we implicitly relabeled ?.sub.H, as with the effective channel matrix Gcustom-character?.sub.H.Math.?.sub.D, for future convenience.

[0128] To elaborate on equation (27) with an example, consider a system with P=3, T=2 and n.sub.T=4, and assume that for a particular bit sequence b=[b.sup.R, b.sup.I, b.sup.S], the selected index vectors are given by k.sup.R=k.sub.10=[1, 3, 7] and k.sup.I=k.sub.47=[4, 5, 7]. Then, the corresponding combined information vector becomes u=[s.sub.1.sup.R, 0, 0, 0, s.sub.2.sup.R, 0, 0, s.sub.1.sup.I, 0, s.sub.2.sup.I, 0, 0, s.sub.3.sup.R, s.sub.3.sup.I, 0, 0].sup.T. Notice that while u carries in the entries s.sub.p.sup.R and s.sub.P.sup.I the P log.sub.2 M bits corresponding to the b.sup.S subsequence, the remaining 2 log.sub.2 N bits corresponding to the subsequences b.sup.R and b.sup.I are encoded merely by positions of non-zero elements in u, regardless of what the values of s.sub.p.sup.R and s.sub.P.sup.I might be, which suggests that the detection of b.sup.S could be done separately from that of b.sup.R and b.sup.I.

[0129] In principle, the latter feature could be utilized to design an SD receiver for the OS-QSM method proposed above, similarly to how block-separability was exploited in to do so for the EDA-QSM scheme. The problem with that idea is, of course, the prohibitively large number of combinations how the 2P elements of the decoupled symbol vector s=[s.sub.1.sup.R, s.sub.1.sup.I, . . . , s.sub.P.sup.R, s.sub.P.sup.I] can be placed among the 2Q entries of u. In order to circumvent this challenge, we instead seek to exploit the facts demonstrated in Subsection III-A namely, that: a) the optimum number P* of symbols maximizing SE is a fraction of the total spatial-temporal resources Q=T.Math.n.sub.T, as per equation (12); and b) that in large-scale systems with n.sub.T>>1, a significantly smaller block size T suffices to asymptotically achieve SE optimality, as shown in FIG. 4 Together, these facts imply that the sparsity of u becomes increasingly more prominent in large-scale SE-optimal QSM schemes, which in turn favors sparse recovery algorithms. It is also evident from the inspection of equation (27) that the matrices ?.sub.H and ?.sub.D can be respectively interpreted as the sensing and dictionary matrices typical of compressive sensing (CS) models such that recent progress on sparse and discrete-aware receivers can be leveraged.

[0130] Taking into account the focus on scalability, which at the receiver side translates to controlling complexity, two suitable candidate methods to be applied for OS-QSM demodulation are the generalized approximate message-passing (GAMP) method, and the iterative shrinkage thresholding algorithm [ISTA], both of which possess quadratic complexity on the size 2Tn.sub.T of the signal vector u. It is well-known, however, that the GAMP algorithm relies strongly on the particular structure of measurement matrix and the independence of the received signal, which in the case of QSM cannot be generally assumed, as a direct consequence of the utilization of STBCs in the dispersion matrices. In the absence of the required conditions, GAMP receivers yield poor performance, characterized by error-floors at high SNRS.

[0131] Motivated by this fact, it is therefore chosen to follow a ISTA-based approach in the design of a low-complexity demodulator for QSM systems, which is described in the sequel. In particular, it is introduced a method to detect QSM signals, which is based on a purpose-built variation of ISTA that incorporates modifications both on the thresholding function and on the index vector estimation process, specifically to QSM detection.

B. Greedy Boxed ISTA-Based QSM Decoder

[0132] Consider the standard ISTA recursion,

[00046] u ^ ( ? + 1 ) = ? ( u ^ ( ? ) + 1 ? G T ( y - G u ^ ( ? ) ) ; ? 2 ? ) , ( 28 )

where ?.sup.(?) is the estimate of u at the ?-th iteration, ?=maxeig (G.sup.TG) is the shrinkage step size, (the actual requirement is that ?>maxeig (G.sup.TG), however, we will assume the minimum step-size, which is sufficient), ? is the threshold factor, and ?(s; ?) is the soft-thresholding function. A first meaningful modification to such standard ISTA recursions in equation (28) is to account for the fact that the symbols in the real-valued projected constellation custom-character.sub.Rcustom-charactercustom-character(custom-character) are finite, such that in addition to the lower limit ? in the vicinity of the origin used to enforce sparsity in the solution, an upper limit max(custom-character.sub.R) can be introduced into the thresholding function. In other words, for the case at hand we replace ISTA s standard soft-thresholding function ?(s; ?) by a hard-thresholding function leading to the boxed hard-thresholding function ?(s; ?) illustrated in FIG. 6 and defined by

[00047] ? ( s ; ? ) = ? { min ( ? R ) s ? m ( ? R ) , s min ( ? R ) ? s ? - ? , 0 .Math. "\[LeftBracketingBar]" s .Math. "\[RightBracketingBar]" ? ? , s ? ? s ? min ( ? R ) , max ( ? R ) max ( ? R ) ? s . ( 29 )

[0133] FIG. 6 is the Comparison of ISTA thresholding and BH-ISTA thresholding functions ?(s; ?), and ?(s; ?), (29)

[0134] Incorporating this modification yields the boxed-hard ISTA (BH-ISTA) receiver described by

[00048] u ^ ( ? + 1 ) = ? ( u ^ ( ? ) + 1 ? G T ( y - G u ^ ( ? ) ) ; ? 2 ? ) . ( 30 )

[0135] Notice that the computational cost of repeatedly evaluating equation 30 is dominated by the term G?.sup.(?), therefore quadratic on the number of non-zero entries (i.e., custom-character.sub.0-norm) of ?.sup.(?), which reduces with the iterations ?, as illustrated in FIG. 7

[0136] FIG. 7 shows the Convergence of ?.sub.?.sup.(?) and ?.sub.?.sup.(?), as per equations 28 and (30, respectively, as a function of iterations ?.

[0137] FIG. 7(a) is the Sparsity convergence with various threshold values

[0138] FIG. 7(b) is the MSE convergence with optimal threshold values

[0139] In particular, FIG. 7(a) shows a comparison of the convergence of |?.sup.(?)|.sub.0 as a function of ? for various values of threshold parameter ?, with ?.sup.(?) obtained both from equations (28) and (30), i.e., via conventional and BH-ISTA, respectively, which for convenience will be hereafter denoted ?.sub.?.sup.(?) and ?.sub.?.sup.(?).

[0140] It can in fact be seen that as a result of boxing and hard-thresholding, |?.sub.?.sup.(0)|.sub.0<|?.sub.?.sup.(0)|.sub.0, such that the expected order of complexity associated with evaluating equation 28 is lower than that of evaluating (30), which can be bounded both below and above by the lower- and upper-limits (custom-character(4P.sup.2) and custom-character(4Q.sup.2)).

[0141] More details will be given in Section V-A. In turn, FIG. 7(b) shows that the mean-squared error (MSE) obtained with the proposed BH-ISTA approach is better than that obtained with conventional ISTA, which illustrates the effectiveness of the boxed and hard-thresholding modification here proposed for the demodulation of QSM signals. It is left for us to address, however, how the bits associated with the choices of dispersion matrix indices {k.sup.R, k.sup.I}?custom-character can be efficiently detected. To that end, another addition is introduced to the ISTA-based sparse detector, namely, a greedy hard-detection procedure for each symbol recovered, with a concomitant update of equation (30), which can be described as follows.

[0142] Let us consider that multiple runs of the BH-ISTA iterations described by equation (30) are performed, such that prior to the m-th run a modification is made to y, G and u, which can be expressed by rewriting equation (30) as

[00049] u ^ m ( ? + 1 ) = ? ( u ^ m ( ? ) + 1 ? G m T ( y m - G m u ^ m ( ? ) ) ; ? 2 ? ) , ( 31 )

where we convene that for the first run (m=1) we set y.sub.1=y, G.sub.1=G and ?.sub.0.sup.(1)=0.sub.2Q.

[0143] Let ?* be the last iteration of the m-th run of the latter estimator, with its corresponding outcome denoted by ?.sub.m.sup.(?*). And finally, let {tilde over (s)}.sub.{circumflex over (q)}.sub.m be the entry of ?.sub.m.sup.(?*) with the largest amplitude, whose position is denoted by {circumflex over (q)}.sub.m, such that we may write

[00050] s ~ q ^ m = { [ u ^ m ( ? * ) ] q ^ m .Math. "\[LeftBracketingBar]" .Math. "\[RightBracketingBar]" [ u ^ m ( ? * ) ] q ^ m .Math. "\[RightBracketingBar]" > .Math. "\[RightBracketingBar]" [ u ^ m ( ? * ) ] ? | , ? ? ? { 1 , .Math. , 2 Q } } , ( 32 )

where [x].sub.l denotes the l-th element of a generic vector x. It is emphasized that in the greedy procedure summarized by equation 32, two distinct pieces of information on the bit sequence b are obtained, namely, a soft estimate {tilde over (s)}.sub.{circumflex over (q)}.sub.m of one of the modulated symbols {s.sub.p.sup.R, s.sub.p.sup.I}?custom-character, and a hard estimate {circumflex over (q)}.sub.m of one of the indices contained in the selected index sets {k.sup.R, k.sup.I}?custom-character. In possession of such information, the following steps are then executed in order to produce the modified quantities required to perform the next run of the BH-ISTA recursion described by equation (31).

[0144] First, a hard-detected version of {tilde over (s)}.sub.m is obtained by projecting in onto custom-character.sub.R, that is

[00051] s ^ q ^ m = ? ? R ( s ~ q ^ m ) . ( 33 )

[0145] Then, the remaining quantities are updated following

[00052] u ^ m + 1 ( 1 ) = ( I 2 Q - diag ( e q ^ m ) ) u ^ m ( ? * ) , y m + 1 = y m - G m .Math. e q ^ m s ^ q ^ m , ( 34 ) and G m + 1 = G m ( I 2 Q - diag ( e q ^ m ) ) ,

where I.sub.2Q is the identity matrix of size 2Q and e.sub.{circumflex over (q)}.sub.m its {circumflex over (q)}.sub.m-th column. Recall that due to the quadrature-decomposed structure of the sparse vector u, all odd index estimates {circumflex over (q)}.sub.m correspond to the real parts of modulated symbols, while even {circumflex over (q)}.sub.m correspond to the imaginary parts, respectively. It is therefore sensible that, as equations (31) through (35) are evaluated iteratively, the obtained index estimates {{circumflex over (q)}.sub.1, {circumflex over (q)}.sub.2, . . . , {circumflex over (q)}.sub.m} be split and collected accordingly into the subsequences

[00053] q ^ m R = ? { q m | mod ( q ^ m , 2 ) = 1 , ? m } and ( 35 ) q ^ m I = ? { q m | mod ( q ^ m , 2 ) = 0 , ? m } ,

where mod(x, 2) denotes the modulo-2 operation onto x.

[0146] If there are no errors during the detection process, after exactly m=2P runs, the sequences {{circumflex over (q)}.sub.m.sup.R, {circumflex over (q)}.sub.m.sup.I} can be perfectly mapped to {k.sup.R, k.sup.I}, in particular via

[00054] k ^ R = 1 2 ( q ^ m R + 1 ) and k ^ I = 1 2 q ^ m I , ( 36 )

such that procedure comes to a stop.

[0147] More generally, however, errors may occur, such that either {circumflex over (q)}.sub.m.sup.R, or {circumflex over (q)}.sub.m.sup.I, or both, contain incorrect indices even with cardinality P. In such cases, the procedure continues until both subsequences contains the first P-tuple of indices included in the dispersion matrix index vector set custom-character, at which point a modification of the update equations is required, which can be described as follows.

[0148] Let custom-character(q) denote the projection of a sequence q onto the set custom-character, such that either a sequence k?custom-character or the empty set ? is returned by the projection, depending on whether or not q contains within it a sequence from custom-character. If multiple valid k?custom-character exist in the combination of elements in q, the viable elements with lower indices in q (not of the element values themselves) take priority, such that the notion of greedy selection is coherent. Then, equation (34) can be expanded into

[00055] u ^ m + 1 ( 1 ) = { [ I 2 Q - .Math. q ? odd diag ( e q ) ] u ^ m ( ? * ) upon confirmation of k ^ R from q ^ m R , or [ I 2 Q - .Math. q ? even diag ( e q ) ] u ^ m ( ? * ) upon confirmation of k ^ I from q ^ m I , or [ I 2 Q - diag ( e q ^ m ) ] u ^ m ( ? * ) otherwise . ( 37 )

[0149] In plain words, equation (37) establishes that after the m-th run of the BH-ISTA detector, the initial state of the estimate vector ?.sub.m+1.sup.(1) for the next run is either: [0150] a) updated by removing the latest estimate symbol, when neither of {circumflex over (q)}.sub.m.sup.R and {circumflex over (q)}.sub.m.sup.I can be projected to custom-character, which happens either when the number of indices acquired are insufficient (less than P) to decide on valid estimates of k.sup.R or k.sup.I, or when the number of indices are sufficient (P or larger) but none contains valid combinations of indices to any k?custom-character; or [0151] b) updated by nulling all odd entries of q?{1, 3, . . . , 2Q?3, 2Q?1}, when a hard decision of {circumflex over (k)}.sup.R is confirmed from the projection of {circumflex over (q)}.sup.R onto custom-character, which will only happen once throughout the demodulation procedure; or c) updated by nulling all even entries q?{2, 4, . . . , 2Q?2, 2Q}, when a hard-decision of {circumflex over (k)}.sub.m.sup.I is confirmed from the projection of {circumflex over (q)}.sub.m.sup.I onto custom-character, which also can happen only once throughout the demodulation procedure; or [0152] c) updated by nulling all even entries q?{2, 4, . . . , 2Q?2, 2Q}, when a hard-decision of {circumflex over (k)}.sub.m.sup.I is confirmed from the projection of {circumflex over (q)}.sub.m.sup.I onto custom-character, which also can happen only once.

[0153] Obviously, the only other alternative to those above is when both {circumflex over (k)}.sup.R and {circumflex over (k)}.sup.I have been acquired, and consequently also the entire set of symbol estimates {?.sub.1.sup.R, ?.sub.1.sup.I, . . . , ?.sub.P.sup.R, ?.sub.p.sup.I} have been obtained, in which case the procedure is terminated.

[0154] Similarly to the above, the updates of y.sub.m and G.sub.m must also be revised so as to account for the effect of hard-decisions onto {circumflex over (k)}.sup.R and {circumflex over (k)}.sup.I, so as to cancel the effect of hard-decided indices and symbols, and to nullify the channel corresponding to confirmed indices, yielding respectively

[00056] y m + 1 = { y - G .Math. .Math. q ? [ 2 k ^ R - 1 , q ^ m I ] e q s ^ q upon confirmation of k ^ R from q ^ m R , or y - G .Math. .Math. q ? [ q ^ m R , 2 k ^ q I ] e q s ^ q upon confirmation of k ^ I from q ^ m I , or y m - G m .Math. e q ^ m s ^ q ^ m otherwise , k ^ R from q ^ m R , or ( 38 ) G m + 1 = { G m [ I 2 Q - .Math. q ? odd diag ( e q ) ] upon confirmation of k ^ R from q ^ m R , or G m [ I 2 Q - .Math. q ? even diag ( e q ) ] upon confirmation of k ^ I from q ^ m I , or G m [ I 2 Q - diag ( e q ^ m ) ] otherwise . ( 39 )

[0155] FIG. 8 is the Schematic diagram depicting the structure of the proposed GB-ISTA receiver for QSM demodulation

[0156] The procedure described by equations (31) through (33) and (35) through (39) amount to a greedyi.e., symbol-by-symbol and index set-by-index setmodification of the GB-ISTA detector introduced earlier, for which it is dubbed as the greedy boxed iterative shrinkage thresholding algorithm for QSM demodulation.

[0157] Notice that at the end of the process, estimates {circumflex over (k)}.sup.R and {circumflex over (k)}.sup.I of the selected dispersion matrix index vectors, as well as hard-decision estimates ?=[?.sub.1.sup.R, ?.sub.1.sup.I, . . . , ?.sub.P.sup.R, ?.sub.P.sup.I] of the modulated symbols are obtained, from which the corresponding encoded bits b=[b.sup.R, b.sup.I, b.sup.S] can be retrieved at a fraction of the complexity of sphere detection or exhaustive maximum likelihood searches. A diagram illustrating the proposed GB-ISTA QSM receiver is offered in FIG. 8 and a summarized in the form of pseudo-code in method 3. FIG. 8 is the schematic diagram depicting the structure of the proposed GB-ISTA receiver for QSM demodulation

TABLE-US-00004 Method 3 Greedy Boxed-(Hard) ISTA Receiver for QSM Schemes Global Quantities: Real-valued projected symbol constellation custom-character .sub.R, set of index vectors custom-character and threshold factor ?; Inputs: Received signal y and effective channel matrix G. Outputs: Estimated index and symbol vectors {circumflex over (k)}.sup.R, {circumflex over (k)}.sup.l and ?. 1: Set m = 1 and ? = maxeig(G.sup.T G); 2: Initialize y.sub.m = y, G.sub.m = G and ?.sub.m.sup.(1) = 0.sub.2Q; [00057] 3: while 𝒫 𝒦 ( 1 2 [ q ^ m R + 1 ] ) = ? or 𝒫 𝒦 ( 1 2 q ^ m I ) = ? do 4: Iterate equation (31) until convergence obtaining ?.sub.m.sup.(?*) 5: Obtain symbol soft estimate {tilde over (s)}{dot over (.sub.q)}.sub.m and index hard estimate {circumflex over (q)}.sub.m, via equation (32); 6: Obtain hard symbol estimate ?{dot over (.sub.q)}.sub.m via equation (33); 7: Insert index estimate {circumflex over (q)}.sub.m into its subsequence {circumflex over (q)}.sub.m.sup.R or {circumflex over (q)}.sub.m.sup.I, as per equation (35); 8: Construct ?.sub.m+1.sup.(1), y.sub.m+1 and G.sub.m+1 via equations (37), (38) and (39); 9: Increment m by 1; 10: end while [00058] 11: Output the estimate index vector as k ^ R ? 𝒫 𝒦 ( 1 2 [ q ^ m R + 1 ] ) and k ^ I ? 𝒫 𝒦 ( 1 2 q ^ m I ) , respectively , and the estimate symbol vector s as the intercalation of {?.sub.2k.sub.R.sub.-1} and {?.sub.2k.sub.I}.

V. Complexity and Performance Analysis

[0158] In this section we analyze the performance of the proposed OS-QSM via computer simulations. Given that our focus is on the scalability of the system, all simulation results to be shown are for relatively large number of transmit antennas (i.e., n.sub.T?6) and for increasing number of transmission slots (i.e., T?2), with the number of digitally-modulated transmit symbols P and the cardinality of corresponding constellation M adjusted on a case-by-case basis in order to highlight the main finding of each simulated experiment. To the best of our knowledge, simulation results on QSM schemes with such parameters have not appeared so far in the literature, due to the prohibitive computational complexity of existing receivers.

A. Complexity: GB-ISTA Versus ML and SCMB-SD Receivers

[0159] In light of the latter remark, let us start by assessing the decoding complexity of scaled QSM systems, in particular by deriving the complexity orders of the conventional ML and SCMB-SD approaches, and of the proposed GB-ISTA algorithm described in Section IV.

[0160] For any given n.sub.T, T and P, the brute-force ML decoder requires a search among all possible

[00059] .Math. ( Tn T P ) .Math. 2 ?

antenna activation patterns, independently selected according to {k.sup.R, k.sup.I}?custom-character to transmit the real and imaginary parts of the P digitally modulated symbols in s?custom-character.sup.P, as well as another search, for each possible activation pattern, of all possible P-tuples of symbols selected from the constellation custom-character, of cardinality M.

[0161] Assuming, idealistically and for simplicity, that each search consumes a single floating point operation (flop), the ML search process alone yields a complexity order lower-bounded by

[00060] ( 4 .Math. log 2 ( Tn T P ) .Math. ? M P ) ,

in order to detect

[00061] 2 .Math. .Math. log 2 ( Tn T P ) .Math. + P . log 2 M

bits, which even for moderately small P and M quickly become unfeasible. For example, a search over 16.777.216 combinations is required to detect the 24 bits of each transmit signal in a relatively small system with n.sub.T=6, T=3, P=3 and M=4. Just doubling the number of transmit antennas to n.sub.T=12, with other parameters unchanged, the complexity of the ML search space already surges to 10.sup.9 combinations, for a mild increase to 30 bits per transmission, while keeping n.sub.T=6 and doubling the number of transmit symbols to P=6 requires a search over more than 10.sup.12 combinations in order to detect only 40 bits. Taking the most significant operations required to perform each ML search into account, the order of complexity of the ML receiver to decode each bit of QSM schemes becomes with the lower bound obtained by keeping only the higher-order terms and neglecting coefficients. [0162] construction of ?.sub.H?.sub.A and ?.sub.H.Math.?.sub.B as in equation (23)

[00062] ? ( 12 T 3 n T n R ? + n R ( 2 P + 1 ) - 1 ) .Math. 4 .Math. log 2 ( Tn T P ) .Math. M P ) > ? ( n R .Math. P .Math. T P + 1 .Math. M P .Math. n T P - 1 ) , ( 40 )

[0163] The practical unfeasibility of ML-based detection of QSM systems is clearly highlighted by equation (40), as it exposes the fact that the number of transmit symbols P is a complexity order exponent of all theoretically scalable quantities n.sub.T, T and M. Next, let us show that this challenge cannot be satisfactorily mitigated by the SD approach. To that end, consider again idealistically and for simplicity, that SD can reduce the search radius to a single symbol, such that the factor M.sup.P in equation (40) can be neglected. In other words, we find that the order of complexity associated to SD based QSM receivers can, at best, be reduced to

[00063] ? ( n R .Math. P .Math. T P + 1 .Math. n T P - 1 ) ( 41 )

[0164] From the latter it can be concluded that, in the context of scalable QSM schemes, the only advantage of SD is to enable scaling of the digital constellation cardinality M, which not only impacts negatively on the corresponding BER, but also is not the most significant factor in increasing the SE of the system, since the total number of bits conveyed by a QSM scheme is

[00064] B = 2 .Math. .Math. log 2 ( Tn T P ) .Math. + P .Math. log 2 M ,

such that even for mildly large n.sub.T, T and P we have

[00065] 2 .Math. .Math. log 2 ( Tn T P ) .Math. ? P .Math. log 2 M .

In summary, it can be concluded that sphere detection is not particularly useful as an enabler of spectrally-efficient scalable QSM, from a receiver perspective.

[0165] Finally, let us address the computation complexity of the proposed GB-ISTA For starters, observe from equations (31) through (36) that the GB-ISTA receiver obtains the spatially encoded bits b.sup.R and b.sup.I not from a search, but directly from the sparse-recovery process, i.e., the value and locations of non-zero elements of ?. As a consequence of removing such combinatorial search, the impact of the scalable parameters n.sub.T, T and P onto GB-ISTA is significantly smaller, as demonstrated by the following complexity analysis of the steps of method 3. [0166] 1) Method 3 takes as input the effective matrix G given in equation (27), whose construction requires evaluating the product of the sparse block-diagonal matrix ?.sub.H?custom-character.sup.2Tn.sup.R.sup.?2Tn.sup.T, which contains 2n.sub.T non-zero entries per row, against the matrix ?.sub.D?custom-character.sup.2Tn.sup.T.sup.?2Tn.sup.T, which has T non-zero entries per column, yielding a cost of 2T (2Tn.sub.R)(2Tn.sub.T)=8T.sup.3n.sub.Tn.sub.R flops since typically we have (in scaled QSM schemes) T<<2n.sub.T. [0167] 2) Next the GB-ISTA receiver performs multiple runs of evaluating equation (31), the first step to which is computing

[00066] u ^ ( ? ) + 1 ? G T ( y - G u ^ ( ? ) ) .

The cost of computing ? as per line 1 of method 3 are ignored, under the argument that for large systems, the largest eigenvalues G.sup.TG converges almost sure to a constant dependent only on the structure and the energy of G.

[0168] That operation would cost (2Tn.sub.T)(2Tn.sub.R)+(2Tn.sub.R)+(2Tn.sub.R)(2Tn.sub.T)+(2Tn.sub.R)=8T.sup.2n.sub.Tn.sub.R+4Tn.sub.R flops to accomplish, but since the sparsity of ?.sup.(?) quickly reduces to the actual value 2P, as shown in FIG. 7(a) the complexity of that step is more precisely estimated at 8PTn.sub.R+4Tn.sub.R=4Tn.sub.R(2P+1) flops Then, including 2Tn.sub.T flops required for the Boxed-Hard thresholding function ?, and remembering ?* iterations are necessary, the total cost associated with each evaluation run of equation (31) can be estimated at ?*(4Tn.sub.R(2P+1)+2Tn.sub.T) flops [0169] 3) After convergence of equation (31), the receiver obtains the sparse estimate vector ?.sub.m.sup.(?*), from which the soft symbol estimate {tilde over (s)}.sub.{circumflex over (q)}.sub.m is extracted at negligible cost via maximum value search 44, along with the estimate index {circumflex over (q)}.sub.m given by the position of ?.sub.{circumflex over (q)}.sub.m, as expressed in equation (32). With these quantities at hand, up to ?{square root over (M)} flops are consumed to obtain the hard symbol estimate ?.sub.{circumflex over (q)}.sub.m as per equation (33). [0170] 4) Considering that the cost of the element, interference and column removals expressed by equations (37) through (39) are negligible, the next significant cost of the receiver is the validation of acquired indices. In particular, after at least P runs, when a sufficient number of position indices {circumflex over (q)}.sub.m have been detected to construct any or both of the index subsequences {circumflex over (q)}.sub.m.sup.R, and/or {circumflex over (q)}.sub.m.sup.I, and map them to corresponding estimate index vectors {circumflex over (k)}.sup.R and/or {circumflex over (k)}.sup.I as per equation (36), said estimates need be validated against the optimal set of index vectors custom-character. Assuming the cost of such operation is of order custom-character(1), this step contributes to the total complexity of the GB-ISTA detector with an additional cost of P flops [0171] 5) Lastly, as described in line 11 of Algorithm 3, the GB-ISTA outputs both the pair of estimate index vectors {circumflex over (k)}.sup.R and {circumflex over (k)}.sup.I, as well as the digitally modulated symbol vector estimate ??custom-character.sup.P which requires the intercalation of the real and imaginary parts, at estimated cost of P flops

[0172] From the above, the total complexity order of the GB-ISTA can be estimated at

[00067] ? ( 8 T 3 n T n R ? construction of G + 2 P ? number of runs ( ? * ( 4 Tn R ( 2 P + 1 ) + 2 Tn T ) ? evaluation of eq . ( 31 ) + M + 1 2 ? evaluation of eq . ( 35 ) and validation of q ^ m I or q ^ m R ) + P ? intercalation of { s ^ 2 k ^ n - 1 } and { s ^ 2 k t } into s ^ ) ( 42 )

[0173] The per-bit complexity orders of the ML and the proposed GB-ISTA decoders, obtained by dividing the expressions in equations (40) and (42) by the number of bits detected per transmission

[00068] B = 2 .Math. log 2 ( Tn T P ) .Math. + P log 2 M ,

are compared in FIG. 9 for various settings in terms of the scalable parameters n.sub.T, T and P.

[0174] FIG. 9 shows the Effect of scalable parameters on the complexity of QSM receivers.

[0175] FIG. 9 (a) shows the Fixed P, various T, as a function of n.sub.T

[0176] FIG. 9 (b) shows the Fixed T, various P, as a function of n.sub.T

[0177] FIG. 9 (c) shows the Fixed n.sub.T, various T, as a function of P.

B. BER Performance of the Proposed OS-QSM Scheme

[0178] Empowered by the significant reduction in complexity obtained by GB-ISTA over ML detection, as shown above, we proceed to assess the BER performance of the proposed OS-QSM scheme, decoded via the GB-ISTA. In general, our simulated experiments aim to further demonstrate that the proposed OS-QSM are feasible with relatively large numbers of transmit antennas, and can achieve very low BER at very low E.sub.b/N.sub.0 with rather high spectral efficiencies, whilst using relatively few spatial-temporal resources per transmission.

[0179] FIG. 10: is the Effect of scalability on BER performance of GB-ISTA-detected OS-QSM schemes with fixed SE.

[0180] To that end, our first set of results, shown in FIG. 10, compares the BER performances of the proposed method for various values of n.sub.T, T and P, with the ratio P/T kept constant and M adjusted such that all curves corresponds to systems with the same spectral efficiency. We remark that the curves for T=2 can be considered as a reference corresponding to the SotA EDA-QSM scheme of [22], [23], although the results shown actually incorporate improvements due to the enhancements described in Subsection III-B, namely, the utilization of: a) optimal Golden codes [28], as opposed to the block-by-block sphere-decodable [FDFR]STBC of [24; and b) the optimal construction of index vectors set custom-character, given in method 1.

[0181] Two important facts can be learned from the results of FIG. 10. The first is that significant improvement in BER achieved by scaling occurs in spite of the fact that the number of receive antennas is rather large (n.sub.R=12). This indicates that the gains are not only due to an increase in diversity (since receive diversity is already large), but also due to the coding gain reaped from the utilization of optimal FDFR] STBCs employed in the OS-QSM design. And the second is that results shown are actually simulated, down to rather low BERs using a usual computer (i.e. no particularly powerful machine was required), and for settings which are virtually impossible to simulate with ML or SD based receivers. The latter point is strengthened by the results of the right side of FIG. 10, which includes a curve for a system with n.sub.T=12, which serves to further highlight the true feasibility of the proposed GB-ISTA receiver.

[0182] One criticism that could be raised about the results of FIG. 10 is, however, that values of P adopted thereby are not the optimal ones for the corresponding T and n.sub.T, as per equation 14. We once again clarify that the parameterization used in FIG. 10 is such that all systems have the same SE, so as to allow their direct comparison under equivalent conditions, which is, incidentally also the reason why all curves are plotted against E.sub.b/N.sub.0 as opposed to SNR.

[0183] FIG. 11 illustrates the Effect of scaling P on BER performance of GB-ISTA-detected OS-QSM schemes.

[0184] In any case, in order to dispel any doubts about the ability of the proposed OS-QSM design and of the corresponding GB-ISTA receiver to actually achieve feasible and optimized spectral efficient combined with low BERs, we shown in FIG. 11 additional results obtained by varying P up to the optimal value given by equation (14). We remark that, due to the floor operation in the expression of the achievable SE given by equation 8 values of P adjacent to that given by equationi.e., P*are also optimum, as they result in exactly the same SE For instance, with n.sub.T=6, T=2 and M=4, as is the case of FIG. 10, equation (14) yields P*=8, but the values P={7, 8, 9} all result in ?=16 in equation 8. Similarly, P={10, 11, 12, 13} all yield the largest SE of ?=17 with n.sub.T=6, T=3 and M=4 as is the case of FIG. 11.

[0185] With these remarks made, turning to the results obtained in FIG. 11, it can be seen that only a very mild degradation of BER is observed when up-scaling P, which is in fact smaller in for larger T as shown in FIG. 11, which is a small and fair price to pay for almost doubling spectral efficiency of the system. We clarify that the slight BER degradation observed when up-scaling the ratio P/T towards SE optimality is a consequent of the corresponding reduction of sparsity in the vectorized received signal, which tends to be less critical in systems with higher diversity and coding gains, as a result of up-scaling n.sub.T, T or both. That trend is in fact observable in FIG. 11 as the gap between BER curves narrows as T=2 is increased to T=3.

[0186] FIG. 12 is the proposed computer-implemented detection method represented a a flowchart.

[0187] With the highlight of introducing four approaches within this application.

[0188] The notion of applying sparse detection (compressed sensing) process steps to decode SM signals.

(Marked B) in the Flowchart FIG. 12)

[0189] From the above idea of applying sparse detection, a modification to the iterative shrinkage-thresholding process steps (ISTA) [2] via boxing (range limiting) and hard-thresholding.

(Marked C) in the Flowchart FIG. 12)

[0190] Using the boxed-hard ISTA from above, a greedy selection of the positions of the antennas index and the symbol estimates, and their independent decoding of the corresponding antenna modulated and symbol modulated bits.

(Marked D) in the Flowchart FIG. 12)

[0191] A process working parallel to the greedy detections, to ensure valid estimates of the index vectors (from the given finite set of index vectors) are produced at the output of the algorithm, and to apply interference cancellation with the confirmed values. [0192] While keeping track of which indices have been retrieved from the greedy selections, before every iteration check whether from the currently decoded indices, a final confirmation can be made. [0193] If it cannot be made, remove the interference by the previous greedy selection and make the next iteration.

[0194] The proposed decoder possesses significantly low complexity compared to the existing ML and tree-search algorithms. The decoder possesses a quadratic complexity on the number of transmit antennas.

[0195] Furthermore, the proposed decoder also does not require design restrictions such as block-diagonality or orthogonality in the transmission scheme, only the sparsity which is inherent with spatial modulation schemes, therefore providing larger freedom in transmitter development as well. In other words, the proposed decoder is capable of coping with many different encoding structures (flexibility).

[0196] The decoder can be used in any MIMO system where the number of antennas is expected to be large, such that ML approaches are infeasible. The scheme can be used to increase efficiency in cellular networks and V2X communications (eMBB).

[0197] FIG. 13 shows the Comparison of ISTA thresholding and BH-ISTA thresholding functions ?(s; ?) as per [29], and ?(s; ?), as per equation (29).

[0198] In this application it is a new transmitter and receiver designs for QSM schemes, focusing on their scalability in terms of the number of transmit antennas n.sub.T, number of transmit instances T and number of encoded M-ary symbols P, as well as on their performance optimization in terms of SE diversity and coding gains. The contributions are motivated by the demonstrated fact that, in order for SE optimality to be achieved, QSM schemes must scale n.sub.T, T and P, which is not possible with SotA methods. At the transmitter, the newly proposed OS-QSM scheme differs from SotA alternatives in that its dispersion matrices are designed based on the FDFR] STBCs, and in that dispersion matrix index selection is performed via a new greedy algorithm given, which ensures that all spatial-temporal resources of the transmitter are utilized evenly over multiple transmissions. In turn, at the receiver, the proposed art contributes with a new ISTA-based receiver, which thanks to its reliance on the sparse structure of QSM signaling, eliminates the combinatorial nature of existing ML or SD based approaches, further enabling the scaling of the system from a feasibility perspective. In fact, a complexity analysis is offered, which shows that the proposed GB-ISTA receiver enjoys a complexity order that is cubic on T, quadratic on P, and only linear on n.sub.T, in contrast to the ML and SD detectors which have geometric complexities on T and n.sub.T, with P as exponent, rendering them unfeasible in the scaled scenario. Simulation results for set-ups of scales never before shown in related literature, corroborate both the high performance and feasibility of the proposed OS-QSM scheme and GB-ISTA receiver.