Cdma Based Multiuser Communication System Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

In 1895, Guglielmo Marconi opened the way for modern wireless communications by transmitting the three-dot Morse code for the letter 'S' over a distance of three kilometers using electromagnetic waves. From this beginning, wireless communications has developed into a key element of modern society. From satellite transmission, radio and television broadcasting to the now ubiquitous mobile telephone, wireless communications has revolutionized the way societies function.

The last two decades have seen an explosion in the growth of radio systems. Wireless communication systems migrated from the first-generation (1G) narrowband analog systems in the 1980s, to the second-generation (2G) narrowband digital systems in the 1990s, to the current third-generation (3G) wideband multimedia systems that are being deployed. Meanwhile, research and development in the future-generation wideband multimedia radio systems is actively being pursued worldwide.

The first radiotelephone service was introduced in the US at the end of the 1940s, and was meant to connect mobile users in cars to the public fixed network.  In the 1960s, a new system launched by Bell Systems, called Improved Mobile Telephone Service" (IMTS), brought many improvements like direct dialing and higher bandwidth.  The first analog cellular systems were based on IMTS and developed in the late 1960s and early 1970s.  The systems were "cellular" because coverage areas were split into smaller areas or "cells", each of which is served by a low power transmitter and receiver.


A communication system deals with information or data transmission from one point to another. The block diagram of a general digital communication system is given in Figure 1. This block diagram is also applicable to remote sensing systems, such as radar and sonar, in which the transmitter and receiver may be located at the same place.

Figure 1. Block diagram of a general communication system.

The source generates either analog signals such as speech, audio, image, and video, or digital data such as text or multimedia. The source encoder generates binary data from the source. The generated binary data is then subject to

channel encoder so that the binary data sequences can be reliably reproduced at the receiver. The channel-encoded data stream is then modulated to generate waveforms for transmission over a channel, which is a physical link such as a telephone line, a high frequency radio link, or a storage medium. The channel is subject to various types of noise. At the receiver, the above procedure is reversed so as to finally restore the oringinal source information.

There are three types of common transmission channels: wireless channels, guided electromagnetic wave channels, and optical channels. The wireless channel can be the atmosphere or free space. Due to its open nature, there are various noise sources added to the channel. Coaxial cable line was once a major guided wave channel, and optical fiber is a special type of guided wave channel. The long-distance telephone network once used coaxial cable lines, which has now been replaced by optical fiber.


Definition of Digital

A method of storing, processing and transmitting information through the use of distinct electronic or optical pulses that represent the binary digits 0 and 1.

Advantages of Digital

Less expensive

More reliable

Easy to manipulate


Compatibility with other digital systems

Only digitized information can be transported through a noisy channel without degradation

Integrated networks

Disadvantages of Digital

Sampling Error

Digital communications require greater bandwidth than analogue to transmit the same information.

The detection of digital signals requires the communications system to be synchronised, whereas generally speaking this is not the case with analogue systems.

Definition of Analogue

Analogue is a transmission standard that uses electrical impulses to emulate the audio waveform of sound. When you use a phone, the variations in your voice are transformed by a microphone into similar variations in an electrical signal and carried down the line to the exchange.

Advantages of Analogue

Uses less bandwidth

More Accurate

Disadvantages of Analogue

The effects of random noise can make signal loss and distortion impossible to recover


The concept of cellular telephony was introduced in AMPS, short for Advanced Mobile Phone Systems. AMPS divided the total area into small regions called cells and this was from where the concept of cellular telephony started. Cellular Systems had many advantages such as they increased quality, capacity, reliability and availability of mobile telephone network. The generations of cellular systems are described below.


First generation cellular telephone systems were introduced in 1980's. They were based on Analog Frequency Modulation technique. Each channel was a assigned a unique frequency band within a cluster of cells.

First generation cellular systems offered only wireless voice services based on analog technology. Digital signals were only used for control information such as dialing a number etc. These systems were no able to cope with the increasing demands of users also they had very less capacity and provided poor voice quality.

Some first generations systems are

Advanced Mobile Telephone System, AMPS

Narrowband AMPS, NAMPS

Total Access Cellular System, TACS

Nordic Mobile Telephone System, NMT-900


Second Generation Cellular Systems provided larger capacity and provided much better services to users compared to first generation systems. They were based upon Digital Modulation technique which led to great enhancement in network's capacity.

Second Generation Systems used multiple access techniques such as TDMA and FDMA.

The biggest draw back of Second Generation Systems was that its different systems were not compatible with each other. Therefore roaming between different systems was not possible.

Some of Second Generation Systems are

North American Digital Cellular, NADC

Global System for Mobile Communication, GSM

Pacific Digital Cellular, PDC


In order to overcome Second Generation compatibility problem with increased data rates of modern internet applications, 2.5 Generation standards were developed. The best thing about them was that they allowed already existing Second Generation systems to be upgraded so that they can be used for higher data rate transmission.

2.5 Generation brought a new revolution in cellular telephony by supporting services like high speed internet and location based mobile services.

Some of 2.5 Generation Mobile Systems are

General Packet Radio Service, GPRS

Enhanced Data Rate for GSM Evolution, EDGE


Designed to provide high quality and high capacity in data communication, Third Generation Systems require sophisticated spreading and modulation techniques.

Third Generation Systems are aimed to provide voice quality comparable to land line telephony and also to support high data rate.

These systems are compatible with both packet switched and circuit switched data services. They are also compatible with the existing networks and use radio spectrum much more efficiently than before.

Some Third Generation Systems are

Wideband CDMA, WCDMA

Universal Mobile Telephone System, UMTS

CDMA 2000


In the field of mobile communication services, the 4G mobile services are the advanced version of the 3G mobile communication services. The 4G mobile communication services are expected to provide broadband, large capacity, high speed data transmission, providing users with high quality color video images, 3D graphic animation games, audio services in 5.1 channels. We have been researching the vision of 4G mobile communication systems, services, and architectures. We also have been developing the terminal protocol technology for high capacity, high speed packet services, public software platform technology that enables downloading application programs, multimode radio access platform technology, and high quality media coding technology over mobile networks.

Reasons To Have 4G

Support interactive multimedia services: teleconferencing, wireless Internet, etc.

Wider bandwidths, higher bit rates.

Global mobility and service portability.

Low cost.

Scalability of mobile networks.


Multiplexing is a process where several different signals are transmitted by means of a single carrier. All of these signals are transmitted simultaneously by combining them into one signal that will effectively move through the carrier bandwidth. Once this signal arrives at the destination point for one of the transmissions, the integrated signal re-assembles into its actual form and is then received.

Multiplexing is one of the most used techniques toda in almost every form of communication systems. A wide range of telephony services and online applications are able to function with high degree of efficiency due to the current technological advances multiplexing has made possible.

Multiplexing has become an effective technique that assist in everything from video conferences and web conferences upto bulk data transmissions and even making a simple Point-to-Point phone call.


The most usual method of multiple access is frequency division multiple access. In FDMA, users share the accessible spectrum in the frequency domain. The message signals from different users are transmitted on carriers using singular RF center frequencies. The simplest method within FDMA structural design is the one where a separate carrier for each channel is provided, which is known as Single Channel Per Carrier (SPSC). This scheme is very proficient because it allows channels to be used in a demand-assigned mode. Within a cell all the channels are available to all the users, and the channel task is carried out on a first-come first-serve basis.

Interference from adjacent channels is limited by the use of guard bands in between the bands allocated for various channels.

FDMA is the multiplexing technique that was used in the implementation of the first analog cellular systems that were implemented.


Time division multiple access techniques, that are used in many digital cellular systems, rely on the fact that data signals have been digitized in order to house information from numerous users within one frequency channel not like FDMA which uses one frequency per channel.

In TDMA techniques the available spectrum is split into narrow frequency bands as in FDMA, which in turn are divided into various time slots. User is assigned a time slot that allows access to the frequency channel only for the duration of the time slot. So, the user can access the frequency channel for a particular duration of time periodically.

In TDMA systems, guard bands are required between both frequency channels and time slots.


SDMA which stands for Space-Division Multiple Access or Spatial Division Multiple Access is a MIMO (Multiple-Input, Multiple-Output, a multiple antenna schematic architecture) based wireless communication network architecture, largely suitable for mobile ad-hoc networks, enabling access to a communication channel by the process of identifying the user location and establishing a one-on-one mapping between the network bandwidth allotment and the acknowledged spatial location.

SDMA architecture can be configured and implemented for majority of the well known mobile communication architectures such as CDMA (Code division Multiple Access), TDMA (Time Division Multiple Access) and FDMA (Frequency Division Multiple Access).


Code division multiple access systems are a class of spread spectrum systems in which all the users are allowed to transmit simultaneously while operate at the same nominal frequency and using the entire system's spectrum.

As all of the users transmit simultaneously throughout all of the system frequency spectrum, a unique private code must be allotted to each user, as such to make sure that his transmission can be identified and extracted when required. To ensure this privacy we use spreading codes (also known as pseudo-random noise codes or PN codes) that are basically orthogonal codes i.e. codes with a very low probability of cross correlation among themselves. The message signal from an individual user is modulated by the help of the unique PN code assigned to the specicific user. All of these PN-modulated signals from various users are then transmitted over the CDMA frequency channel. At the receiver's end, the desired signal is then recovered by de-spreading the signal with a replica of the PN code for the specific user. All of the remaining signals i.e. which belong to other users, whose PN-codes do not match that of the desired signal, are not de-spread and as a result are regarded as noise by the receiver.

In CDMA, because users are allowed to transmit at the same time and operate at the same nominal frequency, very low dynamic synchronization is required, as opposed to TDMA and FDMA, where frequency and time management is very critical. Also, since signals in CDMA use the whole of system's spectrum, no guard bands of any kind are needed which saves bandwidth.

Introduction to Spread Spectrum Communications

CDMA is a form of Direct Sequence Spread Spectrum communications. In general, Spread Spectrum communications is described by three key elements:

The signal occupies a bandwidth far in excess than that is necessary to send the information. This results in many benefits, such as immunity to multi-user access, jamming and interference

The bandwidth is spread by the help of a code which is independent of the data. The independence of the code distinguishes this from standard modulation schemes in which modulation always spread's the spectrum somewhat.

The receiver synchronizes to the code in order to recover the data. The use of an independent code and synchronous reception allows multiple users not only to access the same frequency band but also at the same time.

For the protection of the signal, the code used is pseudo-random. It appears to be random, but is in reality deterministic, so that the receiver can reconstruct the code needed for the synchronous detection. This pseudo-random code is also called pseudo noise (PN).

Types of Spread Spectrum Communications

There are three ways to spread the bandwidth of the signal:

Frequency hopping

The signal is rapidly switched between various frequencies within the hopping bandwidth pseudo-randomly, and the receiver already knows where to look for the signal at a given time.

Time hopping

The signal is transmitted in short bursts pseudo-randomly, and the receiver knows when a burst is expected.

Direct sequence

The digital data is coded at a much higher frequency. The code is pseudo-randomly generated; the receiver is trained to generate the same code, and correlates the received signal with the generated code for the extraction of data.




Digital Modulation is performed in order to represent digital data in a format that is compatible with our communication channel.

Why Digital Modulation? Digital modulation schemes have greater capacity to convey large amounts of information than analog modulation schemes.


Digital signal is binary data encoded into signal elements. Different encoding schemes for encoding digital data into digital signal are:

3.1.1 Non Return to Zero (NRZ)

In NRZ there are two different voltage levels for 0 and 1. There is no transition in the middle of the bit. The absence of signal denotes 0 and a positive voltage level denotes 1.

Figure 3.1, Non Return to Zero (NRZ)

The major drawback of NRZ scheme is that it adds a dc component to the signal.

3.1.2 Multilevel Binary (AMI)

In this encoding scheme there are more than two levels. No signal represents 0 and 1 is represented by some positive and negative voltage level. 1's pulses are opposite in polarity.

Figure 3.2, Multilevel Binary (AMI)

There is no dc component in this scheme and also there is no loss of synchronization for consecutive 1's.

3.1.3 Manchester Coding

There is transition in middle of each bit, which acts as a clock as well as data. The low to high transition represents 1 and high to low represents 0.

Figure 3.3, Manchester Coding

3.1.4 Differential Manchester

In this scheme transition at the middle of the bit represents only clocking while transition at start represents 0 and no transition at start represents 1.

Figure 3.4, Differential Manchester


Analog data is first converted into digital data by using analog to digital converters. These converters use different techniques to complete their task, some of them are:

3.2.1 Pulse Code Modulation

If a signal is sampled at regular intervals at a rate higher than twice the highest signal frequency, the samples contain all the information of the original signal. Each sample is assigned a digital value. Although its quality is comparable to that of analog transmission but still in this process some information is lost and the original signal can never be recovered.

Figure 3.5, Pulse Code Modulation

Delta Modulation

Analog input is approximated by a staircase function. Function moves up or down at each sample interval by one level (d).

Figure 3.6, Delta Modulation

Delta modulation is easier than PCM in implementation, but it exhibits worse signal to noise ratio for the same data rate. But it is good for data compression.


Various digital modulation techniques are:

3.3.1 Amplitude Shift Keying (ASK)

Amplitude-shift keying (ASK) is a form of modulation that represents digital data as variations in the amplitude of a carrier wave. One binary digit is represented by presence of carrier, at constant amplitude and the other binary digit represented by absence of carrier.

Figure 3.7, Amplitude Shift Keying (ASK)

3.3.2 Frequency Shift Keying (FSK)

In frequency shift keying different frequencies are used to represent incoming digital data. Say in case of Binary Frequency Shift Keying f1 is used to represent 0 while f2 is used to represent 1.

Figure 3.8, Frequency Shift Keying (FSK)

In MFSK more than two frequencies are used and hence bandwidth is more efficiently utilized.

3.3.3 Phase Shift Keying (PSK)

Phase-shift keying (PSK) is a digital modulation scheme that conveys data by changing, or modulating, the phase of a reference signal. In case of PSK, a finite number of phases are used. Each of these phases is assigned a unique pattern of binary bits. Usually, each phase encodes an equal number of bits. Each pattern of bits forms the symbol that is represented by the particular phase.

Figure 3.9, Phase Shift Keying (PSK)

Figure 3.10, Constellation Diagram of BPSK

The bandwidth of ASK and PSK are given as:

While the bandwidth of frequency shift keying is given as:

Where R is bit rate and DF = f2 - fc = fc - f1




Why Channel Coding? In modern digital communication systems information is represented in bit streams, these bit streams are then modulated to analog waveforms and then transmitted over a channel. At the receiver this analog information is demodulated into bit streams, but due to noise and interference in communication channel this bit stream may be corrupted. Therefore in order to reduce number of bit errors and protect digital data from channel noise and interference channel coding is used.

How Channel Coding is performed? Redundant bits are added to the message data stream, these extra bits at the receiver help in error detection and correction.

Channel Coding at the cost of? Channel Coding is performed at the cost of reduction in data rate and expansion in bandwidth.


There are two major types of channel coding techniques, 1. Block Codes 2. Convolutional Codes.

Block Codes accept 'k' number of information bits and produce a block of 'n' number of coded bits, and thus are commonly known as (n.k) block codes. Some common examples of block codes are Hamming Codes and Reed Solomon Codes.

Convolutional Coding is forward error correction technique that is currently most widely used in modern communication systems, these codes are used for real time error correction. Unlike block codes which append redundant bits at the end of original message signal, Convolutional coding form a new codeword using original data stream. The encoded bits depend not only on the 'k' current input bits but also on past input bits.


In this project Convolutional Coding is implemented. Convolutional Codes are further classified as 1. Trellis Coded Modulation (TCM) 2.Turbo Codes.

Trellis Coded Modulation (TCM) is non recursive, non systematic and does not require an interleaver.

Turbo Codes on the other hand are recursive, systematic, parallel structured and they also require interleaver.

In Wideband CDMA systems TCM is used for all channels while Turbo Codes may be used for DCH and FACH channels. Turbo Codes are sometimes classified as separate branch of Channel Codes so from here onwards word Convolutional Code will only be used for TCM.

Types of Transmission Channels

Coding Schemes

Coding Rate


Convolutional Coding





1/2, 1/3

Turbo Coding


Table 4.1, WCDMA Specifications


4.3.1 Polynomial Representation

No. of input information bits = k

No. of encoded bits = n

No. of stages (Constraint Length) = K

Code Rate = k/n

Encoded CodeWord = U

The following example shows how Convolutional Codes are represented.

Let g1(x) and g2(x) be encoder polynomials, where

g1(x) = 1+x+x2

g2(x) = 1+x2

Let input message bit stream be 101, therefore input message bit stream polynomial will be,

m(x) = 1+x2

The encoded codeword 'U' will be combination of product of g1(x) with m(x) and g2(x) with m(x),

m(x) x g1(x) = 1 + 1.x + 0.x2 + 1.x3 + 1.x4

m(x) x g2(x) = 1 + 0.x + 0.x2 + 0.x3 + 1.x4

Therefore the codeword 'U', becomes

U = (1,1) + (1,0).x + (0,0).x2 + (1,0).x3 + (1,1).x4

U = 11 10 00 10 11

4.3.2 State Transition Diagram

Convolutional Coding can be represented using State Transition Diagram. Following are State Transition Diagram and State Transition Table for code rate 1/2.

Figure 4.1, State Transition Diagram for Code Rate ½

Table 4.2, State Transition Table for Code Rate ½

Again for the same input bit stream 10100, the codeword U = 11 10 00 10 11. In the input message last two '00' bits are tail bits.

4.3.2 Block Diagram Representation

The following diagram shows block diagram representation of Convolutional Coding with

Code Rate = 1/2

Constraint Length (No. of Stages) = 3

Figure 4.2, Block Diagram Representation of Convolutional Code with Code Rate = ½

The following example illustrates the process of Convolutional Coding using block diagram representation for input bit stream 101.

So the final codeword becomes, U = 11 10 00 10 11

4.3.2 Trellis Diagram Representation

For input bit stream 101, the following diagram shows how Convolutional Coding is performed using Trellis Diagram

Figure 4.3, Trellis Diagram Representation




Why Pulse Shaping? It is done in order to reduce Inter Symbol Interference commonly known as ISI.

How Pulse Shaping is performed? In order to achieve zero-ISI the overall system response must be equal to Nyquist frequency response.


ISI can significantly degrade the ability of a data detector to differentiate a current symbol from diffused energy of adjacent symbol. This can lead to detection error and will reduce BER performance. So in order to cater ISI, a real-time realization of Nyquist filter is applied in modern communication systems. Raised cosine filter is one of the realization of Nyquist filter.

Where r is called the roll-off factor, which determines the filter bandwidth and takes values in the range 1 0 ≤ ≤ r . It represents a trade-off between the sharpness of the transition band of the filter and the magnitude of the ringing of the impulse response of the filter. T is the symbol period, which is inversely proportional to symbol rate R, i.e., T =1/R.

A Nyquist filter has following properties:

Time response goes to zero with a period that exactly corresponds the symbol spacing.

By sampling the symbol sequence at the precise symbol time point, the energy spreading from the adjacent symbols does not affect the value of the present symbol.

The impulse response and the frequency response of the RC filter is

Table 5.1, Impulse Response of RC Filter

Table 5.2, Frequency Response of RC Filter

Time response of the RC filter does go through zero with a period that exactly corresponds to the symbol spacing. Adjacent symbols do not interfere with each other at the symbol times because the response equals zero at all symbol times except the desired center one.


RC filter is split equally into a root raised cosine (RRC) filter pair, with one in the transmitter, performing the pulse shaping to constrain the modulated signal bandwidth, and the other in the receiver, performing matched detection for optimizing the SNR of a known signal in the presence of AWGN.

The RRC filter is so called because the transfer function is exactly the square root of the transfer function of the RC filter.

Where r is roll off factor and T is symbol period. The RRC filter bandwidth corresponding to root mean square (RMS) amplitude is 2R.

The impulse response and the frequency response of the RRC filter is

Table 5.3, Impulse Response of RRC Filter

Table 5.4, Frequency Response of RRC Filter

Inspecting two pulse shapes of RC and RRC, we see that they have a similar appearance, but the RRC pulse makes slightly faster transitions, thus its spectrum does not decay as rapidly as the spectrum of the RC pulse. Another subtle but important difference is that the RRC pulse does not exhibit zero ISI. However, if RRC filter is used at both the transmitter and the receiver, the product of these transfer functions being a raised cosine, will give rise to an output having zero ISI.


The roll-off factor, r, is a measure of the excess bandwidth of the filter, i.e. the bandwidth occupied beyond the Nyquist bandwidth of 1/2T.

Where ∆f is excess bandwidth and Rs is symbol rate.


What is Spread Spectrum?

Spread spectrum is a type of modulation that spreads the data transmissions across the available frequency spectrum more than the minimum bandwidth required to send the information. Spreading the data across the frequency spectrum makes the signal defiant to interference, noise and eavesdropping. Spread spectrum modulation techniques are commonly applied to personal communication devices such as digital cellular phones and also with wireless local area networks.

To qualify as a spread spectrum signal, two criterions must be met

The transmitted signal bandwidth must be in excess of the information bandwidth.

Some function other than the data being transmitted is used to establish the bandwidth of the resultant transmission.

Why Spread Spectrum?

Spread Spectrum has many unique properties that are not found in any other modulation scheme. Below are the advantages and disadvantages for a characteristic spread spectrum system.


• Has the capacity to eliminate or lessen the effects of multipath interference.

• Can share the same frequency band with other users.

• Provides privacy due to random codes (PN codes).

• Has low power spectral density as the signal is spread over a large frequency band.


• Bandwidth inefficient.

• Implementation is to some extent complex.

Types of Spread Spectrum Techniques

Two of the most popular techniques that provide spectrum spreading in a spread spectrum system are:-

Direct Sequence

Frequency Hopping

Frequency Hopping Spread Spectrum (FHSS)

As the name implies, the FHSS hops from narrow band to narrow band within a wide band. More specifically, FHSS radios send one or more data packets at one carrier frequency, hop to another frequency, send more data packets and continue this hop-transmit sequence. The hopping pattern or sequence appears random but is actually a periodic

sequence tracked by sender and receiver. FHSS systems can be susceptible to noise during any one hop but typically can achieve transmission during other hops within the wideband.

Direct Sequence Spread Spectrum (DSSS)

Direct Sequence Spread Spectrum is probably the most extensively renowned form of spread spectrum. A Direct Sequence Spread Spectrum transmitter converts an incoming data stream into a symbol stream where each symbol is made up of one or more bits. Using a phase-varying modulation technique such as quadrature phase-shift keying (QPSK) or quadrature amplitude modulation (QAM) the DSSS transmitter multiplies each symbol with a noise-like code called pseudorandom sequence. This is also called a "chip" sequence. This multiplication operation in a DSSS transmitter synthetically increases the used bandwidth on the basis of the length of the chip sequence.

Figure 3. Direct Sequence Spread Spectrum System

Figure 3. shows a basic Direct Sequence Spread Spectrum system. For clarity, the figure shows one channel working in one direction only.


A pseudo-random code is generated, different for each channel, different for each successive connection.

The Information data multiplies the pseudo-random code or the Information data is 'spread'.

The resulting signal modulates a carrier.

The modulated carrier is amplified and broadcasted.


The carrier is received and amplified.

The received signal is multiplied with a local carrier to recover the spread digital signal.

A pseudo-random code is generated, matching the expected signal.

The receiver acquires the received code and phase locks its own code to it.

The received signal is correlated with the generated code, extracting the Information data.

Pseudo-Random Noise

The construction of a spread spectrum system is carried out in a fashion quite similar to that of conventional systems. The main difference is that the transmitters and the receivers have to be equipped with generators for creating pseudo-random or pseudo-noise (PN) sequences. The PN sequences are used in order to spread the frequency spectrum of the signals at the transmitters and to de-spread it at the receivers. A PN sequence consists of a number of symbols, known as chips. The selection of a good code is important, because type and length of the code sets bounds on the system capability.

For each channel the base station generates a unique code that changes for every connection. The base station adds together all the coded transmissions for every subscriber. The subscriber unit correctly generates its own matching code and uses it to extract the appropriate signals. Note that each subscriber uses several independent channels.

In order for all this to occur, the pseudo-random code must have the following properties:

It must be deterministic; The subscriber station must be able to independently generate the code that matches the base station code.

It must appear random to a listener without prior knowledge of the code i.e. it has the statistical properties of sampled white noise.

The cross-correlation between any two codes must be small.

There should be a long time before the code repeats itself.

Maximum length sequences

These sequences can be generated by using shift registers with feedback applied on them. These sequences meet all the conditions for spreading sequences very strictly. The cross correlation between this sequence and noise is very low, which helps in detecting signal out of noise in the receiver. These sequences are very useful for encryption as they also have a very low cross correlation with each other.

The randomness properties of maximal length sequences can be seen here.

Gold Sequence

In order to create two gold sequences, two maximum length sequences are to be combined. They have a very low auto-correlation which enables CDMA systems to transmit asynchronously. Gold sequences are constructed from pairs of preferred m-sequences by modulo-2 addition of two maximal sequences of the same length.

Walsh Codes

Walsh codes have to be created from hadamard matrices. All generated Walsh codes would be orthogonal to each other. The basic hadamard matrix is shown below. These sequences provide low cross-correlation between each other. Secondly, the number of 1s is equal to number of 1s in every codeword.

By looking at the matrix above, Walsh codes with different lengths can be generated with the help of recursion. For a clear understanding Walsh codes with length equal to 4 are illustrated below.


Spreading the Signal

Spectrum is spread when each user multiplies each data bit to be transmitted with the PN sequence considerable for the user and the current PN sequence length. Figure 4 below shows how two bits are spread using a PN sequence having a length of 8 and the effect this spreading has on a signal's frequency spectrum. Spreading process of two bits with the help of an 8-chip PN sequence is shown on the left side and the result of the spreading in the frequency spectrum is shown on the right side of figure. 4

Figure 4. The principle of signal spreading

De-spreading the Signal

De-spreading of the signal is carried out by multiplying each chip of the signal with corresponding chip of the PN sequence and the result is summed bitwise. The result is then detected into antipodal symbols (n)  {-1, 1} by taking the sign of the sum. Figure 5 describes the principle of de-spreading when an 8-chip PN sequence is used in a transmission where the de-spreaded signal is equal to the spread signal. De-spreading process of two bits with an 8-chip PN sequence is shown on left side and the result of the de-spreading in the frequency spectrum is shown on the right.

Figure 5. The principle of signal de-spreading

Bandwidth Effects of the Spreading Operation

Figure 1. Spreading operation spreads the signal energy over a wider frequency bandwidth.

Spread spectrum modulation is applied on top of a usual modulation schemes such as BPSK or direct conversion.

Bandwidth Effects of the Despreading Operation

Figure 2. The despreading operation recovers the original signal.

In the above figure a spread-spectrum demodulation has been applied on top of the normal demodulation operations.

Multiple Access Capability

The receiver detects the spread spectrum signal s1 summed with the spread spectrum signal s2. The signal of user 1 only is coherently summed at the receiver by the de-spreader of user 1. The signal s2 appears only as background noise in comparison to the de-spread signal s1 (see figure 6 below).

The recovery of data from user 1 will only be successful if the background noise contains sufficiently low energy in the information bandwidth.

Spreaded data multi-users

De-spreaded data multi-users

Spreaded data multi-users

De-spreaded data multi-usersFigure 6. Principle of multiple access capability when user 1 de-spreads the signals




7.1.1 Source Encoding

Source Encoding is performed in order to make incoming message compatible with the communication system. In this project NRZ encoding scheme is used so that the incoming message signal becomes compatible with the walsh codes which are also in NRZ form. NRZ encoding provides a better utilization of the bandwidth, also if we compare it with AMI scheme it is more efficient because in that receiver has to distinguish between three different levels and it requires more signal power. While the Manchester and differential Manchester schemes have modulation rate twice or more than that of NRZ so hence they require greater bandwidth.

7.1.2 Channel Encoding

Channel encoding is performed so that bit errors can be reduced at the receiver; also it protects the data from channel noise and interference. In this project we have used Convolutional Encoding technique and then have tried to upgrade our system using Low Density Parity Check (LDPC). LDPC improves channel capacity as it approaches to Shannon capacity limit. Both Convolutional encoder and LDPC encoder form a codeword based on the incoming message signal. We have used ½ rate encoders that means that we have two input bits and the output is going to be four bits. For Convolutional encoder inbuilt matlab trellis structure along with convenc command has been used while in case of LDPC fecldpc.enc command is used to make LDPC object using sparse H matrix and then message is encoded using LDPC object by encode command.

7.1.3 Spreading

The fundamental criterion of spreading is cross correlation and auto correlation of message symbols. In case of a CDMA based communication system as there are many users that simultaneously transmit data so the system must have good cross correlation properties. This generates the need of orthogonal codes so Walsh codes are used. Walsh codes have good cross correlation properties. In this project direct sequence spread spectrum (DSSS) technique has been used in order to spread the signal over whole bandwidth.

7.1.4 Digital Modulation

Modulation is a technique that facilitates the message signal to be transmitted over the medium. In case of digital modulation, digital signal is modulated using amplitude shift keying, frequency shift keying and phase shift keying etc. We have implemented Binary PSK, BPSK uses two symbols that have opposite phase to each other to modulate 0 and 1.Sampling frequency of 44 kHz and a data rate of 2 kHz has been used in this system. In case of LDPC modulate command has been used to modulate the signal.

7.1.5 Pulse Shaping

Pulse shaping is done in order to reduce the effect of inter symbol interference (ISI). In this project Root Raised Cosine Filter has been used at the transmitter side to shape the pulse so in order to constrain the bandwidth of the modulated signal. By using this technique bandwidth is limited but the signal spreads in so there must be a threshold in order to counter this problem, this threshold is known as Nyquist limit. It is basically a low pass filter with a certain roll off factor in this project 0.5 roll off factor has been used.

7.1.6 Symbol Packing

In symbol packing, a training sequence is appended at the start and end of the signal. Also in addition to this as many as thousand zeros are appended at the end and start of the signal. These are added so that even if the receiver fails to receive initial bits these bits are additional zeros and not the message signal.


In a communication system channel could be wired or wireless. Different channels have different characteristics. When ever we talk about a channel we talk about noise, it is an unwanted electrical signal that limits the receiver ability to make correct decisions. Channel noise degrades the output very quickly. Small channel doesn't make much difference to the output signal but large channel noise considerably degrades the signal. In case of small channel noise the only noise that is present in the system is quantization noise. Another important factor in a communication system is Inter symbol interference (ISI). When the channel bandwidth is not much greater than signal bandwidth the spreading of the signal causes ISI.

Normally, the wireless channel is modeled with AWGN channel. A thermal noise source spreads an equal amount of noise power per unit bandwidth in all frequencies. Therefore a simple model for thermal noise assumes that its power spectral density Gn(f) is flat for all frequencies, as is denoted as:

Gn(f) = N0/2 watts/hertz


7.3.1 Synchronization

In this system, it is assumed that the receiver is on all the time. Therefore whenever the transmitter will send the message signal, there should be some way through which the receiver can determine where its signal of interest is. This can be done by correlating the training sequence with the received signal. The part where the maximum correlation occurs would be the start of the signal and the second maximum in the correlation would give the end of the message signal.

7.3.2 Matched Filtering

The received signal is passed through root raised cosine filter in order to perform matched filtering and down sampling at the receiver end. Usually RC filter is split equally into a root raised cosine (RRC) filter pair, with one in the transmitter, performing the pulse shaping to constrain the modulated signal bandwidth, and the other in the receiver, performing matched detection for optimizing the SNR of a known signal in the presence of AWGN.

7.3.3 Demodulation

The signal is demodulated by multiplying it by the carrier signal. The output would be demodulated signal, but this demodulated signal would be sum of all the spreaded signals.

7.3.4 Despreading

In order to extract the individual message signal of each user, the spreaded signal is then again multiplied by the Walsh code and is then integrated over a symbol time.

7.3.5 Channel Decoding

If the channel coding was not employed by the transmitter, then the despreaded messages would be the received signals. In the channel coding case, the signal will have to be decoded by using the viterbi decoding function in matlab.

7.3.6 Source Decoding

While performing source coding we had used NRZ encoding scheme, so now at the receiver this encoded message is again decoded back to its original form.