1 Multiuser Detection for CDMA Anders Høst-Madsen Anders Høst-Madsen (with contributions from Yu Jaechon, (with contributions from Yu Jaechon, Ph.D student) Ph.D student) TR TR Labs Labs & University of & University of Calgary Calgary
Dec 21, 2015
1
Multiuser Detection for CDMA
Anders Høst-MadsenAnders Høst-Madsen(with contributions from Yu Jaechon, Ph.D student)(with contributions from Yu Jaechon, Ph.D student)
TRTRLabsLabs & University of Calgary & University of Calgary
Overview
Introduction Communications Signal Processing
CDMA 3G CDMA
Multiuser Detection (MUD) Basics Blind MUD Group-blind MUD Performance
Some Impression ofa Changing Korea
Compared with 2 years ago A lot has changed, fast
Internet 90% of subway ads about internet All ads have internet address
Cell phones Everyman’s Fashion item Small!
Even babies in Korea have mobile phones!
The Demands
“The future of the internet is wireless,” Steve Balmer, CEO Microsoft Now
Internet through telephone Wireless voice phones
Emerging High-speed internet (ADSL, cable, satellite, fixed wireless) Some wireless terminals (Nokia 9000, Palm VII, RIM Blackberry) Web on wireless phones
Future Wireless everything
– Internet terminals– LAN, home networks– Devices (Bluetooth)
Wireless video phones? More webphones than wired internet connections in 2004 (Ericsson, Nokia, Motorola) All wireless phones web enabled from 2001 (Nokia)
The Constraints
Limited spectrum Limited power Complex channels
Multipath, shading Interference: Other users, other electronics
Solutions
Efficient compression Coding Channel signal processing Efficient, cost-controlled
media access Software radio
New standards for mobile communications 3rd generation systems W-CDMA cdma2000
4th generation by year 2010
The Communication Channel
Com-pression
Transmitter ReceiverSpeech
Data
Video
UnknownUnknownchannelchannel
Sourcecoding
Sourcecoding Channel
coding
Channelcoding
Adaptivetransmission
Adaptivetransmission
Signalprocessing
Signalprocessing
Channel Dispersion (Low pass) filter effect (wireline
filters, frequency selective fading) Intersymbol Interference (ISI) Non-linear distortions (power
amplifiers)
Multipath Slow fading Time selective
fading Space-selective
fading
Interference External Interference (other
electronics, communications, cars)
Multiple Access Interference (MAI) (other users using the same channel)
Echo (line hybrids, room microphones, hands-free mobiles)
The Wireless Channel
Frequency-selective fading:ISI
Doppler spread:Time-varying channel
Space-selective fading:Beamforming
Path loss
DS/CDMA†
Applications US IS-95 standard Korean cellular system IMT-2000 (wide band (WB) CDMA) Part of future European Frames
standards
Principle Users share frequency and time Distinguished by unique code Separated by correlation with code
†Direct Sequence Code Division Multiple Access
3G CDMA
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 Code “infinite”
Applications IS-95 cdma2000
Advantages Interference averaged out
Disadvantages Limited signal processing options
Principle Code repeats on every symbol
Applications W-CDMA (FDD)? W-CDMA (TDD)
Advantages More signal processing options Higher capacity
Disadvantages Without advanced processing, high
interference
Long Codes Short Codes
Multi-user Detection
Multiple-Access Interference (MAI) Due to non-orthogonality of codes Caused by channel dispersion
Multiuser detection reduction of MAI through
interference cancellation 2-4 times capacity increase of
cellular systems Probably part of future wireless
systems (cellular, satellite, WLAN)– Included in WCDMA TDD standard– Several companies involved:
Siemens, Nokia, Nortel– Some field trials [Siemens]
History of Multi-user Detection
Optimum Multi-user Detector
Linear Multi-user Detector
Subtractive Interference Cancellation Detector
Decorrelating Detector
Parallel IC
Successive IC
Blind MMSE Detector
Blind Decorrelating Detector
Minimum Mean Squared Error (MMSE) Detector
Group-Blind MMSE
Synchronous CDMA
K users with no ISI. Sufficient to consider
signal in single symbol interval, i.e., [0,T]
Received signal
r t b A s t n t t Tk k kk
K
( ) ( ) ( ), [ , ]
1
0
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
Matchedfilter bank
s1(t)
s2(t)
sK(t)
T
t = i T
t = i T
t = i T
y1
y2
yK
Decision
Decision
Decision
b1
......... .........
r(t) T
T
b1
bK
Detection of CDMA signals
The signal is processed by cross correlation (or matched filtering):
In the conventional detector, the estimate of the k’th bit is
If the MAI term is not small, the error probability will be large MAI can be kept small by
small cross correlation between codes ( small) Power control (all Ai same value)
y s t r t dt
A b s t s t dt A b s t s t dt s t n t dt
k k
T
k k k k
T
i i k i
T
i kk
T
( ) ( )
( ) ( ) ( ) ( ) ( ) ( )
0
0 0 0
sgn( )b yk k
Desired signal Multiple Access Interference (MAI) noise
s t s t dtk i
T( ) ( )
0
r t b A s t n t t Tk k kk
K
( ) ( ) ( ), [ , ]
1
0
Signals on Vector Form
The signal is processed by cross correlation (or matched filtering):
dttrtsy
dttrtsy
T
T
0
22
0
11
)()(
)()(
)()()()( 222111 tntsAbtsAbtr
dttntsAbtsAbtsy
dttntsAbtsAbtsy
T
T
0
22211122
0
22211111
)()()()(
)()()()(
Signals on Vector Form
The signal is processed by cross correlation (or matched filtering):
)()()()( 222111 tntsAbtsAbtr
dttntsAbtsAbtsy
dttntsAbtsAbtsy
T
T
0
11122222
0
22211111
)()()()(
)()()()(
Signals on Vector Form
The signal is processed by cross correlation (or matched filtering):
dttstsAb
dttstsAb
T
T
0
2222
0
1111
)()(
)()(
dttntsAbtsAbtsy
dttntsAbtsAbtsy
T
T
0
11122222
0
22211111
)()()()(
)()()()(
Signals on Vector Form
The signal is processed by cross correlation (or matched filtering):
dttstsAb
dttstsAb
T
T
0
2222
0
1111
)()(
)()(
dttstsAb
dttstsAb
T
T
0
1211
0
2122
)()(
)()(
dttnts
dttnts
T
T
0
2
0
1
)()(
)()(
dttstsAby
dttstsAby
T
T
0
22222
0
11111
)()(
)()(
dttstsAb
dttstsAb
T
T
0
1211
0
2122
)()(
)()(
dttnts
dttnts
T
T
0
2
0
1
)()(
)()(
Signals on Vector Form
The signal is processed by cross correlation (or matched filtering):
=1
=1 =12
=12
=n1
=n2
2121122
1122211
2
1
nAbAb
nAbAb
y
y
2
1
221112
221211
n
n
AbAb
AbAb
2
1
22
11
12
12
1
1
n
n
Ab
Ab
2
1
2
1
2
1
12
12
0
0
1
1
n
n
b
b
A
A
R A b n
Detection of CDMA signals 2
The output y=[y1, y2,...,yK]T is sufficient statistic for b=[b1, b2,...,bK]T
y RAb n
y b
R R
A
nn R
[ , ,..., ] , [ , ,..., ]
( ) ( ) ,
[ ]
, ,
y y y b b b
s t s t dt
A
A
A
E
KT
KT
i j i j
T
i i
K
T
1 2 1 2
0
1
2
1
0 0
0 0
0 0
Optimum Multi-user Detector
Too complex : 2K Comparison Impractical
S. Verdú, Optimum multiuser signal detection, PhD thesis, University of Illinois at Urbana-Champaign, Aug. 1984.
)|(maxarg}1,1{
bbb
ypK
)(minarg}1,1{
kk bPbK
Viterbialgorithm ......
output correlator
correlator
correlator
)(tr
Linear Multi-User Detectors
Decorrelating detector
General linear detector
Linear MMSE detector Minimizes
Gives Lower bit error rate (BER) than decorrelating
y RAb n
R y Ab R n n nn R
b R y Ab b
1 11 1
1
1
A b A b EK KT T,..., ~, [~~ ]
sgn( ) sgn( )
no MAI
Ly LRAb Ln
b Ly
sgn( )
E Ly Ab2
2
L R A 2 2 1
Parallel Interference Canceller (PIC)
Received signal
Suppose b known:
Use initial estimate of b
Advantages works for long codes Each stage simple (no matrix inversion)
Problems If bit wrong, magnifies MAI Many stages needed
nRAby
nAbAbIRnRAbAbIRy )()(
)sgn(ˆ,ˆ)(
)sgn(ˆ,ˆ)(
)sgn(ˆ
)3()3()2()3(
)2()2()1()2(
)1(
ybbAIRyy
ybbAIRyy
yb
Blind Multiuser Detection
Traditional, non-blind MUD Codes of all users known Sufficient statistics
Blind MUD Only code of desired user known Similar to beam forming in antenna
arrays Works only for short codes Mobile station
M AInterference
Adaptive IC
M atchedFilter
Detector
Non-blindM ultiuserDetector
M AInterference
M AInterference
System Model - Synchroneous CDMA
Signal is sampled at chip rate (from matched filter)
Received signal on vector form
bk (1): transmitted bits
Ak: received amplitude
sk: code waveforms n: white, additive noise
nsr
K
kkkk Ab
1
Linear Detectors
Conventional detector
General linear detector:
noise
1
MAI
21
Desired
11111
1
0 111 ][][sgnsgnˆ
nsssssrs
rsrs
TK
kk
Tkk
TT
M
k
T
AbAb
kkb
sgnb
b A b A
T
T Tk k
Tk
k
KT
1 1
1 1 1 1 1 1
2
1
w r
w r w s w s w nDesired
MAI
noise
The Decorrelating Detector
Choose w1 so that
Detector:
sgnb
b A b A
b A
T
T Tk k
Tk
k
KT
T
1 1
1 1 1 1 1 1
0
2
1
1 1 1
w r
w r w s w s w n
w n
Desired
MAI
noise
Desired noise
w s
w s
1 1
1
1
0 2 3
T
Tk k K
, , ,...,
Choose w1 to satisfy
Solution
The MMSE Detector
Choose w1 to satisfy
2111
1
minarg rwww
TbE
11111 ][][21minarg1
wrrwrwww
TTT EbE
))(()(2minarg 111121
1
wrrwrww
TTT bbE
nsr
K
kkkk Ab
1
111111 ][21minarg
1
wrrwnswww
TTK
k kkkT EbAbE
The MMSE Detector
Choose w1 to satisfy
Solution
2111
1
minarg rwww
TbE ))(()(2minarg 111121
1
wrrwrww
TTT bbE
112 1111111 ][21minarg
1
wrrwnssww
TTK
k kkkT EbEAbbEAbbE
=1 =0 =0 11111 ][21minarg1
wrrwsww
TTT EA
111 111 ][21minarg
1
wrrwnsww
TTK
k kkkT EbEAbbE
The MMSE Detector
Choose w1 to satisfy
Solution
2111
1
minarg rwww
TbE
111111 ][21minarg1
wrrwswww
TTT EA
111111
][21 wrrwsww
0 TTT EA
))(()(2minarg 111121
1
wrrwrww
TTT bbE
112 sA 1][2 wrrTE
R111 Rws A 1
111 sRw A
The Blind MMSE Detector
Choose w1 to satisfy
Solution
))(()(2minargminarg 111121
2111
11
wrrwrwrwwww
TTTT bbEbE
11
11 sRw A
rwTb 11 sgnˆ
][ TE rrR
rRs 111sgn TA rRs 1
1sgn T
Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit ...
N
i
TiiN
1
1ˆ rrR
r1 r2 r3 r4 r5 r6 r...
Chip rate sampling
Subspace Methods
Correlation matrix of received data
The correlation matrix for CDMA has EVD
The MMSE detector is given by:
R rr SA S I S s s s E T TK[ ] , , ,...,2 2
1 2
R U U0
0 I
U
U
U S
s ns s
T
nT
s K i
2
12diag( ,..., ),
span( ) span( )s
)sgn(ˆ
1
rMs
UUM
A
A
Tii
Tsss
b
Subspace Tracking
Computation of Direct EVD
Estimate R:
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)
R r r
1
0
1
ni iT
i
n
Tsss UUMA
1
Group-Blind MUD
Multiple-Access Interference (MAI) Intra-cell interference: users in same
cell as desired user Inter-cell interference: users from
other cells Inter-cell interference 1/3 of total
interference
Intra-cell MAI
Inter-cell MAI
Blind Multi-User Detection
Non-Blind multi-user detection Codes of all users known Cancels only intracell interference
Blind multi-user detection Only code of desired user known Cancels both intra- and inter-cell
interference
Group-blind MUD
Codes of some, but not all, users known
Cancels both intra- and inter-cell interference
Uses all information available to receiver
Decreases estimation error Decreases BER
Potentially less computationally complex Only one adaptive IC common to all
users. Adaptive IC can have lower
complexity than pure blind IC
Group-Blind Hybrid Detector
Hybrid detector Decorrelating among known users MMSE with respect to unknown users Has convenient, simple expression
Algorithm Projection onto subspace of known codes Orthogonal Projection EVD
Detector
P S S S ST T1
P I P
P RP U U U
0 0
0 I 0
0 0 0
U
U
U
~ ~ ~
~ ~
~
~
~diag(
~,~
,...,~
),~
~
s n o
s sT
nT
oT
s K i
2
1 22
rUURISSSb Tsss
TT ~~~sgnˆ 11
Group-Blind Detector
Performance Simulations
K=7 users with known codes Variable number (4 or 10) of users with unknown codes Purely random codes of length M=31 SNR=20 dB Ensemble of 50 different random code assignments is generated Median signal to inference and noise ratio (SINR)
Over all code choices and known users total ensemble of 350
Simulation Results
50 100 150 200 250 300 350 400-2
0
2
4
6
8
10
12
14
16
18
20
SIN
R(d
B)
Bits
Full
Group-blind
Blind
Direct
Non-blind
Single user
1
2
7 Known users 4 Unknown users All same power
Simulation Results
7 Known users 10 Unknown users
4 Unknown users with power 0dB
6 unknown users with power -6dB
50 100 150 200 250 300 350 400-2
0
2
4
6
8
10
12
14
16
18
20
SIN
R(d
B)
Bits
Full
Group-blind
Blind
Direct
Non-blind
Single user
2
1
Simulation Results, BER
7 Known users 4 Unknown users Blocksize fixed at
200 20 different code
matrices Ensemble of 140
for each SNR value Upper curve: 90-
percentile Lower curve: median
0 2 4 6 8 10 12 14 16 18 2010
-6
10-5
10-4
10-3
10-2
10-1
100
SNR (dB)
BE
R
Group-blind
Blind
Non-blind
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