Wideband differentiator frequency and impulse responses

Design of a Discrete-Time Differentiator

Many signal processing algorithms require computation of the derivative of a signal in real-time. Some of the examples are timing recovery, carrier frequency synchronization, FM demodulation and demodulation of LoRa signals. An analog or digital filter that computes such a derivative is known as a differentiator. Before we design such a discrete-time differentiating filter, let us review some of the fundamentals. A Derivative The following quote is attributed to Heraclitus, a Greek philosopher, from 535 BC. Change is the only constant in life. This was brought into the realm of science by Newton and Leibniz. The purpose of science is

Continue reading
A complex sinusoid scaled by r>1

A Visualization of Causality and Stability in z-Transform

Most of the books and resources explain the z-Transform as a mathematical concept rather than a signal processing idea. Today I will provide a simple explanation of how the z-Transform helps in determining whether a system is causal and stable. I hope that this visual approach will help my readers learn this concept in a better manner. The z-Transform For a discrete-time signal $h[n]$ (that is the impulse response of a system), the z-Transform is defined as \begin{equation}\label{equation-z-transform} H(z) = \sum _{n=-\infty}^{\infty} h[n]z^{-n} \end{equation} Then, $z$ is a complex number and hence can be written as \[ z = re^{j\omega}

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
Time and frequency response of a lowpass FIR filter designed with Parks-McClellan algorithm for N=33

Finite Impulse Response (FIR) Filters

We learned in the concept of frequency that most signals of practical interest can be considered as a sum of complex sinusoids oscillating at different frequencies. The amplitudes and phases of these sinusoids shape the frequency contents of that signal and are drawn through magnitude response and phase response, respectively. In DSP, a regular goal is to modify these frequency contents of an input signal to obtain a desired representation at the output. This operation is called filtering and it is the most fundamental function in the whole field of DSP. It is possible to design a system, or filter,

Continue reading
Magnitude of frequency response |H[k]| in response to complex sinusoids at all N frequencies

System Characterization

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. In another article about transforming a signal, we saw how a signal can be scaled and time shifted, or added and multiplied with another signal. These are all examples of a system. Amplifiers in communication receivers and filters in image processing applications are some systems that we interact with in daily lives. A communication channel is also a

Continue reading