Sie sind auf Seite 1von 13

CDMA TECHNOLOGY

Multiple Access
The concept behind multiple access is to permit a number of users to share a common channel. The two traditional ways of multiple access are Frequency Division Multiple Access (FDMA) and Time Division Multiple Access (TDMA).This introduction to CDMA proceeds heuristically, we use very little mathematics in developing the theories, and do not assume a deep mathematical or engineering background.

Introduction To Spread Spectrum Communications:


CDMA is a form of Direct Sequence Spread Spectrum communications. In general, Spread Spectrum communications is distinguished by three key elements: 1. The signal occupies a bandwidth much greater than that which is necessary to send the information. This results in many benefits, such as immunity to interference and jamming and multi-user access, which well discuss later on. 2. The bandwidth is spread by means of a code which is independent of the data. The independence of the code distinguishes this from standard modulation schemes in which the data modulation will always spread the spectrum somewhat. 3. The receiver synchronizes to the code to recover the data. The use of an independent code and synchronous reception allows multiple users to access the same frequency band at the same time. In order to protect the signal, the code used is pseudo-random. It appears random, but is actually deterministic, so that the receiver can reconstruct the code for synchronous detection. This pseudo-random code is also called pseudo-noise (PN).

Spread Spectrum Characteristics of CDMA:


Most modulation schemes try to minimize the bandwidth of this signal since bandwidth is a limited resource. However, spread spectrum techniques use a transmission bandwidth that is several orders of magnitude greater than the minimum required signal bandwidth. One of the initial reasons for doing this was military applications including guidance and communication systems. These systems were designed using spread spectrum because of its security and resistance to jamming. Asynchronous CDMA has some level of privacy built in because the signal is spread using a pseudorandom code; Three Types of Spread Spectrum Communications:

There are three ways to spread the bandwidth of the signal: Frequency hopping: The signal is rapidly switched between different frequencies within the hopping bandwidth pseudo-randomly, and the receiver knows before hand where to find the signal at any given time. Time hopping: The signal is transmitted in short bursts pseudo-randomly, and the receiver knows beforehand when to expect the burst. Direct sequence: The digital data is directly coded at a much higher frequency. The code is generated pseudo-randomly, the receiver knows how to generate the same code, and correlates the received signal with that code to extract the data.

Direct Sequence Spread Spectrum:


CDMA is a Direct Sequence Spread Spectrum system. The CDMA system works directly on 64 kbit/sec digital signals. These signals can be digitized voice, ISDN channels, modem data, etc. Figure shows a simplified Direct Sequence Spread Spectrum system. For clarity, the figure shows one channel operating in one direction only.

Signal transmission consists of the following steps:

1. A pseudo-random code is generated, different for each channel and each successive connection. 2. The Information data modulates the pseudo-random code (the Information data is spread). 3. The resulting signal modulates a carrier. 4. The modulated carrier is amplified and broadcast.

Signal reception consists of the following steps: 1. The carrier is received and amplified. 2. The received signal is mixed with a local carrier to recover the spread digital signal. 3. A pseudo-random code is generated, matching the anticipated signal. 4. The receiver acquires the received code and phase locks its own code to it. 5. The received signal is correlated with the generated code, extracting the Information data.

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. By contrast, time division multiple access (TDMA) divides access by time, while frequency-division multiple access (FDMA) divides it by frequency. CDMA is a form of "spread-spectrum" signaling, since the modulated coded signal has a much higher data bandwidth than the data being communicated. An analogy to the problem of multiple access is a room (channel) in which people wish to communicate with each other. To avoid confusion, people could take turns speaking (time division), speak at different pitches (frequency division), or speak in different languages (code division). CDMA is analogous to the last example where people speaking the same language can understand each other, but not other people. Similarly, in radio CDMA, each group of users is given a shared code. Many codes occupy the same channel, but only users associated with a particular code can understand each other.

Steps in CDMA Modulation:


CDMA is a spread spectrum multiple access technique. A spread spectrum technique is one which spreads the bandwidth of the data uniformly for the same transmitted power. Spreading code is a pseudo-random code which has a narrow Ambiguity function unlike other narrow pulse

codes. In CDMA a locally generated code runs at a much higher rate than the data to be transmitted. Data for transmission is simply logically XOR (exclusive OR) added with the faster code. The figure shows how spread spectrum signal is generated. The data signal with pulse duration of Tb is XOR added with the code signal with pulse duration of Tc. (Note: bandwidth is proportional to 1 / T where T = bit time) Therefore, the bandwidth of the data signal is 1 / Tb and the bandwidth of the spread spectrum signal is 1 / Tc. Since Tc is much smaller than Tb, the bandwidth of the spread spectrum signal is much larger than the bandwidth of the original signal. The ratio Tb / Tc is called spreading factor or processing gain and determines to certain extent the upper limit of total number of users supported simultaneously by a base station. Each user in a CDMA system uses a different code to modulate their signal. Choosing the codes used to modulate the signal is very important in the performance of CDMA systems. The best performance will occur when there is good separation between the signal of a desired user and the signals of other users. The separation of the signals is made by correlating the received signal with the locally generated code of the desired user. If the signal matches the desired user's code then the correlation function will be high and the system can extract that signal. If the desired user's code has nothing in common with the signal the correlation should be as close to zero as possible (thus eliminating the signal); this is referred to as cross correlation. If the code is correlated with the signal at any time offset other than zero, the correlation should be as close to zero as possible. This is referred to as auto-correlation and is used to reject multi-path interference. In CDMA timing plays an important role. All the base stations are synchronised with satellite time. The base stations will start their transmission with reference to the satellite clock. All the base stations will not transmit at the same instant. With reference to the satellite clock, each base station will offset its timing by a certain offset. All base stations will have different offsets. So even if transmission is occurring in a neighbouring cell using the same PN code, then though this come as an interference to the user in the existing cell but it will not effect the zero as possible. This is referred to as auto-correlation and is used to reject multi-path interference.

In general, CDMA belongs to two basic categories: Synchronous CDMA (orthogonal codes) Asynchronous CDMA (pseudorandom codes)

1. Synchronous CDMA:
WALSH CODES: Synchronous CDMA exploits mathematical properties of orthogonality between vectors representing the data strings. For example, binary string"1011" is represented by the vector (1, 0, 1, 1) .Vectors can be multiplied by taking their dot product, by summing the products of their respective components. If the dot product is zero, the two vectors are said to be orthogonal to each other. (Note: If u=(a,b) and v=(c,d), the dot product u.v = a*c + b*d) Some properties of the dot product help to understand how W-CDMA works. If vectors a and b are orthogonal, then

Each user in synchronous CDMA uses an orthogonal codes to modulate their signal. An example of four mutually orthogonal digital signals is shown in the figure. Orthogonal codes have a crosscorrelation equal to zero; in other words, they do not interfere with each other. In the case of IS95 64 bit Walsh codes are used to encode the signal to separate different users. Since each of the 64 Walsh codes are orthogonal to one another, the signals are channelized into 64 orthogonal signals. The following example demonstrates how each users signal can be encoded and decoded. Example:Start with a set of vectors that are mutually orthogonal. (Although mutual orthogonality is the only condition, these vectors are usually constructed for ease of decoding, for example columns or rows from Walsh matrices.) An example of orthogonal functions is shown in the picture on the left. These vectors will be assigned to individual users and are called the "code", "chipping code" or "chip code". In the interest of brevity, the rest of this example uses codes (v) with only 2 digits.

An example of four mutually orthogonal digital signals .Each user is associated with a different code, say v. If the data to be transmitted is a digital zero, then the actual bits transmitted will be v, and if the data to be transmitted is a digital one, then the actual bits transmitted will be v. For example, if v=(1,1), and the data that the user wishes to transmit is (1, 0, 1, 1) this would correspond to (v, v, v, v)which is then constructed in binary as ((1,1),(1,1),(1,1),(1,1)). For the purposes of this article, we call this constructed vector the transmitted vector. Each sender has a different, unique vector v chosen from that set, but the construction method of the transmitted vector is identical. Now, due to physical properties of interference, if two signals at a point are in phase, they add to give twice the amplitude of each signal, but if they are out of phase, they "subtract" and give a signal that is the difference of the amplitudes. Digitally, this behavior can be modeled by the addition of the transmission vectors, component by component. If sender0 has code (1,1) and data (1,0,1,1), and sender1 has code (1,1) and data (0,0,1,1), and both senders transmit simultaneously, then this table describes the coding steps:

STEP 0 1 2 3

DECODE SENDER 0 vector0=(1,-1,pattern=(0,2,2,0,2,0,2,0) decode0=pattern.vector0 decode0=((0,2),(2,0),(2,0),(2,0)).(1,1) decode0=((0+2),(2+0),(2+0),(2+0))

DECODE SENDER1 vector1=(1,1), pattern=(0,2,2,0,2,0,2,0) decode1=pattern.vector1 decode1=((0,2),(2,0),(2,0),(2,0)).(1,1) decode1=((02),(2+0),(2+0),(2+0))

Further, after decoding, all values greater than 0 are interpreted as 1 while all values less than zero are interpreted as 0. For example, after decoding, data0 is (2,2,2,2), but the receiver interprets this as (1,0,1,1). We can also consider what would happen if a receiver tries to decode a signal when the user has not sent any information. Assume signal0= (1,-1,-1,1,1,-1,1,-1) is transmitted alone. The following table shows the decode at the receiver:

STEP 0 1 2

DECODE SENDER0 vector0=(1,1), pattern=(1,-1,-1,1,1,-1,1,-1) decode0=pattern.vector0 decode0=((1,1),(1,1),(1,-1),(1,-1)).(1,1)

DECODE SENDER1 vector1=(1,1), pattern=(1,-1,-1,1,1) decode1=pattern.vector1 decode1=((1,1),(1,1),(1,-1),(1,-1)).(1,1)

decode0=((1+1),(1-1),(1+1),(1+1))

decode1=((11),(1+1),(1-1),

When the receiver attempts to decode the signal using sender1s code, the data is all zeros, therefore the cross correlation is equal to zero and it is clear that sender1 did not transmit any data.

2. Asynchronous CDMA: The previous example of orthogonal Walsh sequences describes how 2 users can be multiplexed together in a synchronous system, a technique that is commonly referred to as Code Division Multiplexing (CDM). The set of 4 Walsh sequences shown in the figure will afford up to 4 users, and in general, an NxN Walsh matrix can be used to multiplex N users. Multiplexing requires all of the users to be coordinated so that each transmits their assigned sequence v (or the complement, -v) starting at exactly the same time. Thus, this technique finds use in base-tomobile links, where all of the transmissions originate from the same transmitter and can be perfectly coordinated. On the other hand, the mobile-to-base links cannot be precisely coordinated, particularly due to the mobility of the handsets, and require a somewhat different approach. Since it is not mathematically possible to create signature sequences that are orthogonal for arbitrarily random starting points, unique "pseudo-random" or "pseudo-noise" (PN) sequences are used in Asynchronous CDMA systems. A PN code is a binary sequence that appears random but can be reproduced in a deterministic manner by intended receivers. These PN codes are used to encode and decode a users signal in Asynchronous CDMA in the same manner as the orthogonal codes in synchrous CDMA (shown in the example above). These PN sequences are statistically uncorrelated, and the sum of a large number of PN sequences results in Multiple Access Interference (MAI) that is approximated by a Gaussian noise process (following the "central limit theorem" in statistics). If all of the users are received with the same power level, then the variance (e.g., the noise power) of the MAI increases in direct proportion to the number of users. In other words, unlike synchronous CDMA, the signals of other users will appear as noise to the signal of interest and interfere slightly with the desired signal in proportion to number of users. All forms of CDMA use spread spectrum process gain to allow receivers to partially discriminate against unwanted signals. Signals encoded with the specified PN sequence (code) are received, while signals with different codes (or the same code but a different timing offset) appear as wideband noise reduced by the process gain. Since each user generates MAI, controlling the signal strength is an important issue with CDMA transmitters. A CDM (Synchronous CDMA), TDMA or FDMA receiver can in theory completely reject arbitrarily strong signals using different codes, time slots or frequency channels due to the orthogonality of these systems. This is not true for Asynchronous CDMA; rejection of unwanted signals is only partial. If any or all of the unwanted signals are much stronger than the desired signal, they will overwhelm it. This leads to a general requirement in any Asynchronous CDMA system to approximately match the

various signal power levels as seen at the receiver. In CDMA cellular, the base station uses a fast closed-loop power control scheme to tightly control each mobile's transmit power. See Near-far problem for further information on this problem.

PN SEQUENCE IN CDMA:
A Pseudo-random Noise (PN) sequence is a sequence of binary numbers, e.g. 1, which appears to be random; but is in fact perfectly deterministic. The sequence appears to be random in the sense that the binary values and groups or runs of the same binary value occur in the sequence in the same proportion they would if the sequence were being generated based on a fair "coin tossing" experiment. In the experiment, each head could result in one binary value and a tail the other value. A pseudo noise code (PN code) is one that has a spectrum similar to a random sequence of bits but is deterministically generated. The most commonly used sequences in direct-sequence spread spectrum systems are maximal length sequences, Gold codes, Kasami codes, and Barker codes. In cryptography, pseudo random noise (PRN) is a signal similar to noise which satisfies one or more of the standard tests for statistical randomness. Although it seems to lack any definite pattern, pseudo random noise consists of a deterministic sequence of pulses that will repeat itself after its period. In cryptographic devices, the pseudo random noise pattern is determined by a key and the repetition period can be very long, even millions of digits. Pseudo random noise is used in some electronic musical instruments, either by itself or as an input to subtractive synthesis, and in many white noise machines. In spread-spectrum systems, the receiver correlates a locally generated signal with the received signal. Such spread-spectrum systems require a set of one or more "codes" or "sequences" such that

Like random noise, the local sequence has a very low correlation with any other sequence in the set, or with the same sequence at a significantly different time offset, or with narrow band interference, or with thermal noise. Unlike random noise, it must be easy to generate exactly the same sequence at both the transmitter and the receiver, so the receiver's locally generated sequence has a very high correlation with the transmitted sequence.

In a direct-sequence spread spectrum system, each bit in the pseudorandom binary sequence is known as a chip and the inverse of its period as chip rate. Compare bit rate and baud. In a frequency-hopping spread spectrum sequence, each value in the pseudo random sequence is known as a channel number and the inverse of its period as the hop rate GPS satellites broadcast data at a rate of 50 data bits per second each satellite modulates its data with one PN bit stream at 1.023 million chips per second and the same data with another PN bit stream at 10.23 million chips per second. GPS receivers correlate the received PN bit stream with a local reference to measure distance. GPS is a receive-only system that uses relative timing

measurements from several satellites (and the known positions of the satellites) to determine receiver position. Other range-finding applications involve two-way transmissions. A local station generates a pseudo random bit sequence and transmits it to the remote location (using any modulation technique). Some object at the remote location echoes this PN signal back to the location station either passively, as in some kinds of radar and sonar systems, or using an active transponder at the remote location, as in the Apollo Unified S-Band system.[4] By correlating a (delayed version of) the transmitted signal with the received signal, a precise round trip light time to the remote location can be determined.

PN SEQUENCE GENERATOR:
The PN Sequence Generator block generates a sequence of pseudorandom binary numbers. A pseudo noise sequence can be used in a pseudorandom scrambler and descrambler. It can also be used in a direct-sequence spread-spectrum system. The PN Sequence Generator block uses a shift register to generate sequences, as shown below.

All r registers in the generator update their values at each time step according to the value of the incoming arrow to the shift register. The adders perform addition modulo 2. The shift register is

described by the Generator Polynomial parameter, which is a primitive binary polynomial in z, . The coefficient is 1 if there is a connection and

from the kth register, as labeled in the preceding diagram, to the adder. The leading term the constant term of theGenerator Polynomial parameter must be 1.

We can specify the Generator polynomial parameter using either of these formats:

A vector that lists the coefficients of the polynomial in descending order of powers. The first and last entries must be 1. Note that the length of this vector is one more than the degree of the generator polynomial. A vector containing the exponents of z for the nonzero terms of the polynomial in descending order of powers. The last entry must be 0. The key distribution problem for One-Time Pad suggests that one might use an algorithm to generate the random sequence needed as the key (transfer of only a short seed would then be needed). However, no algorithm using a finite state machine can produce a truly random sequence, since the finiteness forces the sequence to be periodic. The best we can do is use very long period sequences, called pseudo-random sequences.

PROPERTIES OF PN- SEQUENCE:


There are three properties of PN sequence: BALANCE PROPERTY - The number of "1"s in the sequence is one greater than the number of "0"s. RUN LENGTH PROPERTY - Of all the "runs" in the sequence of each type (i.e. runs consisting of "1"s and runs consisting of "0"s): One half of the runs are of length 1. One quarter of the runs are of length 2. One eighth of the runs are of length.

AUTOCORRELATION PROPERTY - The number of disagreements exceeds the number of agreements by unity. Thus again the discrepancy is 1/p

CDMA FORWARD AND REVERSE CHANNELS 1. FORWARD CHANNELS:


The Forward CDMA channel is the cell-to-mobile direction of communication or the downlink path. It consists of: Pilot Channel is a reference channel which the mobile station uses for acquisition, timing and as a phase reference for coherent demodulation. It is transmitted at all times by each base station on each active CDMA frequency. Each mobile station tracks this signal continuously. Sync Channel carries a single, repeating message that conveys the timing and system configuration information to the mobile station in the CDMA system. Paging Channels primary purpose is to send out pages, that is, notifications of incoming calls, to the mobile stations. The base station uses them to transmit system overhead information and mobile station- specific messages. Forward Traffic Channels are code channels used to assign call (usually voice) and signaling traffic to individual users.

2. REVERSE CHANNELS:
The Reverse CDMA channel is the mobile-to-cell direction of communication or the uplink path. Access Channels are used by mobile stations to initiate communication with the base station or to respond to Paging Channel messages. The Access Channel is used for short signaling message exchanges such as call originations, responses to pages, and registrations. Reverse Traffic Channels are used by individual users during their actual calls to transmit traffic from a single mobile station to one or more base stations.

MATLAB

MATLAB is an interactive software which has been used recently in various areas of engineering and scientific applications. It is not a computer language in the normal sense but it does most of the work of a computer language. Writing a computer code is not a straightforward job, typically boring and time consuming for beginners. One attractive aspect of MATLAB is that it is relatively easy to learn. It is written on an intuitive basis and it does not require in-depth knowledge of operational principles of computer programming like compiling and linking in most other programming languages. This could be regarded as a disadvantage since it prevents users from understanding the basic principles in computer programming. The interactive mode of MATLAB may reduce computational speed in some applications. The power of MATLAB is represented by the length and simplicity of the code. For example, one page of MATLAB code may be equivalent to many pages of other computer language source codes. Numerical calculation in MATLAB uses collections of well-written scientific/mathematical subroutines such as LINPACK and EISPACK. MATLAB provides Graphical User Interface (GUI) as well as three-dimensional graphical animation. In general, MATLAB is a useful tool for vector and matrix manipulations. Since the majority of the engineering systems are represented by matrix and vector equations, we can relieve our workload to a significant extent by using MATLAB. The finite element method is a well-defined candidate for which MATLAB can be very useful as a solution tool. Matrix and vector manipulations are essential parts in the method. MATLAB provides a help menu so that we can type the help command when we need help to figure out a command. The help utility is quite convenient for both beginners and experts. In the sections that follow, the MATLAB prompt () will be used to indicate where the commands are entered. Anything you see after this prompt denotes user input (i.e. a command) followed by a carriage return (i.e. the enter key). Often, input is followed by output so unless otherwise specified the line(s) that follow a command will denote output (i.e. MATLABs response to what you typed in). MATLAB is case-sensitive, which means that a + B is not the same as a + b. Different fonts, like the ones you just witnessed, will also be used to simulate the interactive session. This can be seen in the example below: e.g. MATLAB can work as a calculator. If we ask MATLAB to add two numbers, we get the answer we expect. 3+4 ans = 7

Das könnte Ihnen auch gefallen