CDMA, My Poems

3G? What is 3G? On what Technology it is based on?  3G is the third generation in cellular technology, which purely depends on CDMA200 though 2G also uses CDMA IS-95, the CDMA used in 3G is much more sophisticated than CDMA in 2G. So now the question is what is CDMA?  Unlike FDMA (frequency division multiple access) and TDMA (time division multiple access), CDMA is much more sophisticated modulation!! oh sorry its not a modulation, its a technique used for multiple access at the same time using codes.  Its completely based on spread spectrum technology, this can be done using either Direct Sequence Spread Spectrum (DSSS) or Frequency Hopping Spread Spectrum (FHSS).  FHSS is mainly used in military defence and its a complex animal at the first.  So, here I deal with DSCDMA which is Direct Sequence Code Division Multiple Access.

Direct Sequence Code Division Multiple Access:
In CDMA each user gets unique codes which then using the same code they can retrieve the data coming from the base station.  So I guess you have a doubt with the codes? what are codes?  okay let me tell you what these codes are, these are pseudo random codes.  Confused? well let me comprehend about this.  These codes are randomly generated bit streams of 1 and -1, which when looked looks like noise but since its not a noise lets give it a name as pseudo noise.  Yes, these are called PN codes.  Now lets get into more detailed description of CDMA.
Now say we have a bandwidth (BW) B Hz, then the time taken for each bit to be transmitted will be how much ? yes it is 1/B seconds.  Now as we are transmitting a bit in the form of codes (say N sequence code) and to transmit the date at the same bit rate we need to increase the bandwidth as each symbol of the bit should be sent at 1/NB seconds so we need NB Hz bandwidth.

CDMA transceiver :
At the transmitter the data is merged with the codes generated using some techniques (will be discussed later) and transmitted to the channel.  Now the data at the transmitter looks like a noise i.e., the information of the signal is mingled with the noise floor, so now the problem is how do we retrieve the transmitted data? So, to retrieve the data the receiver must know the code that was generated at the transmission side, once the codes are known the information (data) can be retrieved by performing the corss-correlation using the known code and the received data.  Thus you have the transmitted data.

Generation of codes :
To keep the overall bit rate same the bit rate of codes has to be increased as a consequence of this the bandwidth will increase, so as these codes are increasing the bandwidth i.e., these codes spread the data over the entire bandwidth, they are called as spreading codes and each bit in code is called as chip and the bit rate of chips (codes) is called chip rate.
The spreading factor is  defined as the ratio of Chip rate to the Symbol rate(data rate).
The codes used in the CDMA are :

  1. PN Codes
  2. Walsch codes
  3. Gold codes and etc..

Here I discuss the above first two codes, they are PN codes and Walsch Codes.

PN codes:
PN codes as said before they are pseudo-random noise codes, generated using a -1 and 1’s in NRZ form, 0 and 1’s in polar form.  These PN codes are generated using Linear Feedback Shift Register (LFSR). A typical LFSR is shown below.870461222_orig

The number of 0’s and 1’s thus generated in PN code must always be 1.  The PN codes has very good auto-correlation but not that good cross-correlation i.e., the correlation is not equal to zero at different lags.

Walsch codes:
Walsch codes are generated using Hadamard Matrix.  These codes generated are orthogonal to each other.  They have bad auto-correlation and good cross-correlation, so many users can be allowed at the same time.  But because of mutlipath interference, there would be a delay in the signal, as a consequence of this it looses its orthogonality and can no longer be used.  In that case PN codes are preferred to Walsche codes.

Walsch code are generated as follows,
let H1= [1]
then H2=[ H1     H1     ]
[ H1    H1bar].

for futher details on walsch codes and on CDMA follow the links given below…

  1. More on Walsch code
  2. More on CDMA