Introduction to Code Division Multiple Access

Modern wireless communication systems rely on efficient multiple access techniques to allow many users to share the same spectrum simultaneously. Code Division Multiple Access (CDMA) stands apart from frequency-division and time-division methods because it permits all users to occupy the entire bandwidth at all times. The key enabler of this simultaneous, interference-tolerant communication is the use of spreading codes, among which orthogonal codes play a central role. Without orthogonal codes, the signature separation that makes CDMA practical in systems ranging from 2G IS-95 to 3G WCDMA and emerging 4G/5G variants would be impossible.

In a CDMA system, each user's data signal is multiplied by a unique code sequence that has a wide bandwidth relative to the data rate. This process spreads the signal across the frequency band. At the receiver, the same code is applied to despread the desired signal while other users' signals (spread by different codes) appear as noise. The degree to which this separation works depends critically on the correlation properties of the codes. Ideally, codes from different users should have zero cross-correlation—that is, they should be orthogonal. The pursuit of near-perfect orthogonality defines the performance limits of CDMA networks.

Understanding Orthogonal Codes in Depth

An orthogonal code set is a collection of sequences where the inner product (dot product) of any two distinct sequences is zero. In practice, this means that when two users transmit using orthogonal codes, their signals do not interfere with each other at the receiver, assuming perfect synchronization and no channel impairments. Mathematically, for two length-N codes ci and cj with elements +1 and −1, orthogonality requires:

k=1N ci,k · cj,k = 0   for i ≠ j

This property is the foundation upon which CDMA builds its multiple-access capability. The most well-known families of orthogonal codes used in wireless standards are Walsh–Hadamard sequences, Orthogonal Variable Spreading Factor (OVSF) codes, and specialized zero-correlation-zone sequences used in quasi-orthogonal designs.

Orthogonality can only be maintained under ideal conditions: perfect time alignment across all users and a frequency-flat, non-dispersive channel. In real networks, these conditions are rarely fully met, and the system must be designed to tolerate some loss of orthogonality. This is why understanding the theoretical underpinnings of orthogonal codes is essential for network engineers and researchers.

The Mathematics of Walsh–Hadamard Codes

Walsh codes are generated from Hadamard matrices, which are square matrices of order N (where N is a power of 2) whose entries are ±1 and whose rows are mutually orthogonal. The standard construction uses the recursive definition:

H1 = [1],   H2N = [HN   HN; HN   −HN]

Each row of the matrix corresponds to a Walsh code of length N. In IS-95 CDMA systems, the forward link (base station to mobile) uses Walsh codes of length 64 to distinguish up to 64 channels (pilot, sync, paging, and traffic). Because the base station transmits all codes synchronously, orthogonality is preserved. On the reverse link, however, non-orthogonal (but low-correlation) codes such as long PN sequences are used because synchronous transmission from multiple mobile stations is impractical.

The orthogonality of Walsh codes holds only when the codes are perfectly aligned in time. A shift by even one chip destroys orthogonality, which is why careful timing synchronization is critical in CDMA forward links. The code length also imposes a strict limit on the number of orthogonal channels: for length N, at most N orthogonal codes exist. This limitation leads to code reuse and planning challenges in cellular networks.

Orthogonal Variable Spreading Factor (OVSF) Codes

While Walsh codes offer a fixed spreading factor, 3G WCDMA (UMTS) systems require support for multiple data rates simultaneously. OVSF codes were introduced to provide variable-length orthogonal codes while maintaining orthogonality across users with different spreading factors. OVSF codes are organized in a code tree where each node has two child codes derived by concatenating the parent code with itself (for one branch) and with its negation (for the other branch).

This hierarchical structure ensures that any two codes from the same tree are orthogonal if neither is an ancestor of the other. This allows the network to assign shorter codes (higher data rates) to users needing more bandwidth while longer codes serve users with lower data rates. However, the tree structure enforces a hard constraint: if a code is assigned to one user, all its descendants and ancestors are blocked. This creates a code capacity management problem that is solved through dynamic code assignment algorithms, often tied to channel quality and Quality of Service (QoS) requirements.

OVSF codes are a key reason why 3G CDMA systems could offer flexible data rates from a few kbps up to 2 Mbps. Their orthogonal property ensures that within a cell, the forward link interference remains low even as data rates vary.

Role of Orthogonal Codes in CDMA System Performance

The performance of a CDMA system is typically measured in terms of capacity (number of simultaneous users), data throughput, and call quality (measured by bit error rate or frame erasure rate). Orthogonal codes directly influence all three metrics. Here we examine the performance contributions in detail.

Capacity Enhancement Through Orthogonal Spreading

In a perfectly synchronous forward link with orthogonal codes, the interference from other users within the same cell is theoretically zero. This means the only interference a user sees is from adjacent cells (inter-cell interference) and thermal noise. The capacity of a CDMA cell is then determined by the signal-to-interference-plus-noise ratio (SINR) requirement of the weakest user. By eliminating intra-cell interference, orthogonal codes allow a larger number of simultaneous users than would be possible with non-orthogonal codes. Studies show that orthogonal forward links can improve capacity by 40–60% compared to purely random spreading scenarios.

However, as users move and multipath destroys orthogonality, the orthogonality factor (a value between 0 and 1) degrades. In a typical macro-cell environment, the orthogonality factor might be 0.4 to 0.6, meaning only 40–60% of the transmitted power from other users appears as interference. This still represents a substantial capacity gain, but it requires robust power control and advanced receivers to maintain.

Interference Reduction and Signal Clarity

Orthogonal codes also improve signal clarity by reducing the near-far problem. In CDMA, a user close to the base station can overwhelm a distant user if all users transmit at equal power. By using orthogonal codes on the forward link, the base station can transmit each user's signal at a power level appropriate to that user's path loss without creating interference to others, because the codes separate them. This allows the base station to allocate power independently per user, a capability not possible in TDMA or FDMA systems where time/frequency resources are fixed.

On the reverse link, where orthogonality is harder to maintain, power control becomes the primary tool to mitigate interference. Nevertheless, some advanced CDMA systems use quasi-orthogonal codes or interference cancellation techniques that exploit the known structure of orthogonal codes to improve performance.

Data Throughput and Flexible Rate Support

With OVSF codes, CDMA systems can support a wide range of data rates by assigning codes with different spreading factors. A user requiring high throughput gets a short code (small spreading factor), which increases the data rate but also reduces the processing gain. The reduced processing gain makes the user more vulnerable to interference, so the system must allocate higher transmit power or rely on better channel conditions. The orthogonal property ensures that even as spreading factors change, the codes remain orthogonal to other assigned codes in the tree, maintaining low intra-cell interference.

Adaptive modulation and coding (AMC) combined with orthogonal code assignment allows modern CDMA-based systems (like HSPA) to achieve peak rates exceeding 10 Mbps in good channel conditions. The orthogonality of codes is preserved across different spreading factors, which makes this flexible rate allocation possible without redesigning the entire code set.

Types of Orthogonal Codes Used in CDMA

While Walsh and OVSF codes dominate commercial standards, other orthogonal code families have been developed for specific purposes. The following sections describe the most important types and their applications.

Walsh–Hadamard Codes in IS-95 and cdma2000

As mentioned, IS-95 uses Walsh codes of length 64 on the forward link. The forward CDMA channel consists of a pilot channel (all-zeros Walsh code 0), up to 7 paging channels, a sync channel, and multiple traffic channels, each assigned a unique Walsh code. Because the base station synchronizes all channels, the orthogonality is perfect within the cell. The cdma2000 1x system extends this by using longer Walsh codes (up to length 256) and introducing quasi-orthogonal code sets to increase the number of available channels while sacrificing some orthogonality.

Walsh codes are also used in the reverse link of cdma2000 for the pilot channel (R-PICH) and the dedicated control channel, but here orthogonal coverage is limited because mobiles are not synchronized to each other. Instead, Walsh codes on the reverse link help the base station distinguish between different channels from the same mobile (e.g., pilot, control, data).

OVSF Codes in WCDMA/HSPA

The 3GPP WCDMA standard uses OVSF codes with a maximum spreading factor of 512 on the forward link and 256 on the reverse link. The OVSF tree is defined with the root code of length 1, and each branch splits into two codes of double length. The allocation algorithm must ensure that no two users in the same cell are assigned codes that are ancestor/descendant of each other. This constraint reduces code utilization, but dynamic code reassignment and the use of secondary scrambling codes (which are not orthogonal) can alleviate code shortages.

HSPA (High-Speed Packet Access) introduced high-speed downlink shared channels (HS-DSCH) that use OVSF codes shared among users in a time-multiplexed manner. The Node-B scheduler can assign multiple OVSF codes to a single user for high-speed data, or distribute them among users. The orthogonality of codes is critical because the HS-DSCH channel is transmitted at high power and can cause severe interference if codes are not orthogonal.

Quasi-Orthogonal and PN Sequences

Because the number of orthogonal codes for a given length is limited, CDMA systems often supplement them with quasi-orthogonal or pseudo-noise (PN) sequences that have low, but non-zero, cross-correlation. In IS-95, the reverse link uses a long PN sequence (with period 242-1) that is unique to each mobile. These codes are not orthogonal to each other, but their cross-correlation is low enough that the system can operate with power control and interference averaging. Similarly, the forward link in WCDMA adds a cell-specific scrambling code (a Gold sequence of length 38,400) on top of the OVSF codes to separate cells. The scrambling codes are not orthogonal, but they provide inter-cell separation through low cross-correlation.

Quasi-orthogonal code sets are designed to have cross-correlation values bounded by √ N (where N is the code length), which is much lower than the peak for random sequences. These are used in situations where the number of users exceeds the orthogonal code capacity, or where synchronization cannot be maintained (e.g., reverse link).

Challenges and Practical Considerations

Despite their theoretical elegance, orthogonal codes introduce several practical challenges that engineers must address when designing CDMA networks. The following subsections detail these issues and the solutions used in real systems.

Synchronization and Timing Jitter

Orthogonality requires that all users' signals arrive at the receiver with chip-level alignment. On the forward link, the base station transmits all signals using the same clock, so alignment is inherent. However, the propagation delay across the cell causes signals from different mobiles to arrive at different times. To mitigate this, the base station applies time offsets (advances or delays) to each user's signal so that at the mobile, the intended code aligns with the code generator. In WCDMA, this is achieved through a coarse synchronization step (slot and frame synchronization) and fine tracking using delay-locked loops (DLLs).

Timing jitter (rapid fluctuations in arrival time due to phase noise or Doppler shifts) can cause the correlator output to lose part of the orthogonality. This results in inter-code interference that adds to the thermal noise floor. To compensate, CDMA systems employ tracking loops with bandwidths matched to the expected Doppler spread, and some receivers use fast Fourier transform (FFT) based correlators that can compute correlations for multiple timing hypotheses simultaneously.

Multipath Propagation and Orthogonality Loss

In mobile environments, signals reflect off buildings, terrain, and vehicles, creating delayed copies (multipath) of the same signal. When a user's signal arrives via multiple paths, the timing difference between the direct path and a reflected path can exceed a chip duration. In that case, the reflected copy of the intended code becomes misaligned with the code of another user, destroying orthogonality. This phenomenon is called "orthogonality loss" or "inter-path interference."

The primary tool to combat multipath-induced interference is the Rake receiver. A Rake receiver uses multiple fingers, each correlating with a different delay path. By coherently combining the path energies, it mitigates the effect of inter-path interference. However, if the multipath delay spread is large (e.g., in rural or mountainous terrain), the orthogonality factor can drop below 0.3, significantly reducing capacity. Advanced receivers use minimum mean square error (MMSE) equalizers to restore orthogonality by estimating the channel and applying a linear filter that suppresses inter-code interference.

Code Management and Dynamic Allocation

In a large CDMA network with thousands of cells, managing the allocation of orthogonal codes becomes a significant operational challenge. Each cell has a limited set of orthogonal codes (e.g., 64 Walsh codes in IS-95). These codes must be reused across cells in a planned manner to avoid interference. In cdma2000, cells are assigned different "code phases" or "code masks" to minimize inter-cell collision. With OVSF codes, the tree structure further restricts allocation because using a code blocks all its descendants.

Dynamic code allocation algorithms run in the radio network controller (RNC) or Node-B, assigning codes to new calls based on quality requirements and available code tree resources. If a high-data-rate user requires a short code, but all short codes are taken, the system may need to reallocate codes among existing users—a process called "code reassignment." This can cause temporary service interruptions, so algorithms must minimize such events. Research has proposed "code placement" strategies (e.g., leftmost, crowded-first) that reduce blocking probability.

Inter-Cell Interference and Frequency Planning

Orthogonal codes eliminate intra-cell interference, but inter-cell interference remains a major capacity limiter. Because all cells in a CDMA system reuse the same frequency (reuse factor of 1), users at the cell edge suffer interference from neighboring cells. This interference is not orthogonal to the serving cell's codes because scrambling codes are different. The net effect is that the orthogonality advantage mainly benefits users near the base station. For cell-edge users, inter-cell interference dominates, and orthogonality within a cell provides limited benefits.

Techniques like fractional frequency reuse (FFR) and soft handover help manage inter-cell interference. In soft handover, a mobile simultaneously communicates with multiple base stations, and the system combines signals from multiple cells. This reduces interference because signals from non-serving cells are suppressed. Additionally, inter-cell interference coordination (ICIC) in LTE and 5G NR (which are OFDMA-based but include CDMA concepts) uses resource partitioning to assign orthogonal code or frequency resources to cell-edge users.

Advanced Orthogonal Code Techniques and Future Directions

Research continues to push the boundaries of CDMA performance by developing new code families and receiver architectures that overcome the limitations of traditional orthogonal codes. Several promising directions are outlined below.

Generalized Orthogonal Codes (GOC)

Generalized orthogonal codes extend the concept of orthogonal sequences to complex-valued or higher-dimension spaces. For example, complex quadrature codes (e.g., those used in WCDMA's secondary scrambling) can be designed to have zero periodic cross-correlation over a range of Doppler shifts. GOCs can be combined with multiple-input multiple-output (MIMO) techniques to provide space-time orthogonality, enabling simultaneous transmission from multiple antennas without interference.

Researchers have also explored "super-orthogonal" codes that maintain orthogonality even under chip timing errors of up to half a chip. These codes use redundancy to allow late despreading without penalty. While such codes reduce capacity (since they require longer sequences), they can be useful in ad-hoc or bursty transmission scenarios where synchronization is loose.

Non-orthogonal Multiple Access (NOMA) and CDMA

Modern 5G and beyond-5G systems are transitioning from purely orthogonal multiple access to Non-Orthogonal Multiple Access (NOMA), where users share the same code in the power domain. In NOMA, the base station superposes signals of different users with different power levels, and receivers use successive interference cancellation (SIC) to decode them. This approach improves spectral efficiency in massive connectivity scenarios (e.g., IoT). Orthogonal codes play a supporting role in NOMA by providing a second dimension (code domain) that can be combined with power-domain multiplexing.

For example, a hybrid scheme called "Code-Domain NOMA" (CD-NOMA) assigns sparse spreading codes that are not fully orthogonal but have low pairwise cross-correlation. The receiver uses message passing algorithm (MPA) to detect users. This approach can support more users than orthogonal codes alone, at the cost of increased receiver complexity. Operators are evaluating CD-NOMA for 6G systems, which will require massive connectivity with diverse data rates.

Artificial Intelligence for Code Assignment and Detection

Machine learning techniques, particularly deep neural networks, are being applied to optimize code allocation in real time. A reinforcement learning agent can learn the optimal assignment of OVSF codes given traffic patterns, channel quality, and handover probabilities. Early results show a 10–15% reduction in call blocking compared to heuristic algorithms.

Neural-network-based receivers can also learn to mitigate inter-code interference without explicit channel estimation. For example, a convolutional neural network (CNN) can process the received baseband signal and directly output the symbols for each user, implicitly compensating for multipath and timing errors that destroy orthogonality. Such approaches are computationally intensive but may become feasible with dedicated hardware in future base stations.

Integration with OFDM and FBMC

Orthogonal Frequency Division Multiplexing (OFDM) uses orthogonal subcarriers to avoid inter-symbol interference. In LTE and 5G NR, OFDM has replaced CDMA for the air interface. However, the concept of orthogonal spreading codes has been repurposed in the form of "precoding" for multi-user MIMO. For instance, the base station can assign orthogonal beamforming vectors to users on the same time-frequency resource—this is mathematically analogous to assigning orthogonal codes in the spatial domain.

Filter bank multicarrier (FBMC) is another waveform that uses orthogonal filters with better spectral containment than OFDM. In FBMC, the role of orthogonal codes is replaced by orthogonal polyphase filters that separate users in both time and frequency. Future systems may combine FBMC with code-domain multiplexing for massive IoT scenarios, where thousands of devices transmit short packets sporadically.

Conclusion

Orthogonal codes remain a foundational technology for CDMA systems, enabling multiple users to share the same frequency band with minimal intra-cell interference. From the early days of Walsh codes in IS-95 to the flexible OVSF codes in WCDMA, these sequences have proven essential for achieving high capacity, robust interference management, and variable data rates. While challenges such as synchronization, multipath degradation, and code management persist, ongoing research in generalized codes, non-orthogonal multiple access, and AI-driven optimization continues to expand the capabilities of code-division techniques.

As wireless networks evolve toward 6G, the principles of orthogonal code design will likely be adapted to new domains—such as space-time coding, multi-user MIMO, and sparse code multiple access. Understanding the role of orthogonal codes in CDMA is therefore not only a lesson in past wireless technologies but also a foundation for future innovation in massive connectivity and high-efficiency spectrum sharing.


External References

  • 3GPP TS 25.213: "Spreading and modulation (FDD)" – describes OVSF codes and scrambling in WCDMA.
  • Viterbi, A. J. (1995). CDMA: Principles of Spread Spectrum Communication. Addison-Wesley. – Classic text on orthogonal spreading.
  • Holma, H., & Toskala, A. (2011). LTE for UMTS: OFDMA and SC-FDMA Based Radio Access. – Contrasts CDMA with OFDMA.
  • Zappone, A., & Sanguinetti, L. (2022). "Machine Learning for Wireless Communications: A Comprehensive Survey." IEEE Communications Surveys & Tutorials – discusses AI in code allocation.
  • Dai, L., et al. (2015). "Non-Orthogonal Multiple Access for 5G: Solutions, Challenges, Opportunities, and Future Research Trends." IEEE Communications Magazine – covers code-domain NOMA.