THE PHYSICAL LAYER
2.5 DIGITAL MODULATION AND MULTIPLEXING
2.5.5 Code Division Multiplexing
3
Round-robin TDM multiplexer
3 2 3 1
2 1
Guard time 2
Figure 2-27. Time Division Multiplexing (TDM).
TDM is used widely as part of the telephone and cellular networks. To avoid one point of confusion, let us be clear that it is quite different from the alternative STDM (Statistical Time Division Multiplexing). The prefix ‘‘statistical’’ is added to indicate that the individual streams contribute to the multiplexed stream not on a fixed schedule, but according to the statistics of their demand. STDM is packet switching by another name.
2.5.5 Code Division Multiplexing
There is a third kind of multiplexing that works in a completely different way than FDM and TDM. CDM (Code Division Multiplexing) is a form of spread spectrum communication in which a narrowband signal is spread out over a wider frequency band. This can make it more tolerant of interference, as well as allowing multiple signals from different users to share the same frequency band.
Because code division multiplexing is mostly used for the latter purpose it is com-monly called CDMA (Code Division Multiple Access).
CDMA allows each station to transmit over the entire frequency spectrum all the time. Multiple simultaneous transmissions are separated using coding theory.
Before getting into the algorithm, let us consider an analogy: an airport lounge with many pairs of people conversing. TDM is comparable to pairs of people in the room taking turns speaking. FDM is comparable to the pairs of people speak-ing at different pitches, some high-pitched and some low-pitched such that each pair can hold its own conversation at the same time as but independently of the others. CDMA is comparable to each pair of people talking at once, but in a dif-ferent language. The French-speaking couple just hones in on the French, reject-ing everythreject-ing that is not French as noise. Thus, the key to CDMA is to be able to extract the desired signal while rejecting everything else as random noise. A somewhat simplified description of CDMA follows.
In CDMA, each bit time is subdivided into m short intervals called chips.
Typically, there are 64 or 128 chips per bit, but in the example given here we will use 8 chips/bit for simplicity. Each station is assigned a unique m-bit code called a chip sequence. For pedagogical purposes, it is convenient to use a bipolar nota-tion to write these codes as sequences of −1 and +1. We will show chip se-quences in parentheses.
To transmit a 1 bit, a station sends its chip sequence. To transmit a 0 bit, it sends the negation of its chip sequence. No other patterns are permitted. Thus, for m = 8, if station A is assigned the chip sequence (−1 −1 −1 +1 +1 −1 +1 +1), it can send a 1 bit by transmiting the chip sequence and a 0 by transmitting (+1 +1 +1 −1 −1 +1 −1 −1). It is really signals with these voltage levels that are sent, but it is sufficient for us to think in terms of the sequences.
Increasing the amount of information to be sent from b bits/sec to mb chips/sec for each station means that the bandwidth needed for CDMA is greater by a factor of m than the bandwidth needed for a station not using CDMA (assum-ing no changes in the modulation or encod(assum-ing techniques). If we have a 1-MHz band available for 100 stations, with FDM each one would have 10 kHz and could send at 10 kbps (assuming 1 bit per Hz). With CDMA, each station uses the full 1 MHz, so the chip rate is 100 chips per bit to spread the station’s bit rate of 10 kbps across the channel.
In Fig. 2-28(a) and (b) we show the chip sequences assigned to four example stations and the signals that they represent. Each station has its own unique chip sequence. Let us use the symbol S to indicate the m-chip vector for station S, and S for its negation. All chip sequences are pairwise orthogonal, by which we mean that the normalized inner product of any two distinct chip sequences, S and T (written as S T), is 0. It is known how to generate such orthogonal chip se-quences using a method known as Walsh codes. In mathematical terms, ortho-gonality of the chip sequences can be expressed as follows:
S T≡ m 1
i
Σ
m=1SiTi= 0 (2-5)SEC. 2.5 DIGITAL MODULATION AND MULTIPLEXING 137 In plain English, as many pairs are the same as are different. This orthogonality property will prove crucial later. Note that if S T= 0, then S T is also 0. The normalized inner product of any chip sequence with itself is 1:
S S= m
1
i
Σ
=1mSiSi = m1 iΣ
=1mSi2= m1 iΣ
m=1(±1)2 = 1This follows because each of the m terms in the inner product is 1, so the sum is m. Also note that S S= −1.
Figure 2-28. (a) Chip sequences for four stations. (b) Signals the sequences represent (c) Six examples of transmissions. (d) Recovery of station C’s signal.
During each bit time, a station can transmit a 1 (by sending its chip sequence), it can transmit a 0 (by sending the negative of its chip sequence), or it can be silent and transmit nothing. We assume for now that all stations are synchronized in time, so all chip sequences begin at the same instant. When two or more sta-tions transmit simultaneously, their bipolar sequences add linearly. For example, if in one chip period three stations output +1 and one station outputs −1, +2 will be received. One can think of this as signals that add as voltages superimposed on the channel: three stations output +1 V and one station outputs−1 V, so that 2 V is received. For instance, in Fig. 2-28(c) we see six examples of one or more sta-tions transmitting 1 bit at the same time. In the first example, C transmits a 1 bit, so we just get C’s chip sequence. In the second example, both B and C transmit 1 bits, so we get the sum of their bipolar chip sequences, namely:
(−1 −1 +1 −1 +1 +1 +1 −1) + (−1 +1 −1 +1 +1 +1 −1 −1) = (−2 0 0 0 +2 +2 0 −2) To recover the bit stream of an individual station, the receiver must know that station’s chip sequence in advance. It does the recovery by computing the nor-malized inner product of the received chip sequence and the chip sequence of the station whose bit stream it is trying to recover. If the received chip sequence is S and the receiver is trying to listen to a station whose chip sequence is C, it just computes the normalized inner product, S C.
To see why this works, just imagine that two stations, A and C, both transmit a 1 bit at the same time that B transmits a 0 bit, as is the case in the third example.
The receiver sees the sum, S= A + B + C, and computes
S C= (A + B + C) C = A C + B C + C C = 0 + 0 + 1 = 1
The first two terms vanish because all pairs of chip sequences have been carefully chosen to be orthogonal, as shown in Eq. (2-5). Now it should be clear why this property must be imposed on the chip sequences.
To make the decoding process more concrete, we show six examples in Fig. 2-28(d). Suppose that the receiver is interested in extracting the bit sent by station C from each of the six signals S1 through S6. It calculates the bit by sum-ming the pairwise products of the received S and the C vector of Fig. 2-28(a) and then taking 1/8 of the result (since m = 8 here). The examples include cases where C is silent, sends a 1 bit, and sends a 0 bit, individually and in combination with other transmissions. As shown, the correct bit is decoded each time. It is just like speaking French.
In principle, given enough computing capacity, the receiver can listen to all the senders at once by running the decoding algorithm for each of them in paral-lel. In real life, suffice it to say that this is easier said than done, and it is useful to know which senders might be transmitting.
In the ideal, noiseless CDMA system we have studied here, the number of sta-tions that send concurrently can be made arbitrarily large by using longer chip se-quences. For 2n stations, Walsh codes can provide 2n orthogonal chip sequences of length 2n. However, one significant limitation is that we have assumed that all the chips are synchronized in time at the receiver. This synchronization is not even approximately true in some applications, such as cellular networks (in which CDMA has been widely deployed starting in the 1990s). It leads to different de-signs. We will return to this topic later in the chapter and describe how asynchro-nous CDMA differs from synchroasynchro-nous CDMA.
As well as cellular networks, CDMA is used by satellites and cable networks.
We have glossed over many complicating factors in this brief introduction. En-gineers who want to gain a deep understanding of CDMA should read Viterbi (1995) and Lee and Miller (1998). These references require quite a bit of back-ground in communication engineering, however.