A symbolic representation of aligning the Tx weights and Rx weights according to the channel conditions for maximum throughput

Singular Value Decomposition (SVD) – A Tutorial with an Application to Wireless Systems

Singular Value Decomposition (SVD) is a powerful concept in linear algebra whose relevance has significantly increased in recent times. Some of the notable examples are its applications in machine learning, data science and wireless communication systems. In this tutorial, I will explain the logic behind SVD from a non-mathematical viewpoint using a wireless application that forms the backbone of high speed wireless systems such as WiFi, 4G and 5G. What is Orthogonality and Why We Like It Orthogonality is a concept that comes with heavy mathematical details. However, it can be explained in a simple and non-rigorous manner. Look at

Continue reading
Block diagram of a pulse amplitude modulator and demodulator

Pulse Amplitude Modulation (PAM)

In the article on modulation – from numbers to signals, we said that the Pulse Amplitude Modulation (PAM) is an amplitude scaling of the pulse $p(nT_S)$ according to the symbol value. What happens when this process of scaling the pulse amplitude by symbols is repeated for every symbol during each interval $T_M$? Clearly, a series of bits $b$ (1010 in our initial example) can be transmitted by choosing a rectangular pulse and scaling it with appropriate symbols. \begin{equation*} \begin{aligned} m = 0 \quad b = 1 \quad a[0] = +A \\ m = 1 \quad b = 0 \quad a[1]

Continue reading
A linear system with scaled input and output

Linear Systems

In wireless communications and other applications of digital signal processing, we often want to modify a generated or acquired signal. A device or algorithm that performs some prescribed operations on an input signal to generate an output signal is called a system. Amplifiers in communication receivers and filters in image processing applications are some systems that we interact with in daily lives. Our main focus in these articles will be on a particular class of systems which are linear and time-invariant. A linear system implies that if two inputs are scaled and summed together to form a new input, the

Continue reading
A digital signal and its underlying continuous waveform

A Digital Signal

We have talked about obtaining a discrete-time signal through sampling the time-axis and obtaining a discrete frequency set through sampling the frequency axis. The same concept can be applied to the amplitude-axis, where the signal amplitude can be sampled to take only a finite set of discrete values. This discrete-time discrete-valued signal is called a digital signal, as opposed to an analog signal that is continuous in time and continuous in amplitude. The above figure shows how a digital signal having amplitudes over a fixed set of values can be obtained through slicing the underlying continuous amplitudes. For example, an

Continue reading
A BPSK constellation in a the presence of a carrier phase offset. A hypothetical QPSK constellation is also shown for comparison

How to Detect a Carrier Lock in an SDR

We have discussed before the effect of a phase offset on the received signal. We have also seen a logical approach to solve this problem as well as one of the earliest algorithms for phase synchronization known as a Costas loop. Here, the purpose is to explain how a Rx detects whether the Phase Locked Loop (PLL) has acquired the lock. A receiver is simply a blind machine which can implement a PLL but can never get to know how it is actually doing. A lock detector is a logic signal used in the Rx to indicate successful synchronization after

Continue reading