Get started !
online LTE test
online C test

Updated or New
5G NR Data Rate calculator New
5G NR TBS calculator New
5G NR UE Registration New
Python programming
C++ programming
MIMO for 3GPP Developer - 2
Uplink power control
MIMO for 3GPP Developer
NR ARFCN and GSCN
5GS Interfaces



About
Feedback
Information Theory
Modulation
Multiple Access
OSI Model
Data Link layer
SS7
Word about ATM
GSM
GPRS
UMTS
WiMAX
LTE
CV2X
5G
Standard Reference
Reference books
Resources on Web
Miscellaneous
Mind Map
Magic MSC tool
Bar graph tool
C programming
C++ programming
Perl resources
Python programming
Javascript/HTML
MATLAB
ASCII table
Project Management
Simple Google box
HTML characters

another knowledge site

3GPP Modem
Simulator


Sparkle At Office comic strip

Multiple Access (CDMA) - 3

Code Division Multiple Access (CDMA) [Under Multiple Access]

The problem is: how do we allow multiple users to use tranmission media simultaneously (with of course no one but intended user(s) able to recover the information) ? A real life example would be a restaurant full of people conversing in difference languages. Though all conversations are in progress at the same time, a person can "understand" only those conversations that are spoken in his/her language - though he/she can "hear" all conversations.

So it seems we require a method by which we can "code" the information before transmitting and at the receivng side, we should be able to "filter out" this information from lot of other interferences by a certain "decoding and automatic filtering" method. This method is nothing but what CDMA does !

CDMA codes (low rate) information stream using (relatively higher rate) "code" stream. This code steam or code has a property that at receiving side we can recover the original information stream from shared transmission medium.

Let us take a simple example:

The information stream is 01, in terms of example voltage values, it would be -1, 1 (-1 => 0 and 1 => 1). The special code is 0101 (i.e. -1, 1, -1, 1). Now each bit of information stream is coded with this code. So resulting stream would be D x C = (1, -1, 1, -1,-1, 1, -1, 1). This would be transmitted over air with modulation technique (say BPSK).

On receiving side, after demodulation, we receive R=(1, -1, 1, -1,-1, 1, -1, 1) - perfect synchronisation and zero interference assumed. Now to get back information stream, we mutiply R with (code used for transmission) C giving us R x C = (-1, -1, -1, -1, 1, 1, 1, 1) which is nothing but original information stream (-1, 1) !

Let us see it in mathematical way.

D is original information stream, C is code.

So we transmit modulated (D x C).

At receiving side, after demodulation, we receive D x C. When we multiply with C again (D x C x C) - as C x C is certain (constant) number which can be eliminated -, it gives us D back !

Let us see if we have two users sending simulataneously.

First user: D1 x C1

Second user: D2 x C2

Received signal: D1 x C1 + D2 x C2

For filtering first user signal, multiply with C1, giving D1 x C1 x C1+ D2 x C2 x C1

C1 x C1 is a certain number which can be eliminated, so to get D1 back, C2 x C1 should be zero (or near to zero as much as possible) ! Note that similar analysis can be done for second user.

This is characteristic of CDMA code which allow simulataneous access !

Another thing to note here is as this code contain more than a bit and each information bit is coded, resulting coded stream has (or require) higher bandwidth/rate than information stream. In a way, we spread original signal over larger bandwidth, and so these codes are known "spreading codes".

Above characteristic of CDMA codes is also known as corrleation. Talking about noise, CDMA codes also have as less correlation with noise frequencies as possible.

Let us explore CDMA further in later articles.

References: Intro to CDMA from Scott Baxter, Tutorial from complex2real site

© Copyright Samir Amberkar 2010

Multiple Access (OFDMA) « Multiple Access Index » Multiple Access (CDMA - 2)