View
237
Download
0
Category
Preview:
Citation preview
1
ECS455: Chapter 4 Multiple Access
Asst. Prof. Dr. Prapun Suksompongprapun@siit.tu.ac.th
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Dr.Prapun Suksompongprapun.com/ecs455
2
ECS455: Chapter 4 Multiple Access
4.1 Duplexing: TDD and FDD
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Dr.Prapun Suksompongprapun.com/ecs455
Duplexing
3
Allow the subscriber to send “simultaneously” information to the base station while receiving information from the base station.
Talk and listen simultaneously.
Definitions:Forward channel or downlink (DL) is usedfor communication from the infrastructure to the users/stationsReverse channel or uplink (UL) is used forcommunication from users/stations back to the infrastructure.
Two techniques1. Frequency division duplexing (FDD)2. Time division duplexing (TDD)
[Rappaport, 2002, Ch 9]
Frequency Division Duplexing (FDD)
4
Provide two distinct bands of frequencies (simplex channels) for every user.
The forward band provides traffic from the base station to the mobile.
The reverse band provides traffic from the mobile to the base station.
Any duplex channel actually consists of two simplex channels (a forward and reverse).
Most commercial cellular systems are based on FDD.
FDD Examples
5
[Karim and Sarraf, 2002, Fig 6-1]
[Karim and Sarraf, 2002, Fig 5-1]
GSM
UMTS
Power of Sinc Function
6
G f T f
[dB]
G f T f
G f T f
Problems of FDD
7
Each transceiver simultaneously transmits and receives radio signals
The signals transmitted and received can vary by more than 100 dB. The signals in each direction need to occupy bands that are separated far apart (tens of MHz)
A device called a duplexer is required to filter out any interference between the two bands.
[Tse and Viswanath, 2005, Ch 4, p 121]
Time Division Duplexing (TDD)
8
The UL and DL data are transmitted on the same carrier frequency at different times. (Taking turns)
Use time instead of frequency to provide both forward and reverse links.Each duplex channel has both a forward time slot and a reverse time slot.
“Unpaired spectrum”
Time Division Duplexing (TDD)
9
If the time separation between the forward and reverse time slot is small, then the transmission and reception of data appears simultaneous to the users at both the subscriber unit and on the base station side.
Used in Bluetooth and Mobile WiMAX
LTE can be FDD or TDD.
FDD and TDD LTE frequency bands
10
TDD LTE frequency band allocationsFDD LTE frequency band allocations
[http://www.radio-electronics.com/info/cellulartelecomms/lte-long-term-evolution/lte-frequency-spectrum.php]
LTE TDD has been commercial since 2011 and is gaining global momentum. The initial global unpaired bands include
2.3GHz (B40) used in India and 2.6 GHz (B38) used Europe, with variations (B41) in the U.S. and Japan.
China is expected to launch LTE TDD in multiple global bands.
Global LTE TDD spectrum
11 [Qualcomm, “LTE TDD - the global solution for unpaired spectrum”, September, 2014]
Operating bands specified for LTE in 3GPP above 1 GHz
12 [Dahlman, Parkvall, and Skold, 2016]
Advantages of FDD
13
TDD frames need to incorporate guard periods equal to the max round trip propagation delay to avoid interference between uplink and downlink under worst-case conditions.
There is a time latency created by TDD due to the fact that communications is not full duplex in the truest sense.
Disadvantages of TDD
Advantages of TDD
14
Duplexer is not required.Enable adjustment of the downlink/uplink ratio to efficiently support asymmetric DL/UL traffic.
With FDD, DL and UL have fixed and generally, equal DL and UL bandwidths.
Ability to implement in unpaired spectrumFDD requires a pair of channelsTDD only requires a single channel for both DL and UL providing greater flexibility for adaptation to varied global spectrum allocations.
Assure channel reciprocity for better support of link adaptation, MIMO and other closed loop advanced antenna technologies.
Disadvantages of FDD
Channel Reciprocity
15
Usually, for better performance, to choose the coding/modulation scheme and its parameters, the transmitter needs to learn the channel state information (CSI). It is relatively easier for a receiver to find CSI.
Is the decoded message readable or gibberish?Usually, this is done by the transmitter sending a preamble training sequences or pilot symbols to the receiver.
How can a transmitter obtain CSI?The corresponding receiver may convey this information via a feedback link.
An overhead which reduce the efficiency of the system.Even worse when there are many parameters of the channel to learn. o For example, for MIMO, there are many antennas.
The information can only be used for a short time duration.The channel changes due to mobility of the Tx, Rx, or objects in the environment.
Use channel reciprocity
Channel Reciprocity
16
The channel from point A to point B is identical to the channel from B to A if the channel is measured at the same time and same frequency.
The channel from A to B can be estimated at A using the pilot symbols embedded in the signal sent from B.
Using the reciprocity principle, this estimate is also an estimate for the channel from A to B.
In FDD systems, the two directions use different frequencies. Thus, channel reciprocity does not hold.
17
Chapter 4Multiple Access
4.2 FDMA and TDMA
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Dr.Prapun Suksompongprapun.com/ecs455
Multiple Access Techniques
18
Allow many mobile users to share simultaneously a finite amount of radio spectrum. For high quality communications, this must be done without severe degradation in the performance of the system.Important access techniques1. Frequency division multiple access (FDMA)2. Time division multiple access (TDMA) 3. Spread spectrum multiple access (SSMA)
Frequency Hopped Multiple Access (FHMA)Code division multiple access (CDMA)
4. Space division multiple access (SDMA)5. Random access
ALOHA
Frequency division multiple access (FDMA)
19
The oldest multiple access scheme for wireless communications.
Used exclusively for multiple access in 1G down to individual resource units or physical channels.
Assign individual channels to individual users.Different carrier frequency is assigned to each user so that the resulting spectra do not overlap.During the period of the call, no other user can share the same channel.
FDMA (2)
20
Band-pass filtering (or heterodyning) enables separate demodulation of each channel.
If an FDMA channel is not in use, then it sits idle and cannotbe used by other users to increase or share capacity.
It is essentially a wasted resource.
In FDD systems, the users are assigned a channel as a pair of frequencies.
[Rappaport, 2002, Ch 9, p. 449]
Time division multiple access (TDMA)
21
Divide the radio spectrum into time slots.In each slot only one user is allowed to either transmit or receive.A channel may be thought of as a particular time slot that reoccurs every frame, where N time slots comprise a frame.
Transmit data in a buffer-and-burst methodThe transmission for any user is non-continuous.Digital data and digital modulation must be used with TDMA.This results in low battery consumption, since the subscriber transmitter can be turned off when not in use (which is most of the time).
An obvious choice in the 1980s for digital mobile communications.
User 1 User 2 User 3 User 1 User 2 User 3
a framet
FDMA vs. TDMA
22
Tradeoffs
23
TDMA transmissions are slottedRequire the receivers to be synchronized for each data burst.Guard times are necessary to separate users. This results in larger overheads.FDMA allows completely uncoordinated transmission in the time domain
No time synchronization among users is required.
The complexity of FDMA mobile systems is lower when compared to TDMA systems, though this is changing as digital signal processing methods improve for TDMA.Since FDMA is a continuous transmission scheme, fewer bits are needed for overhead purposes (such as synchronization and framing bits) as compared to TDMA.FDMA needs to use costly bandpass filters.
For TDMA, no filters are required to separate individual physical channels.
Guard Band vs. Guard Time
24
FDMA TDMA
Example: GSM
25
GSM utilizes a combination of FDMA and TDMATwo-dimensional channel structure
[Figure 7.2, Heine, 1998]
FDMA
GSM FDMA/TDMA with one active time slot
Each narrowband channel has bandwidth 200 kHz.Time is divided into slots of length T =577 s.
The FDMA/TDMA structure of GSM
26
In full-rate configuration, eight time slots (TSs) are mapped on every frequency.
[Figure 7.1, Heine, 1998]
A BS with 6 carriers, as shown here, has 48 (8 times 6)physical channels (in fullrate configuration).
Classifications of Medium Access Control (MAC)
27
Multiple Access Techniques in Cellular System
28
Cellular System Multiple Access Technique
Advanced Mobile Phone System (AMPS)
FDMA/FDD
Global System for Mobile (GSM) TDMA/FDD
Interim Standard 95 (IS-95) CDMA/FDD
W-CDMA (3GPP) CDMA/FDDCDMA/TDD
cdma2000 (3GPP2) CDMA/FDDCDMA/TDD
FDMA or TDMA?
29
Used exclusively for multiple access in 1G down to individual resource units or physical channels
FDMA or TDMA?
30
Transmit data in buffer-and-burstmethod
FDMA or TDMA?
31
Need to use costly bandpass filters
FDMA or TDMA?
32
Allows completely uncoordinated transmission in the time domain
1
ECS455: Chapter 4 Multiple Access
4.3 DS/SS
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Spread spectrum (SS)
2
Historically spread spectrum was developed for securecommunication and military uses.
Difficult to intercept for an unauthorized person.
Easily hidden. Can even hide below the noise floor during transmissionFor an unauthorized person, it is difficult to even detect their presence in many cases.
Resistant to narrowband jamming and interference.
[Goldsmith, 2005, Ch 13]
Spread spectrum (SS)
3
Provide a measure of immunity to distortion due to multipath propagation.
In conjunction with a RAKE receiver, can provide coherent combining of different multipath components.
Asynchronous multiple-access capability.
Wide bandwidth of spread spectrum signals is useful for location and timing acquisition.
ApplicationsCordless phones. The basis for both 2nd and 3rd generation cellular systems as well as 2nd generation wireless LANs (WLAN).
[Goldsmith, 2005, Ch 13]
Spread spectrum: Definition
4
Spread spectrum refers to any system that satisfies the following conditions [Lathi, 1998, p 406 & Goldsmith, 2005, p. 378]:1. The spread spectrum may be viewed as a kind of modulation
scheme in which the modulated (spread spectrum) signal bandwidth is much greater than the message (baseband) signal bandwidth.
2. The spectral spreading is performed by a code that is independent of the message signal.This same code is also used at the receiver to despread the received signal in order to recover the message signal (from the spread spectrum signal). In secure communication, this code is known only to the person(s) for whom the message is intended.
[R. Pickholtz, D. Schilling, L. Milstein, “Theory of Spread-Spectrum Communications - A Tutorial,” IEEE Trans. Commun., Vol. 30 , pp. 855-884, May 1982.]
SS: Processing Gain and BW Sharing
5
Increase the bandwidth of the message signal by a factor N, called the processing gain (or bandwidth spreading factor).
In practice, N is on the order of 100-1000. [Goldsmith, 2005, p 379]N = 128 for IS-95 [T&V]
Wasteful?
Bandwidth Sharing: Although we use much higher BW for a spread spectrum signal,
Multiplexing: we can also multiplex large numbers of such signals over the same band.Multiple Access: many users can share the same spread spectrum bandwidth without interfering with one another.
Achieved by assigning different code to each user.
Frequency bands can be reused without regard to the separation distance of the users.
Two forms of spread spectrum
6
1. Frequency Hopping (FH)Hop the modulated data signal over a wide BW by changing its carrier frequencyBW is approximately equal to NB
N is the number of carrier frequencies available for hopping
B is the bandwidth of the data signal.
The most celebrated invention of frequency hopping was that of actress Hedy Lamarr and composer George Antheil in 1942
2. Direct Sequence (DS)
Hedy Lamarr
7
In 2015, Google honoured Hedy Lamarr with a Google Doodle on her 101st birthday.
[ https://www.google.com/doodles/hedy-lamarrs-101st-birthday ]
Hedy Lamarr
8 [ http://www.smh.com.au/technology/sci-tech/google-honours-hedy-lamarr-inventor-of-technology-behind-wifi-and-bluetooth-20151109-gku3w8.html ]
Hedy Lamarr
9
10[http://www.google.com/patents?vid=USPAT2292387]
FHSS Example: Bluetooth
11
The band at 2.4 GHz is divided into 79 channels.
A Bluetooth device, hops frequency at a rate of 1600 hops per second, randomly selecting a channel of 1 MHz to operate.
[ https://sites.google.com/site/nearcommunications/adaptative-frequency-hopping ]
DS/SS System
12
LPF
CS
DS/SS System: The Basic
13
LPF
spread despread
DS/SS System: The Basic
14
LPF
spread despread
LPF
modulate demodulate
Compare with ECS332’s modulation:
spreading code/sequence
carrier
DS/SS System (Con’t)
15
Observe that…To be able to perform the despreading operation, the receiver must
know the code sequence c(t) used at the Tx to spread the signalsynchronize the codes of the received signal and the locally generated code.
The process of detection (despreading) is identical to the process of spectral spreading.
Recall that for DSB-SC, we have a similar situation in that the modulation and demodulation processes are identical (except for the output filter).
spread despread
DS/SS System: Signals
16
We assume polar signals. In particular, we assume .
Spreading code(spreading sequence)
Message signal(data/information signal)
1
-1
1
-1
spread despread
y t c t m t c t m t
DS/SS System: Signals
17
Spreading code(spreading sequence)
Message signal(data/information signal)
1
-1
1
-1
spread despread
During the time that , the spreading
code is non-inverted in .
During the time that , the spreading code is inverted (or negated) in .
DS/SS: Spectral Spreading Signal c(t)
18
The spreading code c(t) is design to be pseudorandomAppear to be unpredictableCan be generated by deterministic recipe (hence, pseudorandom)
This will be studied in the next section.
Each rectangular pulse in c(t) is called a chip.
The bit rate of c(t) is then known as the chip rate.
Spreading code(spreading sequence)
1
-1
Tc = duration of 1 chip
DS/SS System: Signals
19
Spreading code(spreading sequence)
Message signal(data/information signal)
1
-1
1
-1
Tb = duration of 1 data bit
Tc = duration of 1 chip
The bit rate of c(t) is chosen to be much higher then the bit rate of m(t).
In fact, by definition, the spreading factor .
Review: Spectrum of PAM signal
20
1
t
1
-1
= [-1,-1,1,-1,-1,1,1,-1,-1,-1,1,-1,-1,1,-1,1,1,-1,-1,-1,-1,1,-1,-1,-1,-1,-1,1,-1,1]
sp t t TP f
x t
sj fnTs
n nx t m n p t nT X f P f m n e
sf T
t
sf T
Frequency-Domain Analysis
21
f f
t
f
1
-1
1
-1
1
Tb
Tc
Tb
Tc
We will simply draw the main lobes.
DS/SS: Secure Communication
22
As N increases, the peak of is reduced.Secure communication
Signal can be detected only by authorized person(s) who know the pseudorandom code used at the transmitter.Signal spectrum is spread over a very wide band, the signal’s spectral level is very small, which makes it easier to hide the signal within the noise floor
f
1
-1
1
-1
DS/SS: Jamming Resistance
23
Jamming Resistance / Narrowband Interference rejectionThe decoder despreads the signal y(t) to yield m(t).The jamming signal i(t) is spread to yield i(t)c(t).Using a LPF, we can recover m(t) with only a small fraction of the power from i(t).
Caution: Channel noise will not spread.
y t c t x t i t c t m t c t i t c t m t i t c t
LPF
SS Modem
24
LPF
spread
despread
LPF
modulate
demodulate
25
ECS455: Chapter 4 Multiple Access
4.4 m-sequence
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Binary Random Sequences
26
While DSSS chip sequences must be generated deterministically, properties of binary random sequences are useful to gain insight into deterministic sequence design.
A random binary chip sequences consists of i.i.d. bit values with probability one half for a one or a zero.
Also known as Bernoulli sequences/trials, “coin-flipping” sequences
A random sequence of length N can be generated, for example, by flipping a fair coin N times and then setting the bit to a one for heads and a zero for tails.
Binary Random Sequence
27
X-4 X-3 X-2 X-1 X-0 X1 X2 X3 X4
Coin-flipping sequence H H T H H T H T T
Bernoulli trials/sequence 1 1 0 1 1 0 1 0 0
Binary (indp.) random sequence -1 -1 1 -1 -1 1 -1 1 1
Waveform
These names are simply many versions of the same sequence/process.You should be able to convert one version to others easily.Some properties are conveniently explained when the sequence is expressed in a particular version.
Properties of Binary Random Sequences:
28
Consider the sequence X1, X2, X3, …, Xn,…
DisadvantagesCan not further “compress” the sequenceDifficult to convey the sequence from the Tx to RxRequire large storage at both Tx and Rx
AdvantagesRandom = unpredictable
1. Balanced property2. Run length property3. Shift property
Properties of Binary Random Sequences: Balanced Property
29
{0,1} version
{ 1} version
NN
i ii
X XN
NN
i ii
X XN
Runs: An Example
30
A run is a subsequence of consecutive identical symbols within the sequence.The following sequence contains 16 runs
Rel. Freq of Run Lengths
0001111100110100100001010111011
11111 1/160000 1/16111 1/16000 1/1611 2/1600 2/161 4/160 4/16
A run of 0s (length = 3)
A run of 1s (length = 5)
Rel. Freq of Runs
Run Length Rel. Freq.5 1/164 1/163 2/162 4/161 8/16
Properties of Binary Random Sequences: Run Length Property
31
011001111100001
Start of a run of 1s
P As increases, P is reduced.
Small probability of having log runs.
FYI: Run-Length Encoding (RLE)
32
A very simple form of lossless data compression in which runs of data (that is, sequences in which the same data value occurs in many consecutive data elements) are stored as a single data value and count, rather than as the original run. Most useful on data that contains many such runs.Example: Consider a screen containing plain black text on a solid white background. A line, with B representing a black pixel and W representing white, might read as follows:
WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW
With a RLE data compression algorithm applied to the above line, it can be rendered as follows:12W1B12W3B24W1B14W
Properties of Binary Random Sequences: Shift Property
33
N
N
X X X X X
X X X X X
Original sequence:
Shifted sequence:(amount of shift (delay) = 2)
When the shifted amount = 0, the two sequences are exactly the same.When the shifted amount = s, we want to compare and .
What proportion are the same?What proportion are different?
Recall that the numbers in the sequence are independent results (from several Bernoulli trials)
Probability
0 0 ¼
0 1 ¼
1 0 ¼
1 1 ¼
Properties of Binary Random Sequences: Shift Property
34
{0,1} version: The comparison is done via the XOR operation
iff they are the sameiff they are different
{ 1} version: The comparison is done via the multiplication operation
iff they are the sameiff they are different
Key randomness properties
35
[Golomb, 1967][Viterbi, 1995, p. 12] Binary random sequences with length N asymptotically large have a number of the properties desired in spreading codes
Balanced property: Equal number of ones and zeros. Should have no DC component to avoid a spectral spike at DC or biasing the noise in despreading
Run length property: The run length is generally short. half of all runs are of length 1 a fraction 1/2n of all runs are of length nLong runs reduce the BW spreading and its advantages
Shift property: If they are shifted by any nonzero number of elements, the resulting sequence will have half its elements the same as in the original sequence, and half its elements different from the original sequence.
(Geometric)
[Goldsmith,2005, p. 387 & Viterbi, p. 12]
Pseudorandom Sequence
36
A deterministic sequence that has the balanced, run length, and shift properties as it grows asymptotically large is referred to as a pseudorandom sequence (noiselike or pseudonoise (PN) signal).Ideally, one would prefer a random binary sequence as the spreading sequence.However, practical synchronization requirements in the receiver force one to use periodic Pseudorandom binary sequences.m-sequencesGold codesKasami sequences
Quaternary sequences Walsh functions
m-Sequences
37
Maximal-length sequences
A type of cyclic codeGenerated and characterized by a generator polynomialProperties can be derived using algebraic coding theory
Simple to generate with linear feedback shift-register(LFSR) circuits
Automated
Approximate a random binary sequence.
Disadvantage: Relatively easy to intercept and regenerate by an unintended receiver [Ziemer, 2007, p 11]
[Goldsmith, 2005, p 387]
Longer name: Maximal length linear shift register sequence.
(Serial-in/Serial-out) Shift Register
38
Accept data serially: one bit at a time on a single line.
Each clock pulse will move an input bit to the next FF. For example, a 1 is shown as it moves across.
Example: five-bit serial-in serial-out register.
C C C C
D D D D
C
D QQ Q Q Q1 1 1 1 1 1
CLKCLKCLKCLKCLK
Linear Feedback Shift-Register (LFSR)
39
s1 s2 s3
g1 g2 g3
CLK
Shift-register
Feedback Linear (combination)
Binary sequences drawn from the alphabet {0,1} are shifted through the shift register in response to clock pulses.
Each clock time, the register shifts all its contents to the right.The particular 1s and 0s occupying the shift register stages after a clock pulse are called states.
Suppose there are rFFs. Then a state of the SR can be represented by r bits.
There are possible states.There are non-zero states.
GF(2)
40
Galois field (finite field) of two elements
Consist of the symbols 0 and 1 and the (binary) operations of
modulo-2 addition (XOR) and
modulo-2 multiplication.
The operations are defined by
Linear Feedback Shift-Register (LFSR)
41
All the values are in GF(2) which means they can only be 0 or 1.The value of gi determines whether the output of the kth FF will be in the sum that produce the feedback bit.
1 signifies closed or a connection and 0 signifies open or no connection.
Ex. Suppose in our LFSR.
s1
0
s2 s3
1 1
s1 s2 s3
m-sequence generator (1)
42
Start with a “primitive polynomial”
r = degree of the polynomial
Use r flip-flops.
The feedback taps in the feedback shift register are selected to correspond to the coefficients of the primitive polynomial.
Ex. is a primitive polynomial.
(Degree: r = 3 use 3 flip-flops)
(See Section 13.4.1 in [Lathi, 1998])
s1 s2 s3
m-sequence generator (2)
43
s1 s2 s3output
We start with state 100. You may choose different non-zero state.Note that if we start with 000, we won’t go anywhere.
Any polynomial generates periodic sequence.
The maximum period is .
In this example, the state cycles through all non-zero states.
output
State Diagram
44
s1 s2 s3output
100
101
010
110111
011
001
000
output
Primitive Polynomial
45
Definition: A LFSR generates an m-sequence if and only if (starting with any nonzero state,) it visits all possible nonzero states (in one cycle).
Technically, one can define primitive polynomial using concepts from finite field theory.
Fact: A polynomial generates m-sequence if and only if it is a primitive polynomial.
Therefore, we use this fact to define primitive polynomial.
For us, a polynomial is primitive if the corresponding LFSR circuit generates m-sequence.
Sample Exam Question
46
Draw the complete state diagrams for linear feedback shift registers (LFSRs) using the following polynomials. Does either LFSR generate an m-sequence?
1.
2.
Solution (1)
47
Draw the complete state diagrams for linear feedback shift registers (LFSRs) using the following polynomials. Does either LFSR generate an m-sequence?
1.
100
101
010
110111
011
001
000
The corresponding LFSR generates an m-sequence because the state diagram contains a cycle that visits all possible nonzero states.We can also conclude that
is a primitive polynomial.
s1 s2 s3 output
Solution (2)
48
m-Sequences: More properties
49
1. The contents of the shift register will cycle over all possible 2r-1 nonzero states before repeating.
2. Contain one more 1 than 0 (Slightly unbalanced)3. Shift-and-add property: Sum of two (cyclic-)shifted m-sequences is
another (cyclic-)shift of the same m-sequence4. If a window of width r is slid along an m-sequence for N = 2r-1 shifts, each r-
tuple except the all-zeros r-tuple will appear exactly once5. For any m-sequence, there are
One run of ones of length rOne run of zeros of length r-1One run of ones and one run of zeroes of length r-2Two runs of ones and two runs of zeros of length r-3Four runs of ones and four runs of zeros of length r-4…2r-3 runs of ones and 2r-3 runs of zeros of length 1
m-Sequences: More Properties
50
1. The contents of the shift register will cycle over all possible 2r-1 nonzero states before repeating.
2. Each cycle contains exactly one more 1s than 0s (Slightly unbalanced)
0
1
0
01
1
1
00101110010111001011100101110010111001011100101110010111
[S.W. Golomb, Shift Register Sequences, Holden-Day, San Francisco, 1967.]
m-Sequences: More Properties
51
3. Shift-and-add property: Sum of two (cyclic-)shifted m-sequences is another (cyclic-)shift of the same m-sequence
4. If a window of width r is slid along an m-sequence for N = 2r-1 shifts, each r-tuple except the all-zeros r-tuple will appear exactly once
00101110010111001011100101110010111001011100101110010111
0 phase shift: 00101111 phase shift: 01011102 phase shift: 10111003 phase shift: 01110014 phase shift: 11100105 phase shift: 11001016 phase shift: 1001011
= 1100101
00101110010111001011100101110010111001011100101110010111[S.W. Golomb, Shift Register Sequences, Holden-Day, San Francisco, 1967.]
m-Sequences: More Properties
52
5. For any m-sequence, there are 2r-1 runs.One run of ones of length rOne run of zeros of length r-1One run of ones and one run of zeroes of length r-2Two runs of ones and two runs of zeros of length r-3Four runs of ones and four runs of zeros of length r-4…2r-3 runs of ones and 2r-3 runs of zeros of length 1
In other words, relative frequency for runs of length is
Runs:111001,0
0
1
0
01
1
1001011100101110010111001011100101110010111
[S.W. Golomb, Shift Register Sequences, Holden-Day, San Francisco, 1967.]
m-Sequences: Another Example
53
25-1 = 31-chip m-sequence
The following sequence contains 16 runs
Rel. Freq of Run Lengths
0001111100110100100001010111011
11111 1/160000 1/16111 1/16000 1/1611 2/1600 2/161 4/160 4/16
Rel. Freq of Runs
Run Length Rel. Freq.5 1/164 1/163 2/162 4/161 8/16
[S.W. Golomb, Shift Register Sequences, Holden-Day, San Francisco, 1967.]
(Time) Autocorrelation Function for Energy Sequence
54
34
(Time) Autocorrelation Function for Energy Sequence
55
x34
2828
(Time) Autocorrelation Function for Energy Sequence
56
34
2828
MATLAB: xcorr
57
r = xcorr(x,y)Return the cross-correlation of two discrete-time sequences, xand y. If x and y have different lengths, the function appends zeros at the end of the shorter vector so it has the same length as the other.
The lag ( ) is varied from to where is the longer length of the two sequences.
[r,lags] = xcorr(___)Also returns vector with the lags ( ) at which the correlations are computed.
(Time) Autocorrelation Function for Energy Sequence
58
close allx = [0 2 4 3 2 1 0];
% plot the signalplot(x,'--','LineWidth',1.5)hold onplot(x,'o','LineWidth',1.5)ylabel('x[n]')xlabel('n')
% plot auto-correlation functionfigure[R lag] = xcorr(x,x);plot(R,'--','LineWidth',1.5)hold onplot(R,'o','LineWidth',1.5)ylabel('R_x[\tau]')xlabel('\tau')
(Time) Autocorrelation Function for Power and Periodic Sequence
59
Time average Autocorrelation
Power Sequence
Periodic Sequencewith period T0
Example: (Time) Autocorrelation Function for Periodic Sequence
60
Example: (Time) Autocorrelation Function for Periodic Sequence
61
5.67
4.67
Back to m-Sequences
62
001011100101110010111001011100101110010111001011100101110010111
1001011In actual transmission, we will map “0 and 1” to “+1 and -1”, respectively.
:
Back to m-Sequences
63
001011100101110010111001011100101110010111001011100101110010111
1001011
-1 1 -1 -1 -1 1 11 1 -1 1 -1 -1 -1-1 1 1 -1 1 -1 -1 = -1
Autocorrelation when not aligned:
:
In actual transmission, we will map “0 and 1” to “+1 and -1”, respectively.
m-Sequences: Autocorrelation function
64
0010111
m-Sequences: Autocorrelation function
65
1010111011000111110011010010000
Autocorrelation Function for Periodic Binary Random Sequence
66
Consider a periodic sequence whose one period is given by
[-1 1 -1 -1 1 -1 1 1 -1 -1]
The shift property of binary random sequence implies that
x
n
R x n x n
x n x n
Autocorrelation Function for Periodic Binary Random Sequence
67
Consider a periodic sequence whose one period is given by
1-2*randi([0 1],1,100)
The shift property of binary random sequence implies that
x
n
R x n x n
x n x n
Autocorrelation Function for Periodic Binary Random Sequence
68
Consider a periodic sequence whose one period is given by
1-2*randi([0 1],1,1000)
The shift property of binary random sequence implies that
x
n
R x n x n
x n x n
Example: Autocorrelation Function for Periodic Binary Random Sequence
69
Consider a periodic sequence whose one period is given by
1-2*randi([0 1],1,10000)
The shift property of binary random sequence implies that
x
n
R x n x n
x n x n
Autocorrelation Function for Periodic Binary Random Sequence
70
Consider a periodic sequence whose one period is given by
1-2*randi([0 1],1,100000)
The shift property of binary random sequence implies that
x
n
R x n x n
x n x n
Autocorrelation and PSD
71
(Normalized) autocorrelations of maximal sequence and random binary sequence.
Power spectral density of maximal sequence.[Torrieri , 2005, Fig 2.9]
[Torrieri , 2005, Fig 2.10]
References: m-sequences
72
Karim and Sarraf, W-CDMA and cdma2000 for 3G Mobile Networks, 2002.
Page 84-90Viterbi, CDMA: Principles of Spread Spectrum Communication, 1995
Chapter 1 and 2Goldsmith, Wireless Communications, 2005
Chapter 13Tse and Viswanath, Fundamentals of Wireless Communication, 2005
Section 3.4.3
[TK5103.452 K37 2002]
[TK5103.45 V57 1995]
Review: m-sequence
73
DSSS: m t c t
0 0 1 0 1 1 1 0 0 1 0 11 1 -1 1 -1 -1 -1 1 1 -1 1 -1
Spectral spreading waveform
Spreading code/sequence
c[n]
Imitate properties of Bernoulli trials
Pseudo-random
One important collection of these is the collection of m-sequences.
Generated with LFSR whose connections corresponds to coefficients of primitive polynomials. The resulting sequence achieves the maximum period (length) of where r is the degree of primitive polynomial.
1
ECS455: Chapter 4 Multiple Access
4.4 m-sequence
(Additional Remarks)
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Example: (Time) Autocorrelation Function for Periodic Sequence
2
5.67
4.67
Example: (Time) Autocorrelation Function for Periodic Sequence
3
5.67
4.67
Example: (Time) Autocorrelation Function for Periodic Sequence
4
5.67
4.67
Example: (Time) Autocorrelation Function for Periodic Sequence
5
5.67
4.67
Let’s call this the “sumproduct” operation. (This exact name is used in Excel for this kind of operation.) Mathematically, this is simply the dot product between two real-valued vectors.
Let’s call this scaling the “normalization” operation.
So, the combined computation can be called “normalized sumproduct” operation. We may also refer to this as the (sliding computation of) “autocorrelation” operation as well.
Sliding computation of autocorrelation
6
m-sequence (repeated 5 times)
m-sequence (1 period)
c[n]
Sliding computation of autocorrelation
7
m-sequence (repeated 5 times)
m-sequence (1 period)
autocorrelation
c[n]
Sliding computation of autocorrelation
8
m-sequence (repeated 5 times)
autocorrelation
c[n]
Sliding computation of autocorrelation
9
m-sequence (repeated 5 times)
autocorrelation
c[n]
Sliding computation of autocorrelation
10
m-sequence (repeated 5 times)
autocorrelation
c[n]
Sliding computation of autocorrelation
11
m-sequence (repeated 5 times)
autocorrelation
c[n]
Sliding computation of autocorrelation
12
m-sequence (repeated 5 times)
autocorrelation
c[n]
Sliding computation of autocorrelation
13
m-sequence (repeated 5 times)
autocorrelation
c[n]
Sliding computation of autocorrelation
14
m-sequence (repeated 5 times)
autocorrelation
c[n]
Wireless Comm. and Multipath Fading
15
v
i ii
y t x t h t n t x t n t
v
i ii
h t t
s s sh t t t T t T t T
s s sh t t t T t T t T
The signal received consists of a number of reflected rays, each characterized by a different amount of attenuation and delay.
ISI(Intersymbol Interference)
TS
Wireless Comm. and Multipath Fading
16
v
i ii
y n c n
The signal received consists of a number of reflected rays, each characterized by a different amount of attenuation and delay.
y n c n c n c n
Here, let’s consider the discrete-time version of fading:
In particular, let’s try
Identifying Parameters of Multipath Fading via Autocorrelation
17
Identifying Parameters of Multipath Fading via Autocorrelation
18
74
ECS455: Chapter 4 Multiple Access
4.5 Cyclic Codes
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Note that this topic is not directly related to DSSS nor multiple access. It is a kind of error control codes. However, the technique used are quite similar to the generation of m-sequence and hence we would like to discuss it here.
MATLAB: circshift
75
=circshift( ,[0, ])=circshift( , ,2)
circularly shifts the elements in a row vector to the right by positions. circshift([1 2 3 4 5],[0 3])=[3 4 5 1 2]=circshift( , )=circshift( ,[ ,0])=circshift( , ,1)
circularly shifts the elements in a column vector down by positions.
MATLAB: demo
76
>> r = 1:5r =
1 2 3 4 5>> circshift(r,[0,3])ans =
3 4 5 1 2>> circshift(r,3,2)ans =
3 4 5 1 2>> circshift(r,3)Warning: CIRCSHIFT(X,K) with scalar K and where size(X,1)==1 will change behavior in future versions. To retain current behavior, use CIRCSHIFT(X,[K,0]) instead.ans =
1 2 3 4 5
MATLAB: demo
77
>> v = (1:5)'v =
12345
>> circshift(v,[3,0])ans =
34512
>> circshift(v,3,1)ans =
34512
>> circshift(v,3)ans =
34512
Linear Cyclic Codes
78
Definition: A linear code is cyclic if a cyclic shift of any valid codeword is still a valid codeword.
Lead to more practical implementation.Allow their encoding and decoding functions to be of much lower complexity than the matrix multiplications
Block codes used in FEC systems are almost always cyclic codes [C&C, 2009, p. 611][G, 2005, p. 220].
CRC = cyclic redundancy checkInvented by W. Wesley Peterson in 1961
Ex. Codebook of a Systematic Cyclic Code
79
0 0 0 0 0 0 0 0 0 0 00 0 0 1 1 0 1 0 0 0 10 0 1 0 1 1 1 0 0 1 00 0 1 1 0 1 0 0 0 1 10 1 0 0 0 1 1 0 1 0 00 1 0 1 1 1 0 0 1 0 10 1 1 0 1 0 0 0 1 1 00 1 1 1 0 0 1 0 1 1 11 0 0 0 1 1 0 1 0 0 01 0 0 1 0 1 1 1 0 0 11 0 1 0 0 0 1 1 0 1 01 0 1 1 1 0 0 1 0 1 11 1 0 0 1 0 1 1 1 0 01 1 0 1 0 0 0 1 1 0 11 1 1 0 0 1 0 1 1 1 01 1 1 1 1 1 1 1 1 1 1
Associating Vectors with Polynomials
80
arbitrary variable
i n nc c c c c c
i ni nc x c c x c x c x c x
Note that the index starts with 0. The powers of x denote the positions of the bits represented by the corresponding coefficients.
Example
x x x x xc x xSimilarly,
km m m kkm x m m x m x m x
Each codeword has bits. So, the degree of
is .
Each message block has bits. So, the degree of is .
Message polynomial
Long Division (for numbers)
81
divisorquotient
dividend
remainder
Many way to write equations that describe the results:
Dividing 78 by 6 leaves no remainder78 0 mod 678 is a multiple of 66 divides 786 is a divisor of 7878 is divisible by 66 is a factor of 786|78
Polynomial (Long) Division
82
x xx xx x
x
x x x
x
x
x
x
x
r xq x
x x x x x
x x x xx x
x x x
divisor
quotient
dividend
remainder
Many way to write equations that describe the results:
[https://en.wikipedia.org/wiki/Polynomial_long_division]
Polynomial (Long) Division in GF(2)
83
x x xx x x
x xx x
xx x
x x x xx xx x x
x
x
No remainder
x x x x x
x x x x x x x
Generator Polynomial
84
Cyclic codes are generated via a generator polynomial instead of a generator matrix.
Degree =
Is a divisor of .is a valid codeword iff divides with no
remainder.Non-systematic: Systematic:
Example
85
Consider a cyclic code with generator polynomial
Determine if the codeword described by each of the following polynomials is a valid codeword for this generator polynomial.
Generation of Systematic Cyclic Code
86
Three steps:1. Multiply the message polynomial by 2. Divide by to get the remainder polynomial
.
3. Substract (add) from (to) The polynomial multiplications are straightforward to implement, and the polynomial division is easily implemented with a feedback shift register. Thus, codeword generation for systematic cyclic codes has very low cost and low complexity.
Generation of Systematic Cyclic Code
87
Shift the message bits to the rightmost digits of the codewordsThe first bits are “blank”
These bits are to be “filled” by .
By construction,
Correspond to bits.
Example
88
Consider a systematic cyclic (7,4) code whose generator polynomial is .
Suppose the message is 0011. Find the corresponding codeword.
References: Cyclic Codes
89
Lathi and Ding, Modern Digital and Analog Communication Systems, 2009
[TK5101 L333 2009]Section 15.4 p. 918-923
Carlson and Crilly, Communication Systems: An Introduction to Signals and Noise in Electrical Communication, 2010
[TK5102.5 C3 2010]Section 13.2 p. 611-616
Goldsmith, Wireless Communications, 2005
Section 8.2.4 p. 220-222
90
ECS455: Chapter 4 Multiple Access
4.6 Orthogonality and CDMA
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
DSSS and m-sequences
91
m-sequences Excellent auto-correlation properties (for ISI rejection)Highly suboptimal for exploiting the multiuser capabilities of spread spectrum.
There are only a small number of maximal length codes of a given length.Moreover, maximal length codes generally have relatively poor cross-correlation properties, at least for some sets of codes.
[Goldsmith, 2005, Ch 13]
Number of primitive polynomials
92
Number of different primitive polynomials:
r is the degree of the primitive polynomials and
Np is the number of different primitive polynomials available.
[Chen, 2007, p 145]
SSMA
93
For spread spectrum systems with multiple users, codes such as Gold, Kasami, or Walsh codes are used instead of maximal length codes
Superior cross-correlation properties.
Worse auto-correlation than maximal-length codes.The autocorrelation function of the spreading code determines its multipath rejection properties.
Qualcomm
94
Founders: Two of the most eminent engineers in the world of mobile radio
Prof. Irwin Jacobs is the chairman and founderCornell (undergrad.: Hotel > EE)MIT (grad.) UCSD (Prof.)
Prof. Andrew J. Viterbi is the co-founderMIT (BS, MS)USC (PhD)UCLA and UCSD (Prof.)Same person that invented the Viterbi algorithm for decoding convolutionally encoded data.
Video: Irwin Jacobs
95
Irwin Jacobs: Pioneer of the Wireless Future
[http://www.youtube.com/watch?v=EGaG1S4-D6o]
Gallager’s remark on ideal engineer: 1:46-2:24Educational background: 5:00-8:25Textbook: 9:03-10:40Viterbi: 11:00CDMA:
26:14-26:5028:46-31:20
Video: Irwin Jacobs
96
With Gallager’s remark on being an ideal engineer
Video: Irwin Jacobs
97
Educational background
Video: Irwin Jacobs
98
Textbook
Video: Irwin Jacobs
99
Viterbi
At Cornell…
100
Toby Berger was the Irwin and Joan Jacobs Professor in Engineering from 1997 to 2005.
Berger retired from Cornell after the fall 2005 semester.
From 2006, Lang Tong replaces Toby Berger as the Irwin and Joan Jacobs Professor in Engineering.
Video: Irwin Jacobs
101
CDMA
Video: Irwin Jacobs
102
CDMA
Code Division Multiple Access (CDMA)
103
1991: Qualcomm announcedthat it had invented a new cellular system based on CDMAthat the capacity of this system was 20 or so times greater than any other cellular system in existence
However, not all of the world was particularly pleased by this apparent breakthrough—in particular, GSM manufacturers became concerned that they would start to lose market share to this new system.
The result was continual and vociferous argument between Qualcomm and the GSM manufacturers.
[Webb, 1998, p 138]
CDMA
104
One way to achieve SSMAMay utilize Direct Sequence Spread Spectrum (DS/SS)
The narrowband message signal is multiplied (modulated) by the spreading signal which has a very large bandwidth (orders of magnitudes greater than the data rate of the message).Direct sequence is not the only spread-spectrum signaling format suitable for CDMA
All users use the same carrier frequency and may transmit simultaneously.Users are assigned different “signature waveforms” or “code” or “codeword” or “spreading signal”Each user’s codeword is approximately orthogonal to all other codewords.Should not be confused with the mobile phone standards called cdmaOne (Qualcomm’s IS-95) and CDMA2000 (Qualcomm’s IS-2000) (which are often referred to as simply "CDMA")
These standards use CDMA as an underlying channel access method.
Not to be confused with error-correcting codes that add redundancy to combat channel noise and distortion
Inner Product (Cross Correlation)
105
Vector
Waveform: Time-Domain
Waveform: Frequency Domain
Complex conjugate
x y x t y t dt
X Y X f Y f df
n
k kk
n n
x yx y x y x y
x y
Conjugation is not required when dealing only with real-valued signals.
Review: Orthogonality
106
Two signals are said to be orthogonal if their inner product is zero.
The symbol is used to denote orthogonality.
n
k kk
n n
a ba b a b a b
a b
A B A f B f dft tk k TT T
Example (Fourier Series):
tj nTe T
Vector:
Time-domain:
Frequency domain:
t t tExample:
a b a t b t dt
Ex: Orthogonal Signals
107
c t
c t
c t
c t
Vector (discrete-time) version
i j i jc t c t i j i j
Waveform (cont.-time) version
Review: Important Properties
108
Parseval’s theorem
Useful observation: If the non-zero regions of two signals do not overlap in time domain or do not overlap in frequency domain,
then the two signals are orthogonal (their inner product = 0).However, in general, orthogonal signals may overlap both in time and in frequency domain.
x y x t y t dt X f Y f df X Y
x t y t X f Y fIt is therefore sufficient to check only on the “convenient” domain.
TDMA
FDMA
xE x t dt X f df
1
2
Orthogonality-Based MA
109
Consider a system with users.Suppose that the kth user want to transmit a number .
Could be a sample from his/her analog message.Could be -1 or 1, representing message bit 1 or 0.
We create multiple communication channels (with no inter-channel interference); one for each user.
The kth code (signal/waveform) is assigned to (used by) the kth user.
CDMA
k k k kk k
x t s c t X f s C f where k kc c(Orthogonal signaling)
Orthogonality-Based MA
110
CDMA
TDMA
sj fkTk s k
k kx t s c t kT X f C f s e
This is a special case of CDMA with k sc t c t kT
FDMA
where c(t) is time-limited to [0,T].
kk
X f s C f k f
where C(f) is frequency-limited to [0, f].
This is a special case of CDMA with kC f C f k f
k k k kk k
x t s c t X f s C f
The ck are non-overlapping in time domain.
The Ck are non-overlapping in freq. domain.
where k kc c(Orthogonal signaling)
Ex: DS-CDMA
111
c t
c t
c t
c t
Vector (discrete-time) versionWaveform (cont.-time) version
k kk
x t s c t kk
ks
i j i ji j
Ex: DS-CDMA (Uplink)
112
At the transmitter (mobile phone) of each user:User 1’s message is .
Transmit User 2’s message is .
Transmit User 3’s message is .
Transmit User 4’s message is .
Transmit
In the air, the signals from all the users are combined to create
Additionally, the signal may be further corrupted by the noise and fading.
However, here, we will ignore such corruption for clearer MA calculation.
Ex: DS-CDMA (Uplink)
113
At the receiver (base station),
To find , note that
In general, for orthogonal codes containing only 1,
Observe to recover , we only need ; we don’t need to know the codes for other users.
Ex: DS-CDMA (Uplink)
114
One can define .
Then,
CDMA’s key equation:
Key property of CC
115
From the CDMA’s key equation ,or from the fact that all the rows of are orthogonal,
we have the key property of :
It is tempting to call this an orthogonal matrix. However, in linear algebra, to have an orthogonal matrix, the matrix must satisfy1. the rows are orthogonal and2. the rows must be unit vectors.In other words, the rows must be orthonormal vectors. Equivalently, The matrix must satisfy .
DS-CDMA: Uplink vs. Downlink
116
BS wants to transmit to the kth user.( to the 1st user, to the 2nd user, …)BS transmits
The kth user (MS) wants to send .The kth user (MS) transmits .
Each user (MS) receives .The kth user (MS) can recover its message
from
The transmitted signals are combined in the air
.
The BS receives .The message from the kth user can be
recovered via .Alternatively, can recover all messages
simultaneously: .
CDMA: DS/SS
117
The receiver performs a time correlation operation to detect only the specific desired codeword. All other codewords appear as noise due to decorrelation.For detection of the message signal, the receiver needs to know the codeword used by the transmitter. Each user operates independently with no knowledge of the other users.Unlike TDMA or FDMA, CDMA has a soft capacity limit.
Increasing the number of users in a CDMA system raises the noise floor in a linear manner. There is no absolute limit on the number of users in CDMA. Rather, the system performance gradually degrades for all users as the number of users is increased and improves as the number of users is decreased.
[Rappaport, 2002, Ch9]
Analogy [Tanenbaum, 2003]
118
An airport lounge with many pairs of people conversing. TDMA is comparable to all the people being in the middle of the room but taking turns speaking. FDMA is comparable to the people being in widely separated clumps, each clump holding its own conversation at the same time as, but still independent of, the others. CDMA is comparable to everybody being in the middle of the room talking at once, but with each pair in a different language.
The French-speaking couple just hones in on the French, rejecting everything 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.
119
CDMA: Near-Far Problem
120
At first, CDMA did not appear to be suitable for mobile communication systems because of this problem.Occur when many mobile users share the same channel.In an uplink, the signals received from each user at the receiver travel through different channels. Users that are close to the BS can cause a great deal of interference to user’s farther away.
In general, the strongest received mobile signal will capture the demodulator at a base station.
Stronger received signal levels raise the noise floor at the base station demodulators for the weaker signals, thereby decreasing the probability that weaker signals will be received.Fast power control mechanisms solve this problem.
Regulate the transmit power of individual terminals in a manner that received power levels are balanced at the BS.
How many orthogonal signals?
121
No signal can be both strictly time-limited and strictly band-limited.We adopt a softer definition of bandwidth and/or duration (e.g., the percentage of energy outside the band [-B, B] or outside the time interval [0, T] not exceeding a given bound .Q: How many mutually orthogonal signals with (approximate) duration T and (approximate) bandwidth B can be constructed? A: About 2TB
No explicit answer in terms of T, B, and is known.Unless the product TB is small.
A K-user orthogonal CDMA system employing antipodal modulation at the rate of R bits per second requires bandwidth approximately equal to
B RK[Verdu, 1998, Ch1, p 7]
122
ECS455: Chapter 4 Multiple Access
4.7 Synchronous CDMA
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Synchronous CDMA Model
123
Timing is important for orthogonality
It is not possible to obtain orthogonal codes for asynchronous users.
Bit epochs are aligned at the receiver
RequireClosed-loop timing control or Providing the transmitters with access to a common clock (such as the Global Positioning System) [Verdu, 1998, p 21]
[Verdu, 1998, p 21]
[Goldsmith, 2005, Sec. 13.4, p. 425]
Walsh Functions [Walsh, 1923]
124
Used in second- (2G) and third-generation (3G) cellular radio systems for providing channelization
A set of Walsh functions can be ordered according to the number of zero crossing (sign changes)
[Lee and Miller, 1998, Fig. 5.1]
Walsh Functions of Order N: Definition
125
A set of N functions, denoted, , such that
takes on the values {+1,-1}
Except at the jumps (where it takes the value zero)for all .
has exactly sign changes (zero crossings) in the interval .
Orthogonality:
Each function is either odd or even with respect to the midpoint of the interval.
Once we know how to generate these Walsh functions of any order N, we can use them in N-channel orthogonal multiplexing or multiple access applications.
Application:
Walsh Sequences
126
The Walsh functions, expressed in terms of {+1,-1} values, form a group under the multiplication operation (multiplicative group).
The Walsh sequences, expressed in terms of {0, 1} values, form a group under modulo-2 addition (additive group).
Closure property:
Abstract Algebra
127
group GG G G
a b c a b c
e G a G a e e a aa G a G
a a a a ecommutative abelian
a b G a b b a
Walsh sequences of order 64
128[Lee and Miller, 1998, Table 5.2]What’s wrong with this list?!
Walsh Function Generation
129
We can construct the Walsh functions by:1. Using Rademacher functions2. Using Hadamard matrices3. Exploiting the symmetry properties of Walsh functions
themselves
The Hadamard matrix is a square array of “+1” and “-1”, whose rows and columns are mutually orthogonal. We can replace “+1” with “0” and “-1” with “1” to express the Hadamard matrix using the logic elements {0, 1}. The 2 2 Hadamard matrix of order 2 is
Hadamard matrix: Properties
130
Caution: Some textbooks write this symbol as . It is not the regular matrix multiplication
Suppose NH is an N N Hadamard matrix.
1N is called the order of a Hadamard matrix. 1,2, or 4N t where t is a positive integer.
TN N NNH H I o NI is the N N identity matrix
Key idea for construction: If aH and bH are Hadamard matrices of order a and b, respectively,
a bH H is a Hadamard matrix abH of order ab whose elements are found by substituting
bH for +1 (or logic 0) in aH and
bH (or the complement of bH ) for -1 (or logic 1) in aH .
Kronecker Product
131
An operation on two matrices of arbitrary size
Named after German mathematician Leopold Kronecker.
If A is an m-by-n matrix and B is a p-by-q matrix, then the Kronecker product A B is the mp-by-nq matrix
Example
n
m mn
a B a B
a B a B
Hadamard matrix: Sylvester’s Construction
132
If N is a power of two, start with 1 01H ,
then 2nN
N N
N
N
N
N
N
H H
H HH
H H
H H.
1 1H 2
1 1
1 1H 4 2 2
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
H H H
In MATLAB, usehadamard(k)
Two ways to get HH8 from HH2 and HH4
133
2
1 1
1 1H 4
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
H
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
Properties
134
Orthogonality:Geometric interpretation: every two different rows represent two perpendicular vectors Combinatorial interpretation: every two different rows have matching entries in exactly half of their elements and mismatched entries in the remaining elements.
SymmetricClosure propertyThe elements in the first column and the first row are all 1s. The elements in all the other rows and columns are evenly divided between 1 and -1. Traceless property
Walsh–Hadamard (WH) Sequences
135
Rows (or columns) of the Hadamard matrix when the order is N = 2t
“Same” as Walsh sequences except thatthey are not indexed according to the number of sign changes.
Used in synchronous CDMAIt is possible to synchronize users on the downlink, where all signals originate from the same transmitter.It is more challenging to synchronize users in the uplink, since they are not co-located.
Asynchronous CDMA
Hadamard Matrix in MATLAB
136
We use the hadamard function in MATLAB to generate Hadamard matrix.
The Walsh sequences in the matrix are not arranged in increasing order of their sequencies or number of zero-crossings (i.e. 'sequency order') .
N = 8; % Length of Walsh (Hadamard) functions hadamardMatrix = hadamard(N)hadamardMatrix =
1 1 1 1 1 1 1 1 1 -1 1 -1 1 -1 1 -1 1 1 -1 -1 1 1 -1 -1 1 -1 -1 1 1 -1 -1 1 1 1 1 1 -1 -1 -1 -1 1 -1 1 -1 -1 1 -1 1 1 1 -1 -1 -1 -1 1 1 1 -1 -1 1 -1 1 1 -1
Walsh Matrix in MATLAB
137
The Walsh matrix, which contains the Walsh functions along the rows or columns in the increasing order of their sequencies is obtained by changing the index of the hadamardMatrix as follows.
HadIdx = 0:N-1; % Hadamard index M = log2(N)+1; % Number of bits to represent the index
binHadIdx = fliplr(dec2bin(HadIdx,M)); % Bit reversing of the binary index binHadIdx = uint8(binHadIdx)-uint8('0'); % Convert from char to integer array binSeqIdx = zeros(N,M-1,'uint8'); % Pre-allocate memory for k = M:-1:2 % Binary sequency index binSeqIdx(:,k) = xor(binHadIdx(:,k),binHadIdx(:,k-1)); end SeqIdx = bin2dec(int2str(binSeqIdx)); % Binary to integer sequency index walshMatrix = hadamardMatrix(SeqIdx+1,:) % 1-based indexing walshMatrix =
1 1 1 1 1 1 1 1 1 1 1 1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 1 -1 -1 1 1 -1 -1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 -1 1 1 -1 1 -1 1 -1 -1 1 -1 1 1 -1 1 -1 1 -1 1 -1
Each column of the sequency index (in binary format) is given by the modulo-2 addition of columns of the bit-reversed Hadamard index (in binary format).
CDMA via Hadamard Matrix
138
N = 8; % 8 UsersH = hadamard(N); % Hadamard matrix%% At transmitter(s),s = [8 0 12 0 18 0 0 10];r = s*H% r = 8.*H(1,:) + 12.*H(3,:) + 18.*H(5,:) + 10.*H(8,:);% Alternatively, use % r = ifwht(s,N,'hadamard')%% At Receiver,s_hat = (1/N)*r*H'% Alternatively, use % s_hat = fwht(r,N,'hadamard')
Discrete Walsh-Hadamard transform
Specify the order of the Walsh-Hadamardtransform coefficients. ORDERING can be 'sequency', 'hadamard' or 'dyadic'. Default ORDERING type is 'sequency'.
139
ECS455: Chapter 4 Multiple Access
4.8 IS-95
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Evolution of cellular network
140
[Abu-Rgheff, 2007]
The first CDMA demo
141 [https://www.youtube.com/watch?v=1X9wWnnXcZc]
IS-95 System
142
Based on direct sequence CDMA (DS-CDMA)First CDMA-based digital cellular standard.
The brand name for IS-95 is cdmaOne. Also known as TIA-EIA-95.
Proposed by Qualcomm in 1989 and adopted in 1993.North America
Replaced by IS-2000 (CDMA2000)1.25 MHz Channel BW1.228 Mb/s chip rateWH sequences of order 64 are extensively used in the IS-95 system. Remarks
IS-95B = cdmaOneUpgrade IS-95A
Can carry data at rates up to 14.4 kbps for IS-95A and 115 kbps for IS-95B.
Walsh and WH Sequences of order 64
143[Lee and Miller, 1998, Table 5.8]
as indexed in IS-95
WH Sequences in IS-95
144
Forward link (Downlink)QPSK with a chip rate of 1,228,800 per second. The multiple access scheme is accomplished by the use of 64-bit spreading orthogonal WH sequences (functions).
The (coded and interleaved) traffic channel signal symbols are multiplied with distinct repeating WH sequences that are assigned to each channel for the duration of the call.
Every base stations is synchronized with a GPS receiver so transmissions are tightly controlled in time.
Reverse link (Uplink)The WH sequences are employed as an orthogonal modulation code, which depends only on the data pattern (not channel), forming a 64-ary orthogonal modulation system.
IS-95 base station transceiver
145
(to provide privacy)
[Fazel & Kaiser, 2008, Fig. 1-13]
IS-95 terminal station transceiver
146
(for FEC)
[Fazel & Kaiser, 2008, Fig. 1-14]
IS-95
147
The reverse link is subject to near-far effects.More powerful error correction is employed on the reverse link.
A rate 1/2 constraint length 9 convolutional code followed by an interleaveron the forward channelA rate 1/3 constraint length 9 convolutional code followed by an interleaveris used on the reverse link.
Also with WH(6,64)Interleaving is utilized to avoid large burst errors, which can be very detrimental to convolutional codes.
Power control. Use a subchannel on the forward link Every 1.25 ms the base station receiver estimates the signal strength of the mobile unit. If it is too high, the base transmits a 1 on the subchannel. If it is too low, it transmits a 0. In this way, the mobile station adjusts its power every 1.25 ms as necessary so as to reduce interference to other users.
IS-95: Increased Spectral Efficiency
148
Improve frequency reuse. Narrow-band systems cannot use the same transmission frequency in adjacent cells because of the potential for interference. CDMA has inherent resistance to interference.
Cluster size (N) = 1 (theoretically)Although users from adjacent cells will contribute to interference level, their contribution will be significantly less than the interference from the same cell users. Frequency reuse efficiency increases by a factor of 4 to 6.
When used to transmit voice signals, CDMA systems may exploit the fact that voice activity typically lies at somewhat less than 40%, thus reducing the amount of interference to 40% of its original value.
References
149
J. S. Lee and L. E. Miller, CDMA Systems Engineering Handbook, 1998.
Chapter 4 and 5
R.E. Ziemer, Fundamentals of Spread Spectrum Modulation, 2007
Chapter 4
[TK5103.45 L44 1998]
150
ECS455: Chapter 4 Multiple Access
4.9 3G (UMTS and WCDMA) and OVSF
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
UMTS
151
Universal Mobile Telecommunications System (UMTS) The research activity on UMTS started in Europe at the beginning of the 1990s.
Even before the earliest 2G systems arrived on the marketDesigned to support wideband services with data rates up to 2Mbit/s.Developed from GSM
Keep the core network more-or-less intact Change the air interface to use CDMA
Compatibility between UMTS and GSM: Most UMTS mobiles also implement GSM, and the network can hand them over from a UMTS base station to a GSM one if they reach the edge of the UMTS coverage area. However, network operators cannot implement the two systems in the same frequency band, so they are not fully compatible with each other.
Bandwidth Comparison
152
Generation Transmission Bandwidth Standard
1G 25 and 30 kHz
2G 200 kHz GSM
1.25 MHz IS-95 (CDMA)
2.5G 1.25 MHz CDMA2000 1X-RTT
3G 5 MHz WCDMA and CDMA2000 3X-RTT
4G Up to 20 MHzUp to 60 MHz aggregated+ unlicensed band
LTE
Wider and wider radio frequency bands!
[Myung and Goodman, 2008]
UMTS: FDD
153
The chip rate for spectrum spreading is 3.84 Mc/s.
The maximum transmitter power of the user equipment is in the range of 21 to 33 dBm (that is, 125 mW to 2 W)
[Karim and Sarraf, 2002, Fig 6-1]
(0 dBm or dBmW = 1 mW)
Review: CDMA
154
Two Users. Suppose the code length = N. Taken from HN.
User 1 uses code . Want to send messages a1, a2, a3, a4, …
Send
User 2 uses code . Want to send messages b1, b2, b3, b4, …
Send
Receiver gets
To recover , calculate
To recover , calculate
To recover , calculate
Observe that, for successful transmission, we need
or, equivalently,.
MATLAB notation
Ex: CDMA
155
Two Users. Suppose the code length = 4. Taken from H4.
User 1 uses code . Want to send messages a1, a2, a3, a4, …Send [ a1 a1 a1 a1 a2 a2 a2 a2 a3 a3 a3 a3 a4 a4 a4 a4]
User 2 uses code . Want to send messages b1, b2, b3, b4, …Send [ b1 -b1 b1 -b1 b2 -b2 b2 -b2 b3 -b3 b3 -b3 b4 -b4 b4 -b4]
Receiver gets
To recover , calculate
To recover , calculate
To recover , calculate
OVSF (1)
156
Channelization codes used in UMTS W-CDMA and cdma2000 are variable-length Walsh codes, also known as orthogonal variable spreading factor (OVSF) codes. The spreading factors in UMTS may vary from 4 to 256 chips on uplink channels and from 4 to 512 chips on downlink channels.
In cdma2000, OVSF codes used on traffic channels may vary from 4 to 128 chips.
Comparison: IS-95 uses a set of 64 fixed-length WH codes to spread forward physical channels. In the reverse direction, they are used for orthogonal modulation where every six symbols from the block interleaver output are modulated as one of 64 WH codes.
OVSF (2): Notation
157
=[1]
=[1 1]
=[1 -1]
=[1 1 1 1]
=[1 1 -1 -1]
=[1 -1 1 -1]
=[1 -1 -1 1]
=[1 1 1 1 1 1 1 1]
=[1 1 1 1 -1 -1 -1 -1]
=[1 1 -1 -1 1 1 -1 -1]
=[1 1 -1 -1 -1 -1 1 1]
=[1 -1 1 -1 1 -1 1 -1]
=[1 -1 1 -1 -1 1 -1 1]
=[1 -1 -1 1 1 -1 -1 1]
=[1 -1 -1 1 -1 1 1 -1]
SF = 1 SF = 2 SF = 4 SF = 8
Extra numbers to indicate the lengths of the codes
Note that we start with 0.
Ex: Multiple Code Lengths
158
Two Users. Multiple code lengths:
User 1 uses code =[1 -1 1 -1]. Send [a1 -a1 a1 -a1 a2 -a2 a2 -a2 a3 -a3 a3 -a3 a4 -a4 a4 -a4]
User 2 uses code =[1 -1 -1 1 -1 1 1 -1]. Send [b1 -b1 -b1 b1 -b1 b1 b1 –b1 b1 -b1 -b1 b1 -b1 b1 b1 –b1]
Receiver gets To recover , calculate
To recover , calculate
To recover , calculate
To recover , calculate
=[1 -1 1 -1]=[1 -1 -1 1 -1 1 1 -1]
Ex: Multiple Code Lengths
159
Two Users. Multiple code lengths:
User 1 uses code . Want to send messages a1, a2, a3, a4, …
Send
User 2 uses code . Want to send messages b1, b2, b3, b4, …
Send
Receiver gets To recover , calculate
=[1 -1 1 -1]=[1 -1 -1 1 -1 1 1 -1]
Ex: Multiple Code Lengths
160
Two Users. Multiple code lengths:User 1 uses code . Want to send messages a1, a2, a3, a4, …
Send User 2 uses code . Want to send messages b1, b2, b3, b4, …
Send Receiver gets
To recover , calculate To recover , calculate To recover , calculate
To recover , calculate Observe that, for successful transmission, we need
.So, we have some idea of how to define orthogonality for codes with different lengths.
=[1 -1 1 -1]=[1 -1 -1 1 -1 1 1 -1]
OVSF (3)
161
Similar to Walsh and WH sequencesArranged and numbered in a different way
Use a tree structure
For each spreading factor SF = 1, 2, 4, . . . , which is a power of 2, there are N = SF orthogonal codes obtained by the recursion relations:
Different data rates are supported on a physical channel by simply changing the spreading factor of the associated code.
Tree structure for OVSF codes
162
=[1]
=[1 1]
=[1 -1]
=[1 1 1 1]
=[1 1 -1 -1]
=[1 -1 1 -1]
=[1 -1 -1 1]
=[1 1 1 1 1 1 1 1]
=[1 1 1 1 -1 -1 -1 -1]
=[1 1 -1 -1 1 1 -1 -1]
=[1 1 -1 -1 -1 -1 1 1]
=[1 -1 1 -1 1 -1 1 -1]
=[1 -1 1 -1 -1 1 -1 1]
=[1 -1 -1 1 1 -1 -1 1]
=[1 -1 -1 1 -1 1 1 -1]
( )
( , )
( ,- )
Rule:
SF = 1 SF = 2 SF = 4 SF = 8
Code allocation rules
163
OVSF codes can be applied to realize connections with different data rates by varying the spreading factor.
Smaller SF = Faster data rate
To have connections with different data rates, need some rules (for selecting the codes) to maintain orthogonality
Code blocking property: If a certain code is already used for one connection, neither this code nor a code that is a descendant or an ancestor of this code (on the tree) is allowed to be used for another connection
These codes are not orthogonal to the already allocated one.
Code allocation rules: Example
164
=[1]
=[1 1]
=[1 -1]
=[1 1 1 1]
=[1 1 -1 -1]
=[1 -1 1 -1]
=[1 -1 -1 1]
=[1 1 1 1 1 1 1 1]
=[1 1 1 1 -1 -1 -1 -1]
=[1 1 -1 -1 1 1 -1 -1]
=[1 1 -1 -1 -1 -1 1 1]
=[1 -1 1 -1 1 -1 1 -1]
=[1 -1 1 -1 -1 1 -1 1]
=[1 -1 -1 1 1 -1 -1 1]
=[1 -1 -1 1 -1 1 1 -1]
Suppose code is assigned to a user.
These codes are not allowed to be assigned to other connections.
SF = 1 SF = 2 SF = 4 SF = 8
Code allocation rules (2)
165
Two OVSF codes are orthogonal if and only if neither code lies on the path from the other code to the root.
If, for example, code is in use, another user (connection) with a different data rate is not allowed to use the encircled codes on the previous slide.
Other codes can still be used.
If, for example, the second connection has twice the data rate of the first one, it has to select the code .
Within the period of one data bit of connection 1, connection 2 transmits two data bits.
Code allocation rules: Example
166
=[1]
=[1 1]
=[1 -1]
=[1 1 1 1]
=[1 1 -1 -1]
=[1 -1 1 -1]
=[1 -1 -1 1]
=[1 1 1 1 1 1 1 1]
=[1 1 1 1 -1 -1 -1 -1]
=[1 1 -1 -1 1 1 -1 -1]
=[1 1 -1 -1 -1 -1 1 1]
=[1 -1 1 -1 1 -1 1 -1]
=[1 -1 1 -1 -1 1 -1 1]
=[1 -1 -1 1 1 -1 -1 1]
=[1 -1 -1 1 -1 1 1 -1]
Suppose code and are currently in use.
SF = 1 SF = 2 SF = 4 SF = 8
1
ECS455: Chapter 5 OFDM
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
OFDM Applications
2
802.11 Wi-Fi: a/g/n/ac versionsDVB-T (Digital Video Broadcasting —Terrestrial)
terrestrial digital TV broadcast system used in most of the world outside North America
DMT (the standard form of ADSL - Asymmetric Digital Subscriber Line)WiMAX, LTE (OFDMA)
Side Note: Digital TV
3
Japan: Starting July 24, 2011, the analog broadcast has ceased and only digital broadcast is available.US: Since June 12, 2009, full-power television stations nationwide have been broadcasting exclusively in a digital format.
Digital Video Broadcasting – Second Generation Terrestrial
OFDM: Overview
4
Let S = (S1, S2, …, SN) contains the information symbols.
IFFTS FFT
Inverse fast Fourier transform
Fast Fourier transform
5
ECS455: Chapter 5 OFDM
5.1 Implementation: DFT and FFT
X
X
X
X
x f
x f
x f
x f
X F
X F
X F
X F
X
X
X
X
Dr.Prapun Suksompongprapun.com/ecs455
Office Hours: BKD, 6th floor of Sirindhralai building
Tuesday 14:20-15:20Wednesday 14:20-15:20Friday 9:15-10:15
Review: DS-CDMA
6
BS wants to transmit to the kth user.( to the 1st user, to the 2nd user, …)BS transmits
The kth user (MS) wants to send .The kth user (MS) transmits .
Each user (MS) receives .The kth user (MS) can recover its message
from
The transmitted signals are combined in the air
.
The BS receives .The message from the kth user can be
recovered via .Alternatively, can recover all messages
simultaneously: .
OFDM and CDMA
7
CDMA’s key equation All the rows of are orthogonal
Key property of :
For sync. CDMA, we use the Hadamard matrix HN.
For OFDM, we use DFT matrix .The matrix is complex-valued.
Discrete Fourier Transform (DFT)
8
Here, we work with N-point signals (finite-length sequences (vectors) of length N) in both time and frequency domain.
x Xx X
x N X N
N
DFT matrix
9
jp q NN N e
NN N N
NN N N N
N N N NN N N
Element on the pth row and qthcolumn is given by
Note that the “-1” are there because we start from row 1 and column 1 (not from row 0 and column 0).
NNKey Property:
N NN
N N NN
Example: N = 2
10
Suppose
>> fft([2 5])ans =
7 -3>> ifft([7 -3])ans =
2 5
Connection to CDMA
11
The rows of are orthogonal. So are the columns.
Proof: Let be the kth row of .
So, “replaces” the role of in CDMA.
N Nk k k q k q k q k q
N N N Nq q
N Nq qk k k kN N
q q
k k Nj
Nk k N
Nk k k k k k
N N NN
q
q
ek k
N k k
Discrete Fourier Transform (DFT)
12
N NN
j ft j ftx t X f e df x f X t e dt
N Nnk nkN N
n N k Nk nX k x n X k x n
N
N Njnk jnkN N
n N k Nn nX k e x n X k x n e
N
Matrix form:
Pointwise form:
or, equivalently,
Comparison with Fourier transform
Efficient Implementation: (I)FFT
13
[Bahai, 2002, Fig. 2.9]
An N-point FFT requires only on the order of NlogN multiplications, rather than N2 as in a straightforward computation.
FFT
14
The history of the FFT is complicated.As with many discoveries and inventions, it arrived before the (computer) world was ready for it.Usually done with N a power of two.
Very efficient in terms of computing timeIdeally suited to the binary arithmetic of digital computers.Ex: From the implementation point of view it is better to have, for example, a FFT size of 1024 even if only 600 outputs are used than try to have another length for FFT between 600 and 1024.
References: E. Oran Brigham, The Fast Fourier Transform, Prentice-Hall, 1974.
OFDM with Memoryless Channel
15
h t t h t t
r t h t s t w t s t w t
r n s n w n
Sample every Ts/N
k k kR n S WN N
Sub-channel are independent.
s n N S nFFT
Additive white Gaussian noise
(No ICI)
OFDM implementation by IFFT/FFT
16
This form of OFDM is often referred to as Discrete Multi-Tone (DMT).
k kR S
kS
17
ECS455: Chapter 5 OFDM
5.2 Cyclic Prefix (CP)
Dr.Prapun Suksompongprapun.com/ecs455
Multipath Propagation
18
In a wireless mobile communication system, a transmitted signal propagating through the wireless channel often encounters multiple reflective paths until it reaches the receiver We refer to this phenomenon as multipath propagation and it causes fluctuation of the amplitude and phase of the received signal.We call this fluctuation multipath fading.
Cyclic Prefix: Motivation
19
To reduce the ISI, add guard interval larger than that of the estimated delay spread.If the guard interval is left empty, multipath fading will destroy orthogonality of the sub-carriers, i.e., ICI (inter-channel interference) still exists.Solution: To prevent both the ISI as well as the ICI, OFDM symbol is cyclically extended into the guard interval.
Channel with Finite Memory
20
v
my n h s n w n h m s n m w n
Discrete time baseband model:
where
i i dw n NCN
h n n n
Remarks:
[Tse Viswanath, 2005, Sec. 2.2.3]
We will assume that N
Cyclic Prefix
21
Recall: Convolution
22
FlipShiftMultiply (pointwise)Add
mx h n x m h n m
Circular Convolution
23
Replicate x (now it looks periodic)Then, perform the usual convolutiononly from n = 0 to N-1
(Regular Convolution)
Circular Convolution: Examples 1
24
Find
>> conv([1,2,3],[4,5,6])ans =
4 13 28 27 18
>> cconv([1,2,3],[4,5,6],3)ans =
31 31 28
>> cconv([1,2,3,0,0],[4,5,6,0,0],5)ans =
4.0000 13.0000 28.0000 27.0000 18.0000
Discussion
25
Regular convolution of an N1–point vector and an N2–point vector gives (N1+N2-1)-point vector.
Circular convolution is performed between two equal-length vectors. The results also has the same length.
Circular convolution can be used to find regular convolution by zero-padding.
Zero-pad the vectors so that their length is N1+N2-1.Example:
Circular Convolution in Communication
26
We want the receiver to obtain the circular convolution of the signal (channel input) and the channel.Q: Why?A:
CTFT: convolution in time domain corresponds to multiplication in frequency domain.
This fact does not hold for DFT.DFT: circular convolution in (discrete) time domain corresponds to multiplication in (discrete) frequency domain.
We want to have multiplication in frequency domain.So, we want circular convolution and not the regular convolution.
Problem: Real channel does regular convolution.Solution: With cyclic prefix, regular convolution can be used to create circular convolution.
Example
j j
26.1
Circular convolution in the time domain is the same as
pointwise (element-by-element) multiplication in the frequency domain.
Example
Cyclic prefix
26.2
j j
With cyclic prefix, regular convolution can be used to create circular convolution.
Example
Cyclic prefix
Cyclic prefix
Copying only one symbol is enough to get circular convolution inside the result of regular convolution.
Copying two symbols will also create circular convolution inside the result of regular convolution. However, we are wasting one more symbol space.
26.3 The length of the cyclic prefix is one less than the length of the channel impulse response.
OFDM: One-Shot Transmission
N N
26.4
Example 2
27
Solution:
Goal: Get these numbers using regular convolution
Let’s look closer at how we carry out the circular convolution operation.Recall that we replicate the x and then perform the regular convolution (for Npoints)
Example 2
28
Not needed in the calculation
Observation: We don’t need to replicate the x indefinitely. Furthermore, when h is shorter than x, we need only a part of one replica.
Example 2
29
Copy the last samples of the symbols to the beginning of the symbol.This partial replica is called the cyclic prefix.
Junk!
Try this: use only the necessary part of the replica and then convolute with the channel.
(regular convolution)
Example 2
30
We now know that
Similarly, you may check that
Cyclic Prefix
Cyclic Prefix
Example 3
31
We know, from Example 2, that
Check that
[ 1 2 1 -2 3 1 2] * [3 2 1] = [ 3 8 8 -2 6 7 11 5 2]
[-2 1 2 1 -3 -2 1] * [3 2 1] = [-6 -1 6 8 -5 -11 -4 0 1]
[ 1 2 1 -2 3 1 2 0 0 0 0 0 0 0] * [3 2 1]= [ 3 8 8 -2 6 7 11 5 2 0 0 0 0 0 0 0]
[ 0 0 0 0 0 0 0 -2 1 2 1 -3 -2 1] * [3 2 1]= [ 0 0 0 0 0 0 0 -6 -1 6 8 -5 -11 -4 0 1]
And that
and
Example 4
32
We know that
Using Example 3, we have
[ 1 2 1 -2 3 1 2] * [3 2 1] = [ 3 8 8 -2 6 7 11 5 2][-2 1 2 1 -3 -2 1] * [3 2 1] = [-6 -1 6 8 -5 -11 -4 0 1]
[ 1 2 1 -2 3 1 2 -2 1 2 1 -3 -2 1] * [3 2 1]
= [ 3 8 8 -2 6 7 11 -1 1 6 8 -5 -11 -4 0 1]
= [ 1 2 1 -2 3 1 2 0 0 0 0 0 0 0]
+[ 0 0 0 0 0 0 0 -6 -1 6 8 -5 -11 -4 0 1]
+[ 0 0 0 0 0 0 0 -2 1 2 1 -3 -2 1] * [3 2 1]
= [ 3 8 8 -2 6 7 11 5 2 0 0 0 0 0 0 0]
Putting results together…
33
Suppose x(1) = [1 -2 3 1 2] and x(2) = [2 1 -3 -2 1]Suppose h = [3 2 1]At the receiver, we want to get
[1 -2 3 1 2] [3 2 1 0 0] = [8 -2 6 7 11][2 1 -3 -2 1] [3 2 1 0 0] = [6 8 -5 -11 -4]
We transmit [ 1 2 1 -2 3 1 2 -2 1 2 1 -3 -2 1].
At the receiver, we get
[ 1 2 1 -2 3 1 2 -2 1 2 1 -3 -2 1] * [3 2 1]= [ 3 8 8 -2 6 7 11 -1 1 6 8 -5 -11 -4 0 1]
**
Junk! To be thrown away by the receiver.
Cyclic prefix Cyclic prefix
Circular Convolution: Key Properties
34
Consider an N-point signal x[n]
Cyclic Prefix (CP) insertion: If x[n] is extended by copying the last samples of the symbols at the beginning of the symbol:
Key Property 1:
Key Property 2:
x n n Nx n
x n N v n
h x n h x n n N
k kh x n H X
OFDM with CP for Channel w/ Memory
35
To send N samples S = (S0, S1, …, SN-1)
First apply IFFT with scaling by :
Then, add cyclic prefix
This is inputted to the channel
The channel output is which can be viewed as
Remove cyclic prefix to get . (We know that .)
Then apply FFT with scaling by :
By circular convolution property of DFT,
s N s N s s N
rp N rp N N
No ICI!
N
h h h h
N
k k kR H S k k kR H S kk
k
RSH
zero-padded to length N
MATLAB Example (1/2)
36
S = [1 -1 2 4 5 -1 2 -3]; % data streamh = [1 0.3 0.1];
% OFDM transmitterN = 4; % Number of data symbols per OFDM symboln = length(S)/N; % Number of data blocksSt = (reshape(S,N,n)).'; % Reshape stream to matrix for
% easier addition of cyclic prefixst = (sqrt(N))*ifft(St,[],2); % Calculate the IFFT with scaling
v = length(h)-1;xt = [st(:,(N-(v-1)):N) st]; % Add Cyclic Prefixx = (reshape(xt.',((N+v)*n),1)).'; % Reshape back to stream
St =1 -1 2 45 -1 2 -3
st =3.0 + 0.0i -0.5 - 2.5i 0.0 + 0.0i -0.5 + 2.5i1.5 + 0.0i 1.5 + 1.0i 5.5 + 0.0i 1.5 - 1.0i
cIFFT
w/ scaling(row-wise)
x =0.0 + 0.0i -0.5 + 2.5i 3.0 + 0.0i -0.5 - 2.5i 0.0 + 0.0i -0.5 + 2.5i 5.5 + 0.0i 1.5 - 1.0i 1.5 + 0.0i
1.5 + 1.0i 5.5 + 0.0i 1.5 - 1.0i
MATLAB Example (2/2)
37
%---------------------------% Convolve with channely = conv(x,h)H = fft([h zeros(1,N-v-1)])%---------------------------% OFDM receivery = y(1:((N+v)*n));yt = reshape(y,(N+v),n).'; % Reshape matrix for easier
% removal of cyclic prefixr = yt(:,v+1:v+N); % Eliminate junk (cyclic prefix)Rt = (1/sqrt(N))*fft(r,[],2); % Calculate the FFT with scaling
% "Equalization"S_hatt = zeros(size(Rt)); for i=1:length(H)
S_hatt(:,i) = Rt(:,i)/H(i); endS_hat = reshape(S_hatt.',1,N*n)
y =0.00 + 0.00i -0.50 + 2.50i 2.85 + 0.75i 0.35 - 2.25i 0.15 - 0.75i
-0.55 + 2.25i 5.35 + 0.75i 3.10 - 0.75i 2.50 - 0.30i 2.10 + 0.90i6.10 + 0.30i 3.30 - 0.90i 1.00 - 0.30i 0.15 - 0.10i
H =1.40 + 0.00i 0.90 - 0.30i 0.80 + 0.00i 0.90 + 0.30i
r =2.85 + 0.75i 0.35 - 2.25i 0.15 - 0.75i -0.55 + 2.25i2.50 - 0.30i 2.10 + 0.90i 6.10 + 0.30i 3.30 - 0.90i
Rt =1.4 + 0.0i -0.9 + 0.3i 1.6 + 0.0i 3.6 + 1.2i7.0 + 0.0i -0.9 + 0.3i 1.6 + 0.0i -2.7 - 0.9i
FFTw/ scaling(row-wise)
Shatt =1 -1 2 45 -1 2 -3
% Divide Rk (the kth column) by Hk
S_hat = [1 -1 2 4 5 -1 2 -3]
OFDM System Design: CP
38
A good ratio between the CP interval and symbol duration should be found, so that all multipaths are resolved and not significant amount of energy is lost due to CP.
As a thumb rule, the CP interval must be two to four times larger than the root mean square (RMS) delay spread.
[Tarokh, 2009, Fig 2.9]
Summary
39
The CP at the beginning of each block has two main functions.
As guard interval, it prevents contamination of a block by ISI from the previous block.
It makes the received block appear to be periodic of period N.
Turn regular convolution into circular convolutionPoint-wise multiplication in the frequency domain
OFDM Architecture
40
[Bahai, 2002, Fig 1.11]
Reference
41
A. Bahai, B. R. Saltzberg, and M. Ergen, Multi-Carrier Digital Communications: Theory and Applications of OFDM, 2nd ed., New York: Springer Verlag, 2004.
42
ECS455: Chapter 5 OFDM
5.3 OFDM as Multi-Carrier Transmission
Dr.Prapun Suksompongprapun.com/ecs455
Single-Carrier Digital Transmission
43
Baseband:
Passband:
N
k sk
s t s p t kT
s
sT
t Tp t t
cj f tx t s t e
Review: Multipath Propagation
44
In a wireless mobile communication system, a transmitted signal propagating through the wireless channel often encounters multiple reflective paths until it reaches the receiver We refer to this phenomenon as multipath propagation and it causes fluctuation of the amplitude and phase of the received signal.We call this fluctuation multipath fading.
Wireless Comm. and Multipath Fading
45
v
i ii
y t x t h t n t x t n t
v
i ii
h t t
s s sh t t t T t T t T
s s sh t t t T t T t T
The signal received consists of a number of reflected rays, each characterized by a different amount of attenuation and delay.
ISI(Intersymbol Interference)
Frequency Domain
46
The transmitted signal (envelope)
Channel with weak multipath
Channel with strong multipath
Distortionless Channel
47
[ECS332 2016 Section 3.2]
48
Distortionless Channel[ECS332 2016 Section 3.2]
Observation and a Solution
49
Observation: Delay spread causes ISI
A general rule of thumb is that a delay spread of less than 5 or 10 times the symbol width will not be a significant factor for ISI.
Solution: The ISI can be mitigated by reducing the symbol rate and/or including sufficient guard times between symbols.
Multi-Carrier Transmission
50
Convert a serial high rate data stream on to multiple parallel low rate sub-streams.
Each sub-stream is modulated on its own sub-carrier.
Time domain perspective: Since the symbol rate on each sub-carrier is much less than the initial serial data symbol rate, the effects of delay spread, i.e. ISI, significantly decrease, reducing the complexity of the equalizer.
[Fazel and Kaiser, 2008, Fig 1-4]
Multi-Carrier Modulation
51
0 0 1 0
1 1 0 10 1 1 1
010011101011Old
New
Frequency Division Multiplexing
52
Frequency Domain Perspective: Even though the fast fading is frequency-selective across the entire OFDM signal band, it is effectively flat in the band of each low-speed signal.
[Myung and Goodman, 2008]
[The flatness assumption is the same one that you used in Riemann approximation of integral.]
Frequency Division Multiplexing (FDM)
53
To facilitate separation of the signals at the receiver, the carrier frequencies were spaced sufficiently far apart so that the signal spectra did not overlap. Empty spectral regions between the signals assured that they could be separated with readily realizable filters.
The resulting spectral efficiency was therefore quite low.
Single Carrier vs. Multi-Carrier (FDM)
54
Single Carrier Multi-Carrier (FDM)
Single higher rate serial scheme Parallel scheme. Each of the parallel subchannels can carry a low signaling rate, proportional to its bandwidth.
Multipath problem: Far more susceptible to inter-symbol interference (ISI) due to the short duration of its signal elements and the higher distortion produced by its wider frequency band
Complicated equalization
Long duration signal elements and narrow bandwidth in sub-channels.
Complexity problem: If built straightforwardly as several (N) transmitters and receivers, will be more costly to implement.
BW efficiency problem: The sum of parallel signalling rates is less than can be carried by a single serial channel of that combined bandwidth because of the unused guard space between the parallel sub-carriers.
OFDM
55
OFDM = Orthogonal frequency division multiplexingOne of multi-carrier modulation (MCM) techniques
Parallel data transmission (of many sequential streams)A broadband is divided into many narrow sub-channelsFrequency division multiplexing (FDM)
High spectral efficiencyThe sub-channels are made orthogonal to each other over the OFDM symbol duration Ts.
Spacing is carefully selected.
Allow the sub-channels to overlap in the frequency domain.Sub-carriers are spaced as close as theoretically possible.
Baseband OFDM Symbol
56
Let S = (S1, S2, …, SN) be the information vector.
One baseband OFDM modulated symbol can be expressed as
Note that:N
k kk s s
kt kts t S ST TN
s
k
N
k sk s
N
Tkk s
c t
kts t S j t TTN
ktS jTN
t
Some references may use different constant in the front
Some references may start with different time interval, e.g. [-Ts/2, +Ts/2]
Review: QAM
57
[ECS332 Section 4.6]
Review: QAM
58
[ECS332 Section 4.6]
OFDM and CDMA: Waveform Version
59
Recall: Orthogonality-Based MA (CDMA)
Baseband OFDM modulated symbol:
s
k
N
k sk s
N
Tkk s
c t
kts t S j t TTN
ktS jTN
t
Another “special case” of CDMA!
k kk
s t S c t where k kc c
OFDM: Orthogonality
60
k k
k k
sT
k k sc t c t dt dt T
sT
sk k
s
s
k k tTc t c t dt jj k k T
Tj k k
s
s
T
k ks s
Ts
s
k t k tc t c t dt j j dtT T
T k kk k tj dt
k kT
Frequency Spectrum
61
k
s
N
kk s
t
T
c
kts t S jT
tN
s
s
Tj f
s sTc tN N
t C f T e T f
s s s sT T t T T f
k ks s
kC f C fkt k fT
c t c t j C fT
s
fT
N N
k k k kk k
s t S c t S f S C fsN k f
kk
Tj f
s se TS k fN
T f
This is the term that makes the technique FDM.
Subcarrier Spacing
62
s
fT
Spectrum Overlap in OFDM
N separate QAM signals, at N frequencies separated by the signaling rate.
Each QAM signal carries one of the original input complex numbers.
The spectrum of each QAM signal is of the form with nulls at the center of the other sub-carriers.
s
s
N
kk s
T
TjN k f
sk
f
ks
t
S f e
kts t S j
T T f
TN
S k fN
Normalized Power Density Spectrum
63
[Fazel and Kaiser, 2008, Fig 1-5]
More flat with more sub-carriers
http://www.metageek.net/forums/showthread.php?4912-Chanalyzer-4-User-Guide
OFDM Carriers: N = 4
64
s
ktT
s
ktT
Recall: Multi-Carrier Modulation
65
0 0 1 0
1 1 0 10 1 1 1
010011101011Old
New
Time-Domain Signal
66
N
k sk s
kts t S j t TTN
N
k kk s s
kt kts t S ST TN
Real and Imaginary componentsof an OFDM symbol is the superposition of several harmonicsmodulated by data symbols
[Bahai, 2002, Fig 1.7]
in-phase part quadrature part
Summary
67
So, we have a scheme which achievesLarge symbol duration (Ts) and hence less multipath problemGood spectral efficiency
One more problem:There are so many carriers!
Discrete Fourier Transform (DFT)
68
N
k sk s
ks t S j t t TTN
N
kk
s
s
TnN
ks n s S jTN
sTn
N
kk
knS j N SNN
N
n
Sample the signal in time domain every Ts/N gives
Transmitter produces
We can implement OFDM in the discrete domain!
N
kk
TN
knn S jN N
S S S
where
DFT Samples
69
n N
Ts
s
N
kk
Ts n s nN
knS jNN
N S n
N
k sk s
kts t S j t TTN
Oversampling
70
Oversampling (2)
71
Increase the number of sample points from N to LN on the interval [0,Ts].
L is called the over-sampling factor.
L sTs n s nLN
sTs n s nN
n N n LN
NL
kk s
ks n S jTN
sTn
N
kk
N
kk
N NL
kk k N
NL
kk
knS jLN LNN
knLN S jLN LNN
kn knL N S j jLN LN LN
knL N S j L N S nLN LN
kk
S k NS
N k LN
Zero padding:
Scaling
Oversampling: Summary
72
L sTs n s n L N nLN
sTs n s n N nNn N n LN
kk
S k NS
N k LN
Zero padding:
N points LN points
Summary: Three steps towards modern OFDM
73
1. To mitigate multipath problem Use multicarrier modulation (FDM)
2. To gain spectral efficiency Use orthogonality of the carriers
3. To achieve efficient implementation Use FFT and IFFT
74
ECS455: Chapter 5 OFDM
5.4 OFDM in LTE
Dr.Prapun Suksompongprapun.com/ecs455
Advanced Mobile Wirless Systems
75 [Myung and Goodman, 2008]
(IEEE) (Ultra Mobile Broadband)
LTE: Multiple Access
76
Downlink: OFDMA (or we can simply say OFDM)
Uplink: SC-FDMA
LTE: OFDMA
77
15 kHz subcarrier spacing
Downlink Resource Assignment in Time and Frequency
[Rysavy, 2007, Fig 37]
[Holma and Toskala, 2009, Fig 4.4]
Recommended