Exercise 3.8: OVSF Codes
The spreading codes for UMTS should
- be orthogonal, in order to avoid mutual influence of the participants,
- at the same time also allow a flexible realization of different spreading factors J.
An example are the "Orthogonal Variable Spreading Factor Codes" (OVSF), which provide the spreading codes of lengths from J=4 to J=512.
As shown in the graphic, these can be created with the help of a code tree. In doing so, each branching from a code C results in two new codes (+C +C) and (+C –C).
The diagram illustrates the principle given here using the following example J=4. If you number the spreading sequences from 0 to J−1, the spreading sequences result
- ⟨c(0)ν⟩= +1+1+1+1,
- ⟨c(1)ν⟩=+1+1−1−1,
- ⟨c(2)ν⟩= +1−1+1−1,
- ⟨c(3)ν⟩=+1−1−1+1.
According to this nomenclature, there are the spreading sequences ⟨c(0)ν⟩,...,⟨c(7)ν⟩ for the spreading factor J=8.
It should be noted that no predecessor or successor of a code may be used by other participants.
- In the example, four spreading codes with spreading factor J=4 could be used, or
- the three codes highlighted in yellow – once with J=2 and twice with J=4.
Notes:
- This task belongs to the chapter Spreading sequences for CDMA.
- Particular reference is made to the page Codes with variable spreading factor.
Questionnaire
Solution
(1) The following graphic shows the OVSF tree structure for J=8 users.
- From this it can be seen that the solutions 1, 3 and 4 apply, but not the second.
(2) If each user is assigned a spreading code with the spreading degree J=8, Kmax =8_ users can be supplied.
(3) If three users are supplied with J=4, only two users can be served by a spreading sequence with J=8 (see example yellow background in the graphic) ⇒ K=5_.
(4) We denote
- K4=2 as the number of spreading sequences with J=4,
- K8=1 as the number of spreading sequences with J=8,
- K16=2 as the number of spreading sequences with J=16,
- K32=8 as the number of spreading sequences with J=32,
Then the following condition must be fulfilled:
- K4⋅324+K8⋅328+K16⋅3216+K32⋅3232≤32⇒K4⋅8+K8⋅4+K16⋅2+K32⋅1≤32.
- Because 2⋅8+1⋅4+2⋅2+8=32 the desired assignment is just allowed ⇒ The answer is YES.
- For example, providing the J=4 twice blocks the upper half of the tree, after providing a J=8 spreading code, 3 of the 8 branches remain to be occupied at the J=8 level, and so on and so forth.