VNIT, Nagpur
Visvesvaraya National Institute of Technology, Nagpur
CDMA Basics, IS – 95 System Forward and Reverse Link
Vishal R. Satpute Assistant Professor, Department of Electronics engineering, VNIT, Nagpur.
VNIT, Nagpur
CDMA
CDMA (Code Division Multiple Access)
CDMA Basics,
CDMA Forward Link and,
CDMA Reverse Link.
VNIT, Nagpur
CDMA [1]
CDMA (Code Division Multiple Access) In
CDMA, codes are assigned to each user because entire channel is allotted for entire time duration.
These
codes must be orthogonal means their dot product is
zero. Ex.
Two codes (chips) as given below are orthogonal to each other.
{-1,
+1, -1, -1, +1, +1} and {+1, +1, -1, +1, -1, +1}
Dot
product of these two codes come out to be zero.
VNIT, Nagpur
CDMA [2]
How CDMA works?
Suppose, we allot these two codes to two different users say user A and B.
Let, Ak = { -1, +1, -1, -1, +1, +1} i.e. key for user A.
Let, Bk = {+1, +1, -1, +1, -1, +1} i.e. key for user B.
Check for orthogonal code?
Now assume that A and B wants to send a binary (Ad) logic 1 and (Bd) logic 0 respectively.
Hence, say logic 1 = +1 and logic 0 = -1. -1 .
Then system spreads these logic levels using the keys given above i.e. Ak and Bk. The transmitted transmitted signal for A and B will be:
AS = Ad * Ak = +1 * { -1, +1, -1, -1, +1, +1} = {-1, +1, -1, -1, +1, +1}
BS = Bd * Bk = -1 * {+1, +1, -1, +1, -1, +1} = {-1, -1, +1, -1, +1, -1}
Both signals are then transmitted using same channel and at same time.
VNIT, Nagpur
CDMA [3]
• At the receiver side a new signal i.e. C which is received which is addition of two different signals AS and BS. • C = AS + BS = {-2, 0, 0, -2, +2, 0}. • At the receiver side, again to detect the original bits, the same key assigned to user A and B is applied in the following manner. • To detect Ad: – Ad = C * Ak = {-2, 0, 0, -2, +2, 0} * {-1, +1, -1, -1, +1, +1} = 6 (>0) – Bd = C * Bk = {-2, 0, 0, -2, +2, 0} * {+1, +1, -1, +1, -1, +1} = -6 (<0) – Since received energy is Ad = 6 it can be treated as logic 1 and Bd = -6 it can be treated as logic 0.
VNIT, Nagpur
CDMA [4]
• If B transmits the information with a higher signal level say C = AS + 5 * BS, then at the receiver side, information received will be Bd = - 30 and Ad = +6. • Since, Ad and Bd ratio is very large, it is difficult to detect Ad while Bd can be easily detected. • To avoid these issues which occurs because of same band and same time, power control information is required to be given to every MS within the cell so that power level received from individual MS will be same at BTS. • In CDMA system, over 1000 times per sec power level information is required to be sent which unnecessarily increase system complexity and consumes lot of energy.
• Code sequence in IS – 95 system is 2 42 – 1 bits long.
VNIT, Nagpur
IS – 95 Forward Link [1]
• IS = Interim Standard • IS – 95 allows each user within a cell to use same radio channel and users in adjacent cells also the same radio channel because it is using direct sequence spread spectrum CDMA. • The vocoder available in IS – 95 system uses voice activity detection and reduces the data rate to 1200 bps when there is silence period. • In IS – 95, the forward and reverse links are separated by 45 MHz of spectrum and IS – 95 is also compatible with AMPS system. • IS – 95 uses 824 – 849 MHz for reverse and 869 – 849 MHz for forward links respectively.
VNIT, Nagpur
IS – 95 Forward Link [2]
• In IS – 95, the forward and reverse links are different. • on the forward link the user data is encoded with rate ½ convolution encoder • While for reverse link it is rate 1/3 convolution encoder. • For both base station and the subscriber, RAKE receivers are used. • In IS – 95, 64 – bit Walsh codes are used which are orthogonal to each other.
VNIT, Nagpur
IS – 95 Forward Link [3]
Modulation Parameters for IS – 95 Forward Channel Parameter
Data rate (bits / sec)
User data rate
9600
4800
2400
1200
Coding Rate
½
½
½
½
User data repetition period
1
2
4
8
Base-band coded data rate
19,200
19,200
19,200
19,200
PN chips/coded data bit
64
64
64
64
PN chips rate (Mcps)
1.2288
1.2288
1.2288
1.2288
PN chips/ bit
128
256
512
1024
VNIT, Nagpur
IS – 95 Forward Link [3]
• Note here that: 19200 * 64 = 1.2288 Mcps
VNIT, Nagpur
•
IS – 95 Forward Link [4]
Forward Link (BTS – – – – – – –
MS)
Band allotted to operator = 50 MHz. Forward Link = 869 to 894 MHz = 25MHz Each channel is 1.25 MHz wide. One channel means 64 different users. Entire 1.25 MHz is given to all users. One channel is further subdivided into 4 sub-channels 1. Pilot: • Timing • Phase Reference for Coherent Demodulation • Means for Signal Strength Comparison
– 2. Sync: • Broadcasts future state of the long code register (Data rate = 1200bps)
– 3. Paging: • Call Control Information (Data rate = 9.6, 4.8, and 2.4kbps)
– 4. Forward Traffic: • Voice Data (includes power control sub channel, Data rate = 9.6, 4.8, 2.4, and 1.2kbps)
VNIT, Nagpur
IS – 95 Forward Link [5]
• Data on forward traffic channel is grouped into 20msec frames. • User data rate is adjusted and always the chip rate is 1.2288Mcps.(Mcps = Million Chips Per Second) • Chips per bit may change depending upon bit rate.
No. of chips per bit
1.2288 Mcps Bit Rate
• Bit rate = 9.6, 4.8, 2.4, and 1.2kbps
(kbps = kilo bits per second)
VNIT, Nagpur
IS – 95 Forward Link [6]
VNIT, Nagpur
•
IS – 95 Forward Link [7]
Convolutional Encoder and Repetition – Adds redundancy to data transmission for error robustness. – Rate, r = ½, where r = input bits / output bits, – Rate ½ means for every 1 input bit it gives 2 output bits. – Maintains an output data rate of 19.2kbps regardless of input rate.
VNIT, Nagpur
IS – 95 Forward Link [8]
• Convolutional Encoder and Repetition – To maintain a constant rate of 19.2kbps, repetition of data block is done in the following manner. – Repetition Factor = 19.2kbps/ data rate – Ex. If data rate = 2.4kbps then repetition factor is = 4 i.e. original data + 3 times repeated data. Block Interleaving: – It adds the symbols into a frame of 20msec i.e. it puts the symbols into a frame of 24 by 16 array. – Per second we have 1/20ms = 50 such frames. – Thus (24*16) per frame * 50 frames/sec = 19200 bits/sec – It adds transmission robustness by interleaving of data.
VNIT, Nagpur
IS – 95 Forward Link [9]
• Long PN Sequence: – The long PN code is assigned to every user in a repeated manner with a period of 2 42 - 1 time interval. – The long code in IS-95 is given as: p ( x) x x
42
7
x
6
35
x
5
33
x
3
31
x
2
27
x
1
x x x x x
26
x
25
x
22
x
21
19 18 17 16 10 x x x x x
1
– Each PN sequence is generated by modulo-2 addition inner product of a 42-bit mask and a 42bit state vector of sequence generator.
VNIT, Nagpur
IS – 95 Forward Link [10]
Initial state of the generator is taken as: 1 00000000000000000000000000000000000000000 41 continuous zeros
Two types of masks are used in the long code generator.
Public Mask: For ESN of device
Private Mask: For Mobile Station Identification (MIN)
All CDMA calls are initiated using Public Mask and then private mask is given after authentication.
VNIT, Nagpur
IS – 95 Forward Link [11]
• Public code is specified follows: – M41 to M32 = 11000 11000 and ESN number is permuted as follows: – ESN = {E31, E30,…………..E 0} – Permuted ESN = {E0,E31,E22,E13,E4,E26,E17,E8,E30,E21,E12,E3,E25,E16,E7,E29,E2 0,E11,E2,E24,E15,E6,E28,E19,E10,E1,E23,E14,E5,E27,E18,E9} – Hence, Public code is
11000 11000 {Permuted ESN} 11000 11000 {E0,E31,E22,E13,E4,E26,E17,E8,E30,E21,E12,E3,E25,E16,E7,E29, E20,E11,E2,E24,E15,E6,E28,E19,E10,E1,E23,E14,E5,E27,E18,E9}
VNIT, Nagpur
IS – 95 Forward Link [12]
• Power Control Sub-Channel: – To minimize BER for each user, IS-95 strives to force each user to provide the same power level at base station. – Power control are sent to each subscriber using ‘bit 0’ to tell user to increase power level by 1dB and ‘bit 1’ to decrease of power by 1dB. – Since signal and interference continuously varies hence, power level control information is necessary and transmitted to each subscriber at an interval of 1.25msec. – In a frame of 20msec, 16 power control bits are sent. – In a 1.25msec duration, 24 data symbols are transmitted. – Power control bits are transmitted using puncturing method. – During a 1.25 msec period, twenty four data symbols are transmitted. – IS-95 transmits power control bits in sixteen different combinations. – Last 4-bits are used to locate power control bits information.
VNIT, Nagpur
IS – 95 Forward Link [13]
• Ex. Suppose bit positions {23,22,21,20} are {1011} • During transmission the pattern is: 0
1
2
3
20
21
22
23
1
1
0
1
4
0
1
5
2
6
3
7
4
5
8
6
9
7
8
10
9
11
10
12
11
13
12
14
13
1.25msec = 24 traffic data bits 1 Power control bit = 2 Data bits
14
15
15
16
17
18
19
20
21
22
23
0
1
2
3
VNIT, Nagpur
IS – 95 Forward Link [14]
• Orthogonal Covering: – Orthogonal covering is performed following the data scrambling on the forward link. – Each traffic channel transmitted on the forward CDMA channel is spread with a Walsh function at a fixed chip rate of 1.2288Mcps. – Walsh function comprises of 64 orthogonal codes and are generated using Hadamard matrix. H 1
[0]
0 0 H 4 0 0
0 1 0 1
0 0 H 2 0 1 0 0 0 1 ; H 2 H H 1 1 1 0
N
H N
N
H N
N
VNIT, Nagpur
IS – 95 Forward Link [15]
Orthogonal Covering:
After orthogonal covering, symbols are spread in Quadrature and In phase components. The In-phase and Quadrature equations are, 15
P I ( x ) x
P Q ( x ) x
15
x
13
x
12
x
9
x
11
x
8
x
10
x
7
x
6
x
5
x
5
1
x
4
x
3
1
VNIT, Nagpur
IS – 95 Forward Link [16]
• I and Q Mapping in forward CDMA channel: – I and Q are mapped according to following rule.
I
Q
Phase
0
0
π/4
1
0
3π/4
1
1
-3π/4
0
1
-π/4
VNIT, Nagpur
IS – 95 Forward Link [17]
IS – 95 Forward Link [18] VNIT, Nagpur
• The pilot channel: – Provide a reference signal for all MSs that provides the phase reference for coherent demodulation – 4-6 dB stronger than all other channels – Used to lock onto other channels – Obtained using all zero Walsh code; i.e., contains no information except the RF carrier – Spread using the PN spreading code to identify the BS. (512 different BS*64 offsets) – No power control in the pilot channel
IS – 95 Forward Link [19] VNIT, Nagpur
The pilot channel (IS – 95)
IS – 95 Forward Link [20] VNIT, Nagpur
The Sync channel (IS – 95)
• Used to acquire initial time synchronization • Synch message includes system ID (SID), network ID (NID), the offset of the PN short code, the state of the PN-long code, and the paging channel data rate (4.8/9.6 Kbps) • Uses W32 for spreading • Operates at 1200 bps
IS – 95 Forward Link [21] VNIT, Nagpur
The Sync channel (IS – 95)
IS – 95 Forward Link [21] VNIT, Nagpur
IS – 95 Paging Channel • Used to page the MS in case of an incoming call, or to carry the control messages for call set up • Uses W1-W7 • There is no power control • Additionally scrambled by PN long code, which is generated by LFSR of length 42 • The rate 4.8 Kbps or 9.6Kbps
IS – 95 Forward Link [22] VNIT, Nagpur
IS – 95 Paging Channel
VNIT, Nagpur
IS – 95 Reverse Link [1]
• Reverse Link (MS
BTS)
– Band allotted to operator = 50 MHz. – Forward Link = 824 to 849 MHz = 25MHz – Each channel is 1.25 MHz wide. – One channel means 64 different users. – Entire 1.25 MHz is given to all users. – One channel is further subdivided into 2 sub-channels – 1. Access Channels: (Fixed data rate = 4800 bps) – Used by mobile to initiate a communication with base station and to respond to paging channel message.
– 2. Reverse Traffic channel. (Variable data rate) – Reverse traffic channel may contain 32 access channels. – Data rate = 9.6, 4.8, 2.4, and 1.2kbps.
VNIT, Nagpur
IS – 95 Reverse Link [2]
• Data on Reverse traffic channel is grouped into 20msec frames. • User data rate is adjusted and always the chip rate is 1.2288Mcps. • Per 6-bits of user one 64 – bit Walsh code is transmitted. No. of chips per bit
1.2288 Mcps Bit Rate
• User bit rate = 9.6, 4.8, 2.4, and 1.2kbps
VNIT, Nagpur
IS – 95 Reverse Link [3]
VNIT, Nagpur
IS – 95 Reverse Link [4]
• Convolutional Encoder and Repetition – Adds redundancy to data transmission for error robustness. – Rate, r=1/3, where r = input bits / output bits; k = 9. – Generator vector is g 0, g1, and g2 = 557 (octal), 663 (octal) and 771 (octal). – Maintains an output data rate of 28.8 kbps (9.6 kbps * 3 ) kbps regardless of input rate by repeating. – In reverse channel six encoded bits are replaced by a 64 – bit Walsh code.
VNIT, Nagpur
IS – 95 Reverse Link [5]
• Convolutional Encoder and Repetition – To maintain a constant rate of 28.8kbps, repetition of data block is done in the following manner. Repetition Factor
=
28.8 kbps data rate
• Block Interleaving: – It adds the symbols into a frame of 20msec i.e. it puts the symbols into a frame of 32 by 18 array. – It adds transmission robustness by interleaving of data. – Code symbols are written into matrix by columns and read out by rows.
VNIT, Nagpur
IS – 95 Reverse Link [6]
• Variable Data Rate Transmission: – Variable data rate are sent on reverse CDMA channel – Data rate varies from 9600 bps to 1200 bps – One frame on reverse channel = 20msec – When data rate = 9600 bps then all interleaver output bits are transmitted that is 100% transmission – When data rate = 4800 bps then 50% transmission – When data rate = 2400 bps then 25% transmission – When data rate = 4800, 2400 and 1200 bps then some power control groups are gated-ON while others are gated-OFF – During gated –OFF, mobile stations reduces its EIRP by 20dB with respect to power of the previous gated-ON period.
VNIT, Nagpur
IS – 95 Reverse Link [7]
Data burst randomizer generates a masking pattern of 0’s and 1’s that randomly masks the redundant data generated by the code repetition process. A block of 14 bits taken from long code determines the masking pattern.
Last 14 bits of the 2 nd to last power control group of previous frame is taken for masking pattern.
These bits are represented as:
b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 where b0 and b13 are first and last bits respectively.
VNIT, Nagpur
IS – 95 Reverse Link [8]
• If data rate is 9600 bps then transmission occurs on all sixteen power control groups. • If data rate is 4800 bps then transmission occurs on following 8 power control groups. • b0 2+b1 4+b2 6+b3 8+b4 10+b5 12+b6 14+b7 • If data rate is 2400 bps then, transmission occurs on only four power control groups. Sr. No.
If
Then
Else
If
Then
1
b8 = 0
0 + b0
Else
b8 = 1
2 + B1
2
b9 = 0
4 + B2
Else
b9 = 1
6 + B3
3
b10 = 0
8 + B4
Else
b10 = 1
10 + B5
4
b11 = 0
12 + B6
Else
b11 = 1
14 + B7
VNIT, Nagpur
•
IS – 95 Reverse Link [9]
If data rate is 1200 bps then transmission occurs on only two power control groups. –
(If b8 = 1 and b 12 = 0) then b0 or (If b8 = 1 and b 12 = 1) then 2 + b 1 OR
●
(If b9 = 0 and b 12 = 1) then 4 + b 2 or (If b9 = 1 and b 12 = 1) then 6 + b 3
–
(If b10 = 0 and b 13 = 0) then 8 + b 4 or (If b10 = 1 and b 13 = 0) then 10 + b5 OR (If b11 = 0 and b 13 = 1) then 12 + b 6 or (If b11= 1 and b13 = 1) then 14 + b 7
VNIT, Nagpur
IS – 95 Reverse Link [10]
• Direct Sequence Spreading: – Reverse traffic channel is spread by long code PN sequence which operates at a rate of 1.2288Mcps. – Each Walsh chip is spread by a factor of 4 (1228.8/307.2)
• Quadrature Modulation: – On Reverse traffic channel, OQPSK (offset QPSK) is used. – The delay element D has a delay of 406.901nsec delay with respect to “I” channel pilot. – OQPSK has it's own advantages.