This blog discusses the behavior, mathematics, and implementation of cascaded integrator-comb filters.

Cascaded integrator-comb (CIC) digital filters are computationally-efficient implementations of narrowband lowpass filters, and are often embedded in hardware implementations of decimation, interpolation, and delta-sigma converter filtering.

After describing a few...]]>

The z-domain transfer function of the 2-RRS wide-notch comb filter, H2-RRS(z), is:

...]]>Background

Let's first review the behavior of a traditional comb filter. Figure 1(a) shows a traditional comb filter comprising two cascaded recursive running sum (RRS) comb filters. Figure 1(b) shows the filter's co-located dual poles and dual zeros on the z-plane, while Figure...]]>Background

Typically when DSP practitioners want to predict the accuracy performance of a digital integrator they compare how...]]>

Development of a Reduced-Delay 2nd-Order IIR Filter

Maslen's development of a reduced-delay 2nd-order IIR filter begins with a traditional prototype filter, HTrad, shown in...]]>

The terminology of "emitter" and "collector" seems appropriate, but did you ever wonder why the semiconductor block in the center is...]]>

Reducing IIR Filter Computations Using Dual-Path Allpass Filters

We can improve the computational speed of a lowpass or highpass IIR filter by converting that filter into a dual-path filter consisting of allpass...]]>

Figure 1

At a rate of 8000 samples/second, each telephone's audio signal is sampled and converted to a 7-bit binary sequence of pulses. The analog signals at Figure 1's nodes A, B, and C are presented in Figure 2.

...]]>

Image copied, without permission, from the now defunct Creative Computing magazine, Vol. 11, No. 6, June 1985.

]]>Introduction

Figure 1 presents a multistage decimate by D CIC filter where the number of stages is S = 3. The '↓D' operation represents downsampling by integer D...]]>

My fixation on one equation in that paper led to the creation of this...]]>

Background: Linear Interpolation

Looking at Figure 1(a) let's assume we have two points, [x(0),y(0)] and [x(1),y(1)], and we want to compute the value y, on the line joining those two points, associated with the value x.

Errata 3rd Ed. International Version.pdfErrata 3rd Ed. International Version.pdf

This blog post provides, in one place, the errata for each of the many different Editions/Printings of my book Understanding Digital Signal Processing.

If you would like the errata for your copy of the book, merely scroll down and click on the...]]>

In practice
we may be required to make precise measurements in the presence of highly-impulsive
noise. Without some sort of analog signal conditioning, or digital signal
processing, it can be...]]>

The blue-enameled steel toolbox measures 13 x 7 x 5 inches and, when opened, has a three-section tray attached to the lid. Showing signs of heavy use, the interior, tray, and exterior have collected a fair amount of dirt and grease and bear many scratches. The bottom of the box is worn from having been slid on...]]>

Over the years I've come to realize that a major star of the original
Star Trek series wasn't an actor....]]>

Reader, please take a few moments to...]]>

"I noticed that you didn't discuss z-plane regions of convergence here. In my...]]>

Figure 1 shows how the network's structure has the distinct look of a digital filter—a comb filter followed by a 2nd-order recursive network. However, I do not call this useful network a filter because its capabilities extend far beyond simple filtering. Through a...]]>

Here I focus on
envelope detection as it is applied to an...]]>

The Home page of the
web site that I found doesn't look at all like it would be useful to us DSP
fanatics. But if you enter some signal processing topic of interest, say,
"FM demodulation" (without the...]]>

Figure 1: Multistage decimation and interpolation using half-band filters.

Multistage...]]>This blog presents a novel method for simultaneously implementing a digital differentiator (DD), a Hilbert transformer (HT), and a half-band lowpass filter (HBF) using a single tapped-delay line...]]>

In reference [1] I presented a computationally-efficient tapped-delay line digital differentiator whose $h_{ref}(k)$ impulse...]]>

I'll declare two things to convince you to

Preliminaries To define what we're thinking about here, an N-point forward FFT and an N-point inverse FFT are described by:

$$ Forward \ FFT \rightarrow X(m) = \sum_{n=0}^{N-1}...]]>The tool shows four important characteristics of periodic sampling:

Characteristic# 1: All input analog spectral components,...]]>Background

The traditional way to interpolate (sample rate increase) an
x(n) time domain sequence is shown in...]]>

The general idea behind complex down-conversion is shown in Figure 1(a). And the traditional hardware block diagram of a complex down-converter is shown in Figure...]]>

A Surprising Algebra Puzzle

I wanted to derive the H(ω) equation for the frequency response of my FIR digital filter whose...]]>

For decades I've thought the number 9 had tricky, almost magical, qualities. Many people feel the same way. I have a book on number theory, whose chapter 8 is titled "Digits...]]>

Being unfamiliar with Eq. (1), and being my paranoid self, I wondered if that equation is indeed correct. Not finding a stock trigonometric identity in my favorite math reference book to verify Eq. (1), I...]]>

To be specific, if we perform an N-point DFT on N real-valued time-domain samples of a discrete cosine wave, having...]]>

The Problem Here's the situation for an ADC whose maximum analog input voltage range is –VRef to +VRef. If we drive an ADC's analog input with an sine...]]>

DFT SCALLOPING LOSS As you know, if we perform an N-point DFT on N real-valued time-domain samples of a discrete sine wave, whose frequency is an integer multiple of fs/N (fs is the sample rate in Hz), the peak magnitude...]]>

He justified his claim by going through the following exercise, starting with:

Based on the algebraic...]]>

The various mathematical expressions for sinusoidal signals use a number of different forms of a frequency variable and...]]>

Introduction Quadrature signals are based on the notion of complex numbers and perhaps no other topic causes more heartache for newcomers to DSP than these numbers and their strange terminology of j operator, complex, imaginary, real, and orthogonal. If you're a little unsure of the physical meaning of complex numbers and the j = √-1 operator, don't feel bad because you're in good company....]]>

"When I travel in a DC-9 aircraft, and I sit back near the engines, I hear this fairly loud unpleasant whump whump whump whump sound. The frequency of that sound is, maybe, two cycles per second. I think that sound is a beat frequency because the DC-9's engines are turning at a slightly...]]>

Using the DFT as a Filter It may seem strange to...]]>

William Shockley In 1948 the brilliant...]]>

Standard 2nd-Order IIR Resonator A block diagram of the...]]>

- synchronous detection,
- phasing method,
- Weaver method, and
- filtering method.

Here we review synchronous detection in preparation for explaining, in detail, how the phasing method works. This blog contains lots of preliminary information, so if you're already familiar with SSB...]]>

Earlier this year, for the Linear Audio magazine, published in the Netherlands whose subscribers are technically-skilled hi-fi audio enthusiasts, I wrote an article on the fundamentals of interpolation as it's used to improve the performance of analog-to-digital conversion. Perhaps that article will be of some value to the...]]>

In late April 2012 there was a thread on the comp.dsp newsgroup discussing ways to reduce the spectral leakage problem encountered when using the DFT. One post in that thread caught my eye [1]. That post referred to a website presenting

In the Fall of 1979 Eugene...]]>

and

Testing the Flat-Top Windowing Function

This blog discusses an accurate method of estimating time-domain sinewave peak amplitudes based on fast Fourier transform (FFT) data. Such an operation sounds simple, but...]]>

For clarity, I define a complex baseband signal as...]]>

Happily, also available at the above web site...]]>

Thinking about such filters, Figure 1(a) shows the block diagram of a...]]>

Here's the technique: assume we want to multiply 18 times 17. We start by writing 18 and 17, side-by-side in column A and column B, as shown at the top of Figure 1. Next we divide the 18 at the top of column A by two, retaining only...]]>

On August 25th, 2009, Jerry...]]>

Due to their resistance to quantized-coefficient errors, traditional 2nd-order infinite impulse response (IIR) filters are the fundamental building blocks in...]]>

Then, later it occurred to me that it might be useful for this blog's readers to be aware of algorithms for computing FFT twiddle factors. So,... what follows are two...]]>

After some thinking, I believe I have a solution...]]>

Here are a few interesting facts about the great Carl Friedrich Gauss (1777-1855), considered by some historians to have been the world's greatest mathematician. The overused phrase of "genius" could, with full justification, be used to describe this man. (How many people do you know that could have discovered the law of quadratic reciprocity in number theory at the age...]]>

There have been times when I wanted to determine the z-domain transfer function of some discrete network, but my algebra skills failed me. Some time ago I learned Mason's Rule, which helped me solve my problems. If you're willing to learn the steps in using Mason's Rule, it has the power of George Foreman's right hand in solving network analysis problems.

This blog discusses a...]]>

Our algorithm is depicted by the...]]>

Assume we have the N-sample h(n) impulse response of a digital filter, with n being our time-domain index, and...]]>

The simplest form...]]>

Back in August 2007 there was a thread on the comp.dsp newsgroup concerning the process of removing the DC (zero Hz) component from a time-domain sequence [1]. Discussed in that thread was the notion of removing a signal's DC bias by subtracting the signal's moving average from that...]]>

Please know, all of the listed books are copyrighted. The copyright holders have graciously provided their books free...]]>

Consider the situation where we need to flip the X(f) spectrum in...]]>