Digital Signal Processors Dsps 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.

This project describes the design and implementation of a MATLAB simulation of IS-95 CDMA forward link system. As cellular wireless communication is growing in worldwide communication standard, it is essential to know how data communication happens in a cellular system. The IS-95 CDMA forward link software package mimics the real time data communication from a base station to a cellular unit. This package simulates the IS-95 CDMA forward link cellular system which consists of three major components Transmitter, Communication channel and Receiver.

Here the transmitter first codes and pre-processes the data signal before transmission this processes comprises of convolution encoding, block interleaving long PN sequence, data scrambling ,Walsh coding and IQ modulation. Then the transmitting signal passes through the communication channel which is the medium that is between transmitter and receiver and the communication channel is modelled by the impulse response of multi path fading channel and consists of addictive White Gaussian Noise. At the final stage the receiver equalizes .filters and decodes the received signal where the multi path and noise effects are suppressed to produce the original user signal by performing processing complementary to those of transmitter's modulation processes. The studies are made on noise and multi path effects in a normal IS-95 CDMA forward link cellular system and understanding how interfaces can greatly affect the quality of the received signal this provides useful tool for investigating techniques as how these effects can be decreased.




2.1 AIM 3












Chapter 1

1.1 Introduction

As cellular wireless communication became a worldwide communication standard , it is very important in studying how data communication happens in a cellular system. This project outlines difficulties involved and the solution developed related to a CDMA forward link cellular system. Firstly the history of wireless communication and then a comparison of the CDMA cellular system with previously adopted systems are presented. Finally by concluding with a brief introduction of the current state-of-the-art research on new CDMA cellular systems. CDMA development started in early 1989 after the NA_TDMA standard (IS-95)

A CDAM demonstration to test its feasibility for digital cellular systems was held in November 1989. The power control scheme in a CDMA system is a requirement for digital cellular application. The system managed the power levels of the mobiles so that each mobile power level is below a certain required level and is about the same whether the mobile is very close to the base station or far at the edge of the cell. The system maintains a power control loop to overcome attenuation due to multipath and fading. Interim standard 95 (IS-95) is the first CDMA based digital cellular standard pioneered by Qualcomm. The brand name for IS-95 is CDMA One. It is a 2G mobile telecommunications standard that uses CDMA, a multiple access scheme for digital radio to send voice, data and signalling data between mobile telephones and cell sites. IS-95 defines transmission of signals in both the forward and reverse directions. In the forward direction radio signals are transmitted by base stations.

1.2 Aim

The aim of the project is to design and implementation of a MATLAB simulated IS-95 CDMA forward link system. The CDMA forward link cellular system consists of three major components Transmitter, Communication channel and Receiver.

1.3 Objectives

As there is a wide spread use of wireless communication for data exchange, it is important in Understanding how information is transmitted and received.

1) The main vision of the project is to create a simulation model to simulate real-time data Communication which occurs in a standard IS-95CDMA forward link cellular system.

2) The software simulation package is coded in MATLAB, due to its flexible environment for Technical computing. MATLAB is ideal for signal and image processing as it allows mathematical computing and visualization of results to be performed easily.

1.4 Project Deliverables

1. The study of the IS-95 CDMA forward link cellular system in order to understand the functionalities and operations of the components within the system

2. Using the information obtained from the research study a software simulation package of IS-95 CDMA forward link cellular system is developed.

3. The package closely models real-time IS-95 CDMA forward link data communication and is used to study channel and multi path effects and develop techniques for suppressing them.

Chapter 2

Digital Signal Processing

2.1 Introduction

Digital Signal Processing as the term means the processing of signals by digital means. A signal in this can mean a number of different things. The signals processing are in electrical engineering, and the signal here is an electrical signal carried by a wire or telephone line. A signal is a stream of information representing anything from stock prices to data from a remote-sensing satellite. The digital comes from digit meaning a number so digital literally means numerical. A digital signal consists of a steam of numbers, usually in binary form. The processing of a digital signal is been done by performing numerical calculations.

In most of the cases the signal is initially in the form of an analog electrical voltage or current produced by a microphone or some other type of transducer. In some cases the output from the readout system of a CD (compact disc) player the data is in digital form. The analog signal must be converted into digital form before DSP techniques can be applied. An analog electric voltage signal can be digitized using an electronic circuit called an analog-to digital converter or ADC. This produces a digital output as a stream of binary numbers these values represent the electrical voltage input to the device at each sampling instant.

Digital signal processing is concerned with the representation of the signals by a sequence of numbers or symbols and the processing of these signals. Digital signal processing and analog signal processing are both subfields of signal processing. DSP also includes subfields like audio and speech signal processing, sonar and radar signal processing, sensor array processing, spectral estimation, statistical signal processing and digital image processing. DSP is a field of study which is combination of both mathematical theory and physical implementation. MATLAB is an excellent tool for simulating systems.

2.2 Development of DSP

The development of digital signal processing dates from the 1960's with the use of mainframe digital computers for numbering applications such as Fast Fourier Transform this allows the frequency spectrum to be computed rapidly of a particular signal. These techniques were only used in universities and other scientific research institutions where suitable computing equipment are available.


The introduction of the microprocessor in the late 1970's and early 1980's made it possible the DSP techniques to be used in a much wider range of applications. However, general-purpose microprocessors such as the Intel x86 family are not ideally suited to the numerically-intensive requirements of DSP, and during the 1980's the increasing importance of DSP led several major electronics manufacturers (such as Texas Instruments, Analog Devices and Motorola) to develop Digital Signal Processor chips - specialized microprocessors with architectures designed specifically for the types of operations required in digital signal processing. DSP is a programmable device such as a general purpoe microprocessor. These chips are capable of carrying out many floating point operations per second.

2.4 Applications

The major applications where DSP is used are audio signal processing, audio compression. Digital image processing, video compression, speech processing, speech recognition, digital communications. Specific examples are speech compression and transmission in digital mobile phones, room matching equalization of sound in HIfi and sound reinforcement applications, weather forecasting and control of industrial processes. This technology is nowadays is used in devices such as mobile phones, multimedia computers, video recorders. Signal compression is used in digital cellular phones to allow a greater number of calls to be handled simultaneously within each local cell.

DSP signal compression technology not only allows people to talk with each other but also to view each other on their computer screens, using video cameras with only a conventional telephone line linking them together. In audio CD systems this technology is used to perform some complex error detection and correction on the raw data as it is read from CD.

Chapter 3

Multiple Access


Satellites are built with the intension that many users are allowed to share the bandwidth. The ability of the satellite to carry out many signals at the same time is known as multiple access. This allows the communication capacity of the satellite to be shared among a large number of earth stations. The signals that the earth stations transmit to a satellite differ widely in their character but can be sent through the same satellite using multiple access and multiplexing techniques.

Multiplexing is the process in which many signals are combined together to form a single signal so that it can be processed by a single amplifier or transmitted over a single radio channel. The corresponding technique that recovers the individual signal back is called as demultiplexing.

The distinction between multiplexing and multiple access is that multiplexing is done at one location whereas multiple access refers to the signals from a number of different geographic locations. Firstly the signal to be transmitted is multiplexed at the earth stations then after modulating at these stations the signal is transmitted to the satellite. At the satellite the signals will share the satellite transponder by different multiple access techniques. There are basically three multiple access techniques.

Frequency division multiple access

Time division multiple access

Code division multiple access

These techniques allow all the users of the cellular system to share the available bandwidth in a cellular system simultaneously.

3.2 3rd generation CDMA systems

The range of the current IS-95 CDMA system is up to 600 to 800 million users worldwide the demand of the new services is continuously increasing day by day. The services like real -time voice conferencing and high speed internet access on mobiles have always been the aim of the IS-95 CDMA system users but due to the data transmission rate that can only operate up to 600bps these services are not possible. The minimum required data transmission rate for real- time voice with image conferencing and seamless internet access requires a minimum bandwidth of 0.3Mbps, which is at least 30 times the maximum data transmission rate capability of the IS-95 CDMA system .

In comparison to IS-95 CDMA system that allocates a transmission bandwidth of 1.25MHz for multi-user. More specifically the signal the signal is allocated all of the orthogonal spread in sequences. This improves the data transmission rate by providing an average data through put rate of 144kbps per user. CDMA2001XRTT is the CDMA system standard developed by TIA and announced by ITU in 2000 as the starter of the 3rd generation CDMA systems.

3.3 CDMA20001xEV-DO

CDMA2000 1xEV-DO technology offers near-broadband packet data speeds for wireless access to the Internet. CDMA stands for Code Division Multiple Access, and 1xEV-DO refers to 1x Evolution-Data Optimized. CDMA2000 1xEV-DO is an alternative to Wideband CDMA (WCDMA). Both are considered 3G technologies.

Compared to CDMA2000, 1xEV provides substantially higher data-only rates on 1X systems.1xEV-DO require a separate carrier for data. However, in situations where simultaneous voice and data services are needed, this carrier can be handed-off to a 1X carrier. By allocating a separate carrier for data, the1xEV-DO system can deliver upto 2.4Mbps to each user and with the vision of enhancing the user rate, the CDMA20001XRTT is further followed by its continuation: CDMA20001xEV.

3.4 CDMA20001xEV-DV

1xev-dv solutions will be available by 2004.IxEV-DV will bring data and voice services for CDMA 2000 back into one carrier, where a IxEV-DV carrier will not only provide high speed data and voice simultaneously, but will also capable of delivering real-time packet services.

The first of the of third-generation (3G) wireless standards to be commercially deployed, CDMA2000 1X laid the groundwork for the higher speed data rates available today in many markets around the world that provide consumers and professionals with no-compromise wireless connectivity.

In comparison to IS 95- CDMA systems which allocate a transmission bandwidth of 1.25MHz. For multiusers, CDMA20001X systems can allocate a 1.25MHz transmission bandwidth to just one user. More specifically, the single is allocated all of the orthogonal spreading sequences. This greatly improves the data transmission rate by providing an average data throughput rate of 144kbps per user.

Figure 3.4.1 CDMA20001X systems bandwidth allocation


Third Generation (3G) is the term used to describe the latest generation of mobile

services which provide better quality voice and high-speed data, access to the Internet and multimedia services. The International Telecommunication Union (ITU), working with industry bodies from around the world, has defined the technical requirements and standards as well as the use of spectrum for 3G systems under the IMT-2000 (International Mobile Telecommunications-2000) program.

The ITU requires that IMT-2000 (3G) networks, among other capabilities, deliver improved system capacity and spectrum efficiency over 2G systems and that they support data services at minimum transmission rates of 144 kbps in mobile (outdoor) and 2 Mbps in fixed (indoor) environments.

The ultimate 3G solution for CDMA uses multi carrier techniques that group adjacent CDMA2000 1.25 MHZ radio channels together for increased bandwidth. The TIA already announced the CDMA20002xRTT (2x1.25MHzchannels) and 3xRTT (3x1.25MHz Channels) standards and it can be expected that the data rate will continue to increase substantially after each successive evolution. And each evolution of CDMA2000 will continue to be backwards compatible with today's networks and forwards compatible with future evolutions.

Chapter 4

Literature Survey

4.1 Cellular System

A cellular communication system uses a large number of low power wireless transmitters to create cells-the basic geographic service area of a wireless communications system. Variable power level allows cells to be sized according to the subscriber density and demand within a particular region. As the population grows cells can be added to accommodate that growth. Frequencies used in the one cell cluster can be reused in the other cells.

The forward (from base station to mobile) and reverse (from mobile to base station) IS-links [4] IS-95 specified the reverse link operation in the 824~849MHz band and 869~894MHz for the forward link. Each forward and reverse link channel pair is separated by 45MHz and the Maximum user data rate is 9600bps.


The forward link in an IS-95 system is the link from the base station to a mobile subscriber. The physical channel is the approximately 1.25 MHz of bandwidth occupied by the CDMA signals.

An IS-95 forward link channel link consists of a pilot channel, a synchronization channel, up to seven paging channels, and up to sixty-three forward traffic channels. The pilot channel enables a mobile station to obtain timing for the forward CDMA channel and it is a phase reference for coherent demodulation. Furthermore, it allows each mobile to compare signal strength between base stations for determining when to handoff.

The synchronization channels end synchronization messages to the mobile stations. The paging channel is used to send control information and paging messages from the base station to the mobiles. The traffic channel is used for the transmission of user and signalling information to a specific mobile station.

Each forward link channel from a given base station is spread by the same Pseudo-random Noise (PN) sequence. This spreading, along with the use of the Walsh coding produces wideband PN signals which allow universal reuse of the available frequencies with acceptable levels of interference. Universal reuse increases capacity.


The reverse channel is made up of access channels and reverse traffic channels. These channels share the same frequency band, each access/ traffic channel is identified by a distinct user long code. The access channel is used by the mobile to initiate communication with the base station; it is also used to respond to paging messages. The data rate of an access channel is fixed at 4800 bps, and there can be a maximum of 32 access channels per paging channel within the reverse channel.

The reverse traffic channel is used to transmit the user information. The reverse traffic Channel may use either 9600,4800,2400,1200bps for transmission. User data transmitted on the reverse channel are grouped into 20msframes.Alldata Transmitted on the reverse channel are covolutionally encoded, block interleaved, modulated by a 64-array orthogonal modulation, and spread prior to transmission.

4.2 Is-95 Direct Sequence CDMA

4.2.1 CDMA Systems

Code division multiple access (CDMA) is a channel access method utilized by various radio communication technologies. It should not be confused with the mobile phone standards called cdmaOne and CDMA2000 (which are often referred to as simply "CDMA"), this uses CDMA as an underlying channel access method.

In a CDMA system, your encoded voice is digitized and divided into packets. These packets are tagged with "codes." The packets then mix with all of the other packets of traffic in the local CDMA network as they are routed towards their destination. The receiving system only accepts the packets with the codes destined for it.

One of the basic concepts in data communication is the idea of allowing several transmitters to send information simultaneously over a single communication channel. This allows several users to share a bandwidth of frequencies. This concept is called multiplexing.

CDMA employs spread-spectrum technology and a special coding scheme (where each transmitter is assigned a code) to allow multiple users to be multiplexed over the same physical channel. CDMA is a form of "spread-spectrum" signaling, since the modulated coded signal has a much higher data bandwidth than the data being communicated.

In Code Division Multiple Access (CDMA) systems all users transmit in the same bandwidth simultaneously. Communication systems following this concept are "spread spectrum systems''. In this transmission technique, the frequency spectrum of a data-signal is spread using a code uncorrelated with that signal.

As a result the bandwidth occupancy is much higher then required. The codes used for spreading have low cross-correlation values and are unique to every user. This is the reason that a receiver which has knowledge about the code of the intended transmitter is capable of selecting the desired signal.

Because of the difficulty to jam or detect spread spectrum signals, the first applications were in the military field. However now-a-days spread spectrum systems are gaining popularity also in commercial applications. The main parameter in spread spectrum systems is the processing gain: the ratio of transmission and information bandwidth. For spread spectrum systems it is advantageous to have a processing gain as high as possible.

There exist different techniques to spread a signal: Direct-Sequence (DS), Frequency-Hopping (FH), Time-Hopping (TH) and Multi-Carrier CDMA (MC-CDMA). It is also possible to make use of combinations of them. We will now concentrate on the most popular technique: Direct-Sequence.

4.2.2 Direct Sequence CDMA

CDMA uses a unique spreading code technique to differentiate the channels. The signal is transmitted below noise level and is received through a correlator for dispreading of the wanted signal. This wanted signal is then processed through a narrow bandpass filter to reject unwanted signals. The codes, one/zero sequences, used to differentiate signals are designed and generated at a much higher rate than the baseband information.  This rate is referred to as a chip rate rather than a bit rate. The relationship between chip rate and bit rate can be seen in below figure.


Figure 6.2 Spread signal

The Spread Factor used in CDMA is defined as

Spreading Factor= Chip rate/ Data rate

In telecommunication direct sequence spread spectrum (DSSS) is a modulation technique. As with other spread spectrum technologies, the transmitted signal takes up more bandwidth than the information signal that is being modulated. The name 'spread spectrum' comes from the fact that the carrier signals occur over the full bandwidth (spectrum) of a device's transmitting frequency.

In Direct Sequence spread spectrum transmission, the user data signal is multiplied by a code sequence. Mostly, binary sequences are used. The duration of an element in the code is called the "chip time". The ratio between the user symbol time and the chip time is called the spread factor. The transmit signal occupies a bandwidth that equals the spread factor times the bandwidth of the user data.

Direct Sequence is the best known Spread Spectrum Technique. The data signal is multiplied by a Pseudo Random Noise Code (PN code). A PN code is a sequence of chips valued -1 and 1 (polar) or 0 and 1 (non-polar) and has noise-like properties.

This results in low cross-correlation values among the codes and the difficulty to jam or detect a data message. Several families of binary PN codes exist. A usual way to create a PN code is by means of atleast one shift-register. When the length of such a shift-register is n, the following can be said about the period NDS of the above mentioned code-families.

The generation of PN codes is relatively easy, a number of shift-registers are all that is required. For this reason it is easy to introduce a large processing-gain in Direct-Sequence systems.

The main problem with applying Direct Sequence spreading is the so-called NearFar effect. This effect is present when an interfering transmitter is much closer to the receiver than the intended transmitter.

If more than one user is active, the incoming interference power is suppressed by the cross correlation between the code of the reference user and the code of the interferer. In the event that the interferer is closer to the receiver then the reference user, the interference components may not be sufficiently attenuated by the despreading process. In cellular CDMA systems, (adaptive) power control is needed to avoid this problem

Although the cross-correlation between codes A and B is low, the correlation between the received signal from the interfering transmitter and code A can be higher than the correlation between the received signal from the intended transmitter and code A. The result is that proper data detection is not possible.

Chapter 5

5.1 Transmitter

The Forward Link transmitter interoperations comprise of convolution encoding and repetition, block interleaving, long PN sequence, data scrambling, Walsh coding and quadurature modulation. A diagram of the transmitter modulation process is shown in Figure.

Figure 5.1.1 Transmitter (

Convolution encoding and repetition: the convolution encoder performs error-control coding by encoding the incoming bit stream information. This allows error correction at the receiver, and hence improves communication reliability. In IS-95 CDMA forward link, a R =1/2 K=9 convolution encoder is deployed.

R=1/2 Means the encoder produces 2 code bits for every incoming data information bit, and K=9 Means the encoder has a constraint length of 9; it's a 9 stage shift register. A diagram of the Convolution encoder is shown in Figure.

Figure 5.1.2 Rate1/2 Convolution Encoder for Rate set 2


Each code bit, 0C and C1 as shown in Figure is produced according to the two specified generating polynomials g0 and g1, which perform modulo-2 addition with the value of specific stages of the shift register.



As an illustration, 0C is calculated by performing module addition to the value in stage1, 3, 4, 5, 6, 8, and 9 of the shift register as specified by the generator polynomial, Then, before the encoded data can be fed into the block interleave, which is fixed at 19.2kbps, the encoded data may have to be repeated, depending on the original data input rate into the convolution encoder.

For example, if the data input rate to the convolution encoder was at 4800kbps, the data would have to be repeated 2 times to achieve 19.2kbps before inputting to the block interleaver.

5.2 Generating Polynomials

The IS-95 CDMA forward link communication channel is a multipath fading channel Consists of Additive White Gaussian Noise (AWGN).

5.3 Multipath Fading Channel

The communication channel is the medium which the transmitting radio signal goes through in order to reach the receiver. The channel can be modeled as a linear filter with a time varying channel impulse response. A channel impulse response describes the amplitude and phase effects that the channel will impose on the transmitting radio signal, as it transmits through the medium. IS-95 CDMA communication channels are often modeled as a multipath fading channel, as it is the best modeling for a mobile communication channel.

The term fading describes the small-scale variation of a mobile radio signal. As each transmitting signal is represented by a number of multipaths and each having different propagation delays, the channel impulse response is different for each multipath. Therefore, not only the channel response is time varying, the channel response is also functional dependent on the propagation delay.

Hence, the channel impulse response should actually be summarized as h (t, t), which't' is the specific time instance, and't' is the multipath delay for a fixed value of't'.As a result, the received signal in a multipath channel consists of a number of attenuated, time delayed, and phase shifted versions of the original signal, and the base band impulse response of a multipath channel can be written as

h (bt ,t) = Æ’a (t,t )exp[ j(2pf t (t) +f (t,t ))]d (t -t (t))

where a i(t,t ) and t i(t) are the amplitude and delay, respectively, of the ith multipath component at time t. The phase term 2pf t (t) +f i (t, t) represents the phase shift due to free space propagation of the i multipath component, plus any additional phase shift which it encountered in the channel. And d (t -t i (t)) is the unit impulse function for the ith multipath component with delay t and at time instance t.

The communication channel is implemented as a multipath channel. It is represented by a Number of randomly distributed objects, and each with an amplitude and phase gain. When a Multipath signal reflects on one of these objects along its propagation, the multipath signal Experiences amplitude and phase attenuations according the respective gains of the object, Due to the interaction between the multipath signal and the object.

The objects are randomly generated and distributed in the channel. Both the amplitude and Phase gain of each object are manually assigned. In general, the amplitude gain a of an Object will vary from 0 to1, while the phase gain b will vary from 0 to2 p ,but b ò 0 or 2p. Figure shows a possible configuration of the multipath fading channel with 3 multipath signals


Figure 5.3 A possible configuration of the multipath channel with 3 multipath signals

5.4 Noise In Communication Channel

With in any communication channel, there is always noise present due to other surrounding radio signals. These noise can be white (colourless) or coloured noise, and with interact differently with the transmitted user signal, for instance, the interaction can be additive, multiplicative or complex. In communication systems, a transmitting signal is very vulnerable to noise especially with in the communication channel.

Noise is often classified as some wanted signal so interference, which is present a long with an information signal in a communication channel. And often, the level of noise present is incontrollable, as there are so many potential sources of noise in the channel. However, by determining the approximate power level of noise in a communication channel, the Bit-Error-Rate (BER) of a communication system can be greatly reduced, by adjusting the power level of the transmitting information signal. In IS-95 CDMA cellular system, the channel noise analysis is often based on white noise.

The channel noise is represented by the AWGN inserted in to the transmitting signal. AWGN is inserted in to the transmitted signal at the point when the signal just about to reach the Receiver.

The AWGN represents the channel noise, and other signal interference in the channel AWGN is generated by using the "randn" function multiplied by a means which will be manually assigned according to the test conditions .As each multipath signal Vector contains 12288 real and imaginary amplitude component pairs, AWGN is added each Amplitude components pair in the multi path signal vector by generating AWGN as

AWGN =s *(I*randn+Q*randn) (4.1)

where is the mean of the AWGN, I is real amplitude component , I and Q is the imaginary amplitude component.

5.5 White Noise

White noise is a type of noise that is often exists in communication channels. It is remarkably different from any other types of noise, due to the fact that its power spectral density (PSD) is independent of the operating frequency the word "White" is used in the sense that white light contains all other visible light frequencies in the band of electromagnetic radiation.

The equivalent noise temperature of a system is defined as the temperature at which a noisy Resistor has to be sustained such that, when it is connected to a noise less version of the system, Will produce the same amount of noise power at the output of the system compared to the total noise power produced by the noise sources in the actual system. Remarkably, the equivalent noise temperature only depends on the parameters of the system.

For any two different time samples of white noise, they will be uncorrelated, no matter how close they are to each other in time. In addition, if the white noise is also Gaussian, then it's also statistically independent, and exhibit total randomness. In common IS-95 CDMA forward link cellular systems, communication channels are often modeled with Additive White Gaussian Noise (AWGN).

The adjective "Addictive" describes the interaction that happens between the noise interact with another signal during collision. When AWGN comes in contact with a user signal, the Real and imaginary amplitude components of the two signals add up and form a new signal.

5.6 Coding Of Transmitter

In the simulation software, the designed IS-95 forward link transmitter performs Convolution encoding, block interleaving, long PN sequence, decimating, data scrambling, Walsh coding and IQ modulation each operation is carried out as an independent processing block. Each independent processing block was programmed as a separate simulation.m file.

5.7 Generation of Use Data- Data.M

Each user data frames contains a total of 192 bits; 12 CRC bits, 172 user information bits, and 8 bits of encoder tail. The CRC and user information bits in each data frame were generated using the Matlab "randn' function. The function was used to generate a sequence of 184 Gaussian distributed values around 0 (mean).Then, each random value was quantized to a valueof1, if the value is 0 or greater, or a value of 0, if the value is lesser than 0.The encoder tail is added by padded a sequence of 8 zeros to the randomly generated 182 bits, and is used a same an for setting the receiver decoder to are set state.

Chapter 6

6 Receiver

The IS-95 CDMA standard describes the processing performed in the terminal receiver as being complementary to those of the base station modulation processes on the Forward CDMA Channel. The demodulation processing that the terminal receiver architecture must perform includes Rake receiver combining (IQ demodulation and maximal combining), Walsh decoding, long PN sequence, data descrambling, block-de interleaving, and Viterbi-decoding. These operations all act to reverse the operation of one of the Corresponding components in the transmitter. A diagrammatic representation of the Rake Receiver is depicted in Figure below.

Figure 6.1 IS-95 CDMA forward link receiver demodulation process


6.1 Walsh Decoder

Walsh decoding is performed after Rake receiver combining. Each 64 Walsh coded data chips sequence coming out of the Rake receiver is replaced by 1 data symbol. During signal reception, the receiver must have prior knowledge of the channel number which the subscriber is using. Therefore, during Walsh decoding, the Walsh decoder will have two buffers storing the normal and bit inverted versions of the row of Walsh chips Sequence in the Hadamard matrix, specified by the channel number.

Hence, when every 64 Walsh coded data chips sequence entering the Walsh decoder, the decoder checks the 64 chips sequence against the two buffers, and decides which data symbol to replace them. If the incoming 64 chips sequence matches the normal version, then they will be replayed by a data symbol 0, and if they match the bit inverted version, they will instead be replaced by a data symbol 1.

However, it is reasonable to suggest that bit errors may occur in each sequence of 64chips due to noise and interference before entering the Walsh decoder, and the bits may not exactly match with the bit values of the buffer. But that's all being taken care of, as the Walsh decoder will compare which buffer shows the least number of bit differences against the incoming data before replacing.

6.2 Long PN Sequence

The applying for long PN sequence to the received user signal is to remove the effect of Long PN sequence applied to the user data bit stream at the transmitter. The receiver will have prior knowledge of the starting long PN sequence used by the receiver, and hence assign the shift register stage values to the sequence, and generate all the same subsequent PN sequences used by the transmitter. All long PN sequences generated at the receiver will also have period 2^42-1 long. The PN Sequences are generated at the receiver using the same generating techniques and generating polynomials as in the transmitter.

6.3 Data De Scrambler

Data de scrambling is performed after Walsh decoding. The 1.2288cps long PN sequence is applied to a decimator, which keeps only the first chip out of every sixty-four consecutive PN chips. The symbol rate from the decimator is 19.2ksps.Data descrambling is performed by modulo-2addition of the Walsh decoded data symbol with the decimator output symbol.

6.4 Block De Interleaver

Block de interleaving at the receiver acts to remove the effect of block interleaving applied to the user data bit stream in the transmitter. After descrambling, symbols are sent to a 20ms block de interleaver which is a 16 by 24 array matrix. It rearranges the order of the data symbols to the order which the bits appear in the original user data bit stream before entering block interleaver in the transmitter.

Every 20ms, 384 data symbols coming out of the data scrambler are consecutively entered into the block de interleaver column-by-column. Then, as the block de interleaver matrix is totally filled up, the block de interleaver outputs the data bits column-by-column. It is clear that the matrix dimension and operation of the block de interleaver is a contrary to the block interleaver.

6.5 Viterbi Decoder

Viterbi decoding is the final processing to be performed at the receiver, and in the entire communication system. The purpose of the Viterbi decoding is to decode the convolutional encoded user data symbols and the Viterbi algorithm used is the equivalence between maximum likelihood decoding and minimum distance decoding for a binary symmetric channel.

Hence, the Viterbi algorithm implies that a convolutional code can be decoded by selecting a path in the code tree, whose coded sequence differs in the least number of places from the received sequence, or essentially, the Hamming distance between the two codes. The Viterbi de coder user in common IS-95 CDMA forward link transmitter has a window Length of 18. Therefore, every 18 bits of convolutional encoded user data bit stream enters the Viterbi decoder and decoded. As a result, 9 bits are produced at the decoder output after each decoding.

The algorithm works by predicting all the outputs of the convolutional encoder based on the starting shift register states of the encoder, and find the output that has the least difference when compared to the incoming 18 data bits sequence into the decoder. For every 20ms user data frame, the Viterbi decoder initially computes a code tree with the knowledge that the shift register of the convolutional encoder starts with all 0's, then compute all 512 possible 18 bits output of the encoder after 9 iterations. Then, the decoder will compare the incoming 18 bits sequence, will all the 512 possible outputs and select the one with the least Hamming distance.


MATLAB is a high performance language used for technical computing. The computation visualization and programming is a friendly user. MATLAB can be used in a wide range of applications like signal and image processing, communication, control design, test and measurement.

7 Future Scope

As there is a wide spread use of wireless communication for data exchange, it is important in understanding how such information is transmitted and received. The vision of this project is to create a simulation model to simulate real-time data communication, which occurs in a standard IS-95CDMA forward link cellular system.

In particular, an IS-95CDMA forward link cellular system software simulation package is to be developed and used to examine how data is processed in the communication system. To achieve this, a study of the IS-95 CDMA forward link cellular system is conducted, in order to understand the functionalities and operations of components within the system By utilizing the information obtained from the research study, a software simulation package ofaIS-95CDMA forward link cellular system is developed.

The package closely models real-timeIS-95CDMA forward link data communication and is used to study channel and multi path effects and develop techniques for suppressing them.

The software simulation package is coded in MATLAB due to its flexible environment for Technical computing. MATLAB is ideal for signal and image processing as it allows Mathematical computations and visualization of results to be performed easily.

8 Conclusion

This project was to create a CDMA communication system that would work reliable in a multi path environment. The system also should sustain against narrowband interference and should allow different coding gains. All the requirements have been successfully fulfilled and the solutions have been produced in this report.

The allowable distance that can be used in this system is 5 meters and the maximum interference strength been affecting the message signal without information loss is 30 times that of the power transmitted. While using the internal testing procedure.

When the system had been evaluated in MATLAB, it was implemented in real time. In this real time implementation all of the signal processing is being made on the DSP-cards in the transmitting and receiving PC.

In the process of making the system several possible improvements have surfaced. Due to shortage of time these different solutions have not been implemented. We have made the decision by summarizing the different chip bits and then making the decision. An alternative scheme could be to make a decision on each chip bit by itself.

Studies have shown that two different transmitters can be transmitting at the same time, and a good result can be achieved with PN-length 32. More studies of this kind and possible improvements could result in a full fledge CDMA system with several users. The equalization of the training sequence with "old" coefficients could also result in an improvement.


As shown in the block diagram in the chapters 5 and 6 there are many terms that have been used that are unfamiliar to all these are been explained below.

Data Scrambler

Data scrambler is a device used in digital transmission systems to convert digital signals into a pseudorandom sequence that is free from long strings of simple patterns, such as marks and spaces.Data scrambling is performed after the block interleaver. The data scrambler block performs modulo-2 addition of the Block Interleaver output with The Decimator Block out put symbol.

The 1.2288 cps long PN sequence is applied to a decimator, which keeps only the first chip out of every sixty-four consecutive PN chips. The symbol rate from the decimator is 19.2ksps. Data scrambling is performed by modulo-2addition of the interleaver output with the decimator output symbol.

Walsh Coding

Walsh coding is performed after data scrambling in the transmitter. Each data symbol coming out of the scrambler is replaced by 64 Walsh chip sequence. Each 64 Walsh chip sequence corresponds to a row of the 64 by 64 Walsh matrix (also called A Hadamard matrix).The Walsh matrix contain one row of all zeros, and the remaining rows each have an equal number of ones and zeros and Figure 8.1.4 shows how a Walsh matrix Is generated.

Quadrature Modulation

The final processing before transmitting the user's information involves Quadrature modulation of the Walsh coded data chip stream. Quadrature modulation allows easy acquisition and synchronization at the mobile receiver. Quadrature modulation involves separating the incoming data chip stream into an L data chip stream and a Q data chip stream and mixing each with their corresponding short PN sequences.

The IQ modulation block carries out the In phase and Quadrature phase modulation of the Data chips stream from the Walsh coding block before it is transmitted from the base station to the mobile. The Walsh coded data chips stream enters the IQ modulator block, and get divided into the In Phase Stream, which contains the odd number indexed bits, and the Quadrature phase Stream, Which contains the even indexed bits.

Then the data bits in each of the streams get modulated by the respective pilot PN sequences. Each of the I and Q pilot PN sequence generators are 15-stage shift registers. The initial state of the I and Q pilot PN sequence shift registers is defined as an output of a"1"after14 consecutive"0"s.The I and Q pilot PN sequences are generated by repeatedly running a FOR-LOOP for 24576 times and obtaining the output of the irrespective shift register at each iteration.

The feedback value of each shift register is calculated by performing modulo-2 addition of Bit value of selected stages of the shift registers in each iteration. Bit values in the shift Registers stages are shift redone stage to the right after each iteration. The output signal vector Of the IQ modulation block consists of 12288 elements, with each element consists of areal and imaginary component. Finally, the transmitter transmits the output signal in a number of Multipaths, and with different propagation path distances.

Rake Recevier Combining

The RAKE receiver designed acts to reverse the multipath distortion effects of the channel, is programmed as a 3-finger Rake receiver. The Rake receiver performs the 3 functions:

(1) Apply amplitude and phase adjust or to the 3 correlator output

(2) IQ demodulation

(3) Maximal combine the correlators output.

Apply Amplitude And Phase Adjust Or To The 3 Correlator Output

The 3 correlators of the Rake receiver are assumed to be able to tune to the 3 strongest multipath signals. Then the correlator outputs are assigned a weight according to their signal strength, which will vary from 0 to 1.

Maximal Combine The Correlators Outout

The Rake receiver sums up all the output of each of the correlator algebraically according to their assigned amplitude adjust or, and produce a combined received signal.

Quadrature Demodulation

IQ demodulation is performed on the combined received signal, using the I and Q pilot PN Sequences used in IQ modulation block in the transmitter.