CSE 4215 / 5431, Winter 2008 Instructor: N. Vlajic Spread Spectrum Spread Spectrum

30
1 CSE 4215 / 5431, Winter 2008 Instructor: N. Vlajic Spread Spectrum Spread Spectrum (DSSS, FHSS) (DSSS, FHSS) Required reading: Pahlavan 3.8, 3.12.3, 8.3.1

Transcript of CSE 4215 / 5431, Winter 2008 Instructor: N. Vlajic Spread Spectrum Spread Spectrum

1

CSE 4215 / 5431, Winter 2008Instructor: N. Vlajic

Spread SpectrumSpread Spectrum(DSSS, FHSS)(DSSS, FHSS)

Required reading:

Pahlavan 3.8, 3.12.3, 8.3.1

2Principles of Spread Spectrum

Problem of Radio Problem of Radio – frequency dependent fading can wipe out narrowband signals for duration of interference

• solution: spread narrow band signal into a broad band signal using a special code

initially developed for military in order to combat jamming and interception

• power of spread signal is the same as of narrowbandsignal, resulting in a lower power spectral densitydue to larger bandwidth

• types of spreading:1) direct sequence spread spectrum (DSSS)2) frequency hopping spread spectrum (FHSS)

TransmissionTransmission

f f

3Principles of Spread Spectrum

ExampleExample [ narrowband interference ]

4Principles of Spread Spectrum

ExampleExample [ spreading and despreading ]

Sender:

Receiver:

Power density of anidealized narrowband signal.

Power density of sender’s signal after spreading – could be as low as background noise. This makes

the signal difficult to detect …

Signal that arrives at the receiver, together with

narrow- and broad- band interference.

Receiver despreads the signal by converting spread sender’s signal back into a narrowband

signal, while spreading the narrowband interference and

leaving broadband interference.

Receiver applies bandpassfilter to cut off frequencies

left and right of narrow-band signal. The sender’s signal is much stronger than the interference …

filtering …

5Direct Sequence Spread Spectrum

DSSS System DSSS System – takes user’s bit stream and performs an XOR with aso-called chipping sequence

• duration of pulse in chipping sequence (tc) is much smallerthan duration of pulse in original user sequence (ts), tc<<ts

• bandwidth of any digital signal is inversely proportional toduration of transmitted pulse

bandwidth of spread signal ↑ as width of chipping pulse ↓

• spreading factor Gp = ts/tc

bandwidth before spread Ws ⇒ bandwidth after spread Gp·Ws

civil applications use Gp between 10–100, military up to 10,000

• NOTE: if we use +1 and -1 to represent binary 1 and 0,XOR becomes ‘bit-wise’ multiplication

information signal

chippingsequence

resultantsignal

6

ExampleExample [ DSSS: time vs. frequency domain ]

Direct Sequence Spread Spectrum

1/ts

≈ 1/tc

ts

tc

Ws

W

7Direct Sequence Spread Spectrum

ExampleExample [ DSSS in practice ]

Clearly, spreading sequence must be shared by transmitter and receiver!

8DSSS: Important Properties

Correlation of Code Sequence Correlation of Code Sequence – concept of determining how muchsimilarity one set of data (sequence)has with another

• correlation value = 1 ⇒ 2nd sequencematches 1st exactly

• correlation value = 0 ⇒ sequences areunrelated

• correlation value = -1 ⇒ two sequencesare mirror images of each other

Autocorrelation Autocorrelation – correlation of a sequence ci, with N elements, with a phase shift (of n) of itself, where n=1,..,N

CrossCross--Correlation Correlation – correlation of two sequences, ci and cj, for anypossible phase shift between them(n=1,..,N)

∑=

+⋅=ΦN

miiii nmcmc

Nn

1)()(1][∑

=

+⋅=ΦN

mjiij nmcmc

Nn

1)()(1][

normalized inner product

9

CrossCross--Correlation Correlation – correlation between two ‘aligned’ sequencesproduced by two different sources (n=0)

• if cross-correlation between two sequences is 0, sequences are said to be fully orthogonal

• low cross-correlation between two sequences is usefulto the receiver to discriminate among signals generatedby different users

• low cross-correlation between a sequence and noiseis useful to the receiver in filtering out noise

Example of 4 orthogonaldigital sequences.

DSSS: Important Properties

10

Why DSSS Works? Why DSSS Works? – assume n stations transmit 1-bit data (di) using orthogonal m-bits long chipping sequences ci(i=1, .., N)

• orthogonallity:

• signal from station k:

• sum of all signals:

• correlator outputat station k:

kk cs ⋅= id

∑=

⋅=N

iics

1id

( ) ( ) ( )( ) ( ) ( )Kd

ccdccdccdccdccdccd

ccdcs

k

knnkkkk

knnkkkk

k

n

iiik

⋅==⋅++⋅++⋅==⋅++⋅++⋅=

=⎟⎠

⎞⎜⎝

⎛⋅= ∑

=

ooo

ooo

oo

....

....

11

11

1

⎩⎨⎧

≠==≥

=⋅=∑= ji

jilclccc

m

ljiji ,0

,1)()(

1o

inner product

scalar, 1 or -1

DSSS: Important Properties

11

ExampleExample [ DSSS in practice, assuming orthogonal codes ]

• Assume three users share same medium.• Users are synchronized & use 3 out of 4 different 4-bit orthogonal codes:

{-1,-1,-1,-1}, {-1, +1,-1,+1}, {-1,-1,+1,+1}, {-1,+1,+1,-1},

+1 -1 +1

User 1 x

-1 -1 +1

User 2 x

User 3 x

+1 +1 -1 SharedMedium

+

Receiver

DSSS: Important Properties

12

ExampleExample [ DSSS in practice, assuming orthogonal codes, cont. ]

Channel 1: 110 -> +1+1-1 -> ((--1,1,--1,1,--1,1,--1)1),(-1,-1,-1,-1),(+1,+1,+1,+1)Channel 2: 010 -> -1+1-1 -> (+1,-1,+1,-1),((--1,+1,1,+1,--1,+1)1,+1),(+1,-1,+1,-1)Channel 3: 001 -> -1-1+1 -> (+1,+1,-1,-1),(+1,+1,-1,-1),((--1,1,--1,+1,+1)1,+1,+1)Sum Signal: (+1,-1,-1,-3),(-1,+1,-3,-1),(+1,-1,+3,+1)

Channel 1

Channel 2

Channel 3

Sum Signal

DSSS: Important Properties

13

ExampleExample [ DSSS in practice 2, assuming orthogonal codes, cont. ]

• Each receiver takes sum signal and integrates by code sequence of desired transmitter.

• Integrate over T seconds to smooth out noise.

x

SharedMedium

+

Decoding signal from station 2

Integrate over T sec

DSSS: Important Properties

14

ExampleExample [ DSSS in practice 2, assuming orthogonal codes, cont. ]Sum Signal: (+1,-1,-1,-3),(-1,+1,-3,-1),(+1,-1,+3,+1)Channel 2 Sequence: (-1,+1,-1,+1),(-1,+1,-1,+1),(-1,+1,-1,+1)Correlator Output: (-1,-1,+1,-3),(+1,+1,+3,-1),(-1,-1,-3,+1)Integrated Output: -4, +4, -4Binary Output: 0, 1, 0

Sum Signal

Channel 2Sequence

CorrelatorOutput

IntegratorOutput

-4

+4

-4

X

=

DSSS: Important Properties

Receiver 2 successfully detects is sequence !!!

15

ExampleExample [ DSSS in practice 2, assuming orthogonal codes, cont. ]Sum Signal: (+1,-1,-1,-3),(-1,+1,-3,-1),(+1,-1,+3,+1)Channel 3 Sequence: (-1,-1,+1,+1),(-1,-1,+1,+1),(-1,-1,+1,+1)Correlator Output: (-1,+1,-1,-3),(+1,-1,-3,-1),(-1,+1,+3,+1)Integrated Output: -4, -4, +4Binary Output: 0, 0, 1

Sum Signal

Channel 3Sequence

CorrelatorOutput

IntegratorOutput

+4

-4

X

=

DSSS: Important Properties

-4Receiver 3 successfully detects is sequence !!!

16

ExampleExample [ DSSS in practice 2, assuming orthogonal codes, cont. ]

Sum Signal: (+1,-1,-1,-3),(-1,+1,-3,-1),(+1,-1,+3,+1)Unused 4th Sequence: (-1,+1,+1,-1),(-1,+1,+1,-1),(-1,+1,+1,-1)Correlator Output: (-1,-1,-1,+3),(+1,+1,-3,+1),(-1,-1,+3,-1)Integrated Output: 0, 0, 0Binary Output: ??, ??, ??

DSSS: Important Properties

Interception impossible, unless the actual/correct user code is known!!!

17

Autocorrelation Autocorrelation – a code has good autocorrelation properties if 1) inner product with itself is large 2) inner product with a shifted version of itself is small

• good autocorrelation is essential for synchronizationbetween sender and receiver

if correlation between received data and chipping sequenceis 1, the receiver has detected “beginning of a symbol” andis thus synchronized with sender

ExampleExample [ Barker code – used for spreading in IEEE 802.11 ]

String of digits ci=±1 , of length N, s.t. NkforkjcjckN

j,..,1,1)()(

1=∀≤+⋅∑

=

• there are Barker codes of lengths 2, 3, 4, 5,7, 11, 13 – it is conjectured that no longerBarker codes exist

• 802.11 uses 11-bit Baker sequence

DSSS: Important Properties

18DSSS: Important Properties

ExampleExample [ DSSS in practice 2, assuming orthogonal codes, cont. ]Sum Signal: (+1,-1,-1,-3),(-1,+1,-3,-1),(+1,-1,+3,+1)Channel 2 Sequence: (-1,+1,-1,+1),(-1,+1,-1,+1),(-1,+1,-1,+1)Correlator Output: (-1,-1,+1,-3),(+1,+1,+3,-1),(-1,-1,-3,+1)Integrated Output: -4, +4, -4Binary Output: 0, 1, 0

19DSSS Codes

• pseudorandom number (PN) sequence

approximately orthogonal (low, but non-zerocross-correlation), with zero auto-correlation ☺

produced by pseudo-random noise generatorusing a specific algorithm and a specific seed⇒ the same chipping stream can be generatedboth at transmitter and receiver

unless somebody knows the algorithm and theseed, it is impractical to predict the sequence

used in FHSS and DSSS systems

• orthogonal codes

perfectly orthogonal ☺ (zero cross-correlation),only in perfectly synchronized environments ,with non-zero auto-correlation

variable-rate orthogonal codes exist, and areconvenient in multi-rate systems

used in DSSS systems

Types of SpreadingTypes of SpreadingCodes / SequencesCodes / Sequences

20

PN Sequence PN Sequence – binary noise-like sequence that exhibits followingproperties:

• balance property – in a long sequence the fraction ofbinary ones should approach ½

• run property – run is defined as a sequence of all 1-s or a sequence of all 0-s

about 1/2 of runs of each type should be of length 1,1/4 of length 2, 1/8 of length 3, etc.

• independence – no one value in sequence can be inferredfrom the others

• correlation property – good auto- and cross- correlationproperties

1)()()2()2()1()1( ... >=⋅⋅⋅ +++= Kmm iiiiiiii cccccccc o

0)()()2()2()1()1( ... =⋅⋅⋅ +++= mm jijijiji cccccccc o

each bit equally likely to be 1 or -1 => each product equally likely to be 1 or -1 => average value of correlator =0

DSSS: PN Sequences

‘randomness’property

21

LFSR LFSR – consists of n-bit shift register, modulo-2 adders (XOR gates),and feedback loops:

• sequence generated by an LSFR can be nearly random, with longperiods (up to 2n-1, where n – size of shift register)

• LSFRs are easy to implement in hardware, and can run at high speed,which is important as the spreading rate is higher than data rate

• with each different initial state of the shift buffer (except all 0-s), theoutput random sequence begins at a different point in its cycle, but it is the same sequence

Implementation of Implementation of – usually in a form of a circuit consisting of XORgates and a shift register, called Linear FeedbackShift Register

PN SequencesPN Sequences

DSSS: PN Sequences

22DSSS: PN Sequences

ExampleExample [ circuit with shift register for generating PN sequence ]

23

Walsh Codes Walsh Codes – most common orthogonal codes (used in CDMA)

• a set of Walsh codes of length n correspond to rows of aspecial square nxn matrix known as Hadamard matrix

• Hadamard matrices have binary coefficients, and are defined recursively:

• Walsh codes provide orthogonal code sequences, for DSSS,by mapping 0 to -1 and 1 to +1

• NOTE: not all Walsh sequence alternate quickly between +1and -1 =>

poor auto- and cross- correlation for time-offset ≠ 0inferior spreading behavior

DSSS: Orthogonal Codes

W2n=Wn WnWn Wn

c

logical NOT of bits in matrix

24DSSS: Orthogonal Codes

Variable Length Variable Length – 3G CDMA systems support users at different data rates

• if a spreading sequence of length N=2n is used forRmin data rate => transmitted data rate is N*Rmin

• for a data rate of 2*Rmin, a spreading sequenceof length N/2=2n-1 will produce the same outputrate of N*Rmin

• thus, a code of length 2n-k is needed for rate 2k*Rmin

• system requirement: codes of different lengththat are still orthogonal with each other

Orthogonal CodesOrthogonal Codes

⎥⎦⎤

⎢⎣⎡=⎥⎦

⎤⎢⎣⎡

⎥⎦⎤

⎢⎣⎡ −−

secsec minmin ** bitspreadbit

bit

bitspread RNRN

R=2 bit/secN = 8 spread_bit/bit

R=4 bit/secN = 4 spread_bit/bit

16 spread_bit/sec

25DSSS: Orthogonal Codes

OVSF Codes OVSF Codes – generated from Walsh codes, using a tree structure

• node adopts the code from its predecessor and concatenatesit either with a copy of this code (1st successor) or its inverse(2nd successor)

(Orthogonal Variable (Orthogonal Variable Spreading Factor)Spreading Factor)

W2W4

W8

26DSSS: Orthogonal Codes

Properties ofProperties ofOVSF CodesOVSF Codes

• codes of the same layer are orthogonal

• any two codes of different layers are orthogonal, exceptfor the case that one of the two codes is a mother codeof the other

• once a particular code is used, simultaneous use of itsdescendant or mother code is not allowed, since theirencoded sequences are indistinguishable

ExampleExample [ OVSF code blocking ]

Assume C4,2 is assigned to a user.

Children codes C8,3 and C8,4, andmother codes C1,1 and C2,1 cannotbe assigned to users requestinghigher data rates.

27Frequency Hopping Spread Spectrum

FHSS Principles FHSS Principles – signal is transmitted over seemingly random seriesof n radio frequencies*, hopping from frequency tofrequency at fixed intervals

• frequency hopping pattern is known (only) to senderand receiver

• FHSS is called ‘spread spectrum’ technique, because thespectrum of original signal is spread over a band that isn times larger than the original signal band

• benefits: attempt to jam the signal on one frequencysucceeds only at destroying a few bits

(*) These are ‘central’ (carrier) frequencies, in the sense of FDM.

28Frequency Hopping Spread Spectrum

FHSS System FHSS System – n channels, each centered around correspondingcarrier frequency fc(i) (i=1,..,n), are allocated for FH signal

• modulation: based on a hopping sequence, carrier frequency fc(i) (i=1,..,n) is generated by a frequency synthesizer

• demodulation: inverse operation of modulation process

• sender and receiver must be synchronized!

• multiple simultaneous transmissions from several users arepossible, as long as each uses different frequency hopping sequence and non of them ‘collide’ - no more than one senderuses the same band at any instant of time

29Frequency Hopping Spread Spectrum

Slow vs. Fast FHSS Slow vs. Fast FHSS • slow FHSS – multiple data bits per frequency hop

• fast FHSS – multiple frequency hops per data bit

30

FSSSFSSS

Advantages:

• Can be arranged to avoid portions ofthe spectrum (i.e. those occupied byother systems that are most affectedby frequency selective fading).

• Not as much affected by near-far problem as DSSS.

Disdvantages:

• More susceptible to narrowband inter-ference.

• Hard to coordinate the timing of alltransmitters so that they hop at the same time.

DSSSDSSS

Advantages:

• Very good noise and anti-jamperformance.

• Most difficult to intercept.

• Fights well against multipath effectsdue to autocorrelation of each code.

Disdvantages:

• Long acquisition time due to long chip sequence.

• Vulnerable to the near-far problem.

DSSS vs. FHSS