Professional Documents
Culture Documents
for CDMA
Anders Høst-Madsen
(with contributions from Yu Jaechon, Ph.D student)
1
Overview
Introduction
Communications Signal Processing
CDMA
3G CDMA
Multiuser Detection (MUD)
Basics
Blind MUD
Group-blind MUD
Performance
Some Impression of
a Changing Korea
Limited spectrum
Limited power
Complex channels
Multipath, shading
Interference: Other users, other electronics
Solutions
Com- Unknown
Speech Transmitter Receiver
pression channel
Data
Frequency-selective fading:
ISI
Doppler spread:
Time-varying channel
Path loss
Space-selective fading:
Beamforming
DS/CDMA†
Principle Applications
Users share frequency and time US IS-95 standard
Distinguished by unique code Korean cellular system
Separated by correlation with code IMT-2000 (wide band (WB) CDMA)
Part of future European Frames
standards
cdma2000
North America, Korea?
Compatible with IS-95
Promoted by Qualcomm
Long codes, synchronous
Wideband CDMA (WCDMA)
Europe, Japan
Compatible with GSM
Promoted by Nokia, Ericsson
Long/short codes, asynchronous
FDD and TDD modes
Long versus Short Codes
Principle Principle
Code “infinite” Code repeats on every symbol
Applications Applications
IS-95 W-CDMA (FDD)?
cdma2000 W-CDMA (TDD)
Advantages Advantages
Interference averaged out More signal processing options
Disadvantages Higher capacity
Limited signal processing options Disadvantages
Without advanced processing, high
interference
Multi-user Detection
K
r (t ) b A s (t ) n(t ),
k 1
k k k t [0, T ]
where
bk {-1,+1} is the k’th user’s transmitted bit.
Ak is the k’th user’s amplitude
sk(t) is the k’th user’s waveform (code or PN sequence)
n(t) is additive, white Gaussian noise.
Conventional detector
T
b1
y1
Decision
t=iT
s1(t)
r(t) T b1
t=iT
y2
Decision
s2(t)
.........
.........
T bK
yK
Matched Decision
filter bank t=iT
sK(t)
Detection of CDMA signals
y k sk (t )r (t )dt r (t ) b A s (t ) n(t ),
k 1
k k k t [0, T ]
0
T T T
Ak bk sk (t ) sk (t )dt A b s (t ) s (t )dt s (t )n(t )dt
ik
i i k i k
0 0 0
Desired signal Multiple Access Interference (MAI) noise
In the conventional detector, the estimate of the k’th bit is
bk sgn( yk )
If the MAI term is not small, the error probability will be large
MAI can be kept small by T
Power control (all Ai same value)
0
small cross correlation between codes ( sk (t ) si (t )dt small)
Signals on Vector Form
y1 s1 (t )r (t )dt
0
T
y 2 s2 (t )r (t )dt
0
r (t ) b1 A1s1 (t ) b2 A2 s2 (t ) n(t )
Signals on Vector Form
r (t ) b1 A1s1 (t ) b2 A2 s2 (t ) n(t )
Signals on Vector Form
b1 A1 s1 (t ) s1 (t )dt
0
T
b2 A2 s2 (t ) s2 (t )dt
0
Signals on Vector Form
b1 A1 s1 (t ) s1 (t )dt b2 A2 s1 (t ) s 2 (t )dt s1 (t )n(t )dt
0 0 0
T T T
b2 A2 s2 (t ) s2 (t )dt b1 A1 s 2 (t ) s1 (t )dt s 2 (t )n(t )dt
0 0 0
Signals on Vector Form
0 =1
0
y1 b1 A1 s1 (t ) s1 (t )dt b2 A2 s1 (t ) s 2 (t )dt s1 (t )n(t )dt
=r12
0
=n1
T T T
0 =1
0
y 2 b2 A2 s2 (t ) s2 (t )dt b1 A1 s 2 (t ) s1 (t )dt s 2 (t )n(t )dt
=r12
0
=n2
R A b n
Detection of CDMA signals 2
R i , j si (t ) s j (t )dt , R i ,i 1
0
A1 0 0
0 A2 0
A
0 0 AK
E[nn T ] R
Optimum Multi-user Detector
correlator
output
correlator Viterbi
r (t ) algorithm
...
...
correlator
b arg max p ( y | b) bk arg min P ( bk )
b{1, 1} K {1, 1} K
Decorrelating detector
y RAb n
R 1y Ab R 1n A1b1 ,..., AK bK n
T ~~ T ] R 1 no MAI
~ , E[ nn
b sgn(R 1y)
sgn( Ab) b
General linear detector
Ly LRAb Ln
b sgn(Ly)
Linear MMSE detector
2
Minimizes E Ly Ab
2
1
2
Gives L R A
2
Lower bit error rate (BER) than decorrelating
Parallel Interference Canceller (PIC)
Received signal
y RAb n
Suppose b known:
y (R I)Ab RAb n (R I)Ab Ab n
Use initial estimate of b
bˆ (1) sgn(y )
y ( 2) y (R I) Abˆ (1) , bˆ ( 2) sgn(y ( 2) )
y (3) y (R I) Abˆ ( 2) , bˆ (3) sgn(y (3) )
Advantages
works for long codes
Each stage simple (no matrix inversion)
Problems
If bit wrong, magnifies MAI
Many stages needed
Blind Multiuser Detection
MA
Interference MA
Interference
Blind MUD
Only code of desired user known
Similar to beam forming in antenna
arrays
Adaptive IC
Works only for short codes
Mobile station
MA
Interference
System Model - Synchroneous CDMA
Conventional detector
bˆ1 sgn s1T r sgn
M 1
k 0
s1[k ]r[k ]
K
s1T r b1 A1s1T s1
bk Ak s1T s k s
k 2
T
1n
Desired noise
MAI
General linear detector:
b1 sgn w 1T r
K
w 1T r b1 A1w 1T s1
b
k 2
Ak w 1T s k w
k n
T
1
Desired noise
MAI
The Decorrelating Detector
Choose w1 so that
w1T s1 1
w1T s k 0, k 2,3,..., K
Detector:
b1 sgn w 1T r
0
K
w 1T r b1 A1w 1T s1
k 2
bk Ak w 1T s k w
T
1 n
Desired
noise
MAI
b
1 A1 w
T
1 n
Desired noise
The MMSE Detector
Choose w1 to satisfy
w
1
T 2 arg min E b 2 2( w T r )b ( w T r )(r T w )
w1 arg min E b1 w1 r
1 1 1 1
w1 1
Solution
w1 arg min 1 2w1T E[rb1 ] w1T E[rr T ]w1
w1
K
r b A s
k 1
k k k n
The MMSE Detector
Choose w1 to satisfy
w
1
T 2 arg min E b 2 2( w T r )b ( w T r )(r T w )
w1 arg min E b1 w1 r
1 1 1 1
w1 1
Solution
w1 arg min 1 2w1T E bk Ak s k n b1 w1T E[rr T ]w1
K
w1 k 1
T
Ebk b1 Ak s k Enb1 w1T E[rr T ]w1
K
arg min 1 2w1
w1 k 1
arg min 1 2w1T Eb1b1 A1s1 Ebk b1 Ak s k Enb1 w1T E[rr T ]w1
K
w1 k 2
=1 =0 =0
arg min 1 2w1T A1s1 w1T E[rr T ]w1
w1
The MMSE Detector
Choose w1 to satisfy
w
1
T 2 arg min E b 2 2( w T r )b ( w T r )(r T w )
w1 arg min E b1 w1 r
1 1 1 1
w1 1
Solution
w1 arg min 1 2w1T A1s1 w1T E[rr T ]w1
w1
0
w1
1 2w1T A1s1 w1T E[rr T ]w1 2 A1s1 2E[rrT ]w1
1
A1s1 Rw 1 w1 A1R s1 R
The Blind MMSE Detector
Choose w1 to satisfy
w1
T 2
w1 arg min E b1 w1 r arg min E b12 2(w1T r)b1 (w1T r)(r T w1 )
w1
Solution
w1 A1R 1s1
T 1
T 1
bˆ1 sgn w1T r sgn A1s1 R r sgn s1 R r
N
ˆ 1
R E[rrT ] R ri riT
N i 1 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit ...
r1 r2 r3 r4 r5 r6 r...
Subspace Methods
Computation of M A U s s1UTs
Direct EVD n 1
1
Estimate R: R ri riT
n i 0
Calculate EVD of R
Find Us and s from K largest eigenvalues
Singular Value Decomposition
Calculate SVD of [r0 r1 ... rn-1]
Find Us and s from K largest singular values
Subspace tracking
Low complexity methods of dynamically updating EVD/SVD
complexity O(MK2) (e.g., F2)
or O(MK) (e.g., PASTd)
Group-Blind MUD
Hybrid detector
Decorrelating among known users
MMSE with respect to unknown users
Has convenient, simple expression
Algorithm 1 T
Projection onto subspace of known codes P S S S
T
S
Orthogonal Projection P I P
EVD ~ ~
s 0 0 U Ts
~ T
~ ~
P RP U s U n U o 0
~
I 0 U n
2
0 0 0 U To
~
~ ~ ~ ~ ~
s diag(1 , 2 ,..., K~ ), i 2
Detector b
ˆ sgn ST S 1 T
~ ~ ~
S I RU s s1UTs r
Group-Blind Detector
Performance Simulations
4 Unknown users 16
Group-blind
All same power
14
1 Blind
12
2
10
SINR(dB)
Direct
8 Non-blind
Single user
4
-2
50 100 150 200 250 300 350 400
Bits
Simulation Results
20
7 Known users 18
Full
10 Unknown users 16
4 Unknown users
with power 0dB 14
Group-blind
6 unknown users 12
with power -6dB Blind
10
SINR(dB)
Direct
8
2 Non-blind
6 1
Single user
4
-2
50 100 150 200 250 300 350 400
Bits
Simulation Results, BER
0
10
7 Known users
-1
4 Unknown users 10
Blocksize fixed at
200 -2
10
20 different code Non-blind
matrices
Ensemble of 140 -3
BER
10 Blind
for each SNR value
Upper curve: 90-
-4
percentile 10
-6
10
0 2 4 6 8 10 12 14 16 18 20
SNR (dB)
Summary
Multiuser Detection
Gives considerably performance improvement
Most useful for short codes
PIC also useful for long codes
(Group) blind MUD
For short code MUD
More useful in real environments
Future Developments
Further development of PIC
Practical, real-time implementation of MUD
Complexity reduction of (group-) blind MUD