Time and frequency response of a lowpass FIR filter designed with Parks-McClellan algorithm for N=33

Why FIR Filters have Linear Phase

One of the most attractive properties of a Finite Impulse Response (FIR) filter is that a linear phase response is easier to achieve. Not all FIR filters have linear phase though. This is only possible when the coefficients or taps of the filter are symmetric or anti-symmetric around a point. Today I want to describe the reason behind this kind of phase response in an intuitive manner. We have described Finite Impulse Response (FIR) filters before. Moreover, we have also discussed that the Discrete Fourier Transform (DFT) of a signal is complex in general and therefore both magnitude and phase

Continue reading
A complex number

Convolution and Fourier Transform

One question I am frequently asked is regarding the definition of Fourier Transform. A continuous-time Fourier Transform for time domain signal $x(t)$ is defined as \[ X(\Omega) = \int _{-\infty} ^{\infty} x(t) e^{-j\Omega t} dt \] where $\Omega$ is the continuous frequency. A corresponding definition for discrete-time Fourier Transform for a discrete-time signal $x[n]$ is given by \[ X(e^{j\omega}) = \sum _{n=-\infty} ^{\infty} x[n] e^{-j\omega n} \] where $\omega$ is the discrete frequency related to continuous frequency $\Omega$ through the relation $\omega = \Omega T_S$ if the sample time is denoted by $T_S$. Focusing on the discrete-time Fourier Transform for

Continue reading
Spectrum of a sinusoid

Generating Signals and Viewing the Spectrum

One of the most common questions DSP beginners have is how to generate the signals (particularly, sinusoids) and view their spectrum. They have a rough idea what time domain and frequency domain are about but struggle to construct the first few lines of code that open the gates towards a deeper understanding of signals. For this reason, I produce below an Octave (or Matlab) code that you can simply copy and paste to view and modify the results. Keep in mind that the code has been written for an explanation purpose, not conciseness or optimization. As you progress towards developing

Continue reading
Pulse Code Modulation (PCM)

Specifications of a Radio Receiver

When designing a radio receiver, a system architect has to deal with the issues such as dynamic range, noise floor and sensitivity of a radio receiver [1]. The ultimate purpose is computing a power budget to ensure that a minimum amount of signal power is available at the receiver during operation. This is not much different than how a country assigns an available budget into different sectors such as defense, education and health. Dynamic Range Dynamic range is the ratio of the largest signal level to the smallest signal level that the system can process in analog and digital stages.

Continue reading
A machine press

Why the Constant e Arises in Complex Plane as a Rotation

In the tutorial on how complex numbers arose, we asked three questions. The first two were answered in the same article while the answer to the third question, repeated below, is explained here. Why is the expression $e^{i \theta}$ a rotation of 1 by $\theta$ radians on a unit circle? Is it possible to make sense out of a number like $2.71828^{\sqrt{-1}\cdot\theta}$? The constant e is a special number discovered by Jacob Bernoulli while studying compound interests. It appears in many other forms as well which are all related to each other but that topic is a complete account in

Continue reading