Вы находитесь на странице: 1из 5

A fair multi code OVSF design for 3G and beyond wireless networks

Davinder S Saini, Vipin Balyan, Saurab Kanwar, Pulkit Parikh and Uttam Kumar

Department of Electronics and Communication Engineering, Jaypee University of Information Technology, Waknaghat, Distt. Solan, Himachal Pradesh – 173215 davinder.saini@juit.ac.in, vipin.balyan@juit.ac.in, saurab.kanwar@gmail.com, parikh.pulkit@gmail.com and

uttam.kumar87@gmail.com

Abstract- Orthogonal Variable Spreading factor (OVSF) codes always suffer from code blocking. Low rate users further add to this limitation to create code blocking for high rate users. The paper proposes a fair multi code design to provide fairness to different rate users in 3G and 4G traffic. The code availability for new call depends upon the current status of the code tree which makes the design adaptive to traffic conditions. Simulation results are demonstrated to show the superiority of the proposed design as compared to the existing schemes.

Keywords: OVSF codes, WCDMA, code blocking, code assignment and reassignment, multi-code, rake combiners.

1. Introduction

In W-CDMA [1,2], OVSF code tree is available with each base station (BS) and user equipment (UE). OVSF code tree provides facility to transmit at variable data rates which is the requirement of most of 3G and beyond networks. The spreading factor chosen in OVSF code depends upon the rate of incoming call. The product of data rate and spreading factor is always maintained same in CDMA system (equal to 3.84 Mcps). Note that two OVSF codes are orthogonal if and only if neither code lies on the path from the other code to the root. Since code assigned to different users in the same cell must be orthogonal, this restricts the number of available codes for a given cell. Code blocking is defined as the condition in which a new call request cannot be supported even though the OVSF code tree has enough capacity to support the rate requirement of the call. Generally code blocking occurs in higher layer code. Hence, higher the layer number for a code more is the code blocking probability. The complete elimination of code blocking is accomplished only if code reassignment (or replacement) procedure employed. For a code X in the code tree two children are [X,X] and [X,- X]. If we assume [X,X]=Y and [X,-X]=Z, the children of Y(Z) are [Y,Y]([Z,Z]) and [Y,-Y] ([Z,-Z]). In WCDMA process is repeated 8 times to get 8 layer code tree [3]. The technical specifications of WCDMA system are listed in Table I. A code reassignment procedure reallocates the codes in code tree so that new request can be handled when the total remaining capacity of OVSF code tree is at least as large as the requested capacity. Different multi rate services require system resources relative to their requirements of incoming data rate. It translates into unfairness among different users because it is difficult to find vacant OVSF codes for services with higher data rate requirements compared to services with lower data rate requirements. In this way, code blocking increases when requested data rate of the incoming call increases due to scattering of lower layer codes. That

deteriorates the performance perceived by higher rate requests. Thus, the unfairness situation will occur in forward link of W-CDMA by both the abrupt difference of the available code rates and code blocking phenomenon. A large number of code assignment schemes are proposed to reduce code blocking and improve fairness. In the leftmost code assignment (LCA) [4] scheme, the code assignment is done from the left side of the code tree. In random assignment (RA) [4] scheme, any of the vacant code is picked randomly to handle new call. LCA and RA schemes suffer from the limitation of large blocking probability and

Table I WCDMA specifications

Channel bandwidth

5 MHz

Duplex mode

FDD and TDD

Downlink RF channel structure

Direct spread

Chip rate

3.84 Mbps

Frame length

10 ms

Spreading modulation

Balanced QPSK (downlink) Dual-channel QPSK(uplink) Complex spreading circuit

Data modulation

QPSK (downlink),BPSK (uplink)

Channel multiplexing

Data and control channels time multiplexed

in downlink

Channel multiplexing

Control and pilot channel time multiplexed I&Q multiplexing for data and control channel

in uplink

Multirate

Variable spreading and multicode 4–256 (uplink), 4–512 (uplink)

Spreading factors

Power control

Open and fast closed loop (1.6 kHz)

Spreading (downlink)

OVSF sequences for channel separation, Gold sequences 218-1 for cell and user separation (truncated cycle 10 ms)

Spreading (uplink)

OVSF sequences, Gold sequence 241 for user separation (different time shifts in I and Q channel, truncated cycle 10 ms)

Handover

Soft handover Inter frequency handover

smaller throughput. Crowded first assignment scheme (CFA) [4] uses the crowded portion of the tree for code assignment. In dynamic code assignment (DCA) [5] scheme, the blocking probability is reduced using reassignments based on the cost function. The DCA scheme requires extra information to be transmitted to inform the receiver about code reassignments. Paper [6] uses credit management mechanism to provide fairness for all classes of users. Various channel sensitive scheduling algorithms are discussed for providing rate guarantee and fairness. Multicode Multirake Compact Assignment (MMCA) given in [7] defines compact index to accommodate QoS differentiating mobile terminals. The

fairness of real time and non-real time calls is also discussed. Paper [8] discusses a forward link scheduling algorithm on a time slot basis such that throughput is maximized. Also data rate guarantee and fairness issues are discussed in detail. The difference of maximum credit and minimum credit is considered as a parameter for evaluating fairness of different classes of users. The fair, efficient and exchangeable (FEX) scheme discussed in [9] chooses the best multi code for various multi code options. The code scattering is reduced by resource aggregation. Our scheme looks similar to [9] with additional benefits of utilizing maximum rakes and hence minimized code scattering. The comparison of some of these schemes is given in [10]. The paper is organized as follows Section 2 discusses the proposed fair multi code design along with illustrative examples and flowchart. Simulation results are obtained in section 3. The paper is concluded in section 4.

2. Proposed multi code design

Consider an r rake OVSF system. Let C max is the maximum capacity of the code tree. Let new user with rate 2 k R arrives. For the initial part of the code assignment (say used capacity less than C max /4), multi code assignment with leftmost first

strategy is used. For used capacity C max /4, let

n represents

1

l

number of vacant codes in layer l,1 l L at the time of new arrival. If a vacant code exists in layer l, all the children of the vacant code are excluded from the vacant code lists in

j l . If

layers l-1 to 1. Find j|

equality occurs for two different j’s, choose upper layer.

Define

n

1

j

is maximum for all j,1

n

2

l

given by

n

2

l

=

1

n ,

n

l

1

l

j

,

1

l

j

=

l

(1)

Repeat the steps for maximum r steps. The Equation (1) can be generalized for t th step given by

t

n l

=

n

n

t

l

t

l

1

,

1

j

,

1

l

j

=

l

(2)

Define

coefficient

matrix,

M

opt

=

[

n

1

j

,

n

2

j

,

n

3

j

,

n

r

j

]

.

If

for r'r ,

'

r

s

n = 2

s = 1

j

k , the new call can be handled using the

'

combination giving optimum fairness. If n

, define

multi code M c =[a 1 , a 2 , a 3 , a 4 , a 5 , a 6 , a 7 , a 8 ] where a i denotes the capacity in layer l required to handle rate 2 k R. Let the first possible multi code to handle rate 2 k R is M 1 =[0,0,0,0,0,0,0,2 k ]. The second possible combination can be defined as M 2 =[0,0,0,0,0,0,2 k-1 ,2 k-1 ]. The procedure can be extended for maximum r codes and the combination becomes

r

s = 1

s

j

2

k

M r =[0,

multi code can be defined as

,0,2

k-r+1 ,2 k-r+1 ,…2 k-2 ,2 k-1 ]. In general for i th step, the

M i =[0,

,0,2

k-i+1 ,2 k-i+1 ,…2 k-2 ,2 k-1 ],

0 i r

(3)

For each M i , find

d

i

=

M opt

- M

i

, i.e.

d i

8

8

= ∑ ∑ (

i =

1 j

=

1

n

i

j

a

i )

.

Choose multi code M j | d j =min(d i ) for 0 i r .

The flowchart of the design is illustrated in Figure 1. For illustration of the code assignment scheme, consider the 7 layer OVSF code tree shown in Figure 2. Let the W- CDMA system is equipped with 6 rakes and there are only five classes of users namely R,2R,4R,8R,16R. If a new call with rate 16R arrives, the vacant codes are listed 6 times to find 6 best codes to handle rate 16R. The listing of steps is shown in Table II where entry in layer l represents number of vacant codes in layer l. The optimum multi code is

=[2,6,0,8,0,0,0,0]. The number of codes used in all the

layers are given by vector N=[2,3,0,1,0,0,0,0], where i th coefficient represents number of codes in layer i used in the multi code. Let T=[t 1 ,t 2 ,t 3 ,t 4 ,t 5 ,t 6 ] represents the optimum rate coefficient matrix, where t i is the rate of i th rate fraction to be handled by one of the rakes. For the 6 rakes system

considered, the matrix T is obtained in Table II where n th step

is to identify the n th rate fraction which is given as [1,1,2,2,2,8]. The asterisk sign (*) represents the codes with highest priority (corresponds to most fair system).The listing is performed 6 times equal to number of rake combiners.

Adding all the values with asterisk sign gives result 16 (2+2+1+8+2+1) and hence the optimum multi code can be used for the status of the code tree shown in Figure 2. If the number of rakes is less than 6 (say m), the listing has to be done for m steps and for m equal to 4, the result is 13 (2+2+1+8).The result is not equal to coming rate i.e. 16R and hence we need to go to second algorithm. The different rate coefficient matrix possible with m rakes to handle 16R rate are listed as follows For m=5,

M opt

[0,0,0,0,16];[0,0,0,8,8];[0,0,4,4,8];[0,2,2,4,8];[1,1,2,4,8];

For m=4,

[0,0,0,16];[0,0,8,8];[0,4,4,8];[2,2,4,8];

For m=3,

[0,0,16];[0,8,8];[4,4,8];

If we consider 4 rake system, the algorithm compares each rate coefficient matrix and pick the combination with most

number of matches. For first matrix [0,0,0,16], the

comparison with [1,1,2,2,2,8] leads to 0 match and hence

weight is 6 (equal to number of elements in optimum combination which differs than elements of given matrix). Similarly comparison with 2 nd matrix ([0,0,8,8]) 3 rd matrix([0,4,4,8])and 4 th matrix([2,2,4,8]) gives weight of 5,5,3 respectively. Therefore the matrix [2,2,4,8] is closest

to optimum combination [1,1,2,2,2,8] as it produces least weight and hence it is chosen for handling new 16R call. The

Call arrival process is assumed to be Poisson distributed with average value, λ =1-4 calls/time.

Start Consider code tree with depth = L New call rate = rR, Reject call
Start
Consider code tree with
depth = L
New call rate = rR,
Reject call and
increment blocked calls
N
C
used <C max ?
Y
N
Use Multi code
LCA
C used >C max /4 ?
Y
Do code
assignments and
Find the optimum
multi code M opt
blocking etc.
If
for
r' ≤ r ,
N
'
r
s
k
∑ n = 2
j
Y
For
d
=
M
- M
, i.e.
i
opt
i
Choose the combination
8
8
1
2
3
r
M
=
[
n
,
n
,
n
,
n
]
i
opt
j
j
j
j
d
=
∑∑
(
n
a
)
Choose multi code
i
j
i
i
=
1 j
=
1
Do code assignment, blocking etc.

Fig.1. Flowchart for the fair multi code design

procedure can be followed for any number of rakes.

3. Simulation Results

The simulation parameters considered are

Service time is assumed to be negative exponential distributed with mean value 1 / μ =1 units of time.

There are four classes of users with rates R, 2R, 4R and 8R (R=7.5kbps).

C 3,1 C 3,9 C 2,5 C 2,15 C 2,20 C 1,11 C 1,25 C
C 3,1
C 3,9
C 2,5
C 2,15
C 2,20
C 1,11
C 1,25
C 1,57
C 1,62
Busy code
Vacant code
Blocked code
Fig.2. Illustration of the fair multi code design

The capacity of OVSF code tree is 128R with root in

 

Table II Selection of the optimum multi code

 

Layers

1 st step

2 nd step

3 rd step

4 th step

5 th step

6 th step

1

4

4

4*

3

3

3*

2

5*

4*

3

3

3*

2

3

2

2

2

2

2

2

4

3

3

3

3*

2

2

5

0

0

0

0

0

0

Code blocking for rate R

layer 8 (layer numbering start from leaves).

Consider that there are

servers in the k th

layer corresponding to G k number of vacant codes. The total codes (servers) in the system assuming an eight set of classes

are given by G={G 1 ,G 2 ,G 3 ,G 4 }. The maximum number of

servers used to handle new call is equal to the number of rake

combiners. Let

class of users. Traffic load for the k th class of users is given

G

k

=

2

k 1

,

k

=

[1,2,3,4]

λ ,

k

μ is the arrival rate, service rate of k th

k

Code blocking for rate 2R

0.2 0.14 FSP FSP 0.12 LCA LCA 0.15 MC-fair MC-fair 0.1 MC-I MC-I 0.08 0.1
0.2
0.14
FSP
FSP
0.12
LCA
LCA
0.15
MC-fair
MC-fair
0.1
MC-I
MC-I
0.08
0.1
0.06
0.04
0.05
0.02
0
0
0
0.5
1
1.5
2
2.5
3
3.5
4
0
0.5
1
1.5
2
2.5
3
3.5
4
traffic load
traffic load
(a)
(b)
blocking probability
blocking probability

Code blocking for rate 4R

Code blocking for rate 8R

0.2 0.14 FSP FSP 0.12 LCA LCA 0.15 MC-fair MC-fair 0.1 MC-I MC-I 0.08 0.1
0.2
0.14
FSP
FSP
0.12
LCA
LCA
0.15
MC-fair
MC-fair
0.1
MC-I
MC-I
0.08
0.1
0.06
0.04
0.05
0.02
0
0
0
0.5
1
1.5
2
2.5
3
3.5
4
0
0.5
1
1.5
2
2.5
3
3.5
4
traffic load
traffic load
(c)
(d)
blocking probability
blocking probability

Fig.3. Blocking probability vs traffic load for (a) rate R users (b) rate 2R users (c) rate 4R users (d) rate 8R users

by

by

P

B

k

ρ

k

= λ

k

/ μ

k

=

G

k

ρ

k

/

G

k

!

G

k

n

k

ρ

n = 1

/

n

!

. The code blocking for the k th class is defined

(4)

The average code blocking for 4 class system is

P

B

=

4 λ

k

= 1

k

λ

P

B

k

(5)

The rate distribution in the system is can be considered as [p 1 ,p 2 ,p 3 ,p 4 ], where p i is the probability of arrival of rate 2 i-1 R. For our simulation we assumed distribution as [0.25,0.25,0.25,0.25]. The distribution is chosen to give equal capacity proportions to four different rates. If we define user distribution [u 1 ,u 2 ,u 3 ,u 4 ], where u i is number of i th class users in the system, the capacity occupied by the i th class user is given by

C

i

=

u

i

×

2

i 1

R

(6)

If C max is the maximum system capacity, the percentage capacity portion occupied by the i th class user is

V

i

=

C

i

/ C

max

(7)

Therefore for given capacity distribution [0.25,0.25,0.25,0.25], distribution in terms of number of users can be represented by [32,16,8,4] for maximum capacity of 128R. We compare the code blocking of proposed multi code fair (MC-fair) scheme with existing leftmost code assignment (LCA), fixed set partitioning (FSP) and Multi code (MC-I) [9] schemes discussed earlier. Figure 3(a) shows the reduction in code blocking in the proposed fair multi code design for rate R as compared to other schemes. The reduction in code blocking for 2R, 4R and 8R rates is shown in Figures 3(b), 3(c) and 3(d). The simulation is performed for 2000 users and the result is the average of 10 simulations. The results show that for each individual rate, the code blocking in MC-fair scheme is less than existing schemes. The complexity and cost of the proposed design may be more because of selection of optimum multi code for each new call. If the number of rates is more than 4, the capacity wise uniform distribution is difficult to obtain and we can approximate the distribution. For example in a system with five rates (R, 2R, 4R, 8R and 16R), user rate distribution can be [24,12,6,3,2].

4. Conclusion

Fairness is the essential requirement for most of 3G and beyond traffic. The dominance of real time calls (voice etc.) can lead to complete code blocking for most of the non real time calls. The multi code design given in the paper can be used for unfair systems. The adaptive nature of the design

allows the use of the scheme in all traffic scenarios. The cost and complexity can be increased due to frequent optimum multi code selection.

Future Work

Work can be done to investigate cost and complexity in optimum multi code selection. For highly dynamic network where the rate prediction is difficult, the optimum multi code selection is not easy. The fairness scheme should be reformulated under such conditions. Also when the system has large number of user classes, the exact capacity distribution is difficult. The approximate distribution can be formulated.

References

[1] H. Holma, A. Toskala. WCDMA for UMTS. Wiley, Nokia, Finland, 2000. [2] F.Adachi, M. Sawahashi, and H.Suda, “Wideband CDMA for next generation mobile communication Systems”, IEEE Communication Magazine, vol. 36, pp. 56-69, Sept.1998 [3] F.Adachi, M.Sawahashi, and K.Okawa, ‘‘Tree structured

generation of orthogonal spreading codes with different lengths for forward link of DS-CDMA mobile radio’’, IEE Electronic Letters, vol. 33, pp.27-28, Jan. 1997. [4] Y.C.Tseng, C.M.Chao, and S.L. Wu, “Code placement and replacement strategies for wideband CDMA OVSF code tree management,” In proc. of IEEE GLOBECOM, vol. 1, pp.562-566,

2001.

[5] T.Minn and Kai-Yeung Siu, ‘‘Dynamic Assignment of orthogonal variable spreading factor codes in W-CDMA’’, IEEE J. Selected Areas in Communication, vol. 18, no.8, pp. 1429-1440, Aug. 1998. [6] Yang Yang and Tak-Shing Peter Yum, “Multicode Multirate Compact Assignment of OVSF Codes for QoS Differentiated Terminals”, IEEE Transactions on Vehicular Technology, Vol. 54, No. 6, pp. 2114-2124, Nov. 2005 [7] A.C. Kam, T. Minn, K.Y. Siu, “Supporting rate guarantee and fair access for bursty data traffic in WCDMA”, IEEE Journal on Selected Areas in Communications 19 (11) (2001), pp. 2121–2130. Nov. 2001. [8] Chih-Min Chao, Yu-Chee Tseng, Li-Chun Wang, “Dynamic Bandwidth Allocation for Multimedia Traffic with Rate Guarantee and Fair Access in WCDMA Systems”, IEEE Transactions on Mobile Computing, Vol.4, No.5, pp.420-429, Sep./Oct. 2005. [9] Fenfen Shueh, Zu-En Liu, and Wen-Shyen Chen, “A fair, efficient, and exchangeable channelization code assignment scheme for IMT-2000”, in proc. of IEEE International Conference on Personal Wireless Communications, pp. 429–433, 2000. [10] Davinder.S.Saini and S.V.Bhooshan, “Assignment and Reassignment Schemes for OVSF Codes in WCDMA”, In proc. of ACM IWCMC, Vancouver, pp. 497-502, 2006.