A method for the design and implementation of maximum-likelihood (ML) architecture for MIMO systems with M receive antennas and N transmit antennas and with epoch T>1, comprising the steps:
- constructing the new space-time TM×TN transmission matrix H0 as the matrix-diagonal matrix generated by the tensor product of the T×T identity diagonal matrix with the M×N transmission matrix H to generate the TM×TN matrix H0 whose matrix elements on the diagonal are the H and zeros elsewhere and wherein
- symbol “T” is the number of time epochs which are the number of repeated transmissions,
- symbol “TM×TN” reads “TM rows by TN columns”,
- transmission matrix H has transmission elements hi,j which measure the transmitter, path, and receiver transmission loss from transmitter j in column j=1, . . . , M to receiver i in row i=1, . . . , M,
- transmission elements hi,j are complex measurements of the transmission loss from j to i, and
- a matrix-diagonal matrix has matrices along the diagonal and zeros elsewhere;
- constructing the new space-time TN×N code matrix C0 as the matrix product C0=A•B of a TN×TN matrix A with a TN×N matrix B and wherein
- symbol “•” is a matrix or vector product,
- matrix A is the TN×TN matrix-diagonal matrix whose diagonal matrix elements are the T N×N diagonal matrices A1, . . . , AT,
- matrices An for n=1, . . . , T are orthogonal matrices satisfying An′•An=NIN wherein An′ is the conjugate transpose of An and IN is the N×N identity diagonal matrix,
- matrix B=[B1;
- . . . ;
- BN] is the TN×N matrix whose elements are the N×N orthogonal matrices B1, . . . , BT each with elements including L and using the Matlab construction operator “;” for stacking matrices, vectors, or elements in a column format,
- matrices Bn for n=1, . . . , T are orthogonal matrices with the property Bn′•Bn=NIN,
- matrix element “L” is the new complex-conjugate operator defined by the operation “L(w)=w*=complex-conjugate of the element w” and L(L(w))=w,
- space-time TN×N code matrix C0 satisfies the orthogonality equation C0′•C0=NIN for the column vectors of C0 wherein “(o)′” is the complex-conjugate transpose of (o),
- current space-time TN×1 codes C combine the space-time codes and the transmitted data symbols,
- current space-time codes C cannot be factored into the product of a code matrix with the transmitted data symbol vector except for a few codes,
- space-time code matrix C0 architecture enables all known space-time codes C to be represented by the C0•X architecture wherein X is the N×1 transmitted signal column vector and which means there exists a C0 that satisfies the identity C=C0•X for all existing space-time codes C and for all future space-time codes C, and
- factorization of the code matrix and the transmitted data symbol vector is a requirement for a ML solution;
- using an alternate construction of the new space-time TN×N code matrix C0 as the matrix C0=[A1•B1;
- . . . ;
- AN•BN] whose elements are the N×N matrix products An•Bn for n=1 , , , , , T wherein the matrices An, Bn and the operator “;” are defined in the previous;
- constructing the new linear MIMO matrix transmission equation for the TM×1 output received data symbol vector Y
- Y=H0•C0•X+No
- which factors out the input transmitted N×1 data symbol vector X and replaces the current MIMO matrix equation Y=HC+No wherein
- current MIMO practice does not factor the H and C into a matrix product since it is difficult to separate the elements of H and C and which means HC is the current MIMO TM×1 encoded data vector input whose elements are the space-time encoded data symbol elements multiplied by the appropriate transmission elements,
- receive TM×1 data symbol vector Y=[y(1,1);
- . . . ;
- y(M,1);
- y(M,2);
- . . . ;
- y(M,T)] elements are the detected data symbol values y(m,i) indexed on the receive antenna m=1, . . . , M and the time epoch i−1, . . . , T for the MIMO signal set being addressed,
- transmitted N×1 data symbol column vector X=[X1;
- . . . ;
- XN] elements are the set of N data signals Xn being transmitted over T time epochs, and
- No is the TM×1 receive noise vector;
- implementing a new ML solution to Y=H0•C0•X+No to derive the estimate {circumflex over (X)} of X by solving the ML equation when L is absent
- {circumflex over (X)}=[(H0C0)′Q−1(H0C0)]−1(H0C0)′Q−1Y
- wherein Q=E{N0N0′} is the noise covariance, E{o} is the mathematical expectation of “o”, assuming the determinant det(H0′•H0)≠0 and det(C0′•C0)≠0, and when the TM×1 receive noise vector No is zero-mean additive white Gaussian noise (AWGN) with no cross-correlation this estimate reduces to
- {circumflex over (X)}=[(H0C0)′(H0C0)]−1(H0C0)′Y
- and for the applications where (H0C0) is a square matrix and assuming the determinant det(H0C0)≠0 reduces the solution to
- {circumflex over (X)}=(H0C0)−1Y;
- and
- implementing a new ML solution to Y=H0•C0•X+No to derive the estimate {circumflex over (X)} of X by solving the ML equation with L present
- {circumflex over (X)}=[H2−1•H1−H1*−1•H2*]−1•[H2−1−H1*−1•L]•Y
- wherein by definition
- H0•C0=H1+H2•L
- assuming the determinant det((H0•C0)′(H0•C0))≠0, the TM×1 receive noise vector No is AWGN with no cross-correlation, and the determinant det(H1′•H1)≠0 and det(H2′•H2)≠0.