DSPRelated.com

Rick Lyons (@Rick Lyons)

Richard Lyons is a Contracting Systems Engineer and Lecturer at Besser Associates, Mountain View, Calif. He has written over 30 articles and conference papers on DSP topics, and authored Amazon.com's top selling DSP book "Understanding Digital Signal Processing, 3rd Ed.". He served as an Associate Editor at IEEE Signal Processing Magazine, for nine years, where he created and edited the "DSP Tips & Tricks" column. Lyons is the editor of, and contributor to, the book "Streamlining Digital Signal Processing-A Tricks of the Trade Guidebook, 2nd Ed." (Wiley & Sons, 2012).

Algebra's Laws of Powers and Roots: Handle With Care

Rick Lyons September 25, 202318 comments

Recently, for entertainment, I tried to solve a puzzling algebra problem featured on YouTube [1]. In due course I learned that algebra’s $$(a^x)^y=a^{xy}\qquad\qquad\qquad\qquad\qquad(1)$$

Law of Powers identity is not always valid (not always true) if variable a is real and exponents x and y are complex-valued.

The fact that Eq. (1) can’t reliably be used with complex x and y exponents surprised me. And then I thought, “Humm, …what other of algebra’s identities may also...


A Fast Guaranteed-Stable Sliding DFT Algorithm

Rick Lyons June 15, 202320 comments

This blog presents a most computationally-efficient guaranteed-stable real-time sliding discrete Fourier transform (SDFT) algorithm. The phrase “real-time” means the network computes one spectral output sample, equal to a single-bin output of an N‑point discrete Fourier transform (DFT), for each input signal sample.

Proposed Guaranteed Stable SDFT

My proposed guaranteed stable SDFT, whose development is given in [1], is shown in Figure 1(a). The output sequence Xk(n) is an N-point...


A New Contender in the Quadrature Oscillator Race

Rick Lyons September 24, 20226 comments

This blog advocates a relatively new and interesting quadrature oscillator developed by A. David Levine in 2009 and independently by Martin Vicanek in 2015 [1]. That oscillator is shown in Figure 1.

The time domain equations describing the Figure 1 oscillator are

     w(n) =...


A DSP Quiz Question

Rick Lyons December 5, 202112 comments

Here's a DSP Quiz Question that I hope you find mildly interesting

BACKGROUND

Due to the periodic natures an N-point discrete Fourier transform (DFT) sequence and that sequence’s inverse DFT, it is occasionally reasonable to graphically plot either of those sequences as a 3-dimensional (3D) circular plot. For example, Figure 1(a) shows a length-32 x(n) sequence with its 3D circular plot given in Figure 1(b).

HERE'S THE QUIZ QUESTION:

I was reading a paper by an audio DSP engineer where the...

An Efficient Full-Band Sliding DFT Spectrum Analyzer

Rick Lyons April 1, 20217 comments

In this blog I present two computationally efficient full-band discrete Fourier transform (DFT) networks that compute the 0th bin and all the positive-frequency bin outputs for an N-point DFT in real-time on a sample-by-sample basis.

An Even-N Spectrum Analyzer

The full-band sliding DFT (SDFT) spectrum analyzer network, where the DFT size N is an even integer, is shown in Figure 1(a). The x[n] input sequence is restricted to be real-only valued samples. Notice that the only real parts of...


A Simpler Goertzel Algorithm

Rick Lyons February 4, 2021

In this blog I propose a Goertzel algorithm that is simpler than the version of the Goertzel algorithm that is traditionally presented DSP textbooks. Below I very briefly describe the DSP textbook version of the Goertzel algorithm followed by a description of my proposed simpler algorithm.

The Traditional DSP Textbook Goertzel Algorithm

The so-called Goertzel algorithm is used to efficiently compute a single mth-bin sample of an N-point discrete Fourier transform (DFT) [1-4]. The...


60-Hz Noise and Baseline Drift Reduction in ECG Signal Processing

Rick Lyons January 23, 20216 comments

Electrocardiogram (ECG) signals are obtained by monitoring the electrical activity of the human heart for medical diagnostic purposes [1]. This blog describes a very efficient digital filter used to reduce both 60 Hz AC power line noise and unwanted signal baseline drift that often contaminate ECG signals.

PDF_HERE

We'll first describe the ECG noise reduction filter and then examine the filter's performance in a real-world ECG signal filtering example.Proposed ECG Noise Reduction Digital...


A Fast Real-Time Trapezoidal Rule Integrator

Rick Lyons June 13, 20204 comments

This blog presents a computationally-efficient network for computing real‑time discrete integration using the Trapezoidal Rule.

Background

While studying what is called "N-sample Romberg integration" I noticed that such an integration process requires the computation of many individual smaller‑sized integrations using the Trapezoidal Rule integration method [1]. My goal was to create a computationally‑fast real‑time Trapezoidal Rule integration network to increase the processing...


A Beginner's Guide To Cascaded Integrator-Comb (CIC) Filters

Rick Lyons March 26, 202068 comments

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 applications of CIC filters, this blog introduces their structure and behavior, presents the frequency-domain...


The DFT of Finite-Length Time-Reversed Sequences

Rick Lyons December 20, 201910 comments

Recently I've been reading papers on underwater acoustic communications systems and this caused me to investigate the frequency-domain effects of time-reversal of time-domain sequences. I created this blog because there is so little coverage of this topic in the literature of DSP.

This blog reviews the two types of time-reversal of finite-length sequences and summarizes their discrete Fourier transform (DFT) frequency-domain characteristics.

The Two Types of Time-Reversal in DSP

...

Update To: A Wide-Notch Comb Filter

Rick Lyons December 9, 2019

This blog presents alternatives to the wide-notch comb filter described in Reference [1]. That comb filter, which for notational reasons I now call a 2-RRS wide notch comb filter, is shown in Figure 1. I use the "2-RRS" moniker because the comb filter uses two recursive running sum (RRS) networks.

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

References

[1] R. Lyons, "A Wide-Notch Comb Filter", dsprelated.com Blogs, Nov. 24, 2019, Available...


A Wide-Notch Comb Filter

Rick Lyons November 24, 201918 comments

This blog describes a linear-phase comb filter having wider stopband notches than a traditional comb filter.

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 1(c) shows the filter's positive-frequency magnitude response when, for example, D = 9. The...

The Risk In Using Frequency Domain Curves To Evaluate Digital Integrator Performance

Rick Lyons September 24, 201933 comments

This blog shows the danger in evaluating the performance of a digital integration network based solely on its frequency response curve. If you plan on implementing a digital integrator in your signal processing work I recommend you continue reading this blog.

Background

Typically when DSP practitioners want to predict the accuracy performance of a digital integrator they compare how closely that integrator's frequency response matches the frequency response of an ideal integrator [1,2]....


Reduced-Delay IIR Filters

Rick Lyons July 4, 201919 comments

This blog gives the results of a preliminary investigation of reduced-delay (reduced group delay) IIR filters based on my understanding of the concepts presented in a recent interesting blog by Steve Maslen [1].

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 Figure 1(a). The first modification to the prototype filter is to extract the b0 feedforward coefficient...


Somewhat Off Topic: Deciphering Transistor Terminology

Rick Lyons May 28, 20194 comments

I recently learned something mildly interesting about transistors, so I thought I'd share my new knowledge with you folks. Figure 1 shows a p-n-p transistor comprising a small block of n-type semiconductor sandwiched between two blocks of p-type semiconductor.

The terminology of "emitter" and "collector" seems appropriate, but did you ever wonder why the semiconductor block in the center is called the "base"? The word base seems inappropriate because the definition of the word base is:...


Reducing IIR Filter Computational Workload

Rick Lyons May 24, 20195 comments

This blog describes a straightforward method to significantly reduce the number of necessary multiplies per input sample of traditional IIR lowpass and highpass digital filters.

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 filters as shown in Figure 1.

...

A Lesson In Engineering Humility

Rick Lyons May 20, 20198 comments

Let's assume you were given the task to design and build the 12-channel telephone transmission system shown in Figure 1.

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.

Figure 2

I'm convinced that some of you subscribers to this dsprelated.com web site could accomplish such a design & build task....

Controlling a DSP Network's Gain: A Note For DSP Beginners

Rick Lyons March 29, 201922 comments

This blog briefly discusses a topic well-known to experienced DSP practitioners but may not be so well-known to DSP beginners. The topic is the proper way to control a digital network's gain. Digital Network Gain Control Figure 1 shows a collection of networks I've seen, in the literature of DSP, where strict gain control is implemented.

              FIGURE 1. Examples of digital networks whose initial operations are input signal...


Stereophonic Amplitude-Panning: A Derivation of the 'Tangent Law'

Rick Lyons February 20, 20198 comments

In a recent Forum post here on dsprelated.com the audio signal processing subject of stereophonic amplitude-panning was discussed. And in that Forum thread the so-called "Tangent Law", the fundamental principle of stereophonic amplitude-panning, was discussed. However, none of the Forum thread participants had ever seen a derivation of the Tangent Law. This blog presents such a derivation and if this topic interests you, then please read on.

The notion of stereophonic amplitude-panning is...


A Brief Introduction To Romberg Integration

Rick Lyons January 16, 201911 comments

This blog briefly describes a remarkable integration algorithm, called "Romberg integration." The algorithm is used in the field of numerical analysis but it's not so well-known in the world of DSP.

To show the power of Romberg integration, and to convince you to continue reading, consider the notion of estimating the area under the continuous x(t) = sin(t) curve based on the five x(n) samples represented by the dots in Figure 1.

The results of performing a Trapezoidal Rule, a...


Microprocessor Family Tree

Rick Lyons January 10, 20195 comments

Below is a little microprocessor history. Perhaps some of the ol' timers here will recognize a few of these integrated circuits. I have a special place in my heart for the Intel 8080 chip.

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


Two Easy Ways To Test Multistage CIC Decimation Filters

Rick Lyons May 22, 20182 comments

This blog presents two very easy ways to test the performance of multistage cascaded integrator-comb (CIC) decimation filters [1]. Anyone implementing CIC filters should take note of the following proposed CIC filter test methods.

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 (discard all but every Dth sample), n is the input time index, and m is the output time index.


FFT Interpolation Based on FFT Samples: A Detective Story With a Surprise Ending

Rick Lyons April 16, 201841 comments

This blog presents several interesting things I recently learned regarding the estimation of a spectral value located at a frequency lying between previously computed FFT spectral samples. My curiosity about this FFT interpolation process was triggered by reading a spectrum analysis paper written by three astronomers [1].

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

Background

The notion of FFT interpolation is straightforward to describe. That is, for example,...


An Efficient Linear Interpolation Scheme

Rick Lyons December 27, 201725 comments

This blog presents a computationally-efficient linear interpolation trick that requires at most one multiply per output sample.

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. 

       Figure 1: Linear interpolation: given x, x(0), x(1), y(0), and y(1), compute the value of y. ...


Online DSP Classes: Why Such a High Dropout Rate?

Rick Lyons October 7, 201718 comments

Last year the IEEE Signal Processing Magazine published a lengthy article describing three university-sponsored online digital signal processing (DSP) courses [1]. The article detailed all the effort the professors expended in creating those courses and the courses' perceived values to students. 

However, one fact that struck me as important, but not thoroughly addressed in the article, was the shocking dropout rate of those online courses. For two of the courses the article's...


Errata for the book: 'Understanding Digital Signal Processing'

Rick Lyons October 4, 20179 comments
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 appropriate red line below. For the American versions of the various Editions of the book you'll need to know the "Printing Number" of your copy of the...


Above-Average Smoothing of Impulsive Noise

Rick Lyons July 10, 201724 comments

In this blog I show a neat noise reduction scheme that has the high-frequency noise reduction behavior of a traditional moving average process but with much better impulsive-noise suppression.

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 difficult to obtain stable and repeatable, measurements. This impulsive-noise smoothing trick,...


Looking For a Second Toolbox? This One's For Sale

Rick Lyons June 29, 2017
In case you're looking for a second toolbox, this used toolbox is for sale.

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 rough surfaces. 

The toolbox currently resides in Italy. But don't worry, it can be shipped to you....


Sinusoidal Frequency Estimation Based on Time-Domain Samples

Rick Lyons April 20, 201719 comments

The topic of estimating a noise-free real or complex sinusoid's frequency, based on fast Fourier transform (FFT) samples, has been presented in recent blogs here on dsprelated.com. For completeness, it's worth knowing that simple frequency estimation algorithms exist that do not require FFTs to be performed . Below I present three frequency estimation algorithms that use time-domain samples, and illustrate a very important principle regarding so called "exact"...


Frequency Translation by Way of Lowpass FIR Filtering

Rick Lyons February 4, 20175 comments

Some weeks ago a question appeared on the dsp.related Forum regarding the notion of translating a signal down in frequency and lowpass filtering in a single operation [1]. It is possible to implement such a process by embedding a discrete cosine sequence's values within the coefficients of a traditional lowpass FIR filter. I first learned about this process from Reference [2]. Here's the story.

Traditional Frequency Translation Prior To Filtering

Think about the process shown in...


The Real Star of Star Trek

Rick Lyons September 25, 20168 comments

Unless you've been living under a rock recently, you're probably aware that this month is the 50-year anniversary of the original Star Trek show on American television. It's an anniversary worth noting, as did Time and Newsweek magazines with their special editions.

   

Over the years I've come to realize that a major star of the original Star Trek series wasn't an actor. It was a thing. The starship USS Enterprise! Before I explain my thinking, here's a little...


An s-Plane to z-Plane Mapping Example

Rick Lyons September 24, 201610 comments

While surfing around the Internet recently I encountered the 's-plane to z-plane mapping' diagram shown in Figure 1. At first I thought the diagram was neat because it's a good example of the old English idiom: "A picture is worth a thousand words." However, as I continued to look at Figure 1 I began to detect what I believe are errors in the diagram.

Reader, please take a few moments to see if you detect any errors in Figure 1.

...

Should DSP Undergraduate Students Study z-Transform Regions of Convergence?

Rick Lyons September 14, 201613 comments

Not long ago I presented my 3-day DSP class to a group of engineers at Tektronix Inc. in Beaverton Oregon [1]. After I finished covering my material on IIR filters' z-plane pole locations and filter stability, one of the Tektronix engineers asked a question similar to:

     "I noticed that you didn't discuss z-plane regions of      convergence here. In my undergraduate DSP class we      spent a lot of classroom and homework time on the  ...


Implementing Impractical Digital Filters

Rick Lyons July 19, 20162 comments

This blog discusses a problematic situation that can arise when we try to implement certain digital filters. Occasionally in the literature of DSP we encounter impractical digital IIR filter block diagrams, and by impractical I mean block diagrams that cannot be implemented. This blog gives examples of impractical digital IIR filters and what can be done to make them practical.

Implementing an Impractical Filter: Example 1

Reference [1] presented the digital IIR bandpass filter...


An Astounding Digital Filter Design Application

Rick Lyons July 7, 201613 comments

I've recently encountered a digital filter design application that astonished me with its design flexibility, capability, and ease of use. The software is called the "ASN Filter Designer." After experimenting with a demo version of this filter design software I was so impressed that I simply had publicize it to the subscribers here on dsprelated.com.

What I Liked About the ASN Filter Designer

With typical filter design software packages the user enters numerical values for the...


The Swiss Army Knife of Digital Networks

Rick Lyons June 13, 20168 comments

This blog describes a general discrete-signal network that appears, in various forms, inside so many DSP applications. 

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 series of examples I've illustrated the fundamental strength of this Swiss Army Knife of digital networks...


Digital Envelope Detection: The Good, the Bad, and the Ugly

Rick Lyons April 3, 201621 comments

Recently I've been thinking about the process of envelope detection. Tutorial information on this topic is readily available but that information is spread out over a number of DSP textbooks and many Internet web sites. The purpose of this blog is to summarize various digital envelope detection methods in one place.

Here I focus on envelope detection as it is applied to an amplitude-fluctuating sinusoidal signal where the positive-amplitude fluctuations (the sinusoid's envelope)...


A Useful Source of Signal Processing Information

Rick Lyons March 23, 20168 comments

I just discovered a useful web-based source of signal processing information that was new to me. I thought I'd share what I learned with the subscribers here on DSPRelated.com.

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 quotation marks) into the 'Search' box at the top of the web page

and click the red 'SEARCH...


Optimizing the Half-band Filters in Multistage Decimation and Interpolation

Rick Lyons January 4, 201616 comments

This blog discusses a not so well-known rule regarding the filtering in multistage decimation and interpolation by an integer power of two. I'm referring to sample rate change systems using half-band lowpass filters (LPFs) as shown in Figure 1. Here's the story.

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

Multistage Decimation – A Very Brief Review

Figure 2(a) depicts the process of decimation by an integer factor D. That...


Implementing Simultaneous Digital Differentiation, Hilbert Transformation, and Half-Band Filtering

Rick Lyons November 24, 20152 comments

Recently I've been thinking about digital differentiator and Hilbert transformer implementations and I've developed a processing scheme that may be of interest to the readers here on dsprelated.com.


A New Contender in the Digital Differentiator Race

Rick Lyons September 30, 20154 comments

This blog proposes a novel differentiator worth your consideration. Although simple, the differentiator provides a fairly wide 'frequency range of linear operation' and can be implemented, if need be, without performing numerical multiplications.

Background

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

$$ h_{ref}(k) = {-1/16}, \ 0, \ 1, \ 0, \ {-1}, \ 0, \ 1/16 \tag{1} $$

and...


The Most Interesting FIR Filter Equation in the World: Why FIR Filters Can Be Linear Phase

Rick Lyons August 18, 201517 comments

This blog discusses a little-known filter characteristic that enables real- and complex-coefficient tapped-delay line FIR filters to exhibit linear phase behavior. That is, this blog answers the question:

What is the constraint on real- and complex-valued FIR filters that guarantee linear phase behavior in the frequency domain?

I'll declare two things to convince you to continue reading.

Declaration# 1: "That the coefficients must be symmetrical" is not a correct


Four Ways to Compute an Inverse FFT Using the Forward FFT Algorithm

Rick Lyons July 7, 20151 comment

If you need to compute inverse fast Fourier transforms (inverse FFTs) but you only have forward FFT software (or forward FFT FPGA cores) available to you, below are four ways to solve your problem.

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} x(n)e^{-j2\pi nm/N} \tag{1} $$ $$ Inverse \ FFT \rightarrow x(n) = {1 \over N} \sum_{m=0}^{N-1}...

Correcting an Important Goertzel Filter Misconception

Rick Lyons July 6, 201517 comments

Recently I was on the Signal Processing Stack Exchange web site (a question and answer site for DSP people) and I read a posted question regarding Goertzel filters [1]. One of the subscribers posted a reply to the question by pointing interested readers to a Wikipedia web page discussing Goertzel filters [2]. I noticed the Wiki web site stated that a Goertzel filter:

"...is marginally stable and vulnerable tonumerical error accumulation when computed usinglow-precision arithmetic and...

Handy Online Simulation Tool Models Aliasing With Lowpass and Bandpass Sampling

Rick Lyons May 4, 20151 comment

Analog Devices Inc. has posted a neat software simulation tool on their corporate web site that graphically shows the aliasing effects of both lowpass and bandpass periodic sampling. This is a nice tutorial tool for beginners in DSP.

The tool shows four important characteristics of periodic sampling:

  Characteristic# 1: All input analog spectral components, regardless of their center frequencies, show up (appear) below half the sample rate in the digitized...

Why Time-Domain Zero Stuffing Produces Multiple Frequency-Domain Spectral Images

Rick Lyons March 23, 20154 comments

This blog explains why, in the process of time-domain interpolation (sample rate increase), zero stuffing a time sequence with zero-valued samples produces an increased-length time sequence whose spectrum contains replications of the original time sequence's spectrum.

Background

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

Figure 1

The '↑ L' operation in Figure 1 means to...


Complex Down-Conversion Amplitude Loss

Rick Lyons March 3, 20157 comments

This blog illustrates the signal amplitude loss inherent in a traditional complex down-conversion system. (In the literature of signal processing, complex down-conversion is also called "quadrature demodulation.")

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 1(b).

Let's assume the input to our down-conversion system is an analog radio frequency (RF) signal,...


A Complex Variable Detective Story – A Disconnect Between Theory and Implementation

Rick Lyons October 14, 2014

Recently I was in the middle of a pencil-and-paper analysis of a digital 5-tap FIR filter having complex-valued coefficients and I encountered a surprising and thought-provoking problem. So that you can avoid the algebra difficulty I encountered, please read on.

A Surprising Algebra Puzzle

I wanted to derive the H(ω) equation for the frequency response of my FIR digital filter whose complex coefficients were h0, h1, h2, h3, and h4. I could then test the validity of my H(ω)...


The Number 9, Not So Magic After All

Rick Lyons October 1, 20146 comments

This blog is not about signal processing. Rather, it discusses an interesting topic in number theory, the magic of the number 9. As such, this blog is for people who are charmed by the behavior and properties of numbers.

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 — and the Magic of 9", that discusses all sorts of interesting mathematical characteristics of the...


Sum of Two Equal-Frequency Sinusoids

Rick Lyons September 4, 20146 comments

Some time ago I reviewed the manuscript of a book being considered by the IEEE Press publisher for possible publication. In that manuscript the author presented the following equation:

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 modeled both sides of the equation using software. Sure enough, Eq. (1) is not correct. So then I...


The DFT Magnitude of a Real-valued Cosine Sequence

Rick Lyons June 17, 201410 comments

This blog may seem a bit trivial to some readers here but, then again, it might be of some value to DSP beginners. It presents a mathematical proof of what is the magnitude of an N-point discrete Fourier transform (DFT) when the DFT's input is a real-valued sinusoidal sequence.

To be specific, if we perform an N-point DFT on N real-valued time-domain samples of a discrete cosine wave, having exactly integer k cycles over N time samples, the peak magnitude of the cosine wave's...


Specifying the Maximum Amplifier Noise When Driving an ADC

Rick Lyons June 9, 20148 comments

I recently learned an interesting rule of thumb regarding the use of an amplifier to drive the input of an analog to digital converter (ADC). The rule of thumb describes how to specify the maximum allowable noise power of the amplifier [1].

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 wave whose peak amplitude is VP = VRef, the ADC's output signal to noise ratio is maximized. We'll...


A Remarkable Bit of DFT Trivia

Rick Lyons December 26, 20133 comments

I recently noticed a rather peculiar example of discrete Fourier transform (DFT) trivia; an unexpected coincidence regarding the scalloping loss of the DFT. Here's the story.

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 of the sine wave's positive-frequency spectral component will be

where A is the peak amplitude...


Computing Translated Frequencies in Digitizing and Downsampling Analog Bandpass Signals

Rick Lyons October 31, 20131 comment

In digital signal processing (DSP) we're all familiar with the processes of bandpass sampling an analog bandpass signal and downsampling a digital bandpass signal. The overall spectral behavior of those operations are well-documented. However, mathematical expressions for computing the translated frequency of individual spectral components, after bandpass sampling or downsampling, are not available in the standard DSP textbooks. The following three sections explain how to compute the...


Goertzel Algorithm for a Non-integer Frequency Index

Rick Lyons October 7, 201322 comments

If you've read about the Goertzel algorithm, you know it's typically presented as an efficient way to compute an individual kth bin result of an N-point discrete Fourier transform (DFT). The integer-valued frequency index k is in the range of zero to N-1 and the standard block diagram for the Goertzel algorithm is shown in Figure 1. For example, if you want to efficiently compute just the 17th DFT bin result (output sample X17) of a 64-point DFT you set integer frequency index k = 17 and N =...


Is It True That j is Equal to the Square Root of -1 ?

Rick Lyons September 16, 20136 comments

A few days ago, on the YouTube.com web site, I watched an interesting video concerning complex numbers and the j operator. The video's author claimed that the statement "j is equal to the square root of negative one" is incorrect. What he said was:

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

Based on the algebraic identity:

the author rewrites Eq. (1) as:

If we assume

Eq. (3) can be rewritten...


A Table of Digital Frequency Notation

Rick Lyons August 5, 2013

When we read the literature of digital signal processing (DSP) we encounter a number of different, and equally valid, ways to algebraically represent the notion of frequency for discrete-time signals. (By frequency I mean a measure of angular repetitions per unit of time.)

The various mathematical expressions for sinusoidal signals use a number of different forms of a frequency variable and the units of measure (dimensions) of those variables are different. It's sometimes a nuisance to keep...


A Quadrature Signals Tutorial: Complex, But Not Complicated

Rick Lyons April 12, 201364 comments

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. Why even Karl Gauss, one the world's greatest mathematicians, called the j-operator the "shadow of...


Beat Notes: An Interesting Observation

Rick Lyons March 13, 20137 comments

Some weeks ago a friend of mine, a long time radio engineer as well as a piano player, called and asked me,

"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 different number of revolutions per second. My question is, what sort of mechanism in the airplane...


Using the DFT as a Filter: Correcting a Misconception

Rick Lyons February 18, 201316 comments

I have read, in some of the literature of DSP, that when the discrete Fourier transform (DFT) is used as a filter the process of performing a DFT causes an input signal's spectrum to be frequency translated down to zero Hz (DC). I can understand why someone might say that, but I challenge that statement as being incorrect. Here are my thoughts.

Using the DFT as a Filter It may seem strange to think of the DFT as being used as a filter but there are a number of applications where this is...


The Little Fruit Market: The Beginning of the Digital Explosion

Rick Lyons January 14, 20135 comments

There used to be a fruit market located at 391 San Antonio Road in Mountain View, California. In the 1990's I worked part time in Mountain View and drove past this market's building, shown in Figure 1, many times, unaware of its history. What happened at that fruit market has changed the lives of almost everyone on our planet. Here's the story.

William Shockley In 1948 the brilliant physicist William Shockley, along with John Bardeen and Walter Brattain, co-invented the transistor at Bell...


Coupled-Form 2nd-Order IIR Resonators: A Contradiction Resolved

Rick Lyons November 23, 20127 comments

This blog clarifies how to obtain and interpret the z-domain transfer function of the coupled-form 2nd-order IIR resonator. The coupled-form 2nd-order IIR resonator was developed to overcome a shortcoming in the standard 2nd-order IIR resonator. With that thought in mind, let's take a brief look at a standard 2nd-order IIR resonator.

Standard 2nd-Order IIR Resonator A block diagram of the standard 2nd-order IIR resonator is shown in Figure 1(a). You've probably seen that block diagram many...


Setting the 3-dB Cutoff Frequency of an Exponential Averager

Rick Lyons October 22, 20126 comments

This blog discusses two ways to determine an exponential averager's weighting factor so that the averager has a given 3-dB cutoff frequency. Here we assume the reader is familiar with exponential averaging lowpass filters, also called a "leaky integrators", to reduce noise fluctuations that contaminate constant-amplitude signal measurements. Exponential averagers are useful because they allow us to implement lowpass filtering at a low computational workload per output sample.

Figure 1 shows...


Understanding the 'Phasing Method' of Single Sideband Demodulation

Rick Lyons August 8, 201230 comments

There are four ways to demodulate a transmitted single sideband (SSB) signal. Those four methods are:

  • 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 signals you might want to scroll down to the 'SSB DEMODULATION BY SYNCHRONOUS DETECTION'...


How Discrete Signal Interpolation Improves D/A Conversion

Rick Lyons May 28, 20121 comment
This blog post is also available in pdf format. Download here.

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 subscribers of dsprelated.com. Here's what I wrote:

We encounter the process of digital-to-analog...


How Not to Reduce DFT Leakage

Rick Lyons May 23, 201211 comments

This blog describes a technique to reduce the effects of spectral leakage when using the discrete Fourier transform (DFT).

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 a paper describing a DFT leakage method that I'd never heard of before [2]. (Of course, not that I've heard...


The History of CIC Filters: The Untold Story

Rick Lyons February 20, 20124 comments

If you have ever studied or designed a cascaded integrator-comb (CIC) lowpass filter then surely you've read Eugene Hogenauer's seminal 1981 IEEE paper where he first introduced the CIC filter to the signal processing world [1]. As it turns out, Hogenauer's famous paper was not the first formal document describing and proposing CIC filters. Here's the story.

In the Fall of 1979 Eugene Hogenauer was finalizing his development of the CIC filter, the filter now used in so many multirate signal...


Accurate Measurement of a Sinusoid's Peak Amplitude Based on FFT Data

Rick Lyons December 14, 201112 comments

There are two code snippets associated with this blog post:

Flat-Top Windowing Function for the Accurate Measurement of a Sinusoid's Peak Amplitude Based on FFT Data

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 the scalloping loss characteristic of FFTs complicates the process. We eliminate that complication by...


Generating Complex Baseband and Analytic Bandpass Signals

Rick Lyons November 2, 20112 comments

There are so many different time- and frequency-domain methods for generating complex baseband and analytic bandpass signals that I had trouble keeping those techniques straight in my mind. Thus, for my own benefit, I created a kind of reference table showing those methods. I present that table for your viewing pleasure in this blog.

For clarity, I define a complex baseband signal as follows: derived from an input analog xbp(t)bandpass signal whose spectrum is shown in Figure 1(a), or...


Orfanidis Textbooks are Available Online

Rick Lyons July 12, 2011

I have just learned that Sophocles J. Orfanidis, the well-known professor with the ECE Department of Rutgers University, has made two of his signal processing textbooks available for downloading on the Internet. The first textbook is: "Introduction to Signal Processing" available at: http://eceweb1.rutgers.edu/~orfanidi/intro2sp/

Happily, also available at the above web site are:

  • Errata for the textbook.
  • Homework Solutions Manual
  • Errata for Solutions...

Do Multirate Systems Have Transfer Functions?

Rick Lyons May 30, 20113 comments

The following text describes why I ask the strange question in the title of this blog. Some months ago I was asked to review a article manuscript, for possible publication in a signal processing journal, that presented a method for improving the performance of cascaded integrator-comb (CIC) decimation filters [1].

Thinking about such filters, Figure 1(a) shows the block diagram of a traditional 2nd-order CIC decimation filter followed by downsampling by the sample rate factor R. There we...


Multiplying Two Binary Numbers

Rick Lyons March 16, 20117 comments

I just encountered what I think is an interesting technique for multiplying two integer numbers. Perhaps some of the readers here will also find it interesting.

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 the integer part of the division, and double the 17 at the top of column B. The results of those two...


"Neat" Rectangular to Polar Conversion Algorithm

Rick Lyons November 15, 20105 comments

The subject of finding algorithms that estimate the magnitude of a complex number, without having to perform one of those pesky square root operations, has been discussed many times in the past on the comp.dsp newsgroup. That is, given the complex number R + jI in rectangular notation, we want to estimate the magnitude of that number represented by M as:

On August 25th, 2009, Jerry (Mr. Wizard) Avins posted an interesting message on this subject to the comp.dsp newsgroup (Subject: "Re:


Improved Narrowband Lowpass IIR Filters

Rick Lyons November 6, 20101 comment

Here's a neat IIR filter trick. It's excerpted from the "DSP Tricks" chapter of the new 3rd edition of my book "Understanding Digital Signal Processing". Perhaps this trick will be of some value to the subscribers of dsprelated.com.

Due to their resistance to quantized-coefficient errors, traditional 2nd-order infinite impulse response (IIR) filters are the fundamental building blocks in computationally-efficient high-order IIR digital filter implementations. However, when used in...


Computing FFT Twiddle Factors

Rick Lyons August 8, 201019 comments

Some days ago I read a post on the comp.dsp newsgroup and, if I understood the poster's words, it seemed that the poster would benefit from knowing how to compute the twiddle factors of a radix-2 fast Fourier transform (FFT).

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 algorithms showing how to compute the individual twiddle factors of an N-point decimation-in-frequency...


Computing an FFT of Complex-Valued Data Using a Real-Only FFT Algorithm

Rick Lyons February 9, 20103 comments

Someone recently asked me if I knew of a way to compute a fast Fourier transform (FFT) of complex-valued input samples using an FFT algorithm that accepts only real-valued input data. Knowing of no way to do this, I rifled through my library of hardcopy FFT articles looking for help. I found nothing useful that could be applied to this problem.

After some thinking, I believe I have a solution to this problem. Here is my idea:

Let's say our original input data is the complex-valued sequence...


Some Thoughts on a German Mathematician

Rick Lyons January 11, 20106 comments

Carl Friedrich Gauss

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 seventeen years?) Gauss was so prolific that by some estimates he personally doubled the amount of...


Using Mason's Rule to Analyze DSP Networks

Rick Lyons August 31, 20096 comments

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 valuable analysis method (well known to our analog control system engineering brethren) to obtain the z-domain...


Simultaneously Computing a Forward FFT and an Inverse FFT Using a Single FFT

Rick Lyons January 13, 20095 comments

Most of us are familiar with the processes of using a single N-point complex FFT to: (1) perform a 2N-point FFT on real data, and (2) perform two independent N-point FFTs on real data [1–5]. In case it's of interest to someone out there, this blog gives the algorithm for simultaneously computing a forward FFT and an inverse FFT using a single radix-2 FFT.

Our algorithm is depicted by the seven steps, S1 through S7, shown in Figure 1. In that figure, we compute the x(n) inverse FFT of...


Multiplierless Exponential Averaging

Rick Lyons December 5, 200811 comments

This blog discusses an interesting approach to exponential averaging. To begin my story, a traditional exponential averager (also called a "leaky integrator"), shown in Figure 1(a), is commonly used to reduce noise fluctuations that contaminate relatively constant-amplitude signal measurements.

Figure 1 Exponential averaging: (a) standard network; (b) single-multiply network.

That exponential averager's difference equation is

y(n) = αx(n) + (1 –...

Free DSP Books on the Internet - Part Deux

Rick Lyons December 4, 20081 comment

Since Stephane Boucher posted my "Free DSP Books on the Internet" blog here in February 2008, I have learned of additional books on the Internet that are related to signal processing. I list those books below. Again, the listed books are copyrighted. The books' copyright holders have graciously provided their books free of charge for downloading for individual use, but multiple copies must not be made or printed. As such, be aware that using any of these books as promotional material is...


Computing the Group Delay of a Filter

Rick Lyons November 19, 200817 comments

I just learned a new method (new to me at least) for computing the group delay of digital filters. In the event this process turns out to be interesting to my readers, this blog describes the method. Let's start with a bit of algebra so that you'll know I'm not making all of this up.

Assume we have the N-sample h(n) impulse response of a digital filter, with n being our time-domain index, and that we represent the filter's discrete-time Fourier transform (DTFT), H(ω), in polar form...


Computing Large DFTs Using Small FFTs

Rick Lyons June 23, 200821 comments

It is possible to compute N-point discrete Fourier transforms (DFTs) using radix-2 fast Fourier transforms (FFTs) whose sizes are less than N. For example, let's say the largest size FFT software routine you have available is a 1024-point FFT. With the following trick you can combine the results of multiple 1024-point FFTs to compute DFTs whose sizes are greater than 1024.

The simplest form of this idea is computing an N-point DFT using two N/2-point FFT operations. Here's how the trick...


Linear-phase DC Removal Filter

Rick Lyons March 30, 200826 comments

This blog describes several DC removal networks that might be of interest to the dsprelated.com readers.

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 signal, as shown in Figure 1(a).

Figure 1.

At first I thought...


Free DSP Books on the Internet

Rick Lyons February 23, 200824 comments

While surfing the "net" I have occasionally encountered signal processing books whose chapters could be downloaded to my computer. I started keeping a list of those books and, over the years, that list has grown to over forty books. Perhaps the list will be of interest to you.

Please know, all of the listed books are copyrighted. The copyright holders have graciously provided their books free of charge for downloading for individual use, but multiple copies must not be made or printed. As...


A Simple Complex Down-conversion Scheme

Rick Lyons January 21, 20087 comments
Recently I was experimenting with complex down-conversion schemes. That is, generating an analytic (complex) version, centered at zero Hz, of a real bandpass signal that was originally centered at ±fs/4 (one fourth the sample rate). I managed to obtain one such scheme that is computationally efficient, and it might be of some mild interest to you guys. The simple complex down-conversion scheme is shown in Figure 1(a).

It works like this: say we have a real xR(n) input bandpass...


Computing Chebyshev Window Sequences

Rick Lyons January 8, 200811 comments

Chebyshev windows (also called Dolph-Chebyshev, or Tchebyschev windows), have several useful properties. Those windows, unlike the fixed Hanning, Hamming, or Blackman window functions, have adjustable sidelobe levels. For a given user-defined sidelobe level and window sequence length, Chebyshev windows yield the most narrow mainlobe compared to any fixed window functions.

However, for some reason, detailed descriptions of how to compute Chebyshev window sequences are not readily available...


Spectral Flipping Around Signal Center Frequency

Rick Lyons November 7, 20074 comments

Most of us are familiar with the process of flipping the spectrum (spectral inversion) of a real signal by multiplying that signal's time samples by (-1)n. In that process the center of spectral rotation is fs/4, where fs is the signal's sample rate in Hz. In this blog we discuss a different kind of spectral flipping process.

Consider the situation where we need to flip the X(f) spectrum in Figure 1(a) to obtain the desired Y(f) spectrum shown in Figure 1(b). Notice that the center of...


A Differentiator With a Difference

Rick Lyons November 3, 200712 comments

Some time ago I was studying various digital differentiating networks, i.e., networks that approximate the process of taking the derivative of a discrete time-domain sequence. By "studying" I mean that I was experimenting with various differentiating filter coefficients, and I discovered a computationally-efficient digital differentiator. A differentiator that, for low fequency signals, has the power of George Foreman's right hand! Before I describe this differentiator, let's review a few...


Re: An Online Mathematics Reference Book

Reply posted 5 months ago (11/23/2023)
Hi Maurice. I'm tickled to hear from you. I also hope you're doing well. Happy Thanksgiving!
Hi Stephane. Thanks.I'll check the 'Create new blog post' sometime today.
Hi Stephane.With your new software there doesn't seem to be a way to create (compose) new blogs.[-Rick-] 

Re: An Online Mathematics Reference Book

Reply posted 8 months ago (08/28/2023)
Hi Dan.I believe you. I regularly use my copy to look up mathematical identities and formulas for derivatives and integration.

Re: An Online Mathematics Reference Book

Reply posted 8 months ago (08/28/2023)
Speaking of slide rules, my grandson is in his first year of engineering college. I enjoyed telling him that when I was in engineering college we computed the sine...

Re: An Online Mathematics Reference Book

Reply posted 8 months ago (08/28/2023)
Think of what your technical activities would be like if there was no Internet, no desktop computers, and no scientific pocket calculators. In that situation, fifty...

An Online Mathematics Reference Book

New thread started 8 months ago
Some of the "ol' timers" here may remember the valuable and popular book titled "CRC Standard Mathematical Tables" published by the Chemical Rubber Co., in Cleveland...

Re: Should work but doesn't (and vice versa)

Reply posted 9 months ago (08/05/2023)
Hi Robert.I'm a bit busy right now. Maybe you have the time to perform the interesting test that you describe in the fifth paragraph of your Reply.In case you hadn't...

Re: Should work but doesn't (and vice versa)

Reply posted 9 months ago (08/05/2023)
Robert, I implemented: y[n] = (2cos(Ω))y[n-1] - y[n-2] + x[n] where 2cos(Ω) was a single-precision floating point number. I forgot to say that my random input...

Re: Should work but doesn't (and vice versa)

Reply posted 9 months ago (08/05/2023)
My my Robert, you're up late tonight! I applied a random sequence to a 2nd-order resonator (whose poles are on the unit circle) and the resonator did resonate at...

Re: Should work but doesn't (and vice versa)

Reply posted 9 months ago (08/05/2023)
Hi Robert. You wrote,"It just seems to me that if it were a filter starting with zero states and you drove such a filter with an external broadband noise source...

Re: Should work but doesn't (and vice versa)

Reply posted 9 months ago (08/03/2023)
Hi Robert (I hope you're doin' well.)The notion of input signal quantization error affecting the resonant frequency of a 2nd-order resonator is an idea that's new...

Re: Should work but doesn't (and vice versa)

Reply posted 9 months ago (08/03/2023)
Hi.We can build oscillators from 2nd-order recursive networks with conjugate poles that always lie *EXACTLY* on the z-plane's unit circle. And the oscillator's output...

Re: RF loss during lighting strike

Reply posted 10 months ago (06/27/2023)
Hi.Can you give us more details of exactly what you mean by "RF signal in a coaxile to completely drop offline"?

Re: Question about Hogenauer's Paper

Reply posted 11 months ago (06/06/2023)
Hi Lyons Zhang (fpgaplayer).One thing I want to tell you is the following topic: When people try to learn about CIC decimation (or interpolation) filters it’s...

Re: Question about Hogenauer's Paper

Reply posted 11 months ago (06/05/2023)
Hello fpgaplayer.Look at the center portion of Hogenauer's Eq. (3). That expression is the z-domain transfer function of N integrators cascaded with N comb stages...

Re: Digital signal processing

Reply posted 11 months ago (06/02/2023)
Hi kaz.I like you quote!

Digital signal processing

New thread started 11 months ago
“Digital signal processing is a veritable ocean. Take as many soundings in it as you will, you will never know its depth.”                            ...

Re: LEGO Block Filters

Reply posted 11 months ago (05/21/2023)
Hi CedronI agree with you. Too many DSP publications allow authors to present signal processing operations to be described by a long sequence of equations without...

Re: LEGO Block Filters

Reply posted 11 months ago (05/21/2023)
Hello Safwan Arekat. Thank you for your gracious and clearly written reply. The text of your above reply’s second paragraph is a good description of a frequency...

Re: LEGO Block Filters

Reply posted 11 months ago (05/21/2023)
Hello Safwan Arekat.Regarding your paper titled: “Dirichlet Pulse Filter Design (LEGO Block Filters)“, it appears to me that your FIR filter design method is...
Hi Robert.The process you describe in your third paragraph describes what's called an "interpolated FIR" (IFIR) filter. The value of these two-stage IFIR filters...

Re: Help finding textbook for introductory DSP courses

Reply posted 1 year ago (02/04/2023)
Hello Kristian. I just now saw your post.Thank you for your kind words regarding my Understanding Digital Signal Processing textbook. I can tell you that there will...
Hi Randy.When I model the following robot equations:"h[n] = 2Δf * sin(2πfc1n/fs) / (2πfc1n/fs) for 0 <= n <= (N-1)/2 h[n] = 2Δf * sin(2πfc2n/fs) / (2πfc2n/fs)...

Re: FFT Interpolation

Reply posted 1 year ago (01/31/2023)
Hello Robert2017.I suggest you post your above question (to me) as a "new" question on this Forum.Good Luck.

Re: The Nyquist Sampling Theorem

Reply posted 1 year ago (01/26/2023)
Now all we have to do is convince the guitar-playing guys on the web site to come up with some guitar chord progressions, using Dylan's oddball "suspended" chords,...

Re: The Nyquist Sampling Theorem

Reply posted 1 year ago (01/26/2023)
Hi Platybel. The robot certainly did a better job than I could have.

Re: The Nyquist Sampling Theorem

Reply posted 1 year ago (01/26/2023)
Hi Neil. Ha ha. You're more perceptive than I am.

Re: The Nyquist Sampling Theorem

Reply posted 1 year ago (01/26/2023)
Hi ab3ap. Oh shoot. I don’t know what “VALL-E” is.

Re: The Nyquist Sampling Theorem

Reply posted 1 year ago (01/26/2023)
Hi Jason. I wasn’t familiar with the “Stuck Inside of Mobile” song. I listened to it on YouTube but the song’s lyrics made no sense to me. (Perhaps I should...

The Nyquist Sampling Theorem

New thread started 1 year ago
I asked the ChatGPT artificial intelligence (AI) software to write a song about the Nyquist Sampling Theorem in the style of Bob Dylan. Here's what the AI produced:Verse...
Hello Robmar. My ol' DSP pal Grant Griffin posted material on the Alpha Max Plus Beta Min algorithm at: https://dspguru.com/dsp/tricks/magnitude-estimator...
Hi Dan. I learned Robmar's algorithm back in the 1980s and was told it was called "Max plus beta min." Back then I thought, with an additional multiply perhaps we...

Re: PySDR.org

Reply posted 2 years ago (10/20/2022)
Hi Dave.Thanks for posting the 'pysdr.org' link.

Re: Blog editor issues

Reply posted 2 years ago (10/03/2022)
Hi. After I write a blog, and its all finished, it usually takes me between one and two hours of typing and mouse clicking to enter my blog into the editor. That's...

Re: FFT question

Reply posted 2 years ago (06/24/2022)
Hello Paulho2. To add a few figures to fred harris' (fharris') June 23rd Reply, the below 'Figure a' shows the spectral magnitude samples of a hypothetical real-valued...
Hi Dave. I wish you all the best with your "DSP for Wireless Communication" class. Dan Boschen has much to teach us.
Hi Dave. Thanks for posting information regarding Digilent Inc. I wasn’t familiar with that company. They definitely offer a super-wide variety of hardware for...
Hi Winkie.Yesterday when I first went to your web page (web link you provided) I didn't see any MATLAB code. At that time I didn't think about clicking the three...
Hi Winkie.In the text at the web link you provided are the words "The Bohmian Up-sampling algorithm {bup.m} can restore high-frequency components lost due to under-sampling,...

One of my favorite mathematics jokes

New thread started 2 years ago
Two captains of industry, Arthur and George, were in a restaurant discussing the state of educational standards, particularly in the field of mathematics. Arthur...
Hi fred.Yes, I agree. A finite-length time-domain sequence and its finite-length forward DFT sequence have a special "circularly-periodic" relationship with each...
Hi Neil. I know exactly what you mean!Of course the difference between hanning(N,'periodic') and hanning(N,'symmetric') becomes smaller and smaller as N increases.Niel,...
Hi fred.I've used Matlab's 'hanning()' function for decades. But in my more recent R2019b version of Matlab only a 'hann()' function is documented in their "Documentation"...
Hi. Window sequences where the last sample equals the first sample (symmetric) are used in digital filter design. Window sequences where the last sample equals...

Re: Proving Time Invariance of a system

Reply posted 3 years ago (10/20/2021)
Kirandan.Hi. Here's a numerical example of your system y = x(t) + x(t-2):n = 3:10;X1 = [1,3,4,4,2,10,7,8,7,4] % Original inputY1(n) = X1(n)-X1(n-2) % Original outputn...

Re: Can you find the illegal step?

Reply posted 3 years ago (08/27/2021)
OK OK, the above problem was pretty easy. Can you find the illegal step in the following? Theorem: 4=5 Proof: $$16-36=25-45$$ $$4^2–9*4=5^2–9*5$$...

Can you find the illegal step?

New thread started 3 years ago
Can you find the illegal step in the following silly proof? Given: a=b$$ a^2=ab$$$$a^2-b^2 = ab-b^2$$$$(a+b)(a-b)=b(a-b)$$$$a+b = b$$$$b+b=b$$$$2b=b$$

Re: DSP principles question

Reply posted 3 years ago (04/29/2021)
Hi Rich. Your notion that "we mathematically can fiddle the apparent sampling rate, perhaps by interpolation/decimation or some such" to change the sample rate of...

Re: DSP principles question

Reply posted 3 years ago (04/28/2021)
Hello richgroot. Can you tell what page, of which edition, of my book is causing you problems?

Re: Real Numbers

Reply posted 3 years ago (04/06/2021)
Hi Cedron. Regarding the proof I copied from the Internet and posted here, you wrote: "Rick's "proof" is the geometric sum series. The only thing missing was to...

Re: Real Numbers

Reply posted 3 years ago (04/06/2021)
Hi bholzmayer. Thanks for your interesting thoughts!

Re: Real Numbers

Reply posted 3 years ago (04/06/2021)
Hi Cedron. I'm pretty sure I understand what the number zero means. But I'm not confident that I fully understand what infinity means.I vaguely recall several years...

Re: Real Numbers

Reply posted 3 years ago (04/06/2021)
Hi Neil. Good idea. How about this:

Re: Real Numbers

Reply posted 3 years ago (04/06/2021)
Hello LM741. I'm not familiar with hyper reals. Also, I'm afraid that if I study those numbers I will experience hypertension.

Re: Real Numbers

Reply posted 3 years ago (04/05/2021)
Hi Jason (jms_nh). I don't recall what caused me to visit Keith Enevoldsen's web site. I liked his "embedded ovals" diagram. So I copied that diagram, used his text,...

Real Numbers

New thread started 3 years ago
Real Numbers.jpg
Hi Winkie. Below is my original .wav file (Capt Kirk saying, "Not chess Mr. Spock".):Capt_Kirk_Original.wavBelow is the original file decimated by a factor of eight:Capt_Kirk_Decimated_by_eight.wavAfter...
Hi Winkie. I ran your MATLAB code but the following command gave me an error:  XX = F((N):((2*N)));So I changed that command to:  XX = F((N):((2*N-1)));Was my...
Hi Winkie. I see your MATLAB code for your function 'A = rup(x,v)'. Can you tell use something about the variables 'x', 'v', and the output 'A'? That is, given 'x'...
Hi Winkie. By any chance would you have MATLAB code that implements your RUP and QEAR processes that you would be willing to share with us?

Re: Matlab Basic Functions Reference (pdf)

Reply posted 3 years ago (01/07/2021)
Hi Neil.Thanks for providing the link to the useful PDF file.
Hi adaptive filter. Shoot! You are correct. I have changed my Dec 6 reply's text to:"The phases of the positive-amplitude spectral values in Figure 3-9(a) are zero...
Hi pylessard. Is the a tutorial web page we can read to help us understand what we're looking at when we visit your "PLL Application" web page?
Hello bittersweet. Thank you for your kind words. If you are a computer science student then I have a question for you.Question:How many software programmers does...
Hello bittersweet. (I'm replying to your Dec. 6, 2020 post.) Let's settle one thing right now. You may think you're asking a "dumb" question. Believe me, there...

Re: How to synthesize band-limited noise?

Reply posted 3 years ago (11/30/2020)
Hello Marcinstein. Oh no no! I'm not in the same league as Charles Rader and fred harris. Charles Rader, among his other accomplishments, is literally one...

Re: How to synthesize band-limited noise?

Reply posted 3 years ago (11/28/2020)
Hello Marcinstein. You should feel honored to receive replies from both fharris and Charlie Rader. You should tell your family about this.

Re: Purity > 1?

Reply posted 3 years ago (11/22/2020)
Hi Aaron45. OK. So when a single input sinusoid's frequency is not at an N-point DFT's bin center then all of the DFT's N magnitude samples will be nonzero  Then...

Re: Purity > 1?

Reply posted 3 years ago (11/21/2020)
Hi Aaron45. I think of the numerical-error accumulation as being caused by the fact that we cannot place the Goertzel network's poles *exactly* at the desired angles...

Re: Purity > 1?

Reply posted 3 years ago (11/20/2020)
Hi Aaron45. I see what's happening here!The version of Parseval's Theorem that applies to digital signal processing is:Σ(x[n])^2 = 1/N*Σ(|X[m]|)^2        ...

Re: Purity > 1?

Reply posted 3 years ago (11/19/2020)
Aaron45, are you using 64-bit numerical values in your computations? Also, what is the nature of your input test signal?

Re: Has any one seen this window function?

Reply posted 4 years ago (08/03/2020)
Hi Cedron. I've not seen that w[n] window sequence before. It's frequency-domain behavior is super-similar to the Von Hann (hanning) window if we ignoring w[n]'s...

Re: Has any one seen this window function?

Reply posted 4 years ago (08/03/2020)
Hi kaz. Whether or not a boxcar (rectanglar) sequence is a window depends on your definition of the word "window".

Re: Parallel CIC filter processing enquiry

Reply posted 4 years ago (06/11/2020)
Hi kaz.I think you're correct. I figured any DC component of the original analog signal will exist as a DC component of any decimated sequence. But if each data...

Re: Parallel CIC filter processing enquiry

Reply posted 4 years ago (06/10/2020)
clear, clcNum_Samples = 80; % Number of input time samplesN = 8;% DFT sizen = 0:Num_Samples-1;Fs = 1000; % Sample rate in HzFo = 50; % Input sinusoid's frequency%%%%%%%%%%%%%%%%%%%%%%Generate...

Re: Parallel CIC filter processing enquiry

Reply posted 4 years ago (06/10/2020)
Hi Phil_SG. You wrote: "The data is split across 5 parallel, 16 bit samples." What does that exactly mean? Can you post a diagram showing data split across 5 parallel...

Re: Question regarding CIC filter

Reply posted 4 years ago (05/29/2020)
Hi aminnoura. If you have questions regarding the "A Beginner's Guide to Cascaded Integrator-Comb Filters" blog, I am willing to try to answer you questions.

Re: Question regarding CIC filter

Reply posted 4 years ago (05/28/2020)
Hi aminnoura.I'm not an expert on digital communications systems but if your signal can only have four values then it appears to me that your signal may be "symbols"...

Re: Matlab, properly using IFFT, FIR Filter Desing

Reply posted 4 years ago (05/22/2020)
Hello Jim.Ha ha. Don't worry. The discrete time domain is, every now and then, mysterious to us all.
Hi Gsparky2004. I think napierm is correct. I searched my copy of Frerking's book and the Section titled "Digital Differentiation" goes from page 253 to 257. I...

Re: New quiz question by Rick Lyons

Reply posted 4 years ago (04/24/2020)
Hello Marcin. My my. Thank you. Your words are too kind! I'm happy that my DSP book has been of some value to you. Marcin, below are two web pages that might interest...

Re: New quiz question by Rick Lyons

Reply posted 4 years ago (04/24/2020)
Hi Marcinstein. Yes. Only one question.
Hi max3031.I don't know what you mean by quantizing the "difference amplitude term (x[n] - y[n-1])". But I would like to say:If I'm not mistaken your IIR filter...

Re: Setting 25KHz playback sampling rate in sound card

Reply posted 4 years ago (03/28/2020)
Hi David (dgshaw6). That's quite a story you tell. You certainly did work with some signal processing "heavyweights". Thanks for the Farrow paper. I'm going to...
Hi Sara. Complex numbers prove the puzzling idea that the product of two negative numbers is a positive number. Have you ever seen this poem:   A minus times...

Re: Setting 25KHz playback sampling rate in sound card

Reply posted 4 years ago (03/27/2020)
Hi David. Thanks. Wow, that's quite a resume!I've run a cross papers that mention Farrow filters, but I've never actually studied those filters. I went to the IEEE...
Hi Sara. A few words from me (for whatever they are worth):Complex numbers are important because they have a powerful mathematical relationship with the trigonometric...

Re: Setting 25KHz playback sampling rate in sound card

Reply posted 4 years ago (03/26/2020)
Hi dgshaw6. Interesting! What company did you work for?

Re: Setting 25KHz playback sampling rate in sound card

Reply posted 4 years ago (03/25/2020)
Hi gaurav_lohiya. It seems to me that you should downsample your IF signal BEFORE you perform AM demodulation.

Re: Moving average followed by a decimator.

Reply posted 4 years ago (03/23/2020)
Hello Maurizio_Malaspina. I'm not sure if it's true but I think you may implementing what is called a cascaded integrator-comb (CIC) filter. If that's true, please...

Re: Sampling and using the data

Reply posted 4 years ago (03/21/2020)
Hi kimfmx. You wrote: "2) The bandwidth of 1.92Mhz is way too much information, and I need to filter out excess noise and signals out of my bandwidth, so ill have...
Hi amitjonak. Again, I'm no expert on digital radio systems and I do not fully understand some of the "Replies" here in this thread, but I'll mention one more idea...

Re: Sampling and using the data

Reply posted 4 years ago (03/20/2020)
Hi kimfmx. Sorry for my delayed reply. We can definitely answer your questions. But please know, we are not exactly sure what signal processing your are performing,...

Re: Sampling and using the data

Reply posted 4 years ago (03/18/2020)
Hi kimfmx. First, someone here will be able to answer all of your questions. But to do so we need to know EXACTLY what is the nature of your signals at EACH stage...
Hi amitjonak. I'm no expert on digital radio systems but I'll mention a few ideas here. In digital radio, a transmitter's filter that converts "symbols" (numbers)...

Re: FIR allpass with desired group delay

Reply posted 4 years ago (03/14/2020)
Hi. UliBru. MATLAB has a 'fir2()' command that designs FIR filters having arbitrary frequency responses. If you have MATLAB software you might try using its 'fir2()'...

Re: FIR allpass with desired group delay

Reply posted 4 years ago (03/14/2020)
Hi UliBry. Your filter's phase plot (your first plot) seems strange to me. I expected your 2nd-order allpass filter to have phase values of:   zero radians...

Re: FIR allpass with desired group delay

Reply posted 4 years ago (03/13/2020)
Hello UliBru. It would help if you posted a frequency-domain drawing of the desired group delay of your allpass filter. If you do that, label the freq axis in terms...

Re: FIR filtering vs linear convolution

Reply posted 4 years ago (02/28/2020)
Hello chaitanya02.Just so you know, the convolution of your 'h' and 'x' sequences is:[1, 4, 10, 20, 25, 24, 16, 0, 0, 0, 0, 0, 0].The convolution of two seven-sample...

Re: DTFT, plotting with various sampling frequencies

Reply posted 4 years ago (02/22/2020)
Hi transient. You cannot derive the DTFT equation for your continuous xa(t) signal. We can only derive the DTFT equations for discrete sequences. I derived the DTFT...

Re: DTFT, plotting with various sampling frequencies

Reply posted 4 years ago (02/21/2020)
Hi transient. You cannot compute continuous-time or discrete-time Fourier transforms using a computer. In those transforms the frequency variable is continuous,...

Re: Simplifications With Eulers Equation (DTFT, DTFS)

Reply posted 4 years ago (02/13/2020)
Hi transient. You asked:Here's how:

Re: Inverse FFT of a Sampled Frequency Domain Function

Reply posted 4 years ago (01/31/2020)
Hi jleman.Assumming your FFT software only works when the number of time samples is an integer power of two, perform the following test:(1) Make sure your original...

Re: Need tutorial information on 8VSB modulation

Reply posted 4 years ago (01/21/2020)
Hi Eric.You "came through" again!  Thanks a lot.

Re: Need tutorial information on 8VSB modulation

Reply posted 4 years ago (01/20/2020)
Hi Eric. Quadrature demodulator huh? That answers one of my questions. Thanks for the information!!

Need tutorial information on 8VSB modulation

New thread started 4 years ago
Hi. I've been trying to learn the technical details of 8VSB modulation (and demodulation) used in North America's digital television broadcasts.  But the only material...

Re: Expect Downtime

Reply posted 4 years ago (01/20/2020)
Hello doneill.  Neat!  Thanks for all the information.  And I agree, "Avoid windowed sampling for A/D converter testing."

Re: Expect Downtime

Reply posted 4 years ago (01/19/2020)

Re: Expect Downtime

Reply posted 4 years ago (01/19/2020)
Hello Doneill.The image you posted looks interesting. What is it? Thanks.

Re: #CIC filters and testing them

Reply posted 4 years ago (01/13/2020)
Hi ChuckMcM.Regarding the 2nd paragraph of your latest Comment that begins with "[Side note:...", the "arrow into z−1 block combined with the z-1 block" are not...

Re: #CIC filters and testing them

Reply posted 4 years ago (01/13/2020)
Hi ChuckMcM.If I understand your latest Comment that begins with "There is certainly something...", it seems to me you are implementing your first comb filter (Co0)...

Re: #CIC filters and testing them

Reply posted 4 years ago (01/12/2020)
Hi ChuckMcM.Below is my listing of the integrators/differentiators outputs for a 3-stage decimate-by-5 CIC decimator.The impulse response output of the 3rd differentiator...

Re: #CIC filters and testing them

Reply posted 4 years ago (01/12/2020)
Hi ChuckMcM. It's 1:40 AM on Jan. 12 for me right now. Let me dig through my old MATLAB code to see how the outputs of my integrators/differentiators compare with...

Re: What is the cost of a typical MSEE degree?

Reply posted 4 years ago (12/17/2019)
Hi lamabrew. $52k, ...Whew!! It's a crime against the students (and their parents) what universities did with their tuition costs once the U.S. Gubment started handing...

Re: What is the cost of a typical MSEE degree?

Reply posted 4 years ago (12/17/2019)
Hi dudelsound. I can thnk of several advantages of living in Germany:Nurnberger bratwursts, Kaiser brotchen, volkswandern, schnitzel, clean streets, the Autobahn,...

Re: What is the cost of a typical MSEE degree?

Reply posted 4 years ago (12/17/2019)
Hi Knutlnge. If your MSEE tuition was zero dollars how is it you had a $30,000 debt to pay 15 years ago? Do you live in Germany?

What is the cost of a typical MSEE degree?

New thread started 4 years ago
Hi. Recently I received an e-mail from the Coursera online education web site announcing a new online Masters of Science Degree in Electrical Engineering (MSEE)...

Re: Guaranteed stable sliding Goertzel implementation

Reply posted 4 years ago (12/10/2019)
Hi gretzteam. That "An Accurate and Stable Sliding DFT Computed by a Modified CIC Filter" article was printed in the magazine's 'DSP Tips & Tricks' column. When...

Re: Moving average filter using Blockram

Reply posted 4 years ago (12/08/2019)
Hi Adira. If your ADC input signal's maximum frequency is 3 kHz why is your ADC sampling rate so large (1.5 MHz)?

Re: Moving average filter using Blockram

Reply posted 4 years ago (12/07/2019)
Adira. The frequency magnitude responses of running sum filters do not have a flat passband. Their freq magnitude responses look like the following: The kind of...

Re: Moving average filter using Blockram

Reply posted 4 years ago (12/07/2019)
Adira. In the world of DSP the word "bandwidth" is a single number measured in Hz. For example, human speech signals are said to have a bandwidth of 4 kHz. (Notice...

Re: Moving average filter using Blockram

Reply posted 4 years ago (12/06/2019)
Hello Adira.Your terminology confuses me. I do not know what your words "Reconstructed signal frequencies range =0-3khz" or "Bandwidth of at least 0-20khz" mean.You...

Re: Moving average filter using Blockram

Reply posted 4 years ago (12/06/2019)
Hi Adira. The expression:is a "nonrecursive N-sample moving summation". If you divided each y[n] output sample by N then it would be an "nonrecursive N-sample moving...

Re: Moving average filter using Blockram

Reply posted 4 years ago (12/06/2019)
Hi Adira. Your equation:y(n)=y(n-1)+x(n)+x(n-N)is not correct. It should be:y(n) = y(n-1) + x(n)-x(n-N)But the corrected equation is not an averager, it's what is...

Re: Guaranteed stable sliding Goertzel implementation

Reply posted 4 years ago (12/03/2019)
Hi KimT. Here are a few papers that discuss ways to implement stable sliding DFTs: Denis A. Gudovskiy and Lichung Chu, "An Accurate and Stable Sliding DFT Computed...

Re: ADC and Complex Mixer Nyquist question

Reply posted 4 years ago (11/08/2019)
Hi omersayli. Here is what I'm saying:The following is the spectrum of the real-valued x(n) sequence.If I performed passband filtering of the x(n) sequence to attenuate...

Re: ADC and Complex Mixer Nyquist question

Reply posted 4 years ago (11/07/2019)
Hi omersayli.First, we don't "shift the spectrum to the fc and -fc". We shift X(m)'s spectrum in the negative-frequency direction by fc Hz. What I hoped to convey...

Re: ADC and Complex Mixer Nyquist question

Reply posted 4 years ago (11/07/2019)
Hi sachinwannabe.Let's say the output of your ADC (Fs sampling rate of one GHz) is a real-valued x(n) sequence whose |X(m)| FFT spectral magnitude is shown below...

Re: New IEEE Signal Processing Society Journal

Reply posted 4 years ago (10/31/2019)
Hi Stephane.I've always thought that dsprelated.com was "aimed at practicing engineers".

Re: New IEEE Signal Processing Society Journal

Reply posted 4 years ago (10/31/2019)
Hi Y(J)S. Ah ha. Thanks.

Re: New IEEE Signal Processing Society Journal

Reply posted 4 years ago (10/31/2019)
Hi Y(J)S. What is "PNAS"?

New IEEE Signal Processing Society Journal

New thread started 4 years ago
The IEEE Signal Processing Society (SPS) is starting a new publication program called the "IEEE Open Journal of Signal Processing". That program will be "dedicated...
Hi naumankalia. Perhaps the material at the following link will be of some use to you:https://www.dsprelated.com/showcode/263.php

Re: concept of bandwidth

Reply posted 5 years ago (10/26/2019)
Hi Sharan123.When you write: "...for modulation at rate r1"I have no idea what you mean. No idea at all. I think you may be confusing the two concepts of "spectral...

Re: concept of bandwidth

Reply posted 5 years ago (10/26/2019)
Hi Sharan123. We have a terminology problem here. In your Oct. 23 Comment, when you use the word "rate" I assume you mean "sample rate." And 'sample rates' are measured...

Re: concept of bandwidth

Reply posted 5 years ago (10/24/2019)
Hi Sharan123.I'm sorry. I don't know what your words "read out" mean.

Re: concept of bandwidth

Reply posted 5 years ago (10/23/2019)
Hi Sharan123. I'm replying to your second Oct. 22 "Reply."If your phrase "bandwidth" is related to the frequency-domain bandwidth of a time-domain sampled sequence,...

Re: concept of bandwidth

Reply posted 5 years ago (10/23/2019)
Hi Greg. Ah ha, OK. Thanks.

Re: A question regarding MATLAB's 'invfreqz()' command

Reply posted 5 years ago (10/23/2019)
Hi omersayli. Please call me "Rick." My friends do.Thanks for your thoughts, and you are correct. Check out my Oct. 22 Reply to anamariatome.

Re: A question regarding MATLAB's 'invfreqz()' command

Reply posted 5 years ago (10/23/2019)
Hi anamariatome.Thanks for pointing out that h(1) = NaN condition.(I hadn't noticed that.) To correct for that h(1) = NaN condition, I replaced my '[h,w] = freqz(b,...
Hi. When I execute the following MATLAB code:   b = [1 0 0 0 -1]  a = [1, -1]  [h, w] = freqz(b, a, 64);  b_Order = length(b) -1; a_Order = length(a) -1;  ...

Re: concept of bandwidth

Reply posted 5 years ago (10/22/2019)
Hi Greg.Regarding your second Oct. 21 Reply, can you tell me what is your definition of your word "bandwidth"? Thanks.

Re: concept of bandwidth

Reply posted 5 years ago (10/22/2019)
Hi Sharan123.What, exactly, is your question?

Re: CIC filter using prune width calculation

Reply posted 5 years ago (10/18/2019)
Hi singh2426v. You're welcome, and Good Luck with your CIC filter work.

Re: CIC filter using prune width calculation

Reply posted 5 years ago (10/18/2019)
Hi.gretzteam is correct in his first Oct. 17th comment. At the end of my text accompanying my MATLAB code at:https://www.dsprelated.com/showcode/269.phpI wrote:"Warning:...
Hi. That inverse chirp-z transform (ICZT) algorithm looks interesting, and I complement the Iowa State University professors for their clever work. However I can't...

Re: Designing an IIR comb (peak) filter

Reply posted 5 years ago (09/03/2019)
Hi bobby_kI tried to run your code but it contains calls to functions 'tf()' and 'tfdata()" that I do not have.

Re: Average Impulse Response from multiple measurements

Reply posted 5 years ago (08/12/2019)
Hi dudelsound. You are correct. And your words "the sweep starts at the same sample for all your measurements" are equivalent to my words "multiple time-domain signals...

Re: Average Impulse Response from multiple measurements

Reply posted 5 years ago (08/11/2019)
Hello Samp17. I'm sure someone can answer your question is you would tell us, in detail, EXACTLY what you are doing. You wrote that you have "taken several log sine...

Re: Efficient digital interpolation filter

Reply posted 5 years ago (08/06/2019)
Hello LC_Poon. You’re asking us to help explain why your computed numbers don’t agree with the computed numbers given in a paper that we cannot read. We don’t...

Re: FFT Interpolation

Reply posted 5 years ago (07/28/2019)
Hi MrColly. You are most welcome.  You wrote, "the spectrum of a sine wave should be a Dirac delta function."That is theoretically true for a continuous (analog)...

Re: FFT Interpolation

Reply posted 5 years ago (07/27/2019)
Hi MrColly. If you generated in Matlab an N-samaple sine wave sequence over exactly integer 'k' of cycles and performed an N-point DFT you would get a non-zero...

Re: FFT Interpolation

Reply posted 5 years ago (07/27/2019)
Hi lamabrew. I like your notion of using the names sheep and goat domains.

Re: FFT Interpolation

Reply posted 5 years ago (07/26/2019)
...

Re: FFT Interpolation

Reply posted 5 years ago (07/26/2019)
Hi. Here's my follow-up comment: In my earlier 'Reply' my phrase "true spectral magnitude of a finite-length sequence" is referring to the discrete-time Fourier...

Re: FFT Interpolation

Reply posted 5 years ago (07/26/2019)
Hello MrColly. Your second paragraph contains two misconceptions. The first misconception is that an FFT assumes its input sequence repeats itself. Only a living...

Re: Frequency estimation in between the bins ...

Reply posted 5 years ago (07/20/2019)
Hi. Slartibartfast gave you suggestions on finding more information about “fine” frequency estimation using FFT samples. To add to his list, you should also...

Re: FIR filter shortening technique

Reply posted 5 years ago (07/11/2019)
Hello y MahmoodAburomoh.You ask a strange question. Tell us, why would you want to convert a 1024-tap FIR filter to a 3-tap FIR filter?

Re: OFF TOPIC: A Question About PI

Reply posted 5 years ago (06/28/2019)
Hi bholzmayer.Thank you very much for your detailed June 28th "Reply." Number theory is indeed "The Queen of Mathematics."(And there's no need to warn me about possibly...

Re: OFF TOPIC: A Question About PI

Reply posted 5 years ago (06/27/2019)
artmez, ya' know what's weird. The video link I posted contradicts the notion that the sum of all integers is -1/12, but Indian mathematician Srinivasa Ramanujan...

Re: OFF TOPIC: A Question About PI

Reply posted 5 years ago (06/27/2019)
Hi artmez. Regarding the -1/12 notion, have you seen the analysis at:

Re: OFF TOPIC: A Question About PI

Reply posted 5 years ago (06/27/2019)
Hi bholzmayer. I want to understand your 'First approach'. You wrote, "...look through pi (beginning from left, if you want) until you find a sequence which fits...

OFF TOPIC: A Question About PI

New thread started 5 years ago
Hi. Is the teacher in the following video correct in saying that every number is contained within the digits of pi?
Hi iosman.Well, ...it's been three days since you post and you've received no replies. I believe that is so because of the vague terminology that you used in your...

Re: Pool Ball Pendulum Animation in MATLAB

Reply posted 5 years ago (06/17/2019)
Hi djmaguire. Thanks for posting your code. Although the motions of the pool balls were noticeably "speeded up" in your mp4 video when played on my computer, your...

Re: Pool Ball Pendulum Animation in MATLAB

Reply posted 5 years ago (06/17/2019)
Hi Cedron. I'm familiar with the ideas you presented. Your words correctly describe the purpose of the commands in my MATLAB code. To model the pendulums' motions,...

Re: Pool Ball Pendulum Animation in MATLAB

Reply posted 5 years ago (06/17/2019)
Hi Jeff. I just saw your June 13th post five minutes ago.Your idea of a spectrograph is a good one! Thanks. I will explore that idea.
Hi Shabaz.I share your uncertainty here. If you must pass a random-noise signal through a filter having a pole at z = exp(-d/20), and 'd' ranges from 0 -to- 200,...

Re: Sign of the magnitude difference

Reply posted 5 years ago (06/13/2019)
Hi chalil.  Regarding your June 13th Reply, I think there's a missing 2 in your 4th line down, but your bottom line is correct. In any case I think the derivation...

Re: Sign of the magnitude difference

Reply posted 5 years ago (06/13/2019)
Hi chalil. Can you give us more details on how you arrived at your Equation 2 (your equation for y squared)? Thanks.

Re: Multistage decimation by two with halfband filters

Reply posted 5 years ago (06/12/2019)
Hello bertramaerts. You have NOT missed anything! You are correct and your uncertainty is my fault. And for this I beg your pardon. For an explanation please see...

Re: Pool Ball Pendulum Animation in MATLAB

Reply posted 5 years ago (06/12/2019)
Hi jbrower. Watching the original pool ball pendulum video, it looked to me that the instantaneous East/West positions of the balls was VERY similar to the amplitudes...

Re: Is this time-domain aliasing?

Reply posted 5 years ago (06/11/2019)
Hi friedman. Thanks for sharing that video with us!

Re: Sign of the magnitude difference

Reply posted 5 years ago (06/11/2019)
Hi sudarshan_onkar. Your original post's question was interesting to me. Yesterday I didn't see any straightforward algebra solution to your problem, so I started...

Re: Sign of the magnitude difference

Reply posted 5 years ago (06/10/2019)
Hi. To "follow-up" on my earlier June 10th post where I suggested rephrasing sudarshan's question to:"If I have the magnitude and phase of quantity z1-z2, is there...

Pool Ball Pendulum Animation in MATLAB

New thread started 5 years ago
Hi.Two weeks ago I posted a Forum message:https://www.dsprelated.com/thread/8675/is-this-tim...showing a video of oscillating pool ball pendulums. Because that Forum...

Re: Sign of the magnitude difference

Reply posted 5 years ago (06/10/2019)
Hi sudarshan. I am confused by the words you used in your post. Three times you used the phrase "mag difference." If I replace your word "mag" with the word "number",...

Re: Creating a real time map

Reply posted 5 years ago (05/28/2019)
Hi Rayonthetrack. You wrote: "Is this 2 bytes worth of data to be sampling real time?"What does your word "this" mean?Also, you wrote: "I am looking to log the activity...

Is this time-domain aliasing?

New thread started 5 years ago
Hi.I'm trying to figure out if the motion in this video is a physical embodiment of time-domain aliasing. (Watch the video for at least 60 seconds.)

Re: Low cost audio DSP Exploration

Reply posted 5 years ago (05/26/2019)
Hi rtomkins. In an earlier reply you wrote: "I want to see this wonderful forum become a strong resource for others, people that are learning as well as people...

Re: Low cost audio DSP Exploration

Reply posted 5 years ago (05/25/2019)
Hi rtomkins. I hope you do not abandon this web site. dsprelated.com is an educational and valuable web site for guys interested in DSP.

Re: Spammers are getting more sophisticated

Reply posted 5 years ago (05/21/2019)
Good job Stephane!!

Re: minimum phase HRTF reconstruction

Reply posted 5 years ago (05/20/2019)
Hi guzpomi.What are Earth do the acronyms "HRTF" and "ITD" mean?

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/19/2019)
Hi szak1592. Good luck with your DSP studies on the MIT web site!

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/19/2019)
Hi Dr. Mike. I hope all is well with you!

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/19/2019)
Hi. In an earlier post of mine I wondered, "How do the MIT guys expect you to "Implement the filter for N=50"?" I can think of two ways to do that:[1] Compute the...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/19/2019)
Hi szak1592 (Shahbaz). I'm replying to your "At least there's something ..." post.[1] Here's my frequency response analysis of your original 'b' and 'a' coefficients:%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/18/2019)
Hi szak1592 (Shahbaz). I am replying to your "It seems like I have figured..." post.Using your original 6th-order 'b' and 'a' allpass coefficients, when I tried...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/18/2019)
Hi szak1592 (Shahbaz). I'm replying to your "I am just attempting this DSP ..." post.I looked at page 3 of the MIT PDF file and, sure enough, MIT's Project I Part...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/18/2019)
Hi szak1592 (Shahbaz). I'm replying to your "I did the same before ..." post. If you run the code I listed in my above reply to kaz, and carefully compare the least-significant...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/18/2019)
Hi szak1592. Just out of curiosity, can you tell me what is the purpose of cascading 50 (fifty) 6th-order IIR allpass filters? Thanks. (I'm willing to bet one bottle...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/18/2019)
Hi kaz. Yes, you're right & I'm familiar with that 'tf2zp(b,a)' command. I wanted szak1592 to determine if his pole and zero magnitudes were EXACT reciprocals...

Re: Simulating higher order all-pass filters in matlab?

Reply posted 5 years ago (05/18/2019)
Hi szak1592. Convolving your 'b' coefficients (raising the 'b' coeffs to the Nth power) and convolving your 'a' coefficients (raising the 'a' coeffs to the Nth power)...
Hi jimelectr. Ah but you did contribute to this topic! I enjoy hearing the opinions of working engineers regarding the literature of electrical engineering and signal...

Re: Somewhat Off Topic: Manipulating a PDF File.

Reply posted 5 years ago (05/15/2019)
Hi rrlagic, djmaguire, ZaelixA (Achilles), bholzmayer, and weetabixharry. Thanks for all your suggestions. You guys rock!! I tried weetabixharry's link at: ...

Somewhat Off Topic: Manipulating a PDF File.

New thread started 5 years ago
Hi. I have a 30-megabyte PDF file containing a dozen, or so, signal processing papers. And I'd like to extract just the first paper in that large file and make the...

Re: Timing Recovery Loop Filter Rate

Reply posted 5 years ago (05/15/2019)
Hi Dres. Like you, I am also fascinated by the clever DSP tricks I've encountered in the literature of DSP. And I've been "collecting" some of those tricks for the...

Re: Timing Recovery Loop Filter Rate

Reply posted 5 years ago (05/12/2019)
Hi David.Thanks a lot for your detailed May 11th post. I can see that telephone signal processing is much more complicated than I had imagined!

Re: Timing Recovery Loop Filter Rate

Reply posted 5 years ago (05/10/2019)
Hi dgshaw6.Under the assumption that you worked for AT&T at one time, I have a possibly dumb "telephone" question to ask of you. I have a simple ol' fashioned...
Hi szak1592.Asking me to recommend "readable" DSP articles is like asking me to recommend good Rock-n-Roll songs. It's all a "matter of opinion." And my opinion...
Hi szak1592.Well, ...we're not totally doomed. What we poor readers must typically do when plowing through a signal processing paper, as I wrote in the Preface of...
Hi szak1592. On the topic of general DSP there used to be two magazines that published, as you say, "papers that are easy to follow and also easy to reproduce...
Hi szak1592.Debugging DSP code certainly can be a pain in the neck.
Hi szak1592. I don't think your code is working properly. And I don't have time right now to examine your code in detail. But I do have a few suggestions for you....

Re: “Improved” MZT/IIM type One pole LPF

Reply posted 5 years ago (04/05/2019)
Hi jtp_1960. If you define what your text "MZT/IIM" means, the subscribers here may have some idea what is the topic of your post.

Re: Estimating SNR in the Frequency Domain

Reply posted 5 years ago (03/27/2019)
A  reply to ahmedshahein's 3/27/2019 message:Hi ahmedshahein. Three things: [1] As kaz said on 3/22/2019, "This issue is complicated." What I have learned is:...

Re: Estimating SNR in the Frequency Domain

Reply posted 5 years ago (03/23/2019)
Hi ahmedshahein. OK, I'm back on duty. (It's early Saturday morning.) I experimented with your original 'statistics_32695.m' code. I see that you've updated...

Re: Estimating SNR in the Frequency Domain

Reply posted 5 years ago (03/21/2019)
Hi ahmedshahein.I'll run your 'statistics_32695.m' file and see if I can be of any help to you.
Hi weetabixharry. I don't understand the spectral curves or the "timing offset" topic of your recent reply, but I can say you are correct in that your multirate...

Re: Fixed point filter gain

Reply posted 5 years ago (03/08/2019)
dsplearn, how on Earth can anyone answer your question when you provided no information about for filters?

Re: Filter a rectified waveform?

Reply posted 5 years ago (02/23/2019)
Hi steverak.Here's a diagram to support what omersayli wrote.The bold black voltage curve labeled "Waveform with capacitor" is the voltage labeled "+V" in the above...

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/22/2019)
HI John.My book has a bit more mathematics that Steven Smith's terrific book, but please know that I wrote my book to keep the mathematics at a low -to- moderate...

Re: The Spectral Complexity of a Single Musical Note

Reply posted 5 years ago (02/20/2019)
Hi Cedron.Your referenced material, "The Hammer and the String" was very interesting. It clearly illustrates the complexity of what initially appears to be a simple...

Re: The Spectral Complexity of a Single Musical Note

Reply posted 5 years ago (02/19/2019)
Hi Jeff. The article's title is "Automatic Music Transcription" which is the design of algorithms to convert audio music signals such as the following:                        ...
On page 25 of the most recent January issue of the IEEE Signal Processing Magazine the following interesting spectral plot was presented. That plot is the spectral...

Re: Major Outage

Reply posted 5 years ago (02/18/2019)
"One who gains strength by overcoming obstacles possesses the only strength which can overcome adversity."               -Albert Schweitzer

Re: Plotting panning law graph

Reply posted 5 years ago (02/16/2019)
Hi djmaguire.You are correct! Give that young man a kewpie doll.MATLAB's 'soundsc()' command will, indeed, play stereophonic audio.Thanks a lot!!

Re: Plotting panning law graph

Reply posted 5 years ago (02/16/2019)
Hi. Here's the MATLAB code I used to plot the above curve in my earlier Feb. 16, 2019 post.% Filename: Stereophonic_panning.m%% Stereophonic panning example using...

Re: Plotting panning law graph

Reply posted 5 years ago (02/16/2019)
Hi andresburgs.In you code, you should make a change so that as g2 increases in value, g1 must simultaneously decrease in value. We must ensure that g1 squared...

Re: Plotting panning law graph

Reply posted 5 years ago (02/16/2019)
Hi andresburgs.Are you still working on your "panning law graphing" problem?By the way, this evening I developed a derivation for the following equation.

Re: Plotting panning law graph

Reply posted 5 years ago (02/13/2019)
Hi Andresburgs.[1] I looked at the "ch5" material you referenced. The authors throw down the: equation and call it the "tangent law" with *NO* explanation of its...

Re: Plotting panning law graph

Reply posted 5 years ago (02/13/2019)
Hi Andresburgs. Does MATLAB allow us to send two different signals to our left and right speakers? If so, I couldn't figure out how to do that. I also do not...

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/13/2019)
Hi John. Answer# 1: I prefer to write that equation as:   Trans. Reg. Width = 6.64*(Fs/2)/N Hz where the variable 'N' is dimensionless. When Fs = 256 Hz and...

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/13/2019)
Hi John.Answer# 1a): You wrote that "the source code states, transition bandwidth is 6.64FN/ N, where FN is the maximum system frequency and where N is the filter...

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/12/2019)
Hi John. I forgot to say, after the book arrives visit the following web page, scroll down to the "AMERICAN 3RD EDITION", and click on the words: "Errata 3rd Ed....

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/12/2019)
Hi John. If you have a copy of my "Understanding DSP" book. Start by reading Chapters 1 & 2, and then go to Chapter 5. Let me know if you have any questions...

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/12/2019)
Hi John. The above comment: "...where FN is the maximum system frequency..." is unfortunate because we don't know what the phrase "maximum system frequency" means.Also,...

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/11/2019)
Hi.To add just a little information to Laurent Millot's nice plots, below is your lowpass filter's frequency magnitude response plotted using a linear vertical axis....

Re: questions of digital filter in a legacy application

Reply posted 5 years ago (02/10/2019)
Hello John1234567890.When designing a FIR filter using the "window method" the result of the design process is a sequence of numbers. That sequence of numbers is...
Hi sudarshan_onkar.I am puzzled why your local oscillator is a square wave. It seems to me that the product of your incoming 20 MHz sinusoidal signal and a 20 MHz...

Re: 50Hz and harmonics filtering

Reply posted 5 years ago (02/08/2019)
Hi dimaios.Would a filter whose freq magnitude response looks like the following:interest you? With an Fs = 1600 Hz sample, the filter has E = 8 notches in the positive...
Hi sudarshan_onkar.Someone here may be able to help you but you'll have to provide more information regarding your signal processing. What do you mean by "model...

Re: Understanding the Comb Filter Frequency Response

Reply posted 5 years ago (01/31/2019)
Hi Luk_11. Your confusion is NOT your fault.The freq axis in the wikipedia spectral plot is incorrect. (Although I avoid such vulgarity, today's young people would...

Re:

Reply posted 5 years ago (01/29/2019)

Re: Understanding the Comb Filter Frequency Response

Reply posted 5 years ago (01/22/2019)
Hi Luk_11. For u = 8 & g = 0.5, your network's frequency magnitude response (on a linear vertical axis and a freq axis that goes from minus half the sample...
Hi chab. In fact, right now, I'm trying to test a digital single-sideband (SSB) communications application that uses IIR Hilbert transformers. I'm performing two...
Hi chab. You are welcome.We can learn a useful lesson here. You were the victim of a situation I've experienced many times over the years. We have a digital system...
Hi chab.You didn't ask a specific question so I don't know what you're asking us. But I'll take a guess at what's bothering you.Your IIR filter is a super-narrowband...

Re: Sampling frequency of slow phenomena to obtain PSDs

Reply posted 5 years ago (01/17/2019)
Hi alejo_latd. You know what is the answer to my question but you didn't tell me what is the answer to my question. The information you provided assumes I know...

Re: Sampling frequency of slow phenomena to obtain PSDs

Reply posted 5 years ago (01/16/2019)
Hello alejo_latd. Regarding your spectral plot, what does it represent? In different words, that plot is the spectrum of what time-domain signal?

Re: Phase Locked Loop Books in a time of DSP

Reply posted 5 years ago (01/12/2019)
Hello Y(J)S. Ah ha. I've seen that book's cover on the Internet before. Congratulations on having your book published.

Re: Overlap-add with window

Reply posted 5 years ago (01/11/2019)
Hi Brewster. Please send me a private e-mail at:R_dot_Lyons_@_ieee_dot_org.[-Rick-]

Re: Overlap-add with window

Reply posted 5 years ago (01/10/2019)
Hi lamabrew. When you refer to "Smith's book" are you referring to the material at:https://www.dsprelated.com/freebooks/sasp/Overlap_...It seems to me that the material...

Re: Not understanding digital signal processing

Reply posted 5 years ago (01/10/2019)
Hi House_atr. If you want to learn DSP, if you have enthusiasm and don't give up, you will learn DSP. To quote Susan B. Anthony, "Failure is impossible." Send me...

Re: Overlap-add with window

Reply posted 5 years ago (01/10/2019)
Hi ctlee. It seems to me that if you want to reduce the peak-peak ripples in your filter's passband then you would window your filter's time-domain coefficients...

Re: Overlap-add with window

Reply posted 5 years ago (01/10/2019)
...

Re: Not understanding digital signal processing

Reply posted 5 years ago (01/09/2019)
Hi Imoshe. Of my books, the book we're referring to here is described on the following web page:https://www.amazon.com/Understanding-Digital-Signa...

Re: Phase Locked Loop Books in a time of DSP

Reply posted 5 years ago (01/09/2019)
Hello Y(J)S. What's the title of your book?

Re: Not understanding digital signal processing

Reply posted 5 years ago (01/08/2019)
Hi House_atr.Your words didn't hurt my feelings, but rather they show me you are enthusiastic to learn more about DSP. You and I are kindred spirits. Thirty five...

Re: Not understanding digital signal processing

Reply posted 5 years ago (01/07/2019)
Hello House_atr. I just now saw this Forum thread.My use of Eqs. (2-3) and (2-4) is my algebraic way of showing that Eq. (2-5) is equivalent to the last line of...

Re: Understanding AD9364 Direct Conversion RFIC

Reply posted 5 years ago (01/02/2019)
Hi. Here's 'Part 2' of the article that brutor referenced:https://www.mwrf.com/active-components/differences...
Hi kaz. From fred's code, at the end of the 'k' loop (when k = 80) the frequency-domain behavior of the 64 complex-valued filter coefficients are shown below.
Hi fred.That's a neat demo routine! If just after yourH1=[0 H0(2:64).*exp(+1i*2*pi*0.0002*k*(-31:31).^2)]; command we insert the following six lines of code we'll...

Re: Real to Complex conversion

Reply posted 5 years ago (12/15/2018)
Hello sachinwannabe.perhaps the information at the following web page will be of some value to you:https://www.dsprelated.com/showarticle/153.php

Re: Gain Control

Reply posted 5 years ago (12/11/2018)
Hi Imoshe.Ah, I think you're trying to teach me a lesson. And you have succeeded.RMS = sqrt(mean(x.^2)) is only correct for real-valued signals. Your original...

Re: Gain Control

Reply posted 5 years ago (12/11/2018)
Hi Imoshe.In the time domain it seems to me that the gain difference will be equal to the difference in the time-domain RMS values of the two signals.Also, just...

Re: Gain Control

Reply posted 5 years ago (12/11/2018)
Hi Imoshe.You wrote, "how can I measure it correctly?". My question is, "Measure what?"Also, I wonder if you are using abs(x) to compute RMS values.

Re: Gain Control

Reply posted 5 years ago (12/11/2018)
Whoa Imoshe, wait a minute! Let's use the proper terminology here. A single complex-valued FFT result sample has a real (imaginary) part that has an amplitude which...

Re: Gain Control

Reply posted 5 years ago (12/11/2018)
[I posted this reply BEFORE I saw your above reply to kaz.]Hi Imoshe.If we use the variable x(n) to represent your 'Gain = 24 dB' signal, then your 'Gain = 30 dB'...

Re: DSP Textbook Available Online

Reply posted 5 years ago (12/08/2018)
Hi wolf22. Yes, the "DSP Principles Algorithms and Applications" is NOT for beginners, that's for sure. Many professors use that book for their 1st-semester...

Re: Octave BandPass Filter on Audio Wav Files

Reply posted 5 years ago (12/03/2018)
Even Nash, "Housewares", would recommend Smith's book.

Re: Octave BandPass Filter on Audio Wav Files

Reply posted 5 years ago (12/01/2018)
Hi dingoegret. Yep, the "DSP Principles Algorithms and Applications" is NOT for beginners, that's for sure. Many professors use that book for their 1st-semester...
Hi Mukul. Sorry for my clumsy typing.

DSP Textbook Available Online

New thread started 5 years ago
Purdue University's Prof. Michael Zoltowski is teaching a DSP class (ECE538 Digital Signal Processing I) using the 4th edition of the Proakis & Manolakis DSP...
Hello mukel.Perhaps the following blog will be of some help to you. (Who knows?)https://www.dsprelated.com/showarticle/1045.php

Re: Magnitude of "wav" files

Reply posted 5 years ago (11/28/2018)
Hi WFla. In the world of DSP, "amplitudes" can have positive or negative values. And "magnitudes" (the absolute value of an "amplitude") are positive values only....

Re: Octave BandPass Filter on Audio Wav Files

Reply posted 5 years ago (11/28/2018)
Hello dingoegret. What DSP book did you buy?

Re: PRISM - A new type of filter ?

Reply posted 5 years ago (11/25/2018)
Hi kaz. Thanks for the code. I'm going to experiment with it.

Re: PRISM - A new type of filter ?

Reply posted 5 years ago (11/25/2018)
Hi woodpecker. Based on that "What is a Prism" web page it appears that "Prism Processing" is a technique for estimating the instantaneous frequency, instantaneous...

Re: Off Topic: Binary Numbers

Reply posted 5 years ago (11/05/2018)
Hi woodpecker. Thanks for the interesting link. I saw that Leibniz' idea was used in Curta calculators. I'd like to have one of those calculators but they cost roughly...

Re: Down sampling an iq signal

Reply posted 6 years ago (10/07/2018)
Hi tomb18.Ignoring any aliasing issues, let's say you have 1024 time-domain samples of a signal, you perform a 1024-pt FFT on those samples, and you see that some...

Re: Windowing before FFT on packets of IQ datastream

Reply posted 6 years ago (10/04/2018)
Hello wa1x.If you're using FFTs to implement high-performance digital filtering, in a process called "fast convolution", then there is no need to window the time-domain...

Re: Off Topic: Binary Numbers

Reply posted 6 years ago (08/29/2018)
Hi mukul.Of course I didn't read that long Pingala PDF file, but reading page 6 did not give me any clue that Pingala thought about representing decimal numbers...
Hello mukul.Did you see the web page at:https://www.dsprelated.com/showarticle/153.php

Off Topic: Binary Numbers

New thread started 6 years ago
In a letter dated February 26, 1701, now in the collection of the French Academy of Sciences, German mathematician Gottfried Wilhelm Leibniz wrote the following...
Hi Paul.I should make it clear here that I did not invent the filter in my book's Figure 13-65(b). Many years ago I first heard about that filter on the comp.dsp...

Re: DC Blocking unexpected results

Reply posted 6 years ago (08/22/2018)
Hello Tony.Looking at the second image of your 8/19/2018 post, it looks to me like the DC blocking filter has reduced that spectral spike at zero Hz (DC) of the...
Hi Paul. Referring to your 8/20/2018 post that starts with: "I decided to derive...", your idea of finding the "Y(z) divided by E(z)" error transfer function is...
Hello Paul (I'm replying to your 8/20/2018 post that begins with the words: "To be more specific,..."). When I look at your nice image (qKJY8bowe4z.png) produced...
Hello Paul.I've been checking my MATLAB code that modeled the filter in my Figure 13-65(b), and I could find to errors in that code, so far. However, thanks to you...
Hi swirhun.I'm not ignoring you. I will go through my modeling software code for Figure 13-65(b) and see if I've made some sort of coding error. I'll get back to...

Re: Removing DC Spike from an FFT

Reply posted 6 years ago (08/16/2018)
Hi Tom,you might want to try the following 45 coefficients in a delay-line FIR filter to implement a DC blocking filter:-0.001, -0.002, -0.003, -0.004, -0.006, -0.008,...

Re: Removing DC Spike from an FFT

Reply posted 6 years ago (08/16/2018)
Hi Tom.Regarding your 'i' samples, if you computed the average of 16384 'i' samples (a single number) and subtracted that average value from each of the 'i' samples...

Re: DC Blocking unexpected results

Reply posted 6 years ago (08/13/2018)
Hi Tony. Regarding the use of the words "amplitude" or "magnitude", what I wrote was correct. The vertical axis label of Figure 3 in the "Spectrum and spectral...

Re: DC Blocking unexpected results

Reply posted 6 years ago (08/11/2018)
Hello Tony. I developed the "moving average" DC blocking filter based on real-valued (binary two's complement) input signals. But off the top of my head I see no...
Hi Neil.Yes, in the ol' West the cost of a telegram was based on the number of transmitted letters in the message. That's why when Paladin (one of my boyhood TV...
Hi Will. You asked an important question.As I stated in the text, we want 31 h(k) coefficients and we want them to be symmetrical in the time-domain. That is, we...
Hi Neil.Thanks for the translation of "ASA." Like you, I don't understand most of the stunted, restricted, unexplained, infantile, cryptic, and confusing acronyms...
Hi kaz.What does your word "socialize" mean?
At a garage sale recently I bought the book "More Marilyn, Some Like It Bright!" for one U.S. dollar. In that book the following simple geometry problem was posedThe...
Hello sparrowjr.Someone here may be able to help you if you define (as clearly and completely as you are able) EXACTLY what your words: "make a new signal", "delay-line...

Re: Problem implementing Sharpened CIC filters

Reply posted 6 years ago (06/14/2018)
Hi hirnprinz. I posted my original reply and then a minute or two later realized that the second part of my reply was incorrect. So I deleted the second part of...

Re: Problem implementing Sharpened CIC filters

Reply posted 6 years ago (06/14/2018)
Hi hirnprinz. My congratulations to you on your very clearly written question.  The delay 'D' must be an integer when using the standard "Filter Sharpening" scheme...

Re: Inverse filter

Reply posted 6 years ago (06/13/2018)
Hi Rahul. Sorry for my delayed reply. I haven't worked on any projects that required me to study deconvolution in any detail. After searching the web a little I...

Re: Inverse filter

Reply posted 6 years ago (06/10/2018)
Hi Rahul. I think you want to perform what's called "deconvolution." And deconvolution can be performed (I) using your filter's output sequence (time-domain deconvolution)...

Re:

Reply posted 6 years ago (06/06/2018)
Hi FreeGameDev.Great. Please send a case of Sierra Nevada IPA to:Richard LyonsCell# 1638, Cell Block DFolsom State PrisonFolsom, California  95603
Hi achesir.If you apply an N-sample input sequence to a tapped-delay line FIR filter having 3N coefficients, your output sequence will have N+3N-1 = 4N-1 nonzero-valued...

Re:

Reply posted 6 years ago (06/06/2018)
...

Re:

Reply posted 6 years ago (06/05/2018)
Hi FreeGameDev.I went to the following web site:https://docs.unity3d.com/ScriptReference/AudioSour...I can't read the software gibberish on that page but I had the...

Re: Direction finding with Uniform Circular Array

Reply posted 6 years ago (06/05/2018)
Hello Loganathan. I just encountered the following web site that may be of interest to you:https://cdn.everythingrf.com/live/direction-findin...

Re:

Reply posted 6 years ago (06/04/2018)
Hi. Regarding your question: "how I convert the fftResults to DB?", the answer is: For each complex-valued FFT output sample you must compute that sample's magnitude...
Hi.Slartibartfast is correct. Your use of the word "reliable" is puzzling. Does your word "reliable" mean "correct", or maybe "valid"?I'll stick my neck out here...

Re: A Mathematical Notation Suggestion

Reply posted 6 years ago (05/21/2018)
What triggered my original post was the last sentence below (prior to the figure), from an article in the most recent issue of the IEEE Signal Processing Magazine...

Re: A Mathematical Notation Suggestion

Reply posted 6 years ago (05/20/2018)
There's no need to discuss this topic with today's academics. Modern academics are the cause of this confusion in mathematical notation! How many classic papers...

A Mathematical Notation Suggestion

New thread started 6 years ago
At the risk of offending thousands of university professors, I have a suggestion for the IEEE journal/magazine Editors regarding signal processing manuscripts submitted...

Re: Looking for Katja Vetter

Reply posted 6 years ago (05/16/2018)
Hi.  Ah, I see the address.  I'll use it to try to contact Ms. Vetter.  Thanks a lot Stephane!!

Re: Looking for Katja Vetter

Reply posted 6 years ago (05/16/2018)
Hi Stenz. No I didn't, until just now. When I downloaded two of the Slice//Jockey .zip files, all I had were files that I couldn't open on my Windows System 7 computer....

Looking for Katja Vetter

New thread started 6 years ago
...
Regarding my recent blog titled: "FFT Interpolation Based on FFT Samples: A Detective Story With a Surprise Ending", eagle-eye DerekB detecting a missing minus sign...

Re: Zero Lag Filter

Reply posted 6 years ago (04/27/2018)
Hi John. Can you post the coefficients of your filter (the filter having poles & zeros) here?  I'd like to "plug" those coefficients into my filter-analysis...

Re: CIC Filter "zero-crossing" Distortion

Reply posted 6 years ago (04/16/2018)
Hi JingCI tried to run your MATLAB code but the following command requires an undefined variable 'T':[x sd] = sd_mod(FS, 1e-3/0.021, F0, T);What is the missing command...

Re: DSP diagramming software?

Reply posted 6 years ago (04/16/2018)
I use Microsoft VISIO.  I patronize Microsoft because Bill Gates needs the money.
Hello chiwang_shum.  Thank you for your kind words. I appreciate them.Your idea of plotting 3-dimensional spectra is a good idea. However, the image you posted...
Hello chiwang_shum.  Here's the answer to your question. Open a new web browser page, go to the following web page, look at Figure 1, and then return here to read...

Re: z-transform: Confused on how to find ROC of H(z)

Reply posted 6 years ago (04/12/2018)
Hi DSPer1. With regard to Regions of Convergence, you might find the following blog to be interesting:https://www.dsprelated.com/showarticle/993.php

Re: DSP History

Reply posted 6 years ago (03/13/2018)
Hi Neil. Your interesting post makes me recall similar memories. In EE undergraduate school at the University of Akron (in the early 70's) the first half of one...

Re: DSP History

Reply posted 6 years ago (03/13/2018)
Hi Steve. I understand exactly what you talking about. The clear, thorough but not overly-complicated, conceptual approach is so very obvious in your "Scientist...

Re: DSP History

Reply posted 6 years ago (03/12/2018)
Hi Steve.  Ah ha.  That explains a lot!  Thomas Stockham was one of the most productive and famous of the early DSP Algorithm Kings.

DSP History

New thread started 6 years ago
For those of you interested in the history of DSP, you might find the following article noteworthy:Oppenheim-2012-Algorithm-Kings.pdf
Hi Coop. Regarding Heaviside, I agree with you and I believe he deserves to be at least as famous as, say, Brad Pitt or George Clooney. To appreciate Heaviside's...
For those of you who enjoyed reading the book "An Imaginary Tale: The Story of √-1", by Paul Nahin, here's a very interesting and revealing book review by Brian...

Square waves

New thread started 6 years ago
I thought I fully understood the notion of square waves. Not so!  Here are real square waves. (Photo taken off the coast of the French island Isle of Rhe.)
Hi John.  You're reminding me that someday I should study the MUSIC frequency estimation process.
Hi Troops.I'm unable to understand a paper describing what the authors' call a "new frequency estimation algorithm."  For those of you who have plenty of free time...

Re: Inversion properties of Convolution / Deconvolution

Reply posted 6 years ago (02/13/2018)
Hi nelsona."Wet" and "dry" huh?  Interesting!  (Sadly, I don't speak the lingo of audio signal processing.) Do you have the word "damp"?  As is in, "That damp...

Re: Inversion properties of Convolution / Deconvolution

Reply posted 6 years ago (02/12/2018)
Hi nelsona.  I see that your questions were posted two days ago but no one has attempted to reply to you. I think that's because you questions are difficult to...

Re: Real-time Wavelet Transform

Reply posted 6 years ago (02/08/2018)
Hi Nehavedam.  Eric Jacobsen and I have asked you to give us more details regarding the kind of FIR filtering you need (desire).  But you haven't given us those...

Re: Real-time Wavelet Transform

Reply posted 6 years ago (02/06/2018)
Hi Nehavedam.  In your original post you wrote that your signal "needs to be filtered in real time."  Perhaps it would help if you descried your desired filtering...

Re: Looking for tips to improve SNR

Reply posted 6 years ago (01/25/2018)
Greg, Uh oh!  I wonder if you are performing AM demodulation properly. Are you performing something equivalent to the scheme in Figure 4 at: https://www.dsprelated.com/showarticle/938.phpto...

Re: Looking for tips to improve SNR

Reply posted 6 years ago (01/25/2018)
So Greg, looking at the spectral drawing I posted on Jan. 24th, is your goal to detect the presence of the 511 Hz (or the 1489 Hz) tone? Stated in different words,...

Re: Looking for tips to improve SNR

Reply posted 6 years ago (01/24/2018)
Hi Greg. I'm not able to understand the analog processing as you describe it in your 2nd paragraph. Can you tell me, if your original input analog carrier signal...

Re: Looking for tips to improve SNR

Reply posted 6 years ago (01/23/2018)
Hi GregLapin. I agree with fred harris. It's easier for people to give you useful suggestions if you post a block diagram of your receiver, and sprinkle your diagram...

Re: Side lobes reduction after FFT

Reply posted 6 years ago (01/18/2018)
Hi fred.As always, your paper is very interesting and the figures therein are simply terrific! In case anyone's interested, an alternate description of that time-folding...

Re: Impulse behavior of FIR LP filter

Reply posted 6 years ago (01/11/2018)
Hi Bernhard.  Are you able to post an image here of the time-domain samples contained in your input "pulse"?

Re: Artifacts in Time Varying IIR Filters

Reply posted 6 years ago (01/05/2018)
Hi dszabo. I am the Editor of, and a contributor to, that "Streamlining DSP" book.  It's a collection of articles, by many authors, that appeared in the "DSP Tips...

Re: Artifacts in Time Varying IIR Filters

Reply posted 6 years ago (01/04/2018)
Hi dszabo.My my.  You've received some high-powered advice!  Both Fred harris and Steve Smith are holders of "Black Belts" in the field of DSP.

Re: How to downconvert a Complex RF signal in Matlab?

Reply posted 6 years ago (12/27/2017)
Hi.  I'm sure the guys here can answer all your questions, but they need more information from you M_313.  Are you able to post a block diagram here of your digital...

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/17/2017)
Hi Ced.  I'm sure you and I both understand this geometry problem and that we're actually in "agreement".  Did you see my most recent post down at the bottom of...

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/17/2017)
Hi Ced.   On a 2-dimensional plane, you seem to be saying that the locations of the following two points, C and C', are equal to each other.  I think the locations...

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/17/2017)
Hi Guys.   Thanks for all your replies.It just hit me!!  In the book's solution, the first sentence should have been: "Draw a line, called "m", through the row...

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi.  If we move line m, the book's solution will produce a new location for point C.  (In the book's solution, point C must always lie on line m.)

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi bholzmayer.  If you're interested in my solution, just scroll down in this thread.

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi dsplib.  I agree with you.  If you're interested in my solution, just scroll down in this thread.

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi.  If you're interested in my solution, just scroll down in this thread.

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi Steve.  I was happy to read that Example 6 also bothered you.  If you're interested in my solution, just scroll down in this thread.

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi. I believe (1)this problem is a minimization problem, and (2)there is only one correct answer for the location of point C. The book's solution to finding point...

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi.  Are you saying there is more than one correct answer to this minimization problem?

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi Kaz. The problem's question is clearly stated.  Unless I'm missing something here, there is one, and only one, correct answer for the location of point C. If...

Re: Off Topic: A geometry problem

Reply posted 6 years ago (11/16/2017)
Hi Greg.  In my opinion, the only thing wrong with the geometry book's given solution is that it is incorrect.  If you're interested in my solution, just scroll...

Off Topic: A geometry problem

New thread started 6 years ago
Hi Troops.  Forgive me for posting a non-DSP topic here, but I simply had to show the following to someone. I was looking at my grandson' high school "Common Core"...

Re: What is Windowing and when/why do we need it?

Reply posted 6 years ago (11/15/2017)
Hi Steve.   Nice to hear from you.[-Rick-]

Re: AGC on FPGA

Reply posted 6 years ago (11/14/2017)
Hi Neil.  I've never seen that web page before!  I see that the "Embedded" web site folks deleted the references I provided in that section of my DSP book.  Most...
I have an account on the LinkedIn.com web site. Some months ago I exchanged a half dozen e-mails with a businessman in my town. Let's call him "Joe Jones."  A few...

Re: An Oddball Electrical Engineering Question

Reply posted 7 years ago (09/12/2017)
Hi JohnEhlers.  You're not disagreeing, you're informing. Thanks for the information.

Re: An Oddball Electrical Engineering Question

Reply posted 7 years ago (09/12/2017)
Hi Guys.  Thanks for all your replies!

An Oddball Electrical Engineering Question

New thread started 7 years ago
I've been trying to learn about satellite antennas. And in my studies, unexpected ideas have occurred to me. For example, I just realized that the flashlight ("torch"...

Re: complex exponential - what Am I missing?

Reply posted 7 years ago (06/14/2017)
Sharan123, don't worry.  The only people who never makes mistakes are people who never do anything.  :-)
Hi. I initially had the same question as mukul.  Your statement, "I don't want to use any bandpass filter because it only attenuates the frequencies outside the...
Hi cogwsn.  Nice photo!!

Re: Magnitude/phase vs real/imaginary

Reply posted 7 years ago (05/14/2017)
There most certainly are plots of complex-valued sequences.  But as kaz said, such plots must be in three dimensions.  Such a plot can be found as the blue curve...

Re: Need Help In Interpreting Curves in a Chart

Reply posted 7 years ago (05/14/2017)
dszabo, jbrower, and Chris Felton, thanks for your thoughts regarding my questions!

Re: FFT Speed, FIR Output

Reply posted 7 years ago (05/14/2017)
Hi.  The mathematics of the Figure 2 envelope detector that I referred to is very simple.  But you do need to know: (i) what is a lowpass digital filter, (ii)...

Re: FFT Speed, FIR Output

Reply posted 7 years ago (05/14/2017)
Roger, matched filters, Goertzel, FFTs, envelope detectors, etc., Sheece!  People are making all sorts of suggestions to you based on what they think you're trying...

Re: DTFT of a signal

Reply posted 7 years ago (05/13/2017)
Hi Sharan123.   kaz's May 13 reply made me realize my brain was not working when I posted my above reply.  No explicit summation command in software is needed...

Re: Need Help In Interpreting Curves in a Chart

Reply posted 7 years ago (05/13/2017)
Hi Chris.  So you're saying the y-axis in Figure 5 is simply time (seconds). OK. I'll buy that.  Yes, I saw the authors' words that "the computational complexity...

Re: FFT Speed, FIR Output

Reply posted 7 years ago (05/13/2017)
Hello groger. I'm assuming you have a digital signal sequence comprising noise-only samples and then suddenly the signal is a 100 Hz (or 150 Hz) sinusoid for roughly...

Need Help In Interpreting Curves in a Chart

New thread started 7 years ago
In the most recent edition of the IEEE Sig. Proc. Magazine was an article discussing a new technique to perform sample rate change (SRC) [1]. The authors started...

Re: DTFT of a signal

Reply posted 7 years ago (05/12/2017)
Hi Sharan123.  Keep in mind, the DTFT is an equation and the 'w' (omega) frequency variable in that equation is continuous. We cannot use or "compute" continuous...
Hello Daniel.  I just saw your post this morning. Have you solved your 'MATLAB SSB demodulation' problem?

Re: AD9361 Filter Wizard

Reply posted 7 years ago (05/09/2017)
Hi.  You're using some sort of high-powered software to design your filter.  Be aware that the software will design a filter it thinks you "want" rather than the...

Re: DSP Filter Verification in FPGA

Reply posted 7 years ago (05/06/2017)
Hi kaz.  Thanks for your good advice.

Re: DSP Filter Verification in FPGA

Reply posted 7 years ago (05/06/2017)
Hello srid.  Perhaps the material at the following web page will be of some small value to you:https://www.dsprelated.com/showcode/269.php

Re: DFT of a signal and system

Reply posted 7 years ago (05/05/2017)
Hi.  Just to add my 'two cents': A discrete sequence has a DFT (a discrete spectrum). A system (such as a digital filter, differentiator, Hilbert transformer, etc.)...

Re: Subharmonic distortion?

Reply posted 7 years ago (04/27/2017)
Hello dszabo.  Good for you NOT ignoring an anomaly that you could have just as well ignored. I wonder, does the unwanted 500 Hz spectral component appear at different...

Re: sum of sinusoids

Reply posted 7 years ago (04/27/2017)
Hello Sharan123.  You above post is messed up.  Your plots' window seems to be covering up some part of your post.  In any case, I suggest you set variable L1...

Re: sum of sinusoids

Reply posted 7 years ago (04/27/2017)
Sharan123, if you have MATLAB then try this code:  n = 0:128;  for K = -2:0.25:2;    x = 1*sin(2*pi*n*16/128) + 10^K*sin(2*pi*n*14/128);     figure(1), clf   ...

Re: sum of sinusoids

Reply posted 7 years ago (04/27/2017)
To Sharan123: Your original signal plots are correct, but you added two sine waves (differing in frequency by one Hz) whose frequencies are low relative to the Fs...

Re: sum of sinusoids

Reply posted 7 years ago (04/27/2017)
Hi dszabo. Or perhaps it would be more correct to say, "The addition of two sinusoids, having different frequencies, is mathematically equivalent to a third sinusoid...

Re: sum of sinusoids

Reply posted 7 years ago (04/26/2017)
Hi. When you add two sinusoids of frequencies f1 and f2 you produce a third sinusoid whose frequency is (f1 + f2)/2.  And that third sinusoid's peak amplitude is...

Re: Back to back CIC filters

Reply posted 7 years ago (04/21/2017)
Hi flutekick. Good for you for asking such a sensible question.  Chris Felton’s advice is good!  To think more about your question, reduce your two filters from...

Re: Multi-Impulse Response Deconvolution

Reply posted 7 years ago (04/17/2017)
Hi.  What does it mean to "convolve a signal with two impulse responses"? Is the result of such a process one output sequence or two separate output sequences?
Hi andrewstanfordjason. Your question has very deep and subtle implications. That's because multirate (decimation) filters do not have a frequency response in the...

Re: Deriving FIR coefficients for a higher sample rate

Reply posted 7 years ago (04/12/2017)
Hi probbie, I'm tickled the scheme I posted works for you. Thanks for the beer.  If you'd like I'll send you the errata for your copy of my book.  All you have...

Re: Deriving FIR coefficients for a higher sample rate

Reply posted 7 years ago (04/08/2017)
Hi David, thanks for the kind words.  The notion of using a polyphase FIR interpolation process never occurred to me! There see, ...that's why they pay you the...

Re: Deriving FIR coefficients for a higher sample rate

Reply posted 7 years ago (04/08/2017)
Hello David.  I've not heard of your scheme before.  It sounds very interesting and I'm gonna experiment using it. Thanks for posting your scheme!

Re: How to calculate time delay estimation?

Reply posted 7 years ago (04/07/2017)
nateduong, you wrote:  "I want to make sure I did right or wrong?"I suggest you create your own very simple "transmit" and "receive" signal sequences and apply...

Re: Deriving FIR coefficients for a higher sample rate

Reply posted 7 years ago (04/06/2017)
Hi.  I wonder if the following "time-domain interpolation-by-M using frequency-domain zero stuffing" scheme will work for you [h(n) are your original FIR coefficients]:•...
Hi. At first I thought your text "b/w" stood for "bandwidth" but it turns out it means "between."  naumankalia, correct spelling makes it easier for people to read...

Re: Odd Convolution Results

Reply posted 7 years ago (04/05/2017)
Hello nelsona. I bet someone here can help you, but you'll have to help us do that by providing more information. What the mathematical nature of this thing you...

Re: Noise removing

Reply posted 7 years ago (04/04/2017)
Hi. Regarding AM demodulation, perhaps the following blog would be of some interest to you:https://www.dsprelated.com/showarticle/938.php

Re: The adoption of the frequency measure "Hertz"

Reply posted 7 years ago (03/30/2017)
Neil, your keen sense of humor put the following look on my face:

The adoption of the frequency measure "Hertz"

New thread started 7 years ago
Digging through some old papers, I found the following on a page that I tore out of the November 1965 Hewlett-Packard Journal:
Hi. I suggest that you do not, if possible, use a squarewave as a test signal. Squarewaves are NOT bandlimited so any discrete signal representation of a squarewave...

Re: Complex envelope and analytic signals.

Reply posted 7 years ago (03/26/2017)
Hi.  Somewhat unfortunately in MATLAB, using the command 'y = hilbert(x);' does NOT produce 'y' sequence that is the real-valued Hilbert transform of the real-valued...
Hi. To see how spectral energy folds when CIC decimation filters are used, see Figure 6 at:http://www.embedded.com/design/configurable-system...Your method of estimating...

Re: Complex envelope and analytic signals.

Reply posted 7 years ago (03/26/2017)
Lucky_12, in your MATLAB code did you intend to write:    f_c = 11.725e9 Our did you intend to write:    f_c = 11.75e9   (Note the '.75' versus the...

Re: measure signal power

Reply posted 7 years ago (03/04/2017)
Hi.  kaz's March 4th comment told you how to measure the frequency behavior of your filter. You can verify the results of kaz's test by comparing the spectral magnitude...

Re: measure signal power

Reply posted 7 years ago (03/04/2017)
Hi artmez. I think your comments are very sensible.

Re: measure signal power

Reply posted 7 years ago (03/03/2017)
Hi.  There are two types of "power" that we talk about regarding discrete sequence: (i) the "instantaneous power", and the (ii) "N-point average power".The instantaneous...
Hi. Do you have a question for the people here?

Re: Interpolation and power

Reply posted 7 years ago (03/01/2017)
mkm10, to experience a sense of personal satisfaction it's better for you to answer your question yourself--either by drawing time-domain sequences on paper or by...

Re: Interpolation and power

Reply posted 7 years ago (02/28/2017)
Hi.  spetcavitch is correct.  Try this:Generate a low-frequency sine wave sequence whose peak amplitude is one.  Upsample that sequence by four, by inserting...

Re: Filter design

Reply posted 7 years ago (02/27/2017)
Sharan123, you wrote:    "So, given f1, f2, Fs, we are computing N values      for Fs = 19200 or 384000?"Your words are not in the form of a question but...
johnny_smith911, referencing your post that begins with "Yes, I think ...":I can't interpret your two curves' time relationship because you did not label their horizontal...

Re: Filter design

Reply posted 7 years ago (02/26/2017)
Sharan123, referencing your post that begins with "I am still trying ...":Let's change that equation to the product of two ratios, as:    N = (Fs/delta_f) * (Atten(dB)/22).Looking...
johnny_smith911, it seems to me that you are performing the following:where the above x(n) input sequence is your squared input samples, my 'D" is your 'N', and...
Hi Stephane,   That is EXACTLY what I entered into the editor, except I only had one '$' at the beginning and one '$' at the end of the line of my MathJax characters....

Re: Filter design

Reply posted 7 years ago (02/24/2017)
Sharan123, you wrote:   "Case 1: f1 = 10000; f2 = 15000; Fs = 192000    Case 2: f1 = 10000; f2 = 15000; Fs = 384000    My design parameter remain the same...
Hi johnny_smith911. I spent 15 minutes trying to enter two MathJax equation in a reply for you, but I failed.  So I deleted my first reply and now I will try again...

Re: Filter design

Reply posted 7 years ago (02/24/2017)
Sharan123, please clarify you question, OK?

Re: Filter design

Reply posted 7 years ago (02/23/2017)
Sharan123, whoa, wait!  You wrote, "...if Fs was very high then N too would be high,...".  What you should have written is, "...if the ratio of Fs/delta_f was...

Re: Filter design

Reply posted 7 years ago (02/22/2017)
Sharan123, the code you posted does two things: (1) it uses an empirical formula to compute a rough estimate, N, of how many coefficients (taps) are needed by a...

Re: Interpolation and filter gain

Reply posted 7 years ago (02/21/2017)
In the traditional method of interpolation by integer K, by inserting (K-1) samples in between each original input sample, there is an output amplitude loss by a...

Re: Amplitude calculation from cross correlation data

Reply posted 7 years ago (02/20/2017)
Hi Amartansh.  I think charansal is pointing you in the correct direction, and kaz's warning is sensible. It seems to me that you should explore the topic of "deconvolution." ...

Re: Digital filter

Reply posted 7 years ago (02/10/2017)
If you search the Internet for:   free digital filter designyou should see a number of free filter design software programs that you can download and start experimenting...

Re: harmonic distortion of a single-tone excitation

Reply posted 7 years ago (02/08/2017)
I believe the answer to your first question is Yes. Let's assume your Phi1 = p and w1 = 2*pi*f1. If your input is:    x(t) = A1*sin(w1*t + p), the output...
Hi Mike.  The article I referred to was 10.5 pages in length.
The IEEE Signal Processing Magazine has a monthly column titled: "Lecture Notes". Those Lecture Notes articles are intended to be "easily accessible, being proper...

Re: Spurious when Fs/F is not an integer

Reply posted 7 years ago (01/24/2017)
Hello Loganathan N.  In your original post, the notion of "frequency resolution" makes no sense regarding a digital to analog converter. That's why I was confused....

Re: Spurious when Fs/F is not an integer

Reply posted 7 years ago (01/23/2017)
Hi.  I have two questions:[1] What is the definition of "frequency resolution" with regard to a digital to analog converter.[2] Are you able to post your MATLAB...
Kevin,   Frerking's book is out of print.  I'll scan my copy of that book's appropriate pages for you.  Send me a private e-mail at:R_dot_Lyons_@_ieee_dot_org.I'm...
Hi Kevin,Regarding the text you quoted in your original post,   "In general the signal(s) of interest are not at baseband, ...",can you tell from where that quote...
Hi Kevin,I was thinking of scanning the few pages from my copy of Frerking's  book that discuss this topic, and sending you that material.  But I was lucky. ...
Hi,Please forgive my sloppy nomenclature.  You are correct, my words "tap" and "coefficient" mean the same thing. And yes, you'll need to store 21*21=441 coefficients...
Hi. There is a way to perform frequency translation and FIR filtering simultaneously.  The scheme only works if the translation frequency is an integer submultiple...

Re: ARM CMSIS FFT - does it produce correct results?

Reply posted 7 years ago (01/13/2017)
Hi.  Try these tests: Test# 1: Fill your input buffer with 512 samples with each sample having an amplitude of +1. Your magnitude spectrum should show energy...

Re: down conversion vs de-modulation

Reply posted 7 years ago (11/19/2016)
Sharan123. After you implement frequency translation, by way of multiplication by a real-valued sinusoid or a complex-valued complex exponential, I hope you are...

Re: Envelope Detection

Reply posted 7 years ago (11/19/2016)
Hello martinvicanek. In my limited software experimentation with these various envelope detectors I noticed that different detectors appeared to perform better than...

Re: down conversion vs de-modulation

Reply posted 7 years ago (11/19/2016)
Hi Sharan123.  Your confusion is understandable. In the literature of signal processing some authors use the phrase "demodulation" when they should more correctly...

Re: Understanding maths behind DFT?

Reply posted 7 years ago (11/09/2016)
Hi Dhaval, the DFT is the single most important topic in DSP. So learn all you are able regarding the DFT. (For your work, keep in mind that the DFT is used to determine...

Re: Matlab Home-use version

Reply posted 7 years ago (11/09/2016)
barcelonajack, ha ha.  Matlab focuses on large data sets. Kardashians focus on large sets.

Re: Matlab Home-use version

Reply posted 7 years ago (11/08/2016)
Hi barcelonajack,  What kind of software tool is a Kardashian?

Re: Matlab Home-use version

Reply posted 7 years ago (11/08/2016)
Hi Neil.   You are correct.  I "bit the bullet" and purchased the MATLAB "Home" version last week. I also bought the 'Signal Processing Toolbox' and the 'DSP...

Re: Understanding maths behind DFT?

Reply posted 7 years ago (11/08/2016)
Hello Dhaval. I do not understand the question you asked in the last paragraph of your post.  Can you clarify your question using different words?

Re: Understanding maths behind DFT?

Reply posted 7 years ago (11/07/2016)
Hello dhaval_shah,The following web page may be helpful to you. The comments on that web page were written by guys who at one time were in exactly the same situation...

Re: Understanding maths behind DFT?

Reply posted 7 years ago (11/07/2016)
Hi AllenDowney. Your comment invites meditation. In one way I agree with you. I don't know how the Parks-McClellan FIR filter design algorithm works. Yet I've used...

Re: Understanding maths behind DFT?

Reply posted 7 years ago (11/07/2016)
Hi fred3, if you have an Americanversion of the of my "Understanding DSP" book I can send you the appropriate errata for your copy of my book if you can tell me...

Re: Downsampling from 2.0 MHz to 192kHz

Reply posted 7 years ago (10/27/2016)
Hi tomb18. If I understand your wishes correctly, what you want to do is "resample" both of your 2-MHz I & Q signals by a factor of 12/125. (My verb "resample"...

Re: Downsampling from 2.0 MHz to 192kHz

Reply posted 7 years ago (10/26/2016)
Hi tomb18. You have a quadrature (I/Q) at a sample rate of 2 MHz. Such a signal has an information-carrying bandwidth of 2 MHz. (A critical question: Is that I/Q...

Re: Downsampling from 2.0 MHz to 192kHz

Reply posted 7 years ago (10/26/2016)
Hi Mike. I like your suggestion because its involves small numbers. Do you mean "go up by 3, then down by 5 then up by 2 then down by 5 twice"?[-Rick-]

Re: A New Reverse IIR Filtering Algorithm

Reply posted 8 years ago (10/23/2016)
Hello Martin. I'd like to understand the details of your filtering scheme. (Looking briefly at your block diagrams, your scheme is reminiscent of a cascaded integrator-comb...

Re: Power Measurement of Complex Signal

Reply posted 8 years ago (10/22/2016)
Hi b2508,   There are MANY signal processing concepts for you to keep in mind here.[1] An analog sinusoidal waveform has four voltage characteristics; its average...

Re: Zero-Padding as scalloping loss attenuator

Reply posted 8 years ago (10/22/2016)
Hi jmarcelold, I didn't say anything about mixed-radix FFTs. I said "five individual 256-point FFTs."  In any case, perhaps the material in the following blog...

Re: Zero-Padding as scalloping loss attenuator

Reply posted 8 years ago (10/21/2016)
Dear Mike, Ha ha. You have more confidence in me than I do. Regretfully, my memory is just about as reliable as the paper towel dispenser in the Men's Room.

Re: Zero-Padding as scalloping loss attenuator

Reply posted 8 years ago (10/21/2016)
Hello jmarcelold, My understanding of the DFT characteristic called “scalloping” is described in the following blog. https://www.dsprelated.com/showarticle/538.php...

Re: Power Measurement of Complex Signal

Reply posted 8 years ago (10/20/2016)
Hello b2508. Your original question is worded in a strange way. You made statements there that we cannot fully understand. We can read your words but we don't know...
This looks like homework problem 4.7 on page 179 of Vaidyanathan's DSP book. My limited math skills prevent me from solving this problem, but I did have the following...

Re: SSB Demodulation

Reply posted 8 years ago (10/11/2016)
Hi.   When you wrote "SSB Demodulation that I found online says that ..." it would be nice for us to know exactly which online SSB website you're referring to....

Re: Invert Phase Response

Reply posted 8 years ago (09/19/2016)
Hello Kaz,   Will you give us more details on what you have in mind? Thanks.

Re: Invert Phase Response

Reply posted 8 years ago (09/18/2016)
jtp_1960, Please forgive me. I made a mistake in my first Reply. When coefficients: den = [4.86512631333559, 1.915296632059649, -2.86512631333559]num = [16.38734500433902,...

Re: Invert Phase Response

Reply posted 8 years ago (09/17/2016)
Hi jtp_1960,  In my MATLAB modeling of your *first* set of feedforward and feedback coefficients, I obtained the same magnitude and phase plots as you provided...

Re: CIC Filter

Reply posted 8 years ago (08/30/2016)
Hi Chris.  Thanks![-Rick-]

Re: CIC Filter

Reply posted 8 years ago (08/29/2016)
Hello dkgupta,You wrote "(2*2)^2= 8" and you meant to write, "(2*2)^2= 16".In an earlier post you wrote "(10*2)^5" and I said that surprised me. Thinking about it...

Re: CIC Filter

Reply posted 8 years ago (08/28/2016)
Hi dkgupta, You wrote: “In my case the gain is (10*2)^5…” That surprised me. I haven’t experimented with CIC filters when the differential delay = 2.Does...

Re: CIC Filter

Reply posted 8 years ago (08/28/2016)
Hi spetcavich, Thanks for posting that web link address. That link is useful because fred harris’s book is ‘Out of Print’.

Re: CIC Filter

Reply posted 8 years ago (08/27/2016)
Hi. The gain of a 5th-order CIC decimation filter is D^5, and individual integrators within the filter can experience overflow. (An integrator’s gain is infinite...

Re: Window-presum FFT problem

Reply posted 8 years ago (08/16/2016)
n2ic,Dr. Mike's August 16 reply is a good one.  I hope it made sense to you.Regarding your "precisely the problem" reply, it seems to me that your value for N must...

Re: Best Real Time Convolution Algorithm?

Reply posted 8 years ago (08/16/2016)
Hi,I bet someone here will help you if you can more clearly describe what you want.  Your terminology is puzzling.  What, exactly, is a "window kernel"?  What's...

Re: Window-presum FFT problem

Reply posted 8 years ago (08/16/2016)
Hi, The first sentence of your second paragraph really puzzles me. I'll assume that what you mean is that you're trying to reduce the leakage in the results of...

Re: How to estimate the SNR

Reply posted 8 years ago (08/12/2016)
Hi Chess,From what you wrote, you have r = Ac+n and you want to estimate SNR = (Power of c)/(Power of n), or perhaps SNR = (Power of Ac)/(Power of n). But A, c,...

Re: Error Growth for Various Goertzel Resonators

Reply posted 8 years ago (08/07/2016)
Hi Aaron45,It looks like you've done a lot of work to compile all those tables. And your results may well be both instructive and useful. The problem is, it's too...

Re: PLL in presence of noise

Reply posted 8 years ago (07/26/2016)
Chess, Y(j)S makes a good point. As it turns out, there are digital differentiators that don't generate too much high-freq noise and their performance is pretty...

Re: Polyphase CIC structure

Reply posted 8 years ago (07/21/2016)
flutekick, your question is not very specific. I'm not sure what you mean by "pointers."The traditional notion of "decimation filtering" is to lowpass filter a signal...

Re: Adding 45 degrees phase shift to a FIR bandpass

Reply posted 8 years ago (07/16/2016)
Dear Wolfgang, Your English grammar is VERY good! I do not understand everything you wrote in your last reply. I have too many questions to ask of you and I...

Re: Adding 45 degrees phase shift to a FIR bandpass

Reply posted 8 years ago (07/15/2016)
Dear wolf22, I'm not sure that I can be of help because I'm not sure what you are trying to do. If I recall correctly, you want to perform single-sideband (SSB)...

Re: Adding 45 degrees phase shift to a FIR bandpass

Reply posted 8 years ago (07/12/2016)
Herr wolf,  I wonder if the material at:www.faculty.ece.vt.edu/swe/argus/iqbal.pdfwould be of some use to you.Tschuss,[-Rick-]

Re: Zero IF vs Low IF receivers

Reply posted 8 years ago (07/10/2016)
Hello tomb18,  Perhaps the pdf file at:http://www.cs.tut.fi/kurssit/TLT-5806/RecArch.pdfmay be of some use to you.

Re: fft combinations

Reply posted 8 years ago (07/10/2016)
Hi Kaz,I can assure you, there are NO missing steps in the diagram I presented. The 1st step "unzips" the 2N-sample real-valued a(n) input sequence to generate an...

Re: fft combinations

Reply posted 8 years ago (07/09/2016)
Hello Kaz,Yes, there's a way to compute a 512-point FFT (on real-valued input samples) using a standard complex-valued 256-point FFT software algorithm. I cover...
Perhaps the material at:https://en.wikipedia.org/wiki/Sound_pressurewill be of some help to you.

Re: A digital filter question

Reply posted 8 years ago (07/05/2016)
Hi Neil, to elaborate on my "fall into the trap" comment:For example, if your 'b' coefficients are [1,1,1,1] then H_B(z) has zeros at: -1, +j, and -j on the z-plane....

Re: A digital filter question

Reply posted 8 years ago (07/05/2016)
Hi Mike. I'm guessing that you're implementing something like the following:where the 'Delay' is equal to the group delay of your H_B(z) moving average filter.

Re: A digital filter question

Reply posted 8 years ago (07/04/2016)
Hi wtmission, is there any chance you could paste the diagram you have in mind (from Chapter 2) here in a future 'reply'?  I'd sure be tickled to see it. (If it's...

Re: A digital filter question

Reply posted 8 years ago (07/04/2016)
Hi Neil,It's easy to fall into the trap of thinking that the zeros (poles) of H_B(z) become the poles (zeros) of the H_A(z) filter. But that's not true as you have...

Re: A digital filter question

Reply posted 8 years ago (07/04/2016)
Hello Shahram, by "digital implementation" I mean: computing the y(n) output sequence, from the following filter, given the x(n) input sequence.

Re: A digital filter question

Reply posted 8 years ago (07/03/2016)
Hello Jerry,I can easily believe that the above process might be used in the analog world.  But my question was about a digital implementation.PS. If you are the...

A digital filter question

New thread started 8 years ago
I have a vague memory of sometime in the past encountering a digital filter block diagram like the following accompanied by text stating something like:[1] If H_B(z)...

Re: Restorative Upsampling

Reply posted 8 years ago (07/02/2016)
Hi Boyboy,After modifying the MATLAB-illegal commands (including the illegal   'w2c = conj((fliplr(w2b'))');'command) I as was able to run your code. Your code...

Re: Restorative Upsampling

Reply posted 8 years ago (07/02/2016)
Boyboy, in MATLAB the following x = 1 2 3 4 5is called a "row vector" because it has one row and multiple columns. And in MATLAB the following x = 12345is called...

Re: Restorative Upsampling

Reply posted 8 years ago (07/01/2016)
Boyboy, I sense a possible "learning moment" here.I'm trying to figure out EXACTLY what your code does. To do that I need to replace your illegal commands with legal...

Re: Restorative Upsampling

Reply posted 8 years ago (07/01/2016)
Hello Boyboy,Your post piqued my interest. I have two questions:[1] With regard to a signal, can you give us a precise definition for your word "Bandlimit"?[2] In...
Hi, I've been a away from my computer for a few days.tomb18, I'm confused. If your had 16384 samples of the 2-Msps signal then after decimation you should only have...

Re: Pass band in digital up conversion of LTE signals

Reply posted 8 years ago (06/10/2016)
LabPe43,How can we explain the signal processing described in a Xilinx article if you didn't give us a web link so we can read the article?
tomb18, the answer to your post’s title question finally “hit” me. And the answer is “In spectral plots, yes, decimation results in an increase in the average...
tomb18,I agree with Prof. Smith (JOS). The average signal-to-noise ratio (SNR) of your decimated signal should be equal to the average SNR of your original input...

Re: Phase rotation after matched filtering

Reply posted 8 years ago (05/25/2016)
Hi mkm10,  You'll have a better chance of receiving a meaningful answer to your question if you can give us more details of the signal processing you have in mind....

Re: FDATool

Reply posted 8 years ago (05/24/2016)
LabPe43, to answer your last question, if freq-domain filtering is what you desire then the first step is to merely compute the FFT of the 'h' coefficients as: ...

Re: FDATool

Reply posted 8 years ago (05/24/2016)
To echo Dr. mike's good advice: if your FDAtool produces filter coefficients, h, whose performance is what you desire, then you should use the h coefficients filter...

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/19/2016)
tomb18, thanks for the pointer to the SDRPlay hardware!!

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/19/2016)
Hi tomb18.  I said "we'll figure this out", and I meant it.  Is there a way I can download your original 2.048-MHz sample rate file in the 'xxx.wav' format? (That...

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/18/2016)
tomb18, the positive-frequency cutoff frequency of your lowpass filter should be just less than +128 kHz. If you pass your original input signal through your...

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/18/2016)
tomb18, looking at your ‘2msps-with-filter.jpg’ spectrum, if you’re decimating by 8 it appears to me that your lowpass filter’s passband is too wide. For...

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/17/2016)
Ah ha tomb18. You’re making things exciting for us by NOT labeling the horizontal axes of your spectra in Hz. Now we have to guess, “Where is zero Hz on the...

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/17/2016)
tomb18, don’t worry. We’ll figure this all out. First, do not multiply anything by a window sequence, such as a Blackman window. We’ll worry about windowing...

Re: Newbie with questions about decimation for SDR

Reply posted 8 years ago (05/16/2016)
A simple, and efficient, solution to decimation by 8 is to perform three separate stages of decimation by 2. And in each decimation by 2 stage use a half-band FIR...

Re: Decimator Image response

Reply posted 8 years ago (05/09/2016)
Hello neirober. Your post is thought provoking. [1] I'm not familiar with the phrase "image response." Is there a formal definition for the phrase "image response"?...

Re: Please suggest vendors for the directory

Reply posted 8 years ago (04/29/2016)
Hi Stephane,   You may try 'Advanced Solutions Nederland'.http://advsolned.com/asn_filter_designer.html

Re: 90 Degrees Shift of Digital Signal

Reply posted 8 years ago (04/29/2016)
Hello TheCyrus. The blog that dhad referred to can be found at:https://www.dsprelated.com/showarticle/153.phpAnother blog that may be of some interest to you can...
Hello jluqueq, My compliments to you on the very sensible variable names in your MATLAB code. They made it easy for me to read your code. Based on my estimates...

Re: Implement 2nd order IIR filter

Reply posted 8 years ago (04/16/2016)
Hi,  You're most welcome.  If you wish, let us know how things work out for you.

Re: Implement 2nd order IIR filter

Reply posted 8 years ago (04/15/2016)
Dimitar,   One thing you can do is called "filter scaling." From my DSP textbook, if the passband gain of your IIR filter is GIIR then you can reduce that gain...
Hi Ruskywow,   I don't work with Weiner filters (pronounced as "veener", not "weener.") But I did try to repeat your polynomial algebra. Here are my results:As...
Hello jluqueq, Like you, I am unable to answer your sensible question. You probably already wrote down these numbers but I'll mention them anyway: 20*log(1/64)...

Use this form to contact Rick Lyons

Before you can contact a member of the *Related Sites:

  • You must be logged in (register here)
  • You must confirm you email address