3G Technology through the lens of CDMA and its Codes
"It's all about being one in a
billion"
What is CDMA?
CDMA stands for "Code Division Multiple Access." CDMA is a wireless transmission technology that was developed during World War II by the English allies to avoid having their transmissions jammed. After the war ended, Qualcomm patented the technology and made it commercially available as a digital cellular technology. Now CDMA is a popular communications method used by many cell phone companies.
Unlike the GSM and
TDMA technologies, CDMA transmits over the entire frequency range available. It
does not assign a specific frequency to each user on the communications
network. This method, called multiplexing, is what made the transmissions
difficult to jam during World War II. Because CDMA does not limit each user's
frequency range, there is more bandwidth available. This allows more
users to communicate on the same network at one time than if each user was
allotted a specific frequency range.
Because CDMA is
a digital technology, analog audio signals must
be digitized before being transmitted on the network. CDMA is used by
2G and 3G wireless communications and typically operates in the frequency range
of 800 MHz to 1.9 GHz.
CDMA relies heavily on
Codes so 3G also relies heavily on these codes. But what are these codes and
why do we use them?
CDMA provides up to 10
times the calling capacity of earlier analog networks (AMPS) and up to five
times the capacity of GSM systems.
3G spectrum
We have already seen
that 3G is a spread spectrum technology. One user's data can be transmitted
through multiple frequencies within a spectrum. The same happens with all of
the users. In other words, with 3G, the spectrum is really a chaos of data
fragments (frames or packets) and being unique is of utmost importance. This
uniqueness is achieved by a string of 0s and 1s called a "Code".
Each user is provided
a different code while performing wireless communication. These codes need to
be unique to make sure that no two users get cross connection and the process
may fail. Such codes are majorly divided into two categories:
1. Pseudo Random Codes
2. Mutually Orthogonal codes
Let's look at both of
them one by one
1. Mutually Orthogonal Codes
Let's jump to high
school mathematics a little. Vectors can be represented as sequence of numbers
in a matrix. And two vectors whose dot product (SOP of corresponding numbers)
is 0 are called mutually Orthogonal. In case of CDMA, generally a base station
distributes 64 bit long mutually Orthogonal codes to the users and packs their
data along with the code. So, every time the user receives a data-stream or packet
it performs dot product of the initial 64 bits with its own code and if the
result is 0, it ignores the information. That's how CDMA grants time and
frequency to the users and separates them with codes instead. Science community
calls these orthogonal vectors Walsh codes whereas communication
committee sometimes also refers to them as chip codes.
2. Pseudo Random Codes
Sometimes the users
keep moving too much in which case they may keep hopping between two or more
base stations. It becomes difficult for base stations to manage a common
Orthogonal code so such users are treated with a different approach.
They are provided a permanent (as long as the call lasts) PN (Pseudo Noise) or Pseudo Random Codes. The code is provided to respective base stations and the call remains intact. Such an arrangement is also useful when (rarely) base station runs out of mutually Orthogonal codes under high cellular traffic.
Base stations generate random code by adding difficult to predict intended
noise in a smaller code signal. Such code seems random but is actually
deterministic (pseudo). So, it won't be repeated by the BSc. One such popular
PR or PN code is Gold code. Under critical applications like Military
operations, Orthogonal codes are also replaced by PN codes.