• No results found

Selecting the Optimum Signature Sequence Set

In this section, the signature sequence selection procedure [26] is proposed by using the system value calculations in Equation (2.38) of page 47 and Equation (3.7) of page 69. The selection of signature sequences involves two steps: the rst process is to nd the signature sequence sets starting from eK = K to eK = 1 by eliminating the signature sequence with the smallest system value for each set. This generates a new set of signature sequences for each eK iteration. Using the stored signature sequence sets, the second process is to nd the optimum number of signature sequences that maximise the total rate for the intended energy allocation scheme (ES or EE).

4.5.1 Signature Sequence Selection for Each eK

The rst process of signature sequence selection starts from eK = K and continues by iteratively adjusting eK = eK − 1 until it reaches eK = 1. The selection starts from eK = K because for each eKth iteration, the signature sequence corresponding to

the spread channel with the worst SINR (lowest system value) is removed. In other words, a smaller set of signature sequences with good conditions are retained after each iteration. The set of signature sequences corresponding to each eKth loop should be

stored for further processing in Section 4.5.2 for either ES or EE allocation schemes. To nd the system values and signature sequence set for each eKth iteration, the

rst step is to nd the system values λKe =



λ1, ..., λKe

T

according to Equation (2.38) (see page 47) for non-SIC scheme and Equation (3.7) (see page 69) for SIC scheme.

The second step is to perform channel ordering by sorting the elements in λKe in an

ascending manner to form λord, eK and obtain its ordering kord= [a1, ..., aKe]

T ∈ NK×1e . This means: h λord, eKi k=  λ e K  ak. (4.8)

Then, obtain [λmin]Ke which is to the minimum element of λKe. This also corresponds

to the rst element of λord, eK such that: [λmin] e K= h λord, eKi 1. (4.9)

After that, obtain the mean system value [λmean]Ke as shown in Equation (2.48) (see

page 55).

By initialising Stemp e

K = S as in Equation (2.5) in page 38, the signature sequence

set is ordered according to the corresponding ordered system values such that: h Sord e K i k= h Stemp e K i ak for k = 1, ..., eK (4.10) where Sord e K = h sord e K,1, ..., s ord e K,k, ..., s ord e K, eK i . (4.11)

Then, form the received signature sequence set using: Q = HSord e K , (4.12a) Q1 = H1Sord e K , (4.12b) Q2 = H2Sord e K . (4.12c)

After that, perform signature sequence removal by removing the rst column of Sord

e

K (which corresponds to the signature sequence with the lowest system value) to

form Stemp e

K−1 for the next iteration:

Stemp e K−1= h sord e K,2, ..., s ord e K,k, ..., s ord e K, eK i . (4.13)

Set eK = eK− 1. This process is repeated until eK = 1. The algorithm is summarised in Algorithm 9.

After storing the optimum signature sequence sets for each eK, the optimum set can be selected according to the energy allocation scheme (ES or EE) and this will be described next.

Algorithm 9 Algorithm to Remove the Bad Signature Sequences 1: Initialisation 2: Form Stemp e K =S and S ord e K =S

3: Form Q, Q1 and Q2 as shown in Equation (4.12) using Sord e K

4: for eK = K to eK = 1 do

5: Find the system values

6: Allocate energy equally to all spread channels Ek= ET e

K for k = 1, ..., eK

7: Form A as shown in Equation (2.4) 8: for k = 1, . . . , eK do

9: if MMSE receiver is used then

10: Find λk = EkqHkC−1qk and C from Equation (2.38)

11: else

12: if SIC receiver is used then

13: Find λk= EkqHkC−1k qk and Ck from Equation (3.7)

14: Form λKe =



λ1, ..., λk, ..., λKe

T

15: Reorder of the signature sequences

16: Order λKe in an ascending manner to form λord, eK 17: Obtain its ordering kord=a1, ..., aKe

T

18: if EEER or EETG then

19: Find the minimum system value λmin, eK as:

λmin, eK =hλord, eKi

1 (4.14)

20: else

21: if ESER or ESTG then

22: Calculate the mean system value λmean, eK:

λmean, eK = λ T e K1Ke e K (4.15)

where 1Ke is a vector containing ones with a length of eK.

23: Order the signature sequence set hSord e K i k = [S temp e K ]ak for k = 1, ..., eK.

24: Perform signature sequence removal by removing the rst column of Sord e K : Stemp e K−1= h sord e K,2, ..., s ord e K,k, ..., s ord e K, eK i (4.16) 25: Set eK = eK− 1

4.5.2 Signature Sequence Selection for ES and EE Allocations

Selecting the optimum signature sequence set is to nd the combination of eK and bp

that maximises the total rate for a specic energy allocation scheme (ES or EE). Firstly, for a given set of discrete rate represented by the vector b = [b1, . . . , bp, . . . , bP], nd

the corresponding target system value vector λtar using the following equation:

tar]p= Γ 2

bp− 1

1− Γ 2bp− 1. (4.17)

where Γ is the gap value. Then, if ES allocations are performed, use λmean, eK obtained in Equation (4.15), nd the rate to be allocated for the eKth channel, b

p

e

K, ∀ eK = 1, . . . , K which satises the following inequatlity:

tar]p e

K ≤ [λmean]Ke < [λtar](p+1)

e

K (4.18)

where (p + 1)Ke is the index of the next discrete rate (p + 1) for the eK channel.

Otherwise, if EE allocations are performed, use λmin, eK obtained in Equation (4.14) and nd pKe ∀ eK = 1, . . . , K which satises the following inequality:

tar]p e

K ≤ [λmin]Ke < [λtar](p+1)

e

K. (4.19)

Find the total rate for all eK = 1, . . . , K by using the following equation: [RT]

e

K = eK [b]P

e

K (4.20)

The optimum number of signature sequences and total rate R?

T for either ESER or

EEER allocation is given by the following equations: K? = arg max e K=1,··· ,K (RT) ! , (4.21) b?p = [b]p K?, (4.22) R?T = [RT]K? = K?b?p. (4.23)

After obtaining K?, the corresponding signature sequence is Sord

K? (refer to Section 4.5.1). The algorithm can be summarised in Algorithm 10.

Algorithm 10 Algorithm to Find K? for ES and EE Schemes

1: Find λtar corresponding to each data rate b = [b1, . . . , bp, . . . , bP] using Equation

(4.17)

2: Find pKe ∀ eK = 1, . . . , K

3: if ESER or ESTG then

4: Obtain pKe using Equation (4.18) 5: else

6: if EEER or EETG then

7: Compute pKe using Equation (4.19) 8: Calculate RT using Equation (4.20).

9: Obtain K?using Equation (4.21), b?

p using Equation (4.22) and R?T using Equation

(4.23).

10: Select the optimum signature sequence set Sord

K? for ES allocation.

11: if ESER or ESTG then 12: Find λ?

meanusing the following equation:

λ?

mean= [λmean]K? (4.24)

13: else 14: if

15: thenFind λ?

min using the following equation:

λ?min= [λmin]K? (4.25)

The rate R?

T given in Equation (4.20) is for equal rate allocation. When ESTG

is performed, the number of spread channels that can carry b?

p+1, m can be found by

nding the maximum m that satisfy: (K?− m) [λtar]p

K?+ m [λtar](p+1)K? ≤ K

?

mean]K? (4.26)

Similarly, EETG allocation can also be performed by loading spread channels that has system values λk > [λtar](p+1)K? with b

?

p+1. Then the total rate for two-group

allocation is given by:

R?T ,T G= (K?− m) b?

Related documents