This chapter is devoted to the definition and construction of
perfect Space-Time block codes. We will now assemble the three preceding
chapters, using the algebraic techniques presented in Chapter 4, to
build Space-Time block codes (STBC) satisfying the design criteria
explained in Chapters 2 and 3. We illustrate the code constructions for
small numbers of antennas, namely up to six antennas. These
constructions have been originally presented in [21, 44].
5.1 Definition of Perfect Space Time Codes
Let us start by recalling what are the targeted code features. The
two main design parameters for coherent Space Time codes are:
* Full diversity. The rank criterion tells for square STBCs that
full diversity is obtained if the determinant of the difference of two
distinct codewords is nonzero: d et([X.sub.i] - [X.sub.j]) [not equal
to] 0, [X.sub.i] z[not equal to] [X.sub.j][member of] C.
* Minimum determinant. The coding gain is given by the minimum
determinant min
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
In order to further improve the performance of Space Time codes, we
ask for two more properties, motivated in Chapters 2 and 3.
* Non-vanishing determinant. We say that a code has a non-vanishing
determinant if, prior to SNR normalization, there is a lower bound on
the minimum determinant that does not depend on the constellation size.
* Shaping. In order to optimize the energy efficiency of the codes,
a shaping constraint on the signal constellation is introduced. The
Q-QAM or Q-HEX to be sent are normalized according to the power at the
transmitter. However, since we use linear STBCs, what is transmitted on
each layer (see Definition 4.15) is a linear combination of information
symbols, which may change the energy of the signal. Each layer can be
written as Mv, where v is the vector containing the QAM or HEX
information symbols, while M is a matrix that encodes the symbols into
each layer. In order to get energy efficient codes, we ask the matrix M
to be unitary. We will refer to this type of constellation shaping as
cubic shaping, since a unitary matrix applied on a vector containing
discrete values can be interpreted as generating points in a lattice.
For example, if we use QAM symbols, we get the [Z.sup.n] (cubic)
lattice.
There is another property on which we do insist though it has not
been stated yet, since it follows from the shaping constraint. However,
let us make it explicit here.
* Uniform average energy transmitted per antenna. The ith antenna
of the system will transmit a signal [x.sub.ij] at time j. We ask that
on average, the energy of each codeword entry is constant, in order to
have a balanced repartition of the energy at the transmitter.
Having motivated the properties that an STBC should have to
maximize its performance, we are now able to give the definition of a
perfect Space-Time block code.
Definition 5.1 A square [n.sub.t] x [n.sub.t] STBC is called a
perfect code if and only if:
* It is a full rate linear code using [n.sup.2.sub.t] information
symbols either QAM or HEX.
* The minimum determinant of the infnite code is nonzero (so that
in particular the rank criterion is satisfed).
* The energy required to send the linear combination of the
information symbols on each layer is similar to the energy used for
sending the symbols themselves (we do not increase the transmitted
energy in encoding the information symbols).
* It induces uniform average transmitted energy per antenna in all
T time slots, i.e., all the coded symbols in the code matrix have the
same average energy.
In the rest of this chapter, we will give the construction of
perfect codes for 2, ... , 6 antennas.
Remark 5.1 In Chapter 4, we have introduced as many algebraic
techniques needed as possible, starting from no algebra background. This
allows to explain almost all that is required to build the SpaceTime
codes, apart the non-norm element [gamma], the element such that none of
its powers are a norm, needed to construct a division cyclic algebra.
The techniques involved are far beyond the scope of this tutorial. For
the sake of completeness, Subsection 5.2.1 gives one example of such
techniques, in the simplest case, when the algebra is of degree 2. For
more general dimensions, the interested reader may refer for example to
[44] if [gamma] is a root of unity, or more generally to [20, 36], and
it has been shown in [21] that dividing a non-norm element by its
conjugate still gives a non-norm element.
5.2 The Golden Code
The Golden code is a 2 x 2 perfect code. It has been found
independently in [7, 15]. Its name, Golden code, comes from its
algebraic construction [7], which involves the Golden number [1+[square
root of (50)]/2
The Golden code is built using the cyclic algebra
A = (L = Q(i, [square root of(5)])/Q (i), [sigma] (i)
with [sigma]: [square root(5)] [right of] [square root(5)] We have
that
[O.sub.L]={a + b [theta] | a,b [member of] Q(i)},
where [theta] = [1 + [square root(5)]/2. Before shaping, a codeword
from this algebra is of the form:
[a + b[theta] c + d [theta] i(c + d[sigma]-([theta])) a +
b[sigma]-(thata])] ,
with a, b, c, d [member of] Z |i|. By definition, the codebook
obtained is linear and full rate (since it contains the four information
symbols a, b, c, d). It is also fully diverse since i is not a norm (see
next subsection for a proof), and thus, .A is a cyclic division algebra.
5.2.1 The Element [gamma] = i is Not a Norm in (Q(i [square root of
(5)])
0We show here that the cyclic algebra .A defining the Golden code
is a division algebra [7]. The proof is given for sake of completeness,
but uses some tools that are beyond the scope of this work.
Proposition 5.1 Let K = (Q(i,,[square root of (5)]), then the
element [gamma] = i is not a relative norm of any [MATHEMATICAL
EXPRESSION NOT REPRODUCIBLE IN ASCII.]
Proof. Let [Q.sub.5] denote the feld of 5-adic numbers,
and[Z.sub.5] = {x [member of] [Q.sub.5]| [v.sub.5] (x) [greater than]
0} its valuation ring. The complex rationals Q(i) can be embedded in
[Q.sub.5] by
i[right arrow] 2+5[Z.sub.5].
Let x = a + [square root of (5)] [member of] K with a, b [member
of] Q(i), then we must show that
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
has no solution for a, b [member of] Q(i). We can lift this
equation in the 5-adic feld [Q.sub.5]
[a.sup.2] - 5[b.sup.2] = 2 + 5x a, b [member of] (Q(i), X [member
of] [Z.sub.5] (5.1) and show that it has no solution there. We take the
valuations of both sides of (5.1)
[v.sub.5] ([a.sup.2] - 5[b.sup.2]) = [v.sub.5](2 + 5x)
to show that a and b must be in [Z.sub.5]. In fact, since x [member
of] [Z.sub.5], [v.sub.5](2 + 5x) [greater than or equal to]
min{[v.sub.5](2),[v.sub.5](x) + 1} = 0, and we have equality as both
valuations are distinct. Now, [v.sub.5]([a.sup.2] - 5[b.sub.2]) =
min{[2v.sub.5](a), [2v.sub.5] (b) + I} must be 0, hence [v.sub.5] (a) =
0 which implies a [member of] [Z.sub.5] and thus b [member of]
[Z.sub.5].
We conclude by showing that
[a.sup.2] - 5[b.sup.2] = 2 + [x a, b, x [member of] [Z.sub.5]
has no solution. Reducing modulo 5[Z.sub.5] we End that 2 should be
a square in the finite feld GF(5), which is a contradiction. o
5.2.2 The Lattice Z[[i].sup.2]
Let us see now how to add the shaping property on the codebook
built on ,A. Equation (4.5) tells us that
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
We thus look for an element a such that [|[N.sub.L/K]
([alpha])|.sup.2] = 5. In order to End such an element, we look at the
factorization of 5 in [??]L:
5 = [(1 +i - i[theta]).sup.2][(1- i +i[theta]).sup.2]
We thus choose a = I + i - i9. Let us now check that we indeed get
the right lattice. Its generator matrix is given by
M = ([alpha] [alpha][theta] [sigma]([alpha])
[sigma]([alpha][theta])).
A direct computation shows that MM[dagger] = 5[I.sub.2]. Thus
1/[square root of (5)] M is a unitary matrix, yielding the shaping
property.
A codeword X belonging to the Golden code has thus, adding the
shaping property, the form:
[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII.]
where a, b, c, d are QAM symbols.
Recall that when a, b, c, d can take any value in Z[i], we say that
we have an infinite code [C.sub.[infinity]] This terminology recalls the
case where finite signal constellations are carved from infinite
lattices.
5.2.3 The Minimum Determinant
Let us now compute the minimum determinant of the infinite code.
Since [alpha][sigma]([alpha]) = 2 + i, we have
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
By definition of a, b, c, d, we have that the non-trivial minimum
of
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.] is 1, thus
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
Thus the minimum determinant of the infinite code is bounded away
from zero, as required.
Since an explicit computation of the determinant will not be
possible in higher dimension, we show now another way of computing the
minimum determinant. Since
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
we have that
[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII.]
Using Theorem 4.7, the determinant on the right-hand side is lower
bounded by 1. Thus
[MATHEMATICAL EXPRESSIONS NOT REPRODUCIBLE IN ASCII.]
since [alpha] has been chosen such that
[|[N.sub.L/K]([alpha])|.sup.2] = 5.
Note in the second row of the codeword X the factor i, which
guarantees uniform average transmitted energy since [|i|.sup.2] = 1.
COPYRIGHT 2007 Now Publishers,
Inc. Reproduced with permission of the copyright holder. Further reproduction or distribution is prohibited without permission.
Copyright 2007, Gale Group. All rights
reserved. Gale Group is a Thomson Corporation Company.
NOTE: All illustrations and photos have been removed from this article.