What is Orthogonal Code in CDMA?
In Code Division Multiple Access (CDMA) systems, multiple users share the same frequency band simultaneously. To prevent interference and ensure that the signals from different users do not overlap destructively, each user’s data is encoded using a unique spreading code. These spreading codes play a critical role in distinguishing user data streams. Among these, orthogonal codes are a particular type of spreading code used primarily to eliminate or reduce cross-user interference within the system.
Orthogonal codes are sequences that, when mathematically compared with one another (typically via correlation), produce a result of zero. This property allows them to be perfectly distinguishable from each other under ideal synchronization. In simpler terms, if two signals use orthogonal codes, the receiver can completely separate them, assuming the timing between the signals is synchronized. This concept is fundamental in CDMA, especially in downlink transmissions from base stations to users.
Mathematical Understanding of Orthogonality
Two codes are said to be orthogonal if the inner product (or cross-correlation) of their sequences is zero. Suppose we have two binary sequences:
- A = [+1, -1, +1, -1]
- B = [+1, +1, -1, -1]
The inner product of A and B is:
(+1 × +1) + (-1 × +1) + (+1 × -1) + (-1 × -1) = +1 -1 -1 +1 = 0
Since the result is zero, the two codes are orthogonal. In a CDMA system, this means that if user A uses code A and user B uses code B, their signals will not interfere with each other, assuming perfect synchronization.
Application in CDMA Systems
Orthogonal codes are mainly used in the downlink direction of CDMA-based systems such as WCDMA, where the base station transmits to multiple users simultaneously. Since all signals originate from the same point (the base station), synchronization is more easily maintained. This makes it practical to apply orthogonal codes, allowing multiple users to receive data without intra-cell interference.
One widely used type of orthogonal code in CDMA systems is the Orthogonal Variable Spreading Factor (OVSF) code. These codes are structured in a tree hierarchy, where each code has a unique path and maintains orthogonality with other non-overlapping paths. OVSF codes allow dynamic allocation of spreading factors, which helps manage users with different data rate requirements.
Spreading Factor (SF) | Code Length | Data Rate | Application |
---|---|---|---|
4 | 4 chips | High | High-speed data |
8 | 8 chips | Moderate | Multimedia |
16 | 16 chips | Low | Voice |
This table illustrates that shorter codes (lower spreading factor) support higher data rates but are fewer in number, whereas longer codes (higher spreading factor) allow more simultaneous users at lower rates.
Limitations and Practical Considerations
Although orthogonal codes provide a powerful means of separating users, they are not perfect in real-world conditions. Their effectiveness heavily depends on synchronization. In the uplink (from users to the base station), each user transmits from a different location, and maintaining perfect timing is practically impossible. Due to these timing differences, orthogonality breaks down in the uplink, leading to what is known as multiple access interference (MAI).
To handle this, uplink transmissions typically use pseudorandom noise (PN) codes or scrambling codes, which are not orthogonal but have low cross-correlation properties. These help to minimize interference statistically, rather than eliminate it deterministically.
Why are orthogonal codes mostly used in the downlink?
In the downlink, all signals are transmitted from the same source (the base station), so synchronization can be precisely controlled. This makes it feasible to maintain the orthogonality between users. In the uplink, signals arrive at the base station at slightly different times due to varying distances and propagation delays, breaking the orthogonality and causing interference.
Can two users use the same orthogonal code?
No, in a given cell, two users cannot use the same orthogonal code simultaneously, as this would lead to interference. The base station ensures that each user is assigned a unique code from the available OVSF code tree to maintain signal separation.
What happens if all orthogonal codes are used up?
When all orthogonal codes are assigned, the base station cannot accept more simultaneous users without causing code conflicts. In such cases, the network may implement admission control to limit access, or it may reduce the data rate of some users to free up code resources with higher spreading factors.
Is orthogonality preserved in the presence of multipath propagation?
Multipath effects, where the same signal arrives at the receiver via different paths and times, can degrade orthogonality, even in the downlink. However, WCDMA systems use RAKE receivers that exploit multipath diversity and combine the delayed signals constructively, partially restoring the benefits of orthogonal coding.
Orthogonal codes are a foundational element of CDMA technology, enabling multiple users to share a frequency spectrum efficiently. Their perfect separation of signals under synchronized conditions makes them ideal for downlink transmission in modern cellular networks. Despite their limitations, especially in the uplink, they remain a key mechanism in achieving efficient and scalable mobile communication systems.